我在我的应用程序中使用quickblox。我做了我的用户注册,用户登录和聊天。当我第一次登录时,一切正常。如果我按回家并再次进入该应用程序,我来到我的viewController
页面。用户自动注销。当我尝试登录时说,令牌是必需的。Quicklox令牌需要
我已经把会话验证在appdelegate
[QBAuth createSessionWithDelegate:self]
-(void)viewDidAppear:(BOOL)animated
{
if([LocalStorageService shared].currentUser == nil)// check if user is logged in
{
NSCharacterSet *nonalphanumericSet = [[ NSCharacterSet alphanumericCharacterSet] invertedSet];
[QBUsers logInWithUserLogin:[[[PFUser currentUser].username componentsSeparatedByCharactersInSet:nonalphanumericSet ] componentsJoinedByString:@"1"] password:@"password" delegate:self];
}
}
- (void)completedWithResult:(Result *)result
{
if(result.success && [result isKindOfClass:QBUUserLogInResult.class])
{
// Success, do something
QBUUserLogInResult *userResult = (QBUUserLogInResult *)result;
NSLog(@"Logged In user=%@", userResult.user);
userResult.user.password [email protected]"password";
// Save current user
//
[[LocalStorageService shared] setCurrentUser: userResult.user];
// Login to QuickBlox Chat
//
[[ChatService instance] loginWithUser:[LocalStorageService shared].currentUser completionBlock:^{
NSLog(@"chat logged successfully");
}];
// Errors
}
else
{
NSString *errorMessage = [[result.errors description] stringByReplacingOccurrencesOfString:@"(" withString:@""];
errorMessage = [errorMessage stringByReplacingOccurrencesOfString:@")" withString:@""];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Errors"
message:errorMessage
delegate:nil
cancelButtonTitle:@"Ok"
otherButtonTitles: nil];
[alert show];
}
}
感谢名单伊戈尔。我已经整理出来了。就是这样。 –