为什么 GeneratedPluginRegistrant.registerWith(this) 在 Flutter MainActivity.kt 中出错?

Shu*_*ant 2 plugins dart kotlin flutter

生成的插件注册器.java

package io.flutter.plugins;

import androidx.annotation.Keep;
import androidx.annotation.NonNull;

import io.flutter.embedding.engine.FlutterEngine;
import io.flutter.embedding.engine.plugins.shim.ShimPluginRegistry;

/**
 * Generated file. Do not edit.
 * This file is generated by the Flutter tool based on the
 * plugins that support the Android platform.
 */
@Keep
public final class GeneratedPluginRegistrant {
  public static void registerWith(@NonNull FlutterEngine flutterEngine) {
    ShimPluginRegistry shimPluginRegistry = new ShimPluginRegistry(flutterEngine);
      net.goderbauer.flutter.contactpicker.ContactPickerPlugin.registerWith(shimPluginRegistry.registrarFor("net.goderbauer.flutter.contactpicker.ContactPickerPlugin"));
      com.pichillilorenzo.flutter_appavailability.AppAvailability.registerWith(shimPluginRegistry.registrarFor("com.pichillilorenzo.flutter_appavailability.AppAvailability"));
      io.flutter.plugins.flutter_plugin_android_lifecycle.FlutterAndroidLifecyclePlugin.registerWith(shimPluginRegistry.registrarFor("io.flutter.plugins.flutter_plugin_android_lifecycle.FlutterAndroidLifecyclePlugin"));
      flutter.moum.hardware_buttons.HardwareButtonsPlugin.registerWith(shimPluginRegistry.registrarFor("flutter.moum.hardware_buttons.HardwareButtonsPlugin"));
    flutterEngine.getPlugins().add(new vn.hunghd.flutter.plugins.imagecropper.ImageCropperPlugin());
    flutterEngine.getPlugins().add(new io.flutter.plugins.imagepicker.ImagePickerPlugin());
    flutterEngine.getPlugins().add(new io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin());
      com.lykhonis.simpleimagecrop.SimpleImageCropPlugin.registerWith(shimPluginRegistry.registrarFor("com.lykhonis.simpleimagecrop.SimpleImageCropPlugin"));
  }
}

Run Code Online (Sandbox Code Playgroud)

主活动.kt

package com.example.flutterapp


import android.os.Bundle
import io.flutter.app.FlutterActivity
import io.flutter.plugin.common.MethodChannel
import io.flutter.plugins.GeneratedPluginRegistrant

class MainActivity : FlutterActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        GeneratedPluginRegistrant.registerWith(this)
    }
}
Run Code Online (Sandbox Code Playgroud)

我遇到错误

GeneratedPluginRegistrant.registerWith(this)
                                       ^
Run Code Online (Sandbox Code Playgroud)

我也尝试用 flutterEngine 替换它,但它没有用。我实际上正在创建一个可以在后台运行的应用程序,为此我使用了 sharedPreferences。我的代码在一个普通的单独项目中运行,但在这个项目中出现错误,请帮忙解决这个问题,提前谢谢!

elo*_*ezp 5

尝试将其添加到 MainActivity.kt 中:

package com.example.flutterapp
import android.os.Bundle
import io.flutter.plugins.GeneratedPluginRegistrant
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.embedding.android.FlutterActivity

class MainActivity: FlutterActivity() {


    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        GeneratedPluginRegistrant.registerWith(FlutterEngine(this))
    }
}
Run Code Online (Sandbox Code Playgroud)

希望能帮到兄弟。