У меня есть приложение для Android, использующее AsyncTask в одном действии. Оно работает. Поэтому, если я пытаюсь повернуть смартфон, когда задача запущена, скрывается скрытый прогресс и AsyncTask. Теперь я знаю, чтобы исправить эту проблему, я должен реализовать этот два метода.Как сохранить состояние AsyncTask при преобразовании устройства?
protected void onSaveInstanceState(Bundle outState) {}
protected void onRestoreInstanceState(Bundle savedInstanceState)
Но я не знаю, как сохранить состояние моей AsyncTask.
Это код:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
apriConnessioneDB();
//recupero le impostazioni dell utenza
Impostazioni impostazioni = db.getImpostazioni();
if(impostazioni!=null){
dialog = ProgressDialog.show(
this,
"Login",
"Verifica dati in corso.");
syncLogin = new SyncLogin();
syncLogin.setDialog(dialog);
syncLogin.setCt(this);
syncLogin.setDb(db);
syncLogin.setUsername(impostazioni.getUsername());
syncLogin.setPassword(impostazioni.getPassword());
//syncLogin.setCt(this.getApplicationContext());
syncLogin.execute();
}
}
protected void onSaveInstanceState(Bundle outState) {
try{
super.onSaveInstanceState(outState);
final AsyncTask task = syncLogin;
}catch(Exception e){
Log.e("ERROR", e.getMessage());
}
}