次の方法で共有


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>注:</b> ルート アクセスを使用すると、ハードウェアのシリアル番号などのデバイス識別子を変更できる場合があります。 これらの識別子を変更した場合、キー構成証明を使用してデバイスの元の識別子の証明を取得することはできません。 フレームワークによって提供される識別子が、プロビジョニングされた識別子と一致しない場合、KeyMint は ID 構成証明要求を拒否します。

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

の Java ドキュメントandroid.os.Build.getSerial()

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象