python二进制程序打包为 mac app(dmg)-应用制作
前言
上篇文章介绍了如何将pyinstaller打包产物,变成一个macos app
本篇研究如何将app, 进一步变成 dmg, 就和你网上下载的dmg安装包一样!
打包dmg
到了这步已经可以使用了, 但是一般情况下, 会使用 dmg 格式来分发应用
dmg 是一个磁盘映像, 制作很简单, 使用 mac 自带的工具就可以了
新建磁盘映像
- 打开磁盘mac自带的磁盘工具
- cmd + n 新建
大小要选能放下的大小, 这里最终产物有 17M, 我就填个50MB 然后选读写,存储,选择位置,其他内容如图所示。
大小要选能放下的大小, 这里最终产物有 70m, 我就填个 100MB 然后选读写,存储,选择位置
- 右键选择在访达中显示
- 打开后,如下图所示
- 然后新建一个Application软链接
在桌面新建一个文件夹,取名dmg吧,将app文件放进去。为了实现拖拽到Application的效果,需要在这个文件夹里放一个Application的替身。具体做法是cd到这个目录,建立一个软链接。
$ cd /Users/xxxxx/Desktop/dmg $ ln -s /Applications/ Applications
- 将上篇文章生成的.app文件 和 Application软链 拖入其中
就完成了基本的制作。
导出镜像
上一步生产的镜像是不建议分发的,因为包体积太大 我们需要进行压缩转换。
- 推出镜像
- 压缩转换
- 保存文件
修改文件名,在后面追加dmg,加密看个人选择,映像格式选择压缩
到此,我们就得到了一个可运行的dmg文件,就可以给别人使用了!
运行
当我们把打好包的dmg文件给别人安装运行时,会提示应用已经损坏!
因为我们的安装包是没签名的,是打不开的。
所以需要执行一段代码。
sudo xattr -r -d com.apple.quarantine /Applications/garbevents.app
执行成功之后,就可以正常运行了!