パッケージの依存関係を追加する
手順6: アプリのインストール時またはアップデート時にEPGタスクをスケジュールする
アプリのインストール時に無料のライブコンテンツを提供する場合や、アプリのアップデート時にチャンネルラインナップデータを更新する場合は、onInstallOrUpdateTaskを作成または更新して、EPG同期タスクをスケジュールする必要があります。そうでない場合は、この手順をスキップできます。
手順1: マニフェストファイルでonInstallOrUpdateTaskを宣言する
[components]
## <その他のコンポーネント関連エントリ>
[[components.task]]
## 「アプリのインストール/アップデート時」に実行する必要があるタスクを定義します。
id = "<パッケージID>.onInstallOrUpdateTask"
runtime-module = "/com.amazon.kepler.headless.runtime.loader_2@IKeplerScript_2_0"
## 各コンポーネントのプロセスグループを定義します
[processes]
## <その他のプロセス関連エントリ>
[[processes.group]]
component-ids = ["<パッケージID>.onInstallOrUpdateTask"]
[tasks]
## インストール時とアプリのアップデート時にonInstallOrUpdateTaskタスクを実行するようにシステムに指示します。
[[tasks.work]]
component-id = "<パッケージID>.onInstallOrUpdateTask"
mode = "install"
手順2: アプリのタスクを定義する
srcフォルダに以下の内容のOnInstallOrUpdate.tsファイルを作成して、アプリのインストール/アップデート時のタスクを定義します。このタスクは、アプリのインストール時と(OTA)アップデート時に実行されることに注意してください。
import {EpgSyncTaskScheduler} from '@amazon-devices/kepler-epg-sync-scheduler';
import { UtcTimePropertiesBuilder } from '@amazon-devices/kepler-epg-sync-scheduler';
const doTask = async (): Promise<void> => {
console.info('EPG同期タスクのスケジュールを設定します');
// TODO: 以下のオプションのいずれかを選択して、EPG同期タスクをスケジュールします。
// scheduleTask()またはscheduleTaskWithExecutionWindow()を複数回呼び出した場合は、
// 最後に呼び出したEPG同期タスクメソッドが有効になり、再起動しても永続化されます。
// オプション1: EPG同期タスクを一定の間隔でスケジュールします。
// これを有効にする場合は、tst/task/OnInstallOrUpdateTask.test.tsでscheduleTaskのテストが有効になっていることを確認してください。
await EpgSyncTaskScheduler.scheduleTask(
'<パッケージID>.epgSyncTask', // 同期タスクのコンポーネントID
60 * 24, // 24時間を分で表した値
);
// オプション2: 実行時間帯を指定してタスクをスケジュールします。たとえば、毎日午前2時~午前4時(UTC)の間にタスクを実行します。
// これを有効にする場合は、tst/task/OnInstallOrUpdateTask.test.tsでscheduleTaskWithExecutionWindowのテストが有効になっていることを確認してください。
// let timeProperties = new UtcTimePropertiesBuilder()
// .startHour(2)
// .startMinute(0)
// .startSecond(0)
// .executionWindowInMinutes(120)
// .build();
// await EpgSyncTaskScheduler.scheduleTaskWithExecutionWindow(
// '<パッケージID>.epgSyncTask', // 同期タスクのコンポーネントID
// timeProperties,
// );
};
export default doTask;
onInstallOrUpdateタスクが実行されると、次のようなログが表示されます。
INFO ktf.tm.nests:Successfully scheduled EPG Sync task
Last updated: 2025年9月30日

