如何在我的 iOS 应用程序中调试冻结问题

How do I debug freezing issue in my iOS app

我有一个用 Objective-C 制作的应用程序。这个应用程序总是工作正常。昨天,我的 Xcode 忽略了我创建的任何新内容,因此我将其更新为 Xcode 10.1 (10B61)。不管怎样,我正在编辑另一个应用程序,而不是下面的应用程序。

此后应用程序的一个版本已在 App Store 上更新(我是 2 天前发送的),晚上 18 点我的老板打电话给我 phone 并告诉我应用程序崩溃了。

今天,我确认应用程序没有崩溃,而是死机了。当任何这些事情发生时,它会冻结:

  1. 打开或关闭键盘
  2. 打开或关闭任何 activity
  3. 使用 AFNetworking 框架进行请求

我试过 git 结帐到月初,但仍然没有用。所以我对上个月(10 月 9 日)的 init 进行了结帐,它仍然冻结。但这些版本的应用程序运行正常。

我尝试调试它直到在程序集上,我可以修复 AFNetworking,这是有史以来第一次更改框架的代码。当它尝试设置请求的 header 时,有一个 dispatch_sync 冻结应用程序,我可以将其更改为 dispatch_async 并解决了 1/3 的问题,请求仍在处理异步。行:./Pods/AFNetworking/Serialization/AFURLRequestSerialization.m:306

- (NSDictionary *)HTTPRequestHeaders {
    NSDictionary __block *value;
    dispatch_sync(self.requestHeaderModificationQueue, ^{
        value = [NSDictionary dictionaryWithDictionary:self.mutableHTTPRequestHeaders];
    });
    return value;
}

现在我的老板告诉我这两个应用程序都冻结了。我没有更新提到的第一个应用程序中的任何内容。这些应用程序来自同一个项目,它们像优步一样工作。

有人知道发生了什么事吗?

====EDIT0====

目前我们注意到该应用程序可以在另一台计算机上构建,并且与以前一样。所以在我的 Mac 中构建的应用程序冻结了,问题不在于代码、某些库、更新或其他任何东西。可能是我的电脑,我们会尝试使用另一台 mac 来构建和发送应用程序。

如果它解决了问题,我会把解决方案放在这里并与 Apple 支持人员交谈。

问题是在我的 Mac 中构建的每个 iOS 应用程序开始在 dispatch_sync 函数中随机冻结。我会尝试格式化我的电脑或购买一台新电脑。

从字面上看毫无意义,但解决了问题。