iOS国际化的“未解之谜”

在最近一次项目iOS提交审核过程中,遇到一个“未解之谜”:
重点:Invall


image.png

邮件的意思比较明确,App中使用了【定位】和【蓝牙】的相关API,隐私涉及到用户隐私权限使用。需要在App的Info.plist 文件中解释说明使用该功能的目的和原因。
然而,当打开Info.plist文件才觉得事情没那么简单。
那么接下来一起来看下Info.plist文件:


image.png

image.png

由于项目是多语言的环境,所以隐私描述添加在InfoPlist.string的国际化文件中。其它语言的国际化就不再展示了。有国际化需要的同学可以自己查找其它的国际化介绍资料。
检查发现,NSLocationAlwaysUsageDescriptionString和NSBluetoothAlwaysUsageDescription,这两项都正确添加,并且有明确的说明。

看到这里,如果有相同问题的同学可放心的接着往下看了~
经过几番资料查证,终于在Apple Developer Forums 看到有这样一个问题 Invalid value for purpose string in info.plist。苹果官方的员工进行了回答

It’s unusual to use the NSLocationXXX keys as values. Normally you set the value in the Info.plist to be that of your development language.

通常情况下苹果是不允许我们使用NSLoation 开头的之类的String 作为国际化文件infoPlist.String中的key .

问题找到了就很好解决了,在Info.plist文件进行调整,问题解决。


image.png

简单的日常记录,希望对各位同学有一丝帮助。

你可能感兴趣的:(iOS国际化的“未解之谜”)