从应用检索反馈

某些应用能够以键控应用状态的形式向 EMM 发送反馈。键控应用状态由唯一标识符(密钥)、相应的消息(可选)、机器可读的数据(可选)、严重级别状态和时间戳组成。如需发送这些消息,应用需要与 Enterprise Jetpack 库集成。

应用每分钟只能发送第一条即时反馈。在冷却期内生成的反馈将加入队列,并在冷却期结束时一并发送。例如,如果在 [t=0s;10s;15s] 生成 3 次反馈,冷却期为 1 分钟,则第一条即时反馈将在 [t=0s] 发送,第二条和第三次反馈的发送时间为 [t=60s]。

作为 EMM,您可以使用键控应用状态中的数据,让 IT 管理员及时了解受管设备和资料上安装的应用。向企业显示反馈中介绍了此功能的工作原理示例。

启用设备报告

应用会按设备发送键控应用状态。这些状态包含在设备报告中。要为设备启用报告功能,请执行以下操作:

  1. 按照为企业设置 Pub/Sub 通知的说明进行操作。在第 5 步中,将 STATUS_REPORT 包含到 enabledNotificationTypes 中。
  2. 对于每台设备,更新设备政策:将 StatusReportingSettings.applicationReportsEnabled 设置为 true

您现在可以使用 Pub/Sub API 获取设备报告通知。或者,您也可以随时调用 devices.get() 来查看设备的最新报告。

在设备报告中查看键控应用状态

设备报告以设备资源的形式提供。在应用报告部分中,键控应用状态按软件包名称分组,如下例所示:

{
   "applicationReports":[
      {
         "packageName": "pkg1",
         "versionCode": 101,
         "keyedAppStates":[
            {
               "key": "key1",
               "severity": INFO,
               "message": "message1",
               "data": "data1",
               "createTime": "2018-10-01T15:01:22.027623745Z",
               "lastUpdateTime": "2018-10-02T15:01:23.045123456Z"
            }
         ]
      }
   ]
}

每个键控应用状态都包含以下信息:

字段 说明
key 标识状态的唯一键。
severity 状态的严重性:INFO 表示信息性消息。例如,如果成功设置了托管配置。ERROR 表示企业需要采取措施来纠正问题。例如,如果托管配置未能设置。
message 提供应用状态详细信息的可选字符串。我们建议应用开发者将此字段视为面向用户的消息。
data 可选字符串,用于向 EMM 提供有关应用状态的计算机可读详细信息。例如,IT 管理员可以在控制台中查询的值,如“notify me if the battery_warning data < 10”。
createTime 指示在设备上创建应用状态的时间的时间戳。
lastUpdateTime 指示应用状态上次更新时间的时间戳。

向企业显示应用反馈

应用发送反馈的原因有很多。不过,发送键控应用状态的最常见用例是提供有关托管配置的反馈。例如:

  1. IT 管理员可使用 EMM 控制台为应用设置托管配置
  2. 在后端,使用 ApplicationPolicy 将配置发送到应用。
  3. 应用尝试应用配置。对于每项配置,应用都会发送表示其状态的键控应用状态(例如,确认消息或错误通知)。
  4. 如需查看这些键控应用状态,您需要检索设备报告。
  5. EMM 控制台使用来自键控应用状态的信息,以人性化的方式显示托管配置的状态。

提醒 IT 管理员注意错误

严重级别为 ERROR 的键控应用状态表示组织需要采取措施来纠正问题。EMM 应始终通过其 EMM 控制台或其他方式提醒组织注意错误。例如,您的 EMM 控制台可以显示一个错误信息中心,其中包含错误给定设备的反馈。

如果错误状态得到更正,应用将发送后续状态,其中包含与原始错误状态相同的键,并且更新后的严重级别为 INFO。纠正错误后,EMM 应始终立即通知组织。例如,从控制台的错误信息中心中移除错误,或将其标记为已解决。