Android 如何在java中捕获所有可能的场景

Android 如何在java中捕获所有可能的场景,android,exception,memory,Android,Exception,Memory,我正在用Android开发一款视频游戏,它会意外地随机关闭。在这种情况下,我的游戏循环中包含以下代码: try { //game loop } catch(Exception e) { //... } catch(OutOfMemoryError e) { //... } 出于某种原因,该应用程序没有输入任何这些捕获。我认为这是一个内存问题,但“OutOfMemoryError”应该

我正在用Android开发一款视频游戏,它会意外地随机关闭。在这种情况下,我的游戏循环中包含以下代码:

    try {
        //game loop
    }
    catch(Exception e)
    {
        //...
    }
    catch(OutOfMemoryError e)
    {
        //...
    }
出于某种原因,该应用程序没有输入任何这些捕获。我认为这是一个内存问题,但“OutOfMemoryError”应该涵盖它,对吗?或者这仅仅涵盖了我们突然需要大量内存的情况


我想知道是否有捕获条件来捕获所有可能的情况,因为这让我发疯

不看任何代码。我认为,也许你的gameloop中有一个无止境的循环,这会导致应用程序没有响应。这会导致操作系统处理任何异常或引发的问题。

catch(异常e)
将捕获任何发生的异常。OutOfMemoryError捕获永远不会发生。仅供参考,异常e应该处理所有异常,因为它是基类。基于你发布的一些通用代码,我不能发表太多评论。你的Logcat输出是什么?嗯,我在游戏中有一些递归操作,但它们不是有限的。我遇到的这些问题只是发生在旧设备上。。。因此,它必须与性能相关。应用程序是否可能因为认为实际运行的操作耗时太长而决定关闭?可能是。。。但在更好的设备中,它永远不会关闭。您是否收到“应用程序没有响应”弹出窗口?没有。它只是关闭,什么也不说。这就是为什么我对它如此生气。我不知道发生了什么事。我还想知道这是否是因为手机在我玩的时候变得很热……如果是这样的话,整个手机可能会关机,而不仅仅是应用程序。你在做什么递归操作?