• 5367阅读
  • 5回复

Qt 发布 Mac App Store 步骤详解 [复制链接]

上一主题 下一主题
离线cahwxy
 

只看楼主 倒序阅读 楼主  发表于: 2017-12-22
Qt 发布 Mac App Store 步骤详解

使用Qt开发完Mac PC版本的应用程序,如何提交苹果的Mac App Stoe 供用户下载使用呢?接下来我们以Qt 5.5.1版本详细介绍发布过程。

步骤:

1、确保代码在Release模式下编译通过,使用XCode或者QtCreator都可以的.
    qt的pro工程转成xcode project 命令格式:qmake project.pro -spec macx-xcode

2、编译成功之后,需要处理app中可执行文件以及库的依赖关系,目的使应用程序在非开发环境可以正常运行

有两种方法可以处理:
A、自己使用系统工具install_name_tool 手动处理,这个工作量非常大,而且容易出错
B、使用Qt 自带的工具 macdeployqt, 命令格式:macdeployqt Application.app -verbose=3

查看依赖关系是否正确命令格式:otool -L yourapp.app/Contents/MacOS/yourapp

3、上面两步完成之后,根据App Store 的上线指南,需要对APP进行代码签名,需要注意的签名只是可执行文件和类可执行文件
     A、准备好苹果的发布证书(需要开发证书和安装证书),
     对包的签名格式如下:
     codesign --entitlements ./entitlements.plist --force --verify --verbose --sign  '3rd Party Mac Developer Application: 公司信息 (XXXXXX2)' YourApp.app/Contents/Frameworks/QtDBus.framework/Versions/5/QtDBus
  
  对所有的相关库都需要按照上面的模式签名,是所有的。
  
  B、签名完成之后,就需要检验签名是否正确
  检验命令格式:codesign --verify --deep --verbose=2 YouApp.app/
  
4、对签名好的App进行打包
   打包命令格式:productbuild --component YourApp.app /Applications YourApp.pkg --sign '3rd Party Mac Developer Installer: 公司信息 (XXXXXX2)'
  
   注意这地方使用的安装证书。
  
   最终生产一个可以上传到Mac App Store的应用程序包 YourApp.pkg
  
5、使用苹果提供的Application Loader工具上传pkg文件,等待苹果审核,然后发布。

自此,程序成功发布到Mac APP Store上  
  

欢迎大家体验Mac App Store 上的应用程序: e海通财

参考信息:https://www.apps121.com/
离线stlcours

只看该作者 1楼 发表于: 2017-12-22
请教两个问题:
1)证书必须是299美元的企业证书吗?
2)一定要使用productbuild产生pkg吗?DMG不可以?productbuild是XCode套装里面的工具吗?

离线cahwxy

只看该作者 2楼 发表于: 2017-12-23
是99美金的证书
上传到app store 需要 pkg的安装包
product build 系统工具
离线huige3528

只看该作者 3楼 发表于: 2017-12-23
这里的framework框架文件是需要处理的,楼主没说哦,
离线cahwxy

只看该作者 4楼 发表于: 2017-12-23
需要什么处理的?使用macdeploy自动部署的呀
离线weinkym

只看该作者 5楼 发表于: 2018-01-05
第三方库有很多依赖关系,光靠macdeployqt还是不够的,需要install_name_tool调整
快速回复
限100 字节
 
上一个 下一个