gpt4 book ai didi

android - 重试异步任务

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:55:33 25 4
gpt4 key购买 nike

例如我有以下 AsyncTask:

  private class MyAsyncTask extends AsyncTask<Void, Void, Boolean> {


@Override
protected Void doInBackground(Void... params) {
try {
//some code that may throws exception
return true;
} catch (IOException ex) {
return false;
}
}


@Override
protected void onPostExecute(Boolean param){
if (!param) {
AlertDialog.Builder builder = new AlertDialog.Builder(MyActivity.this);
builder.setMessage("Error");
builder.setPositiveButton("Retry", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//I want to retry MyAsyncTask here
}
});
builder.setNegativeButton("Exit", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
finish();
}
});
AlertDialog alert = builder.create();
alert.show();
}
}
}

执行此操作的最佳做​​法是什么?我害怕递归这段代码。

最佳答案

您不能严格地“重试”AsyncTask 的实例。您必须创建一个新实例并执行它,就像您对第一个实例所做的那样。您不应该遇到递归问题。

关于android - 重试异步任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5336517/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com