2014-01-10 111 views
0

當用戶離開我的iOS應用程序時,我想安排一個本地通知來提醒他我的應用程序。什麼是做這件事的正確的地方?我不能我何時安排本地通知

之間

- (void)applicationWillResignActive:(UIApplication *)application 

- (void)applicationDidEnterBackground:(UIApplication *)application 
選擇,也有在案件沒有區別?

我還有第二個問題。當我的應用程序啓動(或者如果用戶按下通知,或從啓動板),我應該顯然刪除所有提醒通知。我想我應該做它在

- (void)applicationDidBecomeActive:(UIApplication *)application 

- (void)applicationWillEnterForeground:(UIApplication *)application 

也許另一種方法?或者它再次沒有區別?

+0

''我想安排一個本地通知來提醒他我的應用程序「'如果某個應用程序一直告訴我關於它自己的信息,這可能會讓我感到頭疼,更可能的是我會刪除它。在我看來,這似乎是一件壞事。 – Popeye

+0

@Popeye我同意,但我必須服從設計文檔......我只是一名開發人員。據我所知,這是一個非常常見的設計。 – Nick

+0

就像你說的你只是開發者,但客戶/分析師/設計師應該聽開發者。如果我是你,我只會提出來讓他們至少重新考慮一下。但是如果你不得不我同意Wain的答案。 – Popeye

回答

1

全部在applicationWillEnterForeground。刪除所有與該應用有關的用戶無關緊要的舊通知,並在此使用會話後安裝任何新通知。如果通知在用戶仍在使用應用程序時觸發,則不需要顯示任何內容(系統也不會顯示任何內容)。

+0

嚴格地說,我應該在使用完應用程序1天后喚醒用戶,而不是在他開始使用應用程序1天后。這就是爲什麼我有興趣可以在'applicationDidEnterBackground'中安排新的通知嗎? – Nick

+0

一般來說,是的,它應該沒問題。 – Wain