この記事は Android Developers Blog の記事 "11 Weeks of Android: That’s a wrap" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。

11

#11WeeksOfAndroid のブログ投稿も今回が最後になります。Android 開発の重要な内容を取り上げた 11 週にわたり、ご覧いただきありがとうございます。見逃してしまった方のために、それぞれの週にお伝えした内容をまとめてご紹介します。

第 1 週 - 人と ID


会話通知」を使って会話ショートカットやバブルを実装する方法をご紹介し、また、会話に関する追加機能やその他のシステム UI についてお話しました。人や会話に関するこちらのデベロッパー ドキュメントもご覧ください。さらに、システム UI チームにバブルについてインタビューした Android Backstage ポッドキャストを聴くこともできます。

ユーザーやデベロッパーは ID の複雑さに悩まされており、それがデベロッパーの課題になっています。この課題に対処するため、新しい Google Identity Services Library の一部として、One Tap と Block Store に取り組んでいます。

ID についてもっと知りたい方のために、「Identity on Android: What’s new in sign-in」という動画を公開しています。この動画では、Vishal が Google Identity System の新しいライブラリについて説明します。

Facebook Messenger チームと Twitter のダイレクト メッセージング チームの 2 チームは、かなり早い段階から私たちと一緒に作業してきました。Twitter のストーリーはこちらから、どのように Facebook と協力して実装にあたったのかはこちらからお読みください。
人と ID の詳細は、Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。

第 2 週 - 機械学習


この週は、#AndroidDevChallenge の入賞者の発表から始まりました。すべての入賞アプリと、アプリがどのように ML Kit や TensorFlow Lite を使っているのかを確認しましょう。どのアプリも、機械学習がいかに強力な方法でユーザーの目的達成をサポートできるのかを示すことに重点を置いています。たとえば、視覚障がいを持つユーザーが混雑した場所を移動することをサポートするアプリや、学生の手話学習をサポートするアプリなどがあります。
先日、ML Kit を独立した SDK にして、Firebase アカウントがなくても利用できるようにしました。build.gradle ファイルに 1 行追加するだけで、アプリに ML 機能を組み込むことができます。
要望が多く寄せられていた機能がもう 1 つ追加され、画像のラベル付けと物体検知および物体トラッキングにおいて、Google モデルを独自のモデルと交換できるようになりました。
ユーザーの問題と ML の長所が交差する独自の場所を見つけることの重要性を確認し、ML プロダクトに関する意思決定に役立つ 「人にうれしいAIのための UXデザインガイド People + AI Guidebook(日本語・コミュニティによる翻訳版)」や、Read Along チームへのインタビューをご覧ください。

また、第 2 週はAndroid アプリにカスタムモデルを追加する作業が今までになく簡単になったことにも注目しました。以下の Codelab をご確認ください。


詳しくは、機械学習の Pathway動画のプレイリストまとめのブログ記事をご覧ください。


第 3 週 - プライバシーとセキュリティ



プライバシーとセキュリティ」ブログ記事でお知らせしたように、ユーザーデータへのアクセスに対する制御と透過性を強化しました。Android 11 にはさまざまなプライバシーの改善が導入されています。その 1 つである1 回だけの アクセス許可では、アプリが端末のマイクやカメラ、位置情報に 1 回だけアクセスすることを許可できるようになります。これらの新しい変更点を組み込み、プライバシーを尊重するアプリを構築する方法について確認しましょう。この動画では、さまざまな Android セキュリティ アップデートについて学ぶこともできます。

その他の特筆すべきアップデートは、次のとおりです。

  • アクセス許可の自動リセット: Android 11 をターゲットにしたアプリでは、ユーザーが長期間アプリを使わなかった場合、システムがアプリに関連付けられたすべての付与済みのランタイム アクセス許可を「自動リセット」し、ユーザーに通知します。

  • データアクセス監査 API: Android 11 のデベロッパーは、保護された個人データをアプリがどのように利用しているかを透過的に把握できる新しい API にアクセスできます。アプリのプライバシーと安定性を向上させる Android 11 の新ツールもご覧ください。

  • 対象範囲別ストレージ: Android 11 では、API レベル 30 をターゲットとするすべてのアプリで、対象範囲別ストレージが必須となります。詳細を確認し、ストレージに関するよくある質問 をご覧ください。

  • Google Play システム アップデート: Google Play システム アップデートは、Project Mainline の一環として Android 10 で導入されました。これにより、ユーザーによるコア OS コンポーネントのアップデートが簡単になります。

  • Jetpack Biometric ライブラリ: このライブラリは、下位互換性を確保するため、Android 11 の新しい BiometricPrompt 機能を含むようにアップデートされています。

「プライバシー、信頼性、セキュリティ」の Pathway動画のプレイリストプライバシーとセキュリティのベスト プラクティスについてのドキュメントをご覧ください。

