DeviceIdentifier
會封裝硬體 ID,以便識別
製造廠牌本文將說明如何在
零接觸註冊 API。
DeviceIdentifier
結合了專屬硬體中繼資料或 ID
辨識裝置。
貴機構會在上傳裝置時提供裝置 ID 值
存取資料因為 DeviceIdentifier
個執行個體
無法變更,您無法使用 API 變更欄位值。
必填欄位
Android 裝置
零接觸註冊機制通常會根據 IMEI (或 MEID) 識別裝置 以及行動網路數據機 ID但為了支援沒有行動網路數據機的裝置,例如 您也可以使用不同的欄位組合來識別裝置 下表顯示各裝置類型所需的欄位:
ID | 行動網路 | 僅限 Wi-Fi | 附註 |
---|---|---|---|
hardware_id |
這個欄位必須是 IMEI 或 MEID 號碼。零接觸註冊機制會在 API 引數中傳遞 IMEI 值時,驗證這些值的格式。如果裝置搭載超過一部行動網路,請參閱雙 SIM 卡裝置。 | ||
serialNumber |
裝置的製造商序號。序號區分大小寫,與 Build.getSerial() 傳回的值相同。 |
||
model |
裝置型號值必須與 Build.MODEL 傳回的裝置內建值相符。如需各個製造商可用值的清單,請參閱模型名稱參考資料。 |
||
manufacturer |
如要讓零接觸註冊機制適用於僅支援 Wi-Fi 的裝置,manufacturer 欄位值必須與 Build.MANUFACTURER 傳回的裝置內建值相符。如果是行動裝置,manufacturer 是選填欄位,但建議填寫,方便客戶識別自己的裝置。詳情請參閱製造商名稱參考資料。 |
如果裝置並未提供行動網路數據機 (例如平板電腦) 倉庫庫存掃描器 (使用「僅限 Wi-Fi」欄位)。至於其他裝置 使用行動網路欄位
雙 SIM 卡裝置
雙 SIM 卡裝置搭載兩個獨立數據機,且具備兩個 IMEI 號碼。使用 以數字表示最低的 IMEI 號碼,因為零接觸註冊機制的運作方式更多 取得最低的 IMEI。
ChromeOS 裝置
如果是 ChromeOS 裝置,行動網路的必要 ID 組合也相同 和僅支援 Wi-Fi 的裝置:
ID | 附註 |
---|---|
serialNumber
|
裝置。 |
model
|
裝置型號的值必須與裝置的 內建的值查看 ChromeOS 型號值清單 以便參考。 |
chromeOsAttestedDeviceId
|
已驗證裝置 ID。請參閱這份清單 相容的 ChromeOS 裝置 參照。 |
參照裝置
尋找裝置或認領裝置時,請使用 DeviceIdentifier
。您需要附上
替裝置類型指定的必填欄位。
下列程式碼片段顯示的是用於搜尋特定裝置的 IMEI 號碼
呼叫 partners.devices.findByIdentifier
:
Java
// Create a DeviceIdentifier. DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); deviceIdentifier.setImei("123456789012347"); // Perform the search using the zero-touch enrollment API. FindDevicesByDeviceIdentifierRequest body = new FindDevicesByDeviceIdentifierRequest(); body.setLimit(1L); body.setDeviceIdentifier(deviceIdentifier); FindDevicesByDeviceIdentifierResponse response = service .partners() .devices() .findByIdentifier(PARTNER_ID, body) .execute();
.NET
// Create a DeviceIdentifier. var deviceIdentifier = new DeviceIdentifier { Imei = "123456789012347" }; // Perform the search using the zero-touch enrollment API. var body = new FindDevicesByDeviceIdentifierRequest { Limit = 1, DeviceIdentifier = deviceIdentifier }; var response = service.Partners.Devices.FindByIdentifier(body, PartnerId).Execute();
Python
# Create a DeviceIdentifier. device_identifier = {'imei':'123456789012347'} # Perform the search using the zero-touch enrollment API. response = service.partners().devices().findByIdentifier( partnerId=PARTNER_ID, body={'deviceIdentifier':device_identifier, \ 'limit':1}).execute()
下列程式碼片段說明如何建立僅使用 Wi-Fi 的裝置 ID:
Java
// Create a device identifier to find a Wi-Fi-only device. DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); deviceIdentifier.setManufacturer("Honeywell"); deviceIdentifier.setModel("VM1A"); deviceIdentifier.setSerialNumber("ABcd1235678");
.NET
// Create a device identifier to find a Wi-Fi-only device. var deviceIdentifier = new DeviceIdentifier { Manufacturer = "Honeywell", Model = "VM1A", SerialNumber = "ABcd1235678" };
Python
# Create a device identifier to find a Wi-Fi-only device. device_identifier = {'manufacturer':'Honeywell', \ 'model':'VM1A', 'serialNumber':'ABcd1235678'}
瞭解詳情
- 如要進一步瞭解硬體 ID,請參閱
DeviceIdentifier
的 API 參考說明文件。 - 如要查看允許的製造商名稱和裝置型號清單,請參閱 manufacturer name 參考資料。
- 如要查看相容的 ChromeOS 裝置清單,請參閱 ChromeO 說明中心