Build.GetSerial 方法

定義

如果有的話,取得硬體序號。

[Android.Runtime.Register("getSerial", "()Ljava/lang/String;", "", ApiSince=26)]
[Android.Runtime.RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE")]
public static string? GetSerial ();
[<Android.Runtime.Register("getSerial", "()Ljava/lang/String;", "", ApiSince=26)>]
[<Android.Runtime.RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE")>]
static member GetSerial : unit -> string

傳回

如果指定了序號,則為序號。

屬性

備註

如果有的話,取得硬體序號。

<p class=“note”><b>Note:</b> 根存取權可讓您修改裝置標識符,例如硬體序號。 如果您變更這些標識碼,就無法使用密鑰證明來取得裝置原始標識碼的證明。 如果架構提供的標識碼與布建的標識碼不符,KeyMint 將會拒絕標識符證明要求。

從 API 層級 29 開始,持續性裝置識別碼會受到其他限制的防護,而且建議應用程式使用可重設標識碼(請參閱唯一標識元的最佳做法)。 如果符合下列其中一個需求,則可以叫用這個方法: <ul><li>如果呼叫的應用程式已獲得READ_PRIVILEGED_PHONE_STATE許可權,這是只能授與裝置上預先載入之應用程式的許可權。 <li>如果通話應用程式具有任何使用中訂用帳戶的電信業者許可權(請參閱 android.telephony.TelephonyManager#hasCarrierPrivileges)。 <li>如果通話應用程式是預設的SMS角色持有者(請參閱 android.app.role.RoleManager#isRoleHeld(String))。 <li>如果呼叫應用程式是完全受控裝置的裝置擁有者、組織擁有裝置的配置檔擁有者或其代理人(請參閱 android.app.admin.DevicePolicyManager#getEnrollmentSpecificId())。 </ul>

如果呼叫的應用程式不符合下列其中一項需求,則此方法的行為如下:

<ul><li>如果呼叫應用程式的目標 SDK 為 API 層級 28 或更低,且應用程式具有READ_PHONE_STATE許可權,則會Build#UNKNOWN傳回 。</li li><>如果呼叫應用程式的目標 SDK 為 API 層級 28 或更低,且應用程式沒有READ_PHONE_STATE許可權,或呼叫應用程式是以 API 層級 29 或更高版本為目標,則會擲回 SecurityException。</li></ul>

android.os.Build.getSerial()Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於