为什么80%的码农都做不了架构师?>>>   

在android 2.3上设计的下载程序,在android 4.0上运行时报android.os.NetworkOnMainThreadException异常,原来在4.0中,访问网络不能在主程序中进行,有两个方法可以解决,一个是在主程序中增加:

// 详见StrictMode文档
        StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
                .detectDiskReads()
                .detectDiskWrites()
                .detectNetwork()   // or .detectAll() for all detectable problems
                .penaltyLog()
                .build());
        StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
                .detectLeakedSqlLiteObjects()
                .detectLeakedClosableObjects()
                .penaltyLog()
                .penaltyDeath()
                .build());

加上这句话之后 在onCreate方法上加@SuppressLint("NewApi") @Override

另一种是启动线程执行下载任务:

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        // 启动线程执行下载任务
        new Thread(download).start();
    }
   
    /**
     * 下载线程
     */
    Runnable download = new Runnable(){

@Override
       public void run() {

Looper.prepare();

download();

Looper.loop();

}
    };

启动线程一定要加上Looper.prepare();方法完之后加上Lopper.loop(); 否则会报

Can't create handler inside thread that has not called Looper.prepare() 这个异常

转载于:https://my.oschina.net/cjkall/blog/102098

android 4.0下访问主进程访问网络和开启另外另外的线程相关推荐

  1. Android 9.0 版本以上,多进程访问对WebView的影响

    Android 9.0 版本以上,多进程访问对WebView的影响 报错 日志 Caused by: java.lang.RuntimeException: Using WebView from mo ...

  2. Android 10.0 系统启动之SystemServer进程-[Android取经之路]

    摘要:上一节讲解了Zygote进程的整个启动流程.Zygote是所有应用的鼻祖.SystemServer和其他所有Dalivik虚拟机进程都是由Zygote fork而来.Zygote fork的第一 ...

  3. Android 10.0系统启动之init进程-[Android取经之路]

    摘要:init进程是linux系统中用户空间的第一个进程,进程号为1.当bootloader启动后,启动kernel,kernel启动完后,在用户空间启动init进程,再通过init进程,来读取ini ...

  4. Android 7.0下拍照和裁剪图片

    Android 7.0下拍照和裁剪图片 最近,公司的APP集中爆发了头像上传中拍照或照片裁剪的bug,让我才意识到及时学习Android新特性是多么重要,一个过去式的APP是无法一直满足日益变化的新需 ...

  5. android 清理软件,Android 5.0下哪个清理软件最好用?

    Android5.0在发布之初凭借其全新的界面设计,优秀的体验赢得了不少用户和厂商的青睐.而现在Android5.0发布了都有一段时间,除了谷歌的Nexus系列手机能用上最新的系统之外,最近又有很多机 ...

  6. android+主界面所有应用程序图标添加统一背景主题,Android 4.0替Launcher主界面所有应用程序图标添加统一背景主题...

    当前位置:我的异常网» Android » Android 4.0替Launcher主界面所有应用程序图标添加 Android 4.0替Launcher主界面所有应用程序图标添加统一背景主题 www. ...

  7. android webview权限申请_Android应用开发之android 6.0下webview的定位权限设置方法

    本文将带你了解Android应用开发android 6.0下webview的定位权限设置方法,希望本文对大家学Android有所帮助. 如下所示: WebView webView =   (WebVi ...

  8. centos查看网络速率_Centos7下查看各进程的网络速率状况

    Centos7下查看各进程的网络速率状况 2017年10月20日 13:52:47 bobpen 阅读数:4221更多java 我的分类: linuxmysql 版权声明:本文为博主原创文章,未经博主 ...

  9. 【Android TV】Android 8.0下 ,TV系统通知音失效

    问题描述: Android 8.0的TV系统通知音失效 分析过程: 跟踪触发通知的流程, SystemUI 通知音播放是调用Ringtoneplayer播放类的,这个接收的参数是声音的URI路径,是从 ...

最新文章

  1. 使用Android内部的DownloadProvider下载文件,并获取cache权限 .
  2. 深入浅出Yolo系列之Yolov3Yolov4Yolov5核心基础知识完整讲解
  3. [整理I]精选微软等公司数据结构+算法面试100题 [第1-40题]
  4. JavaScript高级部分概念用法
  5. ANE的开发需求一般太少,这个静态库如何包含第三方
  6. Lucene分类统计示例
  7. 访问 IIS 元数据库失败 的解决方法
  8. 使用Java 8 Stream像操作SQL一样处理数据(上)
  9. [vue] vue中是如何使用event对象的?
  10. 15年大厂经历!大佬总结:0基础如何学习Python?
  11. C# UdpClient使用Receive和BeginReceive接收消息时的不同写法
  12. 牛客网-内心里的一把火
  13. Mesos和Docker的集成
  14. 小D课堂 - 零基础入门SpringBoot2.X到实战_第10节 SpringBoot整合定时任务和异步任务处理_42、SpringBoot常用定时任务配置实战...
  15. npm:no such file /usr/local/lib/node_modules/vue-cli/node_modules/get-stream
  16. 简历表格下载word格式 免费版​
  17. ofd阅读器qt_GitHub - gogo123150/ofdEditor: 一个很简陋的ofdEditor
  18. idea 一直在updating index的问题
  19. 一个小游戏的代码(猜数字)
  20. uniapp h5、app引用外部在线js

热门文章

  1. HTML+CSS物业后台管理系统模板
  2. VideoJS - HTML5免费视频播放器源码 支持多格式
  3. Memcached 学习篇【转】
  4. WebBrowser部分用法
  5. petshop4.0 详解之二(数据访问层之数据库访问设计)
  6. PHP简单方法判断文件是否是图片 PHP best way to check if file is an image
  7. 时区日期处理及定时 (NSDate,NSCalendar,NSTimer,NSTimeZone) -- IOS(实例)
  8. thymeleaf 中select下拉回显
  9. 【转载】Makefile教程
  10. NIPS 2018 接收论文list 完整清单