我在服务中有这个计时器,它运行良好并且计数......但是当我调用一些 asyntask 时,它给了我错误!
Timer time = new Timer(); // Instantiate Timer Object
time.schedule(new TimerTask(){
public void run() {
// i call my Asyntasks here
}
},5000,5000);
这给了我错误:
03-17 02:02:27.167: E/AndroidRuntime(925): FATAL EXCEPTION: Timer-0
03-17 02:02:27.167: E/AndroidRuntime(925): java.lang.ExceptionInInitializerError
03-17 02:02:27.167: E/AndroidRuntime(925): at Dic.proj.pkg.notifService$1.run(notifService.java:57)
03-17 02:02:27.167: E/AndroidRuntime(925): at java.util.Timer$TimerImpl.run(Timer.java:289)
03-17 02:02:27.167: E/AndroidRuntime(925): Caused by: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
03-17 02:02:27.167: E/AndroidRuntime(925): at android.os.Handler.<init>(Handler.java:121)
03-17 02:02:27.167: E/AndroidRuntime(925): at android.os.AsyncTask$InternalHandler.<init>(AsyncTask.java:421)
03-17 02:02:27.167: E/AndroidRuntime(925): at android.os.AsyncTask$InternalHandler.<init>(AsyncTask.java:421)
03-17 02:02:27.167: E/AndroidRuntime(925): at android.os.AsyncTask.<clinit>(AsyncTask.java:152)
03-17 02:02:27.167: E/AndroidRuntime(925): ... 2 more
如果我输入其他指令,例如 Log.d("message"); 一切顺利