首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MissingPluginException(未在通道插件上找到Firebase#initializeCore方法的实现)

MissingPluginException(未在通道插件上找到Firebase#initializeCore方法的实现)
EN

Stack Overflow用户
提问于 2021-02-25 20:24:23
回答 1查看 263关注 0票数 1

我正在用Firebase构建一个颤振应用程序。当我用颤振测试的时候,在我的android模拟器或我的android手机上运行,这个应用程序运行得很好,没有重大错误。

当我试图构建apk或appbundle时,Firebase.initializeApp()就会失败。

因为我没有在调试模式下运行,所以我不知道如何跟踪这个错误。

更新

我可以跟踪捕获从Firebase.initializeApp()引发的异常的错误,并且是MissingPluginException(没有在通道Firebase#initializeCore上找到方法Firebase#initializeCore的实现)

我仍然不知道为什么这个错误只是出现在发布时,而在调试运行完美。

这是我的应用程序/build.gradle片段

代码语言:javascript
复制
(...)

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

(...)

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation platform('com.google.firebase:firebase-bom:26.2.0')
    implementation 'com.google.firebase:firebase-dynamic-links'
    implementation 'com.google.firebase:firebase-analytics'
    implementation 'com.google.firebase:firebase-auth'
    implementation 'com.google.firebase:firebase-firestore'
}

和我的项目build.gradle依赖

代码语言:javascript
复制
(...)

dependencies {
        classpath 'com.android.tools.build:gradle:4.0.1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.google.gms:google-services:4.3.4'
        classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.9, 0.99.99]'
}

(...)

和我的防火墙依赖关系

代码语言:javascript
复制
dependencies:
  flutter:
    sdk: flutter
  firebase_core: ^0.7.0
  cloud_firestore: ^0.16.0
  firebase_auth: ^0.20.0+1
  firebase_storage: ^7.0.0
EN

回答 1

Stack Overflow用户

发布于 2021-02-26 07:27:00

我也面临着同样的问题,所以我所做的是在我的main.dart文件中,我刚刚添加了这段代码,它为我工作。它所做的是,如果Firebase.intitalizeApp()失败,那么它将显示我创建的errorPage,如果它加载,那么它可以显示应用程序主页,如果它仍然在加载,那么它将显示一个加载页面。这是它的代码。希望它能帮助你为我工作。

代码语言:javascript
复制
  @override
  Widget build(BuildContext context) {
    return FutureBuilder(
      // Initialize FlutterFire
      future: Firebase.initializeApp(),
      builder: (context, snapshot) {

        // Check for errors
        if (snapshot.hasError) {
          return SomethingWentWrong();
        }

        // Show Application
        if (snapshot.connectionState == ConnectionState.done) {
          return StreamProvider<Help4YouUser>.value(
            value: AuthService().user,
            child: MaterialApp(
              debugShowCheckedModeBanner: false,
              home: Wrapper(),
            ),
          );
        }

        // Initialization
        return PouringHourGlassPageLoad();
      },
    );
  }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66375954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档