我编写了一个应用程序,它将不断从传感器板请求数据并将数据发送到服务器。我使用的摩托罗拉Droid手机尚未激活以测试我的应用程序。我发现有时几个小时后手机会重启。我只是想知道它是由于我的应用程序耗尽内存造成的。如果应用程序的手机内存耗尽,应该强行关闭应用程序还是重启手机?
如果这导致应用程序内存不足,我该如何释放和清除变量。系统应该自动执行此操作吗?我认为主要问题可能是我设置了一个全局json变量来接收和发送所有数据。发送数据后,我只需用 new JSONObject()来启动变量。我只是想知道旧的会自动发布吗?如果没有,我该如何释放它?
由于
答案 0 :(得分:1)
如果某个应用程序的手机内存耗尽,则会抛出异常,如果无法捕获该异常,则会强制关闭该应用。
系统自动清理未使用的内存。是的,您的旧JSONObject
应由garbage collector自动释放。
要了解如何在Android程序中查找内存泄漏,请阅读Android开发者博客中的文章:Memory Analysis for Android Applications