CFBundleLocalizations info.plist - 如何放置多种语言

Posted

技术标签:

【中文标题】CFBundleLocalizations info.plist - 如何放置多种语言【英文标题】:CFBundleLocalizations info.plist - How to put multiple languages 【发布时间】:2011-12-02 00:06:58 【问题描述】:

我在任何地方都找不到这个问题的答案。我是 Xcode 的新手。我开发了两个多语言 iPhone 应用程序,但无法将它们上传到 iTunes Connect,因为我遇到了著名的错误“info.plist 键 cfbundlelocalizations 的值不是该键所需的类型”。每个人都说这是因为我需要在那里放置一系列值,但我不知道该怎么做。例如,如果我需要英语和法语,我应该放什么?像这样 (0=en, 1=fr)?

【问题讨论】:

【参考方案1】:

Xcode 中的 plist 编辑器似乎坚持它应该是一个字符串...如果你想要一个数组,请尝试在文本编辑器中打开 plist 文件,并在一个值之后添加它:

    <key>CFBundleLocalizations</key>
    <array>
        <string>English</string>
        <string>French</string>
    </array>

所以你的 plist 看起来像这样:

...
    <key>CFBundleExecutable</key>
    <string>$EXECUTABLE_NAME</string>     
    <key>CFBundleLocalizations</key>
    <array>
        <string>English</string>
        <string>French</string>
    </array>
...

【讨论】:

感谢您的回答,我可以将我的应用程序上传到 iTunes Connect,再次感谢。请投票给其他人允许的其他答案,这不是这个问题的答案。 这行不通。您必须使用 ISO 639-1 或 ISO 639-2 语言代码名称,而不是像他的答案中指定的@mojomajor @justin:我不知道那是不是以前的情况,但现在我只看到enfr 像提到的 Softlion 这样的字符串。请更正/更新您的答案! 文档说您可以同时使用两者:“此属性数组中的每个条目都是一个字符串,用于标识支持的本地化的语言名称或 ISO 语言指示符”。 developer.apple.com/library/archive/documentation/General/…

以上是关于CFBundleLocalizations info.plist - 如何放置多种语言的主要内容,如果未能解决你的问题,请参考以下文章

CFBundleLocalizations info.plist - 如何放置多种语言

webView文本长按显示英文

Xcode 无法识别新的本地化

顶点最短路径(弗洛伊德算法)

区分“inf”和“-inf”

为啥 (inf + 0j)*1 评估为 inf + nanj?