iOSではおなじみのアクセスコントロール機能がAndroid 6.0に |
Googleブランドの「Nexus」シリーズ向けに2015年10月に提供開始され、さらにNexusシリーズの2015年の新機種「Nexus 5X」および「Nexus 6P」には標準でインストールされる最新OS「Android 6.0(開発コード名:Marshmallow)」。このバージョンからは、連絡帳(アドレス帳)や位置情報などのプライバシーに関係する情報へのアプリのアクセス権限を利用者がコントロールし、部分的に権限を与えることができるようになりました。
今回の連載「スマホのちょっと深いとこ」では、Android 6.0が導入したこのアクセスコントロール機能について、iOSや過去のAndroidと比較しながら説明します。
【iOSにはアクセスコントロールが導入済み】
iPhoneやiPadなどで利用されているiOSでは、「プライバシー」設定で連絡先やカレンダー、位置情報などプライバシーに関わる情報へのアクセスをアプリごとに許可/拒否できるようになっています。アプリがインストール後最初にこれらへのアクセスを行った時にダイアログが表示され、アクセスを許可するかどうかを利用者が選択できます。
この方法が優れているのは、アプリが要求するアクセス権限のうち一部だけを許可できることです。たとえばメッセンジャー系のアプリに対して、マイク(=無料通話)と写真(=メッセンジャーで送信)へのアクセスを許可しつつ、連絡先(=アドレス帳自動アップロード)と位置情報(=現在位置を共有)にはアクセスを許可しないといった設定ができます。
従来のAndroidは「全部許可するかアプリを使わないか」
一方従来のAndroidでは、アプリをインストールする前にそのアプリがアクセスする情報が表示され、利用者が確認できるようになっていました。利用者がアプリをインストールするとそのアプリはインストール前に表示していたすべての情報にアクセスできるようになります。
この方法では、アプリをインストールした時点でアプリが要求するすべての情報へのアクセスを許可したことになり、1つでもアクセスを許可したくない情報があるならばインストール自体ができません。iOSのように部分的にアクセスを許可する選択肢がなかったわけです。
iOSに類似したAndroid 6.0のアクセス制御
Android 6.0では以下項目へのアクセス権限が「(プライバシー的に)危険な権限」と定義され、利用者がアクセス権限を制御できるようになっています。
・カレンダー
・カメラ
・連絡先
・位置情報
・マイク
・電話(通話機能)
・ボディーセンサー
・SMS
・ストレージ
基本的な動作はiOSと同様です。アプリが初回に上記の情報にアクセスを行うときにはまずアプリがアクセス権限を持っているかを確認し、持っていない場合はアクセス権限を要求します。このときAndroidはアクセス権限を与えるかどうかを選択させるダイアログを画面に表示します。これらのアクセス権限は、設定画面から確認したり切り替えたりできます(*1)。
*1: 開発者向け情報:これらの動作を確認できるサンプルアプリのソースコードをGitHubに公開しています。
なおAndroid 6.0のアクセス権限機能に対応したアプリは、アプリインストール前にアクセス権限リストが表示されなくなります。アプリ実行中に権限を個別に指定するため、インストール前の確認は不要ということなのでしょう。
【まとめ:アプリをより安心して利用できるように】
今回はAndroid 6.0から導入されたアプリのアクセスコントロール機能を紹介しました。この機能により、アプリがアクセスできるプライバシー情報を利用者がコントロールし、一部の限定されたアクセス権限だけを与えることが可能になりました。
事実上はiOSが備えていた機能の後追いですが、利用者がアプリを安心して利用するために有用な機能といえます。より多くのユーザーがこのメリットを享受できるよう、Andorid 6.0と対応アプリの普及が望まれるところです。
■関連リンク
・エスマックス(S-MAX)
・エスマックス(S-MAX) smaxjp on Twitter
・S-MAX - Facebookページ
・SIMロックや余計な縛りは一切なし!Googleブランドの新スマホ「Nexus 5X」(SIMフリー版)を購入したのでさっそく開封してみた【レビュー】 - S-MAX
・Android 6.0 Marshmallow(Android Developers)
・本記事のサンプルコード(GitHub)
・連載『吉川英一の「スマホのちょっと深いとこ」』記事一覧 - S-MAX
・今日の気分はバリいくつ?
権限のあるなしだけでなく、その権限がアプリの何の機能に使われてるのか開発者は明確にして、ユーザーが見られるようにしなくてはなりませんね。
アプリをダウンロードする前にデベロッパーのウェブページで確認しようにも、リンク先がアプリのダウンロードページ(ストア)1枚だけのデベロッパーも多いですから。