Devices

有关此类资源的方法列表,请参阅本页面的结尾部分。

资源表示形式

“设备”资源表示由 EMM 管理且属于特定企业用户的移动设备。

{
  "kind": "androidenterprise#device",
  "androidId": string,
  "managementType": string,
  "policy": {
    "autoUpdatePolicy": string,
    "productAvailabilityPolicy": string,
    "productPolicy": [
      {
        "productId": string,
        "tracks": [
          string
        ],
        "trackIds": [
          string
        ],
        "managedConfiguration": {
          "kind": string,
          "productId": string,
          "managedProperty": [
            {
              "key": string,
              "valueBool": boolean,
              "valueInteger": integer,
              "valueString": string,
              "valueStringArray": [
                string
              ],
              "valueBundle": {
                "managedProperty": [
                  (ManagedProperty)
                ]
              },
              "valueBundleArray": [
                {
                  "managedProperty": [
                    (ManagedProperty)
                  ]
                }
              ]
            }
          ],
          "configurationVariables": {
            "kind": "androidenterprise#configurationVariables",
            "mcmId": string,
            "variableSet": [
              {
                "kind": "androidenterprise#variableSet",
                "placeholder": string,
                "userValue": string
              }
            ]
          }
        },
        "autoInstallPolicy": {
          "autoInstallMode": string,
          "autoInstallPriority": integer,
          "autoInstallConstraint": [
            {
              "networkTypeConstraint": string,
              "chargingStateConstraint": string,
              "deviceIdleStateConstraint": string
            }
          ],
          "minimumVersionCode": integer
        },
        "autoUpdateMode": string,
        "enterpriseAuthenticationAppLinkConfigs": [
          {
            "uri": string
          }
        ]
      }
    ],
    "maintenanceWindow": {
      "startTimeAfterMidnightMs": long,
      "durationMs": long
    },
    "deviceReportPolicy": string,
    "policyId": string
  },
  "report": {
    "lastUpdatedTimestampMillis": long,
    "appState": [
      {
        "packageName": string,
        "keyedAppState": [
          {
            "key": string,
            "stateTimestampMillis": long,
            "severity": string,
            "message": string,
            "data": string
          }
        ]
      }
    ]
  },
  "latestBuildFingerprint": string,
  "sdkVersion": integer,
  "maker": string,
  "model": string,
  "device": string,
  "product": string,
  "retailBrand": string
}
属性名称 说明 备注
androidId string 设备的 Google Play 服务 Android ID,编码为小写十六进制字符串。例如 "123456789abcdef0"
device string 设备的内部硬件代码名称。此信息来自 android.os.Build.DEVICE。(logs/wireless/android/android_checkin.proto 中名为“device”的字段)
kind string
latestBuildFingerprint string 设备的 build 指纹(如果已知)。
maker string 设备的制造商。此信息来自 android.os.Build.MANUFACTURER
managementType string 指出在各种部署配置中设备受 Google Play 企业版 EMM 的控制程度。

可能的值包括:
  • managedDevice”,设备的设备政策控制器 (DPC) 是 EMM 的设备所有者。
  • managedProfile”:设备具有由 DPC 管理的资料(DPC 是资料所有者),以及 DPC 无法使用的单独的个人资料。
  • containerApp”,不再使用(已弃用)。
  • unmanagedProfile”:已允许(网域管理员通过管理控制台启用该权限)使用 Google Play 企业版,但个人资料本身不归设备政策控制器 (DPC) 所有。


可接受的值:
  • containerApp
  • managedDevice
  • managedProfile
  • unmanagedProfile
model string 设备的型号名称。此信息来自 android.os.Build.MODEL
policy nested object 在设备上强制执行的政策。
policy.autoUpdatePolicy string 控制何时可以在设备上应用自动应用更新。

推荐的替代方案:autoUpdateMode,按应用设置,可在更新频率方面提供更大的灵活性。

autoUpdateMode 设置为 AUTO_UPDATE_POSTPONEDAUTO_UPDATE_HIGH_PRIORITY 时,autoUpdatePolicy 不会产生任何影响。

“choiceToTheUser”允许设备用户配置应用更新政策。“始终”会启用自动更新。“永不”会停用自动更新功能。“wifiOnly”仅在设备连接到 Wi-Fi 时启用自动更新。

