我的应用程序已正确进行代码签名...
codesign -vv MyApp.app
MyApp.app: valid on disk
MyApp.app: satisfies its Designated Requirement
spctl -vv --assess --type execute MyApp.app
MyApp.app: accepted
source=Developer ID
origin=Developer ID Application: Me / My Company
它包含一个插件MyApp.app/Contents/Plugins/jre
。
如果我创建一个安装程序...
productbuild --sign 'Developer ID Installer: Me' --root MyApp.app
/Applications/MyApp.app MyAppInstaller.pkg
...然后安装它,然后安装的 MyApp 不再正确进行代码签名。
codesign -vv /Applications/MyApp.app
/Applications/MyApp.app: code object is not signed at all
In subcomponent: /Applications/MyApp.app/Contents/PlugIns/jre/Contents/_CodeSignature/CodeResources
其他注意事项:
- 安装程序本身是代码签名的,而不是已安装的应用程序。
- 如果我不包含插件,我会得到一个正确代码签名的安装应用程序。
- 如果我使用 PackageMaker 或 productbuild,我会得到相同的结果。
- 我不关心应用商店。我只想要一个正确代码签名的安装应用程序。
我尝试使用pkgbuild
为 MyApp.app 和插件构建一个单独的包,然后使用它们组合它们productbuild
,但我得到了相同的结果。我不确定这pkgbuild
一步是否必要。
我错过了什么?