Есть ли способ различить в onResume начало активности из-за намерения и других случаев - PullRequest
0 голосов
/ 24 апреля 2011

Есть ли способ различить в onResume () два случая:
1) действие выводится на передний план, потому что оно было запущено Intent из другой операции
2) onResume действия вызывается без нового Intent (например, экран был выключен и включен, или, может быть, другие ситуации, когда пользователь явно не запускал действие)

В первом случае я хочу выполнить несколько длительных операций, например загрузить данные из Интернета.
Во второмслучай, когда я не хочу ничего делать (потому что пользователь явно не спрашивал, но экран просто отключился на секунду)
Я имею в виду ситуации, когда активность не воссоздается, а onCreate не вызывается.(если воссоздано, мне все равно нужно проделать длительную операцию)
Насколько я пытался в обоих случаях, getIntent () возвращает исходное намерение.В обоих случаях onNewIntent не вызывается.

Спасибо.

1 Ответ

0 голосов
/ 24 апреля 2011

Проверьте диаграмму состояния здесь:

http://developer.android.com/reference/android/app/Activity.html

Существует несколько различий между обеими ситуациями.В частности, onPause, onStop и onRestart вызываются только при возобновлении работы приложения.Я думаю, что вам лучше всего включить логический флаг во всех этих методах, который отключен при onCreate.

...