Devices

如需本資源的方法清單,請見本頁結尾。

資源表示法

「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。(名稱為「device」的欄位,每份記錄/wireless/android/android_checkin.proto)
kind string
latestBuildFingerprint string 裝置的版本指紋 (如果知道)。
maker string 裝置製造商。這項資訊來自 android.os.Build.MANUFACTURER
managementType string 在各種部署設定中,識別裝置受到 Google Play 管理版 EMM 控制的程度。

可能的值包括:
  • managedDevice」:使用 EMM 裝置政策控制器 (DPC) 的裝置做為裝置擁有者。
  • 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」可讓裝置的使用者設定應用程式更新政策。「一律」啟用自動更新「永不」會停用自動更新。「僅限 Wi-Fi」只在裝置連上 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 維護期間的開始時間,以裝置午夜後的毫秒為單位。Windows 可跨越午夜。
policy.policyId string 政策的 ID,會隨從 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 字串值 - 只有在屬性的型別為字串、Choice 或隱藏時,才會顯示此值。
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 應用程式設定狀態的時間戳記,以 Epoch 紀元時間起算的毫秒數為單位。系統一律會顯示這個欄位。
report.appState[].packageName string 應用程式的套件名稱。系統一律會顯示這個欄位。
report.lastUpdatedTimestampMillis long 自 Epoch 紀元時間起算,上次報表更新的時間戳記 (以毫秒為單位)。系統一律會顯示這個欄位。
retailBrand string 裝置的零售品牌 (如有)。查看 android.os.Build.BRAND
sdkVersion integer API 相容性版本。

方法

forceReportUpload
上傳報表,其中包含自上次產生報表後,裝置上應用程式狀態的任何變更。您最多可針對特定裝置每 24 小時呼叫此方法 3 次。
取得
擷取裝置的詳細資料。
getState
擷取裝置是否已啟用 Google 服務的存取權,或 已停用。 只有在 Google 管理控制台中啟用在 Android 裝置上強制執行 EMM 政策的情況下,裝置狀態才會生效。否則,系統會忽略裝置狀態,並允許所有裝置存取 Google 服務。這項功能僅適用於由 Google 管理的使用者。
list
擷取使用者所有裝置的 ID。
setState
設定是否啟用或停用裝置的 Google 服務存取權。 只有在 Android 裝置強制執行 EMM 政策時,裝置狀態才會生效 已在 Google 管理控制台中啟用裝置。 否則,系統會忽略裝置狀態,並允許所有裝置存取 Google 服務。這項功能僅適用於由 Google 管理的使用者。
update
更新裝置政策。

如要確保政策正確強制執行,請防止未受管 將存取 Google Play 的使用者帳戶設為 Google Cloud 控制台的受管理設定中的 allowed_accounts Play 套件。查看限制 帳戶