Android 启动所有对话框(聊天室)以在quickblox中自动下载附件

Android 启动所有对话框(聊天室)以在quickblox中自动下载附件,android,ios,quickblox,Android,Ios,Quickblox,我想要实现的是使用QuickBlox SDK iOS版本2.0.12自动下载附件功能,无需进入聊天室 要做到这一点,我想在登录后启动用户所属的所有对话框(聊天室) 使用当前api,用户可以查看对话框列表(聊天室),并且一次只能进入一个聊天室。 因此,假设登录用户有2个聊天室(聊天室A、聊天室B),因此当他进入“聊天室A”时,他只能在ChatdiReceiveMessageNotification/ChatdiReceiveMessageNotification中接收“聊天室A”的消息/附件作为通

我想要实现的是使用QuickBlox SDK iOS版本2.0.12自动下载附件功能,无需进入聊天室

要做到这一点,我想在登录后启动用户所属的所有对话框(聊天室)

使用当前api,用户可以查看对话框列表(聊天室),并且一次只能进入一个聊天室。 因此,假设登录用户有2个聊天室(聊天室A、聊天室B),因此当他进入“聊天室A”时,他只能在ChatdiReceiveMessageNotification/ChatdiReceiveMessageNotification中接收“聊天室A”的消息/附件作为通知

因此,当用户收到“聊天室B”的消息/附件时,他将无法访问,直到他进入“聊天室B”

为了让它工作,我在DialogsViewController中创建了以下方法: 正在尝试加入所有对话框(聊天室)

它给出了一个错误:EXC_BAD_访问ChatService.m中的以下方法

- (void)chatRoomDidEnter:(QBChatRoom *)room{
}
但是,当我尝试只加入一个聊天室时,它不会给我任何错误,并且工作得非常好。
(只需选中替换for loop,使用此->for(int i=0;i一次可以在多个房间中)

self.myRooms = [NSMutableArray array]; // strong property

for (int i=0; i<=self.dialogs.count; i++) {
    QBChatDialog *dialog = self.dialogs[i];

    QBChatRoom *room = [dialog chatRoom];
    [self.rooms addObject:room]; // retain room object because it is autoreleased 

    [[ChatService instance] joinRoom:room completionBlock:^(QBChatRoom *joinedChatRoom) {
        // joined
    }];
} 
self.myRooms=[NSMutableArray];//strong属性

对于(int i=0;i如果您查看ChatService类内部,您可能会看到在成功-ChatRoomDienter后,完成块将被释放。这意味着此方法的第二次调用将导致EXC\u坏访问。只是不要释放块。

感谢回复Igor,但仍然是相同的问题,它在ChatRoomDienter中给出了一个错误,在这一行:self.joinRoomCompletionBlock(room);作为EXC_BAD_access,您是如何定义myRooms的?@property(强,非原子)NSMutableArray*myRooms;但我们使用QBChatRoom*Rooms对象来加入Rooms的
- (void)chatRoomDidEnter:(QBChatRoom *)room{
}
self.myRooms = [NSMutableArray array]; // strong property

for (int i=0; i<=self.dialogs.count; i++) {
    QBChatDialog *dialog = self.dialogs[i];

    QBChatRoom *room = [dialog chatRoom];
    [self.rooms addObject:room]; // retain room object because it is autoreleased 

    [[ChatService instance] joinRoom:room completionBlock:^(QBChatRoom *joinedChatRoom) {
        // joined
    }];
}