apple上架- prefs:root or App-Prefs:root

  • Your app uses the “prefs:root=” non-public URL scheme, which is a private entity. The use of non-public APIs is not permitted on the App Store because it can lead to a poor user experience should these APIs change.
  • Continuing to use or conceal non-public APIs in future submissions of this app may result in the termination of your Apple Developer account, as well as removal of all associated apps from the App Store.
  • Next Steps
  • To resolve this issue, please revise your app to provide the associated functionality using public APIs or remove the functionality using the “prefs:root” or “App-Prefs:root” URL scheme.

问题1

解决

  • 您的位置可能会显示在地图上,并用于获取当前城市可租车辆信息
  • 您的位置可能会显示在地图上,并用于获取当前城市可领取任务信息
  • “手机淘宝”想访问您的位置,为了提供附近的商品、店铺及优惠资讯
  • “手机淘宝”想访问您的位置,为了帮您扫描二维码或商品和互动等功能
  • “手机淘宝”想访问您的照片,为了帮您实现晒买家秀等上传照片的功能
    *

问题2 解决办法参考a [ prefs:root App-Prefs:root 不能再使用]

  • 一些网站上说使用prefs:root配合在info.plist上加入URL scheme值为prefs:的方案可以解决这个上架被拒的问题。但是经过我自己的测试,现在“prefs:root”是苹果不允许的,而且这个在info.plist中加入URL scheme值为prefs:也是不可以的。
  • 也就是说使用“prefs:root”做跳转 以及 在info.plist中加入URL scheme值为prefs:,这两者,只要存在其中一项都会被app store拒绝的。
  • 我现在的项目已经可以上架成功了,就是把原本在info.plist中的prefs去掉之后,就上架成功了!
  • (PS:可能存在UIApplicationOpenSettingsURLString跳转到Settings首页的情况,这种是发生在应用没有请求任何权限授予,包括相机、定位等,这样子Settings中不会出现该App的选项。一般不会出现这种情况,写Demo的出现过,这边提及下)

    1
    2
    3
    4
    5
    6
    7
    8
    NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
    if ([[UIApplication sharedApplication] canOpenURL: url]) {
    if (@available(iOS 10.0, *)) {
    [[UIApplication sharedApplication] openURL: url options:@{} completionHandler:nil];
    }else{
    [[UIApplication sharedApplication] openURL: url];
    }
    }
  • https://blog.csdn.net/huaqishen123/article/details/80858385

  • https://www.jianshu.com/p/fa70e80d407c