FirebaseExtended / flutterfire_desktop

An early-stage, experimental pure-Dart implementation of Firebase SDKs.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

πŸ› [auth] Apple Auth

filipenanclarez opened this issue Β· comments

As i said in #49, the partial solution implemented in #65 not fix the main problem.

We need oAuth Apple Auth work in all platforms, not only in macOS. I think some changes in desktop_webview_auth is needed to make this works.

The way OAuth providers work with FlutterFire is through a third-party plugin.

For example, Google is added on mobile and web using sign_in_with_google plugin, we created desktop_webview_auth to handle sign in with Google on Desktop platforms, but in both cases firebase_auth doesn't have this support built-in.

Similarly for Apple Auth, if the plugin sign_in_with_apple would add support for Windows or Linux, then you can easily get the credentials and use them in firebase_auth through signInWithCredentials method.

Therefore, it's not within the current scope of Firebase Auth or FlutterFire Desktop.

The way OAuth providers work with FlutterFire is through a third-party plugin.

For example, Google is added on mobile and web using sign_in_with_google plugin, we created desktop_webview_auth to handle sign in with Google on Desktop platforms, but in both cases firebase_auth doesn't have this support built-in.

Similarly for Apple Auth, if the plugin sign_in_with_apple would add support for Windows or Linux, then you can easily get the credentials and use them in firebase_auth through signInWithCredentials method.

Therefore, it's not within the current scope of Firebase Auth or FlutterFire Desktop.

I understand, but finally, we can't got the solution at all. My user cannot use one account in iPhone and then, on windows, use another account. So a simple if platform == macos then show apple button do not fix this problem at the end.

I think the desktop_webview_auth is the right way to handle this. So i opened an issue there.

invertase/flutter_desktop_webview_auth#18

Thank you for explanation.