无法将构建上传到 iTuneConnect



我一直试图上传一个在AppStore上运行多年的应用程序版本,每次上传都会收到以下错误。

[Transporter错误输出]:错误ITMS-90704:";缺少应用程序图标。为iOS、iPadOS或watchOS构建的应用程序的资产目录中必须包含PNG格式的1024乘1024像素的应用程序图标。如果没有此图标,应用程序将无法提交审查。有关详细信息,请参阅https://developer.apple.com/ios/human-interface-guidelines/icons-and-images/app-icon/.">

消息很清楚,但我认为这是错误的,因为我已经制定了当前的资产目录3年多了,以前从未遇到过问题。我还将其完全替换为新的,试图解决项目/目录方面的一些奇怪问题。

上面提到的图标是RGB,非Alpha PNG。

除了迁移到xCode 12之外,该项目最近唯一的重大变化是对Catalyst的支持。我想这可能与之有关,但我完全不知道是怎么回事。

我还查看了ipa上的Assets.car,尽管没有在那里找到图标,但我发现了一些不同大小的图标组图像。。。不知道该怎么想:(

所以。。。这是我的";解决方案";对于这个问题。我宁愿不用破解它……但现在我已经失去了在我的项目中找到这种行为的原因的所有希望:p

由于交付错误只发生在iOS ipa上,并且不需要设置催化剂配置。。。我正在对podfile执行以下操作以禁用它们。它最终是一种非常干净的方法,因为该项目已经有一些库没有在ios和catalyst上使用。。。因此,在更换平台时已经需要更新pod。

$compileForIOS = false
post_install do |installer|

# main project
project_name = Dir.glob("*.xcodeproj").first
project = Xcodeproj::Project.open(project_name)

project.targets.each do |target|

# disable catalyst support when compiling for iOS
# iOS delivery to TestFlight won't work if enabled :/
if target.name == "TargetName" || target.name == "TargetNameExtension"
target.build_configurations.each do |config|

config.build_settings['SUPPORTS_MACCATALYST'] = $compileForIOS ? 'NO' : 'YES'
config.build_settings['TARGETED_DEVICE_FAMILY'] = $compileForIOS ? '1,2' : '1,2,6'

if $compileForIOS
config.build_settings.delete('IPHONEOS_DEPLOYMENT_TARGET[sdk=macosx*]')
else
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET[sdk=macosx*]'] = '14.2'
end
end
end
end

project.save
end

相关内容

  • 没有找到相关文章

最新更新