首页 > 解决方案 > Management API 删除被阻止的应用程序

问题描述

我将 Android Management API 与具有将特定应用程序列入黑名单的DEVICE_OWNER策略"playStoreMode": "BLACKLIST"和应用程序一起使用。"installType": "BLOCKED"这是我用于开发的政策:

{
    "name": "enterprises/<enterprise>/policies/<policy>",
    "version": "1",
    "applications": [
        {
            "packageName": "<enterprise app id>",
            "installType": "FORCE_INSTALLED"
        },
        {
            "packageName": "<blocked app id>",
            "installType": "BLOCKED"
        }
    ],
    "alwaysOnVpnPackage": {
        "packageName": "<enterprise app id>",
        "lockdownEnabled": true
    },
    "playStoreMode": "BLACKLIST"
}

我看到的问题是,当用户手动将策略与 Google 的“设备策略”应用同步时,被列入黑名单的应用仅“由管理员”删除。

如何使列入黑名单的应用程序自动删除?

另外值得注意的是,该设备似乎同时符合和不符合该政策。使用 API 检查安装了被阻止应用程序的设备:

...
"name": "enterprises/<enterprise>/devices/<device id>",
"managementMode": "DEVICE_OWNER",
"state": "ACTIVE",
"appliedState": "ACTIVE",
"policyCompliant": true,
"nonComplianceDetails": [
    {
        "settingName": "applications",
        "nonComplianceReason": "APP_INSTALLED",
        "packageName": "<blocked app id>"
    }
],
...

标签: androidandroid-management-api

解决方案


我发现的唯一解决方法是允许安装该应用程序,但将其设置为禁用的应用程序。然后用户无法启动应用程序,从而有效地“阻止”它。

    {
        "packageName": "<blocked app id>",
        "installType": "AVAILABLE",
        "disabled": true
    }

@Fred 你确认这是否是一个错误?就我而言,当用户将自己的 Google 帐户添加到 DEVICE_OWNER 模式设备时,可以很容易地复制这种情况。


推荐阅读