尝试创建未注册类型的平台视图

Chr*_*ein 6 android flutter flutter-plugin

我正在开发一个 Flutter 插件,它使用 AndroidView 来显示本机 Android 视图

但我得到以下异常:

Unhandled Exception: PlatformException(error, java.lang.IllegalStateException: Trying to create a platform view of unregistered type: type
Run Code Online (Sandbox Code Playgroud)

我不明白为什么会这样。有人可以解释这个异常的起源吗?

我认为你必须像这样注册视图类型PluginName.java

@Override
  public void onAttachedToEngine(@NonNull FlutterPluginBinding binding) {
    binding.getPlatformViewRegistry()
           .registerViewFactory("type", new ViewFactory());
  }
Run Code Online (Sandbox Code Playgroud)

在示例应用程序的 main.dart 中,简单地使用该视图类型:

AndroidView(
          viewType: "type",
          layoutDirection: TextDirection.ltr,
          creationParams: creationParams,
          creationParamsCodec: const StandardMessageCodec(),
        )
Run Code Online (Sandbox Code Playgroud)