2013-03-01 43 views
0

餘米的4.3模擬器和3.2的Xcode如何讓NSTimer和一些操作繼續在後臺工作?

與計時器每分鐘在一些網站上NSTimer檢查的消息,如果有消息,應用程序將與聲音警報消息的應用程序編寫iOS應用「有什麼新的。 ..網站!「

但是,如果我關閉應用程序或它去睡覺,計時器停止在背景上。所以,我已經看了很多文章像 http://www.codeproject.com/Articles/124159/Hour-21-Building-Background-Aware-Applications

How keep NSTimer when application entering background?

和他們非讓我。我的問題:

1)我應該使用哪些技術或技巧來製作此類應用程序?一個好人告訴我,我只需要使用推送通知。

2)如果使用推送通知,我一定從蘋果獲得開發者計劃$ 100 /年,留在我的Mac書總是開啓推送通知創建服務器?

謝謝!

+0

您必須每年支付100美元,只需爲推送通知發佈iDevices的應用程序。 – trumpetlicks 2013-03-01 23:36:07

+0

你也應該考慮升級到Xcode 4.6。 Xcode 3.2很舊。如果需要,您仍然可以支持iOS 4.3。但是現在大多數人都在運行iOS 6.x。除非你有特定的理由,否則支持iOS 4.3是毫無意義的。 – rmaddy 2013-03-02 00:17:22

回答

1

在後臺運行只有少數批准的用途:音樂,導航,VOIP。如果您的應用沒有執行其中一項操作,則它只能在後臺運行長達10分鐘,然後由操作系統暫停。

推送通知需要服務器。你要麼自己運行它,要麼使用像urbanairship.com這樣的服務。推送通知只是在設備上顯示爲一個提醒。它不會讓您的應用程序醒來,除非用戶通過響應警報來完成。

請仔細閱讀本: http://developer.apple.com/library/ios/#documentation/iphone/conceptual/iphoneosprogrammingguide/ManagingYourApplicationsFlow/ManagingYourApplicationsFlow.html

如果您還沒有支付$ 100的,你不能真正的設備上運行你的應用程序。我不認爲模擬器能夠正確模擬背景狀態,因此調試後臺任務將非常困難。

+0

謝謝你的回答。那麼,學習推送通知會引導我達到自己的目標嗎? – sirjay 2013-03-01 23:58:50

+0

如果您的目標是在網站發佈新文章時向電話發送提醒,則是的,您可以通過推送通知來實現,但您需要一臺不斷掃描該網站以獲取更新以發送推送的服務器通知。 – jsd 2013-03-02 00:39:55