この記事は Caren Chang による Android Developers Blog の記事 "MAD Skills WorkManager : Wrap-Up" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
WorkManager についての MAD Skills ミニシリーズが終わりました。初めてこのライブラリを使う方のために WorkManager を紹介し、WorkManager のコードのテストやデバッグを行う方法など、高度な使い方へと話を進めました。シリーズ最後のエピソードでは、GCMNetworkManager や FirebaseJobDispatcher を使った古いコードの代わりに WorkManager を使う方法を説明しました。
この記事では、紹介した内容について簡単にまとめます。
最初のエピソードでは、WorkManager Codelab を題材に WorkManager の基本について説明しました。まずは、必要な作業を定義する方法と、その作業をスケジュールする方法について学びました。次に、種類の異なる作業(重複しない作業と定期的な作業)を実現する方法に進みました。WorkManager がどのように作業をスケジュールするかについて理解を深めるため、エピソードの最後では App Standby Bucket について説明しました。
初めて WorkManager を使う方には、以下の記事(英語)も確認することをお勧めします。
続いて、WorkManager がマルチスレッドをどう扱うかについて Ben が詳しく説明しました。スレッドを使う場合は、Executor、コルーチン、RxJava のいずれかを使うことができます。Ben は、WorkManager でそれぞれのアプローチを利用する方法についてデモを行いました。エピソードの最後では、作業が完了したときに結果を返し、UI を更新できるようにする方法を紹介しました。
WorkManager とコルーチンを組み合わせて使いたい方には、Florina が公開したこちらのブログ記事(英語)もご覧ください。
エピソード 3 では、WorkManager の初期化をカスタマイズする方法と、複数のプロセスにまたがるアプリをサポートする方法について説明しました。デベロッパーの皆さんから、テストやデバッグに関するたくさんの質問が寄せられたので、Ben はワーカーをテストする方法や役に立つデバッグ テクニックも紹介しました。
最後のエピソードでは、古いジョブ スケジュール ライブラリ(GCMNetworkManager と FirebaseJobDispatcher)から WorkManager に移行する方法を取り上げました。ターゲット API レベルが 30 以上のアプリでは、Android Marshmallow(6.0)以降を実行しているデバイスで GCM NetworkManager と FirebaseJobDispatcher が動作しなくなります。まだどちらかのライブラリを使っている方は、WorkManager を使うようにアプリをアップデートしてください。
Android GDE の Hugo Visser さんが、最近携わった変更管理アプリで WorkManager を使うことにした理由と、開発プロセスでこのライブラリがどう役立ったかについて話してくれました。
シリーズの最後は、私たちが皆さんから寄せられた WorkManager 関連の質問に答えるリアルタイム Q&A セッションを行いました。WorkManager の今後の計画や、重複した作業の扱い、失敗した作業の再試行などの質問に対する回答をご覧ください。
この記事は Florina Muntenescu による Android Developers Blog の記事 "MAD Skills Kotlin and Jetpack: wrap-up" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
今回は MAD Skills シリーズの 1 つ、Kotlin と Jetpack についての動画と記事をまとめました。Android コードの表現力と簡潔さ、安全性を向上させ、Kotlin で非同期コードを実行しやすくするさまざまな方法を取り上げています。
それぞれのエピソードから、Kotlin と Jetpack についての最新情報をご確認ください。いくつかの具体的な API を取り上げ、API の使い方だけでなく、API が内部的にどのように動作しているか解説しています。また、すべてのエピソードには対応するブログ投稿があり、そのほとんどにサンプルか Codelab へのリンクが含まれているので、実際に試してみたり、コンテンツに関する理解を深めたりできます。また、Jetpack や Kotlin のエンジニアが登場するリアルタイム Q&A も実施しました。
このエピソードでは、Jetpack KTX 拡張機能を使って、Android と Jetpack のコーディングを簡単、快適、そして Kotlin らしくする方法を取り上げました。現在のところ、20 以上のライブラリに KTX 版があり、その中から特に重要なものを紹介します。core-ktx は、Android プラットフォームに由来する API を Kotlin らしく書けるようにする機能を提供しています。また、LiveData や ViewModel などの API と組み合わせてユーザー エクスペリエンスの向上を図れるいくつかの Jetpack KTX ライブラリも紹介します。
動画またはブログ記事(英語)をご覧ください。
エピソード 2 では、コルーチンと Flow を使って API をシンプルにする方法と、suspendCancellableCoroutine API と callbackFlow API を使って独自のアダプタを作る方法について説明します。このトピックを実際に試してみたい方は、Kotlin 拡張機能ライブラリの作成 Codelab をご覧ください。
動画を視聴するか、ブログ記事(英語)でご確認ください。
このエピソードでは、実際に Room を使ってみます。その上で、Kotlin を使って Room のテーブルやデータベースを作る方法、挿入などの 1 回限りの suspend 操作を実装する方法、Flow を使った監視可能クエリーについて簡単に確認します。コルーチンと Flow を使うと、Room はすべてのデータベース操作をバックグラウンド スレッドに移してくれます。Room のクエリーの実装方法やテスト方法については、動画またはブログ記事(英語)をご覧ください。実際に試してみたい方は、ビューで Room を使う Codelab をご覧ください。
エピソード 4 では、WorkManager を使って作業を簡単にする方法について説明します。この機能を使うと、非同期タスクのスケジュールを設定して、アプリが閉じられた場合や、デバイスが再起動した場合にも実行されることが期待されるタスクを、即時実行または遅延実行できます。このエピソードでは、WorkManager の基本について説明し、CoroutineWorker などの Kotlin API についても解説しています。
こちらの動画またはこちらのブログ記事(英語)をご覧ください。また、ぜひ WorkManager Codelab で実際に体験してみてください。
エピソード 5 では、Android の Google Developer Expert の Magda Miu さんが Kotlin の基本 API と CameraX を使った経験についてお話ししています。
最後のエピソードでは、リアルタイム Q&A を実施しました。司会の Chet Haase のほか、ゲストとして Architecture Components テックリードの Yigit Boyar、Kotlin プロダクト マネージャーの David Winer、そしてデベロッパー リレーションズ エンジニアの Manuel Vivo と私が参加し、YouTube、Twitter などから寄せられた質問に回答しています。
Reviewed by Yuichi Araki - Developer Relations Team and Hidenori Fujii - Google Play Developer Marketing APAC
この記事は Christopher Katsaros による Android Developers Blog の記事 "What’s your MAD score?" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
MAD Skills シリーズを通して最先端の Android 開発(MAD)についてさまざまなことをお話ししてきました。そして今回は、皆さんの MAD スコアについてお知らせします。2020 年 12 月 15 日(日本時間 12 月 16 日)、MAD スコアカードを公開しました。これは、皆さんが使っている Jetpack ライブラリの数や、Kotlin でコーディングしているアプリの割合などを使い、皆さんの Andorid 開発がどれだけ最新であるかを示すスコアです。
MAD スコアカードは Android Studio を使って、アプリが Android App Bundle でどれくらいサイズを削減したかなどの情報を示します。また、特定の Jetpack ライブラリや Kotlin 機能など、皆さんが使う可能性がある主要な MAD テクノロジーにもそれぞれスポットライトを当てています。さらに、皆さんの最も MAD なスキルに基づいて、特別な MAD キャラクターも表示されます。
ご自身の MAD スコアは、新しい Android Studio プラグインを通じて確認できます。スコアカードを確認して共有する方法は、以下のとおりです。
スコアカードを確認できたら、MAD Skills の各エピソードもご覧ください。この動画と記事のシリーズでは、最先端の Android 開発の最新技術を使って、優れたアプリを簡単に作る方法を説明しています。ナビゲーション、Kotlin、Android Studio などの各トピックは、3 週間のシリーズとして構成されています。各トピックの最後には、Q&A で皆さんの質問に回答します。マテリアル デザイン コンポーネント、App Bundle、ナビゲーションなど、以前のトピックも確認できます。今後のトピックは、YouTube の Android Developers で公開します。
ここから MAD スコアカードを確認して、共有しましょう!
Reviewed by Hidenori Fujii - Google Play Developer Marketing APAC