我正在将 QuickBlox 集成到我的 iOS 应用程序中。QuickBlox 示例代码使用两个硬编码的 QuickBlox 用户,为每个用户填写登录名和密码。
我不想让我的用户使用 QuickBlox 登录名登录。
有什么方法可以让我的用户在没有 QuickBlox 登录凭据的情况下与其他用户进行视频聊天?
要设置视频聊天,您应该创建 2 个用户。
如您所见,我们需要对手的user_id来拨打电话 http://quickblox.com/developers/SimpleSample-videochat-ios#Call_user
但是,您实际上可以开发“隐藏登录”。例如,使用一些设备数据来创建用户的登录名和密码。并在 UI 下进行。例如,您可以使用[UIDevice identifierForVendor]来唯一标识您的用户 https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIDevice_Class/Reference/UIDevice.html
我现在正在使用以下代码使用用户 ID 来实现。
[QBAuth createSessionWithDelegate:self];
(void)completedWithResult:(Result *)result{
if(result.success && [result isKindOfClass:QBAAuthSessionCreationResult.class]){
// Success, do something
QBUUser *user = [QBUUser user];
user.login = @"garry4";
user.password = @"garry5santos2";
[QBUsers signUp:user delegate:self];
}
if(result.success && [result isKindOfClass:QBUUserResult.class]){
// Success, do something
QBUUserResult *userResult = (QBUUserResult *)result;
NSLog(@"New user=%@", userResult.user);
QBUUser *currentUser = [QBUUser user];
currentUser.ID = userResult.user.ID; // your current user's ID
currentUser.login = userResult.user.login;
currentUser.password=@"garry5santos2";// your current user's password
// set Chat delegate
[QBChat instance].delegate = self;
// login to Chat
[[QBChat instance] loginWithUser:currentUser];
}
NSLog(@"%@",result.errors);
NSLog(@"%d",result.success);
NSLog(@"%@",result);