@IBAction func FBLoginAction(_ sender: AnyObject) { fbLoginManager.loginBehavior = FBSDKLoginBehavior.browser fbLoginManager.logIn(withReadPermissions: ["public_profile","email","user_friends"],from: self) { (result,error) -> Void in if (error != nil) { return } } }
如果我登录两次,然后再次运行该应用程序,此行将在appdelegate中崩溃.
FBSDKApplicationDelegate.sharedInstance().application(application,didFinishLaunchingWithOptions: launchOptions)
如果我只登录一次,然后再次运行应用程序,则不会发生崩溃.崩溃的完整堆栈如下:
2016-12-09 10:51:28.893 Persistence[73125:897290]
-[NSConcreteMutableData isEqualToString:]: unrecognized selector sent to instance 0x60000004ec40 2016-12-09 10:51:28.903
Persistence[73125:897290] *** Terminating app due to uncaught
exception ‘NSInvalidArgumentException’,reason:
‘-[NSConcreteMutableData isEqualToString:]: unrecognized selector sent
to instance 0x60000004ec40’*** First throw call stack: ( 0 CoreFoundation 0x00000001085e634b exceptionPreprocess + 171 1 libobjc.A.dylib
0x0000000107c2a21e objc_exception_throw + 48 2 CoreFoundation
0x0000000108655f34 -[NSObject(NSObject) doesNotRecognizeSelector:] +
132 3 CoreFoundation 0x000000010856bc15
___forwarding_ + 1013 4 CoreFoundation 0x000000010856b798 _CF_forwarding_prep_0 + 120 5 FBSDKCoreKit
0x000000010700aa5a -[FBSDKAccessTokenCacheV4 fetchAccessToken] + 202
6 FBSDKCoreKit 0x000000010700902c
-[FBSDKAccessTokenCache fetchAccessToken] + 92 7 FBSDKCoreKit 0x0000000107017d2d -[FBSDKApplicationDelegate
application:didFinishLaunchingWithOptions:] + 125 8 Persistence
0x000000010572bcb7
_TFC11Persistence11AppDelegate11applicationfTCSo13UIApplication29didFinishLaunchingWithOptionsGSqGVs10DictionaryVSC29UIApplicationLaunchOptionsKeyP____Sb
+ 727 9 Persistence 0x000000010572cfb4 _TToFC11Persistence11AppDelegate11applicationfTCSo13UIApplication29didFinishLaunchingWithOptionsGSqGVs10DictionaryVSC29UIApplicationLaunchOptionsKeyP____Sb
+ 180 10 UIKit 0x00000001091110be -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 290 11 UIKit 0x0000000109112a43
-[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 4236 12 UIKit 0x0000000109118de9
-[UIApplication _runWithMainScene:transitionContext:completion:] + 1731 13 UIKit 0x0000000109115f69
-[UIApplication workspaceDidEndTransaction:] + 188 14 FrontBoardServices 0x000000010d698723
FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK + 24 15 FrontBoardServices 0x000000010d69859c
-[FBSSerialQueue _performNext] + 189 16 FrontBoardServices 0x000000010d698925 -[FBSSerialQueue _performNextFromRunLoopSource] +
45 17 CoreFoundation 0x000000010858b311
CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17 18 CoreFoundation 0x000000010857059c
__CFRunLoopDoSources0 + 556 19 CoreFoundation 0x000000010856fa86 __CFRunLoopRun + 918 20 CoreFoundation
0x000000010856f494 CFRunLoopRunSpecific + 420 21 UIKit
0x00000001091147e6 -[UIApplication _run] + 434 22 UIKit
0x000000010911a964 UIApplicationMain + 159 23 Persistence
0x000000010572d97f main + 111 24 libdyld.dylib
0x000000010b3a368d start + 1 ) libc++abi.dylib: terminating with
uncaught exception of type NSException