iOS模拟器上缺少的语言

iOS模拟器上缺少的语言,ios,localization,ios-simulator,Ios,Localization,Ios Simulator,当我运行我的应用程序时,我的iPhone/iPad模拟器只给我6种语言选择(英语、德语、日语、意大利语、西班牙语和匈牙利语)。在谷歌搜索之后,似乎至少有18种语言可供选择 我已经重新安装了Xcode 4.3.1,并安装了iOS 5.1模拟器,它有同样的问题,同样的语言 有人知道这些语言是在哪里定义的吗?为什么模拟器没有所有可用的选项?谷歌和苹果开发者论坛对此毫无帮助 这里有一个屏幕截图: 更新:我决定安装稍旧的5.0模拟器(而不是5.1),每当我使用5.0模拟器时,我似乎拥有所有的语言。如果我

当我运行我的应用程序时,我的iPhone/iPad模拟器只给我6种语言选择(英语、德语、日语、意大利语、西班牙语和匈牙利语)。在谷歌搜索之后,似乎至少有18种语言可供选择

我已经重新安装了Xcode 4.3.1,并安装了iOS 5.1模拟器,它有同样的问题,同样的语言

有人知道这些语言是在哪里定义的吗?为什么模拟器没有所有可用的选项?谷歌和苹果开发者论坛对此毫无帮助

这里有一个屏幕截图:


更新:我决定安装稍旧的5.0模拟器(而不是5.1),每当我使用5.0模拟器时,我似乎拥有所有的语言。如果我切换回5.1模拟器,我仍然只有上面屏幕截图中显示的6种语言。

我认为你的模拟器安装出了问题,而不是苹果删除了这些语言。如果他们将模拟器中的语言数量减少到只有6种,那么Magyar将是一个奇怪的选择(只有1250万左右的人)

我还检查了我的Xcode 4.3.3/iPhone5.1模拟器,我有我认为完整的语言补充。可能值得尝试重新安装您的模拟器

模拟器在设置应用程序中显示的语言列表可以在中找到

/Applications/Xcode-4.3.3.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk/System/Library/privateframes/Preferences.framework/GlobalPreferences.plist

它是二进制格式的,因此您需要将其复制到临时目录,并使用
plutil-convert xml1
将其转换为您可以读取的内容。您可以检查并查看此列表中是否缺少语言

作为参考,这里是我的样子

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>AppleLanguages</key>
        <array>
                <string>en</string>
                <string>fr</string>
                <string>de</string>
                <string>ja</string>
                <string>nl</string>
                <string>it</string>
                <string>es</string>
                <string>pt</string>
                <string>pt-PT</string>
                <string>da</string>
                <string>fi</string>
                <string>nb</string>
                <string>sv</string>
                <string>ko</string>
                <string>zh-Hans</string>
                <string>zh-Hant</string>
                <string>ru</string>
                <string>pl</string>
                <string>tr</string>
                <string>uk</string>
                <string>ar</string>
                <string>hr</string>
                <string>cs</string>
                <string>el</string>
                <string>he</string>
                <string>ro</string>
                <string>sk</string>
                <string>th</string>
                <string>id</string>
                <string>ms</string>
                <string>en-GB</string>
                <string>ca</string>
                <string>hu</string>
                <string>vi</string>
        </array>
        <key>AppleLocale</key>
        <string>en_US</string>
</dict>
</plist>

应用语言
EN
fr
判定元件
青年成就组织
nl
信息技术
锿
pt
葡萄牙语
da
fi
铌
sv
让开
汉斯
汉特酒店
茹
pl
tr
英国
应收账
人力资源
反恐精英
埃尔
他
反渗透
sk
th
身份证件
太太
欧洲标准
ca
胡
不及物动词
苹果秤
恩努斯

根据同一个问题中名为idz的用户发布的答案中的信息,我能够找出如何解决这个问题

我使用的是5.1,我必须安装我的模拟器的早期版本(5.0),然后从5.0中找到语言目录并将它们复制到5.1的正确位置,然后重新启动iPhone模拟器。以下是一些详细的步骤:

  • 找到5.0模拟器的语言.lproj directores<代码>/Applications/Xcode-4.3.3.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/privateframes/Preferences.framework/
  • 在此文件夹中,您将看到许多扩展名为.lproj的文件夹,例如
    English.lproj
    。复制您在此处找到的所有.lproj文件夹
  • 找到包含5.1模拟器的.lproj目录的文件夹<代码>/Applications/Xcode-4.3.3.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk/System/Library/privateframes/Preferences.framework/
  • 将复制的文件夹粘贴到此目录中。执行此操作时,我选择不覆盖任何现有文件夹
  • 重新启动iPhone模拟器
  • 确保您的iPhone模拟器设置为5.1。选择iPhone模拟器时,转到
    硬件->版本->5.1
    。现在,当您选择模拟器的语言时,您应该拥有从5.0文件夹复制过来的所有可用语言
  • 或者有人说,您可以通过卸载Xcode SDK并重新安装来解决这个问题,但我发现这种方法要快得多


    为此,我向苹果提交了一份bug报告,一周后没有任何回应。我已经把他们引导到这个页面来解决这个问题,但我仍然不确定这是怎么发生的。

    +1用于研究。我认为你应该向苹果公司提交一份缺陷报告。如果他们故意删除了5.1中的语言(为了节省空间或其他什么),他们至少应该知道他们被遗漏了,如果他们被错误地删除了,他们应该得到通知。我与其他一些使用5.1的开发人员进行了检查,他们中的一些人拥有所有的语言,但似乎他们中的一些人也缺少某些语言。我不确定这个问题是否与版本有关,但可能是新安装的不同版本修复了这个问题。老实说,我只是好奇苹果在哪里指定了模拟器应该显示哪些语言。我仍然会提交错误报告。如果不是bug,他们会告诉你如何解决问题。当他们有你可以回到这里,并张贴答案。我已经提交了一个错误报告,我们将看看他们说什么。他们没有删除它们,我有同事使用5.1模拟器,有所有的语言,但其他人缺少某些语言。我可以尝试重新安装,但更重要的是,我现在很好奇,为什么多人会丢失它们。@NicFoster我在回答中添加了一些关于语言列表位置的信息。因此,如果此列表缺少缺少语言的开发人员的条目,这可能是一个线索。感谢这些信息,GlobalPreferences.plist文件看起来很好,它看起来与您的相同,但是我