【问题标题】:how do we know if ios app is crashed in last launch?我们如何知道 ios 应用程序在上次启动时是否崩溃?
【发布时间】:2015-05-16 09:47:32
【问题描述】:

我们如何知道 ios 应用程序是否在上次启动时崩溃了?

我想在应用启动时重置一些设置,并发现应用在上次会话中崩溃。喜欢不提示评分。

【问题讨论】:

  • "喜欢不提示评分。"这很聪明 :) 您可能还想设置一个标志,以便在崩溃后的接下来几个月内不提示评分。
  • 是的,在审核中听到了很多崩溃投诉。显然,我们正在努力解决所有这些问题,但同时抑制评分提示可能有助于维持应用商店排名。

标签: ios objective-c xcode crash crash-reports


【解决方案1】:

一种方法是在applicationDidBecomeActive: 应用程序委托方法的文档文件夹中创建一个空文件,例如lock_file.tmp,然后在applicationWillResignActive: 方法中删除该文件。

通常,应用程序应该在文档文件夹中的 applicationDidBecomeActive: 中看不到 lock_file.tmp 文件,因为 applicationWillResignActive: 会删除它。但是,如果应用程序崩溃,该文件将保留在那里,因此您的程序将能够检测到之前的运行已因崩溃而中断。

【讨论】:

  • 谢谢。我正在尝试类似的方法,但没有奏效。我将标志存储在 nsuserdefaults 中,我猜它没有同步。创建文件似乎是一种更好的方法。
【解决方案2】:

您可以简单地在 applicationWillTerminate 上的 NSUserDefaults 中设置一个键。

如果在您的下一个 didFinishLaunchingWithOptions 中未设置密钥,这意味着这是第一次运行应用程序,或者是应用程序最后一次因崩溃而终止。

【讨论】:

    猜你喜欢
    • 2015-03-10
    • 1970-01-01
    • 1970-01-01
    • 2018-12-27
    • 1970-01-01
    相关资源
    最近更新 更多