首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Quckblox q-municate视频聊天‘需要令牌’

Quckblox q-municate视频聊天‘需要令牌’
EN

Stack Overflow用户
提问于 2014-07-12 04:30:00
回答 3查看 364关注 0票数 1

使用Quickblox的q-municate for android,并成功地进行了一天的视频聊天。

我现在收到一个错误,只是简单地说“需要令牌”。根据Quickblox文档,我知道会话在两个小时后超时。

有没有关于如何纠正这个问题的教程?

我已经读过这篇documentation,但仍然不知道如何把它们拼凑在一起。

我在QBAuthHelp.java文件中找到了这段代码,这是认证视频聊天的方法吗?

代码语言:javascript
复制
public QBUser login(QBUser inputUser) throws QBResponseException, BaseServiceException {
    QBUser user;
    QBAuth.createSession();
    String password = inputUser.getPassword();
    user = QBUsers.signIn(inputUser);
    String token = QBAuth.getBaseService().getToken();
    user.setPassword(password);
    AppSession.startSession(LoginType.EMAIL, user, token);
    return user;

谢谢你在这里的帮助,我完全是个新手。

EN

回答 3

Stack Overflow用户

发布于 2014-07-15 14:10:33

您需要使用QBAuth方法在您的应用程序中获取会话。需要身份验证,因此您可以成功获取令牌并创建会话。

票数 3
EN

Stack Overflow用户

发布于 2015-08-01 14:42:11

当你在注册后启动你的应用程序时,首先使用你的quickblox帐户来验证你的应用程序。1.在您的应用程序中创建Application类。

代码语言:javascript
复制
public class VideoChatApplication extends Application {

   @Override
   public void onCreate() {
   super.onCreate();

          QBSettings.getInstance().fastConfigInit(Constant.APP_ID,
        Constant.AUTH_KEY, Constant.AUTH_SECRET);
  }

}

2在清单文件中定义应用程序类

代码语言:javascript
复制
<application
android:name=".VideoChatApplication"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >

<activity
    android:name=".Signup"
    android:label="@string/app_name"
    android:screenOrientation="portrait" >
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity></application>

3首先,您需要在登录到用户后注册该用户

代码语言:javascript
复制
    private void createSession(final String login, final String password) {
    final QBUser user = new QBUser(login, password);
    QBAuth.createSession(login, password,
            new QBEntityCallbackImpl<QBSession>() {
                @Override
                public void onSuccess(QBSession session, Bundle bundle) {
                    user.setId(session.getUserId());

                    QBChatService.getInstance().login(user,
                            new QBEntityCallbackImpl<QBUser>() {

                                @Override
                                public void onSuccess(QBUser result,
                                        Bundle params) {

                                }

                                @Override
                                public void onSuccess() {
                                    // login success

                                }

                                @Override
                                public void onError(List errors) {
                                    Toast.makeText(this,
                                            "Error when login",
                                            Toast.LENGTH_SHORT).show();
                                    for (Object error : errors) {
                                    }
                                }
                            });

                }

                @Override
                public void onSuccess() {
                    super.onSuccess();
                }

                @Override
                public void onError(List<String> errors) {
                    Toast.makeText(this,
                            "Error when login, check test users login and password",
                            Toast.LENGTH_SHORT).show();
                }
            });
}
票数 2
EN

Stack Overflow用户

发布于 2014-07-15 03:46:51

你修改Q-municate代码了吗?

"Token Required“表示您正在尝试向QuickBlox后端发出请求(Any),但之前没有创建会话。

所有QuickBlox应用中的第一个请求应该是会话创建请求:

代码语言:javascript
复制
QBAuth.createSession(...

然后等待此请求完成,然后执行任何其他请求

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24706031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档