可接受的值包括:
  • always
  • choiceToTheUser
  • never
  • wifiOnly
policy.deviceReportPolicy string 设备是否向 EMM 报告应用状态。默认值为“deviceReportDisabled”。

可接受的值包括:
  • deviceReportDisabled
  • deviceReportEnabled
policy.maintenanceWindow nested object 用于定义应何时更新在前台运行的应用的维护窗口。
policy.maintenanceWindow.durationMs long 维护窗口的时长(以毫秒为单位)。时长必须介于 30 分钟到 24 小时(含)之间。
policy.maintenanceWindow.startTimeAfterMidnightMs long 设备维护窗口的开始时间(以毫秒为单位)。窗户可能会跨越午夜。
policy.policyId string 政策的标识符,将会随从 Play 商店发送的应用安装反馈一起传递。
policy.productAvailabilityPolicy string 为指定产品向设备授予的播放权限。“all”无论审批状态如何,都允许设备使用所有产品。“全部”不会自动公开“Alpha”或“Beta”轨道。“白名单”向设备授予对 productPolicy[] 中指定的产品的访问权限。只有已获批准或之前已被企业批准的产品(即被撤消审批的产品)才能列入白名单。如果未提供任何值,则默认应用在用户级别设置的可用性。

可接受的值包括:
  • all
  • whitelist
policy.productPolicy[] list 产品政策列表。productAvailabilityPolicy 需要设置为 WHITELISTALL,才能应用商品政策。
policy.productPolicy[].autoInstallPolicy nested object 商品的自动安装政策。
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[] list 自动安装应用的限制条件。您最多可以指定一个限制条件。

policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].chargingStateConstraint string 充电状态限制条件。

可接受的值包括:
  • chargingNotRequired
  • chargingRequired
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].deviceIdleStateConstraint string 设备空闲状态约束条件。

可接受的值包括:
  • deviceIdleNotRequired
  • deviceIdleRequired
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].networkTypeConstraint string 网络类型限制条件。

可接受的值包括:
  • anyNetwork
  • unmeteredNetwork
policy.productPolicy[].autoInstallPolicy.autoInstallMode string 自动安装模式。如果未设置,则默认为“doNotAutoInstall”。无论是否设置了维护窗口,系统都会自动安装应用。

可接受的值包括:
  • autoInstallOnce
  • doNotAutoInstall
  • forceAutoInstall
policy.productPolicy[].autoInstallPolicy.autoInstallPriority integer 安装的优先级,以无符号整数表示。数值越小,优先级越高。
policy.productPolicy[].autoInstallPolicy.minimumVersionCode integer 应用的最低版本。如果安装的应用版本较低,则系统会根据自动安装约束条件自动更新应用,而不是等待常规自动更新。您最多可以为每部设备的 20 个应用设置最低版本代码。
policy.productPolicy[].autoUpdateMode string 商品的自动更新模式。使用 autoUpdateMode 时,它始终优先于用户的选择。因此,当用户手动更改设备设置时,这些更改会被忽略。

可接受的值:
  • autoUpdateDefault
  • autoUpdateHighPriority
  • autoUpdatePostponed
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[] list 身份提供方的身份验证器应用的身份验证网址配置。这有助于在使用 Android WebView 的私有应用中进行身份验证期间启动身份提供方的身份验证器应用。身份验证器应用应已是设备上身份验证网址的 默认处理程序
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[].uri string 身份验证网址。
policy.productPolicy[].managedConfiguration nested object 产品的受管理配置。
policy.productPolicy[].managedConfiguration.configurationVariables nested object 包含受管理的配置文件的 ID 以及为用户定义的一组配置变量(如果有)。
policy.productPolicy[].managedConfiguration.configurationVariables.kind string
policy.productPolicy[].managedConfiguration.configurationVariables.mcmId string 受管理的配置设置的 ID。
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[] list 归因于用户的变量集。
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].kind string
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].placeholder string 占位符字符串;由 EMM 定义。
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].userValue string 占位符的值,因用户而异。
policy.productPolicy[].managedConfiguration.kind string 已弃用。

