私は現在、XMPPFrameworkとJSQMessagesViewControllerを使用してiOS用のチャットアプリケーションを開発しています。ChatViewController collectionview(XMPPFramework + JSQMessagesViewController)に着信メッセージを追加します。
私はXMPPサーバを稼働させてコンソールログから送受信されたメッセージを見ることができます。コレクションビューUI(JSQMessagesViewController)に着信メッセージを追加/表示することを試みています。私はこれまで何
は、ここでは、着信メッセージ
func xmppStream(_ sender: XMPPStream!, didReceive message: XMPPMessage!) {
print("Did received message \(message)")
if message.isChatMessageWithBody() {
chatView.receiveMessage(passMessage: message.stringValue)
}
}
このアプローチでのViewController方法
func receiveMessage(passMessage: String!) {
let receivedMessage = JSQMessage(senderId: senderId, displayName: senderDisplayName, text: passMessage)
self.messages.append(receivedMessage!)
self.finishReceivingMessage(animated: true)
JSQSystemSoundPlayer.jsq_playMessageReceivedSound()
}
用アプリデリゲートのコードだアプリデリゲート からのViewController funcを呼び出しました受信メッセージでアプリケーションがクラッシュし、senderIdから予期しないnil値のエラーが発生します。 これはうまくいかないようです。 助けてください ありがとうございます。
githubからJSQの例を試してみるべきだと思います。 jsqmessagesviewcontrollerサブクラスに実装する必要があるデリゲートメソッドがいくつかあります。 – dichen