iOSの権限リクエスト:悪い例、良い例、最高の例
「より良い体験のために必要です」だった7つのiOS権限プロンプトを、アプリが何をするのか、いつ、なぜ役立つのかを伝える一文に書き直しました。Apple自身の例、公式、チェックリスト付き。

アプリがカメラやマイク、Face IDへのアクセスを求めるとき、タイトルと2つのボタンを書くのはiOSです。アプリ側が書けるのは理由の一行だけ。そして、ほとんどのアプリはこの一行を無駄にしています。ここでは7つの権限プロンプトを「悪い」から「最高」まで段階的に書き換え、各段の理由と、次に書くときの公式を紹介します。
あなたが書く部分とiOSが書く部分
システムアラートの形は決まっています。タイトル(「カメラへのアクセスを求めています」)とボタンはiOSが用意します。アプリが用意するのは、なぜアクセスが必要かを説明する一文、いわゆるpurpose stringだけです。これはアプリのInfo.plistのキー(カメラならNSCameraUsageDescription、マイクならNSMicrophoneUsageDescription)に入っていて、設定アプリのプライバシーにも再表示されます。
悪い

最高

2つのアラートはタイトルもボタンも同じです。変わったのは一文だけ。悪い例は、いま切り替えを求められたスイッチをどうしろと命令するだけです。最高の例は、スキャンをタップしたら何が起きるかを伝えるので、「なぜ経理アプリがカメラを欲しがるの?」という疑問が、聞かれる前に解消されます。
この一文についてのAppleのガイダンスは簡潔です。簡潔で完結した文で、率直で、具体的で、わかりやすく、文頭だけ大文字(sentence case)で、能動態で、句点で終わること。以下の最高の例はすべてこれに従っています。
段階ごとに見る
| 段階 | その一文がやること | まだ欠けているもの |
|---|---|---|
| 悪い | 命令するか、アクセスが「必要」と述べる | 機能が何をするか、いつか、なぜ役立つか |
| 良い | アクセスの用途を述べる | いつ起きるか、メリット |
| 最高 | アプリが何をするか、いつか、なぜ役立つかを述べる | 判断に必要なものはすべて揃っている |
1. カメラ
悪い
カメラへのアクセスをオンにしてください。
理由のない命令。アラート自身のタイトルを繰り返しているだけです。良い
レシートをスキャンするためにカメラを使います。
用途は示しています。ただ、カメラがいつ開くのかはまだわかりません。最高
スキャンをタップすると合計金額を読み取るので、入力する必要はありません。
アクセスを、タイミング(スキャンのタップ)とメリット(入力不要)に結び付けています。カメラが不意に開くことはありません。
Tidybooksは架空のアプリです。Appleは、アクセスが必要な機能を使うときに求めることを勧めています。つまりこのプロンプトを出す最適なタイミングは、起動直後ではなく、スキャンの最初のタップです。
2. マイク
ここでの悪い例と最高の例は、Appleのプライバシーガイドラインにある文言そのままです。
Appleの悪い例

Appleの最高の例

