【问题标题】:IOS Unkonw Crash during launch,No Crash Log,No report,How can I catch It?IOS Unknown Crash during launch,No Crash Log,No report,我该如何捕捉它?
【发布时间】:2017-06-16 03:29:03
【问题描述】:

我遇到了一个奇怪的问题,我的iOS App集成了Bugly来收集崩溃日志,启动时出现崩溃,但bugly无法收集。

我看到设备日志后,没有任何关于崩溃的信息。

我还安装了信号和异常处理程序,但所有这些都不起作用。 崩溃什么也没留下。

如何获取崩溃日志?

谢谢。

【问题讨论】:

  • 添加有问题的错误代码。
  • 对此我感到非常抱歉,因为我们的经理告诉我有关崩溃的情况,但是没有崩溃日志,我什至不知道导致崩溃的原因。所有崩溃收集工具都没有不行,如何收集崩溃日志?

标签: ios objective-c crash


【解决方案1】:

在 AppDelegate 中检查您的 applicationdidFinishLaunchingWithOptions:(NSDictionary *)launchOptions 方法。

您必须尽快从此方法中返回 YES,否则如果需要更多时间来启动,操作系统将终止应用程序。

【讨论】:

  • 谢谢,我在 AppDelegate 中的 applicationdidFinishLaunchingWithOptions:(NSDictionary *)launchOptions 方法中做了一些初始化工作。我使用了一些第三方 SDK,建议在 applicationdidFinishLaunchingWithOptions 中进行初始化。我应该将这些作品移到线程中吗?很久以前在设备日志中发现了一个崩溃日志。它记录了一个错误代码0x8badf00d。我搜索网络找到定义,我会尝试你的建议,谢谢。
  • 是的,将这些初始化移动到线程或您想要的其他地方...我认为这将解决您的问题。
【解决方案2】:

当试图追踪没有日志的崩溃时。我通常创建项目的副本(通过 git 签出新分支效果很好),然后在尝试成功启动项目时开始删除文件和删除代码。一旦我删除了几乎所有内容,如果它仍然无法正常工作,那么我从头开始创建一个新项目并开始将代码复制并粘贴到新项目中。通常在这个过程中的某个时刻,我会有一个启示。

这不是一个优雅的解决方案,但它确实有效。有一次我删除了项目中的所有内容,所以我开始了一个新项目,当我将故事板复制到新项目时,新项目开始崩溃。我在文本编辑器中打开故事板,发现一些奇怪的代码不知何故被损坏了..

【讨论】:

  • 谢谢,但是崩溃并不是每次都出现,只是在极少数情况下才会出现。由于我没有找到重现的方法,所以我找不到导致崩溃的原因。但是崩溃报告系统不起作用。所以我没有崩溃日志,这就是为什么这个问题如此困难。
  • 您知道这种崩溃多久发生一次吗?可能是操作系统错误,还是您无法控制的其他问题?
  • 它每天崩溃大约 1 或 2 次,有时效果很好。我向崩溃报告系统的自定义服务寻求帮助,他们告诉我如果应用程序被 iOS 杀死(缺乏资源),看起来像崩溃,崩溃报告系统不会报告崩溃。所以我修复了内存泄漏整个应用程序。这两天,似乎运行良好,经理没有告诉我发生崩溃的情况。我不知道真正的崩溃原因是否已经解决。
猜你喜欢
  • 2013-10-31
  • 1970-01-01
  • 1970-01-01
  • 2011-05-01
  • 1970-01-01
  • 2017-02-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多