Android 4.4 Kitkatがリリース、SDK新機能追加
|11月1日、Android 4.4 KitKatがリリースされました。Android 4.4(API Level.19)の特徴を紹介します。
- http://developer.android.com/about/versions/kitkat.html
- http://developer.android.com/about/versions/android-4.4.html
メモリ使用量の最適化
Android 4.4ではメモリ使用量を最適化、512MBのRAMでも高速に動作するように、DalvikのJITまわりのチューニング、カーネル仮想化(KSM)、zRAM(組み込み系DRAMメモリ技術)への対応などシステムが再設計されました。
アプリケーション実行環境のメモリ管理は改善され、複数のサービスが同時起動したときには、小グループごと順次サービスを立ち上げることでメモリ消費量のピークを下げるなど工夫しています。アプリ開発者はActivityManagerからエントリー機に対応しているか情報を取得でき、このようなインメモリ制御を変更・無効化することも可能です。
NFCホストカードエミュレーション
NFCホストカードエミュレーション(HCE)に対応しました。ISO/IEC14443-4(ISO-DEP)プロトコルを使用して、ISO/7816/4ベースのスマートカードをエミュレートします。セキュアNFCベースの決済に利用することを想定しています。
印刷機能の追加
印刷機能の追加。WiFiやGoogleクラウドプリントのようなホスティングサーバーを通じて利用可能なプリンタを探し、用紙サイズやページ設定、印刷に対応しました。プリンタメーカーは独自API実装も行えるため、多様なサービスが受けられます。印刷機能を使う側となるクライアントアプリケーションではPrintManagerを利用することになります。PrintAPIでは互換性を維持するためPDFフォーマットを標準採用しています。Android 4.4ではGoogleクラウドプリントがプリインストールされるため、対応したGoogle Appsがすぐに使えます
ストレージアクセスフレームワーク
いままでのAndroidもプロバイダ経由でストレージを抽象化、ドキュメント参照を行っていましたが、Android 4.4からはクラウドも統合された新しいストレージフレームワークが追加されました。
Google Driveやboxといったクラウドサービスを抽象化、カプセル化するためドキュメントプロバイダクラスが提供されます。このクラスを通じてシステムにクラウド型ストレージサービスを提供でき、クラウド型サービスそれぞれへの対応を容易にします。クライアントアプリケーションは各クラウドサービスベンダーごとのコードを利用しなくて済みます(独自SDKなどをたくさん持つ必要がなくなります)。
Android 4.4ではGoogleドライブとローカルストレージが統合されています。
低消費電力なハードウェアセンサー
Android 4.4ではセンサーへのアクセスをバッチ処理することで消費電力をさらに抑えました。センサーバッチ(Sensor batching)ではシステムがスリープしていても(画面がオフでも)センサーイベントを取得できるため位置情報を利用するなど低消費電力・長時間利用というユースケースに最適です。ただし、ハードウェアへの対応が必要なためチップセットベンダーと協力して対応中です(のでNexus5ではすぐに利用できますが、ほかの機器アップデートは時間がかかる)。
そのほかTRANSMIT_IRパーミッションが追加されているなど、ハードウェアセンサーが強化されました。
Android 4.4ではヘルス分野への対応を強化し、歩数計と歩行検出機能に対応しました。ユーザーの歩行を1歩ごと検出でき、イベント化しています。ステップの合計数などもAndroid OS側でカウントしています。
その他の機能追加
SMSプロバイダをサポートしました。これによりSMSやMMSといったメッセージ機能をほかのアプリケーションでも利用できるようになります。
フルスクリーンモード(Full-screen Immersive mode)の対応。いままで利用できなかった一切ボタンが表示されないモードです。画面全部をアプリケーションでつかえる、写真、ビデオ、地図、ゲームなど様々なジャンルでコンテンツに没入できるようになります。全く操作できなくなるわけではなく、没入モードでは画面の上下端からスワイプすることでシステムUIにアクセスできます。
また、アニメーションフレームワークの追加、半透明のシステムUIの採用、ノーティフィケーション通知機能強化など多くのUIで改善が行われています。
メディア機能も強化されており、ADBを使えばスクリーンを録画してMP4で保存できます。チュートリアルやマーケティングでは便利でしょう。MPEG-DASHやHTTPライブストリーミング(HLS)への対応、DSPチップへのオーディオ直接転送(バッテリ寿命が長くなる)、Wi-Fi CERTIFIED Miracastへの対応など充実の機能強化が図られました。
システム面での強化としてRenderScriptパフォーマンスを向上するためGPUアクセラレーション、 Android NDKへの対応が行われています。画面を構成するOSの機能、SurfaceFlingerもOpenGL ES2.0を利用します。
- Bluetooth HOGPプロファイル、MAPプロファイルへの対応
- IR(赤外線)通信への対応
- Wi-Fi TDLSサポート(ダイレクトリンク)
- アクセスビリティではキャプションが追加
- SELinux (enforcing mode)対応
- メモリ使用分析ツールProcstatsの提供
なども注目です。
chromiumベースのWebView
Android 4.4ではchromiumベースのWebView実装を導入しています。HTML5、CSS3、およびJavaScriptのための広範なサポートを提供、JavascriptエンジンであるV8も高速化されました。
開発用にリモートデバッグ機能もサポート、Chrome DevToolsを使えば開発マシン(PC)上でWebView上のコンテンツを分析できます。