2013-02-26 152 views
0

我有一個應用程序,是大把的引文和警句的「資料庫」;我想每隔5秒更換我的應用程序的圖塊,通過從我的應用程序隨機發送一些格言!發送推送通知,從應用程序內改變瓷磚

可能嗎?或者我必須支付一些Azure服務器服務?在這種情況下是否存在免費的東西?

非常感謝。

回答

2

您可以從您的應用程序直接改變瓷磚:

var template = notifications.TileTemplateType.TileWideText01;      
var xml = notifications.TileUpdateManager.getTemplateContent(template); 
xml.getElementsByTagName("text")[0].appendChild(xml.createTextNode("My tile text")); 
var myNotification = new notifications.TileNotification(xml); 
notifications.TileUpdateManager.createTileUpdaterForApplication().update(myNotification); 

many different templates你可以選擇和你應該同時更新廣泛,並在同一時間的平方瓷磚,因爲你不知道用戶在他的開始屏幕上有什麼。 Here有關如何做到這一點的更多細節。

我不知道你就可以得到它每5秒鐘更新,雖然。您只能在應用運行時或從BackgroundTask撥打上面的代碼。如果您的應用程序處於鎖定屏幕,則可以使用TimeTrigger,並使其以15分鐘或更短的時間間隔運行。如果不是,那麼唯一的選擇是MaintenanceTrigger,間隔相同,只有在設備插入時纔會運行。

要更頻繁地更新磁貼更新,即使未插入設備,您也可以將schedule tile notifications提前。當你的應用程序正在運行,並從您BackgroundTask您可以添加多達4096點特定的時間瓦的變化和增加新的 只要你的應用程序或BackgroundTask再次運行。

1

可以做到這一點,最好的辦法是從你的後臺任務安排您的通知。您的後臺任務每15分鐘運行一次(而不是更早),因此您必須在此時安排它們。

在MS的同事,不得不做類似的事情,因爲他需要每一秒(實際上是不同的人比下面的鏈接,而是一個非常類似的概念)的更新,並且它完成了同樣的方式。我有一個輔助類另一個同事,如果你願意的話,我開發了它 - 給我發一封電子郵件給微軟,然後我會發送它。我會概率避開很快做就可以了博客條目但在那之前:)

一些代碼,應該讓你最的方式有:

Tile update every minute

掛斷 的Tile updates from Background Task