mac打包dmg文件

mac的打包dmg文件

由于iOS与mac OS 的部分不同,完成版的程序想要在别人的mac上运行,是需要类似于win端的.exe文件(个人感觉反倒要比iOS方便些许)

自己也有整理出一些文章,略有些瑕疵,详细完整版的

BTW 推荐一款非Apple官方的App Store,HackStore是一款来自俄罗斯的Mac应用商店,我们可以将自己开发完的App免费发布上去,也是具有审核机制的,博主目前推广自己的ImageHosting,一款图床软件,目前支持七牛云存储。有需求欢迎大家使用,吐槽。ImageHosting for Mac

现在,分享一下,当我们完成Mac开发,release一个.app文件之后,我们应该如何打包成一个dmg文件的方法。

言归正传,说到dmg,这个我们熟悉的格式,那么它是怎么生成的呢,跟着接下来的步骤吧。博主将它们分为系统默认和自定义,不过,两者都离不开一个工具 --磁盘工具(Disk Utility)。

系统默认

打开磁盘工具->文件->新建映像->来自文件夹的映像


资源文件夹内容


配置 选择包括.app和Applications 替身文件夹的路径,也就是上图说的 资源文件夹 路径


点击打开,配置相关信息 点击存储即可。

自定义

1 准备资源,包括:背景图片,.app和Applications 替身文件。

2 创建一个空的映像文件


配置信息


3 配置资源 -- 配置背景图

1)打开显示选项


2)配置背景图


3)隐藏背景图片文件

使用mv命令进行重命名

1

$ mv background.tif .background.tif


4 配置资源 -- 拖拽.app和Applications 替身

5 转换


配置转换信息


原文地址传送门

http://charsdavy.github.io/2016/09/03/mac-os-archive-app/

Mac OS 开发 - 聊聊如何打包dmg文件

http://www.tuicool.com/articles/z6naMvZ


### 如何在Mac上将软件打包DMG格式 在Mac上将软件打包DMG格式是一种常见的方法,用于分享或分发应用程序。以下是详细的教程,涵盖了从创建空白映像到最终生成压缩的DMG文件的整个过程[^1]。 #### 使用磁盘工具创建DMG文件 1. 打开 **磁盘工具**(可以在“应用程序” -> “实用工具”中找到)。 2. 选择菜单栏中的 **文件** -> **新建映像** -> **空白映像**。 3. 在弹出的窗口中,设置以下参数: - **保存为**:输入DMG文件的名称。 - **位置**:选择保存DMG文件的位置。 - **大小**:根据需要打包的应用程序大小进行设置。可以通过右键点击应用并选择“获取信息”来查看其大小。 - **格式**:选择“Mac OS 扩展(日志式)”或其他适合的格式。 - **加密**:如果需要加密,可以选择加密方式。 - **分区布局**:选择“单一分区 - GUID 分区表”。 - **图像格式**:选择“读/写”。 4. 点击 **保存**,等待映像创建完成。 #### 复制应用程序到DMG磁盘 1. 创建完成后,新的磁盘会自动挂载到桌面上。 2. 打开此磁盘,并将需要打包的应用程序拖拽到其中。 3. 可以根据需要调整应用程序和链接图标的布局,以便用户在打开DMG时有更好的体验。 #### 压缩DMG文件 1. 当所有文件都已复制完毕后,点击桌面的Eject按钮以卸载磁盘。 2. 打开终端,使用以下命令对DMG文件进行压缩: ```bash hdiutil convert /path/to/original.dmg -format UDZO -o /path/to/compressed.dmg ``` 其中: - `/path/to/original.dmg` 是原始DMG文件的路径。 - `-format UDZO` 指定输出格式为压缩格式。 - `/path/to/compressed.dmg` 是输出压缩DMG文件的路径。 #### 使用第三方工具(如appdmg)简化流程 如果需要更灵活的控制,可以使用第三方工具 `appdmg` 来生成DMG文件。以下是具体步骤[^3]: 1. 安装 Node.js 和 npm(如果尚未安装)。 2. 使用 npm 安装 appdmg: ```bash npm install -g appdmg ``` 3. 创建一个 JSON 配置文件(例如 `appdmg.json`),内容如下: ```json { "title": "YourAppName", "icon": "YourApp.app/Contents/Resources/AppIcon.icns", "contents": [ { "x": 448, "y": 344, "type": "link", "path": "/Applications" }, { "x": 192, "y": 344, "type": "file", "path": "YourApp.app" } ] } ``` 4. 运行以下命令生成 DMG 文件: ```bash appdmg appdmg.json dist/YourAppName.dmg ``` #### 签名与公证(适用于Electron等应用) 对于需要签名和公证的应用程序(例如基于 Electron 开发的应用),可以通过配置 `package.json` 来实现自动化签名和打包[^2]。以下是一个示例配置: ```json "build": { "mac": { "hardenedRuntime": true, "gatekeeperAssess": false, "entitlements": "package/mac/Mac.entitlements", "entitlementsInherit": "package/mac/Mac.entitlements" }, "dmg": { "sign": true } } ``` ### 注意事项 - 确保 DMG 文件的大小足够容纳所有文件。 - 如果需要分发给其他用户,请确保文件经过签名和公证,以避免安全警告。 - 使用第三方工具可以显著简化流程,但需要额外安装依赖项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值