Offer 驾到,掘友接招!我正在参与2022春招打卡活动,点击查看活动详情。
新建plugin项目
首先要新建一个Flutter Plugin项目。创建Flutter Plugin项目很简单,直接使用Android Studio创建即可。创建成功后来看看项目目录,其中中lib目录下是flutter代码,android和ios则分别是两个端的plugin代码,example则是用来进行测试的,与plugin无关。
所以我们在lib、android和ios下编写代码即可。
发布及引用
在已有的Android项目中 或者 单独(Android项目再引入) 创建一个Flutter Module。
然后我们需要发布我们开发的Flutter Plugin,然后在Flutter Module中引用。
可以通过flutter packages命令将Flutter Plugin发布到Pub( pub.dev/ )上,然后引用即可。
但是我们因为这个Flutter Plugin也在开发阶段,修改频繁,所以选择另外一种方式,直接通过git引用。将Flutter Plugin项目提交到git服务器上,这样就不需要进行发布,可以直接在Flutter Module的pubspec.yaml中引用,代码如下:
dependencies:
flutter:
sdk: flutter
...
flutter_plugin: //名称,可以自定义,一般就是插件名
git: https://xxx/xxx.git //plugin的git地址
然后Pug get就引用进来了,非常简单方便。这时在Flutter Module中就可以使用Flutter Plugin中的flutter 代码了。
但是在Android中还无法使用Flutter Plugin中的android代码,这是因为虽然android项目依赖了Flutter Module,但是还需要依赖Flutter Plugin,需要在android的build.gradle中添加:
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
...
provided rootProject.findProject(":flutter_boot")
}
这里的“flutter_boot”就是上面在pubspec.yaml中定义的名称,sync后就可以在Android中使用Flutter Plugin的android代码了。