官方文档:https://flutter.dev/docs/development/packages-and-plugins/developing-packages
中文网:https://flutterchina.club/developing-packages/
packages开发:
-
创建dart包
Android Studio:File>New>New Flutter Project>Flutter Package
eg: shadow_text工程
-
实现package(注意编写文档注释, 详细的文档语法请参考dartdoc 。
发布注意:
将项目上传到GitHub
-
删除环境变量
-
科学网络环境
-
设置命令行代理
这种设置方式仅在当前终端有效, 所以要跟发布命令在同一窗口输入
set http_proxy=http://127.0.0.1:1080 (根据翻墙设置的端口来写)
set https_proxy=https://127.0.0.1:1080
-
在发布之前,检查
pubspec.yaml
、README.md
以及CHANGELOG.md
文件,以确保其内容的完整性和正确性。
如果是更新版本, CHANGELOG.md中一定要增加版本更新的内容 -
然后,运行 dry-run 命令以查看是否都准备OK了:
flutter packages pub publish --dry-run
验证无误后,我们就可以运行发布命令了:
flutter packages pub publish
验证界面: 复制全部链接并在浏览器打开
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hDxkTQ1F-1587917079291)(C:\Users\Elvis\AppData\Roaming\Typora\typora-user-images\image-20200414232716422.png)]
-
发布结果:
https://pub.flutte-io.cn 直接搜索即可
插件化开发:
plugin与package的对比:
package是原生dart实现
plugin有MethodChnnel, 通常要与原生交互, 如中文网中的获取手机电量插件, 所以plugin可以看作是特殊的package
发布流程上, 两者是一样的