そのため、基本的に、私は現在、教室内の専用タブレットでの使用を目的としたAndroidアプリケーションに取り組んでいます。このアプリを使用している間、生徒がやるべきことを無視して、バックアウトしていじり回してほしくないのです。次の方法はありますか?
a)起動時にアプリを起動して、ホーム画面に最初にアクセスできないようにします。b)アプリをロックして、バックアウトできないようにします。実行するのはアプリだけです。
そのため、基本的に、私は現在、教室内の専用タブレットでの使用を目的としたAndroidアプリケーションに取り組んでいます。このアプリを使用している間、生徒がやるべきことを無視して、バックアウトしていじり回してほしくないのです。次の方法はありますか?
a)起動時にアプリを起動して、ホーム画面に最初にアクセスできないようにします。b)アプリをロックして、バックアウトできないようにします。実行するのはアプリだけです。
あなたが探しているものを達成する唯一の方法は:
オプション2はかなり簡単です。基本的に、アプリが代替のホーム画面であることをAndroidに伝えてから、各デバイスのデフォルトとして設定します。そうすれば、デバイスのロックが解除されるたびにアプリが表示され、ホームボタンを押すとアプリのみが起動します。これにより、通知を介して行われない限り、デバイスが他のアプリを開くのを本質的に停止します。通知は、アプリを全画面表示にすることで削除できます。現在アプリを離れる唯一の可能性は、最近のアプリ、またはデバイスシェイクなどでアプリを起動したサービスを経由することです。これを回避するには、自分のアプリより前に他のアプリが起動されていないことを確認するか、最近のアプリを手動でクリアします。このサービスは、それを実行するアプリをインストールしないだけで利用できます。
デフォルトのホーム画面アプリを調べることができます。これはオープンソースであり、次の場所で入手できます。
https://android.googlesource.com/platform/packages/apps/Launcher2.git
私はこれについてかなりの量の調査を行いましたが、オプションはきれいではありません:
1)独自のAndroidホーム画面を作成する
これは関与していますが、実行可能のようです。理論的には、アプリへのリンクのみを含み、他のアイコンを許可しないホーム画面を作成することを選択できます。
2)独自のロック画面を作成する
これにより、デバイスをより細かく制御できる場合がありますが、これまでの唯一のオプションは、これを許可しないように変更された未公開のAPIを使用することでした。