建议在iOS共享扩展中使用QuickBlox的过程是什么

建议在iOS共享扩展中使用QuickBlox的过程是什么,ios,objective-c,quickblox,Ios,Objective C,Quickblox,我正在主iOS应用程序中成功使用QuickBlox,并希望使用cocoapod“QuickBlox”、“~>2.7.5”将功能扩展到共享扩展。我需要在不打开主应用程序的情况下在后台发送消息 我使用下面的代码没有任何成功的第一次设置只发送文本 [QBRequest logInWithUserLogin:USERNAME password:PASSWORD successBlock:^(QBResponse *response, QBUUser *user) { if (us

我正在主iOS应用程序中成功使用QuickBlox,并希望使用cocoapod“QuickBlox”、“~>2.7.5”将功能扩展到共享扩展。我需要在不打开主应用程序的情况下在后台发送消息

我使用下面的代码没有任何成功的第一次设置只发送文本

    [QBRequest logInWithUserLogin:USERNAME password:PASSWORD successBlock:^(QBResponse *response, QBUUser *user) {
        if (user) {
            user.login = USERNAME;
            user.password = PASSWORD;
            [[QBChat instance] connectWithUser:user completion:^(NSError * _Nullable error) {

                QBChatDialog *chatDialog = [[QBChatDialog alloc] initWithDialogID:[settingsDict valueForKey:@"sendingID"] type:QBChatDialogTypeGroup];

                QBChatMessage *messagetosend = [QBChatMessage message];
                messagetosend.senderID = userQBID;
                messagetosend.text = self.contentText;
                messagetosend.dateSent = [NSDate dateWithTimeInterval:-12.0f sinceDate:[NSDate date]];

                [chatDialog joinWithCompletionBlock:^(NSError * _Nullable error) {
                    [chatDialog sendMessage:messagetosend completionBlock:^(NSError * _Nullable error) {
                        NSLog(@"%@",[error localizedDescription]);
                    }];

                }];
            }
             ];
        }
    } errorBlock:^(QBResponse * _Nonnull response) { }];

您可以通过REST发送消息。通过REST发送不需要连接聊天室和加入对话框

NSUInteger senderID = //Current User ID
QBChatMessage *message = [QBChatMessage message];
message.text = intent.content;
message.senderID = senderID;
message.markable = YES;
message.deliveredIDs = @[@(senderID)];
message.readIDs = @[@(senderID)];
message.dialogID = dialogID;
message.dateSent = [NSDate date];

[QBRequest sendMessage:message successBlock:^(QBResponse * _Nonnull response, QBChatMessage * _Nonnull createdMessage) {

} errorBlock:^(QBResponse * _Nonnull response) {

}];

谢谢您的回复,但我没有看到任何名为sendmages的类方法。QB 2.7.5中是否有其他选择?不幸的是,QB iOS SDK 2.9.1中添加了此功能。好的,我尝试在QB SDK 2.9.1中更新共享扩展,但在发送时崩溃,错误为:由于未捕获的异常“NSInvalidArgumentException”终止应用程序,原因:'+[QBRequest sendMessage:successBlock:errorBlock:]:无法识别的选择器已发送到类0x3b735c'@Randy,我们已对其进行了测试,并且此问题在我们的样本中不可复制,请在上创建问题并附加样本项目,使其可复制。感谢@Guru\u quickblox\u的支持