米Googleは、1年以上をかけた開発やテストを経て、Androidの最新版となる「Android 9 Pie」の公開を、8月6日(現地時間)のAndroid Open Source Project(AOSP)へのソースコードのプッシュを皮切りに開始した。
「Android 9 Pie」では、DeepMindとの連携による機械学習を利用してアプリに割り振られるシステムリソースに優先順位をつける「Adaptive Battery」、フルスクリーンで実行中のアプリと並行してタスクを実行可能な「Slices」、機械学習を利用してユーザーに適切なタイミングでアプリを提示する「App Actions」、Linkify APIを通じてさまざまな形式の文字列からのアクションを可能にする「Smart Linkify」、最新の「Neural Networks API 1.1」が新機能として追加されている。
ユーザーインターフェース関連では、新たなシステムナビゲーションを採用したほか、ディスプレイ切り抜き、メッセージングアプリにおけるMessagingStyle APIを利用した会話の表示やML Kitによる返信候補の自動生成、テキスト拡大ウィジェットをサポートした。
セキュリティ/プライバシー関連では、標準でバイオメトリック認証(現時点では指紋認証、顔認証、虹彩認証)を求めるダイアログを用意したほか、信頼できる実行環境であることを保証する「Android Protected Confirmation」、新しいKeyStoreタイプである「StrongBox」、DNS over TLSのサポート、HTTPS通信のデフォルト化、CFI(Control Flow Integrity)技術やIntegerオーバーフローサニタイザなどコンパイラベースでのセキュリティ対策、アイドル状態のアプリからのマイクやカメラおよびSensorManagerセンサへのアクセスの制限が追加されている。
カメラ、オーディオ、グラフィックス関連では、multi-camera APIをサポートするデバイス上において複数の物理カメラによるストリームを同時に開けるようになったほか、HDR VP9プロファイル2のサポートによるHDRムービーの配信、HEIFイメージ圧縮のサポート、Dynamics Processing APIを用いたダイナミクス処理エフェクトによる高音質オーディオ、ImageDecoder APIによるバイトバッファ、ファイル、URIからのビットマップまたはドロウアブルの作成が可能になった。
接続性や位置情報関連では、IEEE 802.11mcのサポートによって屋内測位機能をアプリへ組み込めるようになるほか、JobSchedulerによるネットワーク状態に応じた作業の管理、GlobalPlatform Open Mobile APIのサポートによる安全なオンライン取引が追加されている。
アプリのパフォーマンス関連では、ARTランタイムによってすべてのアプリでパフォーマンスが向上するほか、Kotlinへの最適化が行われた。また、Google Playにおいて2018年11月までにAndroid Oreo(targetSdkVersion 26以降)を対象とするすべてのアプリのアップデートが必要になることに合わせて、アプリがAndroid 4.2(APIレベル17)より以前のプラットフォームをターゲットにする場合、11月以降は警告ダイアログが表示されるようになる。
アプリ開発者は、Android 9搭載デバイスやエミュレータを使って、アプリがAndroid 9上で問題なく動作するかを確認しておく必要がある。また、Android 9では非SDKインターフェースへのアクセスが制限されるので、SDKへの依存度を減らさなければならない。
アプリをAndroid 9に対応するよう更新するには、API 28 SDKと最新のエミュレータイメージを「Android Studio 3.1」に追加するか、最新の「Android Studio 3.2」を使用するとともに、プロジェクトのcompileSdkVersionとtargetSdkVersionを「API 28」に設定する。さらに、ターゲティングを変更する際にすべての動作変更をサポートしているかを確認する必要がある。
なお、Android 9の正式リリースにともない、これまで提供されていたDeveloper Previewは終了する。
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です