您的位置:首页 > 移动开发 > Android开发

Android java.lang.RuntimeException: Can\'t create handler inside thread that has not called Looper.prepare()

2016-06-24 14:25 911 查看
E/AndroidRuntime(7200): Uncaught handler: thread Thread-8 exiting due to uncaught exception
E/AndroidRuntime( 7200): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()原因是非主线程中默认没有创建Looper对象,需要先调用Looper.prepare()启用Looper。解决办法:public void sendJson2Server(final JSONObject mJs) { Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { // TODO Auto-generated method stub super.handleMessage(msg); PushServiceEx.sendPublic(mTopicServer, mJs.toString()); System.out.println(mJs.toString()); } }; mHandler.sendEmptyMessageDelayed(0, 5000);// PushServiceEx.sendPublic(mTopicServer, mJs.toString()); }
new Thread() { public void run() {   Looper.prepare();   mPst.startPushService();   mPst.sendJson2Server(qJson);//上线发消息给server   Looper.loop();  } }.start();加上上面红色两行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: