我主要遵循这个指南中的代码签名和公证说明:
Code signing + notarization using jpackage utility isn't working on macOS
即逐个对 .dylib 和 jar 文件进行签名,最后对整个 pkg 进行签名和公证。
pkg 已成功创建并进行了公证,但由于以下错误无法提交到应用商店。我肯定可以在我的 Mac 上运行此 pkg 而没有问题。
第三项是什么意思?我从哪里获取第三方证书?还是我需要做些什么……
如果有人能够指出我解决这些问题的正确方向,我将不胜感激。
注意到 Info.plist=not bound after notarization,这可能指向了代码签名未正确完成的问题?
提前致谢。
1. ERROR ITMS-90230: "Invalid product archive metadata. Error in keyPath [product-metadata.product-identifier]. Please re-build your
archive with an up-to-date version of Xcode, and submit again."
2. ERROR ITMS-90230: "Invalid product archive metadata. Error in keyPath [product-metadata.product-version]. Please re-build your
archive with an up-to-date version of Xcode, and submit again."
3. ERROR ITMS-90237: "The product archive package's signature is invalid. Ensure that it is signed with your "3rd Party Mac Developer
Installer" certificate."
4. ERROR ITMS-90249: "The product archive is invalid. The value of the LSApplicationCategoryType key in the Info.plist is Unknown,
which is not a UTI for a valid category. For more details, see
"Submitting your Mac apps to the App Store"."
5. ERROR ITMS-90254: "The product archive is invalid. The installer package may not include install scripts."
6. ERROR ITMS-90264: "The lowest minimum system version [none] in the Product Definition Property List must equal the
'LSMinimumSystemVersion' value [10.9] in the 'Info.plist'."
7. ERROR ITMS-90296: "App sandbox not enabled. The following executables must include the "com.apple.security.app-sandbox"
entitlement with a Boolean value of true in the entitlements
property list: [(
"MyApp-app.pkg/Payload/MyApp.app/Contents/MacOS/MyApp",
"MyApp-app.pkg/Payload/MyApp.app/Contents/runtime/Contents/Home/lib/jspawnhelper"
)] Refer to App Sandbox page at
https://developer.apple.com/documentation/security/app_sandbox for
more information on sandboxing your app."
=========