'基地被禁止。需要用户。'尝试创建QBCustomObject时出错

时间:2014-07-02 08:08:57

标签: android quickblox

当我尝试保存QBCustomObject时,服务器的响应有时会显示

  

基地被禁止。需要用户。

在保存之前,我检查了QBChatService.getInstance().isLoggedIn()并返回true。

以下两种情况都会发生此错误:

    登录后
  • ,例如,10分钟后

重新启动应用并登录进程后消失。

HashMap<String, Object> fields = new HashMap<String, Object>();
fields.put("name", name);
fields.put("User ID", currentUser.getId());

QBCustomObject qbCustomObject = new QBCustomObject();
qbCustomObject.setUserId(currentUser.getId());
qbCustomObject.setClassName("Group");
qbCustomObject.setFields(fields);

QBCustomObjects.createObject(qbCustomObject, new QBCallbackImpl() {...});

以下是导致创建QBCustomObject的行动链:

QBAuth.createSession() -> QBUsers.signIn() -> QBChatService.getInstance().loginWithUser()

为什么会发生此错误?

3 个答案:

答案 0 :(得分:4)

好像我发现了这个错误。我没有使用QBUser响应中获得的.signIn()对象。这就是我的意思:

QBUsers.signIn(user, new QBCallbackImpl() {
     @Override
    public void onComplete(Result result) {
        if (result.isSuccess()) {
            QBUser signedInUser = (((QBUserResult) result).getUser());
            signedInUser.setPassword(password);
            //...
            loginToChat(signedInUser);
            //...
        }
});

答案 1 :(得分:3)

聊天登录并登录到应用程序 - 它们是不同的登录名。

为了在QuickBlox中创建任何对象(聊天消息除外) - 您必须代表用户行事

此处了解有关如何创建记录http://quickblox.com/developers/SimpleSample-customObjects-android#Create_record_using_Android_SDK

的详细信息

在那里,您将找到如何将用户登录到应用程序http://quickblox.com/developers/SimpleSample-users-android#Sign_In_.26_Social_authorization

的链接

答案 2 :(得分:0)

使用QBUser创建会话。

例如: - QBAuth.createSession(新的QBUser(“user_name”,“”))