2017-05-30 2 views
1

NFC経由でデバイス所有者権限でプロビジョニングされたデバイスが2つあり、EMMは関係なく、すべてのポリシーはDPCによって設定されています。プロビジョニング中にダウンロードされます。この時点で私はGoogleアカウントを設定しません。NFCを経由してPlayストアに完全にアクセスできるNFC経由のデバイスオーナー/携帯電話

Googleアカウントを手動で追加すると、すべての端末でGoogle PlayストアワークApps(現在はGoogle Appsアプリのみで構成されています)にアクセスできますが、通常のPlayストアにはアクセスできません。

Work Apps Playストアにデバイスを制限して、代わりにフルアクセス権を与える方法はありますか?可能であれば、私はアカウントを一切管理せずに、工場のリセットを拒否し、WiFi、通話、SMSなどを変更するなどの作業を行いたいと思います。

これらは私のDPCで設定したポリシーです。それらのいくつかを誤解していますか?

public static void setDefaultPolicies(Context context, boolean active) { 
    ComponentName componentName = DeviceAdminReceiver.getComponentName(context); 

    DevicePolicyManager dpm = (DevicePolicyManager) context.getSystemService(DEVICE_POLICY_SERVICE); 

    setUserRestriction(dpm, componentName, UserManager.DISALLOW_FACTORY_RESET, active); 

    setUserRestriction(dpm, componentName, UserManager.DISALLOW_ADD_USER, active); 
    setUserRestriction(dpm, componentName, UserManager.DISALLOW_REMOVE_USER, active); 
    setUserRestriction(dpm, componentName, UserManager.DISALLOW_MOUNT_PHYSICAL_MEDIA, active); 
    //setUserRestriction(dpm, componentName, UserManager.DISALLOW_ADJUST_VOLUME, active); 

    //no disabling of wifi and stuff. 
    setUserRestriction(dpm, componentName, UserManager.DISALLOW_CONFIG_WIFI, active); 
    setUserRestriction(dpm, componentName, UserManager.DISALLOW_NETWORK_RESET, active); 
    //setUserRestriction(dpm, componentName, UserManager.DISALLOW_); 

    setUserRestriction(dpm, componentName, UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES, active); 


    //no calls and sms. 
    setUserRestriction(dpm, componentName, UserManager.DISALLOW_SMS, active); 
    setUserRestriction(dpm, componentName, UserManager.DISALLOW_OUTGOING_CALLS, active); 


    // set System Update policy 
     if (active) { 
     dpm.setSystemUpdatePolicy(componentName, 
       SystemUpdatePolicy.createWindowedInstallPolicy(60, 120)); 
    } else { 
     dpm.setSystemUpdatePolicy(componentName, null); 
    } 

    // set this Activity as a lock task package 

    // dpm.setLockTaskPackages(componentName, 
    //  active ? new String[]{context.getPackageName()} : new String[]{}); 

    IntentFilter intentFilter = new IntentFilter(Intent.ACTION_MAIN); 
    intentFilter.addCategory(Intent.CATEGORY_HOME); 
    intentFilter.addCategory(Intent.CATEGORY_DEFAULT); 

    if (active) { 
     // set app as home intent receiver so that it is started 
     // on reboot 
     dpm.addPersistentPreferredActivity(
       componentName, intentFilter, new ComponentName(
         context.getPackageName(), MainActivity.class.getName())); 
    } else { 
     dpm.clearPackagePersistentPreferredActivities(
       componentName, context.getPackageName()); 
    } 
} 

private static void setUserRestriction(DevicePolicyManager dpm, ComponentName componentName, String restriction, boolean disallow) { 
    if (disallow) { 
     dpm.addUserRestriction(componentName, 
       restriction); 
    } else { 
     dpm.clearUserRestriction(componentName, 
       restriction); 
    } 
} 

I know it's possible to grant users access to Play Store apps via the EMM Apiただし、EMMは使用できません。

答えて

1

デバイスに通常のGoogleアカウントを追加すると(デバイスオーナーもプロビジョニングされています)、通常のフルアクセスのPlayストアが手に入ります。

あなたのデバイスオーナーアプリで問題はないと思いますが、追加するGoogleアカウントの種類があります。あなたは "Google Apps app"と言いますが、GSuite Googleアカウントを追加していますか?

GSuite Googleアカウントを使用して簡単なテストを行いましたが、同じ結果が発生しました。

あなたには多少のオプションがあります。 GSuiteとEMMは一般にセットアップが複雑です。

1)GSuiteアカウントのスーパー管理者としてhttps://admin.google.comにログインしている場合は、Googleモバイル管理をEMMとして追加し、そこからアプリをホワイトリストに登録することができます。多くの作業が必要になることがあります。

2)これは最も簡単で簡単です。別の通常のGoogleアカウントを追加し、この新しいアカウントを使用してPlayストアにログインします。 Playストアに完全にアクセスする必要があります。

+0

私は管理されていないGスイートアカウントを使用していましたが、この場合はデバイス所有者がいるデバイスでログインすることが明らかです。あなたの2番目の提案は私にとっては良い解決策です。さらに、G Suiteアカウントを第3の解決策として使用することはできません。ありがとうございました。 – Syzygy

関連する問題