2012-02-01 41 views
3

我有一個應用程序,我定期下載一些數據(我目前使用nstimer)。是否可以在iOS中定期執行此操作,而無需啓動我的應用程序?iOS中的背景同步是否可以在未啓動應用的情況下進行?

+2

如果用戶沒有啓動應用程序,爲什麼要下載任何數據? – 2012-02-01 13:00:32

+0

如果應用程序有數據,應用程序將啓動得更快。 – DixieFlatline 2012-02-01 13:05:22

+1

獲取後臺線程中的數據並更新用戶界面。 – JeremyP 2012-02-01 13:54:58

回答

4

不,不可能。你不能將應用程序視爲服務。

要做到這一點的唯一方法是當應用程序啓動並運行。

某些應用程序可能被允許在後臺執行某些操作(例如,用戶啓動它然後按下主頁按鈕),但必須將其設置爲音頻應用程序,例如在信息中。 plist中添加此:

<key>UIBackgroundModes</key><array><string>audio</string></array>

,並確保audioSession有效(播放歌曲時,IE瀏覽器)。不管怎樣,我不推薦前面提到的方法。我會採用經典的方式,在後臺線程上運行下載。

2

不,這是不可能的。該應用程序需要啓動。

1

不,這是不可能的。 iOS不允許開發人員在後臺執行代碼(VoIP的一些例外等),或者不啓動應用程序。

+0

我無法理解蘋果如何在企業應用程序存在如此巨大的限制時定位iOS ... – 2013-11-15 15:42:44

5

在一些非常特殊的情況下,這是可能的。我談論的非常特殊的情況是它是否是雜誌或報紙應用程序。這可讓您使用NewsstandKit在後臺下載新問題,以便用戶無需等待下載即可獲取新版本。

0

我可以說這在使用iCloud方面有些可能嗎?我還沒有真正做過任何特定於iCloud的編程,但我有一些遊戲可以自動同步保存的遊戲。我只需要在開始遊戲後加載上述保存遊戲。

相關問題