Android
发布时间:2022-04-28 发布网站:大佬教程 code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 为什么MediaRecorder的start()方法抛出IllegalStateException?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试录制音频,但MediaRecorder类的start()
方法会抛出IllegalStateException.
我使用以下
代码:
@H_547_3
@mediaRecorder recorder = new MediaRecorder(
);
recorder.setAu
diosource(MediaRecorder.Au
diosource.MIC
);
recorder.setOutputFormat(MediaRecorder
.outputFormat.THREE_GP
p);
recorder.setAu
dioEncoder(MediaRecorder.Au
dioEncoder.AMR_NB
);
recorder.setOutputFile("/sdcard/"
);
try
{
recorder.prepare(
);
} catch (IllegalStateException
E) {
// TODO Auto-generated catch block
e.printStackTrace(
);
} catch (IOException
E) {
// TODO Auto-generated catch block
e.printStackTrace(
);
}
Log.i("Try","Exception"
);
recorder.start(
);
并获得许可
<uses-permission android:name="android.permission.RECORD_AUdio" />
Vijay,recorder.setOutputFile(“/ sdcard /”
);正在设置目录,而不是
文件.
替换为:
@H_547_3
@mFil
ename = Environment.getExternalStorageDirectory().getAbsolutePath(
);
mFil
ename += "/yourau
diofile.3gp";
使用“/ sdcard”硬编码脆弱的路径,所以使用上面的方法
此外,为此,您必须添加
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
到您的AndroidManifext.xml
大佬总结
以上是大佬教程为你收集整理的android – 为什么MediaRecorder的start()方法抛出IllegalStateException?全部内容,希望文章能够帮你解决android – 为什么MediaRecorder的start()方法抛出IllegalStateException?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。