如何解决应用程序停止工作的错误?

时间:2015-07-20 06:19:13

标签: android out-of-memory

我的应用程序可能内存不足或存在问题。我在应用程序上有异常处理,所以如果我有异常它发送到我的电子邮件,这对调试很好,但最近我有一个奇怪的问题,当我把我的应用程序放到后台并启动2-3其他应用程序例如Gallery当我想重新打开我的应用程序实例时,它会显示我的应用程序停止工作并且没有异常发送给我,所以很难解决,请你帮我解决我的问题,或处理内存问题并重新启动整个应用程序显示应用程序已停止工作。

非常感谢你。如果您向我展示当应用程序处于调试模式时如何模拟内存问题,它也会有所帮助。

我的清单:

 <application
        android:name=".utils.JLApplication"
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="JustLook"
        android:largeHeap="true"
        android:noHistory="true"
        android:launchMode = "singleTop"
        android:theme="@style/JLTheme">

我也认为可能我的应用程序是正确的但是某些库或其他东西已经停止工作并抛出我的应用程序。但我不确定。我也注意到它经常发生在我实现谷歌api连接和融合位置监听器,但我也不确定它是否会导致这种问题,也许内存问题更可能是这里的错误。但我不知道如何找到它或解决它,因为它不会抛出异常。

2 个答案:

答案 0 :(得分:1)

我必须说你所描述的行为听起来非常正常,除了崩溃之外;)

Android需要为其他应用程序释放内存时会杀死后台应用程序。您遇到的崩溃必然与您在JLApplication的onCreate()中运行的代码有关。调试或发现此错误的最佳方法是以调试模式启动应用程序或传播日志。

您还可以查看Debug.waitForDebugger()。

顺便说一句,你应该有充分的理由在应用程序标签中包含以下内容 - “largeHeap”

答案 1 :(得分:1)

我不认为你的问题与记忆有关。 根据您描述问题的方式,我假设您的崩溃是由NullPointerException引起的。 正如MarkySmarky所描述的那样,Android会杀死后台应用以收集内存空间。

因此,请查看您的MainActivitys onResume或onStart。在恢复应用程序时,必须有一些处理程序,适配器等为null。

此外,我建议将Crashlytics添加到您的项目中。它会详细跟踪您的崩溃情况。如果有关于您的问题的崩溃报告,请在此处发布。