You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter包执行flutter pub get遇Android embedding弃用错误如何解决?

解决Flutter包执行flutter pub get时的Android Embedding V2错误

你遇到的问题本质是:虽然开发的是Flutter包,但执行flutter pub get时,实际是包内的example测试应用触发了旧版Android Embedding的报错(插件package_info_plus要求使用V2嵌入)。针对Flutter包的场景,解决步骤如下:

1. 优先处理包内的example应用

Flutter包默认包含example目录用于测试,这个目录是完整的Flutter应用,需迁移到V2嵌入:

  • 进入包根目录下的example/android文件夹,按照官方迁移逻辑更新该应用(注意是更新example,而非包本身的android目录)
  • 若手动迁移麻烦,直接删除原example目录,在包根目录执行命令重新生成:
    flutter create example
    
    新生成的example应用默认使用V2嵌入,可直接满足package_info_plus的要求。

2. 检查包本身的Android插件注册逻辑

如果你的包包含自定义Android原生代码,需确保插件注册适配V2嵌入:

  • 删除旧的GeneratedPluginRegistrant.java中过时的registerWith(PluginRegistry)方法
  • 改为实现FlutterPlugin接口,通过onAttachedToEngine方法完成注册,示例代码:
    public class YourPlugin implements FlutterPlugin {
      @Override
      public void onAttachedToEngine(@NonNull FlutterPluginBinding binding) {
        // 在这里注册插件通道等逻辑
        MethodChannel channel = new MethodChannel(binding.getBinaryMessenger(), "your_plugin_channel");
        channel.setMethodCallHandler(new YourMethodCallHandler());
      }
    
      @Override
      public void onDetachedFromEngine(@NonNull FlutterPluginBinding binding) {
        // 清理资源
      }
    }
    
  • 同时在包的android/src/main/AndroidManifest.xml中添加插件注册声明(若未添加):
    <manifest>
      <application>
        <meta-data
          android:name="flutterEmbedding"
          android:value="2" />
        <activity
          android:name="io.flutter.embedding.android.FlutterActivity"
          android:theme="@style/LaunchTheme"
          android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
          android:hardwareAccelerated="true"
          android:windowSoftInputMode="adjustResize">
        </activity>
      </application>
    </manifest>
    

3. 重新执行依赖获取

完成上述操作后,回到包根目录,重新执行:

flutter pub get

内容的提问来源于stack exchange,提问作者JakesMD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 04:32:23