Я работаю над приложением "Call Recorder". Я дал все разрешения, но он не записывает голос входящего звонящего. Я использую MediaRecorder.
void startRecording() {
final SharedPreferences shared = PreferenceManager.getDefaultSharedPreferences(this);
int[] ss = new int[]{
MediaRecorder.AudioSource.VOICE_CALL,
MediaRecorder.AudioSource.VOICE_COMMUNICATION, // mic source VOIP
MediaRecorder.AudioSource.VOICE_RECOGNITION,
MediaRecorder.AudioSource.CAMCORDER,
MediaRecorder.AudioSource.MIC, // mic
MediaRecorder.AudioSource.DEFAULT, // mic
MediaRecorder.AudioSource.UNPROCESSED,
MediaRecorder.AudioSource.VOICE_UPLINK,
MediaRecorder.AudioSource.VOICE_DOWNLINK,
};
int i = Integer.valueOf(shared.getString(CallApplication.PREFERENCE_SOURCE, "-1"));
if (i == -1)
i = 0;
else
i = Sound.indexOf(ss, i);
String ext = shared.getString(CallApplication.PREFERENCE_ENCODING, "");
if (Storage.isMediaRecorder(ext)) {
startMediaRecorder(ext, ss, i);
} else {
startAudioRecorder(ss, i);
}
showNotificationAlarm(true);
}