我正在开发一个 Android AudioRecord 应用程序。如果我没有在脚本末尾调用 AudioRecord 对象上的 release()
方法,则在重新启动手机之前它不会正确运行。
在处理这个项目时,这会成为一个主要麻烦,因为如果应用程序崩溃(有时会在测试时发生,并且存在意外的缓冲区溢出等),那么我每次都必须重新启动手机。
我有方法在 AudioListener 类的 finalize()
方法中释放缓冲区,我还将它们称为主 Activity 的 onStop()
。
当应用程序卡住或崩溃时,这些似乎都不起作用。有没有办法将释放操作附加到错误处理程序或某种通用方法来确保应用程序即使在崩溃后也能执行一些代码以正确释放资源。
感谢您的帮助。
最佳答案
创建自己的Application类(需要在AndroidManifest.xml中声明),然后覆盖方法:
Application.onLowMemory();
Application.onTerminate();
有关更多信息,请参阅 Android 手册中的 Application
关于android - 应用崩溃时如何释放Android资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4524603/