policy.productPolicy[].managedConfiguration.managedProperty[] list 此配置的一组托管媒体资源。
policy.productPolicy[].managedConfiguration.managedProperty[].key string 用于标识媒体资源的唯一键。
policy.productPolicy[].managedConfiguration.managedProperty[].valueBool boolean 布尔值 - 仅当属性的类型为布尔值时,此字段才会显示。
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle nested object 受管理资源集合 - 仅当媒体资源类型为“集合”时,此字段才会显示。
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle.managedProperty[] list 受管理媒体资源的列表。
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[] list 属性捆绑包列表 - 仅当属性类型为 bundle_array 时才会显示。
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[].managedProperty[] list 受管理媒体资源的列表。
policy.productPolicy[].managedConfiguration.managedProperty[].valueInteger integer 整数值 - 只有当属性类型为整数时,此值才会存在。
policy.productPolicy[].managedConfiguration.managedProperty[].valueString string 字符串值 - 只有当属性的类型为字符串、选项或隐藏时,才会存在此值。
policy.productPolicy[].managedConfiguration.managedProperty[].valueStringArray[] list 字符串值列表 - 仅当属性类型为多选时,此字段才会显示。
policy.productPolicy[].managedConfiguration.productId string 受管配置适用的商品的 ID,例如“app:com.google.android.gm”。
policy.productPolicy[].productId string 商品的 ID。例如 "app:com.google.android.gm"
policy.productPolicy[].trackIds[] list 向指定的产品发布轨道(由 trackIds 标识)授予设备公开范围。可通过调用 Products.Get 获取产品的发布轨道列表。
policy.productPolicy[].tracks[] list 已弃用。请改用 trackIds
product string 设备的产品名称。此信息来自 android.os.Build.PRODUCT
report nested object 使用最新应用状态更新的设备报告。
report.appState[] list 设备上的受管理应用设置的应用状态列表。应用状态由应用的开发者定义。此字段将始终存在。
report.appState[].keyedAppState[] list 键值对应用状态的列表。此字段将始终存在。
report.appState[].keyedAppState[].data string 用于机器可读取数据的附加字段。例如,数字或 JSON 对象。为防止 XSS,我们建议先从数据中移除所有 HTML,然后再显示数据。
report.appState[].keyedAppState[].key string 指示应用为什么提供状态的键。键的内容由应用开发者设置。为防止 XSS,我们建议先从键中移除任何 HTML,然后再显示该键。此字段将始终存在。
report.appState[].keyedAppState[].message string 用于描述应用状态的自由形式、直观易懂的消息。例如一条错误消息。为防止 XSS 攻击,我们建议您在显示消息之前从中移除所有 HTML。
report.appState[].keyedAppState[].severity string 应用状态的严重程度。此字段将始终存在。

可接受的值包括:
  • severityError
  • severityInfo
report.appState[].keyedAppState[].stateTimestampMillis long 应用设置状态的时间戳(以从公元纪年开始计算的毫秒数表示)。此字段将始终存在。
report.appState[].packageName string 应用的软件包名称。此字段始终存在。
report.lastUpdatedTimestampMillis long 上次报告更新的时间戳(以毫秒为单位,从 Epoch 起算)。此字段将始终存在。
retailBrand string 设备的零售品牌(如果已设置)。请参阅 android.os.Build.BRAND
sdkVersion integer API 兼容性版本。

方法

forceReportUpload
上传一份报告,其中包含自以下时间以来设备上应用状态发生的任何变化 上次生成的报告您每次最多可调用此方法 3 次 对于给定设备而言,为 24 小时。
get
检索设备的详细信息。
getState
检索设备对 Google 服务的访问权限是否已启用或 已停用。 只有在 Android 设备上强制执行 EMM 政策时,设备状态才会生效 设备在 Google 管理控制台中启用。 否则,系统会忽略设备状态,并允许所有设备访问 Google 服务。只有 Google 管理的用户支持此功能。
list
检索用户所有设备的 ID。
setState
设置是启用还是停用设备对 Google 服务的访问权限。 只有在 Android 设备上强制执行 EMM 政策时,设备状态才会生效 设备在 Google 管理控制台中启用。 否则,系统会忽略设备状态,并允许所有设备访问 Google 服务。只有 Google 管理的用户支持此功能。
update
更新设备政策。

为确保正确强制执行此政策,您需要在 Google Play 软件包的受管理配置中设置 allowed_accounts,以阻止非受管账号访问 Google Play。请参阅限制 账号