Я использую Quickblox SDK в своем приложении для Android.
Я могу отправлять сообщения в QBPrivateChat и получать их без проблем.
Я добавил QBMessageListener в свой QBPrivateChat, чтобы получать уведомления, как только новое сообщение будет отправлено другим пользователем чата.
final QBMessageListener<QBPrivateChat> messageListener = new QBMessageListener<QBPrivateChat>() {
@Override
public void processMessage(QBPrivateChat privateChat, QBChatMessage chatMessage) {
Log.e(TAG, "privateChatMessageListener - processMessage");
}
@Override
public void processError(QBPrivateChat privateChat, QBChatException error, QBChatMessage originMessage) {
Log.e(TAG, "privateChatMessageListener - processError");
}
};
QBPrivateChatManager privateChatManager = QBChatService.getInstance().getPrivateChatManager();
privateChatManager.addPrivateChatManagerListener(new QBPrivateChatManagerListener() {
@Override
public void chatCreated(QBPrivateChat privateChat, boolean createdLocally) {
Log.e(TAG, "QBPrivateChatManagerListener - chatCreated");
if(!createdLocally)
privateChat.addMessageListener(privateChatMessageListener);
}
});
Integer opponentId = 1234;
QBPrivateChat privateChat = privateChatManager.getChat(opponentId);
if (privateChat == null)
privateChat = privateChatManager.createChat(opponentId, messageListener);
else
privateChat.addMessageListener(messageListener);
Проблема в том, что приложение никогда не проходит через processMessage/processError. Я пытаюсь понять это часами, но безуспешно.
Может кто-нибудь сказать мне, что я делаю неправильно?
заранее спасибо