如何打包与部署 Makepad 跨平台应用
解决 Makepad 应用从开发到分发的最后一步:通过配置 cargo-packager 和 cargo-makepad,实现一键生成桌面安装包、移动端 APK/IPA 及 WebAssembly 模块。
为什么需要这个技能
Makepad 是一个高度自定义的 Rust UI 框架,其应用在分发时不仅需要编译二进制文件,还需要正确处理内置资源(Resources)和平台特定的安装配置。
手动处理 .deb、.dmg 或 .apk 的打包过程极其繁琐。掌握该技能后,你可以通过标准化的配置文件(Cargo.toml)和自动化工具,快速将应用发布到所有主流平台,并能利用 GitHub Actions 实现持续集成(CI)自动发布。
适用场景
- 需要为 Linux、Windows 或 macOS 生成正式的桌面安装程序。
- 需要将 Makepad 应用打包成 Android APK 或 iOS IPA 文件进行真机测试。
- 希望将应用编译为 Wasm 并在浏览器中运行。
- 需要在 GitHub Actions 中配置自动化打包流水线。
核心工作流
1. 桌面端打包(Desktop)
使用 cargo-packager 配合 robius-packaging-commands 处理资源。
- 环境准备:安装
cargo-packager及资源处理工具。 - 配置
Cargo.toml:在[package.metadata.packager]字段中定义产品名称、图标及资源路径。 - 执行打包:运行
cargo packager --release即可根据当前操作系统生成对应格式(如.deb,.nsis,.dmg)。
2. 移动端打包(Mobile)
使用 cargo-makepad 管理工具链。
- Android:安装 toolchain
执行 cargo makepad android build -p your-app --release获取 .apk。 - iOS:安装 toolchain
配置 Xcode 签名 执行 run-device或手动将.app压缩为.ipa。
3. Web 端打包(Wasm)
- 流程:安装 Wasm toolchain
执行 cargo makepad wasm run -p your-app --release。 - 输出:生成包含
index.html、.wasm和 JS 桥接文件的静态目录,可直接使用 HTTP 服务器托管。
4. CI/CD 自动化
在 GitHub Actions 中引入 makepad-packaging-action,将上述流程集成到流水线中,自动将构建产物上传至 GitHub Releases。
jobs:
package:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: Project-Robius-China/makepad-packaging-action@v1
with:
args: --target x86_64-unknown-linux-gnu --release
下载和安装
下载 makepad-deployment 中文版 Skill ZIP
解压后将目录放入你的 AI 工具 skills 文件夹,重启工具后即可使用。具体路径参考内附的 USAGE.zh.md。
你可能还需要
暂无推荐