使用Quickblox的q-municate for android,并成功地进行了一天的视频聊天。
我现在收到一个错误,只是简单地说“需要令牌”。根据Quickblox文档,我知道会话在两个小时后超时。
有没有关于如何纠正这个问题的教程?
我已经读过这篇documentation,但仍然不知道如何把它们拼凑在一起。
我在QBAuthHelp.java文件中找到了这段代码,这是认证视频聊天的方法吗?
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;谢谢你在这里的帮助,我完全是个新手。
发布于 2014-07-15 14:10:33
您需要使用QBAuth方法在您的应用程序中获取会话。需要身份验证,因此您可以成功获取令牌并创建会话。
发布于 2015-08-01 14:42:11
当你在注册后启动你的应用程序时,首先使用你的quickblox帐户来验证你的应用程序。1.在您的应用程序中创建Application类。
public class VideoChatApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
QBSettings.getInstance().fastConfigInit(Constant.APP_ID,
Constant.AUTH_KEY, Constant.AUTH_SECRET);
}
}2在清单文件中定义应用程序类
<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首先,您需要在登录到用户后注册该用户
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();
}
});
}发布于 2014-07-15 03:46:51
你修改Q-municate代码了吗?
"Token Required“表示您正在尝试向QuickBlox后端发出请求(Any),但之前没有创建会话。
所有QuickBlox应用中的第一个请求应该是会话创建请求:
QBAuth.createSession(...然后等待此请求完成,然后执行任何其他请求
https://stackoverflow.com/questions/24706031
复制相似问题