5

我使用AudioRecord API 在我的应用程序中录制音频 (WAV),并成功录制。但是当我尝试在其他录制应用程序在后台运行时录制时,我的应用程序表现得很奇怪。

MediaRecorder API 在另一个记录器正在运行时尝试开始记录时引发异常,但 AudioRecord API 会初始化记录器实例并且不会引发任何异常,因此我无法确定是否有任何记录器实例正在运行。

这种情况已在三星 S3 的默认录音机中处理,当我尝试录制时它说

" 无法开始新的录制。其他应用程序已经在录制"

在我的应用程序的记录器启动之前,我如何确定是否有任何其他记录器正在运行?

4

1 回答 1

7

我找到了解决这个问题的方法

由于与MediaRecorder API 不同, AudioRecord不会引发任何异常,因此我已经寻求另一种解决方法。

当另一个记录器实例正在运行时,我发现read方法返回0而不是ERROR_INVALID_OPERATIONERROR_BAD_VALUE。因此,如果第一次读取操作返回0,我会显示一条错误消息“记录器无法初始化”。

于 2013-07-17T03:58:27.297 回答