I am trying to use Xcode 8 to build a app with Facebook login using Swift 3. When I switch back iOS Simulator 9.3, it works. In iOS 10, I receive this error:
""fbauth2:/" The operation couldn’t be completed. (OSStatus error -10814.)"
Optional(Error Domain=com.facebook.sdk.login Code=308 "(null)")
Error OSStatus -10814 occures when
canOpenURL: can't find any application, that can open this URL (actually, Facebook trying to find their application by calling
canOpenURL: with argument "fbauth2:/"). Printing happens inside of function, so you can't do anything with that.
But if you will run your application on device with installed Facebook app, you will not see this error.
Error 308 occures because of the situation, when value, stored in keychain is not equal to value, that is stored in facebook completion parameters (for more information you can check
It happens because Apple changed the way of working with keychain in iOS 10. To fix this issue you simply should go to Targets->Capabilities and enable keychain sharing (it enables access to keychain for your app):