我有一个应用程序,它包含服务和活动,可以由服务为某些事件启动.该服务可以创建和使用AudioRecord和AudioTrack类 - 此时显示应用程序的活动.问题是如果Activity被暂停(即调用onPause())我开始得到RecordThread:缓冲区溢出错误?
我的猜测是AudioRecorder在主线程中运行.并且,即使它是由服务创建的,当Activity暂停读取停止因此缓冲区溢出?AudioRecorder读取必须在单独的线程中完成,即使它在服务中运行吗?
非常感谢任何帮助,谢谢.
当您没有足够快地从AudioRecord对象中提取数据时,会发生RecordThread缓冲区溢出.
你肯定应该有一个循环从sperate线程中的AudioRecord对象中提取数据,如果你的活动被暂停,你应该停止该线程(除非你想在后台记录.)
以下是一些工作实现的示例: