【问题标题】:My app rejected because uses the "prefs:root=" non-public URL scheme我的应用被拒绝,因为使用“prefs:root=”非公共 URL 方案
【发布时间】:2019-04-05 10:41:33
【问题描述】:

我收到了来自苹果的以下消息:

您的应用使用“prefs:root=”非公共 URL 方案,这是一个私有实体。 App Store 不允许使用非公共 API,因为如果这些 API 发生变化,可能会导致糟糕的用户体验。

app-prefs:root=privacy&path=location

在未来提交此应用时继续使用或隐藏非公开 API 可能会导致您的 Apple Developer 帐户被终止,以及从 App Store 中删除所有相关应用。

接下来的步骤

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

我在下面使用:

“App-Prefs:root=Privacy&path=LOCATION”

请任何人都知道如何解决这个问题?

【问题讨论】:

  • 信息很清楚,你的问题是什么?
  • 嗨@Sulthan,我该如何解决这个问题?
  • @KhalidA。不使用非公共 url 方案?
  • @KhalidA。您已使用此非公开 url 方案来检查位置服务。对吗?
  • 使用UIApplication.openSettingsURLString打开设置应用,你不能做任何更具体的事情。

标签: xcode cocoapods app-store-connect ios10 appstore-approval


【解决方案1】:

Apple 的信息非常明确。打开设置只有一种合法的方式,那就是使用UIApplication.openSettingsURLString

【讨论】:

    【解决方案2】:

    解决方案是:你必须删除prefs:root非公开的url方案,你可以向用户发出警报消息以启用位置。

    例如看下面的代码:-

    alert = [UIAlertController alertControllerWithTitle:@"GPS NOT AVAILABLE"  message:@"1. Go to Settings > Privacy > Location Services. \n 2. Make sure that Location Services is on." preferredStyle:UIAlertControllerStyleAlert];
        UIAlertAction *okay = [UIAlertAction actionWithTitle:@"Okay" style: UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
            alert = nil;
        }];
        [alert addAction:okay];
        [alertVC presentViewController:alert animated:YES completion:^{
            alert = nil;
        }];
    

    我已删除直接重定向到设置或位置的非公共 url 方案。应用这些更改后,苹果批准了我的应用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-17
      • 2017-01-26
      • 2017-01-24
      • 2011-09-01
      • 2017-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多