Marshmallow 及以上版本的 Android 通话录音问题

Kis*_*hor 6 android phone-call recording android-6.0-marshmallow call-recording

我正在使用自动通话记录器应用程序,我可以使用MediaRecorder.AudioSource.VOICE_CALL在 android Marshmallow 下录制语音通话,从 android marshmallow 无法使用 VOICE_CALL 录制语音通话。我设法使用MediaRecorder.AudioSource.MIC进行录制,但这里传入的语音没有被录制,我想在正常模式下录制语音通话,而不是在扬声器模式下。我尝试了很多例子并搜索了很多然后我写了这个问题。请帮我。谷歌播放有一个应用程序可以记录通话中的双方语音,名为“通话记录器 - 自动通话记录器”它在棉花糖中是如何工作的,还有其他方法可以记录通话吗?

    int Media;
    if (Build.VERSION.SDK_INT >= 24) {
        Media = MediaRecorder.AudioSource.VOICE_COMMUNICATION;
    }else if (Build.VERSION.SDK_INT==23){
        Media = MediaRecorder.AudioSource.MIC;
    }
    else{
        Media = MediaRecorder.AudioSource.VOICE_CALL;
    }

    CallRecord callRecord = new CallRecord.Builder(this)
            .setRecordFileName("")
            .setRecordDirName("CallRecord")
            .setRecordDirPath(Environment.getExternalStorageDirectory().getPath()) 
            .setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB)
            .setOutputFormat(MediaRecorder.OutputFormat.AMR_NB)
            .setAudioSource(Media) 
            .setShowSeed(true)
            .build();
    callRecord.startCallRecordService();
Run Code Online (Sandbox Code Playgroud)