5
をキャンセルした場合、私Facebookでログインするには、次のコードを使用しています:スウィフトIOS Facebookのログインがクラッシュしたアプリユーザーがログイン
@IBAction func fbLoginBtnDidTouch(sender: AnyObject) {
let fbLoginManager : FBSDKLoginManager = FBSDKLoginManager()
fbLoginManager.logInWithReadPermissions(["email"], fromViewController: self) { (result, error) -> Void in
if (error == nil){
let fbloginresult : FBSDKLoginManagerLoginResult = result
if(fbloginresult.grantedPermissions.contains("email"))
{
self.getFBUserData()
}
}
}
}
AppDelegate:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
}
func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {
return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)
}
これはWebViewの中でFBを起動しますが。ユーザーがFBアカウントからアプリを受け入れると、期待通りにアプリに戻ります。マーキング
:(予期せずにオプションの値をアンラップしながら、nilを見つけ致命的なエラー)
しかし、ユーザーがNOをクリックするか、アプリが言ってクラッシュしますFBとのWebViewで完了ボタンをクリックした場合
この行:if(fbloginresult.grantedPermissions.contains("email"))
なぜ、ユーザーが[いいえ]または[完了]をクリックするとアプリがクラッシュするのですか?
はいアプリがクラッシュし、私は感謝NOをクリックするか、[完了]ボタン – user2722667
チェック編集した答え – tbilopavlovic
のいずれか、ログインをキャンセル!それはそれでした – user2722667