C# 制作一款同时记录呼叫者和接收者的通话记录应用程序的正确方法是什么';她的声音
我正在尝试构建一个呼叫记录android应用程序(XamarinAndroid),但如果我使用它,我无法记录通话的双方 音频源至“麦克风” 它只记录呼叫者的声音,而不记录接收者的声音。 如果我将音频源设置为“VoiceCall”或“VoiceCommunication”,它就会崩溃 这是我的代码:C# 制作一款同时记录呼叫者和接收者的通话记录应用程序的正确方法是什么';她的声音,c#,android,xamarin.android,call-recording,C#,Android,Xamarin.android,Call Recording,我正在尝试构建一个呼叫记录android应用程序(XamarinAndroid),但如果我使用它,我无法记录通话的双方 音频源至“麦克风” 它只记录呼叫者的声音,而不记录接收者的声音。 如果我将音频源设置为“VoiceCall”或“VoiceCommunication”,它就会崩溃 这是我的代码: "AudioSavePathInDevice = Android.OS.Environment.ExternalStorageDirectory.AbsolutePath
"AudioSavePathInDevice =
Android.OS.Environment.ExternalStorageDirectory.AbsolutePath+ "/" +"AudioRecording.3gp";
mediaRecorder = new MediaRecorder();
mediaRecorder.SetAudioSource(AudioSource.VoiceCommunication);
mediaRecorder.SetOutputFormat(OutputFormat.ThreeGpp);
mediaRecorder.SetAudioEncoder((AudioEncoder.AmrNb));
mediaRecorder.SetOutputFile(AudioSavePathInDevice);"
这就是我所要求的许可:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
我正在android 8.1 Oreo设备(Redmi note 5 pro)中调试
请帮我解决这个问题请具体一点。您应该提供相关的代码片段、布局等。请查看。另外,请详细查看。是否有错误消息?或者没有对运行时权限的请求?每当我选择任何音频源时,除了Mic“未处理的异常:Java.Lang.RuntimeException:start failed.Occessed”外,都会显示此异常。我已在运行时请求上述权限。请尝试添加
mediaRecorder.SetAudioSampligrate(11205)代码>,如果仍然不工作,可能设备制造商不支持此功能,因为某些设备制造商不支持此功能。请更具体一些。您应该提供相关的代码片段、布局等。请查看。另外,请详细查看。是否有错误消息?或者没有对运行时权限的请求?每当我选择任何音频源时,除了Mic“未处理的异常:Java.Lang.RuntimeException:start failed.Occessed”外,都会显示此异常。我已在运行时请求上述权限。请尝试添加mediaRecorder.SetAudioSampligrate(11205)代码>,如果仍然不工作,可能设备制造商不支持此功能,因为某些设备制造商不支持此功能