我正在使用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? –