facebook / facebook-android-sdk

Used to integrate Android apps with Facebook Platform.
https://developers.facebook.com/docs/android
Other
6.12k stars 3.65k forks source link

Terrible user experience with facebook-login (blinking loaders, modals, status bar) during login #1177

Open nolimitdev opened 1 year ago

nolimitdev commented 1 year ago

Checklist before submitting a bug report

Java version

Any

Android version

Any

Android SDK version

Any including latest v16.0.0

Installation platform & version

In Android Studio mavenCentral() + dendency com.facebook.android:facebook-login:16.0.0

Package

Login

Goals

I have created demo video how facebook login looks to notice this terrible user experience. There are blinking different loaders, different modal windows, status bar background during login before user is logged in. I think that huge company as Facebook should take care about this. Please fix it for better user experience. Current status is not acceptable for production use - for users it looks like some alfa/testing release. Note that how it looks like it is not just my testing app, it happens in any android app with Facebook SDK login. Im seeing this ugly user experience for very long time in any app Im using from PlayStore and now Im reporting it and hope it will be improved. I do not understand why there is also blinking status bar, why Facebook changes it at all.

GIF VIDEO (click play to start): fb-sdk-login

Expected results

User login process should look more user-friendly.

Actual results

User login process looks very ugly when there are blinking different loaders, different modal windows, status bar background during login and before user is logged in

Steps to reproduce

Nothing special, just use Facebook login as recommended in doc https://developers.facebook.com/docs/facebook-login/android/

dnissley commented 1 year ago

Hi @nolimitdev -- apologies for the bad experience here. There was an issue over the weekend that should be resolved now. This behavior can still occur in some circumstances (mainly depending on the permissions you request) but we are working on making changes so that this should no longer occur at all.

If you are still experiencing the issue please post which permissions you are requesting along with your app id.

nolimitdev commented 1 year ago

@dnissley There was an issue over the weekend that should be resolved now.. It is not temporary problem, facebook login on android looks like in video for ages. Anyway video has been recorder yesterday so after some weekend-only issue. To see that ugly process it is enough to request standard permissions useful for sign-in/sign-up process: email + profile...

com.facebook.login.LoginManager.getInstance().logInWithReadPermissions(mainActivity, Arrays.asList("email", "public_profile"));

nolimitdev commented 1 year ago

It seems that whole SDK for login should be refactored. Do not start some UI activities for user which you will need hide after several milliseconds. Just show one loader at start, do/check things on the background and show some other UI activities only if needed. Such as Google login does. And please do not touch status bar background if you do not need to show some UI activity e.g. to grant permissions by user. So if user logins second and other times and no UI activity is needed, do not change status bar background - if you need use transparent (or copy/inherit app's status bar background color) so app background will be still used without blinking black background as in video.

nolimitdev commented 1 year ago

And do not forget please to still not fixed bug when user logins first time he can click cancel which opens browser with white blank page. It is reported several times: https://github.com/facebook/facebook-android-sdk/issues?q=is%3Aissue+is%3Aopen+empty+page

GIF VIDEO (click play to start): sign-in-cancel-blank-page

kahaYu commented 1 year ago

Hello, @nolimitdev !

Totally support you. I implemented Facebook Login SDK today and faced the same terrible UX.

@dnissley , we are all praying to see the correct behavior in near future :)