1

我有几台设备通过 NFC 配置了设备所有者权限,不涉及 EMM,所有策略均由我的 DPC 设置,在配置期间下载。此时我没有设置谷歌帐户。

手动添加 google 帐户后,所有设备都可以访问 Google Play Store Work Apps(目前仅包含 Google Apps 应用程序),但不能访问常规 Play Store。

有没有办法可以停止将设备限制为 Work Apps Play 商店并授予他们完全访问权限?如果可能的话,我想根本不管理该帐户,而只做诸如禁止恢复出厂设置和更改 WiFi、通话、短信等之类的事情......

这些是我用我的 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);
    }
}

我知道可以通过 EMM Api 授予用户对 Play Store 应用程序的访问权限,但是我不能使用 EMM。

4

1 回答 1

1

当我将一个普通的谷歌帐户添加到我的设备时(它也是由设备所有者配置的),我得到了常规的、完全访问的 Play 商店。

我认为问题不在于您的设备所有者应用,而在于您添加的 Google 帐户类型。您提到“Google Apps 应用程序”,是否意味着您要添加 GSuite Google 帐户?

我使用 GSuite Google 帐户进行了快速测试,结果与您相同。

你有几个选择,也许更多。GSuite 和 EMM 通常设置起来很复杂。

1) 如果您以 GSuite 帐户的超级管理员身份登录https://admin.google.com,您可以将 Google 移动管理添加为您的 EMM,然后可以将应用列入白名单。可能需要做很多工作。

2)这是最快和最简单的。添加另一个普通的 Google 帐户并使用这个新帐户登录 Play 商店。您应该可以完全访问 Play 商店。

于 2017-05-31T17:59:29.597 回答