firebase / flutterfire

πŸ”₯ A collection of Firebase plugins for Flutter apps.
https://firebase.google.com/docs/flutter/setup
BSD 3-Clause "New" or "Revised" License
8.6k stars 3.95k forks source link

πŸ› [Firebase Auth] It is logged in to previous account before deleting the application on ios 14 only. #3660

Closed Jazzykhan closed 2 years ago

Jazzykhan commented 3 years ago

Bug report

Describe the bug Hi, when i use Firebase Auth in my flutter app and run it on ios 14 (iPhone xsmax). i login with my normal account and then i delete the app but once i reinstall the app again from android studio it is not logged out, instead it is logged in to the very same account which was logged in previously.

Steps to reproduce

Steps to reproduce the behavior:

  1. Run the app from android studio (with firebase auth and ios settings ofc).
  2. Sign in to an account and then delete the app from iphone.
  3. Delete the app and reinstall again from android studio and you will be logged in already.

Expected behavior

It should ask me to login again as i have deleted the app.


Additional context

Add any other context about the problem here.


Flutter doctor

Run flutter doctor and paste the output below:

Click To Expand ``` Doctor summary (to see all details, run flutter doctor -v): [βœ“] Flutter (Channel stable, 1.20.4, on Mac OS X 10.15.6 19G2021, locale en-PK) [βœ“] Android toolchain - develop for Android devices (Android SDK version 29.0.3) [βœ“] Xcode - develop for iOS and macOS (Xcode 12.0) [βœ“] Android Studio (version 4.0) [βœ“] VS Code (version 1.49.1) [βœ“] Connected device (1 available) β€’ No issues found! ```

Flutter dependencies

Run flutter pub deps -- --style=compact and paste the output below:

