Flutter Plugin插件开发填坑指南

前言

最近我在业余时间开发了一个Flutter插件用于Android应用内的版本更新:flutter_xupdate,发现在开发的过程中没遇到什么坑,但就是在发布到flutter插件平台时碰到了很多问题,这里我记录一下,给后来的人一点建议.

Flutter Plugin插件开发

1.创建Flutter Plugin插件项目

这里推荐使用Android Studio创建项目,根据提示一步一步来就行了,截图如下:


生成的项目目录主要包含以下内容:

  • “android”目录是插件API在Android平台的实现。
  • “ios”目录是插件API在iOS平台的实现。
  • “example”目录是使用插件的一个示例项目。
  • “lib”目录的文件,主要是创建“MethodChannel”,然后接收并处理来自原生平台发来的消息

2.实现插件功能

这里我主要介绍一下Android端的API实现.

坑点一: Flutter插件加载存在两个版本

由于Flutter自动依赖插件的方式存在两个版本(Registrar和FlutterPluginBinding), 因此我们在实现Android的插件的时候,为了能提高兼容性,最好把这两种都实现一遍.所以,Android的插件需要实现FlutterPlugin, ActivityAware, MethodCallHandler这三个接口, 以我的flutter_xupdate插件为例,实现如下:

public class FlutterXUpdatePlugin implements FlutterPlugin, ActivityAware, MethodCallHandler {
    private static final String PLUGIN_NAME = "com.xuexiang/flutter_xupdate";

    private MethodChannel mMethodChannel;
    private Application mApplication;
    private WeakReference<Activity> mActivity;

    //此处是新的插件加载注册方式
    @Override
    public void onAttachedToEngine(@NonNull FlutterPluginBinding flutterPluginBinding) {
        mMethodChannel = new MethodChannel(flutterPluginBinding.getBi
  • 25
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姜悔哈哈哈专用号

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值