Как правильно убить активность Android, которая не является фоновым процессом

Кажется, существует много споров о том, как останавливать приложения в Android, поэтому я объясню, что я пытаюсь сделать и почему, в надежде, что смогу получить рекомендации о том, как правильно реализовать нужные мне функции. .

Я устал подключать телефон к сети, когда сажусь в машину, подключать наушники, включать BT, выключать Wi-Fi, а затем запускать «Car Home», потому что моя док-станция не делает этого автоматически — это просто часть пластик крепится к приборной панели.

Таким образом, мое приложение автоматически выполняет эти действия, когда я подключаю питание, а когда я отключаю питание, оно отключает BT и снова включает WiFi, но, к сожалению, Car Home все еще работает.

Я хочу автоматизировать весь процесс, чтобы мне никогда не приходилось запускать (или выключать) Car Home, а садиться в машину и выходить из нее было не так сложно.

Я знаю, что Froyo представляет метод killBackgroundProcesses для ActivityManager, но мне это не подходит. Кажется, что он сосредоточен на фоновых процессах, но то, что я читал в Интернете, похоже, что люди хотят использовать его для остановки приложений переднего плана.

Я тоже безуспешно пытался перезапустить пакет от Eclair, поэтому ищу совета.

Как мне лучше всего сказать приложению «Car Home» остановиться именно потому, что питание отключено, и я выхожу из машины, без необходимости переходить на его домашнюю страницу и нажимать «Выход»?


person Justin    schedule 19.11.2010    source источник
comment
Это довольно уникальный вариант использования. Вам, вероятно, придется просто убить процесс, как убийцу задач.   -  person Falmarri    schedule 20.11.2010
comment
Это лучшее решение, которое я могу реализовать? Если я должен внедрить решение, подобное таск-киллеру, что они делают? У меня сложилось впечатление, что убийцы задач используют недокументированные методы, что на самом деле не тот путь, по которому я хотел бы пойти, чтобы решить мою проблему, если это возможно.   -  person Justin    schedule 20.11.2010


Ответы (1)


Вы видели UiModeManager?

Этот класс предоставляет доступ к системным службам uimode. Эти службы позволяют приложениям управлять режимами пользовательского интерфейса устройства. Он обеспечивает функциональность для отключения автомобильного режима и дает доступ к настройкам ночного режима.

person adamp    schedule 20.11.2010