无法将 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 iOS SDK 中检查会话是不是有效或过期?
无法使用 QuickBlox Javascript SDK 发送聊天消息