【问题标题】:Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: self.senderId != nil'由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“无效参数不满足:self.senderId!= nil”
【发布时间】:2017-05-31 01:11:38
【问题描述】:

我在玩 JSQMessagesViewController。我的第一个项目是使用 Raywenderlich 的 Firebase Tutorial: Real-time Chat tutorial.

然后我创建了一个新项目来更多地使用 JSQMessagesViewController。在这个新项目中,我现在遇到了问题。

在我导入 JSQMessagesViewController 并将其添加为我的 ViewController 的超类后,我在控制台中收到此错误 -

-[NewProject.ViewController viewWillAppear:] 中的断言失败, /Users/Downloads/ChatChatFirebaseTutorial-finished/Pods/JSQMessagesViewController/JSQMessagesViewController/Controllers/JSQMessagesViewController.m:233 2017-05-30 20:43:44.498 NewProject[10688:314277] *** 终止应用程序 由于未捕获的异常“NSInternalInconsistencyException”,原因: '无效参数不满足:self.senderId != nil'

我在新项目中看到来自 ChatChatFirebaseTutorial 的消息(对吗?)我以前的项目。

所以,我从我的 mac 中删除了关于 ChatChatFirebaseTutorial 的所有内容,甚至更多内容。它没有帮助。我从 project 和 mac 卸载并安装了几次 Pod。它没有帮助。

以前有人遇到过这个问题吗?如果是,你是怎么解决的?

【问题讨论】:

  • 我的问题已解决here. 谢谢!

标签: ios swift xcode cocoapods jsqmessagesviewcontroller


【解决方案1】:

库要求您为当前用户设置senderID。这可以通过在你的类中添加这样的函数来完成

override func senderId() -> String {
    return "UNIQUEID"
}

我会使用您知道将是唯一的东西,例如电子邮件或您生成的与用户相关联的唯一 ID,这样您就可以确定谁发送了这些消息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-21
    • 1970-01-01
    • 2014-01-05
    • 2016-07-05
    • 2012-07-28
    • 2015-12-19
    相关资源
    最近更新 更多