• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Flutter(一) package的使用、开发和发布

武飞扬头像
爱吃水蜜桃的奥特曼
帮助1

一、package的使用

通常我们在pubspec.yaml配置需要引用的第三方库,例如:

dependencies:
  cupertino_icons: ^1.0.2

这会直接到pub.dev查找下载cupertino_icons库,指定版本:1.0.2。

pub.dev是Dart官方的仓库地址,当然我们也可以将自已写的package发布到该仓库中供别人使用。

当然,除了引用发布到它上边的库外,还可以引用发布以下几种库:

  • 私有pub仓库的packages
  • github/gitee/gitlab上边的packages
  • 未发布的本地packages

1. 引用私有pub仓库的packages

  # 通过私有仓库方式引用
  custom_package:
    hosted:
      name: custom_package          // package名称
      url: http://localhost:8080    // 私有pub仓库地址
    version: ^0.0.1                 // package版本号

2. github/gitee/gitlab等的packages

  # 通过git获取
  custom_package:
    git:
      url: https://gitee.com/wenjinzhu/flutter_package.git      // gitee仓库地址         
      path: custom_package/0.0.1                                // package存放路径,相对于根目录
      ref: master                                               // 分支

3. 未发布的本地packages

  # 直接引用未发布项目
  custom_package:
    path: ../custom_package/    相对路径(这里引用项目与package项目平级)

二、package的开发流程

  1. 有两种方式创建package工程
  • 通过flutter命令行
flutter create --template=package custom_package // custom_package为package名称,自定义
  • 通过Android Studio
    学新通
    学新通
  1. 对于纯Dart包,在主lib/custom_package.dart文件内或lib目录中的文件中添加功能即可

三、package的发布

  1. 在发布前,可以通过以下命令检测是否符合发布条件:
flutter packages pub publish --dry-run
  1. 确定没问题后,即可通过命令进行发布:
flutter packages pub publish
  1. 当然,在第一节提到了既然有多种引用方式,那发布也有多种方式

1. 发布到pub.dev

假如发布到pub.dev是不需要进行额外配置,直接执行flutter packages pub publish即可。
学新通

但执行时,会有以下提示:要求登录谷歌账号并进行验证才能正常publish。将提示中的url复制到浏览器进行操作(这里需要翻墙,你懂滴)

2. 发布到私有pub仓库(公司内部pub仓库)

2.1 部署pub server服务

这里只是简单的介绍如何本地运行模拟服务

// 拉取源码
git clone https://github.com/dart-archive/pub_server.git
...
cd pub_server/
...
pub get
...
dart example/example.dart -d /tmp/package-db

// 运行服务
Listening on http://localhost:8080
To make the pub client use this repository configure your shell via:
    // 当你看到这里就说明服务正常运行了
    $ export PUB_HOSTED_URL=http://localhost:8080 

2.2 将package发布到:http://localhost:8080

在pubspec.yaml中通过publish_to属性配置pub私有仓库地址

name: cusotm_package                                          // package名称
description: test custom package publish to private pub       // 描述
version: 1.0.0                                                // 发布的版本号
author: king                                                  // 作者
homepage: https://gitee.com/wenjinzhu/flutter_package.git     // 主页
publish_to: http://localhost:8080                             // 这里配置的就是pub私有仓库地址,发布到pub.dev是不需要配置的

2.3 使用私有仓库的package

dependencies:
  test_package: // package名
    hosted:
      name: test_package // package名
      url: http://localhost:8080 // 仓库地址
    version: ^0.0.1 // package版本

3. 发布到github/gitee/gitlab等

将我们打包好的package直接放到git上边即可

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgakkic
系列文章
更多 icon
同类精品
更多 icon
继续加载