【问题标题】:Enable NSZombieEnabled for Archived Release Build为存档发布版本启用 NSZombieEnabled
【发布时间】:2012-01-25 09:17:48
【问题描述】:

当我使用连接的 iPad 运行时,我可以通过“启用僵尸对象”或通过将 NSZombieEnabled 作为环境变量传递来启用 NSZombieEnabled。但是,我似乎无法在启用 NSZombie 的情况下生成构建(即,您存档和分发的那种)。

如何为归档版本构建启用 NSZombieEnabled?

我用来确定它是否从代码中启用的代码是:(getenv("NSZombieEnabled") || getenv("NSAutoreleaseFreedObjectCheckEnabled"))

【问题讨论】:

  • 为什么需要 NSZombieEnabled 来进行临时构建?
  • @JackLawrence 感谢您的提问。我的一位测试人员遇到了莫名其妙的崩溃,这与stackoverflow.com/questions/1912131 不同。也许我应该为他们做一些其他的构建?我自己没有对这些设备的物理访问权限。

标签: ios nszombieenabled


【解决方案1】:

NSZombieEnabled 不是你需要的。您应该让他们向您发送他们的崩溃日志。或者您可以使用TestFlight's SDK 将崩溃报告发送到您可以监控的网络面板。在那里,您通常可以看到崩溃发生的位置。

【讨论】:

  • 阅读有关问题的 cmets。我相信 NSZombies 会很有用
  • 我确实读过 cmets。 NSZombiesEnabled 仅用于调试,不适用于任何类型的分布式版本。它行不通。关于这个主题有很多困惑,但我 100% 确定 NSZombiesEnabled 仅在调试时处于活动状态。
  • 如果我通过在 Xcode 中点击“运行”来部署到设备,僵尸将被启用,即使它在没有激活调试的情况下运行,它们也会继续为构建工作。
  • 大约一年前我还在使用 Xcode 3.2 时检查了它。界面将它显示为目标的活动参数,但编译器没有使用它,因为它是一个分发版本。现在在 Xcode 4 的存档方案中没有选项可以执行此操作,因为 NSZombiesEnabled 不是为分发而创建的,现在更精致的 UI 反映了这一点。不过,可能还有其他方法可以实现添加它。
  • 谢天谢地。我忘了禁用 NSZombie 然后构建存档版本。如果没关系,我不需要通知测试人员。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-01-17
  • 1970-01-01
  • 2014-10-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-28
相关资源
最近更新 更多