Rya*_*man 2 debugging android android-asynctask android-studio
我试图在Android Studio中调试AsyncTask,但调试器不允许我进入该onPostExecute()方法,我不知道为什么.我确信它正在执行,因为我放了一个显示的Toast,但是我想在那里进行调试,但由于某种原因我不能.这是为什么会这样的原因?
private class LoadObject extends AsyncTask<Void, Void, Void> {
private ProgressDialog dialog;
private Context context;
String postAddress;
public LoadObject(Context context) {
this.context = context;
dialog = new ProgressDialog(context);
}
@Override
protected void onPreExecute() {
dialog.setMessage("Loading...");
dialog.setCanceledOnTouchOutside(false);
dialog.show();
}
@Override
protected void onPostExecute(Void result) {
Toast.makeText(context, "OnPostExecute", Toast.LENGTH_SHORT).show();
functionToExecute();
if(dialog!=null && dialog.isShowing()){
dialog.dismiss();
}
bLoaded = true;
}
@Override
protected Void doInBackground(Void... params) {
try {
postApi.postAPI(postAddress);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
尝试将该行放入android.os.Debug.waitForDebugger();您的onPostExecute()方法中.这将等待调试器附加到您的单独线程,然后一旦附加调试器就会返回.然后尝试在此行之后放置一个断点,它应该点击.
更多信息:http://developer.android.com/reference/android/os/Debug.html#waitForDebugger()
| 归档时间: |
|
| 查看次数: |
740 次 |
| 最近记录: |