37 votes

Comment enregistrer une voix et enregistrer Call in Android?

S'il vous plaît, aidez-moi si vous savez comment enregistrer la voix, et aussi enregistrer la voix de l'appelant et du correspondant pendant un appel téléphonique. Si quelqu'un le sait, donnez-moi un indice.

10voto

Abhijit Chakra Points 1103

Oui, c'est possible

 final MediaRecorder Callrecorder = new MediaRecorder();
Callrecorder.setAudioSource(MediaRecorder.AudioSource.VOICE_CALL);
                        Callrecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
                        Callrecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
Callrecorder.setOutputFile(filepath);

     try {
            Callrecorder.prepare();
            } catch (IllegalStateException e) {
            System.out.println("Error is happened here in Prepare Method1");
            // TODO Auto-generated catch block
            e.printStackTrace();
            } catch (IOException e) {

            //throwing I/O Exception
            System.out.println("Error is happened here in Prepare Method2");
            // TODO Auto-generated catch block
            e.printStackTrace();
            }
            try{
            Callrecorder.start();
            }catch(IllegalStateException e){
            e.printStackTrace();
            //Here it is thorowing illegal State exception
            System.out.println("Error is happened here in Start Method");
            }


                }
 

pour arrêter, vous pouvez utiliser

 Callrecoder.stop();
 

6voto

gnobal Points 7377

Autant que je sache, toutes les applications qui enregistrent des appels vocaux sur Android ont le même problème: elles ne fonctionnent que sur certains téléphones, tandis que sur d'autres, vous ne pouvez entendre qu'un seul côté de la conversation. Certaines de ces applications tentent de résoudre ce problème en enregistrant également à partir du microphone.

Si vous avez des autorisations root sur votre téléphone Android, alors je crois qu'il existe des applications qui fonctionnent mieux car elles ont accès aux flux de niveau inférieur, comme Emmanuel l'a spécifié dans sa réponse.

5voto

Emmanuel Points 6262

Vous ne pouvez pas enregistrer une conversation téléphonique sur Android. Les flux se trouvent dans le système d'exploitation de niveau inférieur et ne sont pas accessibles au niveau de l'application. Pardon.

5voto

ingsaurabh Points 10892

Je ne sais pas si c'est possible, mais dans la mesure où l'API va

 recorder.setAudioSource(MediaRecorder.AudioSource.VOICE_CALL);
 

cette ligne est bien compilée dans mon code où enregistreur est un objet de MediaRecorder et j’ai travaillé sur un tel projet, mais plus tard, le projet a été vidé afin de ne pas savoir si cela fonctionne ou non.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X