ライブタイルはスタートスクリーンに表示されているアプリのアイコンに対し、何らかのメッセージを動的に表示できるようにするものです。
今回はライブタイルを作成する方法について見ていきます。
まず、ライブタイルに表示するデータは、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メソッドはページロード時に実行するようにしています。
このサンプルを実行すると以下のようにタイルに取得したメッセージが表示されます。
ニュースや予定など通知したい場合に活用することができますね。


コメント