この記事は 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 による折りたたみ式デバイスとデュアル スクリーン デバイスのサポートをご覧ください。
Reviewed by Tamao Imura - Developer Marketing Manager, Google Play
アプリの起動時間短縮は簡単な作業ではなく、起動に影響するさまざまなことを深く理解する必要があります。今年、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 年でした。
それでは、各賞の受賞作品をご紹介します。受賞された皆さま、おめでとうございます!
アプリ
この記事は Nick Butcher による Android Developers Blog の記事 " #AndroidDevSummit: Jetpack Compose now with Material You " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
先月の Android Dev Summit (英語) では、Jetpack Compose にたくさんのエキサイティングなアップデートが追加されたことをお知らせしました。その 1 つに、Google の新しいデザイン言語である Material You (英語) が Compose で利用できるようになったことがありました。ここでは、見逃してしまった方のために、すべてのお知らせをまとめて紹介します。
*日本語字幕は、YouTube の自動字幕機能から日本語を選択してください
Jetpack Compose 1.1 ベータ版がリリースされました。これによって 1.1 の新しい API が安定版になり、新機能が利用できるようになったほか、パフォーマンスが改善されています。1.1 には、フォーカス処理の改善、タッチ ターゲットのサイズ調整、`ImageVector` のキャッシュ、Android 12 のストレッチ オーバースクロールのサポートなどの新機能が含まれています。さらに、Compose 1.1 では、これまで試験運用版だったたくさんの API が安定版になっているほか、より新しいバージョンの Kotlin もサポートされています。既にサンプル、Codelab、Accompanist ライブラリもアップデートしており、Compose 1.1 と合わせて使えるようになっています。
compose-material3 もリリースされました。これは、Jetpack Compose で Material You の UI を作るためのまったく新しいアーティファクトです。ユーザーの壁紙から好みにあったカラーパレットを作成するダイナミック カラーのサポートを含め、コンポーネントやカラーシステムがアップデートされています。これが最初のアルファ版で、API への新機能の追加や改善作業を繰り返しているところなので、皆さんのフィードバックは大歓迎です。マテリアル デザイン 3 の詳細については、新しい m3.material.io (英語) ウェブサイトをご覧ください。Material Theme Builder (英語) など、ダイナミック カラーを使ってデザインや開発を行う際に役立つツールも公開しています。
Jetpack Compose のレイアウトや、アニメーションと状態について詳しく解説したたくさんのトークを公開しました。また、Wear OS、ホーム画面ウィジェット、大画面で Compose を使う方法を紹介し、3 つの code-along(初めての Compose アプリ、既存アプリの移行、Wear OS での Compose の使用について、ライブ コーディングで説明します)も公開しました。パネル ディスカッションを開催して、Jetpack Compose やマテリアルに関する皆さんからの熱い質問にもお答えしています。
Compose のドキュメントも充実させています。Jetpack Compose のフェーズ、アダプティブ レイアウトを作成するなどの新しいガイドを作成したほか、テーマ設定に関するガイドを拡充してマテリアル デザイン 3 などのガイドを追加しました。
Android Dev Summit では、Android Studio Bumblebee (英語) がベータ版になり、以下のような高度な Jetpack Compose サポートが追加されたことをお知らせしました。
Android Studio Chipmunk のカナリア版には、Compose 用のマテリアル デザイン 3 アプリのテンプレートも新しく追加されています(ビューベースのテンプレートもあります)。
最後になりますが、デザインのハンドオフに利用できる新ツールを一足先に紹介 (英語) しました。これは、Figma でデザインしたコンポーネントをエクスポートして、Jetpack Compose らしいコードを生成できるツールです。デザインの修正を繰り返したり、新しい変更を取り込んだり、生成されたコードを安全に編集したりできます。このツールについて私たちと直接やり取りできる小規模なチームを探しています。興味がある方は登録してください。(英語)
Jetpack Compose は安定版になっており、本番環境で利用できます。私たちは、本番環境で何万ものアプリが Jetpack Compose を使い始めているのを見て感激しています。Compose を使って、皆さんがさまざまなデバイスで動作する優れたアプリを作れるようにするために、機能のロードマップに基づいて開発を続けてまいります。
この記事は Vitaldevara による Android Developers Blog の記事 " Launching Data safety in Play Console: Elevating Privacy and Security for your users " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
ユーザーは、自分のデータをコントロールできている時に、オンラインを安全だと感じることができます。私たちが日々、データの取り扱いに関して、ユーザーが高度なセキュリティやプライバシーの管理 (英語) を行えるようにし、ユーザーの主体性を高めることに取り組んでいるのはそのためです。新しいデータ セーフティ セクションは、アプリがユーザーデータの収集、共有、保護を行うかどうか、またどのように行うかを、ユーザーがアプリをインストールする前に、デベロッパーが透明性の高い形で示せるようにするものです。
2021 年 10 月 18 日 (日本時間: 10 月 19 日)より、Google Play Console データ セーフティ フォームが導入されました。また、皆さんからのフィードバックを踏まえて、デベロッパー向けの追加のガイダンスを提供するため、ヘルプセンター、デベロッパー ガイド、Play アカデミーのコースなどで有用な情報を共有します。通常の慣例に従い、段階的な展開を開始し、2 週間以内にすべての人がアクセスできるようになる予定です。
Google Play Console で [アプリのコンテンツ] に移動し、[データ セーフティ] という新しいセクションを探してみてください。ガイドラインを確認して、早めにフォームを提出することをお勧めします。早めに対応をすることで、フォームが却下されてもフィードバックを確認して変更できるので、新しいアプリのアップデートの公開が妨げられることがありません。デベロッパーの皆さんからは、2022 年 2 月にデータ セーフティ セクションがユーザーに表示される前にフォームに正しく入力できるように、早い段階でフィードバックがほしいという声をお寄せいただきました。フォームの承認を受けていないアプリに制限が課されるのは、2022 年 4 月からです。
フォームへの入力には、それなりの作業が必要になることは認識しています。そこで、デベロッパーの皆さんからのフィードバックを踏まえてプロダクトやスケジュールを作成し、プロセスをできる限り効率化しました。さらに、複数のアプリがある場合に、簡単に情報をインポートできるようにしてほしいという声もありました。そこで、あらかじめ作成しておいたファイルからインポートするオプションを追加しました。
ストア掲載情報では、アプリのストア掲載情報ページに、新しいサマリー欄が表示されます。そこには、アプリが収集または共有するデータについてのデベロッパーによる説明のほか、安全性に関連する以下のような情報が表示されます。
ユーザーがサマリーをタップすると、次のような詳細情報が表示されます。
ユーザーからは、この情報によってアプリがユーザー情報をどのように扱うのかを理解しやすくなった、特定のアプリに安心感を覚えるようになったという声をお寄せいただきました。
日程は変更される可能性があります
デベロッパーの皆さんが、早期レビューのフィードバックを受けるために、Google Play Console 上で、データ セーフティ フォームの送信ができるようになりました。なお、セーフティ プロファイルを提出するために、アプリのアップデートを行う必要はありません。
2022 年 2 月には、この機能を Google Play ストアにリリースします。情報が承認されると、ストア掲載情報は自動的に更新され、データ セーフティ情報が反映されます。情報が送信されていない場合や却下された場合は、公開されている情報がない旨がユーザーに表示されます。
2022 年 4 月までに、すべてのアプリがデータ セーフティ セクションの承認を受ける必要があります。できるだけ多くのアプリが 2022 年 2 月のユーザーへのローンチに対応していただきたいと考えていますが、アプリの評価や複数のチームにまたがる調整が必要になるため、アプリの確認を行ったり、複数のチームと調整を行う関係で、さらに準備に時間が必要になるデベロッパーもいらっしゃると思います。
また、すべてのアプリは、4 月までにプライバシー ポリシーを提供する必要もあります。これまでは、個人データや機密性の高いユーザーデータを収集するアプリのみがプライバシー ポリシーを共有する必要がありました。データ セーフティ セクションまたはプライバシー ポリシーが承認されていない場合、新しいアプリの送信やアプリのアップデートは拒否される可能性があります。今後、以上の内容に従っていないアプリには、追加の制限が課される可能性があります。
最後になりましたが、Google Play が誰にとっても安全で、信頼できるアプリとゲームの提供元であり続けるため、ご協力いただきますよう、お願いします。
この記事は Eric McCleve による Android Developers Blog の記事 " Driving app and career growth with Google Play Academy’s Store Listing Certificate " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Google Play のゴールは、デベロッパーやマーケターの皆さんが、 Google Play のプラットフォームにアクセスして高品質なコンテンツやサービスを毎月探している 2 億人以上のユーザーにアプローチし、共感してもらえるようにすることです。Google Play ストア上に、より良い情報を掲載できれば、アプリやゲームユーザーを獲得するうえで、大きなメリットになります。
ストア掲載情報に関連するツールや機能を最大限に活用していただけるよう、Google Play アカデミーに新たに導入するストア掲載情報認定制度についてお知らせします。この認定制度は、Google Play でアプリやゲームを公開しており、ストア掲載情報の改善方法を学びたい方と、求められるモバイル マーケティングのスキルを身につけようとしている向上心のあるアプリやゲームのデベロッパーの両方を対象としています。トレーニングと試験の対象は以下のとおりです。
トレーニングと認定試験の詳細はこちらの動画をご覧ください
認定を受けるために、Google Play アカデミーのオンライン トレーニングを受講し、アプリやゲームのストーリーを最適な形で伝えるベスト プラクティスを学ぶことができます。ポリシーに準拠した質の高いストア掲載情報を通して成長させるための重要なスキルを学ぶことができます。トレーニングを受講した後に、試験を受験すると有用な認定を得ることができます。また、Google 認定デベロッパーのネットワークである Google Developer Certification Directory にも招待されます。
女性向けヘルスケアの刷新したヘルスケア分野のスタートアップ企業である InovCares を創業した Mohamed Kamara さんは、Google Play アカデミーでアプリストアの掲載情報のベスト プラクティスを学びました。
Google Play でアプリのストーリーを伝えるうえで Google Play アカデミーのトレーニングがどう役立ったかを、Mohamed さんが説明しています
トレーニングをスタートし、認定を受けましょう。ぜひお楽しみください!
この記事は Jeremy Walker による Android Developers Blog の記事 " Watch out for Wear OS at Android Dev Summit 2021 " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
今年の Android Dev Summit (英語) では、Wear OS プラットフォームのいくつかの主要なアップデートなど、Android デベロッパー期待のお知らせがたくさんありました。Google I/O では、新しい Wear OS のリリースを発表しました。その後、Galaxy Watch4 シリーズに Wear OS Powered by Samsung が搭載されました。Strava、Spotify、Calm などの多くのデベロッパーが、既に最新バージョンの Wear OS 向けに便利なエクスペリエンスを作成しています。今後、デベロッパーの皆さんがスマートウォッチにどんな新しいエクスペリエンスをもたらしてくれるのか、とても楽しみです。詳細な情報を入手してスマートウォッチ向けの優れたアプリを作成したい方は、このままお読みください。API やデザインツール、Google Play ストアのアップデートについて説明します。
Jetpack Compose ライブラリを使うと、短時間で簡単に UI を開発できます。(英語) そして今回 Wear OS に Compose のサポートを追加します。皆さんは、スマートウォッチ向けになったおなじみの UI コンポーネントを使ってアプリをデザインできます。こういったコンポーネントには Material You が含まれているので、少ないコードで美しいアプリを作成できます。
Compose for Wear OS は、現在デベロッパー プレビュー段階です。詳しく知りたい方や試してみたい方は、以下を参考にしてください。
お試しいただき、こちらでフィードバックを共有、もしくは、Jetbrains Slack の #compose-wear チャンネルに参加して感想をお聞かせください。ベータ版で API が確定する前にお願いします!
ウォッチフェイスは、ユーザーがスマートウォッチで自分を表現する方法の中でも、特に特徴的なものものの 1 つです。ウォッチフェイスを作成すると、Wear OS のユーザーに皆さんのブランドをアピールできます。私たちは Samsung と連携し、ウォッチフェイス作成のツールを改善して、Wear OS エコシステムでのウォッチフェイスのデザインを簡単にしました。
Samsung が作成したデザインツール Watch Face Studio (英語) を使うと、コーディングなしで独自のウォッチフェイスを作成、配布できます。直感的なグラフィックス ツールが搭載されているので、簡単にウォッチフェイスをデザインできます。個人で使うためのウォッチフェイスを作ることも、Google Play Console にアップロードして API レベル 28 以上をサポートする Wear OS デバイスのユーザーと共有することもできます。
先日、たくさんの Android Jetpack Wear OS ライブラリ (英語) をリリースしました。これらは、ベスト プラクティスに従い、ボイラープレートを減らし、ユーザーが一目でわかる高パフォーマンスなアプリを作るうえで役立ちます。
現在、タイルはマーケットのほとんどのデバイスで有効で、予測どおりに動作し、一目で情報にアクセスしたりクイック アクションに使用したりできます。API は現在ベータ版です。ぜひお試しください!(英語)
ウォッチフェイスを(Watch Face Studio 以外の方法で)もっと細かく調整したいデベロッパーの皆さんのために、ゼロから Kotlin で開発した新しい Jetpack Watch Face API のベータ版をリリースしました。
新しい API では、たくさんの新機能が提供されます。
今こそ古い Watch Face Support Library から今回の新バージョンに移行を始める絶好のチャンスです。
Google Play ストアで、皆さんの Wear OS アプリを見つけやすくする取り組みも進めています。今年は既にウォッチフェイスを検索できるようにしたほか、ユーザーが Wear カテゴリのアプリを簡単に探せるようにもしました。さらに、スマートフォンの Google Play ストアから直接アプリをスマートウォッチにダウンロードする機能もリリースしました。この変更点の詳細は、こちら (英語) からご確認いただけます。
また、皆さんがユーザーの期待に応えることができるように、Wear OS 品質ガイドラインの更新版 (英語) も公開しました。合わせて、ユーザーがアプリの外見を深く理解できるように、新しいスクリーンショット ガイドライン (英語) も公開しています。2022 年には、フォーム ファクタと国に固有の評価を導入し、アプリがどのようなデバイスや国で利用され、どのように動作しているかを深く理解できるようにする予定です。
Wear OS の開発に関する詳しい情報は、デベロッパー ウェブサイト (英語)をご覧ください。