【问题标题】:quickblox OnMessageListener is not receiveing qbprivate message with attachmentquickblox OnMessageListener 没有收到带有附件的 qbprivate 消息
【发布时间】:2017-04-27 16:00:12
【问题描述】:

我之前已经成功地为我的安卓聊天应用程序实现了 quickblox,仅用于文本聊天。这次我想发送带有图像作为附件的消息。文件发送成功(我已经在 quickblox 管理内容面板中检查了它)。但在接收器部分,它不显示图像或文本。我在 logcat 中也没有收到任何异常/错误或文本。所以很难找出错误的代码,我正在做。请帮忙。 我的聊天控件 ------------------------------------`私有 QBPrivateChatManagerListener chatManagerListener=new QBPrivateChatManagerListener() { @覆盖 公共无效chatCreated(QBPrivateChat qbPrivateChat,布尔b){ 如果(!b){ qbPrivateChat.addMessageListener(myListener); } }

};`

private QBMessageListener myListener=new QBMessageListener() {
    @Override
    public void processMessage(QBChat qbChat, QBChatMessage qbChatMessage) {
        int frm=qbChatMessage.getSenderId();
        int tos=qbChatMessage.getRecipientId();
        System.out.println(String.format(">>> Message received (from=%s, to=%s): %s", frm, tos, qbChatMessage.getBody()));
        if (onMessageReceivedListener != null) {
            onMessageReceivedListener.onMessageReceived(qbChatMessage);
        }
    }
    @Override
    public void processError(QBChat qbChat, QBChatException e, QBChatMessage qbChatMessage) { }

};

聊天活动

 MyChatController.OnMessageReceivedListener onMessageReceivedListener = new MyChatController.OnMessageReceivedListener() {
    @Override
    public void onMessageReceived(final QBChatMessage msg) {
        try {
            final String mmsg = msg.getBody();
            Toast.makeText(getApplicationContext(), "Receiving..."+mmsg, Toast.LENGTH_LONG).show();
        }catch (Exception e){
            Toast.makeText(getApplicationContext(),"#A#B#"+e.toString(), Toast.LENGTH_LONG).show();
        }
    }
};

【问题讨论】:

    标签: android quickblox


    【解决方案1】:

    您可以在没有聊天管理器的情况下使用最新版本的 QuickBlox Android SDK。在最新版本中,您可以使用 QBChatDialog 模型来执行所有聊天功能。另外检查附件的所有参数,它们不为空也不为空。您能提供没有被侦听器捕获的消息(来自 logcat 的 .xml)吗?

    【讨论】:

    • 我已经完成了 Login Activity 和 UserList Activity 所以,如果我更改 sdk,那么我必须从头开始。两个活动都做得很好,没有任何例外。顺便说一句,我在 logcat 中没有任何异常
    • 好的。你可以启用聊天的日志 QBChatService.setDebugEnabled(true);在登录之前吟唱并提供带有附件的消息,这并没有被听众捕捉到。在日志中它看起来像
    • D/SMACK: RECV (0): 附件xxxxxxxxx14937971001xxxxxx
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-31
    • 2020-12-14
    • 2011-09-07
    • 2017-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多