この記事は エンジニアリング部門副社長、Dave Burkeによる Android Developers Blog の記事 "Android Developers Blog: Android 8.1 Developer Preview" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。



本日より、Android 8.1 のアーリー プレビューを公開します。この Android Oreo アップデートには、Android Go(メモリが 1GB 以下の端末)の最適化、端末上の人工知能を加速させる新しい Neural Networks API など、いくつかの的を絞った機能拡張が含まれています。また、ユーザーやデベロッパーのフィードバックにお応えし、いくつかの小さな Oreo の機能拡張も含めています。

今回の Developer Preview を提供するのは、皆さんにアプリの準備をしていただくためです。端末メーカーに対しては、この新バージョンを準備するサポートを既に行っています。作業には早めに着手することをおすすめします。最終バージョンは、12 月に公開される予定です。

Pixel や Nexus 端末をお使いの方は、Android 8.1 Developer Preview を簡単に入手できます。Android ベータ プログラムに登録すると、まもなく Android 8.1 ベータ版への OTA アップデートを受信します。登録済みの方は、準備万端です。再登録は必要ありません。Developer Preview は、Pixel 2 および Pixel 2 XL 端末に加え、Pixel、Pixel XL、Pixel C、Nexus 5X、Nexus 6P、そして Android エミュレータでも利用できます。

Android 8.1 の新機能

Android 8.1 には、厳選された新機能とデベロッパー API(API レベル 27)、最新の最適化、バグの修正、セキュリティ パッチが含まれています。以下に、新しい API の一部を紹介します。
  • Android Go のメモリ最適化とターゲティング -- Android 8.1 には、Android Go 構成(1GB 以下のメモリ)に対する一連のメモリ最適化が含まれています。新しいハードウェア機能定数が追加されているので、Android 8.1 以降を実行している通常または低 RAM 端末に対してアプリや分割 APK を配布できます。
  • Neural Networks API -- Android で人工知能を実行するための取り組みの一環として、NDK 経由で動作する Neural Networks API が追加されています。これによって、サポートされている端末でハードウェア アクセラレーションを利用した推論操作が行えるようになります。Neural Networks API は、TensorFlow Lite などの ML フレームワークの基礎レイヤーとして設計されています。TensorFlow Lite は、まもなく登場する Google のモバイル用クロスプラットフォーム ML フレームワークで、Caffe2 などと似ています。今後の TensorFlow Lite に関するお知らせにご期待ください。
  • 自動入力の拡張 -- パスワード マネージャなどの Autofill サービスがさらに簡単に Autofill フレームワークを利用できるようになります。たとえば、保存ダイアログの UI のカスタマイズ性が向上しているほか、setAutofillOptions() を設定してユーザーがスピナーを使ってクレジット カードの有効期限を設定できるようになっています。
  • 共有メモリ API -- この新しい API を使うと、アプリで共有メモリを割り当て、よく使うデータに高速アクセスできます。アプリは、SharedMemory API を使って匿名共有メモリをマッピングしたり、保護状態を管理できます。この API は Parcelable で、AIDL と親和性が高く、書き込みパーミッションの削除などの便利な機能も公開されています。
diff レポートアップデートされた API リファレンス ドキュメントなど、詳細については、Android 8.1 のサイトをご覧ください。

Android 8.1 でアプリをテストする

正式リリースが 12 月に迫っているため、現在のアプリのテストをすぐに始めることが重要です。それによって、Android 8.1 が端末に配信されたときに、ユーザーがシームレスな移行を実現できるようになります。

対応端末を Android ベータ版に登録すると、最新のアップデートが配信され、Google Play から現在のアプリをインストールしてテストできるようになります。Pixel や Nexus 端末をお持ちでない方は、テスト用の Android 8.1 エミュレータを設定できます。問題を発見した場合は、修正して、アプリのプラットフォームのターゲットを変更せず、すぐに Google Play のアプリをアップデートしてください。

新機能や新 API を使ってビルドする

