我正在尝试分发使用针对 iOS 18 的 Xcode 16 构建的 iOS 应用程序,但由于某些框架中与位码相关的资产验证错误,上传到 App Store 失败。
错误消息:
问题: 在 iOS 18 和 Xcode 16 上分发包含带有位码的第三方框架的应用程序时,如何解决这些资产验证错误?此环境中的位码是否存在已知的兼容性问题,或者我应该遵循的具体步骤来解决此问题?
任何建议或指导将不胜感激。谢谢!
我已经尝试过以下方法但没有成功:
我的 MoeEngage 遇到了同样的问题,我通过在 Podfile 上添加一些代码来解决,也许你可以修改你的框架的框架路径
post_install do |installer|
bitcode_strip_path = `xcrun --find bitcode_strip`.chop!
def strip_bitcode_from_framework(bitcode_strip_path, framework_relative_path)
framework_path = File.join(Dir.pwd, framework_relative_path)
command = "#{bitcode_strip_path} #{framework_path} -r -o #{framework_path}"
puts "Stripping bitcode: #{command}"
system(command)
end
framework_paths = [
"Pods/MoEngage-iOS-SDK/Frameworks/MoEngage.xcframework/ios-arm64_armv7/MoEngage.framework/MoEngage",
"Pods/MoEngage-iOS-SDK/Frameworks/MOAnalytics.xcframework/ios-arm64_armv7/MOAnalytics.framework/MOAnalytics",
"Pods/MoEngage-iOS-SDK/Frameworks/MoEngageCore.xcframework/ios-arm64_armv7/MoEngageCore.framework/MoEngageCore",
"Pods/MoEngage-iOS-SDK/Frameworks/MOMessaging.xcframework/ios-arm64_armv7/MOMessaging.framework/MOMessaging",
"Pods/MORichNotification/Frameworks/MORichNotification.xcframework/ios-arm64_armv7/MORichNotification.framework/MORichNotification"
]
framework_paths.each do |framework_relative_path|
strip_bitcode_from_framework(bitcode_strip_path, framework_relative_path)
end
end