介紹
Flutter Distributor 是一個完整的工具,用於打包和釋出您的 Flutter 應用。只需通過一些簡單的配置便可以讓你的專案可以快速的打包儲存到指定目錄及釋出到指定的分發平臺。
開發這個工具的起因是由於我的個人作品比譯釋出後,需要將它打包為 Linux,macOS 和 Windows 的平臺特定的包格式併發布到 GitHub Releases,起初寫了打包指令碼,但後面需要支援的格式越來越多,每次版本釋出都需要花費大量的時間。因此從最初的指令碼開始慢慢演變為 Flutter Distributor,從第一行程式碼到現在已經過去了近兩個半月,今天終於可以拿出來介紹給大家,希望這個工具可以幫助到大家。
特性
- 將應用打包為特定平臺的格式(同時支援桌面端),並將放入指定資料夾中。
- 支援應用包檔案按指定格式命名
- 將應用包釋出到指定的分發平臺(目前只支援 apk, ipa 兩種格式)
已支援的包格式
以上 apk, aab, ipa 為移動軟體包格式,其他為桌面軟體包格式。
已支援的分發平臺
快速開始
安裝
dart pub global activate flutter_distributor
用法
將 distribute_options.yaml
新增到你的專案根目錄,你也可以檢視這個完整示例 hello_world。
output: dist/
配置一個釋出器
以 pgyer
為例,登入後,點選右側的使用者頭像,從選單中進入API 資訊頁面,複製 API Key
並將其新增到 env
節點。
env:
PGYER_API_KEY: 'your api key'
檢視所有釋出器文件以及如何配置它們。
配置釋出項
下面的例子展示瞭如何新增一個包含打包 apk
、ipa
包併發布到 pgyer.com
的釋出項,一個釋出項可以包含多個作業。
build_args
是flutter build
命令所支援的引數,請根據你的專案進行修改。
releases:
- name: dev
jobs:
- name: release-dev-android
package:
platform: android
target: apk
build_args:
target: lib/main.dart
flavor: dev
target-platform: android-arm,android-arm64
# 當你不需要釋出到分發平臺,請刪除 publish_to 欄位
publish_to: pgyer
- name: release-dev-ios
package:
platform: ios
target: ipa
build_args:
target: lib/main.dart
flavor: dev
export-options-plist: ios/dev_ExportOptions.plist
publish_to: pgyer
完整的示例配置
env:
PGYER_API_KEY: 'your api key'
output: dist/
releases:
- name: dev
jobs:
- name: release-dev-android
package:
platform: android
target: apk
build_args:
target: lib/main.dart
flavor: dev
target-platform: android-arm,android-arm64
publish_to: pgyer
- name: release-dev-ios
package:
platform: ios
target: ipa
build_args:
target: lib/main.dart
flavor: dev
export-options-plist: ios/dev_ExportOptions.plist
publish_to: pgyer
釋出你的應用
flutter_distributor release --name dev
相關連結
謝謝
? ? ?