在mac下,qt自动化打包、签名、dmg安装包生成、公证
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在mac下,qt自动化打包、签名、dmg安装包生成、公证相关的知识,希望对你有一定的参考价值。
参考技术A 查看appdmg具体安装方法及配置说明
公证需要 codesign 的时候加上 -o runtime 参数,加上了此参数,就需要给app赋予权限,否则会导致运行时的崩溃。 chai.entitlements 就是权限的描述文件
查看chai.entitlements权限说明
如果不清楚里面具体的含义,建议把上述的配置文件的权限如数加上,减少不必要的问题。其他权限可以根据需求来定
查看 dmg.json 参数说明
identityId 获取方法,执行 xcrun altool --list-providers -u "$notarizationUser" -p "$notarizationPasswd" 即可获取
electron mac签名 - 针对electron-builder的自动更新
针对electron-builder的自动更新
配合自动更新 - 安装包签名(mac)(待补充)
前提:实现自动更新需要签名
一、本地开发调试mac签名(无需具有权限的appple账号)
- 打开xcode,
xcode -> preference -> add new acount
登录apple账号(系统会生成默认开发证书) command+空格
开启钥匙串访问- 选择
登录
-我的证书
- 选择当前账号下的证书
sudo vim ~/.bash_profile
// 添加
export CSC_LINK=~/work/ypshop.p12 // 你打算把p12签名文件存放的位置
export CSC_KEY_PASSWORD="12345" // p12密码
// 退出后刷新env
source ~/.bash_profile
// 启动新的终端窗口,准备打包
- 回到第4步,右键证书,导出到对应的p12文件
- 输入密码应该和CSC_KEY_PASSWORD一致
- 打包
npm run package
- 提示
? Mac Developer is used to sign app — it is only for development and testing, not for production
? signing file=build/mac/ypshop.app identityName=Mac Developer: 703390877@qq.com (AW2NUS55WJ) identityHash=56CF8E6D4AC72AA3FE4E4FD34AADB4F7AAE7051E provisioningProfile=none
? building target=DMG arch=x64 file=build/ypshop-0.1.3.dmg
? building target=macOS zip arch=x64 file=build/ypshop-0.1.3-mac.zip
? building block map blockMapFile=build/ypshop-0.1.3.dmg.blockmap
? building embedded block map file=build/ypshop-0.1.3-mac.zip
就可以了
- 接下来就可以走自动更新流程了
二、 生产环境mac签名(需要指定权限账号/可生成 Developer ID Application证书)
- 添加证书
xcode -> preference -> acount
登录账号,选择manage certificates
,添加developer id application
- 创建有效证书后,跟着开发调试步骤2继续往下
三、 本地服务器搭建:
mkdir -p update_server/download
全局安装http-server
npm i http-server -g
启动文件服务器http-server
cd update_server
http-server -p 4000
将打包好的新版本文件放入download目录
访问
http://127.0.0.1:4000/download
以上是关于在mac下,qt自动化打包、签名、dmg安装包生成、公证的主要内容,如果未能解决你的问题,请参考以下文章
Eclipse下配置Ant脚本 自动打包带签名的Android apk