タイル通知をスケジュールする方法 (HTML)
[ この記事は、Windows ランタイム アプリを作成する Windows 8.x および Windows Phone 8.x 開発者を対象としています。Windows 10 向けの開発を行っている場合は、「最新のドキュメント」をご覧ください]
注 JavaScript を使わない場合は、「タイル通知をスケジュールする方法 (XAML)」をご覧ください。
ここでは、特定の時間に表示されるようにタイルの通知をスケジュールする方法を示します。
理解しておく必要があること
テクノロジ
- Windows Runtime
必要条件
- タイルと通知に関する用語と概念についての実用的知識。詳しくは、「タイル、バッジ、通知」をご覧ください。
- Windows ランタイム API を使って JavaScript で基本的な Windows ストア アプリを作成できること。詳しくは、「JavaScript を使った初めての Windows ストア アプリの作成」をご覧ください。
手順
ステップ 1: テンプレートを指定する
配信時間を指定する前に、通知を作る必要があります。
注 Windows 8 システムで getTemplateContent が呼び出された場合、バージョン 1 テンプレートが返されます。Windows 8.1 システムでこのメソッドが呼び出されると、バージョン 2 テンプレートまたはバージョン 3 テンプレート (電話のみのテンプレートの場合) を返します。ただし、アプリがマニフェストで Windows 8 の互換性を指定している場合、このメソッドは Windows のバージョンに関係なく、バージョン 1 テンプレートを返します。このトピックでは、バージョン 2 テンプレートを使います。
var template = Windows.UI.Notifications.Tile.tileSquare150x150Text01;
var tileXml = Windows.UI.Notifications.TileUpdateManager.getTemplateContent(template);
ステップ 2: タイル通知のコンテンツを指定する
スケジュールされていない通知の場合と同じであるため、ここでは説明しません。詳しくは、「クイック スタート: タイルの更新の送信」をご覧ください。
ステップ 3: タイル通知を配信する時間を指定する
この例では、通知が 3 秒後に表示されるように指定しています。この例では、JavaScript の Date オブジェクトを使って現在時刻を取得しています。
var currentTime = new Date();
var startTime = new Date(currentTime.getTime() + 3 * 1000);
ステップ 4: スケジュールされたタイル通知オブジェクトを作成する
タイル通知の内容とスケジュールされた配信時間をコンストラクターに送ります。
var scheduledTile = new Windows.UI.Notifications.ScheduledTileNotification(tileXml, startTime);
ステップ 5: スケジュールされたタイル通知に ID を指定する (省略可能)
この ID は 16 文字以下である必要があります。
scheduledTile.id = "Future_Tile";
ステップ 6: タイル通知をスケジュールに追加する
TileUpdater オブジェクトを作ります。このオブジェクトを使って、通知をスケジュールに追加します。
var tileUpdater = Windows.UI.Notifications.TileUpdateManager.createTileUpdaterForApplication();
tileUpdater.addToSchedule(scheduledTile);