美文网首页
Flutter - 开发完插件后使用及上传到pub

Flutter - 开发完插件后使用及上传到pub

作者: 水煮杰尼龟 | 来源:发表于2024-02-23 21:12 被阅读0次

    开发插件这里就不提了,看flutter.cn网就有详细教程了
    当然里面也有使用和上传
    这里就稍微讲点我平常项目里怎么用的了

    首先当然是创建&开发插件

    最简单的就是纯dart插件

    • 创建纯dart
    flutter create --template=package my_package
    
    • 创建原生插件
    flutter create --org com.xxx --template=plugin --platforms=android,ios -a kotlin -i swift my_package
    
    • 然后自己去实现插件功能就行了,纯dart直接在lib里添加,原生插件的话就麻烦一点,你要从原生去实现功能,然后通过消息通道和flutter进行交互,具体参考网站上的教程弄吧,也就是说你得同时写安卓,iOS,flutter的代码。
    • 开发完之后呢,一般我都是统一把插件都放在一个文件夹里,项目中则通过path进行引用就行了,也方便做调整。
        dependencies:
          packageA:
          path: ../packages/my_package
    
    • 如果你的插件与别的插件里的依赖版本冲突了,声明了不兼容的依赖版本,但它们实际上仍可能以兼容的方式使用,那么可以以下处理
    dependency_overrides:
      url_launcher: '5.4.0'
    

    上传插件,也不难

    • 先写几个md文档,记得之前我就随便弄了下面几个,(ps:找个第三方插件看看人家咋弄的,抄一下作业就行了)
    1.  `README.md` 文件用来对 package 进行介绍
    
    2.  `CHANGELOG.md` 文件用来记录每个版本的更改
    
    3.  `LICENSE` 文件用来阐述 package 的许可条款
    
    
    • pubspec.yaml稍微完善完善,也可以先跑一下下一步的命令校验一下,会提示你去除警告&错误的,照着来就行
    name: my_package
    description: my_package.
    version: 1.0.0
    homepage: https://github.com/xxxx
    
    environment:
      sdk: '>=2.12.0 <4.0.0'
      flutter: ">=1.17.0"
    
    
    • 检验是否所有内容都通过了分析,警告和错误都可以处理一下
    flutter pub publish --dry-run
    
    • 上一步没问题了就可以上传了,由于国内基本都设置了中国镜像,使用flutter pub publish是上传不了的,用以下指令上传
    flutter pub publish --server=https://pub.dartlang.org
    
    • 验证通过就会问你是不是要传,输入y就行了
    Validating package... (2.1s)
    Publishing is forever; packages cannot be unpublished.
    Policy details are available at https://pub.dev/policy
    
    Do you want to publish xxxx 1.0.0 to https://pub.dev (y/N)? 
    
    • 接下来会需要你授权一下,复制下面出现的网页,用浏览器打开,会在pub.dev授权
    Pub needs your authorization to upload packages on your behalf.
    In a web browser, go to https://accounts.google.com/o/oauth2/auth?access_type=offline&approval_prompt=force&response_type=code&client_id=xxx-8grd2eg9tj9f38os6f1urbcvsq399u8n.apps.googleusercontent.com&redirect_uri=http%3A%2F%2Flocalhost%3A61279&code_challenge=iCrfkytpIavyjyqJpY9icJ8-4Ev9DdbrIp24jpYSMXc&code_challenge_method=S256&scope=openid+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email
    Then click "Allow access".
    
    Waiting for your authorization...
    
    • 然后就会出现以下,开始上传了,不过这里估计都会卡住,即使你电脑翻了墙,这里需要终端也翻墙
    Authorization received, processing...
    
    • 终端代理,再上传,我是如下代理的,根据你自己使用的来吧
    export https_proxy=http://127.0.0.1:33210 http_proxy=http://127.0.0.1:33210 all_proxy=socks5://127.0.0.1:33211
    
    • 然后嗖的一下,就上传完成了
    Successfully authorized.
    Uploading... (2.9s)
    Successfully uploaded https://pub.dev/packages/my_package version 1.0.0
    
    • 过会儿你就能去pub.dev搜看到了, 完事儿。
      mypackage.png

    相关文章

      网友评论

          本文标题:Flutter - 开发完插件后使用及上传到pub

          本文链接:https://www.haomeiwen.com/subject/lwjgwdtx.html