悪い
より良い体験のためにマイクへのアクセスが必要です。
受け身で曖昧。「より良い体験」は何にでも当てはまり、「必要」は要求に聞こえます。良い
いびきを検知するために音を聞きます。
能動態で、目的も言えています。ただ、いつ聞くのか、夜間なのかは言っていません。最高
このアプリは夜間に録音し、いびきの音を検知します。
能動態で、どうするか(録音)、いつ(夜間)、なぜ(いびきの検知)まで言っています。これを読めば、何に同意するのか正確にわかります。
Nightlyは架空のアプリです。教訓は動詞にあります。「必要です」は誰が何をするのかを隠し、「夜間に録音し」ははっきり言い切ります。録音について正直であることが、人に「許可」を押させるのです。
3. Bluetooth
悪い
Bluetoothが必要です。
事実の陳述であって理由ではありません。誰にとって、何のために必要なのでしょう?良い
鍵を開けるためにBluetoothを使います。
デバイスと用途を示しています。最高
近づくとドアを解錠するので、鍵を持ち歩く必要はありません。
タイミング(近づいたとき)と見返り(鍵不要)を伝えています。Bluetoothという言葉はシステムのタイトルに既にあります。
Doorkey Homeは架空のアプリです。最高の一文はタイトルを繰り返していない点に注目してください。iOSが既に「Bluetoothの使用を求めています」と言っているので、一文は理由に言葉を使います。
4. Face ID
悪い
Face IDを有効にしてください。
理由のない命令形。Appleの「マイクへのアクセスをオンにしてください。」の例と同じ形です。良い
Face IDですばやくサインインできます。
メリットはあります。ただ、Face IDが実際に何を守るのかは語っていません。最高
アプリを開くときにFace IDでロックを解除するので、あなただけがお金の情報を見られます。
いつ(開くとき)と何を守るか(お金)を伝えています。主張はアプリのロック解除までにとどめています。Face IDが返すのは照合に通ったかどうかだけだからです。
Northbankは架空の銀行アプリです。セキュリティの文言は、機能が実際にすることだけにとどめましょう。実際以上を約束する文は、退屈な文より悪いです。
5. 写真
悪い
写真へのアクセスが必要です。
Bluetoothと同じ「必要」の問題があり、脅しのようにも聞こえます。良い
編集内容をライブラリに保存します。
写真に何が起きるかを述べています。最高
書き出しをタップすると写真を保存するので、共有できます。
保存を書き出しのタップに結び付け、理由(共有できる)を示しています。
Filmstripは架空の写真編集アプリです。ここでiOSが書くタイトルは「写真への追加を求めています」で、書き込み専用の限定された権限です。一文もそれに合わせて読めるべきです。保存はするが、閲覧はしない、と。
新たに書いた2つの例
上の5つでカバーできない場面でも、同じルールが通用します。この2つは、架空のアプリを使った私たち自身の例です。
悪い
より良い体験のために位置情報が必要です。
マイクの例と同じ中身のない言い回しで、権限だけが違います。良い
レストランを探すために位置情報を使います。
アクセスの用途を述べています。最高
アプリを開くと、あなたの家まで届けてくれるレストランを表示します。
いつ(開いたとき)と結果(届けてくれる店だけ)を伝えています。
悪い
連絡先へのアクセスを許可してください。
知り合い全員を読み取りたいように聞こえる命令です。良い
友だちを見つけるために連絡先を使います。
用途は示していますが、「友だちを見つける」は名簿のアップロードとも受け取れます。最高
友だちを追加をタップすると、連絡先から候補を表示するので、割り勘ができます。
アクセスをタップと用途に結び付けています。候補は求めたときに表示されるという期待を作ります。
公式:何をするか、いつか、なぜ役立つか
上の最高の例はすべて、同じ3つの部品を一文に収めています。
[What it does.] [When it happens.] [Why it helps.]
| プロンプト | 何をするか | いつ | なぜ役立つか |
|---|---|---|---|
| カメラ | 合計金額を読み取る | スキャンをタップしたとき | 入力する必要がない |
| マイク | アプリが録音する | 夜間 | いびきの音を検知するため |
| Bluetooth | ドアを解錠する | 近づいたとき | 鍵を持ち歩く必要がない |
| Face ID | Face IDでアプリのロックを解除する | 開くとき | あなただけがお金の情報を見られる |
| 写真 | 写真を保存する | 書き出しをタップしたとき | 共有できる |
「いつ」はチームが最初に削る部分ですが、アクセスを安全に感じさせるのはまさにこれです。本人が選んでいないタイミングでアプリは動かない、という約束になるからです。
次のプロンプトのためのチェックリスト
- 一文、能動態、句点で終える。 これがApple自身の基準です。
- 権限ではなく理由を言う。 iOSが既に「カメラへのアクセス」と表示しています。
- タイミングを示す。 タップ、夜の時間帯、機能の初回利用など。
- 機能が必要になったときに求める。 初回起動時ではなく。ただし機能そのものが初回起動なら別です。
- 「必要」「必須」「より良い体験」は使わない。 要求に聞こえるうえ、何も伝えません。
- 機能が実際にすることだけ約束する。 アプリのロック解除だけなら、そう書く。
- 設定アプリでも読んでみる。 同じ文字列がプライバシー設定に、文脈なしで表示されます。
FAQ
iOSのpurpose stringとは?
アプリが、カメラやマイクなどのプライベートなものへアクセスしたい理由を説明するために用意する一文です。アプリのInfo.plistのNSCameraUsageDescriptionなどのキーに入り、システムアラートと、設定アプリのプライバシーに表示されます。
良い権限メッセージの書き方は?
機能が何をするのか、いつ起きるのか、なぜ役立つのかを、簡潔な能動態の一文にして句点で終えます。「スキャンをタップすると合計金額を読み取るので、入力する必要はありません。」がその形の一例です。
悪い権限プロンプトの例は?
理由のない、曖昧または受け身の文です。「より良い体験のためにマイクへのアクセスが必要です。」「カメラへのアクセスをオンにしてください。」「Bluetoothが必要です。」「Face IDを有効にしてください。」など。どれもアプリが何を欲しがるかは言いますが、なぜかは言いません。
iOSの権限アラートのタイトルとボタンは誰が書く?
iOSです。タイトルとボタンはiOSが書くので、あなたが管理できる文言はpurpose stringだけです。だからこそ、その一文に理由のすべてを込める必要があります。
アプリはいつ権限を求めるべき?
それを必要とする機能を使うときで、その前ではありません。Appleのガイダンスは、アプリが明確に必要とするときだけアクセスを求めることなので、カメラのプロンプトはスキャンの最初のタップに置くのが適切です。
出典
- Privacy: Requesting permission、Apple Human Interface Guidelines。2つのマイク文言、「簡潔で完結した文」のガイダンス、文脈の中で求めるという助言の出典です。
- Requesting authorization to capture and save media、Apple AVFoundationドキュメント。
- Writing、Apple Human Interface Guidelines。
- 上で使ったInfo.plistのキー:
NSCameraUsageDescription、NSMicrophoneUsageDescription、NSBluetoothAlwaysUsageDescription、NSFaceIDUsageDescription、NSPhotoLibraryAddUsageDescription。Appleの Information Property List リファレンスにあります。 - 例に登場するアプリ(Tidybooks、Nightly、Doorkey Home、Northbank、Filmstrip、そして新たに書いた2つ)は架空です。Apple自身の文言はマイクの文字列だけです。
- 最初はUX Brainyでカルーセルとして公開されました。
Want every permission, onboarding and empty state written and designed as one system? Our team designs app UI with the words in it from the first draft.
Get Started




