Отличить объект приложения от Activity и BroadcastReceiver на Android - PullRequest
2 голосов
/ 28 ноября 2011

У меня есть приложение, которое использует push-уведомления для обновления пользователей о событиях, происходящих в сети. Для этого у меня есть обычная активность, которая отображает игру для пользователя, и затем BroadcastReceiver, который существует для обработки входящих push-сообщений.

Однако, когда мы получаем сообщение, оно создает экземпляр нашего Приложения. В нашей функции Application.onCreate () мы выполняем некоторую логику предварительной загрузки и обработки, которая должна запускаться только в том случае, если создаваемое приложение является фактическим действием, а не BroadcastReceiver.

Я также пытался переместить обработку и логику в Activity.onCreate (), но весь этот жизненный цикл гораздо менее предсказуем, чем у Application, поэтому метод Application кажется предпочтительным, но я открыт для альтернативных решений.

Как определить, создается ли экземпляр приложения для BroadcastReceiver или Activity?

1 Ответ

2 голосов
/ 29 ноября 2011

Я решил эту проблему, переместив дорогую предварительную загрузку в статический инициализатор в Activity.

...