この記事は Maru Ahues Bouza による Android Developers Blog の記事 " Beta 1 Update for 12L feature drop! " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
昨年 10 月の Android Dev Summit では、タブレット、折りたたみ式、Chromebook などの大画面デバイスが成長を続けていることをお知らせしました。こういったデバイスで、新しい Jetpack API やツール、ガイドを通して優れたアプリ エクスペリエンスを構築しやすくする取り組みについてもお話ししました。さらに、大画面向けに構築された Android 12 のフィーチャー ドロップである 12L のデベロッパー プレビューについても紹介しました。
12L では、大画面向けのシステム UI を最適化して磨きをかけ、マルチタスクをさらに強力で直感的なものにし、何もしなくても見栄えのよいアプリになるように互換性サポートを改善しています。12L には、いくつかのデベロッパー向け新 API が含まれています。たとえば、空間オーディオやドラッグ&ドロップ関連のユーザー補助の改善などです。
12L の最初のベータ版は昨年 12 月にリリースしました。このフィーチャー ドロップは、今年初めに公開する予定です。皆さんのアプリを対応させるうえで、テストやフィードバックにご利用ください。Android Studio で Android エミュレータを設定すると、新しい大画面機能を試すことができます。12L はスマートフォンにも対応しています。こちらから登録すると、サポート対象の Pixel デバイスに 12L のベータ版 1 をインストールできます。Android 12 ベータ プログラムに引き続き登録している方は、自動的に 12L のアップデートを取得します。Lenovo との連携により、12L は Lenovo Tab P12 Pro タブレットでも試すことができます。利用可能なビルドやサポートに関する詳細は、Lenovo のサイト(英語) をご覧ください。
ベータ版 1 ビルドには、機能やユーザー エクスペリエンスの改善に加え、最新のバグの修正、最適化、2021 年 12 月のセキュリティ パッチが含まれています。デベロッパー向けの機能としては、すでに API は確定しているので、ベータ版 1 には正式版の 12L API(API レベル 32)、アップデートされたビルドツール、テスト用のシステム イメージが含まれています。つまり、アプリで 12L の機能をテストするために必要なものがすべてそろいます。
12L では、通知、クイック設定、ロック画面、概要、ホーム画面など、大画面デバイスの UI を洗練させることに集中的に取り組んでいます。たとえば、600dp 以上の画面では、スペースを有効活用するため、通知シェードやロック画面などのシステム領域で新しい 2 列レイアウトを利用します。
2 列レイアウトでは表示内容が多くなり使いやすさが向上
マルチタスクもさらに強力で直感的なものに進化しています。12L には、大画面用の新しいタスクバーが含まれており、ユーザーは即座にお気に入りのアプリに切り替えたり、ドラッグ&ドロップして分割画面モードに切り替えたりすることができます。なお、Android 12 以降では、アプリがサイズ変更可能かどうかに関係なく、どんなアプリでも分割画面モードで起動できます。分割画面モードでアプリをテストすることを忘れないようにしましょう。
アプリをドラッグ&ドロップして分割画面モードに
さらに、互換性モードの外観と安定性を改善し、レターボックス表示の際のユーザー エクスペリエンスを向上させるとともに、デフォルトでアプリの見栄えがよくなるようにしています。アプリで大画面向けの最適化が済んでいない場合でも、新しいレターボックス表示のテストは行うようにしてください。
大画面向けにアプリを最適化する際に、優れたユーザー エクスペリエンスを簡単に実現できる最新の API やツールをいくつか用意します。
以上の機能の詳しい内容や、その他の API やツールについては、大画面デベロッパー リソースをご覧ください。
12L フィーチャー ドロップは今年始めにデバイスに配信される予定なので、今がアプリを大画面向けに最適化する絶好の機会です。デベロッパーの皆さんには、さまざまなサイズのウィンドウの分割画面モードで、アプリの動作を確認しておくことを強くおすすめします。まだアプリを最適化していない方は、さまざまな画面の向きでどのように表示されるかを確認し、必要に応じて新しい互換性モード関連の変更点を試してみてください。
大画面機能を試してみる一番簡単な方法は、折りたたみ式またはタブレットの設定で Android Emulator を使うことです。こちらにすべての設定手順が記載されているので、ご覧ください。
大画面デバイスに 12L を書き込むこともできるようになっています。Lenovo との連携により、Lenovo Tab P12 Pro でも 12L のプレビュー ビルドを試すことができます。現時点で、Lenovo はデベロッパー プレビュー 1 ビルドを提供しています。今後数週間のうちにアップデートが公開される予定です。利用可能なビルドやサポートなど、完全な情報は Lenovo の 12L プレビュー サイト (英語) をご覧ください。
12L はスマートフォンにも適用されます。小さな画面では大画面機能を確認できませんが、ぜひこのフィーチャー ドロップによる最新の改善点をお試しいただければと思います。サポート対象の Pixel デバイスをこちらから登録すると、最新の 12L ベータ版アップデートを OTA (無線)で受け取ることができます。Android 12 ベータ プログラムに引き続き登録している方は、自動的に 12L アップデートを受け取ります。
12L の詳細やリリース スケジュールは、12L デベロッパー サイトをご覧ください。問題点やリクエストはこちらから報告できます。いつものように、皆さんのフィードバックをお待ちしています!
Reviewed by Tamao Imura - Developer Marketing Manager, Google Play
この記事は Marcel Pintó Biescas による Android Developers Blog の記事 " Announcing Jetpack Glance Alpha for app widgets " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Android 12 では、多くの Android ユーザーにとって重要な機能であるアプリ ウィジェットを刷新し、より便利で美しく、そして見つけやすくしています(84% のユーザーが少なくとも 1 つのウィジェットを使っています)。先日、アプリ ウィジェットの構築をさらに容易にするために、Jetpack Glance の最初のアルファ版をリリースしました。Jetpack Glance は、Jetpack Compose のランタイムをベースに作られた新たなフレームワークで、ホーム画面などで利用できるアプリ ウィジェットをすばやく簡単に構築できるように設計されています。
ぜひ試してみて、フィードバックをお寄せください。
Glance は、Jetpack Compose と同じように最新の宣言型 Kotlin API を提供し、美しくレスポンシブなアプリ ウィジェットを少ないコードで実現します。
Glance の “Hello World” ウィジェット サンプル
class GreetingsWidget(private val name: String): GlanceAppWidget() { @Composable override fun Content() { Text(text = "Hello $name") }} class GreetingsWidgetReceiver : GlanceAppWidgetReceiver() { override val glanceAppWidget = GreetingsWidget("Glance")}
class GreetingsWidget(private val name: String): GlanceAppWidget() {
@Composable
override fun Content() {
Text(text = "Hello $name")
}
class GreetingsWidgetReceiver : GlanceAppWidgetReceiver() {
override val glanceAppWidget = GreetingsWidget("Glance")
Glance は、“Glanceables” (一目で把握できる)な操作を作成する Composable の基本セットを提供します。今回はまず、アプリ ウィジェットのコンポーネントを提供しますが、今後さらに追加する予定です。Glance は、Jetpack Compose ランタイムを使って Composable (英語) を実際の RemoteView (英語) に変換し、それをアプリ ウィジェットに表示します。
図: Glance の構造
つまり、Glance を使うには Compose を有効にする必要があります。ランタイム、グラフィック、ユニット UI の各 Compose レイヤーを使用しますが、Jetpack Compose の他の既存の UI 要素を直接使うことはできません。ただし、アプリの状態などのロジックは、Glanceables UI を作成する際に共有できます。
今回の初回リリースでは、アプリ ウィジェットを構築するためのメイン API を導入します。また、既存の RemoteView との相互運用性が提供されます。
以下に、このライブラリが提供する内容の概要をまとめます。
GlanceAppWidget
GlanceAppWidgetReceiver
Box
Row
Column
Text
Button
LazyColumn
Image
Spacer
GlanceModifier
Action
actionStartActivity
actionRunCallback
actionStartService
actionStartBroadcastReceiver
ActionParameters
SizeMode.Single
SizeMode.Exact
SizeMode.Responsive
GlanceStateDefinition
GlanceAppWidget state
LocalContext
LocalState
LocalGlanceId
LocalSize
RemoteViews
AndroidRemoteViews
現在は、デフォルト テーマや Android Studio サポートの強化など、さらなる機能の追加作業を進めています。今後の新規リリースにご期待ください。
注: minSDK は 21 ですが、現在は SDK v23 までの互換性しかサポートしていません。
クイックスタートとして、GitHub のサンプルをご覧ください。Glance は最新の安定版 Android Studio (英語) で動作しますが、Compose のランタイムを使っているので、まず Jetpack Compose ドキュメントの手順に従ってセットアップを行ってください。
また、さらに詳しい説明を見たい方は、AndroidX リポジトリのデモをご覧ください。
ResponsiveAppWidget.kt デモ
アルファ版は API に皆さんの要望を反映させるチャンスなので、フィードバックを通して感想をお寄せください。
ぜひ Glance と Compose を使ってみてください!
この記事は Purnima Kochikar による Android Developers Blog の記事 "Launching Notes from Google Play | A year of evolution" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
2021 年 12 月 14 日 (日本時間 15 日) に Notes from Google Play という新しいシリーズがスタートします。年に数回、デベロッパーの皆さんの創造性や皆さんがコミュニティーにもたらしたインパクトを祝福するとともに、重要なインサイトやベスト プラクティスを共有することで、皆さんがインスピレーションを得てより大胆に、より進化し、革新的なアプリやゲームを開発するきっかけを提供できればと考えています。
この 1 年を振り返ると、私たち全員にとって非常に変化の大きな年だったと感じます。そのような先行きが見えない中でも、みなさまの絶え間ない努力と挑戦により、Google Play のエコシステム全体を牽引してくださったことに、深い感謝と感銘を覚えています。皆さんのアプリやゲームは、Android 端末を利用している 25 億人以上の人々が学習し、つながり、リラックスやエクササイズをし、笑い、楽しむことを、さまざまな場面でサポートしてきました。その結果、Google Play の課金で毎月 100 万ドル以上を売り上げているデベロッパーや、月間アクティブユーザー数が 1,000 万人のデベロッパーは、今年 30 %増加しました。
この Notes from Google Play シリーズの初回の投稿では、デベロッパーの皆さんの創造性と絶え間ない努力を称え、その一例として Google Play に深い感動とインスピレーションを与えてくれたデベロッパーの Mohammed Kamara さんを紹介します。深い悲しみを乗り越えて、有色人種の女性のためにより良い世界を作ってくれた Mo さん、ありがとうございます。私たちは、Mo さんの InovCares に対するビジョンを実現するために僅かながらも貢献できたことを、とても光栄に思っています。
InovCares CEO / Founder の Mohamed Kamara さんが、彼の画期的なヘルスケア アプリの背景にあるストーリーについて語っています
また、 Google Play ベスト オブ 2021 と Indie Games Festival の受賞者の方々にも感謝しています。デベロッパーの皆さんがインスピレーションを与えてくれたおかげで、Google Playと Android を進化させることができ、また、デベロッパーの皆さんが素晴らしいアプリやゲームを作りビジネスを成功させることができるように努力し続けることができました。
デベロッパーの皆さんと皆さんの成功に注力した結果、2021 年には、ビジネスモデルの進化や新しい製品機能やツールなど、インパクトのある開発が実現できました。 Google Play では、 2 つの重要な目標に焦点を当てています。皆さんが持続可能なグローバルビジネスを構築し、成長させることを支援すること、そして Android と Google Play のプラットフォームの機能、ツール、エコシステムに投資することで、皆さんがより革新的なアプリやゲームを開発し続けることを可能にすることです。
また、Google Play では、ユーザーの獲得、維持、リピート率を支援するプログラムへの投資を続けています。
Google Play は、デベロッパーの皆さんのクリエイティブなアイデアを優れたアプリやゲームに変換できるように支援することをミッションとし、高品質なアプリやゲームを提供するためのツールとガイドラインを作成しました。以下の 3 つの主要な機能/ガイドラインに注目してください。
このような取り組みのために、主要なインフルエンサーやステークホルダー、業界や政府のリーダーたちが一緒に投資をしてくださり、本当に感激しています。Google Play で最も成功しているデベロッパーたちが、時間と労力を費やして、Indie Games Accelerator を通じてインディー デベロッパーのメンターとなり、指導し、成長させてくれました。韓国やインドなどのスタートアップのエコシステムをサポートするために、政府のリーダーが Google Playと提携を行いました。韓国の ChangGoo プログラムは、Ministry of SMEs and Startups (MSS) と Korea Institute of Startup & Entrepreneurship Development (KISED) とのパートナーシップにより設立され、その一方で、インドの App-scale Academy は Ministry of Electronics and Information Technology (MeitY) とのパートナーシップにより設立されました。皆さんのイノベーションとアプリ エコシステムへのコミットメントに感謝します。
インド全土のスタートアップ企業の成長と開発を支援する Appscale Academy 概要をご覧ください
この 2 年間、皆さんと直接お会いできなかったことがとても残念でした。新型コロナウイルス感染症(COVID-19) という大変な経験を通し、つながりを保つための新しい方法を見つけることができました。皆さんの多くは、バーチャル セッションを通じて、新しい市場機会を学んだり、仕事の未来、ダイバーシティ・エクイティ&インクルージョン、ビジネス促進、グローバル展開戦略などの、さまざまなトピックについて深いオンライン ディスカッションを交わしました。一部の方からは、オンライン イベントの疲れを感じているという声もありましたので、2021 年は、ソート リーダーシップやベストプラクティス、Play Academy の e ラーニングコースなど、ご自身のペースでご利用いただけるコンテンツにも投資しました。また、ストア掲載のためのツールや機能を最大限に活用していただくために、初の認定証も発行しました。
最後になりましたが、次回の連載までの間、お体にお気をつけて良いお年をお迎えください。デベロッパーの皆さんが、Google Play を通してユーザーを喜ばせ、デベロッパーの皆さんのファンを拡大し、ビジネスを成長させるためのパートナーとして見ていただけることを祈っております。
素敵な年末をお過ごしください。
Purnima Kochikar,
Vice President, Google Play Partnerships
今後の記事のアップデートを見逃さないためにも、私 または チームの Twitter をフォローするか、Android の月刊ニュースレターに登録してください。
この記事は Clara Bayarri による Android Developers Blog の記事 "#Android Developer Summit: 3 things to know for Large Screens on Android! " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
今年の Android Dev Summit (英語) では、Android の大画面開発 (*日本語字幕は、YouTube の自動字幕機能から日本語を選択してください) 、折りたたみ式デバイスおよびタブレット向けの 12L フィーチャー ドロップ(Android 12 を大画面向けに最適化する一連の機能)、大画面に特化したデベロッパー ツールの改善、Google Play のアップデートなど、多くのアップデートについてお知らせしました。ここでは、知っておくべきことのトップ 3 を紹介します。
*日本語字幕は、YouTube の自動字幕機能から日本語を選択してください
12L の通知やロック画面などのさまざまな画面には、たくさんの洗練された新 UI が含まれており、これによって大画面デバイス上での Android 12 はさらに使いやすくなります。デベロッパーにとって、特に重要な点は次の 3 つです。
新機能の詳細については、大画面と折りたたみ式の新機能を紹介した動画や developer.android.com/12L をご覧ください。
Android は長年にわたって大画面をサポートしてきましたが、アプリの UI を大型フォーム ファクタにスケールアップする際に役立ついくつかの新ツールが発表されました。
以上のすべての項目について詳しく知りたい方は、 Building Android UIs for Any Screen Size(あらゆる画面サイズに対応する Android UI の構築) と Design beautiful apps on foldables and large screens(折りたたみ式や大画面で美しいアプリをデザインする) の動画をご覧ください。また、最新の大画面ガイドや Compose でアダプティブ レイアウトを開発するためのガイドもご確認ください。さらに、アプリでこれを実現するサンプルとして、 Best practices for video apps on foldable devices(折りたたみ式デバイスでの動画アプリのベスト プラクティス) と Spotify Across Screens(さまざまな画面に対応した Spotify) もご覧いただけます。
タブレット、折りたたみ式、Chrome OS の各デバイスのユーザーが最高のアプリを見つけられるように、Google Play にも新たな変更を加え、大画面に最適化されたアプリを推奨するようにします。これにはアプリの品質評価 (英語) のための新しいチェックなどが含まれ、それによって大画面に最適化されたアプリをおすすめしたり、デバイスに最適なアプリを表示するように検索ランキングを更新したりできるようになります。ユーザーが大画面デバイスでのアプリの動作を評価できるように、大画面用のアプリの評価も導入します。
大画面に関連する 2021 年の Android Dev Summit の全セッション動画は、こちらのプレイリスト (*日本語字幕は、YouTube の自動字幕機能から日本語を選択してください) から確認できます。また、ブログ投稿には、大画面関連のすべての発表のリストが掲載されています。
この記事は Sagar Kamdar による Android Developers Blog の記事 " What’s new for Android developers at #AndroidDevSummit’21 " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
デベロッパーの皆さんが作成するアプリは、誰も想像できなかったような形で世界の人々の役に立っています。先日 2 日間にわたって開催された Android Dev Summit (英語サイト/動画は日本語字幕あり) では、ユーザーに重きを置き、ニーズを理解して、ユーザーを喜ばせるようなアプリを作るということについてお話ししました。Android Dev Summit の 2 日間は Android の重要なテーマである excellent apps, across devices(デバイスを超える優れたアプリ体験)に向けて開発を行っている皆さんをサポートする内容に焦点を当てました。まずは、生産性を向上させる「最先端の Android 開発」をアップデートし、優れたアプリの開発に集中できるようにすること。そして次に、アプリを拡張して、すべてのフォーム ファクタのデバイスに展開させることです。その大きな一歩として、折りたたみ式デバイスとタブレットを対象として、大画面用に最適化された Android 12 の機能セットである 12L フィーチャー ドロップを提供します。詳しくは後ほど説明します。
優れたアプリの構築をサポートするという点では、開発ツール、API、言語、配布テクノロジーのコレクションである最先端の Android 開発(Modern Android Development、略称 MAD)を拡張しています。MAD が、皆さんの生産性を上げるためのパートナーとなります。そして、MAD のいたるところに、生産性を上げて優れたアプリを作成するたくさんの新機能を追加しています。中でも特に大きなお知らせは、Android のネイティブ UI 開発用の最新ツールキット Jetpack Compose が、Material You とそのまったく新しいデザイン ビジョンに対応したことです。
今年の Google I/O で Android 12 に導入された (英語) Material You は、あらゆるスタイルでパーソナルな体験を提供し、あらゆるニーズに対応して、あらゆる画面に適応することに重点を置いています。最初のアルファ版として、マテリアル デザイン 3 (英語)スタイルのコンポーネントやテーマ (英語) 、さらにはダイナミック カラーなど、 Material You のパーソナライズ機能を提供する Compose Material 3 (英語) をリリースします。また、Jetpack Compose 1.1 の最初のベータ版もリリースします。これには、Android 12 のストレッチ オーバースクロール、タッチターゲットのサイズの改善、遅延レイアウト アニメーションの試験運用版などの機能が含まれています。Jetpack Compose は安定版になっており、本番環境で問題なく利用できます。短時間で簡単にあらゆるフォーム ファクタの Android UI を構築できるように、皆さんが必要とする機能の追加は継続します。Wear OS とホーム画面ウィジェットの作成機能も新たにサポートされています。
Compose 以外にも、Jetpack に要望のあった機能を追加する作業を続けています。Navigation には複数のバックスタックのサポートを追加しました。また、永続化作業の推奨ソリューションである WorkManager が優先ジョブをサポートし、Android 12 のバックグラウンドの制限を扱いやすくしました。Room には自動移行とリレーションのマルチマップを追加し、SharedPreferences に代わって推奨されている DataStore は 1.0 に到達しました。起動時間とフレームのパフォーマンスを測定して改善するツール Macrobenchmark は、簡素化を行ってフレーム タイミングの精度を向上させただけでなく、Android M までの下位互換性も追加しています。
Android のさまざまなフォーム ファクタ向けに開発するうえで役立つアップデートも行いました。さまざまな Android デバイスやフォーム ファクタで動作することは、例えば、Spotify が無数のファンとたくさんのクリエイターをつなぐというミッションを果たすうえでも役立ちました。次の動画をご覧ください。
*日本語字幕あり
大画面に対する需要はますます加速しています。Chrome OS は前年比で 92% 増加し、世界で最も速く成長しているデスクトップ OS になりました。昨年のタブレットの販売代数は 20% 増加し、最も新しく画期的なフォーム ファクタである折りたたみ式の販売台数は 2.5 倍になりました。すべて合わせると、2 億 5000 万台のアクティブな大画面 Android デバイスが存在します。Android はそれにふさわしい OS を提供します。そこで、大きなニュースを発表します。Android 12 で今後提供される予定の、大画面専用のアップデートが含まれるフィーチャー ドロップ、12L のデベロッパー プレビューです。12L では、大画面向けにシステム UI を最適化および洗練し、マルチタスクをさらに強力で直感的なものにするとともに、アプリがすぐに見栄えのよい状態になるように互換性サポートを向上させています。12L デベロッパー プレビュー (英語) に含まれる大画面関連の新機能は、早速本日から試してみることができます。12L の内容と、大画面向けの開発がどのように楽になるかについては、こちらからご覧ください。
多くのデベロッパーが、今年リリースされた Wear OS の最新版向けに便利なアプリを作成しました。Strava、Spotify、Calm などのように、高度で没入感のあるアプリが登場することを期待しています。Jetpack Compose のおかげで、UI の構築ははるかに早く簡単になりました。そこで、Wear OS にも Compose のサポートを追加します。現在、Compose for Wear OS はデベロッパー プレビュー です。新しいサンプルやドキュメントもあるので、始める際の参考にしてください。現在ベータ版の Tiles API は、予測可能な方法で一目で情報にアクセスしたりクイック アクションに使用したりできます。また、Samsung と連携して、ウォッチフェイスのデザインを簡単にする取り組みも進めています。Samsung が作成した Watch Face Studio (英語) を使うと、コーディングなしで独自のウォッチフェイスを作成できます。つまり、見たものが...そのままスマートウォッチから得られます。Wear OS 関連の詳しいニュースは、こちらからご覧ください。
皆さんのビジネス拡大に役立てていただくため、Google Play の機能を強化しました。ユーザーの信頼を高めるため、デベロッパーのプライバシーに関する取り組みを表明できるデータ セーフティ セクションと、本物のアプリがインストールされていることを保証する Play Integrity API を追加しました。さらに、アプリの品質向上に役立つツールや機能の導入も進めています。先日は、99% のデベロッパーでサービス手数料が 15% 以下になるように、プログラムの改定を行いました。詳しい内容は、ブログ投稿 を確認するか、こちらのセッションをご覧ください。(リンク先は英語、動画は日本語字幕あり)
先日、30 以上のテクニカル セッションを公開しました。自分のペースで視聴できるので、こちらからご覧ください (英語、動画は日本語字幕あり)。開催期間中の 2 日間で、たくさんのライブ コンテンツをお届けしましたので、どうぞお楽しみください。#AskAndroid では、最先端の Android 開発、大画面、Material You に対応した Compose などに関する皆さんからの熱い質問を受け付けました。Android を作ったチームに回答してもらうチャンスもありました。さらに当日は、Android Code-Alongs もライブ開催しました。参加者は、Android エキスパートがコードを書く様子を見たり、プログラミング チャレンジに挑戦したり、Jetpack Compose や Compose for Wear OS に関する質問への回答をライブで聞くことができました。こちらからすべてのアジェンダとスケジュールをご覧いただけます。まだの方は、#AndroidDevSummit のコンテンツをお楽しみください!
この記事は Alex Musil による Android Developers Blog の記事 " Google Play updates from #AndroidDevSummit " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
今年の Android Developer Summit (英語) では、信頼性や安全性の強化、アプリの品質改善や収益化向上のためのツール、ゲーム向けのアップデート、アプリやゲームのマーケティング向けの新たな認定制度など、Googe Play のプラットフォームでの成功を支援するために開発してきた新機能について紹介しました。
ご興味のある方は、以下のセッション動画を視聴するか、この記事でハイライトをお読みください。
あらゆる種類のビジネスが Google Play で成功できるように、重要な変更を行いました。デベロッパーには、アプリの購入価格、またはアプリ内でのデジタル購入の一定割合に対して、Google Play のサービス手数料が適用されます。Google Play 上のアプリのデベロッパーのうち、わずか 3 % のデベロッパーにのみサービス手数料が適用されており、残りの 97% のデベロッパーは、Google Play が提供しているサービスを無料で利用しながら、アプリを配信しています。現在、アプリのエコシステムをサポートするために複数のプログラムが用意されており、サービス手数料が適用されるデベロッパーの 99% が 15% 以下のサービス手数料で Google Play を利用できるようになっています。
先日、2022 年 1 月 1 日から Google Play のすべての定期購入のサービス手数料を 30% から 15% に引き下げることをお知らせしました。さらに、Google Play メディア エクスペリエンス プログラムを変更し、E ブックスとオンデマンドの音楽ストリーミングサービスを対象に、サービス手数料を 10 % を下限として 引き下げます。
サービス手数料の詳細については、よくある質問をご覧ください。
今年の前半に、Google Play ストアにローンチする予定となっているデータ セーフティ セクションについて詳しくお知らせしました。これにより、ユーザーはアプリがどのようなデータを収集し、共有するか、そのデータがどのように使われるかを知ることができます。プライバシーとセキュリティへのアプローチの方法を提示することで、信頼を築くだけでなく、ユーザーがインストールして使うアプリについて情報を得て判断できるように支援しています。
ユーザーには、2022 年 2 月から Google Play ストアで新しいデータ セーフティ セクションが表示されます。デベロッパーは各アプリについて、2022 年 4 月までにこのセクションを入力して承認を受けてください。また、Google Play Console から必須となるデータ セーフティ フォームを今すぐ入力することをお勧めします。フォームの入力方法のガイダンスなど、詳細については、Get prepared for the Data safety section(Google Play の新しいデータ セーフティ セクションに対する準備について)セッションをご覧ください。
Google Play は、安全で信頼できるようなプラットフォームにするため、定期的にポリシーを改定しています。2021 年 10 月末の更新に関する内容は、ポリシーセンターかこちらの PolicyBytes 動画をご確認ください。
デベロッパーとユーザーを保護するもう 1 つの方法が、アプリやゲームを不正使用や攻撃から守ってくれる新たなデベロッパー ツールに注力することです。このツールによって、ユーザーに意図したとおりの体験を提供することができます。新しい Play Integrity API では、Google Play の各種サービスを利用している本物の Android デバイスであり、Google Play からインストールした本物のアプリのバイナリを実行しているかどうかを判断することができます。そうでない場合は、アプリに何らかの障壁を追加してリスクを減らすための最適な方法を決めることができます。
Play Integrity API は、今後数か月のうちにすべてのデベロッパーにロールアウトされる予定です。詳しくは、Play Integrity API セッションをご覧ください。早期アクセスへの希望を申請ください。
アプリのパフォーマンスの改善に役立つ複数のアップデートをリリースしました。
まず、Android Vitals を改善し、新しい問題を簡単に発見して修正できるようにしています。最新のデータがすぐに問題を発見できるようにより明確になり、問題の原因をすばやく特定できるように、トレンド、フィルタ、アプリのバージョン情報を追加しました。
さらに、先日は Google Play Console にリーチとデバイスという新ツールをリリースし、Google Play のユーザーにどの機能や修正が役立っているかを把握できるようにしました。ユーザーや問題の分布を理解することで、実装する仕様、リリースする地域、最も高い効果を得るために何をテストするかについて、よりよい判断を行うことができます。
また、ユーザーがアプリの品質を評価する方法も変更します。ユーザーが利用するアプリを決めるうえで特に重視しているのが、評価とレビューの確認です。そこで、2021 年 11 月より、スマートフォンのユーザーに対して、登録した国に応じた評価を表示します。その後、2022 年の早い段階で、ユーザーはタブレットや Chromebook、ウェアラブルといったフォーム ファクタなどの、使用するデバイスに応じた評価を見ることができるようになります。現時点でも、Google Play Console で場所やデバイスに応じた評価のプレビューができます。そして、Google Play ストアで新しい評価が反映される前に、必要なアプリの品質改善作業を行うことができますので、ぜひご確認ください。
アプリやゲームによる収益の向上に役立てていただくため、Google Play Billing Library のアップデートなど、プラットフォームの刷新への注力を続けています。2020 年 6 月にお知らせした Billing Library バージョン 3 には、新しい支払い方法、定期購入のプロモーション機能、ゲームでの購入起因についての機能、購入時の信頼性とセキュリティの改善などが含まれています。なお、2021 年 11 月 1 日までに、すべての既存のアプリのアップデートで Billing Library バージョン 3 以降の使用が必須となっていますのでご注意ください。Billing Library バージョン 3 以降へのアップデートの詳細は、リリースノートでご確認ください。コード更新については少しの対応で済みます。
さらに、 Billing Library の新機能、アプリ内メッセージングについてもお知らせしました。現在は、定期購入を行っているユーザーが支払いに失敗しても、そのことに気づかなかったり、支払い情報を修正するのに多くの手間がかかります。そこで、ユーザーの支払いが失敗しているかどうかを検知し、アプリ内で適切なメッセージを表示する新 API をリリースしました。これにより、ユーザーはアプリを離れて Google Play ストアに移動することなく、すぐに支払い情報を修正できます。何よりうれしいのは、1 行のコードを組み込むだけという、とても簡単な作業であることです。早期アクセス パートナーの平均では、メッセージを見たユーザーの定期購入の継続と消費が 99% 向上しています。アプリ内メッセージングは次回の Billing Library リリースで利用できるようになる予定なので、詳しい情報にご期待ください。
Google Play ゲームサービス (英語) のログイン API がアップデートされ、ログインの実装が大幅に簡素化されました。現在この API は、早期アクセスとして提供されています。新しい SDK では、1 行で実装できます。
加えて、ユーザーのセットアップも簡素化され、Google Play ゲームのインストールとプロファイルの作成が 1 つの手順で行えるようになっています。これにより、Google Play ゲームをインストールしていない場合でも、ユーザーはすばやくゲームに戻れるようになります。さらに、自動ログインへのオプトイン プロセスを効率化し、リターンユーザーにとっての操作をよりスムーズにしました。
それだけではありません。Google Play ゲームのアプリをインストールすることが必要となり、一部のユーザーにはご不便をおかけしているため、2022 年以降、Google Play ゲームサービスでは、このアプリのインストールが不要となる予定です。この変更により、20 億人のユーザーが、特に操作を必要とせずに、Google Play ゲームサービス対応のゲームにログインできるようになります。詳しい情報は、追ってお伝えします。デベロッパー サイトでは、早期アクセス プログラムへの参加をご申請 (英語)ください。
最後に紹介するのは、Google Play ストア掲載情報認定制度の開始についてです。この新しいプログラムは、Google Play ストアの掲載情報のベスト プラクティスに対するアプリのマーケティング担当者の習熟度とスキルを証明するものです。
アプリのマーケティング担当者は、認定を受けるために、Google Play でアプリやゲームのストーリーを最適な形で伝える方法を学ぶオンライン トレーニングを受講できます。ここで習得できる重要なスキルは、ポリシーに準拠した質の高いストア掲載情報を通して成長させるための重要なスキルを学ぶことができます。トレーニングを受講した後に、試験を受験すると有用な認定を得ることができます。
Google Play でのビジネスの成長を果たすために、以上の新機能や新プログラムを活用していただけることを期待しています。皆さんの成長に役立つツールを作成できるように、引き続きご意見をお聞かせください。Google Play コミュニティへのご参加ありがとうございます。
この記事は Dave Burke による Android Developers Blog の記事 " 12L and new Android APIs and tools for large screens " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
タブレット、折りたたみ式デバイス、ChromeOS デバイスを合わせると、2 億 5000 万台を超える大画面デバイスが Android を実行しています。ここ 12 か月だけでも、1 億台近くの新しい Android タブレットがアクティベートされました。これは前年比 20% の増加です。現在最も成長が著しいデスクトップ プラットフォームである ChromeOS は、92% の増加率となっていますが、さらに、折りたたみ式デバイスも急増中で、前年比 265% 以上の成長を遂げています。すべて合わせれば、Android が動作しているアクティブな大画面デバイスは 2 億 5000 万台を超えます。その勢いを受けて、このようなデバイスで動作している Android を、ユーザーにとってもデベロッパーにとってもよりよい OS にするために、私たちは努力を続けています。
そこで 2021 年 10 月 27 日 (日本時間:10 月 28 日) の Android Dev Summit (英語、動画は日本語字幕あり) では、大画面に特化した Android 12 のフィーチャー ドロップについてお知らせしました。私たちはこれを 12L と呼んでいます。併せて、大画面向けの開発を容易にするための新 API や新ツール、ガイダンスも準備しています。さらに、Google Play で行っている変更についてもお話ししました。これにより、ユーザーは大画面に最適化されたアプリをこれまで以上に簡単に見つけられるようになります。ここでは、Android の大画面向け新機能について紹介しますので、ぜひお読みください。
先月、12L のデベロッパー プレビュー を提供しました。これは今後公開する予定のフィーチャー ドロップで、Android 12 を大画面でさらに快適に使えるようにするものです。このプレビューを使って、大画面関連の新機能を試したり、自分のアプリを最適化したり、フィードバックの送信が可能です。
12L では、通知、クイック設定、ロック画面、概要、ホーム画面など、大画面向けの UI 全般を改善しました。たとえば、画面領域を有効活用するため、600dp を超える画面では、通知シェードやロック画面、その他のシステム表示を新しい 2 列レイアウトで表示します。システムアプリも最適化されます。
2 列レイアウトによって表示できる内容が増加し、さらに使いやすいものに
また、マルチタスクをこれまで以上に強力で直感的なものにしました。12L では大画面で新しいタスクバーが搭載されるので、ユーザーはすぐにお気に入りのアプリに切り替えることができます。このタスクバーのおかげで、分割画面モードもこれまで以上にわかりやすくなり、タスクバーからドラッグ&ドロップするだけで、アプリを分割画面モードで実行できるようになります。また、Android 12 以降で分割画面モードの操作性を向上させるため、アプリがサイズ変更可能かどうかにかかわらず、すべてのアプリを自動的に分割画面モードに対応させます。
アプリをドラッグ&ドロップして分割画面モードで実行
さらに、互換性モードを改善して見た目と安定性を向上させ、レターボックス表示の快適さを向上させたほか、アプリのデフォルトでの外観も改善しました。レターボックス表示は、デバイス メーカーが簡単にカスタマイズできるようになっているので、カスタムの色や処理を設定したり、はめ込むウィンドウの位置を調整したり、カスタムの角丸を適用したりできるようになっています。
Android 12 のタブレットや折りたたみ式デバイスが次にまとまって登場するタイミングに間に合うように、12L のフィーチャー ドロップは来年の早い時期にリリースする計画です。以上のような機能を大画面デバイスに導入するため、私たちは既に OEM パートナーと協力して作業を進めています。近日中に 12L のデベロッパー プレビューが Lenovo P12 Pro (日本未発表) に搭載される予定なので、ご期待ください。数か月後には、この機能がデバイスに配信されます。今から大画面向けに最適化したアプリの準備を入念にしておきましょう。
デベロッパーの皆さんには、さまざまなサイズのウィンドウの分割画面モードでアプリがどのように動作するかを確かめておくことを強くお勧めします。まだアプリを最適化していない方は、画面の向きを変えたときにどう見えるかを確認し、新しい互換性モードの変更が適用される場合はそれを試してみましょう。12L には、大画面向け機能のほかにも、いくつかのデベロッパー向けの新 API や、新しい API レベルが含まれています。アプリに互換性を破る変更が起こらないように注意しているので、アプリのターゲットを 12L にしなくても Google Play 要件を満たすことができます。
12L を使ってみたい方は、Android Studio の最新プレビュー リリースから、12L Android Emulator のシステム イメージやツールをダウンロードしてください。機能と変更点を確認してアプリをテストする領域を判断し、プレビューの概要でスケジュールやリリースの詳細をご確認ください。問題やリクエストはこちらから報告できます。そしていつものように、フィードバックは大歓迎です。
12L はスマートフォンでも利用できますが、ほとんどの新機能は小さな画面では確認できません。現在、私たちはタブレット、折りたたみ式デバイス、ChromeOS デバイスに重点的に対応しています。今後のプレビューでは、Pixel デバイス向けに Android ベータ版への登録をオープンする予定です。詳しくは、developer.android.com/12L をご覧ください。
どんな画面にも適応する完全にアダプティブなアプリを作り始める時です。そして、それを今まで以上に簡単に実現できるようにしています。OS や Play でアプリの変更に対応できるように、デベロッパー プレビューと併せて API やツール、ガイダンスのアップデートを公開します。
アダプティブ UI をサポートするための第一歩は、小さな画面と大きな画面の両方でうまく動作するアプリを設計することです。私たちは、アプリの UI をあらゆる画面サイズに対応させる際に役立ててもらうため、新しいマテリアル デザインのガイダンス (英語) の作成を進めてきました。このガイダンスは、エコシステムでよく使われている一般的なレイアウト パターンをカバーしているので、さまざまなアイデアが得られるだけでなく、作業を加速することにもつながるはずです。
マテリアル デザインのガイドライン、アダプティブ UI パターン
最高のナビゲーション エクスペリエンスをユーザーに提供するには、ユーザーが使うデバイスのウィンドウ サイズ クラスに合わせたナビゲーション UI を提供する必要があります。私たちが推奨するナビゲーション パターンには、コンパクトな画面(compact)ではナビゲーション バー (英語) を使う、中程度(medium)以上の画面幅(600dp 以上)のデバイスクラスではナビゲーション レール (英語) を使う、などがあります。新たに公開したマテリアル デザインのガイダンス (英語) には、広い画面幅(expanded)のデバイス向けに、いくつかの大画面レイアウトのアイデアが掲載されています。たとえば、SlidingPaneLayout を使って実装できるリスト / 詳細構造などです。ガイダンスを参照して、ビューと Compose でアダプティブ UI 向けのナビゲーションを実装する方法をご確認ください。
フラグメントを使っている既存アプリに大画面に最適なレイアウトを適用する場合、ナビゲーション パターンを更新して SlidingPaneLayout を使うのはすばらしい方法です。しかし、多くの皆さんが複数のアクティビティに基づいたアプリを作っていることは承知しています。そういったアプリでは、Jetpack WindowManager 1.0 ベータ版 03 で新しくリリースしたアクティビティ埋め込み API を使うと、TwoPane ビューなどの新しい UI パラダイムに簡単に対応できます。現在、SlidingPaneLayout をアップデートしてこの API をサポートする作業を進めています。今後数か月間のアップデートに注目してください。
Jetpack Compose を使うと、大画面や多様なレイアウトを対象にした開発が楽になります。Compose の採用を始めているなら、大画面向けの最適化を行う絶好のチャンスです。
Compose は宣言型 UI ツールキットです。すべての UI をコードで記述するので、UI が利用できるサイズにどう適応すべきかを実行時に判断するのは簡単です。Compose がアダプティブ UI の開発に特に向いているのはそのためで、画面サイズやコンポーネントの違いによる UI の変更にとても簡単に対処できます。Compose でアダプティブ レイアウトを構築するためのガイドでは、知っておくべき基本的な事項について説明しています。
Jetpack WindowManager ライブラリを使うと、下位互換性のある形でアプリのウィンドウを操作し、すべてのデバイスを対象としたレスポンシブな UI を開発できます。新機能は以下のとおりです。
アクティビティを埋め込むと、たとえばリスト / 詳細パターンなど、複数のアクティビティを一度に表示することで、大画面で利用できるようになる広い表示領域を有効活用できます。その際、アプリのリファクタリングはほとんど、あるいはまったく必要ありません。並べるか重ねるかなど、アプリにどのようにアクティビティを表示するかは、皆さんが決定します。具体的には、XML 構成ファイルを作成するか、Jetpack WindowManager API を呼び出します。あとはシステムが対応して、作成した構成に基づいて表示方法を決めてくれます。
アクティビティの埋め込みは、折りたたみ式デバイスでもシームレスに動作します。デバイスを折りたたんだり広げたりすると、それに応じてアクティビティが重なったり並んだりします。アプリで複数のアクティビティを使っている方は、アクティビティの埋め込みを使って大画面デバイスでのユーザー エクスペリエンスを向上させることができます。アクティビティ埋め込み API は、Jetpack WindowManager 1.0 ベータ版 03 以降のリリースで試すことができます。詳しくはこちらをご覧ください。
Jetpack WindowManager でアクティビティを埋め込む
ウィンドウ サイズ クラスは、綿密に検討されたビューポートの一連のブレークポイントで、サイズ変更可能なアプリでのレイアウトの設計、開発、テストに利用できます。ウィンドウ サイズ クラスのブレークポイントは、compact(コンパクト)、medium(中程度)、expanded(広い)の 3 つのカテゴリに分かれています。これらは、エコシステムのデバイスの大部分を表しつつ、レイアウトのシンプルさと特異なユースケースにアプリを最適化できる柔軟性との間でバランスをとるように設計されています。WindowSizeClass API は、近日中に Jetpack WindowManager 1.1 で公開される予定です。これにより、レスポンシブ UI の構築がさらに簡単になります。詳しくはこちらをご覧ください。
Jetpack WindowManager のウィンドウ サイズ クラス
WindowManager では、折り目やヒンジなど、さまざまなウィンドウ形状に対応した一般的な API サーフェスも提供されます。折りたたみ対応のアプリでは、折り目やヒンジの部分を避けてウィンドウのコンテンツを表示したり、折り目やヒンジの部分を自然なセパレータとしてうまく活用したりできます。アプリを折りたたみ対応にする方法は、こちらのガイドをご覧ください。
Android アプリは、あらゆるデバイス、そしてあらゆるカテゴリに適応できるように構築すべきです。そこで、Android Studio 全体を対象として、UI やレイアウトの設計、開発、テストを行うたくさんのツールに、リファレンス デバイスを導入します。リファレンス デバイスは 4 つあり、それぞれスマートフォン、大型折りたたみ式デバイスの内側ディスプレイ、タブレット、デスクトップを表します。マーケットのデータを分析して設計したもので、人気のデバイスや急成長中のセグメントを表しています。また、リファレンス デバイスを規定したことで、新しい WindowSizeClass のブレークポイントを使ってアプリがさまざまなよくあるブレークポイントの組み合わせに対応して動作することを確認できるようになります。そのため、アプリができる限り多くのユースケースをカバーすることを保証できます。
リファレンス デバイスの定義
大画面向け UI の対応を始める際に、どこから手を付けてよいかわからない方もいらっしゃるかもしれません。その場合は、まず新しいツールを使って、大画面デバイスで起こりうる問題を確認しましょう。Android Studio Chipmunk では、レイアウト検証によって先回りで UI について警告や提案を行ってくれる新しいビジュアル lint チェックツールを開発しています。どのリファレンス デバイスが影響を受けるかもわかるようになっています。
リファレンス デバイスの各クラスが表示されたレイアウト検証ツール
ランタイムでアプリをテストする場合、Android Studio Chipmunk (英語) に搭載されているサイズ変更可能な新しいエミュレータ構成を使うことができます。サイズ変更可能なエミュレータを使うと、4 つのリファレンス デバイス(スマートフォン、折りたたみ式、タブレット、デスクトップ)をすばやく切り替えることができます。これにより、設計時にレイアウトを検証したり、ランタイムで動作をテストしたりする操作が簡単になります。どちらの作業にも、同じリファレンス デバイスを使うことができます。サイズ変更可能なエミュレータを新規作成するには、Android Studio の Device Manager を使って新しい仮想デバイスを作成し、Resizable デバイス定義と Android 12L(Sv2)システム イメージを選択します。
サイズ変更可能な Android Emulator
タブレット、折りたたみ式、ChromeOS の各デバイスに最適なアプリを簡単に探せるようにするため、ユーザーのデバイスに最も適したアプリを目立たせるように Play を変更します。
現在、それぞれのアプリの品質を大画面アプリ品質ガイドライン (英語) に照らして評価する新たなチェックを追加する作業を行っています。これにより、デバイスに最適なアプリが目立つようになります。Play ストアで大画面のユーザーが大画面に最適化されていないアプリを表示した場合、そのアプリのストア掲載情報ページに通知を表示する予定です。
加えて、既にお知らせしたように、アプリの評価にも大画面専用の評価を導入し、大画面デバイスでアプリがどう動作するかをユーザーが評価できるようにします。以上の変更は来年に実施する予定です。皆さんがアプリの準備を始められるように、あらかじめお知らせいたしました。
また、Google Play で Google のビジネスモデルを進化させてデベロッパーのニーズに応えるための取り組みを紹介した記事も忘れずに確認しておきましょう。
大画面や折りたたみ式デバイス向けの開発を始めるうえで役立てていただけるように、私たちはビューにも Compose にも対応します。新規アプリや既存アプリで異なる画面サイズをサポートする方法、ビューと Compose の両方でナビゲーションを実装する方法、折りたたみ式デバイスのメリットを活用する方法などを紹介したガイダンスの追加や改訂も行っています。ビューのサポートの大画面ガイドのセクション、または Compose ガイドのセクションをご覧ください。
コードほど雄弁なものはありません。以下のサンプルは、レスポンシブ UI に対応するように更新しています。
実践的な演習を行いたい方は、Codelab で、アップデートされた Jetpack WindowManager による折りたたみ式デバイスとデュアル スクリーン デバイスのサポートをご覧ください。
アプリの起動時間短縮は簡単な作業ではなく、起動に影響するさまざまなことを深く理解する必要があります。今年、Google の Android チームと Facebook のアプリチームは、アプリの起動を高速化するために、共同で指標を検討したり、アプローチを共有したりしています。Google による Android の公式ドキュメントには、アプリ起動の最適化に関するたくさんの情報が掲載されています。ここではさらに、それがどのように Facebook アプリに当てはまり、何がアプリ起動の高速化に役立ったかをお伝えしたいと思います。
現在、毎月 29 億人以上の人々が Facebook を使っています。Facebook はコミュニティを形成する力や、世界をより身近にする力を人々に与えます。また、Facebook は人生の思い出の瞬間を共有したり、今起きていることを知って議論したり、つながりを作って育んだり、協力してビジネス チャンスを生み出したりする場所です。
Facebook アプリの開発チームは、どんなデバイスや国、ネットワーク環境であっても、シームレスにアプリを動作させて可能な限り最高の体験を提供できるように、努力を重ねています。Google の Android チームと Facebook のチームは、合同でアプリ起動に関する指標の定義とベスト プラクティスについて検討しました。この記事では、その内容について説明します。
まずは起動時間の測定です。そこから、ユーザーの起動時のエクスペリエンスがどのくらい優れているかがわかり、リグレッションが発生すれば追跡できます。さらに、改善にどのくらいの手間をかけるべきかもわかります。最終的には、作業の優先順位を決めるために、起動時間をユーザーの満足度やエンゲージメント、ユーザーベースの拡大の度合いと紐付ける必要があります。
Android では、アプリの起動時間を測定する指標として、完全表示までの時間(Time-To-Full-Display; TTFD)と初期表示までの時間(Time-To-Initial-Display; TTID)という 2 つの指標が定義されています。さらにコールド スタートとウォーム スタートに分けることができますが、この投稿では、この 2 つは明確に区別しません。Facebook のアプローチでは、アプリを使うすべてのユーザーの起動時間を測定して最適化します(その一部はコールド、その他はウォームです)。
TTFD は、アプリがレンダリングを終え、ユーザーが操作や閲覧を行える状態になるまでの時間を表します。このときレンダリングされる内容には、ディスクやネットワークにあるコンテンツが含まれているはずです。遅いネットワークの場合、この処理にしばらく時間がかかるかもしれません。また、ユーザーがどのページを開くかによって異なる可能性もあります。そのため、すぐに何かを表示して、処理が進行中であることをユーザーに知らせる方法も有効でしょう。そこで登場するのが TTID です。
TTID は、アプリが背景やナビゲーション、高速に読み込めるローカル コンテンツ、読み込みに時間がかかるローカル コンテンツに代わるプレースホルダ、またはネットワーク コンテンツを描画する時間を表します。TTID は、ユーザーがナビゲーションを行って目的の場所に行けるようになるタイミングである必要があります。
変更しすぎない: 注意すべき点の 1 つは、TTID と TTFD の間での、アプリのコンテンツの位置の視覚的な変化です。たとえば、キャッシュしたコンテンツを表示し、ネットワーク コンテンツを取得できたタイミングで入れ替えるような場合、視覚的な変化が発生することがあります。ユーザーはこれを不快に感じるかもしれません。そのため、TTID では、できる限り TTFD に近く、十分に意味のあるコンテンツを描画するようにします。
ユーザーはコンテンツを求めてアプリを開きます。そのコンテンツの読み込みには、しばらく時間がかかる可能性がありますが、皆さんはできるだけ早くコンテンツを提供したいと思うはずです。
Facebook アプリの開発チームは、すべてのコンテンツとイメージを含む完全表示までの時間(TTFD)に基づいた指標に注目しています。TTFD こそ、ユーザーがアプリを開いた目的である完全な体験を表すものだからです。コンテンツやイメージを取得するためのネットワーク呼び出しに時間がかかったり、失敗したりする場合は、デベロッパーがそれを把握することで、起動処理の全体を改善できます。
Facebook の起動指標は、「悪い」と見なされるアプリ起動の割合です。「悪い」と見なされるのは、TTFD が 2.5 秒を超えた場合、または起動処理のいずれかが失敗した場合(イメージの読み込み失敗、アプリのクラッシュなど)です。Facebook は、この「悪い」起動の割合を減らすことに重点的に取り組んでいます。具体的には、起動が成功したとしても時間が 2.5 秒を超えた場合はその処理を改善し、起動が失敗した場合はその原因を修正します。2.5 秒という数値は、この数値が Facebook ユーザーにとって有意義であるという調査結果に基づいて選ばれました(これは、ウェブサイト向けの Web Vitals 推奨事項の Largest Contentful Paint(LCP)指標とも一致します)。
すべての処理、とりわけ最新コンテンツを取得するネットワーク呼び出しを含めれば、TTFD 起動指標は TTID よりもかなり遅いと感じるかもしれません。これは、実際には好ましいことであり、ユーザーがアプリで実際に体験することを表しています。Facebook でそうであるように、これを改善することでアプリの利用が増加したり、ユーザーの間でアプリのパフォーマンスに関する認知度が高まったりする可能性があります。
アプリによっては、TTFD を測定するのが難しい場合もあります。難しすぎる場合は、初期表示までの時間(TTID)から始めても問題ありません。プレースホルダやイメージがある場合は、一部のコンテンツを読み込む際のパフォーマンスが見逃されてしまう可能性がありますが、たとえそれがアプリを毎日使うユーザーが見るものの一部でしかなくても、できるところから始めることが重要です。
Android 4.4(API レベル 19)以降の logcat では、プロセスが起動してから、対応するアクティビティの最初のフレームが画面に描画されるまでの経過時間が、“Displayed” 値として取得されます。
報告されるログの行は、次の例のようになります。
ActivityManager: Displayed com.android.myexample/.StartupTiming: +3s534ms
TTFD のインストルメンテーションを行うには、画面にすべてのコンテンツが表示されてから、アクティビティで reportFullyDrawn() (英語) を呼びます。プレースホルダを置き換えるすべてのコンテンツと、レンダリングするすべてのイメージを含めるようにしてください(プレースホルダだけでなく、表示されるイメージ自体もカウントします)。reportFullyDrawn() を呼ぶと、logcat に次の内容が表示されます。
ActivityManager: Fully drawn {package}/.MainActivity: +1s54ms
Facebook アプリ開発チームは、さまざまなデバイス、プラットフォーム、国の膨大なユーザーのために、長年にわたってアプリの最適化を行っています。このセクションでは、Facebook アプリ開発チームがアプリの起動を最適化するために活用したいくつかの重要な教訓について説明します。
Google の Android チームは、アプリの起動時間を測定して最適化する際の推奨事項を、アプリの起動時間というドキュメントで公開しています。このセクションには、一部の重要なポイントを記載します。その内容は上記の Facebook の推奨事項とも結びついており、すべての Android アプリ デベロッパーが考慮すべきことです。
この記事では、起動に関するいくつかの重要な測定項目に加えて、起動時のエクスペリエンスを高めてユーザー エンゲージメントを向上させたり、Facebook Android アプリを普及させたりするためのベスト プラクティスについて説明しました。さらに、Google の Android チームがおすすめする指標やライブラリ、ツールも紹介しました。ドキュメントに記載されている戦略を適用すれば、どんな Android アプリにでもメリットが生じるはずです。アプリを測定して、ユーザーにとって心地よい高速な起動を実現しましょう。
本日、2021 年に日本で人気を集めた Google Play のコンテンツを紹介する Google Play ベスト オブ 2021 のアプリ、ゲームにおける部門賞の最優秀賞および大賞を発表しました。
2021 年は、新型コロナウイルス感染症の長期的な影響を受け、オンラインでの過ごし方をより工夫し楽しくなるようなエンターテイメントアプリや、地震や集中豪雨など天候が気になる日も重なったことで、状況をリアルタイムに把握することを助ける天気予報アプリなどに関心が高まりました。また、社会情勢の影響もあり、国内に対する興味の高まりも見られ、日本の食や文化に対する興味が高まったユーザーから、お取り寄せやフードロスなどの食に関連するアプリも耳目を集めました。
ゲームにおいては、気軽に遊べるカジュアルゲームから高度な戦略性を求められるシミュレーションゲームまで、幅広い作品が喜びや発見を与えてくれた一年となりました。新たなゲーム性で今までとは違った経験をユーザーに提供した IP や、モバイルゲームに初登場した IP が市場を盛り上げたことも印象的です。また、インディー部門では日本ならではの発想から生まれたゲームが人気を集め、テーマやジャンルの多様化が垣間見られました。そしてゲーム開発技術の結晶とも言えるリアルな世界観が魅力の臨場感あふれる作品が多くのユーザーの心を掴み、盛り上がった 1 年でした。
それでは、各賞の受賞作品をご紹介します。受賞された皆さま、おめでとうございます!
アプリ