I have been initializing Firebase like this since I started by following this flutter documentation, but for some reason, this throws an error in the debugger, as follows:
TypeError: Class constructor IndexedDBLocalPersistence cannot be
invoked without ‘new’
Could you please help me rectify this?
Here is the Flutter code:
import 'package:firebase_core/firebase_core.dart';
import 'package:flutter/material.dart';
import 'package:pace/firebase_options.dart';
import 'package:pace/pages/auth_page.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
@override
Widget build(BuildContext context) {
return const MaterialApp(
home: Scaffold(
body: AuthPage(),
),
);
}
}
11
As Tahsin Emre suggested in a comment; if this error occurs when updating to Flutter 3.19.0, it can be solved by upgrading the various Firebase package versions. The problem was solved for me with the following versions in pubspec.yaml
:
dependencies:
firebase_core: ^2.25.4
cloud_functions: ^4.6.0
firebase_auth: ^4.17.5
cloud_firestore: ^4.15.5
1
I occurred into the same error while trying to release my app on web and after a few attempts I have eventually found a solution for it.
Here are the steps I have performed:
- Run
flutter channel stable
to make sure that you are currently using astable
channel and not abeta
- Run
flutter upgrade
to update to the latest version of the SDK, Dart SDK will update accordingly. - Run
flutter --version
to check both your Flutter SDK version and your Dart SDK version. - Make sure that your
pubspec.yaml
includes you Dart SDK version in the version constraints specified. (Example: if your Dart SDK version shown in the output provided fromflutter --version
is 2.19.4, make sure that your code looks something like thissdk: '>=2.19.0 <4.0.0'
at least). - In my case scenario, the issue is solved using Flutter SDK version 3.7.0 with Dart SDK version 2.19.0, however this is not the latest version, but I am confident that even with the last stable version ( Flutter SDK 3.16.5) the issue shouldn’t occur.
Hopefully this solves the issue!
Just downgrade from beta to stable.
2
There is no need to downgrade to a previous version. You can use the latest release which by the time (2024-03-15) I’m writing this answer is 3.19.0
. So to solve the issue, please upgrade the Firebase package to the latest versions inside the pubspec.yaml
file too:
dependencies:
firebase_core: ^2.27.1
cloud_functions: ^4.6.9
firebase_auth: ^4.17.9
cloud_firestore: ^4.15.9
I got these versions from firebase_core, cloud_functions, firebase_auth and cloud_firestore packages for Flutter. So I recommend always keeping your packages up to date.
run
flutter pub upgrade --major-versions
1