Выполнение кода при обновлении / переустановке приложения - PullRequest
5 голосов
/ 27 января 2010

У меня есть некоторые сигналы тревоги, установленные через AlarmManager для выполнения некоторых периодических заданий. Я устанавливаю / сбрасываю их, когда пользователь открывает приложение в первый раз и при каждом событии boot_complete. Но когда приложение переустанавливается через ADB, мои тревоги больше не срабатывают. Похоже, ОС удаляет сигналы тревоги при переустановке приложения. Я предполагаю, что это произойдет, если пользователь также обновит приложение с маркета.

Если я могу получить широковещательную рассылку или какой-либо обратный вызов в случае переустановки / обновления и т. Д. Моего приложения, я могу снова установить сигналы тревоги. но я не знаю, возможно ли это или как? Может кто-нибудь, пожалуйста, помогите мне.

1 Ответ

5 голосов
/ 27 января 2010

Да, это возможно.

Вы можете создать широковещательный приемник, который будет прослушивать любые PACKAGE_* события, которые отправляет система, но вы не получите их для своего собственного приложения, кроме случаев, когда ваше приложение обновляется & mdash; вы получите PACKAGE_REMOVED, за которым вскоре последует PACKAGE_REPLACED.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...