python二进制程序打包为 mac app(dmg)-应用制作

简介: python二进制程序打包为 mac app(dmg)-应用制作

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

执行成功之后,就可以正常运行了!

相关文章
|
1天前
|
机器学习/深度学习 数据采集 数据挖掘
90%的人说Python程序慢,5大神招让你的代码像赛车一样跑起来_代码需要跑很久怎么办(2)
90%的人说Python程序慢,5大神招让你的代码像赛车一样跑起来_代码需要跑很久怎么办(2)
|
2天前
|
机器学习/深度学习 数据采集 Java
如何提高Python程序的性能
Python作为一种高级编程语言,具有易学易用、开发效率高等优点,但其在性能上可能不如C++或Java。本文将介绍如何通过一些技巧和工具来提高Python程序的性能。
|
3天前
|
iOS开发 Python
mac:python安装路径,带你全面解析Python框架体系架构view篇
mac:python安装路径,带你全面解析Python框架体系架构view篇
|
6天前
|
Python
【Python进阶(二)】——程序调试方法
【Python进阶(二)】——程序调试方法
|
6天前
|
Python
Python的全局变量作用于整个程序,生命周期与程序相同,而局部变量仅限函数内部使用,随函数执行结束而销毁。
【5月更文挑战第11天】Python的全局变量作用于整个程序,生命周期与程序相同,而局部变量仅限函数内部使用,随函数执行结束而销毁。在函数内部修改全局变量需用`global`关键字声明,否则会创建新局部变量。
105 2
|
6天前
|
Web App开发 缓存 iOS开发
强制退出Mac程序的六种方法
强制退出Mac程序的六种方法
20 2
|
6天前
|
Python
python 二进制与字符编码详解
python 二进制与字符编码详解
12 0
|
6天前
|
消息中间件 程序员 调度
Python并发编程:利用多线程提升程序性能
本文探讨了Python中的并发编程技术,重点介绍了如何利用多线程提升程序性能。通过分析多线程的原理和实现方式,以及线程间的通信和同步方法,读者可以了解如何在Python中编写高效的并发程序,提升程序的执行效率和响应速度。
|
6天前
|
缓存 Shell 开发工具
[oeasy]python0016_在vim中直接运行python程序
在 Vim 编辑器中,可以通过`:!`命令来执行外部程序,例如`:!python3 oeasy.py`来运行Python程序。如果想在不退出Vim的情况下运行当前编辑的Python文件,可以使用`%`符号代表当前文件名,所以`:!python3 %`同样能运行程序。此外,可以使用`|`符号连续执行命令,例如`:w|!python3 %`会先保存文件(`w`)然后运行Python程序。这样,就可以在不离开Vim的情况下完成编辑、保存和运行Python程序的流程。
19 0
|
6天前
|
Shell 测试技术 Python
在Mac上用Python调用终端执行命令
在Mac上用Python调用终端执行命令
17 1