Android 8.0ことOreoでは、Android 7.0でタブレットで利用可能だった、Picture in Picture(PinP)が画面の物理サイズが小さいスマートフォンでも利用可能になっています(写真01)。PinPとは、一般に、画像の一部に別の小さな画像をかぶせて表示すること。映像表現の1種ですが、ビデオ機器などでは、2つの映像を同時に表示する機能の名称として使われます。

写真01: PinP表示では、縦置きでウィンドウ幅の半分程度(240dp)のウィンドウが表示される

AndroidのPinPは、動画を再生するソフトウェアが、ちいさな動画再生画面を表示し、他のアプリと並行して動作できます。これは、動画再生ソフトウェアがAPIを使って実現する機能で、対応アプリのみがPinP表示を行えます。このため、どのような場合にPinP表示を行うのかも動画再生ソフトウェアの判断となります。動画再生中に他のアプリが起動したら、動画再生を中止することもアプリの判断としてありえます。逆に、Android 8.0で用意されたAPIを使えば、他のアプリの起動状態にかかわらず、常にPinPで動画を表示するアプリケーションを作ることもできます。

アプリ側でPinPの表示を行ったあと、ウィンドウの移動などについては、Android側が面倒を見るようになっているようです。また、アプリ側で、動画再生用のボタンや関連する機能実行するボタンなどを付けることもできます(写真02)。PinPのウィンドウは、選択すると、操作できる程度に拡大表示され、ボタンなどが表示されますが、放置すると、画面サイズの半分程度の大きさになり、画面の辺のどれかと接するように位置が調整されます。

写真02: PinPウィンドウをタッチすると、ウィンドウが少し大きくなり、アプリで設定したボタンなどが表示される

この画面サイズは、APIで使われるdensity-independent pixels(dp)という単位で240×135dpの大きさになっています。dpは、画面解像度に応じて物理ピクセル数から変換される単位で、解像度に応じて4dpが3~16物理ピクセルの範囲に対応します。このdpでスマートフォンの画面解像度を表現すると320~410dpの範囲におさまり、ソフトウェアの設計時にこのサイズで問題がないようにしておくことで、Androidスマートフォンやタブレットでの実行時に画面からはみ出したり、表示が小さすぎるという問題を回避できるわけです。

オートフィル

Android 8.0の目玉機能の1つが、アプリに対するユーザー名やパスワードを自動で入力できるオートフィル機能です(写真03)。TwitterやFacebookといったSNS系のアプリなどでは、初回利用時にユーザー名とパスワードを設定します。原則、Webブラウザベースで利用できるサービスの大半でユーザー登録が必要で、これをWebブラウザで利用するときには、ユーザー名、パスワードをキャッシングにより、自動的に入力できます。Chromeブラウザでは、PCとAndroidのChromeブラウザ間で、このパスワードキャッシュが共通で、どちらか片方で一回入力すれば、もう一方ではキャッシュにより入力を省略できます。オートフィルは、このパスワードキャッシュの入力補完をアプリに対して行うもの。当然アプリ側での対応が必須ですが、既にWebブラウザで利用しているサービスのアプリをインストールしたときに、ユーザー名やパスワードの補完が自動的に行われます。

写真03: Twitterアプリのオートフィル。起動すると、ツイッター関連のアカウント(ユーザー名やメールアドレスなど)が表示され、選択すると、対応するパスワードなどが自動的に挿入される

ただし、勝手に作られたアプリが、認証情報を取得できないように、サイトと開発者のドメイン(Androidではアプリにドメイン名をベースにしたIDを付ける必要がある)が一致していたり、サイト認証が必須であるなどの制限が課せられています。たとえばTwitterのユーザー情報を受け取れるのは、Twitterの純正アプリケーションだけです。

使って見ると、これはかなり便利な機能です。いままで、Androidのバージョンアップや新規購入時など、個々のアプリをインストールまでは、ほぼ自動で設定ができたましたが、アプリのユーザー認証に関しては、1つ1つユーザーが手入力する必要があったからです。インターネット側のサービスを利用していれば、アプリを最初に利用するときに、ユーザー名やパスワードを調べることなく、利用することが可能になりました。なお、従来よく言われていたパスワードの定期的な変更は、最近では、ほとんど効果がないということがはっきりしてきたため、オートフィルの利用でパスワードを変更しなくなるのは危険ということにはならないようです。オートフィルやブラウザのパスワードキャッシュ機能があるため、パスワードの使い回しをする必要もなければ、すべてのパスワードを覚える必要もないので推測が不可能な複雑なパスワードを使うようにしたほうがセキュリティを高めることができるでしょう。

設定ページ

Android 8では、設定ページも変更されました。設定ページは機種などによっても違いがありますが、Android 8.0では、設定項目を再編成し、複数の項目をまとめるなどしてトップページの項目数を減らしています(図01)。これにより、25(Nexus 9。Android 7.1.1。ただし隠し項目であるシステムUI調整ツールを除く)あった項目は、13個(Nexus 5X。Android 8.0.0。同)にまで減りました。

図01: Android 8の設定項目(左)と、Androiud 7.1.1(右)の項目の対応を示した。25あった項目が13にまで減っている

新しく「接続済みの端末」という項目が追加され、BluetoothやNFC、ChromeCastなどの設定項目がここにまとめられています。日本語だと意味がよく分からないのですが、英語版では「Connected Devices」です。ここは「接続済みのデバイス」などとするべきだったのかもしれません。

多くの項目を集約したものには、もう1つ「システム」があります。ここには、言語設定やバックアップ、リセット、日付と時刻、端末情報といった従来の項目が含まれます。使い方やユーザーによっては、利用頻度が低いと思われる項目です。

Android 8.0の変更では、一部の設定項目は、操作手順が1タップ分増えましたが、トップページの項目数が半分以下となり、スクロール回数は減っています。利用頻度が高いと思われる「ディスプレイ」、「電池」、「音」などは、そのままトップページに項目が残ってるため、使い勝手が大きく変わるということもありません。ただ、こうした変更は、項目数が増えてしまう前にやっておいてほしかったところです。