START_STICKY для Активности, которая ведет себя как Сервис - PullRequest
0 голосов
/ 14 апреля 2020

Если мы хотим, чтобы активность работала как служба, мы можем переместить ее в фон, используя:

moveTaskToBack(true);

, и мы можем скрыть ее с экрана «Последние», используя:

android:excludeFromRecents="true"

Но как заставить START_STICKY автоматически создавать заново после его уничтожения?

1 Ответ

5 голосов
/ 14 апреля 2020

Вы не можете автоматически воссоздать Activity после его смерти. Это может создать атаку типа «отказ в обслуживании» на устройстве пользователя, постоянно перезапуская Activity перед ним и не давая ему делать что-либо еще. Если только вы не подумали, что он не запустит / не покажет какой-либо пользовательский интерфейс, а просто запустит в состоянии «создан, но не запущен», и в этом случае этого тоже нет, потому что для этого Service - Activity s для отображения пользовательского интерфейса.

Короткая версия: если вы хотите, чтобы эти сервисные поведения, вы должны использовать Service и просто получить доступ к Service с вашего Activity.

...