在阅读有关公证的Apple文档时,我们是否需要对二进制文件(例如启动守护程序),框架或dylib进行公证尚不清楚。
我们还需要公证吗?
可在此处找到苹果文档Notarizing Your App Before Distribution
答案 0 :(得分:1)
在这里回答我自己的问题,也许对某人有帮助。
这可以由Xcode自动完成;但是,如果您需要手动配置此功能(可能具有持续集成功能,则可能有帮助)。
公证使用户更有信心,您所分发的开发人员ID签名的软件已被Apple检查是否存在恶意组件。
如果没有问题,公证服务会生成一张票证,供您装订到软件中
将来的macOS版本中的二进制文件,框架,dylib,应用程序都需要公证。
--timestamp
添加到 Other Code Signing Flags
--options=runtime
添加到 Build中的 Other Code Signing Flags (其他代码签名标记)(对于Xcode <10.2)或启用强化的运行时(对于Xcode> = 10.2)设置 xcrun altool --notarize-app -f <path_to_zip_dmg_or_pkg> --primary-bundle-id <bundle_identifier> -u <apple_id> -p @keychain:"Application Loader: <apple_id>"
--->这将返回一个 UUID ,该URL也将在提供的{{1 }}公证完成后<apple_id>
检查状态和错误日志(如果有)xcrun altool --notarization-info <UUID_from_previous_step> -u <apple_id> -p @keychain:"Application Loader: <apple_id>"
下载错误日志,其中上一条命令的 json响应中返回 LogFileURL curl LogFileURL
进行公证即可;只能装订 app , dmg 和 pkg 。xcrun stapler staple -v <path_to_app_dmg_or_pkg>
检查是否已完成代码签名,还检查时间戳记值codesign -dvvv <path_to_file>
检查装订是否有效