无法将 Quickblox Sdk 2.4 指向或配置到 android 应用程序中的新(跟踪)实例

Posted

技术标签:

【中文标题】无法将 Quickblox Sdk 2.4 指向或配置到 android 应用程序中的新(跟踪)实例【英文标题】:Trouble pointing or configuring Quickblox Sdk 2.4 to a new (trail) instance in android application 【发布时间】:2015-12-03 19:53:48 【问题描述】:

我正在使用 quickblox sdk 2.4 进行视频聊天服务。我使用以下步骤将我的 android 应用程序指向一个新实例

//在登录应用程序之前,我正在设置以下实例 QBSettings.getInstance().setServerApiDomain("apixyzquickblox.com"); QBSettings.getInstance().setContentBucketName("..."); QBSettings.getInstance().setChatServerDomain("chatxyz.quickblox.com"); QBSettings.getInstance().setTurnServerDomain("turn.quickblox.com"); //已使用现有 quickblox 帐户中的 appid、authkey 和 authsecret QBSettings.getInstance().fastConfigInit(Consts.APP_ID, Consts.AUTH_KEY, Consts.AUTH_SECRET); // 设置企业 sdk,他们要求我按原样使用以下代码 列表 iceServerList = new LinkedList();

   iceServerList.add(new PeerConnection.IceServer("stun:stun.l.google.com:19302", 
   null, null)); 

   iceServerList.add(new PeerConnection.IceServer("stun:turn.quickblox.com", 
   "quickblox", "baccb97ba2d92d71e26eb9886da5f1e0")); 

   iceServerList.add(new PeerConnection.IceServer("turn:turn.quickblox.com:3478?transport=udp", 
   "quickblox", "baccb97ba2d92d71e26eb9886da5f1e0")); 

   iceServerList.add(new PeerConnection.IceServer("turn:turn.quickblox.com:3478?transport=tcp", 
   "quickblox", "baccb97ba2d92d71e26eb9886da5f1e0"));

   QBRTCConfig.setIceServerList(iceServerList);

现在我通过单击按钮登录到此应用程序 btnNext.setOnClickListener(new OnClickListener()

    @Override
    public void onClick(View v) 
        // TODO Auto-generated method stub

        QBAuth.createSession(new QBEntityCallbackImpl<QBSession>() 
            @Override
            public void onSuccess(QBSession qbSession, Bundle bundle) 
               // **this user exists in quickblox admin panel **
                QBUser qbUser = new QBUser("abc1", "abc1234");

               QBUsers.signIn(qbUser, new QBEntityCallbackImpl<QBUser>() 
                   @Override
                   public void onSuccess(QBUser qbUser, Bundle bundle) 


                    Toast.makeText(getApplicationContext(), "Login Success", Toast.LENGTH_SHORT).show();
                   

                   @Override
                   public void onError(List<String> errors) 
                   
               );

            

            @Override
            public void onError(List<String> errors) 
                // print errors that came from server
            
        );



);

当我点击下一个按钮时,我得到的响应为 Status=422 Unprocessable Entity 当我在共享实例中使用相同的用户 ID 时,它可以完美运行。但是一旦我更改为企业中的试用实例,我就会遇到这个问题

请帮我解决这个问题。提前致谢

【问题讨论】:

【参考方案1】:

我想告诉你的第一件事是他们在设置跟踪实例时发送给我的 quickblox 文档是旧的 我使用了我的 quickblox 帐户中提到的相同 Consts.APP_ID、Consts.AUTH_KEY、Consts.AUTH_SECRET。 我以这种方式配置了代码,它对我有用。

QBSettings.getInstance().fastConfigInit(Consts.APP_ID, Consts.AUTH_KEY, Consts.AUTH_SECRET); QBSettings.getInstance().setServerApiDomain("apixyzquickblox.com"); QBSettings.getInstance().setContentBucketName("..."); QBSettings.getInstance().setChatServerDomain("chatxyz.quickblox.com"); QBSettings.getInstance().setTurnServerDomain("turnserver.quickblox.com");

在您设置自己的自定义服务器之前,也无需设置 ice 服务器

【讨论】:

以上是关于无法将 Quickblox Sdk 2.4 指向或配置到 android 应用程序中的新(跟踪)实例的主要内容,如果未能解决你的问题,请参考以下文章

Quickblox:即使发送消息,iOS sdk 也会在发送时返回错误

Quickblox 登录无法使用 3.3.1 sdk

如何在 Quickblox iOS SDK 中检查会话是不是有效或过期?

无法使用 QuickBlox Javascript SDK 发送聊天消息

QuickBlox 使用 Facebook 自己的 SDK 登录?

为啥使用 quickblox sdk 从网站到 Android 在挂断电话上无法访问更新的会话信息?