ライブタイルはスタートスクリーンに表示されているアプリのアイコンに対し、何らかのメッセージを動的に表示できるようにするものです。
今回はライブタイルを作成する方法について見ていきます。
まず、ライブタイルに表示するデータは、XMLファイルとして準備します。
このXMLファイルの書式は、タイルテンプレートカタログに掲載されているフォーマットを使用します。
今回はTileSquareText02というテンプレートを使用します。
作成したXMLは以下の通りです。
<tile> <visual> <binding template="TileSquareText02"> <text id="1">予定</text> <text id="2">友達とランチ</text> <text id="3"></text> </binding> </visual> </tile>
プログラム側では、上記XMLのtemplate属性から使用しているテンプレートを自動で判断します。
作成したXMLファイルは、アプリが読み取りできるところに置きます。
今回はローカルのWebサーバーにToastData.phpというファイル名で上記のXMLファイルを配置しました。
次に、ストアアプリのコードを作成します。
コード例は以下の通りです。
VBの例
Imports Windows.UI.Notifications Imports Windows.Data.Xml.Dom Private Sub Page_Loaded(sender As Object, e As RoutedEventArgs) TileUpdate() End Sub Private Sub TileUpdate() Dim updater = TileUpdateManager.CreateTileUpdaterForApplication() updater.StartPeriodicUpdate(New Uri("http://localhost/ToastData2.php"), PeriodicUpdateRecurrence.HalfHour) End Sub
C#の例
using Windows.UI.Notifications; using Windows.Data.Xml.Dom; private void Page_Loaded(object sender, RoutedEventArgs e) { TileUpdate(); } private void TileUpdate() { var updater = TileUpdateManager.CreateTileUpdaterForApplication(); updater.StartPeriodicUpdate(new Uri("http://localhost/ToastData.php"), PeriodicUpdateRecurrence.HalfHour); }
最初にTileUpdateというメソッドを作成します(やり方はいろいろあると思います)。
TileUpdateメソッドの中では、TileUpdateManagerクラスを使用して、SatrtPeriodicUpdateメソッドを呼び出しています。
第1引数は、ライブタイルに表示するXML取得先のURLを、第2引数にはライブタイルを更新する時間の間隔を設定します。
上記の例では、更新間隔を30分ごとにしているので、30分経過するごとにWebサーバーからXMLデータを取得してライブタイルのメッセージを更新します。
作成したTileUpdateメソッドはページロード時に実行するようにしています。
このサンプルを実行すると以下のようにタイルに取得したメッセージが表示されます。
ニュースや予定など通知したい場合に活用することができますね。
コメント