【问题标题】:Updated binary rejected from AppStore更新的二进制文件被 AppStore 拒绝
【发布时间】:2016-12-19 16:47:57
【问题描述】:

我在 iOS 的 App Store 中有一个 Swift 应用程序,它已经发布,我做了一个新的更新,版本 1.5。只有小修复,最大的修复是我实现了 Firebase 崩溃分析。 我能够在调试模式下编译应用程序,并且 Firebase 崩溃报告工作正常(我可以看到仪表板中出现错误)。但是当我将此二进制文件提交给 Apple 时,他们拒绝了它。我认为这可能是错误的配置文件,所以我创建了一个新的并再次提交。在这两种情况下,我都收到了这条消息并拒绝了二进制文件:

性能 - 2.1

我们无法审核您的应用,因为它在启动时崩溃了。不幸的是,没有生成崩溃日志。

后续步骤

请修改您的应用并在连接到 IPv6 网络的设备上对其进行测试(所有应用都必须支持 IPv6),以确保其启动时不会崩溃。

我回答说我没有任何 IPv6 服务器,而且我在办公室或家里的 ISP 还没有支持 IPv6,所以我应该如何测试它...他们回答:

感谢您的回复。在查看您的回复后,您的问题似乎最好由 Apple Developer Technical Support 解决,他们可以提供离散的代码级帮助。

为确保 DTS 工程师能够为您提供最佳帮助,请务必包含任何可用的符号化崩溃日志、屏幕截图或重现您请求中遇到的问题的步骤。

有关如何读取或表示崩溃日志的信息,请参阅技术说明 TN2151 理解和分析 iPhone OS 应用程序崩溃报告。

在此处的评论将我指向指南后,我 tested my app for IPv6 compatibility 并没问题,该应用程序下载了内容并正常运行。

我告诉他们再次检查二进制文件,他们提供了这个错误日志:

