本地化具有不同名称的info.plist文件?

时间:2016-10-27 14:27:05

标签: ios objective-c localization settings info.plist

目前我有一个包含大量目标的项目,每个项目都有自己的" info.plist"文件在设置中指定了自己的名称:

Build Settings >> Packaging >> Info.plist File

Yes, I have read some topics similar to this one.当我有" Info.plist"具有这个确切名称的文件(当然,由于某些原因,我不能拥有~10个同名文件)。

如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

我今天遇到了同样的问题,我花了差不多一整天才解决它。我在stackoverflow上阅读了很多与此相关的问题,发现无论你给Info.Plist文件命名的是什么(比如InfoTarget1.plist),当它构建时,它会转换为产品内的标准“Info.plist”。 / p>

令人惊讶的是,相应的InfoPlist.strings文件(使用自定义名称,例如InfoTarget1Plist.strings)不会发生这种情况。

解决这个问题的方法是创建一个InfoPlist.strings并将其本地化为所需的语言。这对我有用,因为我只想为所有目标本地化'NSLocationAlwaysUsageDescription'。

因此,如果您只想要本地化的plist文件中的公共字段,则可以采用与以下相同的方法:

  1. 在保存.plist的文件夹中创建一个新的InfoPlist.strings文件。
  2. 将键值对添加到本地化。
  3. 从xcode右侧的File Inspector本地化此文件。
  4. 它会要求您移动当前的InfoPlist.strings文件,从下拉列表中选择“Base”。
  5. 从“文件”检查器中选择要本地化的其他语言,假设您已从“信息”选项卡中为项目的本地化添加了这些语言。
  6. 更新相应文件中的本地化值。
  7. 清理并运行您的应用。这应该做到!