Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 使用azure sdk成功登录facebook后,webview保持打开状态_Ios_Objective C_Facebook_Webview_Azure Sdk - Fatal编程技术网

Ios 使用azure sdk成功登录facebook后,webview保持打开状态

Ios 使用azure sdk成功登录facebook后,webview保持打开状态,ios,objective-c,facebook,webview,azure-sdk,Ios,Objective C,Facebook,Webview,Azure Sdk,我正在使用facebook从Azure SDK登录,我在按钮中使用以下代码: -(void)fblogin { [_azureService.client loginWithProvider:@"facebook" urlScheme:@"dribel" controller:self animated:YES completion:^(MSUser * _Nullable user, NSError * _Nullable error) {

我正在使用facebook从Azure SDK登录,我在按钮中使用以下代码:

-(void)fblogin
{
        [_azureService.client loginWithProvider:@"facebook" urlScheme:@"dribel" controller:self animated:YES completion:^(MSUser * _Nullable user, NSError * _Nullable error)
         {
             if (error)
             {
                 NSLog(@"Login failed with error: %@, %@", error, [error userInfo]);
             }
             else
             {
                 _azureService.client.currentUser = user;

                 NSLog(@"User logged in: %@", user.userId);


                 [self fblogin];
             }
         }];
    }
像这样的网络视图,打开并执行所有facebook登录过程

当它结束时,它会在应用程序委托中调用以下方法,因为这是真的,它会恢复登录流

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
{
    if ([[url.scheme lowercaseString] isEqualToString:@"dribel"])
    {
        // Resume login flow
        return [self.azureService.client resumeWithURL:url];
    }
    else {
        return NO;
    }
}
-(BOOL)应用程序:(UIApplication*)应用程序openURL:(NSURL*)url选项:(NSDictionary*)选项
{
if([[url.scheme lowercasesetring]isEqualToString:@“dribel”])
{
//恢复登录流
返回[self.azureService.client resumeWithURL:url];
}
否则{
返回否;
}
}
但是webview应该被删除,删除后代码应该放在第一段代码的else语句上,但它什么也没做。我必须按“完成”键,并在“如果是真的”语句上着陆,它说我取消了它。有人知道什么地方可能出错吗


我们在azure门户中设置了外部url,以重定向到正确的appname://因此,我们在应用程序委托中实现了这一点。但是还缺少什么呢?

如果是开源sdk,请自己调试。您需要知道的是safariview控制器!azure文档没有显示在何处或如何取消它,因为它是从azure框架内部调用的,但是他们的示例“很有效”。我的工作日程排得很紧,不能花时间下载开源项目并进行调试,以根据他们的文档找出一些应该工作的东西。谢谢你的回复。我会再次检查或联系微软,看看是否有bug,但我不能在公司工作时间处理其他事情。