#android
#Android
Вопрос:
Я блокирую (отключаю) телефон вручную, когда выполняется моя активность. Когда я разблокирую свой телефон, OnCreate()
вызывается еще раз. Я запускаю диалоговое окно и запускаю веб-сервис в onCreate (). Итак, когда телефон разблокирован, появляется другое диалоговое окно, вызывается другой веб-сервис.
Наконец, что мне нужно, так это прекратить вызывать onCreate (), когда телефон разблокирован. Есть ли какой-нибудь способ?
Ответ №1:
Нет 🙂
Вы не можете остановить onCreate()
вызов. Однако вы можете установить некоторый флаг в onSaveInstanceState()
, который вызывается перед приостановкой приложения. Затем в onCreate()
, чтобы прочитать, установлен ли флаг, и узнать, было ли действие не создано, а воссоздано из-за блокировки экрана, работы приложения в фоновом режиме и т.д.
Пожалуйста, проверьте:
Там объясняется, что onCreate()
это может вызываться несколько раз в различных ситуациях.
P.S. Вы также не можете предотвратить это. Android (и фактически iOS и Windows Phone 7) приостанавливает работу приложения в фоновом режиме.
Комментарии:
1. Спасибо. Именно так я и собираюсь поступить сейчас. Просто интересно узнать, есть ли какой-либо внутренний метод, чтобы остановить это.
2. Проблема может повториться, если приложение запущено, когда экран заблокирован…