android 实现从网络上抓取图片并显示在手机上

这篇博客讲述了如何在Android应用中实现从网络抓取图片并在手机屏幕上显示的方法,包括添加网络权限、使用独立线程及编写工具类来读取网络数据。作者提供了具体的代码示例,并欢迎读者提出建议和交流。
摘要由CSDN通过智能技术生成

遇到的问题

      之前在学习android开发视频的时候,学习到从网络上下载图片并显示,但发现会报 NetworkOnMainThreadException,后来几经查证发现,在android 中实现网络访问等操作时由于对于网络状况的不可预见性,很有可能在网络访问的时候造成阻塞,那么这样一来我们的主线程UI线程 就会出现假死的现象,产生很不好的用户体验。所以,默认的情况下如果直接在主线程中访问就报出了这个异常,名字是NetworkOnMainThreadException

解决该问题的办法

1. 独立线程

2. 异步线程AsyncTask

3. StrictMode修改默认的策略


这里采用第一种方法来实现功能:


首先要注意在功能清单文件中加上访问网络的权限:



接下来编写工具类,主要用于从网络中读取数据

工具类1:

package StreamTool;

import java.io.ByteArrayOutputStream;
import java.io.InputStream;

/**
 * Created by Administrator on 2015/11/30.
 */
public class Streamtool {
    public static byte[] readDate(InputStream inputStream)throws Exception
    {
        ByteArrayOutputStream outputStream=new ByteArrayOutputStream();
        int len=0;
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值