以编程方式在iOS上本地化info.plist

我在iOS上面临特定翻译问题.

我目前正在处理的应用程序获取它从Web服务显示的所有文本.我已经能够在任何地方实现这一点,只有一个例外:

我还没有找到一种方法来以编程方式改变来自info.plist的文本,这些文本在我无法控制的代码中从系统中使用.我需要处理的是“隐私 – 相机使用说明”.到目前为止,我发现的任何文档都告诉我为info.plist添加本地化文本版本 – 但在这种特殊情况下,这对我没有帮助,因为不同的客户可能会为同一种语言指定不同的文本,我有时甚至都不知道文本是什么语言,所以我不能仅仅依靠应用程序中的静态数据来选择正确的文本版本.

有没有办法以编程方式设置这样的文本,或者如果无法捕获显示它的警报并将其替换为我自己的一个?

最佳答案 不,这是不可能的,我们不能改变Info.plist运行时.但如果我代替你在那里,我会做一件事作为解决方案.使用api中的指定文本显示自定义警报视图.哪会问“我们会用你的相机”.如果用户说“Ok”,则显示系统的alertview以获取具有静态本地化字符串的权限.它需要2次交互,但它可以彻底引导用户.

点赞