7

追跡アプリケーションを開発していますが、ユーザーが位置の特定に使用される基本的なセンサーをオフにできないようにする必要があります。デバイスの ROM を変更したり、ルート アクセス権を持ったりすることはできません (または、少なくともアクセス権を持たないことが非常に望ましいでしょう) が、デバイス管理 API を使用して、プロファイル オーナー モードまたはデバイス オーナー モードでこれらの機能を実行することを考えました。私は基本的に、Android の設定でこれらの機能をブロックする方法を探しています。

これが可能かどうか、またその方法については不明です。GitHub で、これを実装したアプリケーションの例を見つけられませんでした。誰かに光、いくつかの例、または特定のドキュメントを教えてもらえますか?

この特定の機能の解決策を見つけることに成功せずに、これらの 3 つのドキュメントに従おうとしました。

https://source.android.com/devices/tech/admin https://developer.android.com/guide/topics/admin/device-admin https://developers.google.com/android/management/introduction

これは私が試してきたことからの抜粋です:

setUserRestriction(UserManager.DISALLOW_CONFIG_WIFI, true);
setUserRestriction(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS, active);
setUserRestriction(UserManager.DISALLOW_CONFIG_BLUETOOTH, active);

private void setUserRestriction(String restriction, boolean disallow){
    if (disallow) {
        mDevicePolicyManager.addUserRestriction(mAdminComponentName, restriction);
    } else {
        mDevicePolicyManager.clearUserRestriction(mAdminComponentName,
restriction);
    }
}

DISALLOW_CONFIG_BLUETOOTH API レベル 18 で追加 public static final 文字列 DISALLOW_CONFIG_BLUETOOTH

ユーザーが Bluetooth の構成を許可されていないかどうかを指定します。これは、ユーザーが bluetooth をオンまたはオフにすることを制限しません。デフォルト値は false です。

この制限によって、ユーザーが Bluetooth を使用できなくなるわけではありません。デバイスでの Bluetooth の使用を完全に禁止するには、DISALLOW_BLUETOOTH を使用します。

この制限は、管理対象プロファイルには影響しません。

ユーザー制限のキー。

タイプ: ブール値

4

4 に答える 4