この記事は Manuel Vivo による Android Developers - Medium の記事 "Now in Android #36" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Android 開発の最新ニュースやトピックをご紹介する Now in Android。今回は MAD Skills のミニシリーズ WorkManager、AndroidX、オーディオ、UX、Wear OS タイル、Jetpack Compose、コルーチン、#AndroidDevChallenge、最新のポッドキャスト エピソードなどをご紹介します。
今回の Now in Android は、動画とポッドキャストでもお届けします。内容は同じですが、読む量は少なくて済みます。この記事版(そのままお読みください!)には、取り上げているすべてのコンテンツへのリンクが掲載されていますので、ぜひご覧ください。
下のリンクをクリックするか、お気に入りのクライアント アプリでポッドキャストをサブスクライブしてください。
最先端の Android 開発に関する技術コンテンツを扱う MAD Skills シリーズが続いています。
WorkManager についてのミニシリーズには、2 つのエピソードが追加されました。
バックグラウンド処理: Android アプリでやってはいけないことがあるとすれば、それは UI スレッドのブロックです。このエピソードでは、Ben Weiss が WorkManager を使ってバックグラウンド処理を行う方法について、さまざまなアプローチを取り上げています。
WorkManager では、Executor、コルーチン、RxJava のどれを使うかによって、利用する API が違います。このエピソードでは、作業が完了したときに結果を返す方法についても説明しています。さらに Ben は、これまでの MAD 動画の中で最高級の “Let’s go” を披露しています。
高度な設定とテスト: さらに Ben は、WorkManager の初期化をカスタマイズする方法、複数のプロセスにまたがるアプリをサポートする方法、Worker をテストする方法について解説し、便利なデバッグ テクニックもご紹介しています。
今回の、 AndroidX リリースは、ほとんどがバグの修正です。
ご存知の通り、私は Hilt を担当しています。今回は広く、Hilt のベータ版をリリースしたことをお伝えしたいと思います!ViewModel、WorkManager、Navigation をサポートする Hilt の API と AndroidX 固有の API は、すべて安定版です。Hilt は Android で依存関係の注入を行う際の Jetpack の推奨ソリューションです。今回は、クイック リファレンスを公開しました。Hilt と Dagger のさまざまなアノテーションが行う処理の内容と、それを使う方法をすばやく調べることができます。
また、Jetpack Compose や Navigation コンポーネントを使い始めた方のために、hilt-navigation-compose ライブラリを新しくリリースしています。これを使うと、Navigation Compose で作成したナビゲーション グラフの遷移先がスコープになった ViewModel が Hilt から提供され、それを取得できます。詳しくは、こちらのドキュメントをご覧ください。
Don Turner が、Android のオーディオ レイテンシの改善と、それがリアルタイム オーディオ アプリに与える影響について解説しています。このブログ記事では、エコシステムでの変更内容と今後の計画、そして Oboe ライブラリを使って低レイテンシ オーディオ アプリを構築する方法を取り上げています。
Jetpack Compose は、常にユーザーを念頭に置いて開発されています。一番のユーザーは、デベロッパーの皆さんです。Android Studio の Compose プレビュー機能がどのように設計され、さまざまな UX の研究がそのデザインや機能にどのような影響を与えたのか、Preethi Srinivas と Paris Hsu がこちらのブログ記事(英語)で解説しています。
Wear OS Tiles が刷新されました。まだアルファ版ですが、カスタムタイルを作成できる新しい Jetpack Tiles ライブラリをリリースしました。Wear OS でタイルを使うと、アプリを開かずに情報やアクションにすばやくアクセスできます。なお、対応する Wear OS プラットフォームのアップデートが今春にロールアウトされた後、ユーザーはカスタムタイルを利用できるようになります。
Jetpack Compose チームが API ガイドラインを公開しました。Jetpack Compose API を使いこなすためのパターンやベスト プラクティス、スタイルのガイドラインがまとまっています。このガイドは Compose らしいコードを書くために参考になりますので、ぜひご確認ください。Compose API 全体の背景にある考え方を詳しく知りたい方もご一読ください。
Caren Chang と私が、Android でコルーチンを使う方法についてリアルタイム セッションで解説しました。コルーチンのドキュメントや基本の Codelab をご紹介しつつ、チャットで寄せられる質問に回答しました。
コルーチンについての学習をスタートする方は、Android Studio にアクセスし、この動画を見ながらコーディングしてみましょう。
数週間前に Jetpack Compose がベータ版になり、デベロッパー チャレンジが始まりました。その結果、1 週目には子犬の里親探しアプリが、2 週目にはカウントダウン タイマーがインターネットにあふれました。続いて 3 週目はスピード勝負、最終週の第 4 週はお天気アプリの課題にチャレンジしていただきました。
参加する時間がなかった方も、このチャレンジを活用して、ご自分のペースで Compose を試してみてください。
前回の Now in Android 以降、Android Developers Backstage に新しいエピソードが投稿されています 。以下のリンクまたはお気に入りのポッドキャスト クライアントでご確認ください。
ADB 158: Jetpack Compose… C’est bêta !
Chet Haase、Romain Guy、Tor Norbye が、Jetpack Compose チームから 4 名のゲスト Nick Butcher、Clara Bayarri、Leland Richardson、Adam Powell と「Compose がベータ版になったこと」の意味、コルーチン、マテリアル デザインの実装、ConstraintLayout などの Jetpack が提供する機能について話を聞きました。
今回は以上です。次回も Android デベロッパーの世界の最新アップデートをお届けします。お楽しみに。
この記事は Jolanda Verhoef による Android Developers Blog の記事 "Creating custom Tiles on Wear OS by Google with the Jetpack Tiles library" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Wear OS by Google スマートウォッチのタイルは、2019 年に導入されてから、特に便利で有用な機能になっています。タイルは高速にアクセスでき、使い勝手が良く、手首から必要な情報や作業にスワイプでアクセスできるように設計されています。さらに、ユーザーは確認したい情報やアクションを自由に操作できます。
2021 年 3 月 12 日(日本時間 3 月 13 日)に、Jetpack Tiles ライブラリがアルファ版になったことをお知らせします。このライブラリを使うと、デベロッパーは Wear OS スマートウォッチでカスタムタイルを作成できます。なお、対応する Wear OS プラットフォームのアップデートが今春にロールアウトされた後、ユーザーはカスタムタイルを利用できるようになります。
タイルは、日々の活動の進捗状況をトラッキングする、すばやくワークアウトを始める、最近聴いた曲を再生する、お気に入りの連絡先にメッセージを送信するなど、たくさんのユースケースに利用できます。アプリが没入的な体験を提供できる一方、タイルは高速に読み込めるので、ユーザーはすぐに行いたいことに集中できます。ユーザーがさらに情報を必要としているなら、タイルをタップしてスマートウォッチやスマートフォンで関連するアプリを開き、細かい処理を行うことができます。
タイルは Wear OS アプリの一部として、Android Studio で作成できます。最初に Wear OS Tiles への依存関係を追加します。
dependencies { implementation "androidx.wear:wear-tiles:1.0.0-alpha01" debugImplementation "androidx.wear:wear-tiles-renderer:1.0.0-alpha01" }
1 つ目の依存関係には、タイルの作成に必要なライブラリが含まれています。2 つ目の依存関係は、アクティビティでタイルをプレビューするためのものです。
次に、TileProviderService を使ってタイルの表示に必要な情報を提供します。
TileProviderService
class MyTileService : TileProviderService() { override fun onTileRequest(requestParams: RequestReaders.TileRequest) = Futures.immediateFuture(Tile.builder() .setResourcesVersion("1") .setTimeline(Timeline.builder().addTimelineEntry( // For more information about timelines, see the docs TimelineEntry.builder().setLayout( Layout.builder().setRoot( Text.builder().setText("Hello world!") ) ) ) ).build()) override fun onResourcesRequest(requestParams: ResourcesRequest) = Futures.immediateFuture(Resources.builder() .setVersion("1") .build() ) }
このコードには、重要な部分が 2 つあります。
onTileRequest()
TimelineEntry
onResourcesRequest()
タイルをプレビューするには、簡単なアクティビティを作成します。このアクティビティは、デバッグおよびプレビューのみに利用するので、src/main ではなく、src/debug に追加します。
src/main
src/debug
class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val rootLayout = findViewById<FrameLayout>(R.id.tile_container) TileManager( context = this, component = ComponentName(this, MyTileService::class.java), parentView = rootLayout ).create() } }
以上でタイルを公開する準備が整います。さらに詳しい手順を知りたい方や、タイルについてのさらに詳しい情報を確認するには、新しいガイドと、サンプルタイルの実例をご覧ください。
Jetpack Tiles ライブラリはアルファ版なので、API を改善するためのフィードバックをお待ちしています。それでは、コーディングをお楽しみください。
Reviewed by Yuichi Araki - Developer Relations Team and Tamao Imura - Developer Marketing Manager, Platforms and Ecosystems
この記事は Ashnil Dixit による Android Developers Medium の記事 "Collaborating with local payment partners to drive awareness and conversion" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
昨年、1 ドル未満の価格や現地価格に対する効率的なアプローチを探す上で役立つヒントについてのブログ記事(英語) を公開しました。今年は、インドと東南アジアでユーザーのコンバージョンを推進するベスト プラクティスについて、記事とケーススタディから成る 4 部構成のシリーズを連載します。今回はその 1 回目です。
Google Play を使うと、ユーザーは Play Billing が提供するさまざまな決済方法(クレジットカード、携帯通信会社の課金、Google Play ギフトカードなど)を選択できるようになります。その中には、インドの UPI、タイの TrueMoney、インドネシアの GoPay など、現地特有の決済方法も多く含まれています。
しかし、最近の調査(Google Consumer Survey、Ipsos 2020)によると、大半のユーザーは現地特有の決済方法が使用できるということに気づいていません。この点は、ユーザーを課金ユーザーにコンバージョンする上で障壁になる可能性があります。
現地のエコシステム パートナーは、巨大な取引ユーザーを保持しています。そのため、ゲームのリリースや主要な LiveOps(ゲーム内イベント) のタイミングにおいて、非常に魅力的な共同マーケティング パートナーになります。こういった現地エコシステム パートナーと連携することで、ゲームの認知度を上げて高品質なユーザーを獲得できる可能性があります。
通常、決済パートナーは、さまざまなチャンネル(アプリ内およびオンライン メディア)を通してゲームの特典や LiveOps(ゲーム内イベント)、リリースをプロモーションするため、デベロッパーが新しいユーザーを獲得する上で役立ちます。
現地の決済パートナーと共同でマーケティングやキャンペーンを行うことで、デベロッパーの初回購入者数、合計消費額、インストール数などが増加します。
インドや東南アジアで支払者へのコンバージョンを推進する上で、デベロッパーができることはたくさんあります。現地の決済パートナーとのコラボレーションもその戦略の 1 つです。決済パートナーは大規模な取引ユーザーのベースを保持しているので、ここぞというタイミングでプロモーション効果を増幅させ、認知度を高めて、支払者へのコンバージョンを推進する上で役立ちます。これらの地域でビジネスの拡大を検討している方は、コラボレーションの機会を探してみるのもいいかもしれません。
さらに詳しい情報は、アプリ開発を成功させるためのアカデミーのゲームビジネス基礎コースで提供しています。価格の差別化やモバイルゲーム製品に関するレッスンをご覧ください。
この記事のインフォグラフィック版は、簡単に共有できます。こちらからご覧ください。
Reviewed by Hidenori Fujii - Google Play Developer Marketing APAC
先月は、Android の次期バージョンの初期プレビューとして、Android 12 デベロッパー プレビューを公開しました。今月、2021 年 3 月 17 日(日本時間 3 月 18 日)に Android 12 デベロッパー プレビュー 2 をリリースしました。このビルドでは、アプリでテストできる新機能や変更点がさらに追加されています。
初期 プレビュー プログラムは、オープン性とコミュニティの皆さんとのコラボレーションで改善を行う、私たちの中核的な理念に基づいて進められています。皆さんから寄せられた情報を元に、Android をデベロッパーやユーザーにとって、よりよいプラットフォームにするために引き続き開発していきます。ぜひ今後もフィードバックをお寄せください。
Android 12 では、プライバシーとセキュリティを中核に据え、OS をよりスマートにし、使いやすさとパフォーマンスを向上させることを目指しています。また、ユーザーがスマートフォン、ノートパソコン、タブレット、TV、自動車のどれを使っていてもすばらしい体験を提供できるように、新しいツールの開発も進めています。デベロッパー プレビュー 2 で注目すべき機能は、新しい角丸画面 API、ピクチャー イン ピクチャー API の改善、コンパニオン デバイス管理の改善、ぼかしや色フィルタなどのエフェクトの使い勝手の向上、アプリ オーバーレイ コントロールなどです。
デベロッパー プレビュー 2 には、注目すべき機能がたくさん含まれています。ここでは、そのいくつかをご紹介します。詳しい情報を確認したい方や Pixel にダウンロードしたい方は、Android 12 デベロッパー ウェブサイトをご覧ください。既にデベロッパー プレビュー 1 または 1.1 を実行している方は、無線(OTA)アップデートで最新のリリース データを受信することもできます。
私たちは、デバイスやデータを安全に保ちつつ、ユーザーにとっての透明性と制御を向上させることに注力し続けています。このリリースでは、実際に確認してアプリでテストできる新機能をいくつか追加しました。
上記の詳細やその他のプライバシーやセキュリティの変更点については、こちらをご覧ください。
view.setRenderEffect(RenderEffect.createBlurEffect(radiusX, radiusY, SHADER_TILE_MODE))
新しいバージョンのプラットフォームをロールアウトするにあたって、アプリの互換性を優先し、迅速かつスムーズにアップデートできるように作業を行っています。皆さんが Android 12 に対応する時間を長くとれるように、Android 12 ではアプリに関連する変更のほとんどがオプトイン方式になっています。また、短時間で対応できるように、ツールやプロセスをアップデートしています。
リリースに一歩近づいたデベロッパー プレビュー 2 では、全般的な安定性を改善する作業を続けています。今が新機能や変更点をテストする良いタイミングです。特に、API に関するご意見や、プラットフォームの変更点がアプリに与える影響に関する詳しいフィードバックをお待ちしています。フィードバック ページから、問題の報告をお願いします。
また、今は互換性テストを行って必要な作業を洗い出し始めるべきタイミングでもあります。Android 12 Beta 1 までに互換性のあるアップデートをリリースできるように、早めにこの作業を開始することを推奨しています。現時点では、アプリの targetSdkVersion を変更する必要はありませんが、動作の変更点の切り替えを使うと作業がスムーズに行なえます。Android 12 の変更点をオプトインすることで、アプリがどのような影響を受ける可能性があるかについての予備知識を得ることができます。
2021 年 8 月に Platform Stability に到達すると、アプリに関連するすべてのシステム動作、SDK/NDK API、非 SDK リストが確定します。このタイミングで最終的な互換性テストを終え、完全に互換性があるバージョンのアプリ、SDK、ライブラリをリリースできます。デベロッパー向けのタイムラインの詳細は、こちらをご覧ください。
このデベロッパー プレビューには、Android 12 の機能を確認し、アプリをテストしてフィードバックを私達にお送りいただくために必要なすべてのものが含まれています。Pixel 3 / 3 XL、Pixel 3a / 3a XL、Pixel 4 / 4 XL、Pixel 4a / 4a 5G、Pixel 5 のシステム イメージへダウンロードすると、すぐに利用を開始できます。Pixel デバイスをお持ちでない方は、Android Studio で 64 ビット システム イメージと Android Emulator を使うことができます。
今回のリリースでは、Android TV でアプリをテストしたり、まったく新しい Google TV エクスペリエンスを試したりすることもできます。詳細はこちらをご覧ください。開発を始めるには、ADT-3 デベロッパー キットを利用します。
開発に必要な詳細情報一式は、Android 12 デベロッパー ウェブサイトでご覧いただけます。
この記事は Chet Haase による Android Developers - Medium の記事 "Now in Android #35" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Android 開発の最新ニュースやトピックをご紹介する Now in Android。今回は Jetpack Compose ベータ版、#AndroidDevChallenge、Android 12、WorkManager、Android for Cars ライブラリ、RecyclerView、コルーチン、最新のポッドキャスト エピソードなどをご紹介します。
公開です!ついに公開です!Jetpack Compose が 2 月 24 日(日本時間 2 月 24 日)にベータ版としてリリースされました!このリリースを祝して、#TheAndroidShow を開催しました。Jetpack Compose の機能概要とライブ Q&A、そしてデモを通して、この新しいツールのリリースがなぜ待ち望まれていたのか理由をご紹介します。
日本語字幕に対応しています。ぜひ日本語に切り替えてご覧ください。
Jetpack Compose は未来の Android 向け UI ツールキットで、ネイティブ Android アプリを短時間で簡単に作成できるように設計されています。このライブラリの作業は、2019 年の Google I/O で Compose を発表して以来、オープンソースで進めてきました。昨年 8 月にアルファ版のマイルストーンに到達したばかりですが、2 月 24 日にベータ版になりました。
ベータ版は大きな成果で、プロダクトの安定化を継続するために必要な API が安定版であることを示しています。 Compose に関する多数の情報が既に公開されています。使い方を学び、今年中に 1.0 が完成したときにアプリで利用できる準備を整えるためにご活用ください。
まずは、こちらのブログ記事をご確認ください。Jetpack Compose に関するあらゆる情報や、詳しく学習する際に役立つ関連情報へのリンクが掲載されています。
また、Jetpack Compose のさまざまな機能の使い方を説明した動画とスクリーンキャストもまとめてあります。
もちろん、実際にコードを触ってみることもできます。サンプルや新しい学習 Pathway の Codelab も更新されているので、忘れずにご覧ください。
さらに、デベロッパー サイトにアクセスすると、アップデートされた最新のドキュメントを確認できます。Jetpack Compose を使い始める方法など、あらゆる情報へのリンクが掲載されています。
Android の歴史は、1.0 リリース 1 年前 の 2007 年に開催した、デベロッパー チャレンジによって始まりました。ですので、 Android 開発の世界にクールな新機能が登場するとき、その様なチャレンジが企画されることは別に不思議なことではないでしょう。
そして、Jetpack Compose がベータ版になった今こそ、もう一度チャレンジを開催すべきだと考えました。今回は、4 週間にわたって毎週 1 回ずつチャレンジを実施し、Pixel 5 を含む 1000 個以上の賞品をご用意しました。詳しくは、初回のブログ記事や 第 2 週のチャレンジ以降のブログ記事、そして#AndroidDevChallenge の ウェブサイトをご覧ください。そして、ぜひこれからも Compose でコードを書いてみてください!
またこの季節がやってきました。桜の花が咲き始め、少しずつ暖かくなり、カリフォルニアは 11 月まで雨が降らなくなります。そして、次期バージョン Android 最初のデベロッパー プレビュー をリリースしました!
今回のリリースの概要はブログ記事(日本語)に掲載されています。プライバシーやセキュリティの向上、メディアのトランスコードや AVIF イメージのサポートといったグラフィック機能など、さまざまな内容が含まれています。
さらに、Android 12 プレビュー サイトでは、動作の変更点、新機能と新しい API などを詳しく説明しています。最も重要なことは、新しいリリースで皆さんのアプリを試し、何か問題があればフィードバックを送っていただくことです。早い段階でプレビューをリリースする意味のすべてはそこにあり、最終プロダクトの公開までに完成度を上げることが目的です。
もちろん今回のリリースは、最終リリースに向けてこの先も多くの段階が待ち受ける中、第 1 歩を踏み出したに過ぎません。今後もリリースを重ねて、機能や修正の数を増やしていきますので、ご期待ください。
Android 12 は最終リリースに向かって進行中、今後のリリースに注目
今週より、MAD Skills で次のミニシリーズが始まり、Ben Weiss がその概要についてお話ししています。
WorkManager の基本: 最初の技術コンテンツとなるこのエピソードでは、Caren Chang が WorkManager の基本について解説しています。ここでは、WorkManager を使って画像をぼかす例を紹介します。コードは、WorkManager Codelab から確認できます。
連載中のコンテンツは、YouTube の MAD Skills プレイリスト、Medium の記事、またはすべてのリンクが掲載されているランディング ページからご覧いただけます。
新しい API Android for Cars App Library が登場します。現在はベータ版で、クローズド ソースの com.google.android.libraries.car.app の機能が元になっていますが、現在はオープンソースとして AndroidX で利用できます。
この API を使うと、Android Auto で動作するナビゲーション、駐車場、充電スポットのアプリを開発できます。ドライバー ディストラクション基準を満たし、画面フォーム ファクタや入力の違いなどの細かい点に対応してくれるテンプレートが提供されるので、開発が簡単になります。
ブログ記事(英語)と、ガイドを確認し、ライブラリを使って新しいアプリ体験を実現しましょう。
RecyclerView を扱う連載シリーズの最終回として、Meghan Mehta が ConcatAdapter を使って RecyclerView のヘッダーを実装する方法を解説します。
マルチスレッド プログラミングは厄介かもしれませんが、正しく行うことが重要です。Kotlin デベロッパーには、同時実行コードを簡単に書く方法として、コルーチンの使用をお勧めします。ただし、コルーチンを初めて使う方や、コルーチンを正しく効果的に使う方法についてアドバイスがほしい方は、こちらの新しいドキュメントをご覧ください。
新しいガイドに Kotlin のコルーチンで開発するためのベスト プラクティスをまとめました。
前回の Now in Android 以降、Android Developers Backstage にいくつかのエピソードが投稿されています。以下のリンクまたはお気に入りのポッドキャスト クライアントでご確認ください。
私は歴史にまつわる ADB エピソードが大好きです。なぜそのような仕組みになっているのかという深い謎に包まれた秘密に迫ることができるからです。今回は、Tor と Romain と私が、1.0 が登場するかなり前という初期の Android チームに関わっていたエンジニアの 1 人、Dan Bornstein に話を聞きました。Dan は、現在の Android Runtime(ART)の前身となる Dalvik ランタイムの作成に携わったメンバーです。Dalvik におけるいくつかの設計上の決断のほか、ランタイム、ガベージ コレクタ、パフォーマンスなど、ありとあらゆるテクノロジーに関するトークが登場します。
皆さんのお声をお待ちしています。今回は、Tor Norbye と Romain Guy と私が、Android Developers Backstage を改善するためにできること、またはしないことについて話します。
アンケートフォームから皆さんのご意見、ご感想をお知らせください。
Reviewed by Yuichi Araki - Developer Relations Team and Hidenori Fujii - Google Play Developer Marketing APAC
この記事は Manuel Vivo による Android Developers - Medium の記事 "Now in Android #34" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Android 開発の最新ニュースやトピックをご紹介する Now in Android。今回は MAD Skills のミニシリーズ MotionLayout、マテリアル コンポーネント、KSP、AndroidX、コルーチンとインテントに関する最新のブログ記事・動画・関連ドキュメントなどをご紹介します。
今回の Now in Android は、動画とポッドキャストでもお届けします。内容は同じですが、読む量は少なくて済みます。このブログ記事版には、取り上げているすべてのコンテンツへのリンクが掲載されていますので、ぜひご覧ください。
MotionLayout についてのミニシリーズが終わりを迎えつつあります。4 回目のエピソードでは、Sean McQuillan が Motion Layout を使って折りたたみ可能なツールバーを作る方法について説明します。このようなツールバーは、この API が大活躍してくれる場所の 1 つです。MotionLayout を使ってカスタム属性をアニメーションさせる方法も習得できます。
最後のエピソードでは、デベロッパー リレーションズ チームとエンジニアリング チームからモーション レイアウトのエキスパートが参加し、リアルタイム Q&A を開催しました。
これまでのエピソードを見逃してしまった方は、MAD Skills ミニシリーズ MotionLayout のプレイリストをチェックしておきましょう。
material-components-android ライブラリの安定版として、バージョン 1.3.0 がリリースされました。MaterialTimePicker や ProgressIndicator などの新しいマテリアル コンポーネントが含まれています。その他、ダイアログなどのコンポーネント内の文字列の国際化とローカライズ、BadgeUtils クラスのパブリックへの公開も行われています。
すべての変更点は、リリースノートでご覧ください。
Kotlin で軽量コンパイラ プラグインを作成するツール、Kotlin Symbol Processing(KSP)がアルファ版になりました。アノテーション プロセッサに詳しい方向けに説明すると、KSP は KAPT に似たような機能を提供します。しかし、最大 2 倍高速で、Kotlin マルチプラットフォームを念頭において開発されています。
アノテーション処理を使っているライブラリ作成者の方は、ライブラリを KSP 互換にする方法に関するブログ記事をご覧ください。
さまざまな AndroidX ライブラリでたくさんの最新増分リリースが公開されています。また、以下の安定版リリースが含まれています。
安定版リリース以外では、Paging 3 が最初のベータ版リリースに到達しています。これは注目に値します。Paging 3 は、土台からコルーチンに対応している Kotlin を使って、大きく書き換えられています。この API は、beta01 で API 安定版に到達しました。
私は、コルーチンが Android ランタイムで実際にどのように実行されているのかを解説するブログ記事(英語)を投稿しました。Android のコルーチンは Java プログラミング言語で定義されているスレッドモデルを使うので、コードの同時実行の問題に注意する必要があります。
プライバシーは Android の最優先事項であり続けています。ユーザーの個人データの保護や、アプリがそのデータを使う際の透明性は、ますます重要になっているからです。Fred Chung の動画では、ユーザーの目に見える変更点もいくつか取り上げていますが、主にデベロッパーを対象に、新しい API、動作の変更、テストについて解説しています。1 回だけのアクセス許可オプションなどのアクセス許可の変更、ストレージ、パッケージの公開設定、個人データへのアクセスを特定する際に役立つツールなどをご紹介しています。
Nicole Borrelli が、アプリ内コールバックを実装する際に Intent ではなく PendingIntent を使うべき理由について説明しているブログ記事(英語)を投稿しました。PendingIntent を使わないと、アプリに脆弱性が残る可能性があります。
アプリの品質は、すべての人にとって重要です。Android Developers の ウェブサイトにアプリの品質セクションを新たに設けて、アプリの品質についての重要な最新情報や、高品質を実現して維持する際に役立つ情報を提供しています。アプリの中核品質チェックリストは、視覚的な体験、機能、パフォーマンスと安定性、プライバシーとセキュリティ、Google Play という観点でアプリを評価する参考になります。ユーザーから期待される水準を満たすため、このリストをデザインチームや QA チームと共有することもおすすめします。
今後は、このリストを定期的に更新して最新の状態を保つとともに、タブレットや WearOS などの他のフォーム ファクタにも拡大していく予定です。
アプリの品質については、こちらのブログ記事も併せてご覧ください。
私たちは、Android 開発をさらに多くの人に広めたいと考えています。そこで、Android 開発の教育者向けに、Kotlin による Android 開発の新しいカリキュラムを公開しました。講義のスライドから、ハンズオンの Codelab まで、必要なものをすべて含むたくさんの素材がそろっています。
グループで学びたい方のために、すべてのデベロッパーに Android Study Jams プログラムを公開しました。このコンテンツを使うと、グループのメンバーがオンライン カリキュラムを通して、好きなペースで一緒に Android を学ぶことができます。
この記事は Jolanda Verhoef による Android Developers Blog の記事 "Android Dev Challenge Finale: Weather app" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
#AndroidDevChallenge の最終週は、皆さんの創造性を輝かせましょう!先週はスピードの勝負でしたが、最終週となる今回で全力を出し切ってください。
UI はすべて Compose で構築する必要があります。気象データはダミーのもので構いません。提出するアプリは、最低でも英語をサポートする必要があります。
皆さんの作品は、以下の 4 つのカテゴリに基づいて審査します。
レイアウト、テーマ、グラフィックに関する Compose ドキュメントを確認し、美しいデザインの実装の参考にしてみましょう。アニメーションやジェスチャーの斬新な使用法も考えてみてください。コードの質は、アーキテクチャとテストによって改善できます。また、動作全般については、ユーザー補助機能を忘れずに確認するようにしましょう。
回答は、パブリック GitHub リポジトリで実装する必要があります。Github リポジトリ テンプレートのコピーを作成し、README の手順に従ってください。テンプレートには、Compose による基本的な Hello World! と継続的インテグレーション設定が含まれています。
Hello World!
※1 応募に関する詳細は必ず公式ルールをご確認ください。
今週も究極の 5G Google スマートフォン、Google Pixel 5 を獲得するチャンスです!4 つのカテゴリそれぞれの勝者と、最も優秀な作品に、Google Pixel 5 を進呈します。
Jetpack Compose の中核はデベロッパー コミュニティです。プロダクトをさらに使いやすく改善するために、皆さんのフィードバックをお寄せください。
この記事は Neethi Thomas、Dafna Gal、Ashnil Dixit による Android Developers Blog の記事 "Sub-dollar pricing expansion in 20 markets" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Google Play では、Android デベロッパーがアプリやゲームをできる限り広いマーケットに提供できるようにするために継続して対応を行ってきました。既に 165 以上のマーケットで無料と有料のアプリをサポートし、インドやブラジルなどの 20 のマーケットで、デベロッパーが設定できるプロダクトの最低価格を引き下げてきました。
このたび、2021 年 3 月 4 日(日本時間 3 月 5 日)に、新たにラテンアメリカ、ヨーロッパ、中東、アフリカ、アジア太平洋地域の 20 のマーケットでプロダクトの最低価格制限を引き下げたことをお知らせします。
この新しい下限額により、ほとんどの対象マーケットで 10-30 米セント相当の価格を設定できるようになります。この超低価格帯、すなわち「1 ドル未満」の価格設定を利用し、現地の購買力や需要を踏まえて価格を調整することで、新たな潜在購買層へのアプローチが可能になります。また、グローバルな価格戦略を柔軟に設定できるようになり、アプリやゲームで多くのユーザーを収益につなげるチャンスにもなります。
以下の新しいマーケットで、有料アプリ、アプリ内アイテム、定期購入の最低価格制限が引き下げられています。
バングラデシュ、ブルガリア、ボリビア、コスタリカ、チェコ共和国、デンマーク、クロアチア、ハンガリー、ヨルダン、カザフスタン、レバノン、スリランカ、ミャンマー、パキスタン、パラグアイ、ルーマニア、セルビア、タイ、タンザニア、ベトナム
これに加えて、以下のマーケットではすでに 1 ドル未満の価格設定が利用できます。
ブラジル、チリ、コロンビア、エジプト、インド、インドネシア、マレーシア、メキシコ、ナイジェリア、ペルー、フィリピン、ポーランド、ロシア、サウジアラビア、南アフリカ、トルコ、ウクライナ
Google Play Console で価格を調整する方法については、ヘルプセンターの記事をご覧ください。すべての価格帯が記載されたリストは、こちらからご覧ください。
2015 年にこの機能が導入されてから、Android デベロッパーは 1 ドル未満の価格設定を活用して、有料ユーザー数を拡大してきました。ここでは、1 ドル未満の価格設定を利用してビジネスを成長させる方法をいくつか紹介します。
期間限定の宣伝を行う:1 ドル未満の価格設定は、マーケティング活動によって新しいユーザーを獲得したり、低価格商品で熱心なユーザーに特典を提供するために活用できるツールです。たとえば、人気ゲーム Lords Mobile のデベロッパー IGG は、有料ユーザーのコンバージョンを増やすため、期間限定で 2-3 倍の価値があるスペシャル バンドルをわずか 3000 インドネシア ルピア(0.20 米ドル)で提供することがあります。これはスペシャル オファーなので、通常の売上を減らすことなく、支払者のベースを拡大できます。
シーズンごとの特典を提供する:1 ドル未満の価格設定は、シーズンごとの有償特典を提供するにも効果的です。ユーザーはこのようなアイテムを購入できる期間が限られていることを知っていなすので、さらに魅力を感じます。これを低価格設定と組み合わせることで、初回購入者にとっての魅力を高めることができます。Moonton は、Mobile Legends でそのシーズンで初めて購入を行ったユーザーに、レアなスキンを提供し、これは 1 ドル未満の購入の場合にも適用されます。
お試し価格を提供する:1 ドル未満の価格設定は、お試し価格で新しい有料ユーザーを惹きつけるために使うこともできます。たとえば、貴重なアイテムを購入したことがないユーザーに、1 ドル未満の価格を提示できます。先にも触れたデベロッパーの Moonton は Mobile Legends: Bang Bang で最初の購入を行ったユーザーが、お試し価格で人気のヒーローにアクセスできるようにしています。この戦略は、ゲーム全体の経済に大きな影響を与えることなく、新しい有料ユーザーにアプローチすることを可能にしています。
熱心なユーザーに特典を提供する:1 ドル未満の価格設定と、購入イベントの繰り返しを組み合わせて活用することもできます。たとえば、7 日間毎日購入したユーザーに特別なボーナスを提供し、ユーザーが納得できる購入額を超えないようにすることができます。
ガチャを提供する:1 ドル未満の価格設定は、チャンスベースのアイテム、たとえば「ガチャ」とも相性がよく、新規ユーザーへ効果的にアピールできます。価値のあるゲーム内アイテムを 5 ドルだと購入しないユーザーでも、0.15 ドルなら、中のアイテムが欲しくて宝箱を開けてくれるかもしれません。1 ドル未満の価格でガチャを提供すれば、多くのユーザーが運試しのために支払いをしてくれる可能性があります。
アプリやゲームの提供地域に合わせた 1 ドル未満の価格設定を活用する方法はたくさんあります。これらのベスト プラクティスは、あくまで一例です。皆さんのビジネスの拡大にこの機能をご活用ください。
この記事は Sameer Samat による Android Developer Blog の記事 "Boosting developer success on Google Play" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
デベロッパーが持続可能なビジネスを構築できるよう支援することは、Google Play の重要なミッションのひとつです。そのためにパートナーの声に日々注意深く耳を傾け、直面している問題点を理解し、創造性にあふれるアイデアの実現をサポートできるよう日々努めています。アプリを立ち上げ、軌道に乗せることは簡単ではありません!Google Play は、強力なマーケティング ツール、 Play Console 上の実用的なデータ、 Play Academy / ベスト プラクティス / ソート リーダーシップの様な教育コンテンツ、Indie Games Festival / Indie Corner / Accelerator Program のようなプログラムを通して、デベロッパーのサポートを世界中で行っています。そして私たちは成長をサポートする新しい形を常に模索しています。
そしてこのたび、2021 年 7 月 1 日より、すべてのデベロッパーを対象に、毎年の Google Play におけるアプリ内でのデジタル商品の販売による収益の合計が 100 万米ドルに達するまでの部分は、サービス手数料を 15% に引き下げることに致しました。これによりデベロッパーの皆さまが、エンジニアやマーケターの採用、サーバーのキャパシティの拡大など、ビジネスの成長にとって重要なフェーズに投資をしていくサポートができればと考えております。
こういった投資は、成長段階の早期にいるデベロッパーにとって特に重要ですが、アプリの事業拡大は年間収益 100 万米ドルを達成したからといって終わることはありません。年間 200 万ドル、500 万ドル、そして1000 万ドルの収益があるパートナーからも同様のお声を頂戴しています。そのため、ビジネスの大小に関わらず、すべての Google Play 上のデベロッパーに対し、年間合計収益が 100 万米ドルに達するまではサービス手数料の減額を適用します。この公平なアプローチは、すべてのデベロッパーの成功をサポートするという Google の大きなミッションに基づいています。本件の詳細に関しては、今後数か月をかけて共有させていただきます。
パートナーの皆さまの成功があってこそ、Google Play のプラットフォームとしての成功があります。Android と Google Play はパートナーである世界中のデベロッパーに常に耳を傾け、お寄せいただいたフィードバックをエコシステムの構築や運営に活用してきました。今後さらに多くのビジネスに Android 上で成長を遂げていただくこと、そしてその成長のため必要な新たな技術的、経済的なサポートの提供に関してデベロッパー コミュニティの皆さまと協議を重ねていくことを、今後も楽しみにしています。
この記事は Don Turner による Android Developers Blog の記事 "An update on Android's audio latency" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
この記事は、Android エコシステムにおける最新の変更点である、人気 Android デバイスでのオーディオ レイテンシ(遅延)に着目し、Android のリアルタイム オーディオ アプリへの適合性について説明します。
この 4 年間で、オーディオ レイテンシを改善するたくさんのアクションを行ってきました。
今までに実施してきたアクションと、デバイス メーカーがあらためてオーディオ レイテンシの改善に注力したことによって、デバイスのエコシステム全般で問題が大きく改善されています。人気 Android スマートフォンの平均レイテンシは 40 ミリ秒以下に下がりました。これは、リアルタイム アプリに求められる範囲に十分収まっています。
データを細かく分析すると、2017 年には最大値と最小値に大きな差(222 ミリ秒)があったことがわかります。
これを 2021 年のデータと比較してみます。差は 8 分の 1 のわずか 28 ミリ秒になり、はるかに一貫したオーディオ体験が提供されています。また、 2017 年は人気機種のメーカーは 1 社だけでしたが、現在は複数の OEM が含まれています。それを踏まえると、この結果はとても興味深く、さらに、リストの多くのデバイスはハイエンドのフラッグシップ モデルだけではないところが印象的です。
ここまでは、ラウンドトリップのオーディオ レイテンシについて説明してきました。ラウンドトリップのレイテンシには、オーディオ チェーンの 3 つのコンポーネント、すなわちオーディオ入力、オーディオ処理、オーディオ出力が影響しています。
多くのリアルタイム オーディオ アプリでは、入力オーディオではなく、画面のタップイベントに基づいてオーディオが生成されます。この種のアプリでは、「タップ音」のレイテンシ、すなわち画面をタップしてから音が聞こえるまでの時間が非常に重要です。このレイテンシは、タッチ スクリーンのタップに 10-35 ミリ秒(最新の Android デバイスでは、通常 20 ミリ秒)ほどかかることによります。
ラウンドトリップのレイテンシからタップ音のレイテンシを推定する場合は、オーディオ入力レイテンシ(通常 5 ミリ秒)を引き、タッチのレイテンシ(通常 20 ミリ秒)を加えることができます。つまり、ラウンドトリップのレイテンシに 15 ミリ秒を加えることになります。以上の数値を考慮すると、人気 Android スマートフォンの平均タップ音レイテンシも、ほとんどのリアルタイム オーディオ アプリに求められる範囲に十分収まっていると言えます。
オーディオ レイテンシは Android エコシステム全体で大幅に減少していますが、この作業はまだ完成にはほど遠い状態です。ラウンドトリップのレイテンシが 20 ミリ秒というのは Android プロフェッショナル オーディオ アプリの要件で、10 ミリ秒は長期的な目標のままです。また、現時点では、あまり普及していないデバイスの中には、まだオーディオ レイテンシが大きいものもあります。ただし、オーディオ レイテンシのために Android アプリの開発を控えていた方は、それを再考する時期かもしれません。
まずは、Oboe スタートガイドまたは動画チュートリアルをご覧ください。
この記事は Jolanda Verhoef による Android Developers Blog の記事 "Android Dev Challenge: Week 3 - Speed round" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
位置について... 用意… ちょっと待ってください!#AndroidDevChallenge 第 3 週の予定を空けておきましょう。本日 3 月 13 日に、同じタイムゾーンのデベロッパーとのスピード競争を開催します。日本の皆さんは、午前 10 時からのスタートです。Compose スキルが一番速い人が勝者ですので、ぜひチャレンジしてください。第 1 週と第 2 週の創造性あふれる作品はすべてすばらしいものでしたが、次に求められるのはスピードです。
UI はすべて Compose で構築する必要があります。また、課題のデザインで指定されるすべてのガイドラインに厳密に一致しなければなりません。実装にあたっては、テーマ、レイアウト、ナビゲーションに関する Compose ドキュメントを参考にしてください。ハンズオンの学習教材として Compose Pathway を試すこともできます。このチャレンジに役立つトピックを説明した Codelabs が含まれています。
回答は、GitHub リポジトリで実装する必要があります。こちらの Github リポジトリ テンプレートをコピーし、README に記載された手順に従ってください。テンプレートには、Compose による基本的な Hello World! と継続的インテグレーション設定が含まれています。
今週のチャレンジの賞品は、究極の 5G Google スマートフォン、Google Pixel 5 です。アジア太平洋地域タイムゾーンからの応募者の中で、課題のチャレンジを最速で実装して送信したデベロッパー 1 名に贈呈します。
この記事は Tom Grinsted による Android Developers Blog の記事 "Google Play Console powers better strategic decisions with new engagement metrics and unique benchmarks" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
2021 年 3 月 2 日(日本時間 3 月 3 日)、Google Play Console で、一連の新指標と独自の比較用ベンチマークをリリースしました。これらを使うと、最大 250 種類の類似アプリのグループと比較しながら、アプリやゲームのエンゲージメントと収益化のトレンドを評価できます。そのため、プロダクトのロードマップやビジネス機会について、情報に基づく優れた決定に役立てることができます。
新機能を活用してエンゲージメントを促進する、価格に関する実験を行う、維持率の向上を図るなど、目的にかかわらず、最適な投資を行うために重要なデータと分析結果を必要としている、すべてのデベロッパーの皆さんの声に私たちは耳を傾けています。
大規模なデベロッパーなら、ポートフォリオ間でデータを比較できる場合もありますが、常にそれが可能なわけではありません。たとえば、新しい国や地域にあなたのアプリをリリースして展開するとき、直接比較できるアプリを公開していない場合、あるいはそもそも 1 つか 2 つのアプリやゲームしか公開していない場合などです。そのような場合、アプリやゲームのパフォーマンスが よい かどうか、そしてそのパフォーマンスをどこで改善できるのかは、どのように判断すればよいでしょうか。
今回リリースした機能は、背景となる情報を整理してパフォーマンスを把握しやすくしたもので、あらゆるタイプのデベロッパーをサポートすることを目指したものです。新機能は以下のとおりです。
私たちは、モバイルアプリやゲームの成長戦略エキスパートと連携し、アプリやゲームのパフォーマンスを評価する実践的なベスト プラクティスを参考にしながら、エンゲージメントと収益化に関する一連の指標を新しく導入しました。たとえば、次のようなものがあげられます。
すべて合わせれば、15 個の正規化された新しい指標をベンチマークとともにリリースすることになります。また、分子と分母の絶対数も照会できるようになっています。これらはすべて、[統計情報] ページに新設された [類似アプリと比較] タブから利用できます。利便性を向上させるため、既存のストア掲載情報のコンバージョンデータなど、その他の正規化された重要指標もこの画面に含めています。
あなたのアプリの改善領域を見つけ、意思決定をサポートするため、正規化された新指標では、すべて類似アプリとのパフォーマンス比較が標準機能としてリリースされます。指標は時間で追跡したり、「パズルゲーム」「オーディオブック」「コミック」といった最大 250 種類のアプリやゲームのカテゴリと比較したりできます。
国フィルタを使うと、ビジネスニーズに合うように表示をカスタマイズできます。たとえば、似たようなゲームが日本のユーザーから多くの収益を上げているかどうかがわかります。また、インドでのロイヤルティに関して、チームが最新機能を提供したことが他の類似アプリを上回るパフォーマンスにつながっているかどうかを確認することもできます。
我々は開発プロセスの中で、実際に一部のパートナーと協力して、この一連の新指標を試しました。そのフィードバックは、私たちのアプローチを具体化するうえで役立っただけでなく、ポジティブなものでもありました。 「この新指標と比較情報は意思決定に役立ちます。現在のゲームに関してどのような対策をとるべきかだけでなく、将来のゲームに関する戦略的決定にも有効です。私たちにとっては、既に Google Play Console で最も価値のある機能の 1 つとなっています」Plarium Global Ltd. Guy Ulmer 氏
この新指標や知見を最大限に役立ててもらえるように、Google Play Academyに新しいコースを追加して短期間で習得できるようにもしました。ビジネスの成長を一気に加速させる方法をご説明しているマスタークラス ウェビナー(英語)もご覧ください。
今回の新指標の元になるデータは、アプリの利用状況を Google と共有することに同意したユーザーに由来し、全体数を適切に表せるようにモデリングされています。このデータは、アプリをフォアグラウンドで開いたかどうかの記録でしかありません。ユーザーは、データの制御や共有のオプトアウトが可能です。また、myactivity.google.com で個々のイベントを削除することもできます。
さらに、今回の新しいデベロッパー指標は初めて差分プライバシーを利用したものです。差分プライバシーは、さまざまなデータセット全体でプライバシー保護を強化する高度な技術です。このアプローチの詳細については、こちらのブログ記事(日本語)でご覧いただけます。
これまでのベンチマークのリリースと同じように、類似アプリとの比較指標は、すべてデベロッパーのプライバシーを保護する形で行われています。データは多数のアプリやゲームから生成され、個々のアプリのパフォーマンスが類似アプリのグループに共有されることはありません。この仕組みは、Google Play Store の高度なタグ付けシステムによって実現しています。つまり、高品質で信頼性が高く、有用な比較が可能ですが、皆さんが確認する類似アプリのグループでは、特定の競合他社のアプリのパフォーマンスは不明瞭化されており、それは皆さん自身のアプリのパフォーマンスに関しても同様です。
今回のリリースは、Google Play Console でさらに有用な知見を提供し、積極的なレコメンデーション機能を実現することを目指した複数年にわたるプロジェクトの最初のリリースです。多くの大規模なモバイルアプリ デベロッパーは、成長戦略コンサルタントによる情報を活用しながら、プロダクトに関する長期的、戦略的な決断を行っています。私たちは、コンソールを通して、このようなサポートや専門性を すべての Google Play デベロッパーに提供したいと考えています。今後もさらに機能をリリースする予定です。ご期待ください。
この記事は Chet Haase による Android Developers - Medium の記事 "Now in Android #33" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
Android 開発の最新ニュースやトピックをご紹介する Now in Android。今回は MAD Skills のミニシリーズ Kotlin+Jetpack と MotionLayout、AndroidX、Hilt と WorkManager に関する最新のブログ記事・動画・関連ドキュメント、MotionTags スクリーンキャスト、WindowManager についての ポッドキャスト エピソードなどをご紹介します。
前回の Now in Android の後、リアルタイム Q&A をもって Kotlin と Jetpack API の利用に関するミニシリーズが完結しました。たくさんのご質問お寄せいただきありがとうございました。ぜひ録画をご覧ください。
いつものように、まとめのブログ記事(英語)には、すべてのエピソードの動画と記事、そして関連技術へのリンクを掲載しています。
MADSkills で新しいミニシリーズが始まりました。Sean McQuillan が、高度な UI アニメーションを作成できる MotionLayout API と Motion Editor ツールについてお話ししています。MotionLayout は Android の Transition API と似たような機能を提供しますが、はるかに柔軟性が高く強力で、高度なカスタム アニメーションを実現できます。さらに、複雑なアニメーションをとても簡単に作れる抜群のビジュアル エディタも搭載しています。
MotionLayout
Transition
この動画では、ConstraintSet を使って異なる状態を定義し、その状態間で UI をアニメーションさせる方法を紹介しています。Android Studio で Motion Editor を使って遷移を作成、編集する方法について、Sean が説明しています。
ConstraintSet
このエピソードでは、MotionLayout アニメーションで Keyframe を使い、さまざまなプロパティの値を時間とともに変化させてアニメーションをカスタマイズする方法を説明して
Keyframe
います。たとえば、オブジェクトが開始点と終了点の間を移動する場合、デフォルトでは直線上を移動しますが、キーフレームを使うと経路を変えることができます。
3 つ目のエピソードでは、Sean がデフォルトの 2 つ(開始と終了)に加えてさらに ConstraintSet を追加し、開始と終了の間で複数の状態を経由する複雑なアニメーションや遷移を作成する方法について説明しています。
ミニシリーズ MotionLayout のエピソードはまだまだ続きます。YouTube のプレイリストからご覧ください。MotionTags のYouTube プレイリストもチェックすることをおすすめします。MotionLayout API の特定の領域を詳しく取り上げたスクリーンキャストが掲載されています。
MAD Skills で連載しているコンテンツは、YouTube の MAD Skills プレイリスト、Medium のブログ記事(英語)、またはすべてのリンクが掲載されているランディング ページからご確認ください。
AndroidX ライブラリで、たくさんの最新増分リリースが公開されています。以下のような重要な安定版リリースが含まれていますのでご確認ください。
work-multiprocess
Manuel Vivo が投稿した新しいブログ記事(英語)で、Hilt の階層中に存在する新しい ViewModelComponent について説明しています。ViewModelComponent を使うと、型を特定の ViewModel にスコープさせることができます。一方、ActivityRetainedComponent のスコープ付き型は、すべての ViewModel で共有されます。
ViewModelComponent
ViewModel
ActivityRetainedComponent
Ben Weiss が WorkManager ライブラリの最新リリース、バージョン 2.5.0 に関するブログ記事を公開しました。このリリースでは、マルチプロセス アプリで WorkManager を簡単に使えるようになります。合わせて、バグの修正や一般的な改善も行われています。
MotionTags は、MotionLayout API の特定の領域を徹底解説するスクリーンキャスト動画集です。シリーズの最後の 2 つのエピソードが最近投稿されました。
このエピソードでは、以前公開した KeyCycle を解説している動画の続きとして、複雑なアニメーションの作り方を説明しています。
シリーズ最後のエピソードでは、KeyTrigger を取り上げています。これを使うと、アニメーションの状態(「トリガー」)に応じて発生するコールバックを通して、アプリでアニメーションを制御できます。
KeyTrigger
前回の Now in Android 以降、Android Developers Backstage に新しいエピソードが投稿されています。以下のリンクまたはお気に入りのポッドキャスト クライアントでご確認ください。
今年最初の Android Developers Backstage では、WindowManager チームの Wale Ogunwale と Rob Carr から話を聞きました。WindowManager の歴史(と複雑さ)、そして最新の進展やこの先実現する機能について話しています。