Flutter部署管理插件simple_deploy的使用
Flutter部署管理插件simple_deploy的使用
simple_deploy
是一个快速且简单的方式来将应用部署到商店的测试系统。请注意,这是一个正在进行中的包,直到它达到版本 1.0。
Features
- 部署到 iOS Test Flight
- 部署到 Android Play Store 的自选轨道
- 支持 flavors
Getting Started
安装依赖
在你的 pubspec.yaml
文件中添加以下依赖:
dev_dependencies:
simple_deploy: latest_version # e.g. ^0.26.0
创建配置文件
在项目根目录创建一个 deploy.yaml
文件并进行配置。以下是一个最小化的 deploy.yaml
示例:
android:
credentialsFile: "c:/credentials/project-credentials.json"
packageName: "com.example.coolapp"
whatsNew: "Simple bug fixes"
ios:
teamKeyId: "ABCD1A4A12"
developerId: "76a6aa66-e80a-67e9-e987-6a1c711a4b2"
以下是包含所有选项的完整配置示例:
common:
versionStrategy: "none"
android:
credentialsFile: "c:/credentials/project-credentials.json"
packageName: "com.example.coolapp"
trackName: "internal"
whatsNew: "Simple bug fixes"
flavor: "flavor" # 如果需要使用 flavors,可以指定,否则可以省略
generatedFileName: "fancyproject.aab" # 可以指定自定义的 aab 文件名,否则使用默认值
ios:
teamKeyId: "ABCD1A4A12"
developerId: "76a6aa66-e80a-67e9-e987-6a1c711a4b2"
flavor: "flavor" # 如果需要使用 flavors,可以指定,否则可以省略
generatedFileName: "fancyproject.ipa" # 可以指定自定义的 ipa 文件名,否则使用默认值
参数详情
参数 | 描述 |
---|---|
flavorName |
可选参数,适用于 android 和 iOS ,如果未使用 flavors,则不提供;如果使用 flavors,则提供 flavor 名称 |
参数 | 描述 |
---|---|
versionStrategy |
版本策略,默认为 none ,使用 pubspec 中的当前值;pubspecIncrement ,从 pubspec 中获取当前构建号,增加 1 并使用更新后的编号 |
参数 | 描述 |
---|---|
trackName |
轨道名称,默认为 internal ,内部轨道;alpha ,alpha 轨道;beta ,beta 轨道;production ,生产轨道 |
配置步骤
Usage
只需运行以下命令并选择部署平台:
dart run simple_deploy
你也可以直接指定平台:
dart run simple_deploy android
dart run simple_deploy ios
如果你使用了 flavors,可以在命令中指定,这将覆盖 pubspec.yaml
中的设置:
dart run simple_deploy android --flavor flavorName
Additional Information
你需要从 App Store Connect 获取一些开发者详细信息,并将其填入 deploy.yaml
文件中。对于 Android,你需要设置一个 Google Cloud 项目来创建所需的 .json
文件。具体步骤如下:
Contributions
感谢以下人员对该项目的贡献:
示例代码
void main() {
print('simple_deploy is awesome!');
}
希望这些信息对你有所帮助!如果你有任何问题或建议,请随时提出。
更多关于Flutter部署管理插件simple_deploy的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
更多关于Flutter部署管理插件simple_deploy的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
当然,下面是一个关于如何在Flutter项目中使用simple_deploy
插件进行部署管理的代码示例。simple_deploy
插件的具体功能和用法可能因版本而异,因此以下代码是基于假设的插件功能编写的。如果你在使用中发现有差异,请参考插件的官方文档。
首先,确保你的Flutter项目已经初始化,并且已经添加了simple_deploy
插件。你可以在pubspec.yaml
文件中添加以下依赖:
dependencies:
flutter:
sdk: flutter
simple_deploy: ^x.y.z # 请替换为实际的版本号
然后运行flutter pub get
来安装依赖。
接下来,在你的Flutter项目中,你可以使用simple_deploy
插件提供的API来管理部署。假设simple_deploy
插件提供了上传构建文件到服务器的功能,以下是一个示例代码:
import 'package:flutter/material.dart';
import 'package:simple_deploy/simple_deploy.dart'; // 假设插件的导入路径
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Flutter Deployment Management'),
),
body: Center(
child: DeploymentManager(),
),
),
);
}
}
class DeploymentManager extends StatefulWidget {
@override
_DeploymentManagerState createState() => _DeploymentManagerState();
}
class _DeploymentManagerState extends State<DeploymentManager> {
String status = 'Not Deployed';
void deployApp() async {
// 假设simple_deploy插件提供了一个deploy方法
try {
// 构建文件路径(例如APK或IPA文件)
String buildFilePath = 'path/to/your/build/file';
// 服务器信息
String serverUrl = 'https://your-deployment-server.com/api/upload';
String authToken = 'your-auth-token'; // 如果需要认证
// 调用deploy方法
var response = await SimpleDeploy.deploy(
buildFilePath: buildFilePath,
serverUrl: serverUrl,
authToken: authToken,
);
// 处理响应
if (response.success) {
setState(() {
status = 'Deployed Successfully';
});
} else {
setState(() {
status = 'Deployment Failed: ${response.errorMessage}';
});
}
} catch (e) {
setState(() {
status = 'Error: $e';
});
}
}
@override
Widget build(BuildContext context) {
return Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text('Deployment Status: $status'),
SizedBox(height: 20),
ElevatedButton(
onPressed: deployApp,
child: Text('Deploy App'),
),
],
);
}
}
注意:
- 上述代码中的
SimpleDeploy.deploy
方法是假设存在的,实际使用时请参考simple_deploy
插件的官方文档。 buildFilePath
、serverUrl
和authToken
等参数需要根据你的实际情况进行配置。- 错误处理和状态更新部分可以根据你的需求进行调整。
由于simple_deploy
插件的具体API和功能可能有所不同,建议你在使用前仔细阅读其官方文档和示例代码,以确保正确集成和使用。