Android 2.3.3
Eclipse Version: 3.7.0
LogCat
LogCat 报错信息:
02-06 15:07:52.794: WARN/dalvikvm(503): threadid=18: thread exiting with uncaught exception (group=0x40015560)
02-06 15:07:52.815: ERROR/AndroidRuntime(503): FATAL EXCEPTION: Thread-49
02-06 15:07:52.815: ERROR/AndroidRuntime(503): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
02-06 15:07:52.815: ERROR/AndroidRuntime(503): at android.os.Handler.(Handler.java:121)
02-06 15:07:52.815: ERROR/AndroidRuntime(503): at android.app.Activity.(Activity.java:680)
02-06 15:07:52.815: ERROR/AndroidRuntime(503): at android.app.ListActivity.(ListActivity.java:175)
02-06 15:07:52.815: ERROR/AndroidRuntime(503): at android.preference.PreferenceActivity.(PreferenceActivity.java:76)
02-06 15:07:52.815: ERROR/AndroidRuntime(503): at com.tmall.iphone4s.manage.Preference.(Preference.java:62)
02-06 15:07:52.815: ERROR/AndroidRuntime(503): at com.tmall.iphone4s.Check.run(Check.java:297)
02-06 15:07:52.815: ERROR/AndroidRuntime(503): at java.lang.Thread.run(Thread.java:1019)
02-06 15:07:52.864: WARN/ActivityManager(61): Force finishing activity com.tmall.iphone4s/.PlayAd
发生错误原因:线程内未调用Looper.prepare(),不能创建处理器。
解决办法:在线程Check的run()中加入 Looper.prepare();
public void run() {
// TODO Auto-generated method stub
super.run();
Looper.prepare();
setting = new Preference(context);
check();
}
本文详细解析了Android应用在特定线程中创建Handler时遇到的崩溃问题,提供了具体的错误信息及解决方案,帮助开发者理解Looper.prepare()的作用。
5694

被折叠的 条评论
为什么被折叠?



