У меня есть IOS 9 приложения (Xcode 7.1, Swift 2,0) со следующими стручками, с использованием последних версий на момент этого поста:PFFacebookUtils.logInInBackgroundWithReadPermissions блок возвращает пользователь = ноль и ошибки = ноль
pod 'Parse' (using latest version 1.12.0)
pod 'ParseFacebookUtilsV4' (using latest version 1.11.0)
Я пытаюсь выполнить следующий код:
let permissions = ["public_profile", "email"]
PFFacebookUtils.logInInBackgroundWithReadPermissions(permissions) {
(user, error) in
// Both user and error are nil here
}
Но я всегда получаю nil
пользователя и ошибка nil
. Вход работал несколько месяцев назад, но внезапно (я верю после pod update
), логин перестает работать.
Я добавил все соответствующие записи Plist, как описано на сайте the Facebook developers, и я добавил все соответствующие функции в приложение делегата:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(launchOptions)
FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
return true
}
func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool {
let sourceApplication = options[UIApplicationOpenURLOptionsSourceApplicationKey] as? String
return FBSDKApplicationDelegate.sharedInstance().application(app, openURL: url, sourceApplication: sourceApplication, annotation: nil)
}
func applicationDidBecomeActive(application: UIApplication) {
FBSDKAppEvents.activateApp()
}
не уверен, что это ваш случай, но в 'didFinishLaunchingWithOptions:' я инициализировал PFFacebookUtils перед инициализацией Parse ... после замены этих двух строк он начал работать как шарм (действительно глупая ошибка :) –