可以在项目信息面板中的 Xcode 中添加的“主要”语言列表(即无需深入到长子菜单即可添加的语言)与可以在 App Store Connect 中添加的基本相同(除了 Xcode还列出了 App Store Connect 中不存在的
Chinese (Hong Kong) (zh-HK)
和 English (India) (en-IN)
)。但我注意到区域设置标识符有时指不同的区域:例如Xcode 有 Spanish (es)
和 Spanish (Latin America) (es-419)
,而 App Store Connect 使用 Spanish (Spain)
和 Spanish (Mexico)
,通过 App Store Connect API 下载时具有标识符 en-ES
和 en-MX
。
原谅我的无知,但这是否意味着拉丁美洲和墨西哥使用的语言是相同的?或者我应该在 Xcode 中选择墨西哥变体,以便应用程序中和 App Store 上使用的区域设置标识符匹配?
所有不匹配的区域设置是(首先是 Xcode,其次是 App Store Connect):
ar
vs ar-SA
de
vs de-DE
en
vs en-US
es
vs es-ES
es-419
vs es-MX
fr
vs fr-FR
nl
vs nl-NL
您需要上传元数据以匹配 App Store Connect 中的标识符,而不是您的 Xcode 项目(即knownRegions 下的project.pbxproj 中的内容)。
如果你做错了,你会得到这个错误:
属性值无效。 - 指定的语言未列出用于本地化 - /data/attributes/locale
上传期间,以及
ITMS-90176:无法识别的区域设置
上传后。
Apple 将其“记录”为 https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPInternational/LanguageandLocaleIDs/LanguageandLocaleIDs.html(其更新时间比今天更接近史蒂夫·乔布斯在世的时间) .)
它们不匹配,因为Apple的开发者是一个优秀的项目管理生态系统,所有Apple的开发文档都是正确的并且在过去十年中更新,而且我花了足够的时间作为我孩子的爸爸而不是配置App Store上传。
假设您使用 fastlane,以下是如何识别您需要的确切元数据:
fastlane init
并说 y
下载现有元数据find fastlane/metadata | grep release
列出所需的元数据字段(我现在这样做是为了更新“新字段”)echo XXX > XXX
,以便保存更新的元数据