我正在尝试使用托管在我的计算机上的 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());
安卓:
@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();
}
}
最佳答案
使用任何 ImageView 库来预览图像。希望它能工作
关于java - 如何使用 Java 服务器将图像发送到 Android 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61868057/