我正在尝试使用计算机上的Java服务器将图片发送到Android设备。但是当图片到达电话时,它被剪切了:可以读取一张小图片(4ko),但是使用一张43ko图片,则只能看到三分之一的图片。
服务器:
File f = new File("img.jpg");
BufferedImage buffer = ImageIO.read(f);
ServerSocket server = new ServerSocket(port);
Socket sock = server.accept();
ImageIO.write(buffer,"JPG",sock.getOutputStream());
Android:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
Socket sock = new Socket(ip, port);
Drawable d = new BitmapDrawable(getResources(), BitmapFactory.decodeStream(sock.getInputStream()));
ImageView iv = findViewById(R.id.iv);
iv.setImageDrawable(d);
} catch (IOException e) {
e.printStackTrace();
}
}
使用任何图像视图库预览图像。希望它可以工作