ITMS-90683: Missing Purpose String in Info.plist

APP审核通过但是,返回的邮件里面存在warning 

具体信息如下:

 Your delivery was successful, but you may wish to correct the following issues in your next delivery:

ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSLocationWhenInUseUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. Starting Spring 2019, all apps submitted to the App Store that access user data are required to include a purpose string. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesn't contain the APIs. Learn more 

结尾还礼貌的表达了美好的祝愿0.0

排除这个问题有两点:

(1)如果项目里面确实有使用地理位置信息的,要在info.plist里面添加NSLocationWhenInUseUsageDescription 并且描述为什么使用位置信息用来干嘛,其实如果真的不填写,审核也通不过.

(2)如果项目里面确定没有使用地理位置信息的地方,那就要想想是否是那个SDK引用了地理位置信息

(3)项目里面使用了极光推送,极光老版本3.2.1以前的BUG 所以更新极光就行了,

    我遇到的问题是,我使用的使用的pod 所以直接pod install 但是极光并没有更新,所以我先使用了一下pod update 更新了一下pod库,之后在使用 pod  install (pod update的时候已经更新至最新了再次为了确认最新)更新所有的,这样极光推送SDK就是最新的了.再上架就不会报这个警告了!

(4)我有一个同学遇到更可笑的问题是:项目里确实没用到地理位置,但是通过pod 引用了一个 TZImagePickerController

这个SDK在源码里面确实引用了地理位置信息,所以就像把这个删掉,

问题来了,他只要一删掉 TZImagePickerController  七鱼的SDK就会报错,错误如下.

Undefined symbol: _OBJC_CLASS_$_PHAssetCreationRequest

Undefined symbol: _OBJC_CLASS_$_PHPhotoLibrary

愚钝的是,我们当时一直在想,这俩库怎么会有联系呢,

    其实答案挺简单的,当时 TZImagePickerController 是用pod集成的,我们都知道,通过pod集成的都会默认添加各种依赖库,所以pod自动添加了依赖库 Photots.framework

    所以添加的这个依赖库,七鱼的SDK能用,TZImagePickerController也能用, 但是一旦用pod把TZImagePickerController去掉之后,默认添加的依赖库也就默认去掉了,所以七鱼SDK就会报错,,,解决办法:在去掉 TZImagePickerController 之后再 项目 linked Frameworks andLibearies 里面添加 Photos.framework 就行了

谨以此文纪念我的傻里傻气

你可能感兴趣的:(ITMS-90683: Missing Purpose String in Info.plist)