如何通过Java服务器将图像发送到Android设备

问题描述 投票:0回答:1

我正在尝试使用计算机上的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();
    }

}
java android image sockets byte
1个回答
0
投票

使用任何图像视图库预览图像。希望它可以工作

© www.soinside.com 2019 - 2024. All rights reserved.