我的Debug APK工作得很好,但是发布的版本不能正常工作。
当我运行发布版本时,我会得到以下日志:
I/flutter ( 4054): First Run
I/flutter ( 4054): [core/no-app] No Firebase App '[DEFAULT]' has been created - call Firebase.initializeApp()
I/flutter ( 4054): true
I/flutter ( 4054): [core/no-app] No Firebase App '[DEFAULT]' has been created - call Firebase.initializeApp()正如您在这里看到的,我确实调用了Firebase.initializeApp()方法。
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
_AppState createState() => _AppState();
}
//Init Firebase Core
//Init App if Firebase Core init is Successfull
class _AppState extends State<MyApp> {
// Set default `_initialized` and `_error` state to false
bool _initialized = false;
bool _error = false;
// Define an async function to initialize FlutterFire
void initializeFlutterFire() async {
try {
// Wait for Firebase to initialize and set `_initialized` state to true
await Firebase.initializeApp();
setState(() {
_initialized = true;
});
} catch (e) {
// Set `_error` state to true if Firebase initialization fails
print(e);
setState(() {
_error = true;
});
}
}
@override
void initState() {
print("First Run");
initializeFlutterFire();
super.initState();
}
@override
Widget build(BuildContext context) {
// Show error message if initialization failed
if (_error) {
log("Show error message if initialization failed");
}
// Show a loader until FlutterFire is initialized
if (!_initialized) {
//return Loading();
log("Show Loader");
}
return MaterialApp(title: "Delorean", theme: _buildTheme(), home: SplashScreen());
}
}我的flutter doctor -v返回时没有错误。我正在使用Build版本3.5.3
发布于 2020-09-13 20:35:00
最后,我删除了initializeFlutterFire()类中的_AppState方法。
在main方法中,我在runApp(MyApp)之前调用了Firebase。
void main() async {
WidgetsFlutterBinding.ensureInitialized(); //Allows to call binary libs before runApp
await Firebase.initializeApp();
runApp(MyApp());
}现在,APK发布的运行良好。
https://stackoverflow.com/questions/63864300
复制相似问题