Я хочу отправить информацию о выходе на сервер, когда приложение будет уничтожено.AsyncTask in onDestroy() не выполняется
Вот код:
@Override
protected void onDestroy() {
try {
Log.i("myApp", "Activity destroyed");
SharedPreferences prefs1 = getSharedPreferences("com.my.app", Context.MODE_PRIVATE);
Log.i("myApp", "step1");
String response;
Log.i("myApp", "step2");
response = HttpPOSTer.logout(EventCodes.LOGOUT, LOGOUT_EVENTCODE, prefs.getString("sessionID", "null"));
Log.i("myApp", "step3");
if (response.equals("logout")) {
Log.i("myApp", "logged out succesfully");
} else {
Log.i("myApp", "couldn't perform logout");
}
prefs1.edit().clear().commit();
}
catch (InterruptedException e) {
e.printStackTrace();
}
catch (ExecutionException e) {
e.printStackTrace();
}
super.onDestroy();
}
Но вот бревно, когда я закрываю приложение из длинного меню нажмите Главная баттона:
Я даже не могу отлаживать здесь. Я устанавливаю точку останова, но она не срабатывает при отладке.
Есть ли причина, почему AsyncTask
не вызывается из onDestroy()
?
Если «step3» не зарегистрирован, исключение должно быть произошла до вашего заявления о регистрации. Отправьте код своего HttpPOSTer и полный вывод logcat. –
положите ваш super.onDestroy() после последнего улова и посмотрите. – Rahil2952
@WolframRittmeyer, исключение не выбрано. Написал весь логарифм, посмотри, пожалуйста. Уверяю вас, все в порядке с классом HttpPOSTer. – azizbekian