`
coding1688
  • 浏览: 236818 次
  • 来自: 上海
社区版块
存档分类
最新评论

在Android2.x下运行良好的程序在Android4.0下报android.os.networkonmainthreadexception错

 
阅读更多

Android开发者网站关于android.os.networkonmainthreadexception的描述

 

http://developer.android.com/reference/android/os/NetworkOnMainThreadException.html

 

The exception that is thrown when an application attempts to perform a networking operation on its main thread. This is only thrown for applications targeting the Honeycomb SDK or higher. Applications targeting earlier SDK versions are allowed to do networking on their main event loop threads, but it's heavily discouraged.

原来,在Android3.0(Honeycomb SDK)以后就不允许在主线程下直接操作网络了。因为网络操作可能导致界面无响应Application Not Responding (ANR) 。

 

http://developer.android.com/guide/practices/responsiveness.html

 

In Android, application responsiveness is monitored by the Activity Manager and Window Manager system services. Android will display the ANR dialog for a particular application when it detects one of the following conditions:

  • No response to an input event (e.g. key press, screen touch) within 5 seconds
  • A BroadcastReceiver hasn't finished executing within 10 seconds

 

网上说道,有两种解决方法:

一种是启用 StrictMode 

另一种是使用 Thread

一般情况下还是使用线程好些

 

 

0
3
分享到:
评论

相关推荐

    Caused by: android.os.NetworkOnMainThreadException错误解决办法

    在Android开发中,`Caused by: android.os.NetworkOnMainThreadException` 是一个常见的错误,它意味着开发者尝试在主线程(UI线程)中执行网络操作,这是被禁止的。自Android 4.0 (API Level 14)以后,为了保证用户...

    Android 4.0 .x509 platform.pk8 下载

    在Android系统中,`.x509`证书用于验证应用程序、系统更新以及其他组件的来源和完整性,确保只有可信的软件能够安装和运行。 `.pk8`文件则代表私钥的封装格式,它是Android特有的,用于存储私钥信息。私钥与`.x509`...

    android.os.NetworkOnMainThreadException

    android.os.NetworkOnMainThreadException 解决事情应该优先解决一件事情,总是三心二意,最后塞翁失马 文章目录android.os.NetworkOnMainThreadException问题分析查阅资料解决方案知识要点: RunOnUiThread 和 new...

    Android中应用程序获得系统签名权限(platform.x509.pem platform.pk8 signapk.jar)

    2. 接着,将`platform.x509.pem`和`platform.pk8`与`signapk.jar`放在同一个目录下。 3. 使用命令行,运行`java -jar signapk.jar platform.x509.pem platform.pk8 your_app.apk signed_app.apk`。这个命令会使用...

    android classes.jar 4.0-5.0

    描述中提到,在Ubuntu 64位14.04.1环境下编译了Android 5.0.0的源码,这表明这是一个涉及到Android系统底层开发的过程。Android源码是开放的,允许开发者深入理解系统工作原理,并根据需要进行自定义修改。编译源码...

    Android 4.0 Launcher2可导入eclipse中直接运行

    Android 4.0 的 Launcher2 是 Android 操作系统的一个核心组件,它是用户界面的主要部分,负责桌面、应用抽屉和快捷方式的管理。这个项目是为开发者提供的源代码,允许他们深入理解 Launcher2 的工作原理,并对其...

    Android support.v7包

    Android support.v7包

    安卓Android源码——camera,修改过可以在4.0系统上运行。.zip

    8. **权限管理**:在Android 4.0中,应用程序需要`android.permission.CAMERA`权限才能使用相机。源码中可以看到权限检查的实现细节。 9. **线程模型**:相机操作通常涉及多个线程,包括主线程、预览线程和捕获处理...

    android.hardware.camera2自定义相机

    在Android平台上,`android.hardware.camera2`是官方提供的高级相机API,它提供了更精细的控制和更高的灵活性,使得开发者能够创建具有专业级别的自定义相机应用。这个API在Android 5.0(API级别21)引入,替代了...

    android-4.0 源码

    Android 4.0,也被称为Ice Cream Sandwich (ICS),是Google在2011年推出的一个重要的Android操作系统版本。这个版本引入了许多新功能和改进,为开发者提供了更强大的平台,同时也提升了用户体验。本文将深入探讨...

    android系统签名(platform.pk8,platform.x509.pem,signapk.jar)

    实现静默安装必须拥有该机器的系统签名,所以安装程序必须得拥有系统签名 实现系统签名必须得拥有两个签名文件和一个jar包 platform.pk8 platform.x509.pem signapk.jar 1.cd到以上三个文件的目录去 2.java -jar ...

    安卓Android源码——camera,修改过可以在4.0系统上运行。.rar

    【Android 源码分析:让 Camera 在 Android 4.0 系统上运行】 在 Android 开发中,Camera 模块是至关重要的部分,它允许应用程序捕获图像和视频。Android 4.0(API 级别 14)是 Android 平台的一个重要里程碑,引入...

    让为ARM写程序在Android X86 4.0上运行

    标题中的“让为ARM写程序在Android X86 4.0上运行”是指将原本为ARM架构设计的Android应用程序移植到X86架构的Android系统上运行的技术问题。这通常涉及到处理器架构间的兼容性和交叉编译技术。Android操作系统本身...

    android4.0 Browser 浏览器 源码

    在深入探讨其源码之前,我们先理解一下Android 4.0(也称为Ice Cream Sandwich,简称ICS)的一些背景信息。 Android 4.0是对Android系统的一次重大更新,引入了诸多新特性和改进,包括全新的用户界面、更好的多任务...

    虚拟机Vmware安装运行安卓4.0详细教程

    本教程将详细介绍如何在Vmware中安装并运行Android 4.0(又称为Ice Cream Sandwich,简称ICS)操作系统。 首先,你需要下载Vmware软件。Vmware Workstation是一款常见的选择,它提供了丰富的功能和优秀的性能。请...

    android-studio-4.0.zip

    在4.0版本中,Layout Inspector提供了更强大的功能,允许开发者在运行时检查和调试应用的布局。现在可以查看多个设备和进程的布局,帮助调试复杂的应用架构。 5. **代码分析和智能提示**: Android Studio 4.0的...

    android dx.jar 下载

    Android应用程序的编译流程包括几个关键步骤:Java源代码被Javac编译成.class文件,然后dx.jar工具将这些.class文件转换为.dex文件,以便在Dalvik或ART虚拟机上运行。dx.jar执行的是dex化过程,它能处理单个或多个类...

    android4.0源代码下载地址

    官方提供的 Android 4.0 源代码下载地址为 [http://source.android.com/source/downloading.html](http://source.android.com/source/downloading.html)。通过这个链接,开发者可以获取到完整的 Android 4.0 源代码...

Global site tag (gtag.js) - Google Analytics