第 4 週 - Android 11 の互換性


Android 11 Beta 2 を公開し、Platform Stability と呼ばれる新しいリリース マイルストーンに到達しました。これは、デベロッパーに対して、すべての API とシステム動作が確定したことを明確に示すためのものです。デベロッパーにとってのこのマイルストーンの意味や Android 11 のスケジュールなど、Android 11 Beta 2 と Platform Stability の詳細をご覧ください。また、第 4 週のあと、最終となる Android 11 Beta 3 を公開しました。

Android 11 は 9 月 9 日に公式版をリリースしています。アプリを Android 11 に対応させるために、以下のドキュメントをご覧ください。


Accelerating Android Updates」というブログ記事では、Android のアップデート可能アーキテクチャを拡大することで最新 OS の普及率を高める継続的な取り組みについて考察しています。また、LeBian SDK を開発している Excelliance Tech も取り上げました。同社は最近、Android OS との互換性を向上させるため、非 SDK インターフェースから安定した公式 API に移行しました。Excelliance Tech のストーリーをご覧ください。

詳しくは、Android 11 の互換性 Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。

第 5 週 - 言語


Android 11 ベータ版では、非同期作業に Kotlin の使用が公式に推奨されるようになりました。Kotlin をまだ使ったことがない方は、以下をご覧ください。


また、Kotlin ケーススタディのページで最新のケーススタディやデータをご確認ください。Google Home ケーススタディAndroid での Kotlin の現状についての動画も掲載されています。さらに、初心者の方向けに、Android Basics in Kotlin コースを新設しました。

Java 言語のデベロッパーの方は、Support for newer Java language APIs の動画をご覧ください。さまざまな Android のバージョンでいかに新しい OpenJDK ライブラリを利用できるようにしたかご説明しています。Android 11 では、I/O プリフェッチによってアプリの起動時間をさらに高速化するため、Android ランタイムのアップデートも行っています。
Android 11 には、プロファイルに基づいた最適化(PGO)を行うツールの改善や Android Studio 4.0 でのネイティブ依存性管理の向上など、ネイティブ ツールチェーン全般のアップデートが含まれています。

また、Android Studio の D8 および R8 コンパイラに対する集中的な改善も続けており、R8 shrinker の Kotlin サポートを強化しています。詳細はこちらをご覧ください
詳しくは、言語の Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。

第 6 週 - Android Jetpack


Android Jetpack の新機能に興味がある方は、What's new in Android Jetpack の動画をご覧ください。多数のライブラリのアップデートについての概要と、 Jetpack の導入を行うためのヒントをご説明しています。

  • Hilt などのメジャーリリースについて深く掘り下げて説明しています。使い始める際に参考になるチートシートや、実際に私たちのサンプルで依存性注入に Hilt を使うように移行した手順も紹介します。ボイラープレートが減るということは、楽しみが増えるということです。

  • Paging 3.0 の詳細をご覧ください。このライブラリは、Kotlin コルーチンを使って完全に書き直されており、エラー ハンドリングの改善、変換機能の向上などの機能強化が行われています。

  • CameraX ベータ版について学びましょう。皆さんに代わってさまざまな端末や OS バージョンのエッジケースを管理してくれます。

今年は、Navigation 2.3 のリリースでいくつかの大きな改善も行いました。これにより、Android の UI 原則を維持しつつ、アプリの異なる画面間を簡単にナビゲートできるようになりました。

Android 11 では、ユーザーが機密性の高いアクセス許可をさらに細かく制御できるようにする作業を続けています。新しい ActivityResult API には、共通インテントなどのための型安全なコントラクトが含まれています。こういった変更により、アクセス許可のリクエストが簡単になります。今後さらに、アクセス許可を簡単に扱えるようにする予定です。
AppStartup ライブラリの最新リリースや、WorkManager の新機能についても知っておきましょう。

詳しくは、Jetpack Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。

第 7 週 - Android デベロッパーツール


こちらの動画で Android デベロッパー ツールの新機能の概要をまとめています。また、こちらの動画ではデザインツールの最新アップデートをご説明しています。

Layout Inspector がアップデートされたレイアウトのデバッグについてもご確認ください。 さらに、 Jetpack Compose Design ツールの最新動向や、Android Studio の新しい Database Inspector の使い方もご覧いただけます。Android Studio で Jetpack Hilt を利用するための最新開発ツールも紹介します。
Android デベロッパー ツールのビルドシステムについては、以下を参考にしてください。


仮想テストに関する最新情報は、Android Emulator に関するこちらのブログをお読みください。最後に、パフォーマンス ツールの最新の変更点について、System Trace に関するパフォーマンス プロファイラ コンテンツをご覧ください。Android Studio 4.1 による C++ メモリ プロファイリングについても詳しく紹介しています。
詳しくは、Android デベロッパー ツール Pathway動画のプレイリスト、この週のまとめのブログ記事をご覧ください。


