iOS上架 因为prefs:root= 被拒

提交审核返回错误信息

Guideline 2.5.1 - Performance - Software Requirements

Thank you for your resubmission. However, we noticed that the previous issue has not been resolved. 

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.

If there are no alternatives for providing the functionality your app requires, you can file an enhancement request.

Since your App Store Connect status is Rejected, a new binary will be required.

解决问题的方案

百度,Google溜了一大圈都是说找到工程里面的相关使用App-Prefs:,然后删除就OK了,替换为Apple提供的api:UIApplicationOpenSettingsURLString跳转到设置即可

但是搜索之,并未发现任何相关代码,最后思考可能问题出现在第三方的.a或者.framework文件中

最后使用命令行来查找工程中的私有api“App-Prefs”

grep -lr "prefs:root=" *

递归查找列出文件内容符合指定的样式的文件名称

最后就找到了使用prefs:root=的第三方包,找到原因就可以制定相关的解决方案了

溜了溜了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • PLEASE READ THE FOLLOWING APPLE DEVELOPER PROGRAM LICENSE...
    念念不忘的阅读 13,535评论 5 6
  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 7,436评论 0 10
  • 定义变量 es6又新增了两种定义变量的方式分别是 let 和 const1.let 和 作用域的配合使用可以帮我们...
    小飞侠zzr阅读 183评论 0 0
  • 人学习有三种途径,一种是自书本上学前人的知识,一种是自身边的人身上学其先进,一种是向自己过去的经验和教训学习。 我...
    Aaron51k阅读 562评论 0 3