【问题标题】:Xcode cannot locate localized info.plistXcode 找不到本地化的 info.plist
【发布时间】:2013-08-05 07:14:31
【问题描述】:

添加一些本地化后:

并本地化(AppName)-info.plist 文件:

并检查了捆绑资源(还尝试从 Copy Resources Bundle 列表中删除 Go-info.plist:

和文件属性:

Xcode (4.6.3) 报错:

错误:无法从“.../Go/Go/Go-Info.plist”读取数据:文件 “Go-Info.plist”无法打开,因为没有这样的文件。

看起来 Xcode 忽略了路径中的本地化文件夹。它试图将 info.plist 查找为:

.../Go/Go/Go-Info.plist

代替:

.../Go/Go/(Localization)/Go-Info.plist

我该如何解决?

【问题讨论】:

  • 我不确定您是否可以本地化 info.plist。如果您想本地化您的 AppName,您应该本地化 infoPlist.strings 文件并添加这些键: "CFBundleDisplayName" = "AppName"; "CFBundleName" = "AppName";

标签: ios xcode localization info.plist


【解决方案1】:

我认为 Info.plist 无法本地化。如果您想本地化您的应用程序名称,您应该本地化 InfoPlist.strings 文件并使用这些键:

"CFBundleDisplayName" = "AppName";
"CFBundleName" = "AppName";

【讨论】:

  • 去掉 key 的双引号,因为它已经是一个 NSString 值,对我很有用。
  • 感谢您指出 Info.plist 和 InfoPlist.strings 是两件事...我认为许多像我这样的“聪明”人在本地化时会忽略它们的区别。
【解决方案2】:

逐步本地化Info.plist:

  1. 在 x-code 中找到文件夹 Resources(放在根目录下)
  2. 选择文件夹资源
  3. 然后按主菜单File->New->File...
  4. 在“资源”字符串文件部分中选择,然后按下一步
  5. 然后在“另存为”字段中仅写入 InfoPlist(“I”大写和“P”大写)
  6. 然后按创建
  7. 然后选择在 Resources 文件夹中创建的文件 InfoPlist.strings 并在右侧菜单中按“本地化”按钮
  8. 然后从项目导航器中选择项目并从项目列表中选择项目
  9. 在底部的信息选项卡中,您可以选择所需的语言(本地化部分中有)
  10. 您可以在资源文件夹中看到的语言
  11. 要本地化 info.plist 文件中的值(“键”),您可以使用文本编辑器打开并获取您想要本地化的所有键
  12. 您可以在任何 InfoPlist.strings 中编写任何键作为示例,如上例所示

"NSLocationAlwaysAndWhenInUseUsageDescription"="blabla";

"NSLocationAlwaysUsageDescription"="blabla2";

所有工作都完成了,您已经本地化了您的 info.plist 文件!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-26
    • 1970-01-01
    • 2015-05-08
    • 2018-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多