準備ができたら、API レベル 27 として既に確定している Android 8.1 の新機能と API を活用してみましょう。新機能の概要については、デベロッパーのための Android 8.1 をご覧ください。既製の Android Oreo の機能を使ってアプリを拡張することもできます。詳しくは、Android Oreo のサイトをご覧ください。

アプリでフォームを使っている場合は、忘れずに自動入力のテストを行っておきましょう。そうすると、ユーザーがこの便利な機能を活用できるようになります。[Settings] で [Autofill with Google] またはそれと同等のサービスを有効にしてフォームの入力をテストし、予想どおり動作することを確認します。その際に、フィールドについて明示的なヒントを提供するとともに、ログインを共有できるようにウェブサイトとモバイルアプリを関連付けることを強くおすすめします。

アプリで Camera2 API を使っており、Pixel 2 端末を持っている場合は、Google 初の消費者製品向けのイメージ処理と機械学習用カスタムデザイン コプロセッサである Pixel Visual Core の初期バージョンを試してみることもできます。Pixel Visual Core で HDR+ のテストを始めるには、新しいデベロッパー オプションである [Camera HAL HDR+] を有効にします(また、CONTROL_ENABLE_ZSL が [true] になっていることを確認します)。

Android Studio で開発をスピードアップ

Android 8.1 でビルドする場合、安定版チャンネルで入手できる Android Studio 3.0 にアップデートすることをおすすめします。Android Studio 3.0 では、新しいアプリのパフォーマンス プロファイリング ツールKotlin プログラミング言語のサポート、Gradle ビルドの最適化が行われているので、Instant AppsXML フォントダウンロード可能フォントアダプティブ アイコンなどの Android Oreo の機能の開発も簡単になります。

また、Android サポート ライブラリ 27.0.0 へのアップデートもおすすめします。これは、Google の Maven レポジトリで公開されています。このバージョンの新機能には、バックグラウンド スレッドで「ページング」されたデータを効率的に読み込む ContentPager ライブラリ、自動入力メソッド用の ViewCompat ラッパー、Wear の常に画面表示モードを改善する AmbientMode ヘッドレス フラグメント、フルスクリーン Trusted Web Activity などが含まれています。詳細については、バージョン情報をご覧ください。

正式な Android 8.1 API でコンパイルするには、プロジェクトの compileSdkVersion を API 27 にアップデートします。また、アプリの targetSdkVersion を API 27 に更新し、互換動作を無効にしてテストを行うことをおすすめします。Android 8.1 でビルドするための環境設定の詳しい手順については、こちらのガイドをご覧ください。

アップデートを Google Play に公開する

Android 8.1 API は既に最終版になっているため、Google Play では、API 27 でコンパイルしたアプリや、API 27 をターゲットにしたアプリを受け付けています。準備ができ次第、APK のアップデートをアルファ版、ベータ版、または本番チャンネルで公開しましょう。Android 8.1 だけでなく、古いバージョンでもアップデートしたアプリが問題なく動作することを確認しておきましょう。まずは、Google Play のベータ版テスト機能を使って、少人数のユーザーを対象にアルファテストを行い、その後、規模を広げてオープンベータ版テストを行うことをおすすめします。アップデートをリリースする準備ができた際には、段階的ロールアウトを利用することもできます。皆さんのアプリのアップデートを楽しみにしています。

フィードバックをお待ちしています!


いつものように、皆さんのフィードバックは重要です。お気づきの点はぜひお知らせくださいAndroid プラットフォームやツールの問題アプリの互換性の問題サードパーティ製の SDK やツールの問題を報告できるさまざまなホットリストが利用できます。Neural Networks API の問題用の新しいホットリストもできました。

12 月に予定している正式リリースに向けて努力してまいりますので、今後も Android デベロッパー コミュニティ、または Android ベータ版コミュニティを通じてフィードバックをお寄せください。

Reviewed by Yuichi Araki - Developer Relations Team