如何在ROOTED设备上记录VOIP呼叫?

时间:2018-07-14 07:33:30

标签: java android voip audio-recording rooted-device

我目前正在研究一个项目,该项目需要为诸如(Whatsapp和其他使用VOIP进行呼叫的应用程序)之类的应用程序记录VOIP呼叫

我尝试使用下面的代码在进行whatsapp调用时触发事件,因此同时启动了录音机,但这是问题所在

recorder = new MediaRecorder();
    recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    //i have tried VOICE_COMMUNICATION , VOICE_CALL but same issue 
    recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
    recorder.setOutputFile(file);
    recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

try {
    recorder.prepare();

    recorder.start();
    checkRecording = true;
    Log.e("Audio", "recording starts") ;
    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            Log.e("Audio", "recording stops") ;
            recorder.stop();
            checkRecording = false;
        }
    }, 60000);

} catch (IllegalStateException e) {
    e.printStackTrace();
    Log.e("Audio stop", "error "+e) ;
} 

当开始录制音频并且同时进行whatsapp通话时,接收方无法收听我的声音,但是我只能听到他的声音,而音频只能录制我的声音-基本上,在录制开始时,它使用与whatsapp相同的音频源,因此whatsapp会被阻止麦克风,这就是为什么接收者听不到我的声音

我需要一种在多个应用程序中使用相同音频源的方法,因此当我开始录制时,它不应忙于麦克风,因此whatsapp也可以使用它?

因此,任何人都可以帮助记录通过voip进行的通话(Android Studio),或指导我我做错了什么地方或任何建议都可以帮助我!

我正在为这个植根于模拟器的应用程序制作此应用程序,因此它的任何关键方式也可以娱乐

  

这个问题已经被提出了,但是没有得到回答,所以   任何人都可以回答或建议解决此问题的方法

1 个答案:

答案 0 :(得分:0)

到目前为止,无法在Android中记录VoIP通话。

正常通话不使用麦克风,因此另一个应用程序可以获取麦克风并记录对话。

但是在VoIP通话中,该应用程序将使用麦克风,因此另一个应用程序如果尝试失败并出现错误,则无法获取。如果该应用尝试在VoIP通话之前获取麦克风,则通话期间对方将听不到任何声音。

因此,最重要的是,到目前为止,没有这样的应用程序可以在Android中记录VoIP通话。

多维数据集呼叫记录器或任何声称可记录VoIP呼叫的间谍应用程序都不会在大多数电话上记录(即使已植根)。他们可能会在某些带有双麦克风的中文手机上工作。