11
VOICE_CALL, VOICE_DOWNLINK ,VOICE_UPLINK  

不在android 4.0上工作,但在android 2.3(实际设备)上工作,我上传了一个虚拟项目来记录所有拨出电话,以便您自己查看

http://www.mediafire.com/?img6dg5y9ri5c7rrtcajwc5ycgpo2nf

你只需要更改audioSource = MediaRecorder.AudioSource.MIC;audioSource = MediaRecorder.AudioSource.VOICE_CALL;第 118 行TService.java

如果您遇到任何错误,请告诉我。任何与之相关的建议都将被接受。

4

4 回答 4

16

经过大量搜索,我发现一些制造商已经关闭了对此类功能的访问,因为在某些国家/地区不允许通话录音。如果有人发现这样的问题并以其他方式获得解决方案,那么将其发布在这里可能对许多人有帮助,因为很多人都有同样的问题。

于 2013-02-09T07:32:06.590 回答
1

尝试使用MediaRecorder.AudioSource.VOICE_RECOGNITION. 我遇到了同样的问题 - 默认情况下,ASUS Transformer 在后置摄像头附近使用麦克风,在这种情况下音频非常静音。VOICE_CALL在这款平板电脑上不起作用,我已经尝试过VOICE_RECOGNITION- 在这种情况下,它使用前置麦克风并且音量可以。

于 2014-07-24T08:18:17.057 回答
1

好的,就我而言,这段代码(谢谢eyal!)适用于三星 Galaxy Note 6:

String manufacturer = Build.MANUFACTURER;
if (manufacturer.toLowerCase().contains("samsung")) {
    recorder.setAudioSource(MediaRecorder.AudioSource.VOICE_COMMUNICATION);
} else {
    recorder.setAudioSource(MediaRecorder.AudioSource.VOICE_CALL);
}
于 2017-11-13T07:04:05.100 回答
-2

你尝试添加这个,它可能是

new Handler().postDelayed(new Runnable() {
    @Override
    public void run() {
        // TODO Auto-generated method stub
        mMediaRecorder.start();
    }
}, 1000);
于 2016-05-23T13:52:24.060 回答