2

在我的應用程序中,我需要安排通知給用戶指定的日期和時間(例如5月1日10:00)。此時必須顯示通知,當用戶點擊此通知時,我的應用程序應該打開。我看到了兩種方法:

1.計劃的通知。
但是,如果我使用Alarm類,則無法更改通知的標題(即英文版SDK中的「Alarm」)。
提醒類大多適合我,但當它出現在鎖定屏幕上方並且用戶單擊它時,我的應用程序無法打開。
可能會有這樣的時刻嗎?
另外我想擺脫listpicker隨着時間(5分鐘,10分鐘,1小時等)和「貪睡」按鈕,但它並不重要。

2.來自後臺代理的通知(或平鋪)通知。
但我不確定我的後臺代理在正確的時間運行。據我瞭解,系統運行的後臺代理程序,其推出受到幾個因素(手機電池電量,正在運行的應用程序或其他後臺代理程序的存在)的限制。它甚至可能不會開始。有一種方法可以通過使用LaunchForTest在特定的時間強制代理,但是在任何地方都會寫這種方法只能用於調試目的,並且在應用程序發佈之前必須將其刪除。
如果我不刪除此方法,我的應用程序是否會通過認證?另外,我不喜歡烤麪包通知只打開10秒,然後消失無蹤。可以做些什麼呢?

我需要通知保證在正確的時間顯示,當您點擊它時我的應用程序已打開。做這個的最好方式是什麼?
如果這在Windows Phone 7中不可行,那麼在Windows Phone 8中有這種方法嗎?

謝謝。如何在指定時間安排通知給用戶

+0

您可以使用外部通知服務器並從那裏發送Toast通知。 – MarcinJuraszek 2013-03-28 10:48:34

+0

是的,但據我所知推送通知並不總是在正確的時間到來(可能會延遲)。另外,用戶可能沒有互聯網,那麼推送通知不會來到他身上。 – Lumen 2013-03-28 10:59:43

回答

3

我認爲你應該使用提醒。當你點擊它們你的應用程序將打開。 喜歡的東西:

var reminder = ScheduledActionService.Find("MyAppReminder"); 
if (reminder != null) 
{ 
    ScheduledActionService.Remove("MyAppReminder"); 
} 

reminder = new Reminder("MyAppReminder") 
{ 
    Title = "Bla", 
    BeginTime = DateTime.Now.AddDays(2), 
    Content = message, 
    NavigationUri = new Uri("/Start.xaml", UriKind.Relative), 
    RecurrenceType = RecurrenceInterval.None 
}; 

ScheduledActionService.Add(reminder); 

至於什麼時候通知出現在鎖屏上不打開應用程序,這是有道理的。如果您可以直接從鎖屏打開應用程序,將會是一個很大的安全漏洞!希望能幫助到你。

+0

是的,你說的是安全性,但當用戶點擊它們時,Toast Notifications會打開它的應用程序。但我不喜歡它們,因爲它們的壽命很短(10秒鐘,沒有通知中心來存儲它們,我對此非常失望)。 – Lumen 2013-03-28 11:10:39

相關問題