我正在为我的应用程序使用活动磁贴。用于更新磁贴的XML是动态生成的,并且有时更新失败,因为内容(我不控制活动磁贴中显示的内容,我从webservices获取)。
我曾经使用API通过TileWideSmallImageAndText02
的实例构建通知,但我现在需要直接在代码中构建XML。我的代码的简化版本:
string tileXml = "<tile><visual><binding template=\"TileWideSmallImageAndText02\">" +
"<image id=\"1\" src=\"" + image + "\" alt=\"alt text\"/>"
+ "<text id=\"1\">" + title + "</text>"
+ "<text id=\"2\">" + date + "</text>"
+ "<text id=\"3\">" + time + "</text>"
+ "<text id=\"4\">" + length + "</text>"
+ "</binding>"
+ "</visual>"
+ "</tile>";
Windows.Data.Xml.Dom.XmlDocument tileDOM =
new Windows.Data.Xml.Dom.XmlDocument();
tileDOM.LoadXml(tileXml);
TileNotification tile = new TileNotification(tileDOM);
TileUpdateManager.CreateTileUpdaterForApplication().Update(tile);
正如我之前所说,通知可能会失败;失败我的意思是瓷砖没有更新。看起来如果我将所需的任何XML内容发送到Update
,则不会引发任何异常,我将永远不知道实时磁贴是否有效。
如果我从我使用的网络服务收到格式错误的数据,拦截失败的好方法是什么?
答案 0 :(得分:0)
据我所知,没有办法检查更新是否失败。
在将文件传递给Notification服务之前,您可以通过使用库(可能PushSharp)或清理从Web服务中检索到的数据来保护自己。