Я пытаюсь сделать что-то похожее на приложение truecaller, где мое приложение должно показывать экран после того, как звонок будет зависеть. Достигал этого, зарегистрировав android.intent.action.PHONE_STATE
неявное вещание в файле manifest
.
Но он не работает, если я изменю приложение на целевой Android O, из-за ограничения на широковещательную передачу Android O, и я пытаюсь чтобы найти альтернативное решение для этого варианта использования.
Альтернативные решения, предлагаемые в документах android: Job scheduler
или зарегистрируйте service
с помощью context
.
Планировщик заданий:. Из-за оптимизации Job scheduler
будет некоторая задержка для получения обратного вызова. Таким образом, это повлияет на работу пользователя, если экран вашего приложения будет показан через несколько минут после телефонного звонка и опроса, чтобы проверять наличие новых журналов вызовов каждые несколько секунд, из-за проблемы с аккумулятором.
Зарегистрировать службу с контекстом в Java. Я хочу, чтобы поведение работало, даже если приложение неактивно или живое. Это не будет работать, если система убивает service
.
Зарегистрировать службу переднего плана. Для этого требуется, чтобы уведомление показывалось пользователю все время, что было бы спамом для пользователя, а работа службы 24/7 потребляет много ресурсов, которые побеждают целая цель ограничения вещания.
Пожалуйста, предложите альтернативное решение, чтобы пользователь не остался прежним.
Заранее спасибо