Проблема с записью звонков в Android в версии Marshmallow и выше

Я работаю с приложением для автоматической записи вызовов, я могу записывать голосовой вызов на Android Marshmallow ниже, используя MediaRecorder.AudioSource.VOICE_CALL, из Android-зефира не может записывать голосовой вызов с помощью VOICE_CALL. Мне удалось записать с помощью MediaRecorder.AudioSource.MIC, но здесь входящий голос не записывается, и я хочу записывать голосовой вызов в обычном режиме, а не в режиме динамика. Я перепробовал много примеров и много искал, после чего пишу этот вопрос. Пожалуйста, помогите мне. В Google Play есть приложение, которое записывает голос с обеих сторон в вызове, с именем "Call Recorder - автоматический регистратор звонков". Как оно работает в зефире, есть ли другой способ записать звонок?

    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();

Привет, Кишор, я также работаю над записью звонков, но не работаю в Above Marshmallow. Вы нашли решение по этому поводу. Не могли бы вы мне помочь?

Naveen 10.08.2019 08:01

Какой библиотекой вы пользовались Кишор?

Naveen 10.08.2019 08:32

Решением будет укоренение телефона, чтобы наше приложение работало как системные приложения? Чтобы мы могли использовать MediaRecorder.AudioSource.VOICE_CALL для записи

Ameena Shafeer 04.02.2020 13:22
6
3
695
0

Другие вопросы по теме