我一直试图让我的Android应用程序使用麦克风并开始录制。 但该应用程序只是在AudioRecord StartRecording()方法中崩溃。
_recorder = new AudioRecord(AudioSource.Mic, RECORDER_SAMPLERATE, RECORDER_CHANNELS, RECORDER_AUDIO_ENCODING, _bufferSize);
if (_recorder.State == State.Initialized)
_recorder.StartRecording(); // <-- HANGS ON THIS LINE
请帮忙。我是否需要将StartRecording放在线程中?
我正在使用Xamarin Android,代码基于http://www.edumobile.org/android/audio-recording-in-wav-format-in-android-programming/
答案 0 :(得分:1)
如果您确定代码正确,则使用Async Task.it将起作用
答案 1 :(得分:1)
回答我的问题 - 来自Vyshak的线索(谢谢)。似乎应该在一个单独的线程中调用StartRecording(这让我想知道为什么许多示例代码不会这样做)。
对于今后这样做的人来说,一个很好的参考点就是这个示例代码:https://developer.xamarin.com/samples/monodroid/Example_WorkingWithAudio/