Обратный вызов входа в Facebook никогда не срабатывал в iOS-SDK v 4.18.0
Я реализую вход в Facebook для моего приложения iOS в Xcode 8.1 с Swift3. Операция просто выполняется с помощью следующей функции:
[loginManager logInWithReadPermissions:@[@"email"]
fromViewController:self
handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
// my callback logic
}];
(Я получил этот фрагмент кода из документации Facebook. Я сейчас не на своем рабочем компьютере; из-за этого это obj-c)
Я тоже все отлично реализовал, что касается AppDelegate
как методы входа в Facebook SDK, Info.plist
ключевые значения и т. д.
Когда у пользователя установлено приложение Facebook, все работает нормально.
Однако, когда у пользователя не установлено приложение Facebook, обратный вызов предыдущей функции никогда не вызывается. SafaroViewController
появляется, пользователь входит в систему и либо предоставляет разрешения или отклоняет запрос. И внезапно, SafariViewController
исчезает и мой обратный вызов не вызывается (AppDelegate
как методы входа в Facebook (SDK).
В чем может быть проблема?
1 ответ
Приписывать FBSDKLoginButton
как класс вашей кнопки вместо UIButton
и в вашей розетке тоже. Затем установите кнопку delegate
а также permission
в viewDidLoad
,
@IBOutlet weak var faceBookLoginButton: FBSDKLoginButton!
// MARK: - View life cycle methods
override func viewDidLoad() {
super.viewDidLoad()
// Facebook Permissions
faceBookLoginButton.readPermissions = ["email"]
faceBookLoginButton.delegate = self
}
Спасибо:)