如何在应用崩溃时释放Android资源

时间:2010-12-24 06:26:46

标签: android crash finalize audiorecord

我正在使用Android AudioRecord应用。如果我没有在脚本末尾的AudioRecord对象上调用release()方法,则在重新启动手机之前它将无法正常运行。

这在处理这个项目时会成为一个主要的麻烦,因为如果应用程序崩溃(有时会在测试时出现并且出现意外的缓冲区溢出等),那么我每次都必须重新启动手机。

我有方法在我的AudioListener类的finalize()方法中释放缓冲区,我也称它们为主Activity的onStop()

当应用程序冻结或崩溃时,这些似乎都不起作用。有没有办法将释放操作附加到错误处理程序或确保应用程序执行某些代码以便即使在崩溃后正确释放资源的一般方法。

感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

创建自己的Application类(需要在AndroidManifest.xml中声明),然后覆盖方法:

Application.onLowMemory();
Application.onTerminate();

有关它的更多信息,请参阅Application

的Android手册