Cordova-iOS 7.1.0隐私清单格式不符Apple要求,如何修正?
解决Cordova iOS隐私清单格式错误(ITMS-91056)
正确的config.xml配置格式
你之前的配置结构不符合Apple隐私清单的要求,正确的配置应该是这样的:
<platform name="ios"> <privacy-manifest> <key>NSPrivacyAccessedAPITypes</key> <array> <dict> <key>NSPrivacyAccessedAPICategory</key> <string>NSPrivacyAccessedAPICategoryUserDefaults</string> <key>NSPrivacyAccessedAPITypeReasons</key> <array> <string>CA92.1</string> </array> </dict> </array> </privacy-manifest> <!-- 你的其他iOS平台配置 --> </platform>
错误原因说明
你之前的写法是直接把API类别(NSPrivacyAccessedAPICategoryUserDefaults)当作字典的key,把理由值直接赋值过去,但Apple要求的标准结构里,每个API条目必须包含两个固定key:
NSPrivacyAccessedAPICategory:用来指定具体的API类别NSPrivacyAccessedAPITypeReasons:用数组形式存放对应的理由代码(哪怕只有一个理由,也要放在数组里)
Cordova iOS 7.1.0官方配置说明(翻译)
Cordova iOS 7.1.0正式加入了Apple隐私清单的支持,通过config.xml里的<privacy-manifest>标签来配置,完全对应Apple要求的PrivacyInfo.xcprivacy文件格式:
- 核心配置节点是
NSPrivacyAccessedAPITypes,这是一个数组,每个元素是一个字典,对应一类被访问的API - 每个字典必须包含两个字段:
NSPrivacyAccessedAPICategory:字符串类型,填写API的具体类别标识NSPrivacyAccessedAPITypeReasons:数组类型,填写一个或多个Apple认可的理由代码
修改完配置后,重新构建iOS项目,生成的PrivacyInfo.xcprivacy就会符合格式要求,不会再收到Apple的ITMS-91056提示。
内容的提问来源于stack exchange,提问作者DanielRead
相关产品推荐
相关产品推荐

