WEBVTT

00:00.050 --> 00:05.630
ほとんどのバックグラウンド処理は､ 持続的な作業によって達成されるのがベストだからだ｡ 

00:05.660 --> 00:10.520
Workmanagerは､ バックグラウンド処理のための主要なコマンドAPIである｡ 

00:10.520 --> 00:15.980
ワークマネージャーは､ Androidアプリケーションのバックグラウンドタスクを簡素化して管理します｡ 

00:15.980 --> 00:24.290
アプリがフォアグラウンドでなくても､ バックグラウンドでタスクをスケジュールし､ 実行することができる｡

00:24.290 --> 00:30.680
ワークマネージャーは､ 効率的にタスクを処理し､ ネットワーク接続やデバイスの状態を考慮し､ 定期的なスケジューリングをサポートするなど､

00:30.680 --> 00:34.730
いくつかの利点を提供する｡

00:34.730 --> 00:41.600
Androidでは､ バックグラウンドで実行されるタスクは､ UIコンポーネントと密に結合されるべきではない｡ 

00:41.600 --> 00:50.420
ワーク・マネージャーは､ バックグラウンド・タスクとUIスレッドを分離し､ スムーズで応答性の高いユーザー・エクスペリエンスを保証します｡

00:50.420 --> 00:55.850
ワークマネージャーは､ タスクをスケジュールするためのシンプルで信頼性の高い方法を提供します｡ 

00:55.850 --> 01:05.870
アプリが実行されていないときでもタスクが実行されるようにし､ 失敗した場合は再スケジューリングする｡

01:05.870 --> 01:14.060
ワークマネージャーは､ バッテリーの状態､ ネットワークの接続性､ その他の制約などの要素を考慮してタスクを実行する｡

01:14.060 --> 01:22.430
条件が整えば､ 不必要なリソース消費とネットワーク利用を避けることができる｡ 

01:22.430 --> 01:29.740
さらに､ Work Managerは､ エラー処理と再試行ポリシーのための組み込みメカニズムを提供する｡ 

01:29.750 --> 01:43.060
また､ Work Managerはタスクの連鎖を可能にするので､ 複雑なワークフローを作成し､ タスクが特定の順序または並列で実行されるようにすることができます｡

01:43.070 --> 01:49.190
ワークマネージャーアプリケーションで目にする用語について学びましょう｡ 

01:49.190 --> 01:56.150
まず､ ワーカーはAndroid Work Managerライブラリの基本コンポーネントです｡ 

01:56.150 --> 02:03.410
これは､ バックグラウンドで実行される必要がある実際の作業やタスクの単位を表している｡ 

02:03.410 --> 02:09.920
Worker クラスを拡張し､ work メソッドをオーバーライドして Worker を作成します｡ 

02:09.920 --> 02:15.350
do workメソッドの中で､ バックグラウンド・タスクを実行するコードを定義する｡ 

02:15.350 --> 02:21.980
これには､ ネットワーク操作､ データベース更新､ ファイル処理などが含まれる｡ 

02:22.010 --> 02:31.720
ワーカーは､ ファイルのダウンロード､ 通知の送信､ データの処理など､ 特定のタスクを実行する責任を負います｡

02:31.730 --> 02:40.460
スレッドのライフサイクルと再スケジューリングの複雑さを､ 開発者であるあなたから抽象化します｡ 

02:40.460 --> 02:49.280
作業要求 作業要求は､ ワーカーが実行する作業を定義し､ その作業を実行するための様々な制約や条件を指定するオブジェ

02:49.280 --> 02:54.980
クトである｡

02:54.980 --> 03:02.480
これには､ 実行するワーカーのタイプ､ ワーカーに渡す入力データ､ ネットワーク接続要件やバッテリーの制約など､

03:02.480 --> 03:11.720
作業を開始するために満たさなければならない制約などの情報が含まれます｡

03:11.720 --> 03:18.890
ワーカーリクエストクラスには､ 1回限りの作業リクエストや定期的なリクエストなど､ さまざまな種類があります｡ 

03:18.920 --> 03:27.500
一度だけ実行されるべきタスクに使用される1回限りのワークリクエストと､ 特定の間隔で繰り返される必要があるタスクに使用される定期的なワークリクエストは､

03:27.500 --> 03:38.720
定期的な更新やバックグラウンド同期に適しています｡

03:38.720 --> 03:46.670
カスタムワークリクエストクラスを作成して､ より複雑な作業要件を定義することもできます｡ 

03:46.700 --> 03:53.180
ワークマネージャーは､ バックグラウンドタスクを管理するための中心的なエントリーポイントです｡ 

03:53.180 --> 04:01.610
Android Work Managerライブラリーが提供するクラスで､ 作業要求のキューイング､ スケジュール､

04:01.610 --> 04:04.630
実行の監視に使用される｡

04:04.640 --> 04:13.250
ワークマネージャーは､ デバイスの状態制約､ バッテリーの最適化､ ネットワークの接続性など､

04:13.250 --> 04:18.830
さまざまな要因を考慮したタスクのスケジューリングを行う｡

04:18.860 --> 04:28.490
アプリがフォアグラウンドでないときでも､ タスクが確実かつ効率的に実行されるようにする｡ 

04:28.490 --> 04:37.130
開発者は､ Work Manager Getインスタンス・メソッドを使用してWork Managerのインスタンスを取得し､ それを使用してバックグラウンド・タスクをキューに入れ､

04:37.130 --> 04:43.340
管理し､ 進捗状況を観察し､ タスクを処理する｡

04:43.340 --> 04:45.110
完成度とエラー｡ 

04:45.140 --> 04:56.300
Overall Work managerは､ バックグラウンドタスクの管理を簡素化し､ リソースの使用を最適化し､ 全体的なユーザーエクスペリエンスを向上させます｡

04:56.300 --> 04:59.810
アンドロイド開発者にとっては､ これを確実にするための重要なツールだ｡ 

05:00.000 --> 05:10.350
アプリがバックグラウンドで効率的かつ確実に実行され､ ユーザーの期待やデバイス固有の制約を満たすこと｡
