我将我的应用程序提交给应用程序审核并收到以下消息。
ITMS-91065:缺少签名 - 您的应用程序包含“Frameworks/OpenSSL.framework/OpenSSL”,其中包含 BoringSSL / openssl_grpc,这是一个在文档中被标识为影响隐私的第三方 SDK 的 SDK。如果新应用程序包含影响隐私的 SDK,或者应用程序更新添加了新的影响隐私的 SDK,则该 SDK 必须包含签名文件。请联系包含此文件的 SDK 提供商,以获取带有签名的更新 SDK 版本。
背景
我用了
nextcloud/ios
使用OpenSSL版本
1.1.2200
根据我的搜索,这似乎是
OpenSSL
版本 - source 的问题,该版本可能尚未包含隐私清单。
Apple 发布了需要清单和签名的 SDK 列表。如果您静态链接它们,则需要在应用程序中提供清单和签名。 https://developer.apple.com/support/third-party-SDK-requirements/
Apple 在引用该列表时使用多个名称。 “影响隐私的第三方 SDK”首先在 WWDC 会议上宣布隐私清单时使用。 “常用的 SDK”是另一个名称。
如果您使用 Cocoapods 添加 SDK,则构建阶段“[CP] Embed Pods Frameworks”可能已经在 shell 脚本中进行了签名。
在此处找到了在 BoringSSL 中添加清单的参考:https://boringssl-review.googlesource.com/c/boringssl/+/67487
Apple 的文章中也列出了“OpenSSL”,因此您可能需要确保它也有隐私清单。
此外,请确保 PrivacyInfo.xcprivacy 已完全形成,包含所需的所有 4 个顶级密钥。丢失密钥有时可能是扫描仪在提交过程中丢失密钥的原因。