簡體   English   中英

Android 管理 API:在 android Q 上的設備列表中查找設備

[英]Android management API: find device in list of devices on android Q

我們有一個 cosu 應用程序,它可以通過調用 Android 管理 API 來管理其鎖定狀態。 為此,我們使用devices.list查詢接收設備列表,將每個設備的hardwareInfo.serialNumber與從Build.getSerial()接收的 IMEI 進行比較,然后使用以下代碼應用不同的策略:

  fun patchDevice(device: Device, policyName: String) {
    device.policyName = policyName
    androidManagementClient.enterprises().devices().patch(device.name, device).execute()
 }

但是,根據文檔,android Q 中不再提供硬件設備標識符。( 鏈接)現在,我們使用帶有 Android 8 的設備,但我懷疑我們的代碼會在較新的操作系統上中斷。 所以,問題是:

  1. 有沒有其他方法可以在不知道其硬件 ID 的情況下識別列表中的設備?

  2. 或者也許有一種方法可以保證在 Android Q 上使用 READ_PHONE_STATE 仍然會為我們提供 IMEI? 在文檔中指出,如果您的應用程序是設備或配置文件所有者應用程序,則您只需要 READ_PHONE_STATE 權限即可訪問不可重置的設備標識符,即使您的應用程序面向 Android Q。但是,AMAPI 有自己的設備所有者應用程序,所以我不確定這是否適用於我們的情況。

這里最簡單的方法是通過托管配置將設備name傳遞給您的 COSU 應用程序。 然后,您的 COSU 應用程序可以使用該名稱調用 API。 使用這種方法,您無需訪問設備的序列號。

這種方法在我之前的一個答案中有詳細解釋。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM