1

我的应用程序在前台或后台使用AudioRecord API 录制音频(当应用程序最小化时),但是当用户从应用程序管理器强制停止应用程序时,音频文件会损坏。

我已经设法停止录音机并在其他情况下更新音频标题。但是当应用程序被强制停止时,它不会得到任何回调。

如何处理这种情况?

4

2 回答 2

2

根据这个答案

强制停止应用程序将终止整个进程(即使用 Process.killProcess(int pid))。与应用程序关联的所有资源都将被内核删除和释放。所以不,你没有办法拦截这个动作

所以最好在代码的关键部分使用错误处理来检测崩溃。

于 2013-06-21T06:53:33.807 回答
1

基本上你不能这样做。原因是通过强制关闭应用程序系统正在杀死进程并且内存中没有更多代码来处理这个问题。

一种解决方法是在清单中注册应用程序崩溃意图,并通过添加 android:process="com.test.process" 声明此接收器在另一个进程中运行。您可以在此接收器中启动服务并执行您想要的操作。这种方法的问题是您无法访问原始应用程序内存,但有一些关于应用程序的数据会在 Intent extras 中强制关闭。

于 2014-10-01T11:57:06.613 回答