Aug 17 17:45:35 Apps-iPhone kernel[0] <Notice>: xpcproxy[261] Container: /private/var/mobile/Containers/Data/Application/E6D8144E-8FD7-4473-9BC7-476AC46B7E2D (sandbox)
Aug 17 17:45:35 Apps-iPhone com.apple.xpc.launchd[1] <Error>: assertion failed: 13F69: launchd + 116796 [9F6284CF-8A17-36CC-9DB5-85D510A21F14]: 0x3
Aug 17 17:45:35 Apps-iPhone AppName[261] <Warning>: WARNING: Firebase Analytics App Delegate Proxy is disabled. To log deep link campaigns manually, call the methods in FIRAnalytics+AppDelegate.h.
Aug 17 17:45:35 Apps-iPhone AppName[261] <Warning>: Configuring the default app.
Aug 17 17:45:35 Apps-iPhone kernel[0] <Notice>: Sandbox: AppName(261) deny(1) file-write-create /private/var/containers/Bundle/Application/FIREBASE_UNIQUE_INSTALL
Aug 17 17:45:35 Apps-iPhone AppName[261] <Warning>: Firebase Crash Reporting: Successfully enabled
Aug 17 17:45:35 Apps-iPhone AppName[261] <Notice>: <FIRAnalytics/INFO> Firebase Analytics v.3300000 started
Aug 17 17:45:35 Apps-iPhone AppName[261] <Notice>: <FIRAnalytics/INFO> To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled
Aug 17 17:45:36 Apps-iPhone kernel[0] <Notice>: Sandbox: AppName(261) deny(1) file-write-create /private/var/containers/Bundle/Application/FIREBASE_LAST_TIMESTAMP
Aug 17 17:45:37 Apps-iPhone AppName[261] <Notice>: <FIRAnalytics/INFO> Firebase Analytics enabled
Aug 17 17:45:37 Apps-iPhone SpringBoard[63] <Warning>: HW kbd: Failed to set (null) as keyboard focus
Aug 17 17:45:37 Apps-iPhone SpringBoard[63] <Warning>: UNNotificationRegistrarConnectionListener connection invalidated
Aug 17 17:45:37 Apps-iPhone com.apple.xpc.launchd[1] (UIKitApplication:com.example.AppName[0xb5f7][261]) <Warning>: Service exited with abnormal code: 6
Aug 17 17:45:38 Apps-iPhone com.apple.CDScheduler[26] <Error>: UserNextSleepPeriod value from context store is (null)
Aug 17 17:45:38 Apps-iPhone com.apple.CDScheduler[26] <Error>: Failed to get user inactivity forecast
Aug 17 17:45:38 Apps-iPhone UserEventAgent[26] <Warning>: [autosu error]: SPI for AutoSU: probabilityVector is empty
Aug 17 17:45:38 Apps-iPhone com.apple.CDScheduler[26] <Error>: AutoSu doesn't have any prediction yet
Aug 17 17:45:38 Apps-iPhone com.apple.CDScheduler[26] <Error>: Failed to get device restart forecast
Aug 17 17:45:38 Apps-iPhone locationd[72] <Notice>: Location icon should now be in state 'Active'
Aug 17 17:45:38 Apps-iPhone SpringBoard[63] <Warning>: Application 'UIKitApplication:com.example.AppName[0xb5f7]' exited voluntarily.
Aug 17 17:45:38 Apps-iPhone UserEventAgent[26] <Warning>: 11137830750: id=com.example.AppName pid=261, state=0
Aug 17 17:45:38 Apps-iPhone locationd[72] <Error>: WIFI_SCAN: scan result is too long, 372
Aug 17 17:45:38 Apps-iPhone locationd[72] <Error>: WIFI_SCAN: scan result is too long, 381
Aug 17 17:45:44 Apps-iPhone locationd[72] <Error>: WIFI_SCAN: scan result is too long, 374
Aug 17 17:45:46 Apps-iPhone eventkitsyncd[196] <Notice>: (Error) CompanionSync: <SYFileTransferSyncEngine.m -[SYFileTransferSyncEngine service:account:identifier:didSendWithSuccess:error:context:]:989> Error sending session via file-transfer: Error Domain=com.apple.identityservices.error Code=23 "Timed out" UserInfo={NSLocalizedDescription=Timed out, NSUnderlyingError=0x12f64bd10 {Error Domain=com.apple.ids.idssenderrordomain Code=12 "(null)"}}
Aug 17 17:45:46 Apps-iPhone eventkitsyncd[196] <Notice>: (Error) CompanionSync: <SYService.m -[SYService handleSyncError:forMessageWithIdentifier:]:1588> Sync error occurred: Error Domain=com.apple.identityservices.error Code=23 "Timed out" UserInfo={NSLocalizedDescription=Timed out, NSUnderlyingError=0x12f64bd10 {Error Domain=com.apple.ids.idssenderrordomain Code=12 "(null)"}}
Aug 17 17:45:48 Apps-iPhone locationd[72] <Notice>: Location icon should now be in state 'Inactive'

如何解决问题并让更新获得批准?

【问题讨论】:

  • 很难给出建议,因为我们无法重现该问题
  • 有什么方法可以测试我的发布版本,以便查看它在哪里崩溃?
  • 首先,Apple 很可能附上了崩溃报告,您应该将其附在这个问题上。其次,没有第 3 方 SDK 可以报告启动时发生的崩溃,因为它们要求您的应用至少启动并运行几秒钟才能捕获并发送崩溃报告。
  • 您可以尝试使用开发或临时配置文件重新签署您发送给 Apple 的应用程序,并将其安装在您的一台设备上。如果发生崩溃,则应该有崩溃报告或至少在设备控制台日志中输出。
  • 我使用 Adhoc Provisioning Profile 为 TestFlight 的 Alpha 测试提交了相同的二进制文件,并且应用程序运行良好...

标签: ios app-store appstore-approval firebase-crash-reporting


【解决方案1】:

关于这个有一个很好的讨论:

https://groups.google.com/forum/#!topic/firebase-talk/t61zHXvuR3U

似乎问题可能与 IPv6 无关。

我看到你在最后几行有以下错误:

Aug 17 17:45:44 Apps-iPhone locationd[72] &lt;Error&gt;: WIFI_SCAN: scan result is too long, 374

当 Apple 的某个人进行测试时,他们可能会被大量 WiFi 连接所包围。这会导致 Firebase API 无法处理的长扫描列表并导致超时。

当您尝试它时,您可能处于不同的场景中,并且它永远不会达到失败的条件。

如果可能的话,可以去一个有很多 WiFi 连接的公共场所,然后你也可以重现这个问题。

希望这会有所帮助。

亲切的问候, 穆昆德

【讨论】:

    猜你喜欢
    • 2015-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 2011-06-22
    相关资源
    最近更新 更多