iOS 10和权限本地化说明

Ale*_*min 30 permissions ios xcode8 ios-permissions

在为iOS 10准备应用程序时面临有趣的事情.从Xcode 8开始,您必须提供有关您在应用程序中提出的任何权限的说明(https://forums.developer.apple.com/thread/49951)

一切似乎都很好,但如果我想要本地化这个描述怎么办?

如果我把它放在里面InfoPlist.strings- 应用程序将继续崩溃.但是,如果我把它放在InfoPlist.stringsInfo.plist-的应用程序将总是从描述Info.plist,所以不会有任何的定位.

也许有人有解决方案.谢谢 :)

Mar*_*lak 39

我遇到了同样的问题,我能够解决它,因为我注意到它InfoPlist.strings不是任何目标的成员.

因此,设置Target Membership文件(将其置于Copy Bundle Resources构建阶段)修复了它.


对于任何在Google上搜索的人:https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/AboutInformationPropertyListFiles.html

向下滚动到"本地化属性列表值"

  • 是的,您可以将任何 `"key" = "string";` 放入相应语言的 `InfoPlist.strings` 中,它将代替 `Info.plist` 中提供的值使用。我建议无论如何在 `Info.plist` 中放置一个默认值,即使从我的实验来看,没有必要将密钥放在 plist 本身中。此外,`InfoPlist.strings` 的名称也很重要,因为它表明了这个答案中的评论:http://stackoverflow.com/questions/25736700/how-to-localise-a-string-inside-the-ios-info-plist -文件 。 (2认同)
  • 请注意,文档指出该密钥不应使用双引号... NSLocationWhenInUseUsageDescription =“ xxx”; vs vs“ NSLocationWhenInUseUsageDescription” =“ xxx”;`。即:https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/AboutInformationPropertyListFiles.html (2认同)

Fai*_*lik 7

在此处输入图片说明

在此处输入图片说明

实现权限本地化的步骤。

步骤 1 - 单击 Info.plist

第 2 步 - 单击本地化按钮 [Xcode 右中]

第 3 步 - 勾选语言


小智 5

这是本地化info.plist变量的步骤

一世。在您的项目下创建一个名为“ InfoPlist.strings”的新文件

ii。单击您的项目以打开设置(如果目标是您的应用,只需在打开的窗口中单击它即可选择项目),在“本地化”下添加任何必要的语言

iii。转到您的InfoPlist.strings文件,然后在本地化下选中所需语言的复选框。(按“实用程序”按钮,除非在单击.strings文件后看不到本地化,该文件位于xcode的右上角-最右边的一个)

iv。在InfoPlist.strings中为所有本地化语言添加必要的“键” =“值”对。如果您在查找属于info.plist行的键时遇到困难,只需右键单击info.plist并选择Open As-> Source Code,所有行参数都将在源代码中显示为键