造成这样的错误原因是代码不符合Android规范,如果把上面访问方式改为异步操作就不会出现在4.0上访问出现 android.os.NetworkOnMainThreadException异常


如:

// 定义Handler对象final Handler handler = new Handler() {@Override// 当有消息发送出来的时候就执行Handler的这个方法public void handleMessage(Message msg) {super.handleMessage(msg);// 处理UI}};new Thread() {@Overridepublic void run() {// 你要执行的方法// 执行完毕后给handler发送一个空消息handler.sendEmptyMessage(0);}}.start();

或:


@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);new Thread(connectRunnable).start(); // Create a connect.        }Runnable connectRunnable = new Runnable() {@Overridepublic void run() {}};


更多相关文章

  1. Android(安卓)init.rc
  2. Android的消息机制
  3. Android(安卓)Handler,Message,MessageQueue,Loper源码解析详解
  4. [置顶] Android消息异步机制(ThreadLocal、MessageQueue、Looper
  5. Android的Root原理
  6. Android异步消息机制
  7. Android推送通知指南
  8. Android(安卓)ApiDemos示例解析(91):OS->SMS Messaging
  9. Android生命周期中几个重要的函数

随机推荐

  1. 《Android/OPhone 开发完全讲义》已出版,
  2. Android(安卓)Launcher 分析
  3. Android中的Spinner的用法详解
  4. 解决TextView中MaxLines与ellipsize=end
  5. Android(安卓)UI自定义Spinner下拉框(用po
  6. Android禁止横屏竖屏切换
  7. 通过JavaScript或PHP检测Android设备的代
  8. Android禁止横屏竖屏切换
  9. Android(安卓)application context/activ
  10. android开发横竖屏切换