iOS 构建问题 App Store prefs:root=

Posted

技术标签:

【中文标题】iOS 构建问题 App Store prefs:root=【英文标题】:iOS build issue App Store prefs:root= 【发布时间】:2018-06-20 09:28:27 【问题描述】:

我已向 App Store 提交了 ios 版本,但由于这种情况,他们拒绝了编译:

指南 2.5.1 - 性能 - 软件要求

您的应用使用“prefs:root=”非公共 URL 方案,这是一个 私人实体。不允许在应用程序上使用非公共 API 存储,因为如果这些 API 会导致糟糕的用户体验 改变。

在未来提交的 此应用程序可能会导致您的 Apple Developer 终止 帐户,以及从 App Store 中删除所有相关应用。

后续步骤

要解决此问题,请修改您的应用以提供 使用公共 API 的关联功能或删除该功能 使用“prefs:root”或“App-Prefs:root”URL 方案。

这是我的 IONIC 信息:

cli packages: (/usr/local/lib/node_modules)

    @ionic/cli-utils  : 1.19.2
    ionic (Ionic CLI) : 3.20.0

global packages:

    cordova (Cordova CLI) : 7.1.0

local packages:

    @ionic/app-scripts : 3.1.9
    Cordova Platforms  : android 6.3.0 ios 4.5.4
    Ionic Framework    : ionic-angular 3.9.2

System:

    Android SDK Tools : 26.1.1
    ios-deploy        : 1.9.2
    ios-sim           : 6.1.2
    Node              : v8.11.2
    npm               : 5.6.0
    OS                : macOS High Sierra
    Xcode             : Xcode 9.4.1 Build version 9F2000

Environment Variables:

    ANDROID_HOME : /Users/ebosques/Library/Android/sdk

Misc:

    backend : pro

老实说,我不知道他们指的是什么。 有人可以帮我解决这个问题吗?我需要在 App Store 中发布。

【问题讨论】:

您写入和读取文件的代码可能也与此问题相关。 埃米尔,能解决这个问题吗? 嗨@jckstl,是的,我可以按照苹果支持团队的指示解决这个问题。这里的解决方案是:“请通过简单地搜索“prefs”来检查您的 Xcodes 项目 - 如果在代码或 plist 文件中找到类似的 URL 方案,只需将其删除。” 【参考方案1】:

在我的情况下,问题是cordova插件对prefs:root的使用。 搜索了iOS项目后发现是诊断插件。

https://github.com/dpa99c/cordova-diagnostic-plugin/issues/262

在插件更新后它自行修复。

我还发现它可能在后台地理中

https://github.com/mauron85/cordova-plugin-background-geolocation/issues/454

作为最后的手段,如果损坏的插件无法使用更新,请删除相关的 插件中的代码可以解决问题。

【讨论】:

以上是关于iOS 构建问题 App Store prefs:root=的主要内容,如果未能解决你的问题,请参考以下文章

将构建上传到 IOS App Store

App Store 中的 iOS 构建重新提交

iOS 应用内购买未显示在 App Store 构建中

如何从命令行构建 iOS App Store 发布文件?

将 Codename One iOS AppStore 构建发送到 App Store

如何使用在我的客户的 iTunes Connect 中设置为 App Manager 角色的帐户将 iOS 构建上传到 App Store?