権限の拒否
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
ほとんどのアプリでは、適切に機能するように特定のアプリの権限をユーザーが付与する必要があります。しかし場合によっては、ユーザーが権限の付与を受けないことがあります。
- アプリの主な機能には権限が必要ないと考えている。
- 権限に関連付けられている機能を使用しない。
- 権限がデバイスのパフォーマンスに影響することを懸念している。
- 単に不快に感じている(たとえばプライバシーに敏感である)。
Android Vitals を使用してユーザーの理解度を測定する {#:android-vitals}
Android Vitals を使用すると、アプリに対する権限の拒否の割合を知ることができます。これは、ユーザーのプライバシーに関する嗜好と態度を評価するために役立ちます。Android Vitals は Play Console を介して、1 日の権限セッション数のうち、ユーザーがアプリの権限リクエストを拒否した割合を表示します。
1 日の権限セッションとは、アプリでユーザーに対し権限が 1 回以上リクエストされた日を示します。あるユーザーが同じ権限について許可または拒否を複数回行った場合は、セッションの最後に行った選択のみが記録されます。
Android Vitals では、権限グループレベルでユーザーの判断が表示されます。Android Vitals には、同じ Play ストアカテゴリに属する他のトップアプリとアプリの位置を比較するためのベンチマークもあります。
Google Play が Android Vitals のデータを収集する方法については、Play Console のドキュメントをご覧ください。
ベスト プラクティス
拒否率が異常に高い場合、ユーザーは自身の情報を追加で提供しても、それに見合うメリットは得られないと考えています。ユーザーがアプリを快適に使用できるようにする方法はいくつかあります。このセクションで説明するような手順を実施することで、拒否率を下げられる場合があります。ただし、個人の好みは多様であり、いかなる場合でも権限を付与しようとしないユーザーもいるため、拒否率がゼロになることは期待しないでください。
不要な権限のリクエストを避ける
調査によると、ユーザーは権限リクエストが少ないアプリを好みます。
権限リクエストを必要最小限に抑えることで、アプリに対するユーザーの信頼を高め、インストール数を増やすことができます。逆に、不要な権限リクエストを追加すると、Play ストアでのアプリの表示に影響を及ぼすことがあります。特定の権限が必要ない場合は、別の方法でアプリの権限リクエスト数を減らせます。一般的なアプローチについては、アプリの権限に関するおすすめの設定で概説しています。
コンテキストで権限リクエストを表示する
あまり直感的でない、重要でない権限は、コンテキストで説明すると効果的です。これにより、権限から派生した価値に対するユーザーの理解が向上します。図 1 は、コンテキストに即してユーザーに説明する例を示しています。
図 1. コンテキストに即して権限リクエストを説明する
関連する機能のコンテキストに即してアプリが権限をリクエストすると、ユーザーは価値提案をよりよく理解できるようになります。理解が高まると、より多くのユーザーが権限リクエストを許可するようになる可能性があります。
ユーザーに適切に説明して権限をリクエストする方法に関するガイドラインについては、権限のマテリアル デザイン パターンをご覧ください。
アプリが権限を必要とする理由を説明する
まずは、コンテキストに即して権限をリクエストすることを検討します。あまり直感的でない権限についてユーザーの理解を高めるには、説明することが効果的です。shouldShowRequestPermissionRationale()
ユーティリティ メソッドは、ユーザーが以前に権限リクエストを拒否したことがある場合、true を返します。アプリでは、このメソッドを使用して、説明を表示するタイミングを決定できます。
説明の文字列を表示する方法の詳細については、アプリの権限をリクエストするをご覧ください。
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-07-27 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-07-27 UTC。"],[],[],null,["# Permission Denials\n\nMost apps require that users grant them certain\n[app permissions](/guide/topics/permissions/overview) in order to function\nproperly. However, in some cases, users might not grant the permissions\n\n- They think the permission isn't needed for the app's core functionality.\n- They don't use the functionality associated with the permission.\n- They are concerned about the permission's impacting device performance.\n- They're simply uncomfortable, for example due to sensitivities regarding privacy.\n\nUse Android vitals to gauge user perceptions {#:android-vitals}\n---------------------------------------------------------------\n\nAndroid vitals can help you gauge your users' privacy preferences and engagement\nby informing you about the percentage of permission denials your app\nis receiving. Via the Play console, Android vitals shows the percentage\nof daily permission sessions during which users denied permissions for your app.\n\nA *daily permission session* refers to a day during which your app requested\nat least one permission from a user. When a given user has to make multiple\ndecisions for the same permission, only the final decision at the end of a\nsession is recorded.\n\nAndroid vitals shows you users' decisions at the permission-group\nlevel. Android vitals also provides benchmarks to help compare where your app\nstands with respect to other top apps in the same Play store category.\nFor information on how Google Play collects Android vitals data, see the\n[Play Console documentation](https://support.google.com/googleplay/android-developer/answer/7385505).\n\nBest practices\n--------------\n\nUnusually high denial rates suggest that users don't think the additional\nexposure of their information is worth the benefits offered in return.\nThere are a number of ways to make users feel more comfortable using your app.\nYou might be able to reduce the denial rate if you take\nsteps such as those outlined in this section. However, you shouldn't\nexpect to drive denial rates to zero, because users\nhave diverse personal preferences and some simply don't wish to grant\npermissions under any circumstances.\n\n### Avoid requesting unnecessary permissions\n\nResearch shows that users prefer apps that request fewer permissions.\nKeeping permission requests to the minimum set necessary can help improve user\ntrust in an app, and drive more installs. Conversely, adding unnecessary\npermission requests might negatively impact your app's visibility on the Play\nStore. If\nspecific permissions aren't necessary, you might be able to reduce your app's\nnumber of permission requests through alternative methods. Some common\napproaches are outlined in\n[App Permissions Best Practices](/training/permissions/usage-notes).\n\n### Surface the permission request in context\n\nNon-critical permissions that are less intuitive might benefit from being\nexplained in context. Doing so improves users' comprehension of the value\nderived from the permission. Figure 1 shows an example of educating a user\nin context.\n\n\n**Figure 1.**\nExplaining a permission request in context\n\n\u003cbr /\u003e\n\nUsers understand the value proposition better when the app requests the\npermission in the context of the related functionality.\nThis improved understanding might convince more users to grant permission\nrequests.\n\nFor more information about good guidelines about how to educate users and\nrequest permissions, see the\n[material design pattern for permissions](https://material.io/guidelines/patterns/permissions.html#permissions-denied-permissions).\n\n### Explain why your app needs the permission\n\nConsider starting by requesting your permission in-context: Providing an\nexplanation for less intuitive permissions helps to improve user comprehension\nof the permission. The\n[`shouldShowRequestPermissionRationale()`](/reference/androidx/core/app/ActivityCompat#shouldShowRequestPermissionRationale(android.app.Activity,%20java.lang.String))\nutility method returns true\nif the user has previously denied the request. Your app can use this method to\ndetermine when to show the explanation.\n\nYou can find more details about how to surface explanation strings in\n[Request App Permissions](/training/permissions/requesting)."]]