【发布时间】:2017-10-24 03:48:52
【问题描述】:
在onCreate中,我创建并执行pt:
PostTask pt = new PostTask(this);
pt.execute()
(PostTask 扩展 AsyncTask)
但是,应用程序在到达 PostTask::doInBackground 的第一行时立即停止:
protected String doInBackground(String... params) {
String url=params[0];
我错过了什么吗?
以下是日志错误:
---------
beginning of crash
10-21 02:38:31.694 5506-5591/org.researchstack.sampleapp E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
Process: org.researchstack.sampleapp, PID: 5506
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:309)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
Caused by: java.lang.ArrayIndexOutOfBoundsException: length=0; index=0
at org.researchstack.sampleapp.PostTask.doInBackground(SampleApplication.java:103)
at org.researchstack.sampleapp.PostTask.doInBackground(SampleApplication.java:85)
at android.os.AsyncTask$2.call(AsyncTask.java:295)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
【问题讨论】:
-
发布您的日志错误,也许我们可以为您指明正确的方向
-
刚刚用日志错误更新了上面的问题。
-
引起:java.lang.ArrayIndexOutOfBoundsException:length=0; index=0 发布您的 doInBackground 方法。