【问题标题】:MissingPluginException(No implementation found for method Firebase#initializeCore on channel plugins.flutter.io/firebase_core) on buildMissingPluginException(在通道 plugins.flutter.io/firebase_core 上找不到方法 Firebase#initializeCore 的实现)
【发布时间】:2021-11-03 00:22:53
【问题描述】:

我正在尝试在我的笔记程序中实现 Cloud Firestore,但我不断收到此错误两次:

I/flutter (5328): MissingPluginException(在通道 plugins.flutter.io/firebase_core 上找不到方法 Firebase#initializeCore 的实现) >I/flutter (5328): MissingPluginException(在通道上找不到方法 Firebase#initializeCore 的实现plugins.flutter.io/firebase_core)

我已经尝试了其他类似页面中的所有其他补救措施,但都没有奏效。这是我的 main.dart:

//imports like material and cupertino above
import 'package:cloud_firestore/cloud_firestore.dart';

// Import the firebase_core plugin
import 'package:firebase_core/firebase_core.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  runApp(MaterialApp(home: App(),));
}

class App extends StatefulWidget {
  _AppState createState() => _AppState();
}

class _AppState extends State<App> {
  // Set default `_initialized` and `_error` state to false
  bool _initialized = false;
  bool _error = false;
  String error = '';

  // 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
      setState(() {
        error = e.toString();
        _error = true;
      });
    }
  }

  @override
  void initState() {
    initializeFlutterFire();
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    // Show error message if initialization failed
    if(_error) {
      print(error);
      return Scaffold(
        body: Container(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            crossAxisAlignment: CrossAxisAlignment.center,
            children: [
              Text(
                '${error}'
              ),
            ],
          ),
        ),
      );
    }

    // Show a loader until FlutterFire is initialized
    if (!_initialized) {
      return Scaffold(
        body: Container(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            crossAxisAlignment: CrossAxisAlignment.center,
            children: [
              CircularProgressIndicator()
            ],
          ),
        ),
      );;
    }

    return NoteApp();
  }
}


class NoteApp extends StatefulWidget {
  const NoteApp({Key? key}) : super(key: key);

  @override
  _NoteAppState createState() => _NoteAppState();
}

class _NoteAppState extends State<NoteApp> {
...
  }

这是我的 pubspec.yaml:

dependencies:

  cloud_firestore_platform_interface: ^5.4.1
  cloud_firestore_web: ^2.4.1
  cloud_firestore: ^2.5.1
  collection: ^1.0.0
  firebase_core: ^1.6.0
  firebase_core_platform_interface: ^4.0.1

这是我的 build.gradle:

 buildTypes {
        release {
            signingConfig signingConfigs.debug
            minifyEnabled false
            shrinkResources false
            // TODO: Add your own signing config for the release build.
            // Signing with the debug keys for now, so `flutter run --release` works.
        }
        defaultConfig{
// add the following line
            multiDexEnabled true
        }
    }

有谁知道如何解决这个与其他问题不同的问题?

【问题讨论】:

    标签: android flutter dart google-cloud-firestore mobile


    【解决方案1】:

    使用命令flutter create myapp 创建一个新项目并将gradle build tools 的版本升级到here 提到的3.5.0。

    com.android.tools.build:gradle:3.5.0
    

    【讨论】:

      猜你喜欢
      • 2021-05-28
      • 2022-01-05
      • 2022-01-21
      • 2022-01-25
      • 2021-12-31
      • 2020-07-21
      • 2021-05-21
      • 2021-12-24
      相关资源
      最近更新 更多