应用程序授权后的IOS Facebook空白白屏

应用程序授权后的IOS Facebook空白白屏,ios,facebook,parse-platform,facebook-ios-sdk,Ios,Facebook,Parse Platform,Facebook Ios Sdk,我正在从Parse v1.6.4升级到最新版本,同时我也正在将facebook ios sdk升级到v4.7。 问题是,在应用程序被授权后,它会显示一个空白的白色屏幕,如果我单击“完成”,它会关闭safari,并且在日志中显示,用户已取消登录。 在升级到新版本之前,它工作正常 我的朋友 viewController.m 这是屏幕的图像 我正在IPhone 6设备上运行此测试应用程序。 谢谢!:) 编辑1: 今天,我将我的项目升级到Facebook新的v4.8 SDk,这次,它似乎正在运行。 我

我正在从Parse v1.6.4升级到最新版本,同时我也正在将facebook ios sdk升级到v4.7。 问题是,在应用程序被授权后,它会显示一个空白的白色屏幕,如果我单击“完成”,它会关闭safari,并且在日志中显示,用户已取消登录。
在升级到新版本之前,它工作正常

我的朋友

viewController.m

这是屏幕的图像

我正在IPhone 6设备上运行此测试应用程序。
谢谢!:)

编辑1:
今天,我将我的项目升级到Facebook新的v4.8 SDk,这次,它似乎正在运行。
我不确定当时我做错了什么,但现在它适用于arm64设备。
但是当我启用对ARMV7的支持时,它给了我这个错误

它指向FBSDKLoginKit.framework。
是否不再支持armv7s设备?
是否有任何方法可以消除此错误?

谢谢!:)

我也有同样的问题,结果是

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool 
在ios 9.0中不推荐使用。我也实现了这个方法

func application(application: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool 
因此FB SDK正在调用后者。 因此,我必须确保在两种方法中调用FBSDKApplicationDelegate(一次用于ios8,一次用于ios9)

以下是我对AppDelegate的实现:

 @available(iOS 9.0, *)
func application(application: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool {
    let handled = FBSDKApplicationDelegate.sharedInstance().application(application,
                                                                        openURL: url,
                                                                        sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey] as! String,
                                                                        annotation: options [UIApplicationOpenURLOptionsAnnotationKey])
    if !handled {
        return self.openURL(url)
    }
    return true
}

@available(iOS, introduced=8.0, deprecated=9.0)
func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {
    let handled = FBSDKApplicationDelegate.sharedInstance()
        .application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)
    if !handled {
        return self.openURL(url)
    }
    return true
}

其中self.openURL(url)可用于处理facebook以外的其他url类型

谢谢达尔梅什!现在好多了!你是怎么做到的?我的意思是,通过使用一些图片托管网站或其他东西?你需要声誉来附加图片。哦,好的:)谢谢你,安图!乍一看一切正常,所以可能是配置问题?我将检查您在应用程序上设置的Facebook应用程序ID是否为您打算使用的ID,以及您的Facebook应用程序设置是否为iOS正确设置。另外,我会检查您是否尝试以appYou lifesaver的管理员、开发人员或测试人员的身份登录。此AppDelegate方法的细微差异签名花费了我们许多小时。。
- (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication
         annotation:(id)annotation {
  return [[FBSDKApplicationDelegate sharedInstance] application:application
                                                         openURL:url
                                               sourceApplication:sourceApplication
                                                      annotation:annotation];
}

- (void)applicationDidBecomeActive:(UIApplication *)application {
  [FBSDKAppEvents activateApp];
}

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  return [[FBSDKApplicationDelegate sharedInstance] application:application
                                    didFinishLaunchingWithOptions:launchOptions];
}
-(IBAction)facebookLogin:(id)sender
{
    FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];

    if ([FBSDKAccessToken currentAccessToken])
    {
        //Do something

    }
    else
    {
        [login logInWithReadPermissions:@[@"email"] fromViewController:nil handler:^(FBSDKLoginManagerLoginResult *result, NSError *error)
         {
             if (error)
             {
                 NSLog(@"Error");
             }
             else if (result.isCancelled)
             {
                 NSLog(@"User cancelled login");
             }
             else
             {
                 NSLog(@"Login Success");

                 if ([result.grantedPermissions containsObject:@"email"])
                 {
                     NSLog(@"result is:%@",result);

                 }
                 else
                 {
                     NSLog(@"FB email permission error");

                 }
             }
         }];
    }
}
ld: file is universal (4 slices) but does not contain a(n) armv7s slice:
func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool 
func application(application: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool 
 @available(iOS 9.0, *)
func application(application: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool {
    let handled = FBSDKApplicationDelegate.sharedInstance().application(application,
                                                                        openURL: url,
                                                                        sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey] as! String,
                                                                        annotation: options [UIApplicationOpenURLOptionsAnnotationKey])
    if !handled {
        return self.openURL(url)
    }
    return true
}

@available(iOS, introduced=8.0, deprecated=9.0)
func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {
    let handled = FBSDKApplicationDelegate.sharedInstance()
        .application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)
    if !handled {
        return self.openURL(url)
    }
    return true
}