在崩溃时自动重新启动应用程序?

时间:2011-01-25 15:45:25

标签: c++ android unit-testing android-ndk

在Android上,我正在使用NDK运行一个应用程序,该应用程序在C ++中运行一系列测试。如果其中一个测试失败,这很可能意味着崩溃,我希望应用程序重新启动并从下一次测试开始。

我希望我可以使用例外,但NDK不支持它们。

这可能吗?

1 个答案:

答案 0 :(得分:3)

  1. 为什么您的应用程序必须崩溃?为什么不抓住任何被抛出的异常?即使编译器没有强制您添加try..catch块,也可能会抛出RuntimeExceptions
  2. 您也可以使用Thread.setDefaultUncaughtExceptionHandler。请注意,必须按线程调用此方法。
  3. 如果由于某种原因,上述解决方案不适合您,您可以创建一个充当watchdog timer的后台服务。
  4. 编辑:检查this link:获取支持C ++异常的自定义NDK版本。我在this thread找到了它。