问题描述

抛出异常android.os.NetworkOnMainThreadException

问题原因

在Android 4.0以上,网络连接方法execute()不能放在主线程上,不然就抛异常android.os.NetworkOnMainThreadException。但是4.0下版本可以不会报错。

解决方案

新开用于网络请求的线程,直接使用匿名内部类创建新线程

// 新开用于网络请求的线程
            new Thread(new Runnable(){
                @Override
                public void run() {
                    cachedImage = asyncImageLoader.loadDrawable(imageUrl, position);
                    imageView.setImageDrawable(cachedImage);
                }
            }).start();

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