应用程序崩溃,响应来了但是应用程序崩溃并且这样给出... 我的代码使用url查找 https://www.dropbox.com/s/nu7uazz8yp3w3cu/GetCompanyAnalyticRequestTask.java?dl=0
我的电话是这样的
callAnalyticAPI(mPreferences.getString(PrefrennceList.ADMIN_UID, ""), mPreferences.getString(PrefrennceList.CID, ""), groupJsonArray.toString().trim(), "summary", Constant.GRAPH_SUMMARY_START_DATE, Constant.GRAPH_SUMMARY_END_DATE, mPreferences.getString(PrefrennceList.COMPANY_ACCESS_TOKEN, ""));
执行方法是
try {
mGetCompanyAnalyticRequestTask.execute(uid, cid, Utility.stringEncode(gids.toString().trim()), reptype, startDate, endDate, companyaccessToken);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
错误
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:318)
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:243)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
Caused by: java.lang.ArrayIndexOutOfBoundsException: length=6; index=6
at com.sociosquare.socioadvocacy.service.GetCompanyAnalyticRequestTask.doInBackground(GetCompanyAnalyticRequestTask.java:38)
at com.sociosquare.socioadvocacy.service.GetCompanyAnalyticRequestTask.doInBackground(GetCompanyAnalyticRequestTask.java:24)
at android.os.AsyncTask$2.call(AsyncTask.java:304)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
答案 0 :(得分:0)
我认为这条线造成了问题。可能你没有在AsyncTask.execute()中传递enought参数。
return CompanyAnalytic(params[0], params[1], params[2], params[3], params[4], params[5], params[6]);
答案 1 :(得分:0)
尝试以下代码 你在params中发送较少的值。这就是为什么它会发生崩溃。你发送大小为6的数组,所以从你的return语句中删除params [6]。
preg_replace_callback