1

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

Последняя вещь, которую я не могу кодировать, - это возможность перейти от моего киоска/запуска к стандартной панели запуска Android. Я подготовил пароль: если пароль прав, я бы хотел запустить Launcher.

Это то, что я до сих пор:

if (message.equals("password")) { 
    Intent intent = new Intent("android.intent.action.MAIN"); 
    intent.addCategory("android.intent.category.HOME"); 
    startActivity(Intent.createChooser(intent, "Scegli:")); 
} 

Я пробовал это приложение только в эмуляторе Android Studio, где пусковая по умолчанию является Android Launcher: с этими инструкциями, приложение просто идет по умолчанию Android Launcher. Поэтому я полагаю, что на планшете, несмотря на createChooser, я добираюсь до пусковой установки по умолчанию, это будет мой киоск.

+1

Смотрите этот вопрос: http://stackoverflow.com/ Вопросы/12594192/remove-activity-as-default-launcher? rq = 1 Идея состоит в том, чтобы андроид забыл, что вы запускаете по умолчанию. – njzk2

ответ

0

Попробуйте настроить Intent так:

intent.setAction(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_LAUNCHER); 
+0

, пожалуйста, ознакомьтесь с документацией для CATEGORY_LAUNCHER и CATEGORG_HOME. – njzk2

1

Это решение Ор, в мигрировали сюда из тела вопроса

if (message.equals("password")) { 
    getPackageManager().clearPackagePreferredActivities(getPackageName()); 
    final Intent intent = new Intent(); 
    intent.setAction(Intent.ACTION_MAIN); 
    intent.addCategory(Intent.CATEGORY_HOME); 
    startActivity(intent); 
} 
Смежные вопросы