Click To Expand ``` Dart SDK 2.9.2 Flutter SDK 1.20.4 gordied 1.0.0+1 dependencies: - cloud_firestore 0.13.7 [flutter meta firebase_core cloud_firestore_platform_interface cloud_firestore_web] - connectivity 0.4.9+2 [flutter meta connectivity_platform_interface connectivity_macos connectivity_for_web] - cupertino_icons 0.1.3 - firebase_auth 0.16.1 [meta firebase_core firebase_auth_platform_interface firebase_auth_web flutter] - firebase_core 0.4.5 [firebase_core_platform_interface flutter meta firebase_core_web] - firebase_storage 3.1.6 [flutter firebase_core] - flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine] - flutter_email_sender 3.0.1 [flutter] - image_cropper 1.3.1 [flutter] - image_picker 0.6.7+10 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface] - open_file 3.0.1 [flutter ffi] - path_provider 1.6.17 [flutter path_provider_platform_interface path_provider_macos path_provider_linux path_provider_windows] - pdf 1.11.2 [meta vector_math utf crypto archive barcode image path_parsing] - photo_view 0.10.2 [flutter] - printing 3.6.1 [flutter flutter_web_plugins pdf plugin_platform_interface meta image js] - screenshot 0.2.0 [path_provider flutter] - shared_preferences 0.5.11 [meta flutter shared_preferences_platform_interface shared_preferences_linux shared_preferences_macos shared_preferences_web shared_preferences_windows] - signature 3.2.0 [flutter image] - string_validator 0.1.4 - uuid 2.2.2 [crypto convert] dev dependencies: - flutter_launcher_icons 0.7.5 [image args yaml] - flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher meta source_span stream_channel string_scanner term_glyph typed_data] transitive dependencies: - archive 2.0.13 [crypto args path] - args 1.6.0 - async 2.4.2 [collection] - barcode 1.17.0 [meta qr] - boolean_selector 2.0.0 [source_span string_scanner] - characters 1.0.0 - charcode 1.1.3 - clock 1.0.1 [meta] - cloud_firestore_platform_interface 1.1.2 [flutter meta collection firebase_core plugin_platform_interface] - cloud_firestore_web 0.1.1+2 [flutter flutter_web_plugins firebase http_parser meta firebase_core cloud_firestore_platform_interface js] - collection 1.14.13 - connectivity_for_web 0.3.1+2 [connectivity_platform_interface flutter_web_plugins flutter] - connectivity_macos 0.1.0+5 [flutter] - connectivity_platform_interface 1.0.6 [flutter meta plugin_platform_interface] - convert 2.1.1 [charcode typed_data] - crypto 2.1.4 [collection convert typed_data] - fake_async 1.1.0 [clock collection] - ffi 0.1.3 - file 5.2.1 [intl meta path] - firebase 7.3.0 [http http_parser js] - firebase_auth_platform_interface 1.1.8 [flutter meta plugin_platform_interface] - firebase_auth_web 0.1.3+1 [firebase_auth_platform_interface flutter flutter_web_plugins firebase http_parser meta js] - firebase_core_platform_interface 1.0.4 [flutter meta plugin_platform_interface quiver] - firebase_core_web 0.1.1+2 [firebase firebase_core_platform_interface flutter flutter_web_plugins meta js] - flutter_plugin_android_lifecycle 1.0.9 [flutter] - flutter_web_plugins 0.0.0 [flutter characters collection meta typed_data vector_math] - http 0.12.2 [http_parser path pedantic] - http_parser 3.1.4 [charcode collection source_span string_scanner typed_data] - image 2.1.12 [archive xml] - image_picker_platform_interface 1.1.1 [flutter meta http plugin_platform_interface] - intl 0.16.1 [path] - js 0.6.2 - matcher 0.12.8 [stack_trace] - meta 1.1.8 - path 1.7.0 - path_parsing 0.1.4 [vector_math meta] - path_provider_linux 0.0.1+2 [path xdg_directories path_provider_platform_interface flutter] - path_provider_macos 0.0.4+4 [flutter] - path_provider_platform_interface 1.0.3 [flutter meta platform plugin_platform_interface] - path_provider_windows 0.0.4+1 [path_provider_platform_interface meta path flutter ffi win32] - pedantic 1.9.0 - petitparser 2.4.0 [meta] - platform 2.2.1 - plugin_platform_interface 1.0.2 [meta] - process 3.0.13 [file intl meta path platform] - qr 1.3.0 [meta] - quiver 2.1.3 [matcher meta] - shared_preferences_linux 0.0.2+2 [file flutter meta path path_provider_linux shared_preferences_platform_interface] - shared_preferences_macos 0.0.1+10 [shared_preferences_platform_interface flutter] - shared_preferences_platform_interface 1.0.4 [meta flutter] - shared_preferences_web 0.1.2+7 [shared_preferences_platform_interface flutter flutter_web_plugins meta] - shared_preferences_windows 0.0.1+1 [shared_preferences_platform_interface flutter ffi file meta path path_provider_platform_interface path_provider_windows] - sky_engine 0.0.99 - source_span 1.7.0 [charcode collection meta path term_glyph] - stack_trace 1.9.5 [path] - stream_channel 2.0.0 [async] - string_scanner 1.0.5 [charcode meta source_span] - term_glyph 1.1.0 - test_api 0.2.17 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher] - typed_data 1.2.0 [collection] - utf 0.9.0+5 - vector_math 2.0.8 - win32 1.7.3 [ffi] - xdg_directories 0.1.0 [path process flutter] - xml 3.6.1 [collection convert meta petitparser] - yaml 2.2.1 [charcode collection string_scanner source_span] ```

Ehesp commented 3 years ago

@Salakar seem to remember this being a ios keychain issue?

Jazzykhan commented 3 years ago

Yes most probably i am not a very pro developer but i am sure i am deleting the app with logged in account and when i install again it remembers the account. thanks

Jazzykhan commented 3 years ago

So the logic is simple i have this code in my splashscreen's initstate. if (FirebaseAuth.instance.currentUser == null){ Navigator.push(Login()); } else(){ Navigator.push(userHome()); }

the above code is example. Even after deleting the app iOS remembers my user and uid so it always come when i call the auth.currentuser and it redirects me to user page instead of login why is that? i have tested multiple apps. thanks

Jazzykhan commented 3 years ago

@Salakar man reply please. thanks

robindijkhof commented 3 years ago

I have the same issue. Somehow that data got corrupted resulting in a crash on startup. Users try reinstalling the app but that does not work.

LucaJeevanjee commented 3 years ago

I have the same issue. Somehow that data got corrupted resulting in a crash on startup. Users try reinstalling the app but that does not work.

I am getting this same issue, any way to fix this crash? It is a big problem!

Salakar commented 2 years ago

I'm not sure what to suggest here, this is the behaviour of the underlying Firebase SDKs that we wrap only - we're not persisting authentication ourselves, If this is a real issue then perhaps raising an issue on the Firebase Android/iOS SDK repositories may be better