🔥FlutterFire is a set of Flutter plugins that enable Flutter apps to use Firebase services.

Overview


FlutterFire

all_plugins GitHub Workflow Status Follow on Twitter


FlutterFire is a set of Flutter plugins that enable Flutter apps to use Firebase services. You can follow an example that shows how to use these plugins in the Firebase for Flutter codelab.

Flutter is Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase. Flutter is used by developers and organizations around the world, and is free and open source.

Note: FlutterFire is still under development (see roadmap), and some APIs and platforms might not be available yet. Feedback and Pull Requests are most welcome!

Plugins

Table of contents:


firebase_analytics

firebase_analytics firebase_analytics pub points

Google Analytics for Firebase provides automatic captures of certain key application events and user properties, and you can define your own custom events to measure the things that uniquely matter to your application. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️ ✔️ ✔️

firebase_auth

firebase_auth firebase_auth pub points

Firebase Authentication provides easy-to-use APIs to authenticate users to your app. It supports authentication using passwords, phone numbers, popular federated identity providers like Google, Facebook and Twitter, and more. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️ ✔️ ✔️

cloud_firestore

cloud_firestore cloud_firestore pub points

Cloud Firestore is a NoSQL document database that lets you easily store, sync, and query data for your mobile and web apps - at global scale. [Learn More]

[View Documentation] [View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️ ✔️ ✔️

cloud_functions

cloud_functions cloud_functions pub points

The Cloud Functions for Firebase plugin let you call functions directly from within your app. To call a function from your app in this way, write and deploy an HTTPS Callable function in Cloud Functions, and then add client logic to call the function from your app. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️ ✔️ ✔️

firebase_messaging

firebase_messaging pub points

Firebase Cloud Messaging (FCM) provides a reliable and battery-efficient connection between your server and devices that allows you to deliver and receive messages and notifications on iOS & Android, at no cost. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️ ✔️ ✔️

firebase_storage

firebase_storage firebase_storage pub points

Cloud Storage is designed to help you quickly and easily store and serve user-generated content, such as photos and videos. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️ ✔️ ✔️

firebase_core

firebase_core firebase_core pub points

Firebase Core provides APIs to manage your Firebase application instances and credentials. This plugin is required by all FlutterFire plugins.

[View Documentation] [View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️ ✔️ ✔️

firebase_crashlytics

firebase_crashlytics pub points

Firebase Crashlytics helps you track, prioritize, and fix stability issues that erode app quality, in realtime. Spend less time triaging and troubleshooting crashes and more time building app features that delight users. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️

firebase_database

firebase_database firebase_database pub points

The Firebase Realtime Database is a cloud-hosted NoSQL database that lets you store and sync data between your users in realtime. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️ ✔️

firebase_dynamic_links

firebase_dynamic_links pub points

Dynamic Links are smart URLs that allow you to send existing and potential users to any location within your iOS or Android app. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️

firebase_in_app_messaging

firebase_in_app_messaging pub points

Firebase In-App Messaging helps you engage users who are actively using your app by sending them targeted and contextual messages that nudge them to complete key in-app actions - like beating a game level, buying an item, or subscribing to content. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️

firebase_ml_custom

firebase_ml_custom pub points

Use Firebase ML to deploy custom models. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️

firebase_ml_vision

firebase_ml_vision pub points

Use Firebase ML turn-key solutions with the Cloud Vision APIs. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️

firebase_performance

firebase_performance firebase_performance pub points

Get insights into how your app performs from your users’ point of view, with automatic and customized performance tracing. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️

firebase_remote_config

firebase_remote_config firebase_remote_config pub points

With Firebase Remote Config, you can change the behavior and appearance of your app on the fly from the Firebase console, and then track performance in Google Analytics for Firebase. [Learn More]

[View Source]

Platform Support

Android iOS MacOS Web
✔️ ✔️ ✔️

Issues

Please file FlutterFire specific issues, bugs, or feature requests in our issue tracker.

Plugin issues that are not specific to FlutterFire can be filed in the Flutter issue tracker.

Contributing

If you wish to contribute a change to any of the existing plugins in this repo, please review our contribution guide and open a pull request.

Status

Status: Experimental

This repository is maintained by Googlers but is not a supported Firebase product. Issues here are answered by maintainers and other community members on GitHub on a best-effort basis.

Comments
  • [firebase_messaging] iOS 13 push notification NOT working

    [firebase_messaging] iOS 13 push notification NOT working

    Push notification does not seem to work on iOS 13 device nor on my iOS 12.4.1 device on stable 1.9.1. Seems to be 2 separate issues as well.

    1. in Flutter Stable 1.9.1, push notifications do not appear on my iOS 12.4.1 device, when the always worked before on older flutter versions.
    2. iOS 13 device does not receive push notifications at all

    Some reading available from oneSignal https://onesignal.com/blog/ios-13-introduces-4-breaking-changes-to-notifications/

    I updated my device OS(personal) version to 13, cannot further test without downgrading it back to 12.4.1. and I do not have a spare iPhone available.

    Thank you

    Also for other users, can you please input our own issue related to the mentioned. Things such as current physical device iOS software version and flutter channel along with its version number. so we can compile a list of where in flutter and iOS(versions) things just stopped working.

    Push notification is and should be very ### critical part of a persons or companies application when used right. I hope we can address the issues and come up with a solution.

    type: bug impact: crowd (P2) plugin: messaging 
    opened by kroikie 264
  • 🐛 [firebase_messaging] Background handler never invoked on iOS

    🐛 [firebase_messaging] Background handler never invoked on iOS

    Bug report

    Describe the bug According to https://firebase.flutter.dev/docs/messaging/usage/#message-types, the background handler should be invoked for notification messages, data messages or a combination of both when the app is in the background or terminated. In our project, it is not invoked in any of those cases. For the sake of completeness it is worth to mention that the onMessage stream fires properly when the app is in foreground and also the notification handled by the FCM-SDK is shown when the app is in background/terminated. It's just the onBackgroundMessage which is never invoked.

    We are aware of the content_available flag, however, the issue does not just relate to silent (data only) messages.

    Steps to reproduce

    Steps to reproduce the behavior:

    1. run the simplified code snipped below
    2. (optional) add a breakpoint in the background handler
    3. put the app into background/terminate it
    4. send a notification/data message via FCM (Firebase console or API call)
    5. result: "Handling a background message..." is not printed in the console, nor does the debugger stop in the _firebaseMessagingBackgroundHandler

    Expected behavior

    onBackgroundMessage is invoked when the app is in background or terminated.

    Sample project

    Future<void> _firebaseMessagingBackgroundHandler(RemoteMessage message) async {
      print('Handling a background message: ${message.messageId}');
    }
    
    Future<void> main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp();
    
      FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler);
    
      final token = await FirebaseMessaging.instance.getToken();
      print('Push notification token: $token');
    
      FirebaseMessaging.onMessage.listen((RemoteMessage message) {
        print('Got a message whilst in the foreground!');
        print('Message data: ${message.data}');
    
        if (message.notification != null) {
          print('Message also contained a notification: ${message.notification}');
        }
      });
    }
    

    Edit: Payload (suggested by @markusaksli-nc)

    We have tried quite a lot of different payload combinations, with both, containing a data object only and a notification object respectively. We have also tried addressing the recipient via a topic (which is our intended use case) as well as with the unique device token. Background modes (Background fetch and Remote Notifications) are enabled too. On the server side, we are using the Java SDK, however, we have also tried sending a POST request directly via Google's OAuth 2.0 Playground.

    The following indicates a sample payload:

    {
       "topic": "test-topic",
       "message": {
          "data": {
             "data-item": "my-data-item"
          },
          "apns": {
             "payload": {
                "aps": {
                   "content-available": 1
                },
             }
          },
       },
    }
    

    Additional context

    • Test device with iOS 14.5.1 installed
    • iOS project was configured according to https://firebase.flutter.dev/docs/messaging/apple-integration
    • firebase_messaging: ^10.0.0

    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, 2.0.3, on macOS 11.3 20E232 darwin-x64, locale en-AT)
    [✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    [✓] Xcode - develop for iOS and macOS
    [✓] Chrome - develop for the web
    [✓] Android Studio (version 4.1)
    [✓] IntelliJ IDEA Ultimate Edition (version 2020.3.1)
    [✓] VS Code (version 1.56.2)
    [✓] Connected device (3 available)
    

    Flutter dependencies

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

    Click To Expand
    Dart SDK 2.12.2
    Flutter SDK 2.0.3
    
    dependencies:
    - firebase_analytics 8.1.0 [firebase_analytics_platform_interface firebase_analytics_web firebase_core flutter meta]
    - firebase_core 1.2.0 [firebase_core_platform_interface firebase_core_web flutter meta]
    - firebase_crashlytics 2.0.4 [firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface flutter stack_trace]
    - firebase_messaging 10.0.0 [firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web flutter meta]
    ...
    transitive dependencies:
    - firebase 9.0.1 [http http_parser js]
    - firebase_analytics_platform_interface 2.0.1 [flutter meta]
    - firebase_analytics_web 0.3.0+1 [firebase firebase_analytics_platform_interface flutter flutter_web_plugins meta]
    - firebase_core_platform_interface 4.0.1 [collection flutter meta plugin_platform_interface]
    - firebase_core_web 1.1.0 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
    - firebase_crashlytics_platform_interface 3.0.4 [collection firebase_core flutter meta plugin_platform_interface]
    - firebase_messaging_platform_interface 3.0.0 [firebase_core flutter meta plugin_platform_interface]
    - firebase_messaging_web 2.0.0 [firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta]
    ...
    

    type: bug blocked: customer-response impact: crowd (P2) plugin: messaging platform: ios resolution: fixed 
    opened by mikeroneer 172
  • [cloud_firestore] Xcode build extremely slow

    [cloud_firestore] Xcode build extremely slow


    EDIT (@Salakar): See https://github.com/FirebaseExtended/flutterfire/issues/2751 for a solution.


    Summary of Issue

    Simply adding cloud_firestore to pubspec.yaml results in a huge increase in iOS xcode build times. The issue can be recreate with nothing more than a simple flutter create application and minor changes to pubspec.yaml.

    MacOS Mojave 10.14.6
    Xcode 10.3
    
    > flutter --version
    Flutter 1.8.4-pre.91 • channel master • https://github.com/flutter/flutter.git
    Framework • revision 8fdd759225 (11 hours ago) • 2019-08-04 00:56:23 -0400
    Engine • revision c8f4f5d5cc
    Tools • Dart 2.5.0 (build 2.5.0-dev.1.0 9bb446aae1)
    
    > flutter create test_cloud_firestore
    > cd test_cloud_firestore
    

    Without cloud_firestore

    Just to show that it is specifically the cloud_firestore plugin that causes this issue I will add some other firebase plugins to pubspec.yaml:

    firebase_core: ^0.4.0+1
    firebase_analytics: ^4.0.2
    

    Now we build the app:

    > flutter packages get
    > time flutter build ios
    ....
    Xcode build done. 
    real	0m41.014s
    

    Okay that looks reasonable.

    With cloud_firestore

    Simply add the latest version of cloud_firestore plugin to pubspec.yaml (no other changes):

    cloud_firestore: ^0.12.9
    

    Now we build the application again:

    > flutter packages get
    > time flutter build ios
    ....
    Xcode build done. 
    real	6m40.982s
    

    Yes... that is right. A six minute increase in iOS build times just from adding the cloud_firestore plugin to pubspec.yaml. Again, no changes were made to the flutter create generated application, this is simply changes to pubspec.yaml.

    Logs

    I did confirm that this issue persists on other flutter channels as well as other later versions of cloud_firestore plugin.

    > flutter doctor -v
    [✓] Flutter (Channel master, v1.8.4-pre.91, on Mac OS X 10.14.6 18G84, locale en-US)
        • Flutter version 1.8.4-pre.91 at /Users/taza/Applications/flutter
        • Framework revision 8fdd759225 (11 hours ago), 2019-08-04 00:56:23 -0400
        • Engine revision c8f4f5d5cc
        • Dart version 2.5.0 (build 2.5.0-dev.1.0 9bb446aae1)
    
     
    [✓] Android toolchain - develop for Android devices (Android SDK version 29.0.1)
        • Android SDK at /Users/taza/Library/Android/sdk
        • Android NDK location not configured (optional; useful for native profiling support)
        • Platform android-29, build-tools 29.0.1
        • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
        • All Android licenses accepted.
    
    [✓] Xcode - develop for iOS and macOS (Xcode 10.3)
        • Xcode at /Applications/Xcode.app/Contents/Developer
        • Xcode 10.3, Build version 10G8
        • CocoaPods version 1.7.5
    
    [✓] Android Studio (version 3.4)
        • Android Studio at /Applications/Android Studio.app/Contents
        • Flutter plugin version 37.1.1
        • Dart plugin version 183.6270
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
    
    [✓] VS Code (version 1.36.1)
        • VS Code at /Applications/Visual Studio Code.app/Contents
        • Flutter extension version 3.3.0
    
    type: bug impact: critical (P1) impact: crowd (P2) plugin: cloud_firestore platform: ios 
    opened by kroikie 134
  • 🐛 [cloud_firestore] Xcode build fails with errors: Expected a type in FirebaseFirestoreUtils.h

    🐛 [cloud_firestore] Xcode build fails with errors: Expected a type in FirebaseFirestoreUtils.h

    Bug report

    After upgrading the Firebase dependencies to latest versions, I get the following errors when trying to build for iOS:

    Parse Issue (Xcode): Expected a type
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/Private/FLT
    FirebaseFirestoreUtils.h:42:3
    
    
    Parse Issue (Xcode): Expected a type
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/Private/FLT
    FirebaseFirestoreUtils.h:44:3
    
    
    Parse Issue (Xcode): Expected a type
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/Private/FLT
    FirebaseFirestoreUtils.h:45:39
    
    
    Parse Issue (Xcode): Expected a type
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/FLTFirebase
    FirestoreWriter.m:82:39
    
    
    Parse Issue (Xcode): Expected a type
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/FLTFirebase
    FirestoreWriter.m:89:37
    
    
    Parse Issue (Xcode): Expected a type
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/FLTFirebase
    FirestoreWriter.m:135:39
    
    
    Parse Issue (Xcode): Expected a type
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/FLTFirebase
    FirestoreWriter.m:143:45
    
    
    Parse Issue (Xcode): Expected a type
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/FLTFirebase
    FirestoreWriter.m:166:36
    
    
    Semantic Issue (Xcode): Use of undeclared identifier 'FIRTimestamp'
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/FLTFirebase
    FirestoreWriter.m:18:35
    
    
    Semantic Issue (Xcode): Unknown type name 'FIRTimestamp'; did you mean 'CVTimeStamp'?
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/FLTFirebase
    FirestoreWriter.m:19:4
    
    
    ARC Casting Rules (Xcode): Implicit conversion of Objective-C pointer type 'id' to C pointer type 'CVTimeStamp
    *' requires a bridged cast
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/FLTFirebase
    FirestoreWriter.m:19:30
    
    
    Semantic Issue (Xcode): Member reference type 'CVTimeStamp *' is a pointer; did you mean to use '->'?
    /Users/whidev/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-3.2.0/ios/Classes/FLTFirebase
    FirestoreWriter.m:20:30
    

    Steps to reproduce

    Steps to reproduce the behavior:

    1. pub upgrade to the latest dependencies.
    2. Use the pre-download hint for Firestore iOS SDK, where in Podfile I add this line:
     pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '9.2.0'
    
    1. Try flutter run on an iOS simulator.
    2. Error is thrown during the Xcode build process.


    Flutter doctor

    Run flutter doctor and paste the output below:

    Click To Expand
    [✓] Flutter (Channel stable, 3.0.3, on macOS 12.4 21F79 darwin-arm, locale en-GR)
        • Flutter version 3.0.3 at /Users/whidev/Developer/flutter
        • Upstream repository https://github.com/flutter/flutter.git
        • Framework revision 676cefaaff (9 days ago), 2022-06-22 11:34:49 -0700
        • Engine revision ffe7b86a1e
        • Dart version 2.17.5
        • DevTools version 2.12.2
    
    [✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
        • Android SDK at /Users/whidev/Library/Android/sdk
        • Platform android-32, build-tools 32.0.0
        • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
        • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763)
        • All Android licenses accepted.
    
    [✓] Xcode - develop for iOS and macOS (Xcode 13.4.1)
        • Xcode at /Applications/Xcode.app/Contents/Developer
        • CocoaPods version 1.11.3
    
    [✓] Chrome - develop for the web
        • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
    
    [✓] Android Studio (version 2021.1)
        • Android Studio at /Applications/Android Studio.app/Contents
        • Flutter plugin can be installed from:
          🔨 https://plugins.jetbrains.com/plugin/9212-flutter
        • Dart plugin can be installed from:
          🔨 https://plugins.jetbrains.com/plugin/6351-dart
        • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763)
    

    Flutter dependencies

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

    Click To Expand
    Dart SDK 2.17.5
    Flutter SDK 3.0.3
    mapchart 3.9.0+63
    
    dependencies:
    - cloud_firestore 3.2.0 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
    - collection 1.16.0
    - firebase_app_check 0.0.6+15 [firebase_app_check_platform_interface firebase_app_check_web firebase_core firebase_core_platform_interface flutter]
    - firebase_auth 3.4.0 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta]
    - firebase_core 1.19.0 [firebase_core_platform_interface firebase_core_web flutter meta]
    - firebase_crashlytics 2.8.3 [firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface flutter stack_trace]
    - firebase_database 9.0.17 [firebase_core firebase_core_platform_interface firebase_database_platform_interface firebase_database_web flutter]
    - flash 2.0.3+2 [flutter]
    - flutter 0.0.0 [characters collection material_color_utilities meta vector_math sky_engine]
    - flutter_colorpicker 1.0.3 [flutter]
    - flutter_file_dialog 2.3.0 [flutter]
    - flutter_font_picker 0.5.0 [flutter google_fonts shared_preferences]
    - flutter_slidable 1.3.0 [flutter]
    - flutterfire_ui 0.4.2+1 [cloud_firestore collection crypto desktop_webview_auth email_validator firebase_auth firebase_core firebase_database firebase_dynamic_links flutter flutter_facebook_auth flutter_localizations flutter_svg google_sign_in sign_in_with_apple twitter_login]
    - in_app_review 2.0.4 [flutter in_app_review_platform_interface]
    - intl 0.17.0 [clock path]
    - package_info_plus 1.4.2 [flutter package_info_plus_platform_interface package_info_plus_linux package_info_plus_macos package_info_plus_windows package_info_plus_web]
    - path_drawing 1.0.0 [vector_math meta path_parsing flutter]
    - path_provider 2.0.11 [flutter path_provider_android path_provider_ios path_provider_linux path_provider_macos path_provider_platform_interface path_provider_windows]
    - patterns_canvas 0.4.0 [flutter]
    - provider 6.0.3 [collection flutter nested]
    - purchases_flutter 3.10.0 [flutter freezed_annotation json_annotation]
    - share 2.0.4 [meta mime flutter]
    - shared_preferences 2.0.15 [flutter shared_preferences_android shared_preferences_ios shared_preferences_linux shared_preferences_macos shared_preferences_platform_interface shared_preferences_web shared_preferences_windows]
    - sized_context 1.0.0+1 [flutter universal_platform]
    - timeago 3.2.2
    - touchable 1.0.0-prerelease [flutter]
    - url_launcher 6.1.4 [flutter url_launcher_android url_launcher_ios url_launcher_linux url_launcher_macos url_launcher_platform_interface url_launcher_web url_launcher_windows]
    - xml 6.1.0 [collection meta petitparser]
    
    dev dependencies:
    - dart_code_metrics 4.16.0 [analyzer analyzer_plugin ansicolor args collection crypto file glob html meta path source_span xml yaml]
    - flutter_lints 2.0.1 [lints]
    - flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher material_color_utilities meta source_span stream_channel string_scanner term_glyph]
    - test 1.21.1 [analyzer async boolean_selector collection coverage http_multi_server io js node_preamble package_config path pool shelf shelf_packages_handler shelf_static shelf_web_socket source_span stack_trace stream_channel typed_data web_socket_channel webkit_inspection_protocol yaml test_api test_core]
    
    transitive dependencies:
    - _fe_analyzer_shared 40.0.0 [meta]
    - analyzer 4.1.0 [_fe_analyzer_shared collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]
    - analyzer_plugin 0.10.0 [analyzer collection dart_style pub_semver yaml]
    - ansicolor 2.0.1
    - args 2.3.1
    - async 2.8.2 [collection meta]
    - boolean_selector 2.1.0 [source_span string_scanner]
    - characters 1.2.0
    - charcode 1.3.1
    - clock 1.1.0
    - cloud_firestore_platform_interface 5.5.9 [collection firebase_core flutter meta plugin_platform_interface]
    - cloud_firestore_web 2.6.18 [cloud_firestore_platform_interface collection firebase_core firebase_core_web flutter flutter_web_plugins js]
    - convert 3.0.2 [typed_data]
    - coverage 1.3.2 [args logging package_config path source_maps stack_trace vm_service]
    - crypto 3.0.2 [typed_data]
    - csslib 0.17.2 [source_span]
    - dart_style 2.2.3 [analyzer args path pub_semver source_span]
    - desktop_webview_auth 0.0.9 [crypto flutter http]
    - email_validator 2.0.1
    - fake_async 1.3.0 [clock collection]
    - ffi 1.2.1
    - file 6.1.2 [meta path]
    - firebase_app_check_platform_interface 0.0.4+9 [firebase_core flutter meta plugin_platform_interface]
    - firebase_app_check_web 0.0.5+15 [firebase_app_check_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
    - firebase_auth_platform_interface 6.3.0 [firebase_core flutter meta plugin_platform_interface]
    - firebase_auth_web 3.3.18 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser intl js meta]
    - firebase_core_platform_interface 4.4.1 [collection flutter meta plugin_platform_interface]
    - firebase_core_web 1.6.5 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
    - firebase_crashlytics_platform_interface 3.2.9 [collection firebase_core flutter meta plugin_platform_interface]
    - firebase_database_platform_interface 0.2.1+9 [collection firebase_core flutter meta plugin_platform_interface]
    - firebase_database_web 0.2.0+16 [firebase_core firebase_core_web firebase_database_platform_interface flutter flutter_web_plugins js]
    - firebase_dynamic_links 4.3.0 [firebase_core firebase_core_platform_interface firebase_dynamic_links_platform_interface flutter meta plugin_platform_interface]
    - firebase_dynamic_links_platform_interface 0.2.3+5 [firebase_core flutter meta plugin_platform_interface]
    - flutter_facebook_auth 4.3.4+2 [flutter flutter_facebook_auth_platform_interface flutter_facebook_auth_web]
    - flutter_facebook_auth_platform_interface 3.1.2 [flutter plugin_platform_interface]
    - flutter_facebook_auth_web 3.1.2 [flutter flutter_web_plugins js flutter_facebook_auth_platform_interface]
    - flutter_localizations 0.0.0 [flutter intl characters clock collection material_color_utilities meta path vector_math]
    - flutter_svg 1.1.1 [flutter meta path_drawing vector_math xml]
    - flutter_web_plugins 0.0.0 [flutter js characters collection material_color_utilities meta vector_math]
    - freezed_annotation 1.1.0 [collection json_annotation meta]
    - frontend_server_client 2.1.3 [async path]
    - glob 2.1.0 [async collection file path string_scanner]
    - google_fonts 3.0.1 [flutter http path_provider crypto]
    - google_sign_in 5.3.3 [flutter google_sign_in_android google_sign_in_ios google_sign_in_platform_interface google_sign_in_web]
    - google_sign_in_android 5.2.8 [flutter google_sign_in_platform_interface]
    - google_sign_in_ios 5.3.1 [flutter google_sign_in_platform_interface]
    - google_sign_in_platform_interface 2.2.0 [flutter quiver]
    - google_sign_in_web 0.10.1+3 [flutter flutter_web_plugins google_sign_in_platform_interface js]
    - html 0.15.0 [csslib source_span]
    - http 0.13.4 [async http_parser meta path]
    - http_multi_server 3.2.1 [async]
    - http_parser 4.0.1 [collection source_span string_scanner typed_data]
    - in_app_review_platform_interface 2.0.3 [flutter url_launcher plugin_platform_interface platform]
    - io 1.0.3 [meta path string_scanner]
    - js 0.6.4
    - json_annotation 4.5.0 [meta]
    - lints 2.0.0
    - logging 1.0.2
    - matcher 0.12.11 [stack_trace]
    - material_color_utilities 0.1.4
    - meta 1.7.0
    - mime 1.0.2
    - nested 1.0.0 [flutter]
    - node_preamble 2.0.1
    - package_config 2.1.0 [path]
    - package_info_plus_linux 1.0.5 [package_info_plus_platform_interface flutter path]
    - package_info_plus_macos 1.3.0 [flutter]
    - package_info_plus_platform_interface 1.0.2 [flutter meta plugin_platform_interface]
    - package_info_plus_web 1.0.5 [flutter flutter_web_plugins http meta package_info_plus_platform_interface]
    - package_info_plus_windows 1.0.5 [package_info_plus_platform_interface ffi flutter win32]
    - path 1.8.1
    - path_parsing 1.0.0 [vector_math meta]
    - path_provider_android 2.0.16 [flutter path_provider_platform_interface]
    - path_provider_ios 2.0.10 [flutter path_provider_platform_interface]
    - path_provider_linux 2.1.7 [ffi flutter path path_provider_platform_interface xdg_directories]
    - path_provider_macos 2.0.6 [flutter path_provider_platform_interface]
    - path_provider_platform_interface 2.0.4 [flutter platform plugin_platform_interface]
    - path_provider_windows 2.0.7 [ffi flutter path path_provider_platform_interface win32]
    - petitparser 5.0.0 [meta]
    - platform 3.1.0
    - plugin_platform_interface 2.1.2 [meta]
    - pool 1.5.1 [async stack_trace]
    - process 4.2.4 [file path platform]
    - pub_semver 2.1.1 [collection meta]
    - quiver 3.1.0 [matcher]
    - shared_preferences_android 2.0.12 [flutter shared_preferences_platform_interface]
    - shared_preferences_ios 2.1.1 [flutter shared_preferences_platform_interface]
    - shared_preferences_linux 2.1.1 [file flutter path path_provider_linux path_provider_platform_interface shared_preferences_platform_interface]
    - shared_preferences_macos 2.0.4 [flutter shared_preferences_platform_interface]
    - shared_preferences_platform_interface 2.0.0 [flutter]
    - shared_preferences_web 2.0.4 [flutter flutter_web_plugins shared_preferences_platform_interface]
    - shared_preferences_windows 2.1.1 [file flutter path path_provider_platform_interface path_provider_windows shared_preferences_platform_interface]
    - shelf 1.3.1 [async collection http_parser path stack_trace stream_channel]
    - shelf_packages_handler 3.0.1 [path shelf shelf_static]
    - shelf_static 1.1.1 [convert http_parser mime path shelf]
    - shelf_web_socket 1.0.2 [shelf stream_channel web_socket_channel]
    - sign_in_with_apple 3.3.0 [flutter meta sign_in_with_apple_platform_interface sign_in_with_apple_web]
    - sign_in_with_apple_platform_interface 1.0.0 [flutter plugin_platform_interface meta]
    - sign_in_with_apple_web 1.0.1 [flutter flutter_web_plugins sign_in_with_apple_platform_interface js]
    - sky_engine 0.0.99
    - source_map_stack_trace 2.1.0 [path stack_trace source_maps]
    - source_maps 0.10.10 [source_span]
    - source_span 1.8.2 [collection path term_glyph]
    - stack_trace 1.10.0 [path]
    - stream_channel 2.1.0 [async]
    - string_scanner 1.1.0 [charcode source_span]
    - term_glyph 1.2.0
    - test_api 0.4.9 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph matcher]
    - test_core 0.4.13 [analyzer async args boolean_selector collection coverage frontend_server_client glob io meta package_config path pool source_map_stack_trace source_maps source_span stack_trace stream_channel vm_service yaml matcher test_api]
    - twitter_login 4.2.3 [flutter crypto http]
    - typed_data 1.3.1 [collection]
    - universal_platform 1.0.0+1
    - url_launcher_android 6.0.17 [flutter url_launcher_platform_interface]
    - url_launcher_ios 6.0.17 [flutter url_launcher_platform_interface]
    - url_launcher_linux 3.0.1 [flutter url_launcher_platform_interface]
    - url_launcher_macos 3.0.1 [flutter url_launcher_platform_interface]
    - url_launcher_platform_interface 2.1.0 [flutter plugin_platform_interface]
    - url_launcher_web 2.0.12 [flutter flutter_web_plugins url_launcher_platform_interface]
    - url_launcher_windows 3.0.1 [flutter url_launcher_platform_interface]
    - vector_math 2.1.2
    - vm_service 8.3.0
    - watcher 1.0.1 [async path]
    - web_socket_channel 2.2.0 [async crypto stream_channel]
    - webkit_inspection_protocol 1.1.0 [logging]
    - win32 2.6.1 [ffi]
    - xdg_directories 0.2.0+1 [meta path process]
    - yaml 3.1.1 [collection source_span string_scanner]
    

    type: bug impact: crowd (P2) plugin: cloud_firestore platform: ios resolution: fixed 
    opened by whiplashoo 129
  • 🐛 [firebase_messaging] Silent notifications not handled on iOS

    🐛 [firebase_messaging] Silent notifications not handled on iOS

    Bug report

    The issue is regarding silent notifications that are sent from firebase on iOS. When a silent notification is sent through firebase, the android app can handle the notification both in the foreground and background. Silent notifications can however not be handled on iOS, neither in the foreground or background, the app doesn't get any indication of the app receiving the notification.

    Steps to reproduce

    Steps to reproduce the behavior:

    1. From Postman, test to POST the following content to https://fcm.googleapis.com/fcm/send
        "to": "_token",
        "priority": "high",
        "data": {
            "content-available": 1
        },
    
    1. This results in the iOS app not receiving the notification, only the android app can receive the silent notification. However when adding the code down below to the Body, the iOS app will receive the notification. It's however not a silent notification that only can be received when the app is in the foreground "notification": { "body": "1" }

    Expected behavior

    The iOS app should be able to handle silent notifications, just like the android app currently can.


    Additional context

    The bug occurs when using 'firebase_messaging' 11.2.10, flutter 12.2.1 on iOS 15.3.1


    Flutter doctor

    Run flutter doctor and paste the output below:

    Click To Expand
    /Users/user/Development/flutter/bin/flutter doctor --verbose
    [✓] Flutter (Channel stable, 2.10.3, on macOS 12.2.1 21D62 darwin-x64, locale en-SE)
        • Flutter version 2.10.3 at /Users/user/Development/flutter
        • Upstream repository https://github.com/flutter/flutter.git
        • Framework revision 7e9793dee1 (13 days ago), 2022-03-02 11:23:12 -0600
        • Engine revision bd539267b4
        • Dart version 2.16.1
        • DevTools version 2.9.2
    
    [!] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
        • Android SDK at /Users/user/Library/Android/sdk
        ✗ cmdline-tools component is missing
          Run `path/to/sdkmanager --install "cmdline-tools;latest"`
          See https://developer.android.com/studio/command-line for more details.
        ✗ Android license status unknown.
          Run `flutter doctor --android-licenses` to accept the SDK licenses.
          See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
    
    [✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
        • Xcode at /Applications/Xcode.app/Contents/Developer
        • CocoaPods version 1.11.2
    
    [✗] Chrome - develop for the web (Cannot find Chrome executable at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome)
        ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
    
    [✓] Android Studio (version 2021.1)
        • Android Studio at /Applications/Android Studio.app/Contents
        • Flutter plugin can be installed from:
          🔨 https://plugins.jetbrains.com/plugin/9212-flutter
        • Dart plugin can be installed from:
          🔨 https://plugins.jetbrains.com/plugin/6351-dart
        • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7590822)
    
    [✓] Connected device (1 available)
        • Snow (mobile) • XXXX-XXXX• ios • iOS 15.3.1 19D52
    
    [✓] HTTP Host Availability
        • All required HTTP hosts are available
    
    ! Doctor found issues in 2 categories.
    Process finished with exit code 0
    

    Flutter dependencies

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

    Click To Expand
    dependencies:
    - app_settings 4.1.1 [flutter]
    - connectivity_plus 2.2.1 [flutter connectivity_plus_platform_interface connectivity_plus_linux connectivity_plus_macos connectivity_plus_web connectivity_plus_windows]
    - cupertino_icons 1.0.4
    - device_info_plus 3.2.2 [flutter device_info_plus_platform_interface device_info_plus_macos device_info_plus_linux device_info_plus_web device_info_plus_windows]
    - dio 4.0.4 [http_parser path]
    - enum_to_string 2.0.1
    - firebase_analytics 9.1.2 [firebase_analytics_platform_interface firebase_analytics_web firebase_core firebase_core_platform_interface flutter]
    - firebase_core 1.13.1 [firebase_core_platform_interface firebase_core_web flutter meta]
    - firebase_crashlytics 2.5.3 [firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface flutter stack_trace]
    - firebase_messaging 11.2.10 [firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web flutter meta]
    - firebase_performance 0.8.0+7 [firebase_core firebase_core_platform_interface firebase_performance_platform_interface firebase_performance_web flutter]
    - flutter 0.0.0 [characters collection material_color_utilities meta typed_data vector_math sky_engine]
    - flutter_spinbox 0.8.0 [cupertino_icons flutter meta]
    - flutter_svg 1.0.3 [flutter meta path_drawing vector_math xml]
    - hand_signature 2.1.1 [flutter flutter_svg]
    - http 0.13.4 [async http_parser meta path]
    - image_picker 0.8.4+10 [flutter flutter_plugin_android_lifecycle image_picker_for_web image_picker_platform_interface]
    - intl 0.17.0 [clock path]
    - maps_launcher 2.0.1 [flutter flutter_web_plugins url_launcher]
    - provider 6.0.2 [collection flutter nested]
    - qr_code_scanner 0.7.0 [js flutter flutter_web_plugins]
    - shared_preferences 2.0.13 [flutter shared_preferences_android shared_preferences_ios shared_preferences_linux shared_preferences_macos shared_preferences_platform_interface shared_preferences_web shared_preferences_windows]
    - timer_builder 2.0.0 [flutter]
    - uuid 3.0.6 [crypto]
    
    dev dependencies:
    - flutter_lints 1.0.4 [lints]
    - flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher material_color_utilities meta source_span stream_channel string_scanner term_glyph typed_data]
    
    transitive dependencies:
    - args 2.3.0
    - async 2.8.2 [collection meta]
    - boolean_selector 2.1.0 [source_span string_scanner]
    - characters 1.2.0
    - charcode 1.3.1
    - clock 1.1.0
    - collection 1.15.0
    - connectivity_plus_linux 1.3.0 [flutter connectivity_plus_platform_interface meta nm]
    - connectivity_plus_macos 1.2.1 [connectivity_plus_platform_interface flutter]
    - connectivity_plus_platform_interface 1.2.0 [flutter meta plugin_platform_interface]
    - connectivity_plus_web 1.2.0 [connectivity_plus_platform_interface flutter_web_plugins flutter]
    - connectivity_plus_windows 1.2.0 [connectivity_plus_platform_interface flutter]
    - cross_file 0.3.2 [flutter js meta]
    - crypto 3.0.1 [collection typed_data]
    - dbus 0.7.1 [args ffi meta xml]
    - device_info_plus_linux 2.1.1 [device_info_plus_platform_interface file flutter meta]
    - device_info_plus_macos 2.2.2 [device_info_plus_platform_interface flutter]
    - device_info_plus_platform_interface 2.3.0+1 [flutter meta plugin_platform_interface]
    - device_info_plus_web 2.1.0 [device_info_plus_platform_interface flutter_web_plugins flutter]
    - device_info_plus_windows 2.1.1 [device_info_plus_platform_interface ffi flutter win32]
    - fake_async 1.2.0 [clock collection]
    - ffi 1.1.2
    - file 6.1.2 [meta path]
    - firebase 9.0.2 [http http_parser js]
    - firebase_analytics_platform_interface 3.1.1 [firebase_core flutter meta plugin_platform_interface]
    - firebase_analytics_web 0.4.0+8 [firebase_analytics_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
    - firebase_core_platform_interface 4.2.5 [collection flutter meta plugin_platform_interface]
    - firebase_core_web 1.6.1 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
    - firebase_crashlytics_platform_interface 3.2.1 [collection firebase_core flutter meta plugin_platform_interface]
    - firebase_messaging_platform_interface 3.2.1 [firebase_core flutter meta plugin_platform_interface]
    - firebase_messaging_web 2.2.9 [firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta]
    - firebase_performance_platform_interface 0.1.1+1 [firebase_core flutter plugin_platform_interface]
    - firebase_performance_web 0.1.0+7 [firebase firebase_core firebase_core_web firebase_performance_platform_interface flutter flutter_web_plugins js]
    - flutter_plugin_android_lifecycle 2.0.5 [flutter]
    - flutter_web_plugins 0.0.0 [flutter js characters collection material_color_utilities meta typed_data vector_math]
    - http_parser 4.0.0 [charcode collection source_span string_scanner typed_data]
    - image_picker_for_web 2.1.6 [flutter flutter_web_plugins image_picker_platform_interface]
    - image_picker_platform_interface 2.4.4 [cross_file flutter http plugin_platform_interface]
    - js 0.6.3
    - lints 1.0.1
    - matcher 0.12.11 [stack_trace]
    - material_color_utilities 0.1.3
    - meta 1.7.0
    - nested 1.0.0 [flutter]
    - nm 0.5.0 [dbus]
    - path 1.8.0
    - path_drawing 1.0.0 [vector_math meta path_parsing flutter]
    - path_parsing 1.0.0 [vector_math meta]
    - path_provider_linux 2.1.5 [ffi flutter path path_provider_platform_interface xdg_directories]
    - path_provider_platform_interface 2.0.3 [flutter platform plugin_platform_interface]
    - path_provider_windows 2.0.5 [ffi flutter path path_provider_platform_interface win32]
    - petitparser 4.4.0 [meta]
    - platform 3.1.0
    - plugin_platform_interface 2.1.2 [meta]
    - process 4.2.4 [file path platform]
    - shared_preferences_android 2.0.11 [flutter shared_preferences_platform_interface]
    - shared_preferences_ios 2.1.0 [flutter shared_preferences_platform_interface]
    - shared_preferences_linux 2.1.0 [file flutter path path_provider_linux path_provider_platform_interface shared_preferences_platform_interface]
    - shared_preferences_macos 2.0.3 [flutter shared_preferences_platform_interface]
    - shared_preferences_platform_interface 2.0.0 [flutter]
    - shared_preferences_web 2.0.3 [flutter flutter_web_plugins shared_preferences_platform_interface]
    - shared_preferences_windows 2.1.0 [file flutter path path_provider_platform_interface path_provider_windows shared_preferences_platform_interface]
    - sky_engine 0.0.99
    - source_span 1.8.1 [collection path term_glyph]
    - stack_trace 1.10.0 [path]
    - stream_channel 2.1.0 [async]
    - string_scanner 1.1.0 [charcode source_span]
    - term_glyph 1.2.0
    - test_api 0.4.8 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph matcher]
    - typed_data 1.3.0 [collection]
    - url_launcher 6.0.20 [flutter url_launcher_android url_launcher_ios url_launcher_linux url_launcher_macos url_launcher_platform_interface url_launcher_web url_launcher_windows]
    - url_launcher_android 6.0.15 [flutter url_launcher_platform_interface]
    - url_launcher_ios 6.0.15 [flutter url_launcher_platform_interface]
    - url_launcher_linux 3.0.0 [flutter url_launcher_platform_interface]
    - url_launcher_macos 3.0.0 [flutter url_launcher_platform_interface]
    - url_launcher_platform_interface 2.0.5 [flutter plugin_platform_interface]
    - url_launcher_web 2.0.9 [flutter flutter_web_plugins url_launcher_platform_interface]
    - url_launcher_windows 3.0.0 [flutter url_launcher_platform_interface]
    - vector_math 2.1.1
    - win32 2.4.1 [ffi]
    - xdg_directories 0.2.0+1 [meta path process]
    - xml 5.3.1 [collection meta petitparser]
    

    type: bug impact: crowd (P2) plugin: messaging platform: ios resolution: fixed 
    opened by Johandrex 119
  • [Update] Cloud Firestore Xcode Build Times

    [Update] Cloud Firestore Xcode Build Times

    Hey everyone 👋

    One of the key issues we wanted to look into providing a solution for was https://github.com/FirebaseExtended/flutterfire/issues/349 - improving build times for Xcode when using Firestore.

    I'm happy to say we now have something for you to try (please provide feedback) that should significantly improve your build times;

    Mac mini (2018) 6 cores:

    Before:    ~ 240s
    After:     ~  45s
    

    GitHub Action CI 2 cores:

    Before:    ~ 551s
    After:     ~ 174s
    

    Why is it slow?

    Currently the Firestore iOS SDK depends on some 500k lines of mostly C++ code (from dependencies such as gRPC), which when compiling as part of your Xcode build can take a long time - even more so in CI environments.

    How can we speed it up?

    The biggest win to improving build times would be to not have to compile all that C++ code. The way to do that would be to consume precompiled binaries, in the new XCFramework bundle type introduced to Xcode last year, luckily as part of the Firebase iOS SDK release process these bundles are generated and published in a zip containing all Firebase SDKs.

    To help you consume these quicker with the least amount of changes to your codebase we've created invertase/firestore-ios-sdk-frameworks - a repository that provides a drop in replacement podspec for Firestore that consumes the precompiled binaries instead, without you needing to download 3gb of SDKs and manually extract out the Firestore SDKs from the rest of the SDKs in the zip.

    ⚡ Setup ⚡

    To integrate, you just need to add 1 line to your ios/Podfile inside your Flutter project;

    pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '7.4.0'
    

    Add this line inside your target 'Runner' do block in your Podfile, e.g.:

    # ...
    target 'Runner' do
      pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '7.4.0'
    
    # ...
    end
    

    No changes to the FlutterFire packages were required. See #4698 for a full example of integrating with automatic versioning based on what firebase_core uses.

    Why not ship the binaries with the pub packages?

    This would add ~200mb to every release. Whereas via a custom pod this is only ever downloaded once on your machine per Firebase iOS SDK version.


    For more information on the pod and versioning please see the invertase/firestore-ios-sdk-frameworks repository.


    ⚠️ Note: if you were previously caching iOS builds on CI you may now find that when using precompiled binaries that caching is no longer required and it may actually slow down your build times by several minutes. See this comment below for more; https://github.com/FirebaseExtended/flutterfire/issues/2751#issuecomment-643190500


    Please let me know if this has helped you, and I would love to see some before and after timings if you feel like sharing

    plugin: cloud_firestore 
    opened by Salakar 103
  • [cloud_firestore] Added Flutter web support

    [cloud_firestore] Added Flutter web support

    Description

    • Created cloud_firestore_platform_interface to host A common platform interface for the cloud_firestore plugin.
    • Created cloud_firestore_web to host the web implementation for Firestore
    • Changed cloud_firestore implementation to delegate to method_channel_xyz in cloud_firestore_platform_interface when necessary
    • Relocated tests from cloud_firestore to cloud_firestore_platform_interface

    This PR is created for gathering feedback on the approach and check mergeability.

    Todo items This PR is created for gathering feedback on the approach. The remaining steps are

    • [x] create PR and merge cloud_firestore_platform_interface
    • [x] create PR and merge cloud_firestore_web
    • [x] update cloud_firestore to use published version of cloud_firestore_web & cloud_firestore_platform_interface
    • [x] Add unit tests for cloud_firestore_web
    • [x] Add unit tests to verify that cloud_firestore delegates method calls to delegate
    • [x] Add unit tests for cloud_firestore_platform_interface
    • [x] Address PR comments and feedback
    • [x] Delay FirebasePlatform._instance initialisation until it's called for the first time (lazy init)
    • [x] Handle encoding/decoding DocumentReference
    • [x] Fix Query method delegation (currently broken ☹️)
    • [x] Add support for Transaction
    • [x] Add support for WriteBatch
    • [x] Web & mobile specific implementation for GeoPoint
    • [x] Web & mobile specific implementation for Blob
    • [x] Fix settings bug mentioned here https://github.com/FirebaseExtended/flutterfire/pull/1670#issuecomment-567307817

    Related Issues

    Checklist

    Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

    • [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
    • [x] If the pull request affects only one plugin, the PR title starts with the name of the plugin in brackets (e.g. [cloud_firestore])
    • [x] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See [Contributor Guide]).
    • [x] All existing and new tests are passing.
    • [x] I updated/added relevant documentation (doc comments with ///).
    • [x] The analyzer (flutter analyze) does not report any problems on my PR.
    • [x] I read and followed the [Flutter Style Guide].
    • [x] I updated pubspec.yaml with an appropriate new version according to the [pub versioning philosophy].
    • [x] I updated CHANGELOG.md to add a description of the change.
    • [x] I signed the [CLA].
    • [x] I am willing to follow-up on review comments in a timely manner.

    Breaking Change

    Does your PR require plugin users to manually update their apps to accommodate your change?

    • [ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
    • [x] No, this is not a breaking change.
    cla: yes blocked: customer-response 
    opened by amrfarid140 100
  • 🐛 [firebase_ml_vision 0.10.0] Core depends on CoreOnly 7.3.0 but ML pods depend on 5.0.0 causing pod install failure

    🐛 [firebase_ml_vision 0.10.0] Core depends on CoreOnly 7.3.0 but ML pods depend on 5.0.0 causing pod install failure

    Bug report

    [!] CocoaPods could not find compatible versions for pod "Firebase/CoreOnly":
      In Podfile:
        Firebase/MLVisionBarcodeModel was resolved to 5.0.0, which depends on
          Firebase/CoreOnly (= 5.0.0)
    
        firebase_core (from `.symlinks/plugins/firebase_core/ios`) was resolved to 0.6.0, which depends on
          Firebase/CoreOnly (= 7.3.0)
    

    Steps to reproduce the behavior:

    1. Updated all firebase packages to the latest version. firebase_core: ^0.6.0 firebase_ml_vision: ^0.10.0
    2. Updated in Podfile pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '7.3.0'
    3. Executed in terminal pod deintegrate && rm Podfile.lock && pod install
    4. The above warning appears.

    Additional Info: The portion in podfile as follows:

    target 'Runner' do
      pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '7.3.0'
      pod 'Firebase/MLVisionTextModel'
      pod 'Firebase/MLVisionBarcodeModel'
    

    No issues on Flutter Doctor.

    Reverted back to: firebase_core: ^0.5.3 firebase_ml_vision: ^0.9.10 pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '6.33.0'

    Any resolution to this?

    type: bug impact: crowd (P2) plugin: ml_vision platform: ios 
    opened by iamshaunwu 98
  • [firebase_messaging] Android v2 embedding crashes

    [firebase_messaging] Android v2 embedding crashes

    Describe the bug Since updating my app to the Android v2 embedding I've been getting reports in Crashlytics concerning ensureInitializationComplete must be called after startInitialization io.flutter.embedding.engine.loader.FlutterLoader.ensureInitializationComplete.

    The Flutter 1.12 upgrade guide says to remove all references to the startInitialization or ensureInitializationComplete methods but I see 2 references to these methods: here and here.

    To Reproduce Steps to reproduce the behavior:

    1. Upgrade app to v2 embedding.
    2. Start app and then close it.
    3. Send notification from the Firebase Notification Composer.
    4. Notice app crash notification on device.
    5. See error or incorrect behavior

    I have not seen the issue when I leave the app open and send the notification.

    Expected behavior Notification displayed normally while app is closed.

    Additional context Here is what the Crashlytics report looks like:

    Fatal Exception: java.lang.RuntimeException
    Unable to create service io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService: java.lang.IllegalStateException: ensureInitializationComplete must be called after startInitialization
    android.app.ActivityThread.handleCreateService (ActivityThread.java:3746)
    android.app.ActivityThread.access$1400 (ActivityThread.java:235)
    android.app.ActivityThread$H.handleMessage (ActivityThread.java:1784)
    android.os.Handler.dispatchMessage (Handler.java:106)
    android.os.Looper.loop (Looper.java:214)
    android.app.ActivityThread.main (ActivityThread.java:6986)
    java.lang.reflect.Method.invoke (Method.java)
    com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:494)
    com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1445)
    
    Caused by java.lang.IllegalStateException
    ensureInitializationComplete must be called after startInitialization
    io.flutter.embedding.engine.loader.FlutterLoader.ensureInitializationComplete (FlutterLoader.java:153)
    io.flutter.view.FlutterMain.ensureInitializationComplete (FlutterMain.java:80)
    io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService.onCreate (FlutterFirebaseMessagingService.java:71)
    android.app.ActivityThread.handleCreateService (ActivityThread.java:3734)
    android.app.ActivityThread.access$1400 (ActivityThread.java:235)
    android.app.ActivityThread$H.handleMessage (ActivityThread.java:1784)
    android.os.Handler.dispatchMessage (Handler.java:106)
    android.os.Looper.loop (Looper.java:214)
    android.app.ActivityThread.main (ActivityThread.java:6986)
    java.lang.reflect.Method.invoke (Method.java)
    com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:494)
    com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1445)
    
    type: bug type: documentation impact: crowd (P2) plugin: messaging 
    opened by cranst0n 96
  • [firebase_messaging] onMessage/onResume is called twice on Android/iOS

    [firebase_messaging] onMessage/onResume is called twice on Android/iOS

    Describe the bug The onMessage callback is always called twice

    To Reproduce Steps to reproduce the behavior:

    1. Setup the plugin, do a print statement in the onMessage callback
    2. Keep the app in the foreground
    3. Send a FCM message
    4. 2 print on the console

    Expected behavior Only one print on the console

    Additional context I don' t have the same issue with onBackgroundMessage. It's called once as expected

    type: bug impact: crowd (P2) plugin: messaging platform: android platform: ios 
    opened by woprandi 87
  • [firebase_messaging] PluginRegistrantCallback is not set on Android

    [firebase_messaging] PluginRegistrantCallback is not set on Android

    Fatal Exception: java.lang.RuntimeException
    Unable to create service io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService: 
    java.lang.RuntimeException: PluginRegistrantCallback is not set.
    

    This is caused by:

    Caused by java.lang.RuntimeException: PluginRegistrantCallback is not set.
           at io.flutter.plugins.firebasemessaging.
    FlutterFirebaseMessagingService.executeDartCallbackInBackgroundIsolate(FlutterFirebaseMessagingService.java)
           at io.flutter.plugins.firebasemessaging.
    FlutterFirebaseMessagingService.onCreate(FlutterFirebaseMessagingService.java)
    

    This happens on Android when running a Flutter app built with firebase_messaging: 6.0.9 and Flutter 1.15.4-pre.199.


    This also happens every time calling FirebaseMessaging.configure in the Flutter app when running on Android:

    PlatformException(error, PluginRegistrantCallback is not set., null)
      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7)
      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:156:18)
    <asynchronous suspension>
      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:329:12)
      FirebaseMessaging.configure (package:firebase_messaging/firebase_messaging.dart:130:16)
    
    type: bug impact: crowd (P2) plugin: messaging platform: android 
    opened by creativecreatorormaybenot 85
  • 🐛 [firebase_messaging] .onTokenRefresh not called even when it actually got refreshed

    🐛 [firebase_messaging] .onTokenRefresh not called even when it actually got refreshed

    Bug report

    FirebaseMessaging.instance.onTokenRefresh.listen((newToken) {...}) is not called even in the expected situation (app running on the foreground, internet connected, foreground notification implemented, Firebase Messaging backend starting to throw "Requested entity was not found" error)

    As a result, users (me) suddenly became unavailable to receive notifications while using the app. Once I quit the app and relaunch it, the regenerated token is well updated by calling FirebaseMessaging.instance.getToken() Until I relaunch the app, the backend throws "Requested entity was not found" error and I become unavailable to receive notification

    Check this video for more info: https://vimeo.com/785835642

    Steps to reproduce

    (It's gonna be a bit tricky, cause the app should be opened when the token is regenerated) (I found this bug on iOS. I'm not sure if this also happens on other platforms)

    1. Launch the app
    2. The app should have some codes to .getToken() and update it
    3. The app should also initialize FirebaseMessaging.instance.onTokenRefresh properly by .listen()ing to it
    4. Wait
    5. Wait
    6. Wait
    7. Wait
    8. One day, it suddenly becomes unavailable to receive notifications. When I check the logs, .onTokenRefresh hasn't been called. When I relaunch the app, .getToken() gives me a different token from the one that was previously registered.

    Expected behavior

    .onTokenRefresh should be called when the token is regenerated


    Additional context

    Nope


    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, 3.3.10, on macOS 13.1 22C65 darwin-arm, locale en-US)
    [✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    [✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    [✓] Chrome - develop for the web
    [✓] Android Studio (version 2021.3)
    [✓] VS Code (version 1.74.2)
    [✓] Connected device (2 available)
    [✓] HTTP Host Availability
    
    • No issues found!
    

    Flutter dependencies

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

    Click To Expand
    
    Dart SDK 2.18.6
    Flutter SDK 3.3.10
    atrable 1.3.0
    
    dependencies:
    - audio_session 0.1.13 [flutter flutter_web_plugins rxdart meta]
    - build_runner 2.3.2 [args async analyzer build build_config build_daemon build_resolvers build_runner_core code_builder collection crypto dart_style frontend_server_client glob graphs http_multi_server io js logging meta mime package_config path pool pub_semver pubspec_parse shelf shelf_web_socket stack_trace stream_transform timing watcher web_socket_channel yaml]
    - camera 0.10.1 [camera_android camera_avfoundation camera_platform_interface camera_web flutter flutter_plugin_android_lifecycle quiver]
    - cloud_firestore 4.3.0 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
    - cupertino_icons 1.0.5
    - emoji_picker_flutter 1.5.1 [flutter flutter_web_plugins plugin_platform_interface shared_preferences]
    - eraser 2.0.1 [flutter]
    - ffmpeg_kit_flutter 4.5.1 [ffmpeg_kit_flutter_platform_interface flutter]
    - firebase_auth 4.2.3 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta]
    - firebase_core 2.4.0 [firebase_core_platform_interface firebase_core_web flutter meta]
    - firebase_database 10.0.8 [firebase_core firebase_core_platform_interface firebase_database_platform_interface firebase_database_web flutter]
    - firebase_messaging 14.2.0 [firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web flutter meta]
    - firebase_storage 11.0.9 [firebase_core firebase_core_platform_interface firebase_storage_platform_interface firebase_storage_web flutter]
    - flutter 0.0.0 [characters collection material_color_utilities meta vector_math sky_engine]
    - flutter_emoji 2.4.0 [characters http]
    - flutter_svg 1.1.6 [flutter meta path_drawing vector_math xml]
    - flutter_video_info 1.3.1 [flutter path]
    - image_cropper 3.0.1 [flutter image_cropper_platform_interface image_cropper_for_web]
    - image_picker 0.8.6 [flutter image_picker_android image_picker_for_web image_picker_ios image_picker_platform_interface]
    - infinite_scroll_pagination 3.2.0 [flutter sliver_tools]
    - overlay_support 2.0.1 [flutter async]
    - path_provider 2.0.11 [flutter path_provider_android path_provider_ios path_provider_linux path_provider_macos path_provider_platform_interface path_provider_windows]
    - permission_handler 10.2.0 [flutter meta permission_handler_android permission_handler_apple permission_handler_windows permission_handler_platform_interface]
    - pinch_zoom_image_last 0.4.1 [flutter]
    - provider 6.0.3 [collection flutter nested]
    - qr_flutter 4.0.0 [flutter qr]
    - realm 0.8.0+rc [flutter args build_cli_annotations collection crypto ffi json_annotation logging meta package_config path pubspec_parse pub_semver realm_common realm_generator tar build_runner http cancellation_token]
    - record 4.4.3 [flutter record_platform_interface record_web record_windows record_macos record_linux]
    - scrolls_to_top 2.0.0 [flutter]
    - share_plus 6.3.0 [cross_file meta mime flutter flutter_web_plugins share_plus_platform_interface file url_launcher_web url_launcher_windows url_launcher_linux url_launcher_platform_interface ffi win32]
    - shared_preferences 2.0.15 [flutter shared_preferences_android shared_preferences_ios shared_preferences_linux shared_preferences_macos shared_preferences_platform_interface shared_preferences_web shared_preferences_windows]
    - shimmer 2.0.0 [flutter]
    - sign_in_with_apple 4.3.0 [flutter meta sign_in_with_apple_platform_interface sign_in_with_apple_web]
    - transparent_image 2.0.0
    - uni_links 0.5.1 [flutter uni_links_platform_interface uni_links_web]
    - url_launcher 6.1.7 [flutter url_launcher_android url_launcher_ios url_launcher_linux url_launcher_macos url_launcher_platform_interface url_launcher_web url_launcher_windows]
    - video_player 2.4.10 [flutter html video_player_android video_player_avfoundation video_player_platform_interface video_player_web]
    - video_thumbnail 0.5.3 [flutter]
    - wave 0.2.2 [flutter]
    
    dev dependencies:
    - flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters collection matcher material_color_utilities meta source_span stream_channel string_scanner term_glyph]
    
    transitive dependencies:
    - _fe_analyzer_shared 47.0.0 [meta]
    - _flutterfire_internals 1.0.11 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
    - analyzer 4.7.0 [_fe_analyzer_shared collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]
    - args 2.3.1
    - async 2.9.0 [collection meta]
    - boolean_selector 2.1.0 [source_span string_scanner]
    - build 2.3.1 [analyzer async convert crypto glob logging meta path]
    - build_cli_annotations 2.1.0 [args meta]
    - build_config 1.1.1 [checked_yaml json_annotation path pubspec_parse yaml]
    - build_daemon 3.1.0 [built_collection built_value http_multi_server logging path pool shelf shelf_web_socket stream_transform watcher web_socket_channel]
    - build_resolvers 2.0.10 [analyzer async build crypto graphs logging path package_config pool pub_semver stream_transform yaml]
    - build_runner_core 7.2.7 [async build build_config build_resolvers collection convert crypto glob graphs json_annotation logging meta path package_config pool timing watcher yaml]
    - built_collection 5.1.1
    - built_value 8.4.2 [built_collection collection fixnum meta]
    - camera_android 0.10.0+3 [camera_platform_interface flutter flutter_plugin_android_lifecycle stream_transform]
    - camera_avfoundation 0.9.8+6 [camera_platform_interface flutter stream_transform]
    - camera_platform_interface 2.2.2 [cross_file flutter plugin_platform_interface stream_transform]
    - camera_web 0.3.0+1 [camera_platform_interface flutter flutter_web_plugins stream_transform]
    - cancellation_token 1.5.0 [meta collection]
    - characters 1.2.1
    - checked_yaml 2.0.1 [json_annotation source_span yaml]
    - clock 1.1.1
    - cloud_firestore_platform_interface 5.10.0 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
    - cloud_firestore_web 3.2.0 [_flutterfire_internals cloud_firestore_platform_interface collection firebase_core firebase_core_web flutter flutter_web_plugins js]
    - code_builder 4.3.0 [built_collection built_value collection matcher meta]
    - collection 1.16.0
    - convert 3.1.1 [typed_data]
    - cross_file 0.3.3+2 [js meta]
    - crypto 3.0.2 [typed_data]
    - csslib 0.17.2 [source_span]
    - dart_style 2.2.4 [analyzer args path pub_semver source_span]
    - fake_async 1.3.1 [clock collection]
    - ffi 2.0.1
    - ffmpeg_kit_flutter_platform_interface 0.2.1 [flutter plugin_platform_interface]
    - file 6.1.4 [meta path]
    - firebase_auth_platform_interface 6.11.6 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
    - firebase_auth_web 5.2.3 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser intl js meta]
    - firebase_core_platform_interface 4.5.2 [collection flutter flutter_test meta plugin_platform_interface]
    - firebase_core_web 2.0.2 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
    - firebase_database_platform_interface 0.2.2+16 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
    - firebase_database_web 0.2.1+18 [firebase_core firebase_core_web firebase_database_platform_interface flutter flutter_web_plugins js]
    - firebase_messaging_platform_interface 4.2.9 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
    - firebase_messaging_web 3.2.10 [_flutterfire_internals firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta]
    - firebase_storage_platform_interface 4.1.25 [collection firebase_core flutter meta plugin_platform_interface]
    - firebase_storage_web 3.3.18 [_flutterfire_internals async firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta]
    - fixnum 1.0.1
    - flutter_plugin_android_lifecycle 2.0.7 [flutter]
    - flutter_web_plugins 0.0.0 [flutter js characters collection material_color_utilities meta vector_math]
    - frontend_server_client 3.2.0 [async path]
    - glob 2.1.1 [async collection file path string_scanner]
    - graphs 2.2.0 [collection]
    - html 0.15.0 [csslib source_span]
    - http 0.13.5 [async http_parser meta path]
    - http_multi_server 3.2.1 [async]
    - http_parser 4.0.1 [collection source_span string_scanner typed_data]
    - image_cropper_for_web 1.0.3 [flutter flutter_web_plugins image_cropper_platform_interface js]
    - image_cropper_platform_interface 3.0.3 [flutter plugin_platform_interface http]
    - image_picker_android 0.8.5+3 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface]
    - image_picker_for_web 2.1.10 [flutter flutter_web_plugins image_picker_platform_interface]
    - image_picker_ios 0.8.6+1 [flutter image_picker_platform_interface]
    - image_picker_platform_interface 2.6.2 [cross_file flutter http plugin_platform_interface]
    - intl 0.17.0 [clock path]
    - io 1.0.3 [meta path string_scanner]
    - js 0.6.4
    - json_annotation 4.7.0 [meta]
    - logging 1.1.0
    - matcher 0.12.12 [stack_trace]
    - material_color_utilities 0.1.5
    - meta 1.8.0
    - mime 1.0.2
    - nested 1.0.0 [flutter]
    - objectid 2.1.0
    - package_config 2.1.0 [path]
    - path 1.8.2
    - path_drawing 1.0.1 [vector_math meta path_parsing flutter]
    - path_parsing 1.0.1 [vector_math meta]
    - path_provider_android 2.0.20 [flutter path_provider_platform_interface]
    - path_provider_ios 2.0.11 [flutter path_provider_platform_interface]
    - path_provider_linux 2.1.7 [ffi flutter path path_provider_platform_interface xdg_directories]
    - path_provider_macos 2.0.6 [flutter path_provider_platform_interface]
    - path_provider_platform_interface 2.0.5 [flutter platform plugin_platform_interface]
    - path_provider_windows 2.1.3 [ffi flutter path path_provider_platform_interface win32]
    - permission_handler_android 10.2.0 [flutter permission_handler_platform_interface]
    - permission_handler_apple 9.0.7 [flutter permission_handler_platform_interface]
    - permission_handler_platform_interface 3.9.0 [flutter meta plugin_platform_interface]
    - permission_handler_windows 0.1.2 [flutter permission_handler_platform_interface]
    - petitparser 5.0.0 [meta]
    - platform 3.1.0
    - plugin_platform_interface 2.1.3 [meta]
    - pool 1.5.1 [async stack_trace]
    - process 4.2.4 [file path platform]
    - pub_semver 2.1.3 [collection meta]
    - pubspec_parse 1.2.1 [checked_yaml collection json_annotation pub_semver yaml]
    - qr 2.1.0 [meta]
    - quiver 3.1.0 [matcher]
    - realm_common 0.8.0+rc [objectid sane_uuid]
    - realm_generator 0.8.0+rc [analyzer build_resolvers build dart_style realm_common source_gen source_span]
    - record_linux 0.3.4 [flutter record_platform_interface path]
    - record_macos 0.2.2 [flutter record_platform_interface]
    - record_platform_interface 0.5.0 [flutter plugin_platform_interface]
    - record_web 0.5.0 [flutter flutter_web_plugins record_platform_interface]
    - record_windows 0.6.2 [flutter record_platform_interface path]
    - rxdart 0.27.5
    - sane_uuid 1.0.0-alpha.4 [meta crypto]
    - share_plus_platform_interface 3.2.0 [cross_file flutter meta mime plugin_platform_interface path_provider uuid]
    - shared_preferences_android 2.0.13 [flutter shared_preferences_platform_interface]
    - shared_preferences_ios 2.1.1 [flutter shared_preferences_platform_interface]
    - shared_preferences_linux 2.1.1 [file flutter path path_provider_linux path_provider_platform_interface shared_preferences_platform_interface]
    - shared_preferences_macos 2.0.4 [flutter shared_preferences_platform_interface]
    - shared_preferences_platform_interface 2.1.0 [flutter plugin_platform_interface]
    - shared_preferences_web 2.0.4 [flutter flutter_web_plugins shared_preferences_platform_interface]
    - shared_preferences_windows 2.1.1 [file flutter path path_provider_platform_interface path_provider_windows shared_preferences_platform_interface]
    - shelf 1.4.0 [async collection http_parser path stack_trace stream_channel]
    - shelf_web_socket 1.0.3 [shelf stream_channel web_socket_channel]
    - sign_in_with_apple_platform_interface 1.0.0 [flutter plugin_platform_interface meta]
    - sign_in_with_apple_web 1.0.1 [flutter flutter_web_plugins sign_in_with_apple_platform_interface js]
    - sky_engine 0.0.99
    - sliver_tools 0.2.8 [flutter]
    - source_gen 1.2.6 [analyzer async build dart_style glob meta path source_span yaml]
    - source_span 1.9.0 [collection path term_glyph]
    - stack_trace 1.10.0 [path]
    - stream_channel 2.1.0 [async]
    - stream_transform 2.0.1
    - string_scanner 1.1.1 [source_span]
    - tar 0.5.6 [async meta typed_data]
    - term_glyph 1.2.1
    - test_api 0.4.12 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph matcher]
    - timing 1.0.0 [json_annotation]
    - typed_data 1.3.1 [collection]
    - uni_links_platform_interface 1.0.0 [flutter plugin_platform_interface]
    - uni_links_web 0.1.0 [flutter flutter_web_plugins uni_links_platform_interface]
    - url_launcher_android 6.0.19 [flutter url_launcher_platform_interface]
    - url_launcher_ios 6.0.17 [flutter url_launcher_platform_interface]
    - url_launcher_linux 3.0.1 [flutter url_launcher_platform_interface]
    - url_launcher_macos 3.0.1 [flutter url_launcher_platform_interface]
    - url_launcher_platform_interface 2.1.1 [flutter plugin_platform_interface]
    - url_launcher_web 2.0.13 [flutter flutter_web_plugins url_launcher_platform_interface]
    - url_launcher_windows 3.0.1 [flutter url_launcher_platform_interface]
    - uuid 3.0.6 [crypto]
    - vector_math 2.1.2
    - video_player_android 2.3.9 [flutter video_player_platform_interface]
    - video_player_avfoundation 2.3.7 [flutter video_player_platform_interface]
    - video_player_platform_interface 5.1.4 [flutter plugin_platform_interface]
    - video_player_web 2.0.12 [flutter flutter_web_plugins video_player_platform_interface]
    - watcher 1.0.2 [async path]
    - web_socket_channel 2.2.0 [async crypto stream_channel]
    - win32 3.0.0 [ffi]
    - xdg_directories 0.2.0+2 [meta path process]
    - xml 6.1.0 [collection meta petitparser]
    - yaml 3.1.1 [collection source_span string_scanner]
    

    type: bug Needs Attention 
    opened by Shawn-sudo 0
  • fix: Unfocus to dismiss keyboard when submitting email form

    fix: Unfocus to dismiss keyboard when submitting email form

    Description

    Currently, when clicking the Sign In button, the in-screen keyboard is not dismissed. This PR automatically dismisses the keyboard (by unfocusing) when the form is submitted.

    Related Issues

    Fixes #10207

    Checklist

    Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process. Updating the pubspec.yaml and changelogs is not required.

    • [ ] I read the Contributor Guide and followed the process outlined there for submitting PRs.
    • [ ] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
    • [ ] All existing and new tests are passing.
    • [ ] I updated/added relevant documentation (doc comments with ///).
    • [ ] The analyzer (melos run analyze) does not report any problems on my PR.
    • [ ] I read and followed the Flutter Style Guide.
    • [ ] I signed the CLA.
    • [ ] I am willing to follow-up on review comments in a timely manner.

    Breaking Change

    Does your PR require plugin users to manually update their apps to accommodate your change?

    • [ ] Yes, this is a breaking change.
    • [ ] No, this is not a breaking change.
    opened by plammens 0
  • 🐛 [firebase_ui_auth] SignInScreen error messages can be hidden by the in-screen keyboard on some devices

    🐛 [firebase_ui_auth] SignInScreen error messages can be hidden by the in-screen keyboard on some devices

    Bug report

    Describe the bug In SignInScreen, when the user clicks the Sign In button and some error occurs, since the in-screen keyboard is not removed, the error message appears hidden behind it so it might look to the user that nothing has happened.

    (1) Before clicking the sign-in button, (2) after clicking, and (3) after dismissing the keyboard manually:

    Steps to reproduce

    Steps to reproduce the behavior:

    1. Create a flutter app with a SignInScreen, with an EmailSignInProvider and a GoogleProvider
    2. Open the app on a Nokia 6 or other physical or emulated android device whose display characteristics make the sign-in button appear just above the keyboard, as shown in the screenshots above
    3. Enter some non-existing user data
    4. Without dismissing the keyboard (by clicking elsewhere), click Sign In
    5. Dismiss the keyboard to check that the error message has appeared behind the keyboard

    Expected behavior

    The error message is highlighted clearly, for example by automatically hiding the keyboard when the user clicks sign in.


    Flutter doctor

    Click To Expand
    Doctor summary (to see all details, run flutter doctor -v):
    [√] Flutter (Channel stable, 3.3.7, on Microsoft Windows [Version 10.0.19044.2364], locale en-GB)
    [√] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    [√] Chrome - develop for the web
    [√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.11.18)
    [√] Android Studio (version 2021.2)
    [√] IntelliJ IDEA Ultimate Edition (version 2021.3)
    [√] IntelliJ IDEA Ultimate Edition (version 2022.2)
    [√] Connected device (5 available)
    [√] HTTP Host Availability
    
    • No issues found!
    

    Flutter dependencies

    Click To Expand
    Dart SDK 2.18.4
    Flutter SDK 3.3.7
    commitments_app 1.0.0+1
    
    dependencies:
    - cloud_firestore 4.3.1 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
    - collection 1.16.0
    - cupertino_icons 1.0.5
    - date_time_picker 2.1.0 [flutter intl]
    - firebase_auth 4.2.4 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta]
    - firebase_core 2.4.1 [firebase_core_platform_interface firebase_core_web flutter meta]
    - firebase_dynamic_links 5.0.11 [firebase_core firebase_core_platform_interface firebase_dynamic_links_platform_interface flutter meta plugin_platform_interface]
    - firebase_ui_auth 1.1.6 [email_validator firebase_auth firebase_core firebase_dynamic_links firebase_ui_localizations firebase_ui_oauth flutter flutter_localizations flutter_svg]
    - firebase_ui_oauth_google 1.0.13 [firebase_auth firebase_ui_oauth flutter google_sign_in]
    - flutter 0.0.0 [characters collection material_color_utilities meta vector_math sky_engine]
    - flutter_riverpod 1.0.4 [collection flutter meta riverpod state_notifier]
    - flutter_speed_dial 6.2.0 [flutter]
    - google_sign_in 5.4.2 [flutter google_sign_in_android google_sign_in_ios google_sign_in_platform_interface google_sign_in_web]
    - intl 0.17.0 [clock path]
    - url_launcher 6.1.7 [flutter url_launcher_android url_launcher_ios url_launcher_linux url_launcher_macos url_launcher_platform_interface url_launcher_web url_launcher_windows]
    
    dev dependencies:
    - flutter_lints 2.0.1 [lints]
    - flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters collection matcher material_color_utilities meta source_span stre
    am_channel string_scanner term_glyph]
    
    transitive dependencies:
    - _flutterfire_internals 1.0.12 [collection firebase_core firebase_core_platform_interface flutter meta]
    - async 2.9.0 [collection meta]
    - boolean_selector 2.1.0 [source_span string_scanner]
    - characters 1.2.1
    - clock 1.1.1
    - cloud_firestore_platform_interface 5.10.1 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
    - cloud_firestore_web 3.2.1 [_flutterfire_internals cloud_firestore_platform_interface collection firebase_core firebase_core_web flutter flutter_web_plugins js]
    - crypto 3.0.2 [typed_data]
    - desktop_webview_auth 0.0.11 [crypto flutter http flutter_web_plugins plugin_platform_interface]
    - email_validator 2.1.17
    - fake_async 1.3.1 [clock collection]
    - firebase_auth_platform_interface 6.11.7 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
    - firebase_auth_web 5.2.4 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser intl js meta]
    - firebase_core_platform_interface 4.5.2 [collection flutter flutter_test meta plugin_platform_interface]
    - firebase_core_web 2.1.0 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
    - firebase_dynamic_links_platform_interface 0.2.3+26 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
    - firebase_ui_localizations 1.0.2 [flutter flutter_localizations intl path]
    - firebase_ui_oauth 1.1.6 [desktop_webview_auth firebase_auth firebase_ui_auth flutter_svg flutter]
    - flutter_localizations 0.0.0 [flutter intl characters clock collection material_color_utilities meta path vector_math]
    - flutter_svg 1.1.6 [flutter meta path_drawing vector_math xml]
    - flutter_web_plugins 0.0.0 [flutter js characters collection material_color_utilities meta vector_math]
    - google_sign_in_android 6.1.4 [flutter google_sign_in_platform_interface]
    - google_sign_in_ios 5.5.1 [flutter google_sign_in_platform_interface]
    - google_sign_in_platform_interface 2.3.0 [flutter plugin_platform_interface quiver]
    - google_sign_in_web 0.10.2 [flutter flutter_web_plugins google_sign_in_platform_interface js]
    - http 0.13.5 [async http_parser meta path]
    - http_parser 4.0.2 [collection source_span string_scanner typed_data]
    - js 0.6.4
    - lints 2.0.1
    - matcher 0.12.12 [stack_trace]
    - material_color_utilities 0.1.5
    - meta 1.8.0
    - path 1.8.2
    - path_drawing 1.0.1 [vector_math meta path_parsing flutter]
    - path_parsing 1.0.1 [vector_math meta]
    - petitparser 5.1.0 [meta]
    - plugin_platform_interface 2.1.3 [meta]
    - quiver 3.2.1 [matcher]
    - riverpod 1.0.3 [collection meta state_notifier]
    - sky_engine 0.0.99
    - source_span 1.9.0 [collection path term_glyph]
    - stack_trace 1.10.0 [path]
    - state_notifier 0.7.2+1 [meta]
    - stream_channel 2.1.0 [async]
    - string_scanner 1.1.1 [source_span]
    - term_glyph 1.2.1
    - test_api 0.4.12 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph matcher]
    - typed_data 1.3.1 [collection]
    - url_launcher_android 6.0.22 [flutter url_launcher_platform_interface]
    - url_launcher_ios 6.0.17 [flutter url_launcher_platform_interface]
    - url_launcher_linux 3.0.1 [flutter url_launcher_platform_interface]
    - url_launcher_macos 3.0.1 [flutter url_launcher_platform_interface]
    - url_launcher_platform_interface 2.1.1 [flutter plugin_platform_interface]
    - url_launcher_web 2.0.13 [flutter flutter_web_plugins url_launcher_platform_interface]
    - url_launcher_windows 3.0.1 [flutter url_launcher_platform_interface]
    - vector_math 2.1.2
    - xml 6.1.0 [collection meta petitparser]
    

    type: bug Needs Attention 
    opened by plammens 0
  • 🐛 [firebase_ui_auth] Displayed error messages should be for the user and not the developer

    🐛 [firebase_ui_auth] Displayed error messages should be for the user and not the developer

    Bug report

    Describe the bug On entering an incorrect phone login code, SMSCodeInputScreen shows a message telling the developer what to do rather than the end user.

    Steps to reproduce

    Steps to reproduce the behavior:

    1. Create a login with phone provider as shown in the firebase_ui_auth example and launch the app
    2. Enter a valid/test phone number on the phone input screen and click Next
    3. Enter an invalid code on code input screen and click Next
    4. The displayed error message tells the developer what to do

    sms code error

    Expected behavior

    A user message e.g. 'Invalid code'


    Additional context

    Developer messages should not be displayed in any scenario, not just this one


    Flutter doctor

    Run flutter doctor and paste the output below:

    Click To Expand
    [√] Flutter (Channel stable, 3.3.10, on Microsoft Windows [Version 10.0.19045.2364], locale en-US)
    [√] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
    [√] Chrome - develop for the web
    [X] Visual Studio - develop for Windows
        X Visual Studio not installed; this is necessary for Windows development.
          Download at https://visualstudio.microsoft.com/downloads/.
          Please install the "Desktop development with C++" workload, including all of its default components
    [√] Android Studio (version 2021.2)
    [√] VS Code (version 1.63.2)
    [√] Connected device (3 available)
    [√] HTTP Host Availability
    
    ! Doctor found issues in 1 category.
    

    Flutter dependencies

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

    Click To Expand
    Dart SDK 2.18.6
    Flutter SDK 3.3.10
    testapp 1.0.0+1
    
    dependencies:
    - cloud_firestore 4.3.0 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
    - cupertino_icons 1.0.5
    - firebase_auth 4.2.3 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta]
    - firebase_core 2.4.0 [firebase_core_platform_interface firebase_core_web flutter meta]
    - firebase_ui_auth 1.1.5 [email_validator firebase_auth firebase_core firebase_dynamic_links firebase_ui_localizations firebase_ui_oauth flutter flutter_localizations flutter_svg]
    - flutter 0.0.0 [characters collection material_color_utilities meta vector_math sky_engine]
    - go_router 6.0.0 [collection flutter flutter_web_plugins logging meta]
    
    dev dependencies:
    - flutter_lints 2.0.1 [lints]
    - flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters collection matcher material_color_utilities meta source_span stre
    am_channel string_scanner term_glyph]
    
    transitive dependencies:
    - _flutterfire_internals 1.0.11 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
    - async 2.9.0 [collection meta]
    - boolean_selector 2.1.0 [source_span string_scanner]
    - characters 1.2.1
    - clock 1.1.1
    - cloud_firestore_platform_interface 5.10.0 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
    - cloud_firestore_web 3.2.0 [_flutterfire_internals cloud_firestore_platform_interface collection firebase_core firebase_core_web flutter flutter_web_plugins js]
    - collection 1.16.0
    - crypto 3.0.2 [typed_data]
    - desktop_webview_auth 0.0.11 [crypto flutter http flutter_web_plugins plugin_platform_interface]
    - email_validator 2.1.17
    - fake_async 1.3.1 [clock collection]
    - firebase_auth_platform_interface 6.11.6 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
    - firebase_auth_web 5.2.3 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser intl js meta]
    - firebase_core_platform_interface 4.5.2 [collection flutter flutter_test meta plugin_platform_interface]
    - firebase_core_web 2.0.2 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
    - firebase_dynamic_links 5.0.10 [firebase_core firebase_core_platform_interface firebase_dynamic_links_platform_interface flutter meta plugin_platform_interface]
    - firebase_dynamic_links_platform_interface 0.2.3+25 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
    - firebase_ui_localizations 1.0.2 [flutter flutter_localizations intl path]
    - firebase_ui_oauth 1.1.5 [desktop_webview_auth firebase_auth firebase_ui_auth flutter_svg flutter]
    - flutter_localizations 0.0.0 [flutter intl characters clock collection material_color_utilities meta path vector_math]
    - flutter_svg 1.1.6 [flutter meta path_drawing vector_math xml]
    - flutter_web_plugins 0.0.0 [flutter js characters collection material_color_utilities meta vector_math]
    - http 0.13.5 [async http_parser meta path]
    - http_parser 4.0.2 [collection source_span string_scanner typed_data]
    - intl 0.17.0 [clock path]
    - js 0.6.4
    - lints 2.0.1
    - logging 1.1.0
    - matcher 0.12.12 [stack_trace]
    - material_color_utilities 0.1.5
    - meta 1.8.0
    - path 1.8.2
    - path_drawing 1.0.1 [vector_math meta path_parsing flutter]
    - path_parsing 1.0.1 [vector_math meta]
    - petitparser 5.1.0 [meta]
    - plugin_platform_interface 2.1.3 [meta]
    - sky_engine 0.0.99
    - source_span 1.9.0 [collection path term_glyph]
    - stack_trace 1.10.0 [path]
    - stream_channel 2.1.0 [async]
    - string_scanner 1.1.1 [source_span]
    - term_glyph 1.2.1
    - test_api 0.4.12 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph matcher]
    - typed_data 1.3.1 [collection]
    - vector_math 2.1.2
    - xml 6.1.0 [collection meta petitparser]
    

    type: bug Needs Attention 
    opened by stevebread 0
  • 🐛 [firebase_storage] FirebaseStorage.instance.ref().child(").delete() throws 404 Not Found">

    🐛 [firebase_storage] FirebaseStorage.instance.ref().child("").delete() throws 404 Not Found

    Bug report

    Describe the bug I want to delete a folder in firebase storage through my flutter app on android. For that I am using firebase_storage package. But I am unable to delete the folder at specified path.

    Steps to reproduce

    Steps to reproduce the behavior:

    1. Just create a file in firebase storage as images/image.jpg.
    2. Now try deleting images folder as: await FirebaseStorage.instance.ref().child("images").delete();

    Expected behavior

    Bucket at the provided path must have been deleted.

    Sample code

    final cloudPath = "images";
    var ref = FirebaseStorage.instance.ref();
    await ref.child(cloudPath).delete();
    

    Got this exception

    E/StorageException(18184): StorageException has occurred.
    E/StorageException(18184): Object does not exist at location.
    E/StorageException(18184):  Code: -13010 HttpResult: 404
    E/StorageException(18184): {  "error": {    "code": 404,    "message": "Not Found."  }}
    E/StorageException(18184): java.io.IOException: {  "error": {    "code": 404,    "message": "Not Found."  }}  
    E/StorageException(18184):      at com.google.firebase.storage.network.NetworkRequest.parseResponse(NetworkRequest.java:445)
    E/StorageException(18184):      at com.google.firebase.storage.network.NetworkRequest.parseErrorResponse(NetworkRequest.java:462)
    E/StorageException(18184):      at com.google.firebase.storage.network.NetworkRequest.processResponseStream(NetworkRequest.java:453)
    E/StorageException(18184):      at com.google.firebase.storage.network.NetworkRequest.performRequest(NetworkRequest.java:272)
    E/StorageException(18184):      at com.google.firebase.storage.network.NetworkRequest.performRequest(NetworkRequest.java:289)
    E/StorageException(18184):      at com.google.firebase.storage.internal.ExponentialBackoffSender.sendWithExponentialBackoff(ExponentialBackoffSender.java:76)
    E/StorageException(18184):      at com.google.firebase.storage.internal.ExponentialBackoffSender.sendWithExponentialBackoff(ExponentialBackoffSender.java:68)
    E/StorageException(18184):      at com.google.firebase.storage.DeleteStorageTask.run(DeleteStorageTask.java:59)
    E/StorageException(18184):      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
    E/StorageException(18184):      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
    E/StorageException(18184):      at java.lang.Thread.run(Thread.java:1012)
    
    type: bug Needs Attention 
    opened by AAGUPTA6209 0
  • feat: add token expiration

    feat: add token expiration

    Description

    Replace this paragraph with a description of what this PR is doing. If you're modifying existing behavior, describe the existing behavior, how this PR is changing it, and what motivated the change.

    Related Issues

    Replace this paragraph with a list of issues related to this PR from the issue database. Indicate, which of these issues are resolved or fixed by this PR. Note that you'll have to prefix the issue numbers with flutter/flutter#.

    Checklist

    Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process. Updating the pubspec.yaml and changelogs is not required.

    • [ ] I read the Contributor Guide and followed the process outlined there for submitting PRs.
    • [ ] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
    • [ ] All existing and new tests are passing.
    • [ ] I updated/added relevant documentation (doc comments with ///).
    • [ ] The analyzer (melos run analyze) does not report any problems on my PR.
    • [ ] I read and followed the Flutter Style Guide.
    • [ ] I signed the CLA.
    • [ ] I am willing to follow-up on review comments in a timely manner.

    Breaking Change

    Does your PR require plugin users to manually update their apps to accommodate your change?

    • [ ] Yes, this is a breaking change.
    • [ ] No, this is not a breaking change.
    opened by Lyokone 0
Releases(firebase_core_web-v0.2.0-dev.1)
Owner
Projects that are not officially staffed by Googlers but may be of use to Firebase developers. Volunteers are welcome to contribute and maintain.
null
A set of commands for coverage info files manipulation.

Coverage Utils A set of commands for coverage info files manipulation. Installing $ dart pub global activate

Karlo Verde 22 Oct 9, 2022
This project aims to basically listing crypto market prices and set alarms.

trader This project aims to basically listing crypto market prices and set alarms. Also, it is starting point of Flutter with GetX state management. B

Görkem Sarı 2 Oct 31, 2021
Quiver is a set of utility libraries for Dart that makes using many Dart libraries easier and more convenient, or adds additional functionality.

Quiver is a set of utility libraries for Dart that makes using many Dart libraries easier and more convenient, or adds additional functionality.

Google 905 Jan 2, 2023
Rows lint contains a set of lint rules for dart projects used by projects at Rows GmbH

Rows lint contains a set of lint rules for dart projects used by projects at Rows GmbH

rows 6 Apr 12, 2022
Reference implementation for the Zenon SDK for Dart and Flutter apps compatible

Zenon Dart SDK Reference implementation for the Zenon SDK for Dart and Flutter apps compatible with the Zenon Alphanet - Network of Momentum Phase 0.

null 8 Nov 23, 2022
apps random

flutter_app A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if t

Tajul Aulia Muda 1 Oct 21, 2021
Library for help you make userbot or bot telegram and support tdlib telegram database and only support nodejs dart and google-apps-script

To-Do telegram client dart ✅️ support multi token ( bot / userbot ) ✅️ support bot and userbot ✅️ support telegram-bot-api local server ✅️ support tel

Azka Full Snack Developer:) 73 Jan 7, 2023
How to use the Robot Testing pattern in Flutter

Robot Testing Pattern in Flutter Developed with ?? by Very Good Ventures ?? This project showcases how to apply the Robot Testing pattern to a Flutter

Very Good Ventures 38 Dec 16, 2022
Easy to use session wrapper that adds support to session storage and management in flutter.

flutter_session_manager Adds an easy to use wrapper to session management in flutter. Allows for easy session storage and management. The session pers

Eduardo Migueis 2 Feb 15, 2022
Easy to use cross-platform regex replace command line util

replace Easy to use cross-platform regex replace command line util. Can't remember the arguments to the find command? or how xargs works? Maybe sed is

Rob Becker 3 Feb 1, 2022
You can use this package for transition between screens with interesting way with amazing animation

You can use this package for transition between screens with interesting way with amazing animation

Sajad Rahimi 5 Jul 10, 2022
Minimal Dart wrapper to interact with Some Random Api. Easy to use, simplified and lightweight.

SRA - Some Random Api Minimal Dart wrapper to interact with Some Random Api. Easy to use, simplified and lightweight. Getting started Add the package

Yakiyo 3 Jan 4, 2023
Notes app using flutter, firebase and cloud firestore

notes A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this is

Sidheshwar S 8 Aug 10, 2022
Log snapshot management solution (iOS/Android/Web/Server) built with Flutter/Dart using Bloc pattern and Firebase Firestore backend.

Log snapshot management solution (iOS/Android/Web/Server) built with Flutter/Dart using Bloc pattern and Firebase Firestore backend.

Alexey Perov 5 Nov 9, 2022
Aplicacion para control de pacientes hecha con Flutter y Firebase

flutter_app A new Flutter application. Getting Started This project is a starting point for a Flutter application. A few resources to get you started

null 0 Nov 5, 2021
Ready Made Code for Firebase Push Notification

Ready Made Code for Firebase Push Notification

HM Athir 2 Mar 3, 2022
Flutter Version Management: A simple CLI to manage Flutter SDK versions.

fvm Flutter Version Management: A simple cli to manage Flutter SDK versions. FVM helps with the need for a consistent app builds by allowing to refere

Leo Farias 3.2k Jan 8, 2023
A flutter utility to easily create flavors in your flutter application

Flutter Flavorizr A flutter utility to easily create flavors in your flutter application Getting Started Let's start by setting up our environment in

Angelo Cassano 268 Jan 1, 2023