2016-01-29 42 views
2

我有一個應用程序,它維護與服務器的套接字連接。當應用程序停止時(主屏幕按鈕被輕敲),此連接斷開,並且當用戶返回重新連接需要大約5秒。沒有太多,但仍然是一個煩惱。應用程序在後臺運行3分鐘

這工作完全,但我想我可以改善用戶體驗,如果應用程序請求後臺執行時間:

[[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:nil]; 

我拿到3另外分鐘運行時間在這裏,和插座可以活下去一點更多。如果用戶在這3分鐘內返回,那麼沒有重新連接,該應用可以立即再次使用。 (這經常發生,因爲他們只是檢查他們的電子郵件真的很快,回覆郵件等等,並立即返回到我的應用程序。)

這肯定會改善用戶體驗,並且當我看到一些應用程序使用它(如IRC iOS客戶端)。該文檔清楚地說:

您不應該使用此方法只是爲了讓您的應用程序在移動到後臺後繼續運行。

我不想跑超過3分鐘或假冒VoIP或音樂播放器的應用程序。這只是一個較小的用戶體驗改進。蘋果能否因此拒絕應用程序?

(現在讓我們忽略的是,當應用程序被轉到後臺套接字連接不立即破裂。)

+0

根據我的經驗,如果他們發現,那麼他們會拒絕你的應用程序。然而,應用商店評論過程由許多成員YMMV執行。我不確定,但認爲如果您之前從未提交過應用商店,那麼他們會比沒有拒絕地更新應用多次的人更加強烈地審覈您的應用。所以*也許*你可以在後面的階段更新你的蘋果對你和你的應用程序的細緻認識:D。好奇你在使用插座時究竟做了什麼?這是至關重要的嗎?如果不是,我不會打擾... – Honey

回答

0

如果AppStore的審覈小組會發現,他們將拒絕二進制文件。您從文檔中明確引用您爲什麼不能使用它。另外,如果您添加背景模式,如您的應用程序是VoIP或音樂播放器,但應用程序不是這種類型的應用程序,它也可以被拒絕。