Version: 2021.3
言語: 日本語
アプリケーションの権限の宣言
Android 用のビルドと提出

ランタイム権限のリクエスト

This page explains how to request the user’s permission for your application to access data on the device or use a device feature such as a built-in camera or microphone.

権限のリクエストに関する Google のガイドラインでは、ユーザーが権限のリクエストを一旦拒否した場合は、リクエストの理由を表示し、リクエストを再度提示することを推奨しています。

For more information on when and how you should request permissions on an Android device, see App permissions best practices in the Android developer guide.

要件

ランタイム権限 API を使用するには、Android バージョン 6 (API レベル 23) が必要です。アプリケーションのターゲット API の変更は、以下の手順で行ってください。

  1. Edit > Project Settings を選択します。
  2. Project Settings ウィンドウで Player タブを選択し、Android の Player 設定 (下の画像) を開いてください。
  3. In the Publishing Settings section, set Target API Level to at least level 23.

Before the application requests permission to use restricted data or a particular device feature, it must declare the permission in its Android App Manifest. For more information, see Declare permissions for an application.

実行時の権限のリクエスト

Android.Permission API は、アプリケーションが現在持っている権限の確認や、アプリケーションが必要としていてまだ持っていない権限のリクエストに使用できる機能を提供します。

実行時の権限をリクエストする大まかなプロセスは、以下の通りです。

  1. アプリケーションの権限が既にユーザーによって付与されているかどうかを確認します。付与されている場合は再度リクエストする必要はありません。
  2. ユーザーがまだ権限を付与していない場合は、データにアクセスしたり、アプリケーションに必要なデバイス機能を使用するための、権限のリクエストを送信します。
  3. ユーザーがアプリケーションへの権限付与を拒否した場合は、アプリケーションの、その特定の権限を必要とする機能を無効にしてください。その機能がないとアプリケーションが機能しない場合は、ユーザーに通知してください。
  4. それでもユーザーがアプリケーションへの権限付与を拒否する場合は、ユーザーがアプリケーション内から手動で権限リクエストを起動できる方法を提供することをお勧めします。

アプリケーションが権限を持っているかの確認

Permission.HasUserAuthorizedPermission を使用して、アプリケーションの必要とするデータや機能に関する権限が、既にユーザーによって付与されているかどうか確認できます。

For a code sample that shows how to use this API, see Permission.HasUserAuthorizedPermission.

権限リクエストの送信

データや機能の使用権限をリクエストするには Permission.RequestUserPermission を使用します。このメソッドを呼び出すと、Android によってシステム権限ダイアログが開かれ、ユーザーはこれを使用して権限リクエストを承認あるいは拒否できます。

This method can accept a PermissionsCallbacks object that you can use to specify code to run after the user grants or denies the permission. You can use this to start using a device feature as soon as the user grants the permission request. For example, you can start recording from the microphone.

For a code sample that shows how to use this API, see Permission.RequestUserPermission.

ヒント: 権限をリクエストする際には、ユーザーに対して、アプリケーションがなぜその機能を必要とするのかを説明するメッセージを表示することが推奨されます。

Note: If the user previously checked the Do not ask me again option on the system permission dialog, or has denied the permission more than once, RequestUserPermission() doesn’t open the system dialog. In this case, the user must go into the application permission settings and manually turn on the permission.

権限リクエストを手動で起動する方法の提供

If the user denies the application the permission that the application requires, provide a way for the user to manually display the permission request dialogue. How to do this depends on the application, but one solution is to provide a button that calls Permission.RequestUserPermission.

アプリケーションの権限の宣言
Android 用のビルドと提出