繁体   English   中英

离开我的应用程序时,在asyncTask期间在我的应用程序中出错

[英]Getting an error in my app during an asyncTask while leaving my app

我有活动A和B.它们都有AsyncTasks连接到Web并获取一些JSON。 我得到一个我不能完全复制的错误,但我不确定我做错了什么。 当我从活动B到A到主屏幕按下后退按钮时出现错误。

堆栈跟踪:

java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:299)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
at java.util.concurrent.FutureTask.run(FutureTask.java:239)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
at java.lang.Thread.run(Thread.java:856)
Caused by: java.lang.NullPointerException
at com.mycompany.myapp.ActivityGD$GetMethod.doInBackground(ActivityGD.java:131)
at com.mycompany.myapp.ActivityGD$GetMethod.doInBackground(ActivityGD.java:1)
at android.os.AsyncTask$2.call(AsyncTask.java:287)
at java.util.concurrent.FutureTask.run(FutureTask.java:234)
... 4 more

我不知道如何获得一个空指针,看起来像AsyncTask。 注意:ActivityGD = Activity B.因此,当我简单地按下Activity A时,我不明白我是如何在Activity B上获得空指针的。

第130至137行

protected void onPostExecute(String response) {
        String[] myText = final.split(",");
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(
                ActivityGD.this, R.layout.simple_list_item_1,
                myText);
        setListAdapter(adapter);

    }

第131行中的变量final返回null并触发NPE。 可能是因为当asynctask仍在运行时退出活动B. 为它添加一个空检查,这应该照顾NPE。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM