Flutter error: cannot find symbol import com.google.firebase.firestore.LoadBundleTaskProgress;

Viewed 1017

I have a firebase user app that let the users sign up and show their data and edit it. This error happens when I try to run the app on the emulator. I wrote most of this app on sdk 2.11.0 then changed to 2.12.0 to suit null safety yet, I don't know if this is the reason.

The error:

E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:19: error: cannot find symbol
import com.google.firebase.firestore.LoadBundleTaskProgress;
                                    ^
  symbol:   class LoadBundleTaskProgress
  location: package com.google.firebase.firestore
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:158: error: cannot find symbol
      ByteArrayOutputStream stream, LoadBundleTaskProgress snapshot) {
                                    ^
  symbol:   class LoadBundleTaskProgress
  location: class FlutterFirebaseFirestoreMessageCodec
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\streamhandler\LoadBundleStreamHandler.java:6: error: cannot find symbol
import com.google.firebase.firestore.LoadBundleTask;
                                    ^
  symbol:   class LoadBundleTask
  location: package com.google.firebase.firestore
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:80: error: cannot find symbol
    } else if (value instanceof LoadBundleTaskProgress) {
                                ^
  symbol:   class LoadBundleTaskProgress
  location: class FlutterFirebaseFirestoreMessageCodec
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:81: error: cannot find symbol
      writeLoadBundleTaskProgress(stream, (LoadBundleTaskProgress) value);
                                           ^
  symbol:   class LoadBundleTaskProgress
  location: class FlutterFirebaseFirestoreMessageCodec
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:166: error: package LoadBundleTaskProgress does not exist
    LoadBundleTaskProgress.TaskState taskState = snapshot.getTaskState();
                          ^
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:170: error: cannot find symbol
      case RUNNING:

           ^
  symbol:   variable RUNNING
  location: class FlutterFirebaseFirestoreMessageCodec
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:173: error: cannot find symbol
      case SUCCESS:
           ^
  symbol:   variable SUCCESS
  location: class FlutterFirebaseFirestoreMessageCodec
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:176: error: cannot find symbol
      case ERROR:
           ^
  symbol:   variable ERROR
  location: class FlutterFirebaseFirestoreMessageCodec
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:353: error: cannot find symbol
          query = query.whereNotEqualTo(fieldPath, value);
                       ^
  symbol:   method whereNotEqualTo(FieldPath,Object)
  location: variable query of type Query
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:375: error: cannot find symbol
          query = query.whereNotIn(fieldPath, listValues);

                       ^
  symbol:   method whereNotIn(FieldPath,List<Object>)
  location: variable query of type Query
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestoreMessageCodec.java:388: error: cannot find symbol
      if (limitToLast != null) query = query.limitToLast(limitToLast.longValue());
                                            ^
  symbol:   method limitToLast(long)
  location: variable query of type Query
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestorePlugin.java:292: error: cannot find symbol
          Query query = Tasks.await(firestore.getNamedQuery(name));
                                             ^
  symbol:   method getNamedQuery(String)
  location: variable firestore of type FirebaseFirestore
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\streamhandler\LoadBundleStreamHandler.java:25: error: cannot find symbol
    LoadBundleTask task = firestore.loadBundle(bundle);
    ^
  symbol:   class LoadBundleTask
  location: class LoadBundleStreamHandler
E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\streamhandler\LoadBundleStreamHandler.java:25: error: cannot find symbol
    LoadBundleTask task = firestore.loadBundle(bundle);
                                   ^
  symbol:   method loadBundle(byte[])
  location: variable firestore of type FirebaseFirestore
Note: E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\FlutterFirebaseFirestorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: E:\Flutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-2.5.3\android\src\main\java\io\flutter\plugins\firebase\firestore\streamhandler\TransactionStreamHandler.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
15 errors

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':cloud_firestore:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1m 6s
Exception: Gradle task assembleDebug failed with exit code 1

This is a part of my pubspec.yaml file :

version: 1.0.0+1

environment:
  sdk: ">=2.12.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter

  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for iOS style icons.
  cupertino_icons: ^1.0.2
  cloud_firestore: ^2.5.3
  firebase_core: ^1.7.0
  firebase_auth: ^3.1.3
  flutter_spinkit: ^5.1.0
  provider: ^6.0.1
  firebase: ^9.0.2

dev_dependencies:
  flutter_test:
    sdk: flutter
1 Answers

I think it is related to the SDK update, the issue might be caused because some of your components don’t suit null safety and is solved by updating them to a version where they accept it. Here you can find related information about that issue and its possible solutions. These are the possible solutions:

Solution 1

As I updated my SDK version to null safety all we need to do is just update your firebase_messaging in pusbpec.yaml to version a that supports null-safety (for example: firebase_messaging: ^10.0.0), and call flutter pub get from terminal

  • Open pubspec.yaml file.
  • Get the latest version of firebase_messaging from here.
  • Updated to latest version.
  • Then flutter pub get.

That’s all.

Solution 2

First, get the latest versions of your firebase dependencies from pub.dev

Run the commands:

flutter pub upgrade
flutter pub get
flutter clean

Invalidate caches, restart and then try running the app.

In the solution 1 the firebase_messaging dependency is updated, I was looking for the exact dependency, which seems to be LoadBundleTaskProgress, but all I could find is that it was in the cloud_firestore plugin, and to install it you would need to do as follows:

Run this command:

With Flutter:

$ flutter pub add cloud_firestore 

This will add a line like this to your package's pubspec.yaml (and run an implicit flutter pub get):

dependencies:   
    cloud_firestore: ^2.5.3

If you already tried this and the message is still showing you might need to check your imports as well.

Related