Activity.RequestPermissions メソッド

定義

オーバーロード

名前 説明
RequestPermissions(String[], Int32)

このアプリケーションに付与するアクセス許可を要求します。

RequestPermissions(String[], Int32, Int32)

このアプリケーションに付与するアクセス許可を要求します。

RequestPermissions(String[], Int32)

このアプリケーションに付与するアクセス許可を要求します。

[Android.Runtime.Register("requestPermissions", "([Ljava/lang/String;I)V", "", ApiSince=23)]
public void RequestPermissions(string[] permissions, int requestCode);
[<Android.Runtime.Register("requestPermissions", "([Ljava/lang/String;I)V", "", ApiSince=23)>]
member this.RequestPermissions : string[] * int -> unit

パラメーター

permissions
String[]

要求されたアクセス許可。 null 以外で、空ではない必要があります。

requestCode
Int32

#onRequestPermissionsResultに報告された結果と一致するアプリケーション固有の要求コード。 >= 0 にする必要があります。

属性

注釈

このアプリケーションに付与するアクセス許可を要求します。 これらのアクセス許可は、マニフェストで要求する必要があります。アプリに付与しないでください。また、プラットフォームまたはサード パーティのアプリによって宣言されているかどうかに関係なく、保護レベルが android.content.pm.PermissionInfo#PROTECTION_DANGEROUS dangerousされている必要があります。

android.content.pm.PermissionInfo#PROTECTION_NORMAL通常のアクセス許可は、マニフェストで要求された場合、インストール時に付与されます。 マニフェストで要求され、アプリの署名がアクセス許可を宣言するアプリの署名と一致する場合、 android.content.pm.PermissionInfo#PROTECTION_SIGNATURE 署名のアクセス許可はインストール時に付与されます。

この API を呼び出す前に #shouldShowRequestPermissionRationale を呼び出して、システムがアクセス許可を要求する前に論理的な UI を表示することを推奨しているかどうかを確認します。

アプリに要求されたアクセス許可がない場合、ユーザーはそれらを受け入れるための UI が表示されます。 ユーザーが要求されたアクセス許可を承諾または拒否した後、アクセス許可が付与されたかどうかを報告 #onRequestPermissionsResult コールバックを受け取ります。

アクセス許可を要求しても、アクセス許可が付与されるとは限らず、アプリはこのアクセス許可を持たずに実行できる必要があることに注意してください。

このメソッドは、付与するアクセス許可と拒否するアクセス許可をユーザーが選択できるようにするアクティビティを開始できます。 そのため、アクティビティを一時停止して再開できるように準備する必要があります。 さらに、一部のアクセス許可を付与するには、アプリケーションの再起動が必要になる場合があります。 このような場合、結果を #onRequestPermissionsResultに配信する前に、システムによってアクティビティ スタックが再作成されます。

アクセス許可があるかどうかを確認するときは、 #checkSelfPermission(String)を使用する必要があります。

アクティビティがtrueandroid.R.styleable#AndroidManifestActivity_noHistory noHistory設定している場合、アクティビティは#onRequestPermissionsResultを含む結果コールバックを受け取らないため、アクセス許可を要求することはできません。

アクセス許可サンプル リポジトリでは、このメソッドを使用して実行時にアクセス許可を要求する方法を示します。

Javaドキュメント。

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

適用対象

RequestPermissions(String[], Int32, Int32)

このアプリケーションに付与するアクセス許可を要求します。

[Android.Runtime.Register("requestPermissions", "([Ljava/lang/String;II)V", "", ApiSince=35)]
public void RequestPermissions(string[] permissions, int requestCode, int deviceId);
[<Android.Runtime.Register("requestPermissions", "([Ljava/lang/String;II)V", "", ApiSince=35)>]
member this.RequestPermissions : string[] * int * int -> unit

パラメーター

permissions
String[]

要求されたアクセス許可。 null 以外で、空ではない必要があります。

requestCode
Int32

#onRequestPermissionsResultに報告された結果と一致するアプリケーション固有の要求コード。 >= 0 にする必要があります。

deviceId
Int32

アプリがこのデバイスのアクセス許可を要求しています。 プライマリ/物理デバイスは Context#DEVICE_ID_DEFAULT割り当てられ、仮想デバイスには一意のデバイス ID が割り当てられます。

属性

注釈

このアプリケーションに付与するアクセス許可を要求します。 これらのアクセス許可は、マニフェストで要求する必要があります。アプリに付与しないでください。また、プラットフォームまたはサード パーティのアプリによって宣言されているかどうかに関係なく、保護レベルが android.content.pm.PermissionInfo#PROTECTION_DANGEROUS dangerousされている必要があります。

android.content.pm.PermissionInfo#PROTECTION_NORMAL通常のアクセス許可は、マニフェストで要求された場合、インストール時に付与されます。 マニフェストで要求され、アプリの署名がアクセス許可を宣言するアプリの署名と一致する場合、 android.content.pm.PermissionInfo#PROTECTION_SIGNATURE 署名のアクセス許可はインストール時に付与されます。

この API を呼び出す前に #shouldShowRequestPermissionRationale を呼び出して、システムがアクセス許可を要求する前に論理的な UI を表示することを推奨しているかどうかを確認します。

アプリに要求されたアクセス許可がない場合、ユーザーはそれらを受け入れるための UI が表示されます。 ユーザーが要求されたアクセス許可を承諾または拒否した後、アクセス許可が付与されたかどうかを報告 #onRequestPermissionsResult コールバックを受け取ります。

アクセス許可を要求しても、アクセス許可が付与されるとは限らず、アプリはこのアクセス許可を持たずに実行できる必要があることに注意してください。

このメソッドは、付与するアクセス許可と拒否するアクセス許可をユーザーが選択できるようにするアクティビティを開始できます。 そのため、アクティビティを一時停止して再開できるように準備する必要があります。 さらに、一部のアクセス許可を付与するには、アプリケーションの再起動が必要になる場合があります。 このような場合、結果を #onRequestPermissionsResultに配信する前に、システムによってアクティビティ スタックが再作成されます。

アクセス許可があるかどうかを確認するときは、 #checkSelfPermission(String)を使用する必要があります。

アクティビティがtrueandroid.R.styleable#AndroidManifestActivity_noHistory noHistory設定している場合、アクティビティは#onRequestPermissionsResultを含む結果コールバックを受け取らないため、アクセス許可を要求することはできません。

アクセス許可サンプル リポジトリでは、このメソッドを使用して実行時にアクセス許可を要求する方法を示します。

Javaドキュメント。

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

適用対象