Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java android中的Asyntask并行运行错误_Java_Android_Android Asynctask_Android Service - Fatal编程技术网

Java android中的Asyntask并行运行错误

Java android中的Asyntask并行运行错误,java,android,android-asynctask,android-service,Java,Android,Android Asynctask,Android Service,我在android服务中有一些代码,一个计时器,每3秒钟运行一次Asyntask。但有时我会犯这样的错误: 03-21 08:56:48.928: E/AndroidRuntime(26870): FATAL EXCEPTION: AsyncTask #3 03-21 08:56:48.928: E/AndroidRuntime(26870): java.lang.RuntimeException: An error occured while executing doInBackground(

我在android服务中有一些代码,一个计时器,每3秒钟运行一次Asyntask。但有时我会犯这样的错误:

03-21 08:56:48.928: E/AndroidRuntime(26870): FATAL EXCEPTION: AsyncTask #3
03-21 08:56:48.928: E/AndroidRuntime(26870): java.lang.RuntimeException: An error occured while executing doInBackground()
03-21 08:56:48.928: E/AndroidRuntime(26870):    at android.os.AsyncTask$3.done(AsyncTask.java:299)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at java.util.concurrent.FutureTask.run(FutureTask.java:137)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at java.lang.Thread.run(Thread.java:856)
03-21 08:56:48.928: E/AndroidRuntime(26870): Caused by: java.lang.NullPointerException
03-21 08:56:48.928: E/AndroidRuntime(26870):    at Dic.proj.pkg.notifService$check_last_asyn.doInBackground(notifService.java:251)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at Dic.proj.pkg.notifService$check_last_asyn.doInBackground(notifService.java:1)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at android.os.AsyncTask$2.call(AsyncTask.java:287)
03-21 08:56:48.928: E/AndroidRuntime(26870):    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
03-21 08:56:48.928: E/AndroidRuntime(26870):    ... 4 more
我不知道为什么。但我有一个猜测。我的服务从以下代码的主要活动开始:

  Intent service = new Intent(DictionaryActivity.this, notifService.class);
  DictionaryActivity.this.startService(service); 
我想我第一次开始我的服务是通过打开主要活动。第二次,当我进入主活动时,服务再次启动,我的asyntask并行运行,这导致了这个错误


有没有办法检查服务是否已经启动,然后不再启动?如何解决我的问题?

您有一个
NullPointerException
——您的一个成员未分配。单步通过
doInBackgound
查找哪一个,或者双击logcat条目。发布您的doInBackground代码。。