【ストアアプリ】タイル通知(TileUpdateManager)について

公開日: : 最終更新日:2015/10/20 Blog, Microsoft ,

こんにちは。
ストアアプリでタイル通知を行う方法を調べました。

前回のトースト通知と方向性は同じで、

  1. XMLテンプレートを取得
  2. DOMでXMLを編集
  3. タイル通知処理を呼び出す

の流れになるようです。

private void btn1_Click(object sender, RoutedEventArgs e)
{
    //using Windows.UI.Notifications
    //using Windows.Data.Xml.Dom

    //====================================================
    //タイルのテンプレートを取得しDOMで設定を行う
    //====================================================
    XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150PeekImageAndText01);
    //--テンプレート構成--
    //<tile>
    //  <visual>
    //    <binding template="TileSquarePeekImageAndText01">
    //      <image id="1" src="image1" alt="alt text"/>
    //      <text id="1">Text Field 1 (larger text)</text>
    //      <text id="2">Text Field 2</text>
    //      <text id="3">Text Field 3</text>
    //      <text id="4">Text Field 4</text>
    //    </binding>  
    //  </visual>
    //</tile>

    //Imageを設定
    XmlNodeList elementsImg = tileXml.GetElementsByTagName("image");
    ((XmlElement)elementsImg[0]).SetAttribute("src", "ms-appx:///Assets/nezumi.png");

    //Textを設定
    XmlNodeList elementsTxt = tileXml.GetElementsByTagName("text");
    elementsTxt[0].AppendChild(tileXml.CreateTextNode("Tile Title"));
    elementsTxt[1].AppendChild(tileXml.CreateTextNode("Content1"));
    elementsTxt[2].AppendChild(tileXml.CreateTextNode("Content2"));
    elementsTxt[3].AppendChild(tileXml.CreateTextNode("Content3"));

    //====================================================
    //XMLからタイル通知を作成し、TileUpdateManagerに渡す
    //====================================================
    TileNotification tile = new TileNotification(tileXml);
    TileUpdateManager.CreateTileUpdaterForApplication().Update(tile);
}

参考:タイル テンプレートのカタログ

実行結果
Tile3

Tile2

この2つのタイルが定期的に切り替わって表示されます。
次回はバッジ通知の機能を追加してみたいと思います。

関連記事

no image

【VB.NET】DataGridViewで行の最大高を設定

DataGridViewにおける行の最大高さを設定するメモ 最大高さに満たない場合は内容を全て表示

記事を読む

no image

UWPでOSバージョン番号の取得

Windows.System.Profile.AnalyticsInfo.VersionInfo.D

記事を読む

no image

【iPhoneアプリ】背景画像を設定する

ImageResourceにBg.pngという背景画像を登録しておく 背景を設定するタイミング

記事を読む

no image

BOT向け自然言語処理サービスまとめ

自然言語処理 自然言語処理(しぜんげんごしょり、英語: natural language p

記事を読む

【Cocos2d-x】iPhone実機でプロジェクトを動かすまで

Macを購入してCocos2d-xデビューしたが、 iPhone実機で動かすまでをメモ

記事を読む

AdMob,Nendメディエーション時の優先順位

先日リリースしたアプリでは勉強を兼ねて、 AdMob+Nendでのメディエーション広告を実装し

記事を読む

no image

Microsoft.Expression.Encoderで動画のフレーム画像を取得

動画ファイルから指定したフレーム画像を取得する。 Microsoft.Expression.Enco

記事を読む

no image

UWPとAzure Web AppsでOData

超メモ。走り書き。 Azure上にSQLデータベースコードファーストなAPIをODataで作成する。

記事を読む

【iPhoneアプリ】多言語対応させる2

今回はコード内の文字列を多言語化する ファイルを追加する。  

記事を読む

no image

【C#,WinForms】XMLデータをListViewに表示し、チェック項目のみXML保存させる

MSDNフォーラムの以下についてサンプルを組んだので掲載。 ListViewでチェックされた値

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

PAGE TOP ↑