1

私の最初の Android アプリとして、作業用のキオスクをプログラミングしています。このアプリはデフォルトのランチャーおよび全画面表示として設定されているため、タブレットの起動時にはキオスクが既に起動しており、ユーザーは他のアプリを開いたり、キオスク アプリから脱出したりすることはできません。

コーディングできない最後のことは、キオスク/ランチャーからデフォルトの Android ランチャーに変更する機能です。パスワード入力を用意しました。パスワードが正しければ、ランチャーを起動したいと思います。

これは私がこれまでに持っているものです:

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

このアプリは、デフォルトのランチャーが Android ランチャーである Android Studio のエミュレーターでのみ試しました。したがって、タブレットでは、createChooser にもかかわらず、デフォルトのランチャー、つまりキオスクにしか到達しないと思います。

4

2 に答える 2

1

これはOPのソリューションであり、質問本文からここに移行されました

if (message.equals("password")) {
    getPackageManager().clearPackagePreferredActivities(getPackageName());
    final Intent intent = new Intent();
    intent.setAction(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_HOME);
    startActivity(intent);
}
于 2015-12-04T17:30:56.340 に答える
0

次のようにインテントを設定してみてください。

intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
于 2014-02-03T16:24:14.670 に答える