До Oreo у меня была фоновая служба, которую я запускал, и она регистрировала в контексте несколько BroadcastReceivers.
Когда один из получателей получает намерение, он обрабатывает его в службе.
Пример: когда он получает android.bluetooth.device.action.ACL_DISCONNECTED, включите WiFi.
Проблема в том, что с новыми фоновыми ограничениями моя служба будет закрыта вскоре после закрытия моего приложения.
Я могу решить проблему с помощью службы переднего плана, но пользователю не нужно постоянно видеть уведомление.
В Руководстве по миграции предлагается использовать планировщик заданий для опроса состояние, которое вызвало бы неявное намерение. Это кажется гораздо более расточительным, чем регистрация получателя в фоновой службе. Служба на самом деле ничего не делает, пока не сработает один из приемников.
Каков новый правильный способ прослушивания отключения Bluetooth и немедленной реакции? (без вашего приложения на переднем плане)