Я работаю над этим в течение довольно долгого времени, но не могу найти решение.
У меня есть планшет Android, который предназначен для использования в проприетарном приложении. Нам нужно заблокировать планшет, чтобы он мог запускать только приложение (и выбрать несколько других). Я знаю о режиме «Киоск», но мне нужно, чтобы пользователь по-прежнему имел доступ к кнопкам «Назад» и «Домой» (дом возвращается в наше приложение)
В первую очередь причина, по которой мне нужно, чтобы у пользователя по-прежнему был доступ к кнопкам «Назад» и «Домой», заключается в том, что он может вернуться в мое приложение после запуска, скажем, настроек Wi-Fi.
В моем приложении есть поток, который всегда работает, даже если он не находится на переднем плане для обработки данных и тому подобного. Итак, моя первая идея была... давайте определим, какое приложение находится на переднем плане, и если это не мое приложение или небольшой список разрешенных (например, настроек Wi-Fi), тогда убейте приложение и выведите мое приложение на передний план. Но что бы я ни пробовал, ничего не получается...
Сначала я попытался просто имитировать кнопку «Домой» (мое приложение связано с кнопкой «Домой»). Это не работает, если мое приложение является единственным вариантом кнопки «Домой».
Я пытался использовать android.os.Process.killProcess, чтобы убить любое приложение, которое находится на переднем плане... это работает только с очень немногими приложениями.
Я также пытался перезапустить приложение, используя намерение, но это тоже не работает.
Я понимаю, что это в основном связано с тем, что система Android пытается не дать вредоносным приложениям получить контроль над устройством, это приложение не будет распространяться ни на одном рынке.