今回はAndroid L Previewも一部含めながら、前半はユーザ視点の新機能、後半は開発者視点のAndroid Lollipopの新機能について説明していきます。
ユーザ視点の新機能
Android 5.0 Lollipopでは、マテリアルデザインのサポートやNotificationの強化など多くの機能が追加されています。
マテリアルデザインのサポート
マテリアルデザインがサポートされました。5.0からはウェアラブル、TV、車などプラットフォームでAndroidが動作し、それぞれスクリーンサイズも異なります。マテリアルデザインとは、これらの異なるスクリーンでも、ビジュアルやアニメーション、インタラクションなどはこうあるべきである、ということをまとめたデザインの総括ガイドです。
また、マテリアルデザインでは、紙と紙が重なる、オブジェクトが紙の上で動くなどのような振る舞いを意識しています。そのため、いくつかのコンポーネントでは、CardやDocumentなど紙を意識した表現やAPIが用いられています。
![マテリアルデザイン(Android Lollipopの概要ページより引用)](http://cz-cdn.shoeisha.jp/static/images/article/8233/8233_001.gif)
Notification
ロックスクリーンからのNotificationの確認と応答が可能になりました。デバイスを操作中(動画再生中など)でも優先的に通知することができます。更に、通知するアプリケーションやユーザを設定することもできるようになりました。
Recentsスクリーン
これまで「最近使用したアプリ(Recents)」は、上下スクロールによる一覧表示の振る舞いでしたが、5.0からは、画面中央に配置され、奥行きのあるスタックされたDocumentが表示されます。Documentとは、アプリ履歴を表すCard状のUIのことです。Documentをフリックして破棄したり、Documentが重なったりするなど、ここにもマテリアルデザインを意識したUIデザインが使われています。
NFC enhancements
Android 5.0から、「共有(share)」メニューにNFCが追加されました。
開発者視点の新機能 1
APIの変更
API20から21までのAPIの変化は次のようになります。合計で2824の変更があり、これは歴代の変更の中でもかなり多い方です。変更の中でも特に「追加」が顕著で、パッケージだけでも14個もあります。「android.bluetooth.le」「android.hardware.camera2」「android.media.tv」などのパッケージの追加は注目すべきでしょう。
Type | Additions | Changes | Removals | Total |
---|---|---|---|---|
Packages | 14 | 57 | 1 | 72 |
Classes and Interfaces | 147 | 360 | 0 | 507 |
Constructors | 98 | 3 | 1 | 102 |
Methods | 770 | 117 | 29 | 916 |
Fields | 1150 | 75 | 2 | 1227 |
Total | 2179 | 612 | 33 | 2824 |
ART
Lollipopからは、ARTがデフォルトの仮想マシンになりました。ARTは、4.4リリースでは実験的に導入されたAndroidのランタイムで、Dalvikが標準、ARTはオプション設定でした。これからはARTが標準になるため、ARTでの動作を確認する必要があります(ARTの仕様はこちら)。
Materialテーマ
LollipopではMaterialテーマが新たに登場しました。スマートフォンやタブレットなどのハンドヘルドデバイス以外に、ウェアラブル、TV、車などのプラットフォームでの見え方や表現を、ひとつのテーマとして提供しています。
![マテリアルテーマ(Material Designの概要ページより引用)](http://cz-cdn.shoeisha.jp/static/images/article/8233/8233_03.gif)