Android - Как получить сигнал BOOT с приложением, установленным на SDCard?

Мне нужно запустить службу уведомлений для приложения при загрузке устройства. Я реализовал BroadcastReceiver который слушает сигнал загрузки, чтобы запустить службу.

Однако это работает, только если приложение не установлено на SD-карте (поскольку сигнал принимается до того, как SD-карта смонтирована). Есть ли какое-либо решение, чтобы продолжить установку приложения на SDCard и все же получить этот сигнал?

Любой взлом для этого?

Дай мне знать!

Спасибо!

1 ответ

Решение

Вы можете либо:

  1. Зарегистрировать аккаунт в AccountManager и настроить службу синхронизации ( tutorial1, tutorial2) - Android автоматически запустит ваш сервис; или же
  2. Прослушайте также другие трансляции (например, выключение экрана / включение экрана) и проверьте, нужно ли вам запускать службу уведомлений или нет.

Я понимаю, что это не простые / удобные решения, но они единственные, о которых я могу думать. Если кто-нибудь знает лучшее решение, я буду рад upvote:).

Другое решение (которое в конечном итоге может быть использовано в сочетании с одним из вышеперечисленных) состоит в том, чтобы запустить службу (или проверить, нужно ли ее запускать), когда ваше приложение запускается из средства запуска приложений (т.е. когда запускается "основное" действие).).

Другие вопросы по тегам