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 は、フレームワークによって提供される識別子が、プロビジョニングされた識別子と一致しない場合、ID 構成証明要求を拒否します。

API レベル 29 以降では、永続的なデバイス識別子は追加の制限の背後で保護され、アプリはリセット可能な識別子を使用することをお勧めします (「一意識別子のベスト プラクティス」を参照してください)。 このメソッドは、次のいずれかの要件が満たされている場合に呼び出すことができます。 <ul><li>呼び出し元のアプリにREAD_PRIVILEGED_PHONE_STATEアクセス許可が付与されている場合。これは、デバイスに事前に読み込まれたアプリにのみ付与できる特権アクセス許可です。 <li>呼び出し元アプリに、任意のアクティブなサブスクリプションに対する通信事業者特権 (を参照 android.telephony.TelephonyManager#hasCarrierPrivileges) がある場合。 <li>呼び出し元アプリが既定の SMS ロール 所有者である場合は (を参照)。android.app.role.RoleManager#isRoleHeld(String) <li>呼び出し元アプリがフル マネージド デバイスのデバイス所有者である場合は、organization所有デバイスのプロファイル所有者、またはその代理人 (を参照)。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 ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象