位置情報の 3 段階のアクセス許可

Android 10 では位置情報の 3 段階のアクセス許可を使用して、デバイスの位置情報へのアプリによるアクセスを管理できます。

Android 9 以前では、アプリへの位置情報アクセスを許可する際に常にユーザーによる選択が必要でした。選択できるオプションは拒否または許可で、許可を選択した場合はアプリが常に(フォアグラウンドとバックグラウンドで)アクセスできるようになっていました。Android 10 では、デバイスの位置情報にアクセスしようとするアプリに対して、ユーザーが与える許可には 3 段階あり、 ユーザーは権限レベルを選ぶか拒否するよう促されます。

通常、ユーザーのデバイスには図 1 のような 3 つのオプションが表示されます。ただし、2 つのオプションだけとなるユースケースもあり、その場合は 2 つしか表示されません。

位置情報の 3 段階のアクセス許可画面
図 1. 3 段階の通知画面

次の 3 つのオプションがあります。

  • 常に許可: アプリが使用中ではない場合(バックグラウンドで実行中)でも、デバイスの現在地がアプリに認識されます。これは Android 9 以前の権限と同じです。
  • アプリが使用中の場合のみ許可: デバイスが位置情報を認識できるのは、アプリがアクティブに実行されている場合のみです。
  • 拒否: デバイスの位置情報をアプリは認識できません。これは、Android 9 以前のアクセスの拒否と同じです。

アプリが権限をリクエストすると、ユーザーは位置情報へのアクセスを許可するよう求められます。

ユーザーが [アプリの使用中のみ許可] を選択した場合、アプリがさらに [常に許可] をリクエストすることがあります。ユーザーのデバイスにリクエスト ダイアログが表示されます(図 2 に示します)。ユーザーが [使用中のアクセスの維持] を選択した場合、次にアプリがデバイスの位置情報にアクセスする際は [次回から表示しない] というオプションが表示されます。

Android 10 をターゲットとするアプリが次のような状況の場合、ダイアログが表示されます。

  • アクセスが許可されてから 24 時間が経過した。
  • アプリがバックグラウンドでのみ位置情報を受信している。
  • 画面がオンの状態で、ユーザーが別のアプリを利用していない。
段階的な権限の増加
図 2. 段階的なアクセス許可

権限のリクエストに関する詳細については、アプリによるデバイスの位置情報へのアクセスをご覧ください。Android 9 以前を対象とするアプリの場合は、ユーザー開始型アクションの継続をご覧ください。

影響

Android 10 の場合、バックグラウンドでデバイスの位置情報アクセスが必要なアプリは、位置情報の 3 段階のアクセス許可機能の対象となります。

アプリのコードは変更できますが、フレームワーク内の許可に関連する動作を変更またはカスタマイズすることはできません。

実装

位置情報の 3 段階のアクセス許可は、アプリのターゲット SDK に関係なく、Android 10 のアプリに適用されます。

アプリの使用例の実装(アップグレード時)については、デベロッパー向けドキュメントのデバイス アップグレード シナリオの設計セクションをご覧ください。

さまざまなユースケース(Google マップや Google Play 開発者サービスのように、アプリがバックグラウンドで位置情報へのアクセスが必要な場合など)に対してアクセスを可能にする方法について、アプリによるデバイスの位置情報へのアクセスに関するページで以下のトピックをご覧ください。

アプリ内での位置情報へのアクセス

ユーザーは、必要に応じて、アプリのアクセス許可を [拒否] または [アプリが使用中の場合のみ許可] に変更できます。アプリ内での位置情報へのアクセス許可およびすべてのファースト パーティ アプリとサードパーティ アプリに対して、次の表に示すように、ユーザー コントロール レベルを提供してください。

アプリがリクエストする必要がある権限タイプ 提供するユーザー オプション
アプリがフォアグラウンドの権限のみをリクエスト アプリの使用中のみ許可
拒否
アプリが常に権限をリクエスト(フォアグラウンドとバックグラウンド) 常に許可
アプリの使用中のみ許可
拒否
位置情報へのアクセス リクエストを行うすべてのアプリ アプリの使用中のみ許可

これらの権限は、すべての位置情報リクエストに適用されます。アプリの使用中のみ許可の権限を持つアプリは、バックグラウンドでのスキャン(Wi-Fi、モバイル、Bluetooth)は許可されません。

OS のアップグレード

Android 10 への OS のアップグレードを行うと、アプリの位置情報の権限が次のように変更されます。

  • オンは、使用中のみ許可になります。
  • オフは、オフ(拒否)のままとなります。
  • 事前に付与された位置情報へのアクセス権限は、使用中のみ許可に対する事前の付与となります。