的Quickblox管理会话和召回?

的Quickblox管理会话和召回?,第1张

概述我正在使用QuickBlox库进行视频聊天.我如何管理会话?因为当我从实时聊天活动转到下一个活动时,我刚刚丢失了会话,因为它说“无法初始化聊天”,所以我必须再次创建会话才能进行呼叫.那么quickblox会话的寿命是多长,我该如何管理.当停止呼叫或移至下一个活动并尝试回想时,我也遇到了

我正在使用QuickBlox库进行视频聊天.我如何管理会话?因为当我从实时聊天活动转到下一个活动时,我刚刚丢失了会话,因为它说“无法初始化聊天”,所以我必须再次创建会话才能进行呼叫.那么quickblox会话的寿命是多长,我该如何管理.

当停止呼叫或移至下一个活动并尝试回想时,我也遇到了问题,但实际上我无法做到这一点,因此我尝试了不同的事情,因此每次遇到不同的错误时,我都会想起来.因此,如果有任何使用QuickBlox库的经验,请在这里寻求帮助.

当我停止通话时,我会调用此功能.

private voID stopCall() {        //Toggle vIEw show the smile vIEw again        //ToggleSmileVIEw();        try        {            cancelCallTimer();            if (vIDeoChat != null) {                vIDeoChat.stopCall();                vIDeoChat = null;            }            if (vIDeoChannel != null) {                vIDeoChannel.close();                vIDeoChannel = null;            }            sessionID = null;        }        catch(Exception ex)        {            ex.printstacktrace();        }    }

当我打电话时,我会调用此功能

 private voID call() {    //toggle vIEw     //ToggleSmileVIEw();    // get opponent    //    VIDeoChatApplication app = (VIDeoChatApplication)getApplication();    opponent = new QBUser();    opponent.setID((app.getCurrentUser().getID() == VIDeoChatApplication.FirsT_USER_ID ? VIDeoChatApplication.SECOND_USER_ID : VIDeoChatApplication.FirsT_USER_ID));    // call    //    callTimer = new Timer();    callTimer.schedule(new CancelCallTimerTask(), 30 * 1000);    createSenderChannel();    initVIDeoChat();    if (vIDeoChat != null)     {        vIDeoChat.call(opponent, getCallType(), 3000);        //toggleMicrophoneMute();    }     else     {        logAndToast("Stop current chat before call");    }}

解决方法:

对于:quickblox会话的生命周期以及如何管理.

To authenticate your application you have to set valID a auth_key and
generate a signature using your application auth_secret and receive a
session token which you should use to send requests to QuickBlox API

和,

Expiration time for token is 2 hours. Please, be aware about it. If
you will perform query with expired token – you will receive error
required session does not exist.

来源:Authentication and Authorization Session Info

该部分适合创建会话的AndroID示例代码,

QBAuth.createSession(new QBEntityCallbackImpl<QBSession>() {    @OverrIDe     public voID onSuccess(QBSession session, Bundle params) {        Log.i(TAG, "session created, token = " + session.getToken());     }     @OverrIDe     public voID one rror(List<String> errors) {     }});

资料来源:Android developers documentation

我曾经使用过AndroID SDK,并且觉得它仍然需要一些工作,尤其是要达到与iOS SDK和REST API相当的阶段.

通过查看代码,您应该在创建新的QBUser和相关的视频聊天调用之前使用getToken(),如果令牌已过期,则只需创建一个新令牌即可.
我已经实现了类似的代码,而不是视频聊天应用程序,但是以通用的方式,如果需要重新创建会话,请在会话创建的onSuccess()中编写函数.

Fyi,对于多个错误,您可以尝试使用给出的摘要检查错误,分类为4; ..developers/Errors

总结

以上是内存溢出为你收集整理的的Quickblox管理会话和召回?全部内容,希望文章能够帮你解决的Quickblox管理会话和召回?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1089195.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存