第 8 週 - アプリの配布と収益化


新しい Google Play Console ベータ版についてのウェビナーを実施したり、最近の Android App Bundle の改善と新規アプリのスケジュールについてお知らせしました。2021 年の下半期には、Google Play で新しいアプリやゲームを公開する際に Android App Bundle の使用が必須になる予定です。同じタイミングで、以前の APK 拡張ファイル(OBB)のサポートを終了し、Play Asset Delivery が、150 MB 以上のゲームを公開する際の標準オプションになります。また、インスタント対応にはインスタント対応 App Bundle による公開を必須とし、以前の Instant App の ZIP フォーマットのサポートを終了する予定です。デベロッパーが新しいアプリ内レビュー API を使うと、アプリの中で評価やレビューの登録を依頼できます。

Google Play Billing でユーザーの信頼を高めるため、忘れずに定期購入の透明性向上に関するポリシーを遵守してください。さらに、定期購入者を獲得して維持するために役立てていただくよう、機能セットを拡張した Play Billing Library 3 をリリースしました。2021 年半ばには、これが必須となる予定です。

先月、9 つの新しいマーケットで Google Play Pass がリリースされました。Google Play Pass と Google Play の直接課金の両方を使っているデベロッパーは、米国での平均で Google Play Pass から 2.5 倍の収入を得ています。さらに、Google Play ストアの収益が減ることはありません。こちらから詳細を確認し、お申し込みください。

詳しくは、アプリの配布と収益化の Pathway動画プレイリスト、この週のまとめのブログ記事をご覧ください。

第 9 週 - スマートフォン以外の Android


この週のハイライトをチェックしましょう。


詳しくは、Android TV 大きな画面についての Pathway、スマートフォン以外の端末に関する動画プレイリスト、この週のまとめのブログ記事をご覧ください。

第 10 週 - ゲームとメディア


いくつかのゲームデベロッパー向けの最新情報を公開し、「11 Weeks of Android」のスペシャル エピソード The Android Game Developer Show を公開しました。


アプリで MediaStyle と有効な MediaSession トークンを利用すると、Android 11 の新しいメディア コントロールを活用することもできます。メディアの再開をサポートする方法を確認しましょう。再開するには、MediaBrowserServiceCompat を使ってアプリを検出可能にして、EXTRA_RECENT ヒントを使ってコンテンツの再開をサポートし、onPlay および onGetRoot コールバックを処理します。また、MediaRouter Jetpack ライブラリの使い方や、アップデートされた UAMP サンプルもご覧ください。

さらに、アプリで 5G を活用する主な方法もいくつか紹介しました。Android 11 には、新しい API や既存の API のアップデートが追加され、5G の機能を活用するために必要なすべてのツールがそろいました。たとえば、強化された帯域幅の推定 API5G の検出機能、携帯通信会社の新しい従量制の確認フラグなどです。5G 端末やネットワーク接続がなくても、Android エミュレータでこれらの API の開発やテストができるようになっています。Android 5G の Web ページに、上記のすべてと関連情報が掲載されています。
詳しくは、「ゲームとメディア」の Pathway、動画プレイリスト、まとめのブログ投稿をご覧ください。ゲーム デベロッパー向けのすべてのツールやリソースの最新情報は、d.android.com/games からアクセスできます。

第 11 週 - UI


最後の週には、4 つの新しい Codelab9 つの新しいサンプル新しいドキュメント、Compose チームからのポッドキャストをリリースしました。関連動画は以下からご覧ください。
Android 11 の新機能として、オンスクリーン キーボードの開閉時にアプリでシームレスな画面遷移ができるようになりました。この機能をアプリに追加する方法は、 動画やブログ記事サンプルアプリをご覧ください。

私達はマテリアル デザイン ガイドラインに従ってアプリに一貫性を持たせ、あるアプリで学んだパターンを別のアプリでも使えるよう推奨しています。マテリアル テーマ(種類形状)、ダークテーマ、マテリアル デザイン コンポーネント(MDC)ライブラリを使ったマテリアルのモーション システムの詳細をご覧ください。まだ MDC に移行していない方は、移行ガイドを確認してください。

新しい MDC-Android Compose Theme Adapter などのライブラリを使うと、移行が楽になります。このライブラリは、MDC XML テーマを Compose の `MaterialTheme` に変換します。
詳しくは、Compose の Pathway、モダン UI Pathway動画プレイリスト、この週のまとめのブログ記事をご覧ください。

その他の関連ドキュメント


#11WeeksOfAndroid 動画コンテンツの全プレイリストはこちらからご覧いただけます。Twitter YouTube をフォローし、メーリングリストをサブスクライブすると最新のニュースをメールで受け取れます。ご覧いただき、ありがとうございました!



Reviewed by Yuichi Araki - Developer Relations Team and Hidenori Fujii - Google Play Developer Marketing, APAC