2016-04-13 55 views
5

我正在使用XMPP。 我想在後臺模式下獲取通知。 我實現這個事也,在XMPP中以後臺模式工作

- (void)xmppStream:(XMPPStream *)sender socketWillConnect:(GCDAsyncSocket *)socket 
{ 
    // Tell the socket to stay around if the app goes to the background (only works on apps with the VoIP background flag set) 
    [socket performBlock:^{ 
     [socket enableBackgroundingOnSocket]; 
    }]; 
} 

在我的代碼設置VOIP標誌應用plist文件的背景模式。在這種模式下,我的應用程序可以完全在後臺運行。 但蘋果拒絕這種方式。

所以。我認爲其他方式是APNS(推送通知),但在我的應用程序巨大的聊天用戶,那麼如何處理使用推送通知的消息?

還有一件事我可以在後臺模式下設置無聲音頻文件播放並設置後臺模式工作? 以這種方式從蘋果方面的任何問題或regection問題?

所以,給我一些適當的想法和建議對於這個問題。

感謝x提前。

回答

2

還有一件事我可以在後臺模式下設置無聲音頻文件播放並設置後臺模式工作?這樣從蘋果方面的任何問題或拒絕問題?

這樣蘋果拒絕了應用程序。

要通知使用有關接收到的消息,您必須使用本地通知作爲App的後臺和前臺狀態,並使用推送通知不運行App的狀態。

爲了達到您的目的,任何背景模式都不是解決方案。

2

如何使用推送通知來處理消息?

您需要檢查用戶是否連接到XMPP服務器。如果用戶連接到XMPP,請通過XMPP消息傳遞進行操作,如果用戶未連接到XMPP,請發送推送通知,以幫助用戶在線顯示並接收消息。

還有一件事我可以在後臺模式下設置無聲音頻文件播放並設置後臺模式工作?這樣從蘋果方面的任何問題或拒絕問題?

是蘋果將拒絕應用程序(意在欺騙蘋果)

+0

但VOIP標誌被拒絕來自蘋果端 –

+0

如果您不使用SIP撥號功能 –

+0

意味着您不需要設置voip標誌?僅從XMPP設置Localnotification –

0

當你的應用背景/殺了,到時候發送web服務的服務器,可以告訴我們 - 你是脫機。

然後服務器可以發送你推送通知所有聊天內容。