【问题标题】:Single webapp kiosk mode via Android Management API通过 Android Management API 的单一 webapp 信息亭模式
【发布时间】:2019-12-08 12:05:41
【问题描述】:

我正在尝试通过 Android Management API 将策略应用于一些平板电脑。我已经能够毫无问题地创建我的企业、Web 应用程序、策略并添加设备。

我遇到的问题是我的政策。我尝试了 SO 和文档中的各种版本,但它要么没有锁定平板电脑,要么出现不合规错误。

我尝试过的策略

版本 1 (source)

{
  "version": 1,
  "applications": [
   {
     "packageName": "com.google.my.webapp",
     "installType": "KIOSK",
     "defaultPermissionPolicy": "GRANT"
   },
   {
     "packageName": "com.android.chrome",
     "installType": "FORCE_INSTALLED",
     "managedConfiguration": {
       "URLBLacklist": ["*"],
       "URLWhitelist": ["my.whitelabeled.url.com"]
     },
     "defaultPermissionPolicy": "GRANT"
   }
  ]
}

第 2 版 (source)

{
  "version": 2,
  "applications": [
    {
      "packageName": "com.android.chrome",
      "installType": "FORCE_INSTALLED",
      "defaultPermissionPolicy": "GRANT",
      "managedConfiguration": {
        "URLBlacklist": [
          "*"
        ],
        "URLWhitelist": [
          "my.whitelabeled.url.com"
        ]
      }
    },
    {
      "packageName": "com.google.my.webapp",
      "installType": "KIOSK",
      "defaultPermissionPolicy": "GRANT"
    }
  ],
  "statusBarDisabled": true,
  "keyguardDisabled": true
}

版本 3 (source)

{
  "version": 3,
  "applications": [
    {
      "packageName": "com.google.my.webapp",
      "installType": "KIOSK",
      "defaultPermissionPolicy": "GRANT"
    }
  ],
  "cameraDisabled": true,
  "defaultPermissionPolicy": "GRANT",
  "debuggingFeaturesAllowed": true
}

以及上述和其他examples 的一些其他变体。他们都没有锁定设备。当我查看我的设备(下面的输出)时,我似乎遇到了一些错误,表明存在MANAGEMENT_MODE 问题,这是有道理的,因为看起来政策只是PROFILE_OWNER

  "devices": [
    {
      "name": "enterprises/__enterpriseid__/devices/__deviceid__",
      "managementMode": "PROFILE_OWNER",
      "state": "ACTIVE",
      "appliedState": "ACTIVE",
      "nonComplianceDetails": [
        {
          "settingName": "applications",
          "nonComplianceReason": "MANAGEMENT_MODE",
          "packageName": "com.google.my.webapp"
        },
        {
          "settingName": "systemErrorDialogsDisabled",
          "nonComplianceReason": "MANAGEMENT_MODE"
        },
        {
          "settingName": "lockTaskFeatures",
          "nonComplianceReason": "MANAGEMENT_MODE"
        },
        {
          "settingName": "persistentPreferredActivities",
          "nonComplianceReason": "INVALID_VALUE",
          "packageName": "com.google.my.webapp"
        },
        {
          "settingName": "statusBarDisabled",
          "nonComplianceReason": "MANAGEMENT_MODE"
        },
        {
          "settingName": "wifiConfigsLockdownEnabled",
          "nonComplianceReason": "MANAGEMENT_MODE"
        }
      ],
      ...
    }
  ]

我确定我应该在某个地方指定它,但我找不到它。

是否有人制定了以下有效政策:

  • 启动时启动 Chrome 和/或网络应用程序
  • 锁定 Chrome,没有奇怪的固定选项
  • 隐藏状态菜单/按钮
  • 不让平板电脑休眠

谢谢!

【问题讨论】:

  • 您好,您知道如何创建策略运行时并应用于设备吗?
  • 嗨!是的,我已经能够应用上面列出的所有内容,并且它们可以正确加载到设备上,但结果并不是我想要的(例如应用程序未锁定)
  • @Lauren 你有没有想过怎么做?
  • @Hugo 不,永远无法让它工作。我联系了 Android,看来我需要通过他们的企业解决方案才能做到这一点。

标签: kiosk-mode android-management-api


【解决方案1】:

如果您想将设备专用于单个应用程序,那么您需要managementMode: "DEVICE_OWNER"。您在初始设置时注册设备(以后无法使用此管理模式注册设备)。

您可以将PROFILE_OWNER 视为以下...员工拥有自己的 Android 设备,但希望访问雇主维护的应用程序和数据等。雇主希望控制对这些应用程序的访问,并通过 Android 管理实现API 政策。

因此,IT 员工将员工拥有的设备与工作政策相关联。此过程会在设备上安装一个单独的配置文件,该配置文件仅用于工作,以后可以擦除(这不会从设备上擦除用户的个人配置文件)。因此,如果员工离开,工作访问权限将被撤销,但他们的电话与以前一样。

如果设备完全归雇主所有并且设计用于运行一个应用程序,那么您绝对应该在DEVICE_OWNER 管理模式下运行。这使您可以锁定和固定单个应用程序,并阻止用户中断和做其他他们不应该在设备上做的事情。

【讨论】:

  • 谢谢 S - 我认为问题在于我无法在我的政策中设置 managementMode,所以当我扫描二维码进行注册时,它会将其应用为个人资料而不是所有者。根据文档 (developers.google.com/android/management/reference/rest/v1/…),managementMode 似乎不是政策中的一个选项,你知道我在哪里设置的吗?
  • managementMode 由您配置设备的方式决定。 This page 更详细地解释,但简而言之,要获得 DEVICE_OWNER(即完全托管/专用设备),需要在初始设备设置时完成。您刚才设置的是PROFILE_OWNER(即工作配置文件)。您需要将设备恢复出厂设置并在初始设置时进行配置。您以后无法为专用设备进行配置。
  • 如果我的managementMode 已经是DEVICE_OWNER 但我仍然收到相同的INVALID_VALUE 错误,您知道是否有办法进一步调查。这是我的设备响应的一部分:"managementMode": "DEVICE_OWNER", "state": "ACTIVE", "appliedState": "ACTIVE", "nonComplianceDetails": [ { "settingName": "persistentPreferredActivities", "nonComplianceReason": "INVALID_VALUE", "packageName": "com.android.chrome" } ],
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-03-16
  • 2011-01-24
  • 2016-03-18
  • 2016-05-14
  • 2014-05-08
  • 1970-01-01
  • 2021-07-15
相关资源
最近更新 更多