IN XMPP在提交表单时获得未授权的异常(401)

u_p*_*dra 7 java android xmpp

我可以添加组,但它显示"房间从入口锁定,直到配置确认".我研究过但没有找到任何满意的答案.以下是获取XMPP连接和提交表单的代码.在发送表单时,它会抛出"未授权的例外".

xmppConnection = connectionThread.getXMPPConnection();
    if (xmppConnection == null) {
        Application.getInstance().onError(R.string.NOT_CONNECTED);
        return;
    }
    final MultiUserChat multiUserChat;
    try {

        multiUserChat = new MultiUserChat(xmppConnection, room);
    //  setConfig(multiUserChat);

    } catch (IllegalStateException e) {
        Application.getInstance().onError(R.string.NOT_CONNECTED);
        return;
    }
Run Code Online (Sandbox Code Playgroud)

//提交表格的代码.

private void setConfig(MultiUserChat multiUserChat) {

    try {
        Form form = multiUserChat.getConfigurationForm();
        Form submitForm = form.createAnswerForm();
        for (Iterator<FormField> fields = submitForm.getFields(); fields
                .hasNext();) {
            FormField field = (FormField) fields.next();
            if (!FormField.TYPE_HIDDEN.equals(field.getType())
                    && field.getVariable() != null) {
                submitForm.setDefaultAnswer(field.getVariable());
            }
        }
        submitForm.setAnswer("muc#roomconfig_publicroom", true);
        submitForm.setAnswer("muc#roomconfig_persistentroom", true);
        multiUserChat.sendConfigurationForm(submitForm);
    } catch (Exception e) {
        e.printStackTrace();
    }

}
Run Code Online (Sandbox Code Playgroud)

ssc*_*ass 1

为了得到这个问题的答案,我只是调整你的评论。

你打电话setConfig()来得早。应该在加入群组后调用。