我正在使用AsyncTask从服务器下载数据,并且希望将数据插入到我的数据库中。我必须在哪里放置插入代码,以及如何在用户按下主页按钮时阻止AsyncTask插入数据?什么是使用AsyncTask将数据插入数据库的正确方法
我目前使用asynctask.cancel(true)
但我无法停止数据库插入。所有的
public class TalkToServer extends AsyncTask<String, String, String> {
@Override
protected void onPreExecute() {
super.onPreExecute();
// show progress dialog
}
@Override
protected void onProgressUpdate(String... values) {
super.onProgressUpdate(values);
}
@Override
protected String doInBackground(String... params) {
//download data from the server
return something;
}
@Override
protected void onPostExecute(String result) {
super.onPostExecute(result);
// dismiss dialog
}
}
为什么我必须在doInBackground中放置isCancelled()方法,如果我在onPostExecute()中执行插入操作? –
好的,谢谢,我会尝试你的建议,如果它的工作,我会标记你的答案,或者我会告诉你,如果我有问题 –
如果AsyncTask iscanceled我如何解雇progressDialog? –