我有一个Android应用,当我从Activity
A切换回主Activity
,然后切换到B,然后按下按钮,代码调用AsyncTask
。
OnPreExecute()
,但在调用doInBackground()
之前大约需要一分钟。
我使用execute()
来启动任务。使用executeOnExecutor()
无效。
为什么会有延迟?
我已检查过,并且没有任何其他AsyncTasks
正在运行。
我正在运行API 19 KitKat。没有选择,因为它必须使用EMDK在TC-70上运行。
关于从哪里开始寻找的任何想法?
public class BarcodeHandler
implements EMDKListener, DataListener, StatusListener, ScannerConnectionListener {
@Override
public void onData(ScanDataCollection scanDataCollection) {
String dataString = "test";
new AsyncDataUpdate().execute(dataString);
}
...
}
private class AsyncDataUpdate extends AsyncTask<String, Void, String>
{
@Override
protected void onPreExecute()
{
Log.d("delayTest", "DataUpdate PreExecute()");
}
@Override
protected String doInBackground(String... params) {
Log.d("delayTest", "DataUpdate doInBackground");
return params[0];
}
protected void onPostExecute(String result) {
Log.d("delayTest", "DataUpdate onPostExecute");
if (result != null) {
if (dataListener != null)
dataListener.barCodeListener(result);
}
}
}