【问题标题】:Unhandled Exception: MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/ for many packages on Flutter未处理的异常:MissingPluginException(对于 Flutter 上的许多包,在通道 plugins.flutter.io/ 上找不到方法 getAll 的实现
【发布时间】:2020-08-19 20:57:09
【问题描述】:

当我在 IOS 上运行我的颤振应用程序但在 android 上运行时出现以下错误:

未处理的异常:MissingPluginException(在通道 plugins.flutter.io/cloud_firestore 上找不到方法 DocumentReference#setData 的实现)

未处理的异常:MissingPluginException(在通道 plugins.flutter.io/shared_preferences 上找不到方法 getAll 的实现)

【问题讨论】:

    标签: flutter


    【解决方案1】:

    我关注了这个:https://github.com/flutter/flutter/issues/10912

    更具体地说,对于第 4 步,我正在运行 Kotlin、Swift 版本的 Flutter。当我设置 Firebase 时,我不小心复制了 Firebase 上提供给我的初始化代码,用于一个新的 IOS 应用程序,我们不应该为 Flutter 这样做。所以我最终创建了一个新的 Flutter 项目,将 ios/Runner/AppDelegate.swift 复制到我的 Flutter 项目的同一目录中。

    import UIKit
    import Flutter
    
    @UIApplicationMain
    @objc class AppDelegate: FlutterAppDelegate {
      override func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
      ) -> Bool {
        GeneratedPluginRegistrant.register(with: self)
    
        return super.application(application, didFinishLaunchingWithOptions: launchOptions)
      }
    }
    
    
    

    对于使用 Objective C 的 IOS,您需要将 AppDelegate.m 文件复制到 ios/Runner/AppDelegate.m 目录下

    对于使用 Java 的 Android,您需要复制 MainActivity.java 文件。
    对于使用 Kotlin 的 Android,您将复制 MainActivity.kt 文件。

    android 目录:android/app/src/main/kotlin/com/example/{YOUR APP NAME}/MainActivity.java 或 MainActivity.kt

    【讨论】:

      猜你喜欢
      • 2018-11-14
      • 2023-02-15
      • 2020-04-14
      • 2021-07-18
      • 2021-07-10
      • 2020-05-29
      • 1970-01-01
      • 1970-01-01
      • 2020-10-22
      相关资源
      最近更新 更多