facebook / facebook-sdk-for-unity

The facebook sdk for unity.
https://developers.facebook.com/docs/unity
Other
488 stars 257 forks source link

7.17.2-IOS : FB login not working on first attempt. #322

Open GauravG1 opened 5 years ago

GauravG1 commented 5 years ago

Hi, when I call _FB.LogInWithReadPermissions (new List(){"publicprofile", "email"}, OnLogin); and click on the "continue" in the Native dialog box, FB's Login window appears for a fraction of time and control returns to the game automatically. When I repeat the process by calling LoginWithReadPermissions again, It works fine. This was working fine with v7.13.0.

We are getting following error in Xcode logs. NetworkInfo] Signal strength query returned error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied", descriptor: <CTServiceDescriptor 0x28388f120, domain=1, instance=1>

We are using Unity2019.1.8f1. Does anyone have any clue about it?

reflexing commented 5 years ago

We have the same issue. Spent three weeks trying to solve it, stopped at calling FB.LoginWithReadPermissions again in 3 seconds, because immediate second call fails.

I can also add that FacebookDelegate callback isn't getting called on the first FB.LoginWithReadPermissions call, and the UITransitionWindow with SFAuthenticationViewController stays at view hierarchy, as in it loses focus to Unity window.

I thought this is somehow related to other SDKs that we use, tried to remove them one by one (kept Firebase and UnityIAP), but the bug persisted. And it works on the new project AND on the first scene of our project. A mystery.

This is hierarchy when SFAuthenticationView opens normally: normal-flow-ui-hierarchy

This is when it loses focus: borked-flow-ui-hierarchy

GauravG1 commented 5 years ago

@reflexing Thanks a lot for your reply and work around. We also noticed that this issue is not reproduced on devices with IOS-13 and works fine there.

reflexing commented 5 years ago

@GauravG1 they use new ASWebAuthenticationSession on iOS 13, maybe it works because of that. See https://github.com/facebook/facebook-objc-sdk/blob/master/FBSDKCoreKit/FBSDKCoreKit/Internal/BridgeAPI/FBSDKBridgeAPI.m