因此,我们正在准备针对我们的应用程序以及MacOS SDK更新进行XCode更新,并且我不清楚公证所需的Hardened Runtime的使用是否与您使用的macOS SDK版本绑定在一起?
强化的运行时在哪里生活,编译的应用程序如何与之交互?不清楚是否通过语言运行库(因此是编译器/ XCode版本),SDK或其他方式实现。
答案 0 :(得分:2)
在代码签名过程中应用了强化的运行时。您可以构建没有该应用程序的应用程序,然后使用codesign
命令从命令行通过强化的运行时进行签名
codesign --force --options runtime --deep --sign "Developer ID Application: COMPANYNAME" MYAPP.app
请注意runtime
标志。 codesign
的手册页指出了运行时:
在macOS版本> = 10.14.0上,将签名的进程选择进入强化的运行时环境,其中包括运行时代码签名实施,库 验证,硬性,终止和调试限制。这些限制可以通过权利有选择地放宽。注意:较旧的macOS版本 比10.14.0忽略代码签名中此标志的存在。
在Xcode为您执行签名过程时,在Xcode中为hardened runtime
选择选项将应用runtime
参数。
答案 1 :(得分:0)
这是我从苹果公司的WWDC https://laravel.com/docs/5.8/eloquent-serialization#appending-values-to-json中截取的屏幕截图,据我了解它是向后兼容的。运行部分从视频的22:00开始。