某些应用能够以键控应用的形式向 EMM 发送反馈 状态。键控应用状态由唯一标识符(键)、 相应的消息(可选)、机器可读的数据(可选)、严重性 状态和时间戳要发送这些消息,应用需要集成 Enterprise Jetpack 库。
作为 EMM,您可以使用密钥应用状态中的数据来让 IT 管理员保持顺畅沟通 受管设备和个人资料中安装的应用的最新状态。示例 向企业提供反馈意见中说明了其工作方式。
启用设备报告
应用会按设备发送键控应用状态。在键控应用处于任何状态之前 设备上的任何应用已接受,则需要启用设备 报告在设备上更新政策之前,所有键控应用 将被忽略并永久丢失。启用设备报告之前 在注册过程中尽早完成设备注册 过程。这可确保您能收到设备期间生成的应用反馈 并确保没有丢失任何密钥应用状态。
- 调用
devices.update()
, 将policy.deviceReportPolicy
设为"deviceReportEnabled"
。
检索设备报告
检索设备报告有以下几种方法:
- 要检索设备报告以及其他通知,请调用
enterprises.pullNotificationSet()
。 在响应中,每个deviceReportUpdateEvent
表示一个设备报告。 - 如需检索针对
则调用
devices.get()
。 - 要强制设备上传最新的应用状态,请调用
devices.forceReportUpload()
。 此方法会上传包含 设备数量。
查看键控应用状态
设备报告是设备资源的一部分。报告中包含 appState
对象。
下面列出了给定软件包的键控应用状态 (keyedAppState
)
appState
对象,如以下示例所示:
{
"result":{
"kind":"androidenterprise#device",
"report":{
"appState":[
{
"keyedAppState":[
{
"severity":"severityError",
"data":"user",
"message":"Username or password are incorrect",
"key":"account",
"stateTimestampMillis":"1556206406926"
}
],
"packageName":"com.google.android.feedbacktestapp"
}
],
"lastUpdatedTimestampMillis":"1556206407685"
},
"androidId":"32714368a0ad8ad5",
"managementType":"managedProfile",
"policy":{
"deviceReportPolicy":"deviceReportEnabled"
}
}
}
每个键控应用状态都包含以下内容:
字段 | 说明 |
---|---|
key |
标识状态的唯一键。 |
severity |
状态的严重程度:INFO 表示信息性消息。例如,在已成功设置受管配置的情况下。ERROR 表示企业需要采取措施来解决问题。例如,在受管配置设置失败时。 |
message |
提供应用状态相关详细信息的可选字符串。建议应用开发者将此字段视为面向用户的消息。 |
data |
可选字符串,用于向 EMM 提供关于应用状态的计算机可读详细信息。例如,IT 管理员可以在您的控制台中查询的值,如“如果电池警告数据<10”。 |
stateTimestampMillis |
时间戳(以毫秒为单位),指示设备上应用状态的上次更新时间。 |
lastUpdatedTimestampMillis |
时间戳(以毫秒为单位),指示设备上次上传键控应用的时间。 |
向企业显示应用反馈
应用发送反馈的原因有很多。不过,最常见的用途是 发送键控应用状态的情形是提供有关受管理的应用的反馈, 配置。例如:
- IT 管理员使用您的 EMM 控制台为应用设置受管配置。
- 在后端,您将配置发送到应用。
- 应用会尝试应用配置。对于每项配置,应用 发送一个表明其状态的键控应用状态(例如, 消息或错误通知)。
- 如需查看这些键控应用状态,您可以检索设备报告。
- 根据密钥应用状态中的信息,EMM 控制台会显示 以方便用户操作的方式查看受管配置的状态。
提醒 IT 管理员注意错误
严重级别为 ERROR
的键控应用状态表示组织需要
操作来纠正问题。EMM 应始终提醒组织
(通过 EMM 控制台或其他方式)。例如,您的
EMM 控制台可能会显示错误信息中心,以便链接到
存在错误。
如果错误状态得到更正,应用会发送具有相同键的后续状态
作为原始错误状态和更新后的严重级别 INFO
。EMM 应
始终在更正错误后立即通知组织。例如:
从控制台的错误信息中心移除错误,或将其标记为“已解决”。