語言

TelephonyManager.DeviceId 屬性

定義

回傳獨特的裝置 ID,例如 GSM 的 IMEI,以及 CDMA 手機的 MEID 或 ESN。

public virtual string? DeviceId { [Android.Runtime.Register("getDeviceId", "()Ljava/lang/String;", "GetGetDeviceIdHandler")] [Android.Runtime.RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE")] get; }
[<get: Android.Runtime.Register("getDeviceId", "()Ljava/lang/String;", "GetGetDeviceIdHandler")>]
[<get: Android.Runtime.RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE")>]
member this.DeviceId : string

屬性值

屬性

備註

回傳獨特的裝置 ID,例如 GSM 的 IMEI,以及 CDMA 手機的 MEID 或 ESN。 若無法取得裝置 ID,則回傳 null。

從 API 第 29 級開始,持久裝置識別碼受到額外限制,且建議應用程式使用可重置識別碼(參見唯一識別碼最佳實務)。 若符合以下條件之一,即可啟動此方法: <ul><li>若呼叫應用程式已獲得 READ_PRIVILEGED_PHONE_STATE 權限;此權限僅能授予裝置預先載入的應用程式。 <li>如果呼叫應用程式是完全管理裝置的裝置擁有者、組織擁有裝置的設定檔擁有者,或其代理人(參見 android.app.admin.DevicePolicyManager#getEnrollmentSpecificId())。 <li>:如果通話應用程式在任何有效訂閱上都有電信業者權限(參見 #hasCarrierPrivileges)。 <li>如果呼叫應用程式是預設的簡訊角色持有者(參見 RoleManager#isRoleHeld(String))。 </ul>

若呼叫應用程式不符合上述一項要求,則此方法的行為如下:

<ul><li>如果呼叫應用程式的目標 SDK 是 API 等級 28 或以下,且該應用程式擁有 READ_PHONE_STATE 權限,則會回傳 null。</li><li>如果呼叫應用程式的目標 SDK 是 API 等級 28 或以下,且應用程式沒有 READ_PHONE_STATE 權限,或呼叫應用程式的目標是 API 等級 29 或以上,則會拋出 SecurityException。</li></ul>

此會員已被棄用。 使用 #getImei GSM回傳IMEI或 #getMeid CDMA回傳MEID的選項。

Java 文件 android.telephony.TelephonyManager.getDeviceId()。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於