2015-09-25 89 views
1

我正在寫一個iOS(Swift)應用程序,它包括在用戶之間發送消息的能力。我有這個功能工作(使用JSQMessagesViewController),但我不知道從哪裏開始自動更新。如果用戶處於消息傳遞屏幕並收到新消息,我需要一種方式讓它顯示出來。這裏有一些想法:自動更新消息

  • 使用一個計時器,並檢查新的消息每指定的時間間隔。 這看起來非常電池&數據密集型。
  • 使用分析推送通知。我不確定你是否可以做到這一點。

任何指導將不勝感激。

回答

0

有這個here

class ViewController: JSQMessagesViewController, SyncanoSyncServerDelegate 
{ 
    // MARK: - Server delegate methods 
    func syncServerConnectionOpened(syncServer: SyncanoSyncServer!) { 
     self.subscribeToCollection() 
    } 

    func syncServer(syncServer: SyncanoSyncServer!, connectionClosedWithError error: NSError!) { 
     self.syncServer.connect(nil); 
    } 

    func syncServer(syncServer: SyncanoSyncServer!, notificationAdded addedData: SyncanoData!, channel: SyncanoChannel!) { 
     if let senderId = addedData.additional?["senderId"] as? String { 
      let message = JSQMessage(senderId: senderId, displayName: senderId, text: addedData.text) 
      self.messages += [message] 
     } 
     self.finishReceivingMessage() 
    } 

    override func viewDidLoad(){ 
     super.viewDidLoad() 
     self.syncServer.delegate = self 
     self.syncServer.connect(nil); 
    } 
} 
全教程