1.申请证书
Mac应用有多种证书,主要包含以下几种
- Apple Development: Xcode 11之后Apple全平台开发证书
- Apple Distribution: Xcode 11之后Apple全平台发布
- Mac Development:用来开发和Debug的证书
- Mac App Distribution:用来给APP文件签名后上传到Mac App Store
- Mac Installer Distribution:用来给PKG文件签名后上传到Mac App Store
- Developer ID Installer:用于给PKG文件签名,在非Mac App Store场景使用
- Developer ID Application:用于给APP文件签名,在非Mac App Store场景使用
这里直接申请Developer ID Application证书,申请过程中需要使用Mac本地证书助理来创建证书签名请求,按照指引一步步完成即可。
申请完成后下载证书并在本地安装。
2.申请App ID
也就是平常大家所说的Bundle ID,这里跟普通iOS App是完全一致的,选择APP IDs即可,正常填写相关内容。
3.生成描述文件
这里同样选择生成Developer ID描述文件
然后选择Mac应用,并填写刚才申请的App ID
4.本地工程配置
本地安装证书,描述文件,并在工程配置里的Signing & Capabilities填写刚才申请的App ID(Bundle ID)和描述文件
5.对App文件进行签名和公证
开发完成后使用Xcode自带工具对App文件进行签名和公证。
首先选择Product->Archive生成App文件,注意这里的步骤要登陆证书对应的开发者账号。
之后使用Distribute App选项对App进行公证,这里并不是App审核,是苹果推出的一个针对Mac第三方App的安全机制,在Mac OS 10.15之后,没有公证的APP打开会出现错误信息。
这里同样选择Developer ID,之后选择Upload或Export即可导出App文件,其中Upload会由App Store进行公证,速度还是很快的,几分钟之内就公证完毕了。
6.打包dmg文件
对App文件进行签名公证后最后一步就是打包生成dmg文件,这样打开后可以直接拖动.app文件到Application文件夹中,这里使用create—dmg工具
代码语言:txt复制
// 安装create-dmg
brew install create-dmg
//使用create-dmg
create-dmg
--volname "Application Installer"
--volicon "application_icon.icns"
--background "installer_background.png"
--window-pos 200 120
--window-size 800 400
--icon-size 100
--icon "Application.app" 200 190
--hide-extension "Application.app"
--app-drop-link 600 185
"Application-Installer.dmg"
"source_folder/"
代码语言:txt复制
具体选项可以参考create-dmg的GitHub主页,需要注意的是App文件要放进source_folder文件夹里。
最后就得到一个可以任意安装的dmg文件啦,Mac应用打包完成!