Есть ли альтернатива onBackPressed () для службы?

Я знаю, что услуги не могут реализовать Back key press, и я понимаю, что такое логическое обоснование. Но есть приложение SideBar (в Play Маркете), которое реагирует на обратные нажатия клавиш. Это сервис, который добавляет представление как оверлей системы и удаляет вид при нажатии на кнопку назад. Кто-нибудь может объяснить, как это делается?

Вот еще одно приложение, которое делает это хорошо. Я просмотрел Интернет, но не нашел решения этой проблемы. Есть идеи?

Solutions Collecting From Web of "Есть ли альтернатива onBackPressed () для службы?"

Вероятно, это делается с помощью системных предупреждающих окон – поэтому служба создает и управляет окном, которое добавляется в диспетчер окон, на котором установлен пользовательский обратный вызов .

Вот хороший пример для addview в Service, а также вы можете использовать прослушиватели, если хотите, в сервисах.

Я также искал реализацию слушателей на службе и, наконец, нашел ее.

Не забудьте добавить разрешение

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> 

И добавьте свой класс обслуживания

 <application> . . <service android:name=".YourServiceClass"></service> . . </application> 

В AndroidManifest.xml.