欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > flutter 打包mac程序 dmg教程

flutter 打包mac程序 dmg教程

2025/5/16 2:30:52 来源:https://blog.csdn.net/axuanqq/article/details/147189378  浏览:    关键词:flutter 打包mac程序 dmg教程

✅ 前提条件

  1. 你已经在 macOS 上安装了 Android Studio + Flutter SDK。

  2. Flutter 支持 macOS 构建。

  • 运行下面命令确认是否支持:

    ```Plain Text bash 复制编辑 flutter doctor

---## 🧱 第一步:启用 macOS 支持如果是新项目,执行以下命令添加 macOS 支持:

Plain Text bash 复制编辑 flutter create .

或者,确保 `macos/` 目录已经存在。---## 🛠 第二步:设置 macOS 工程(可选)你可以修改 `macos/Runner.xcworkspace` 下的设置,比如:- 图标:`macos/Runner/Assets.xcassets/AppIcon.appiconset/`- 应用名称等:`macos/Runner/Info.plist`---## 🏗 第三步:构建 macOS 程序### ✅ Release 模式构建

Plain Text bash 复制编辑 flutter build macos

构建成功后,会生成一个可运行的 `.app` 包:📁 路径:

Plain Text swift 复制编辑 build/macos/Build/Products/Release/YourApp.app ```

你可以直接双击运行,或右键 -> 显示包内容,查看内部结构。

创建create_dmg.sh脚本

脚本完整内容如下
 

#!/bin/bash# 1.打包 flutter build macos
# 2.授予权限 chmod +x create_dmg.sh# 定义源目录
SOURCE_DIR="./build/macos/Build/Products/Release/"# 查找第一个 .app 文件
SOURCE_APP_PATH=$(find "$SOURCE_DIR" -maxdepth 1 -type d -name "*.app" | head -n 1)# 检查是否找到了 .app 文件
if [ -z "$SOURCE_APP_PATH" ]; thenecho "No .app file found in $SOURCE_DIR"exit 1
fi# 设置输出 DMG 路径
OUTPUT_DMG_PATH="$SOURCE_DIR"$(basename "$SOURCE_APP_PATH" .app).dmg# 创建 DMG 文件
echo "Creating DMG from $SOURCE_APP_PATH to $OUTPUT_DMG_PATH..."# hdiutil打包详细参数如下
# `-volname`: 安装时挂载的名字(一般和 app 一样)
#`-srcfolder`: 你的 `.app` 路径
#`-format UDZO`: 压缩格式(推荐使用)
# `-ov`: 允许覆盖已有文件
# 输出路径是 `.dmg` 文件最终保存的位置
hdiutil create -volname "$(basename "$SOURCE_APP_PATH")" \-srcfolder "$SOURCE_APP_PATH" \-ov -format UDZO "$OUTPUT_DMG_PATH"echo "DMG created successfully at $OUTPUT_DMG_PATH"

注意给脚本程序增加权限

chmod +x create_dmg.sh

点击执行脚本

执行结果

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com