如何管理 Quick Blox 会话?
Posted
技术标签:
【中文标题】如何管理 Quick Blox 会话?【英文标题】:How to manage Quick Blox Session? 【发布时间】:2014-12-22 07:11:33 【问题描述】:我有一个关于 Quick blox API 的问题。现在我正在使用下面的代码注册一个用户。
[QBRequest createSessionWithSuccessBlock:^(QBResponse *response, QBASession *session)
// session created
QBUUser *user = [QBUUser user];
user.password = userPasswordTextField.text;
user.login = userNameTextField.text;
user.fullName = userRealNameTextField.text;
user.email = userEmailTextField.text;
// Registration sign up of User
[QBRequest signUp:user successBlock:^(QBResponse *response, QBUUser *user)
[QBRequest createSessionWithSuccessBlock:^(QBResponse *response, QBASession *session)
NSLog(@"checkingl registering");
[QBRequest userWithLogin:user.login successBlock:^(QBResponse *response, QBUUser *user)
NSLog(@"checkingl updatingqb");
errorBlock:^(QBResponse *response)
// Handle error
];
errorBlock:^(QBResponse *response)
// Handle error
];
errorBlock:^(QBResponse *response)
// Handle error here
NSLog(@"error while signing up with QB");
NSLog(@"fail sign Up %@",response);;
[self showAlert:nil message:@"User with login that has already been taken" cancelButtonTitle:nil otherButtonTitle:@"OK"];
return ;
];
errorBlock:^(QBResponse *response)
// handle errors
NSLog(@" error in creating session %@", response.error);
];
在上面的代码中,我首先创建一个会话并注册一个新用户,然后我是登录用户。在注册时,我没有在注册时登录 QuickBlox Chat 的用户,但是稍后当我在另一个模块中登录 Quick blox Chat 时,我仍然必须创建新会话或者我必须维护新会话。
【问题讨论】:
你在问什么开始聊天?? ***.com/questions/27388204/… saad 请检查我有类似的疑问。 Naeem 的答案似乎很完美。让我知道它是否不起作用我将从 repo 下载我的代码,并让你知道我是如何处理这个问题的。这和 Naeem 写的有点像 @007 如果答案对您有用,您可以接受。 【参考方案1】:在最后一次向 QuickBlox 发出请求后,任何会话都将保持有效 2 小时。要检查会话的到期日期,请使用以下 sn-p 代码:
NSDate *sessionExpiratioDate = [QBBaseModule sharedModule].tokenExpirationDate;
NSDate *currentDate = [NSDate date];
NSTimeInterval interval = [currentDate timeIntervalSinceDate:tokenExpirationDate];
if(interval > 0)
// recreate session here
查看this 指南。 This 功能自 1.8 ios SDK 起可用。
参考:Igor Khomenko
【讨论】:
谢谢 Naeem 但我看到了这个链接。好的,你的意思是稍后我必须使用这个会话,两个小时后我创建了新的 是的,你必须重新创建会话。 您好,我获取了 Quick blox 会话的剩余时间,如果会话时间存在,我也忽略了创建会话,但再次登录聊天时我的代码崩溃了。我收到这个 ar 2108443 2014-12-22 18:00:40.651 OClub[4587:5507] *** 由于未捕获的异常“BaseServiceException”而终止应用程序,原因:“您错过了授权调用。请在您的应用程序中插入以下代码 [QBAuth createSessionWithDelegate:self]; 嘿,谢谢 Naeem 实际上我已经看到了这个想法,但你建立了我的信心:D 很高兴我建立了您的信心。顺便说一句,你的问题解决了吗?以上是关于如何管理 Quick Blox 会话?的主要内容,如果未能解决你的问题,请参考以下文章
看Quick Audience 如何有效提升营销活动管理效率