使用录音机对象的标准步骤

 
权限:<uses-permission android:name="android.permission.READ_PHONE_STATE" />
   <uses-permission android:name="android.permission.RECORD_AUDIO" />
   
代码:
TelephonyManager.CALL_STATE_OFFHOOK通话状态 2
//开始录音
     //1.实例化一个录音机
     MediaRecorder mediaRecorder = new MediaRecorder();
     //2.指定录音机的声音源   来源定为.MIC麦克风(一般都用这个.MIC,欧美一般不允许监听来电人的音频。.VOICE_CALL就是监听打电话和接电话的所有声音)
     mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
     //3.设置录制的文件输出的格式
     mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);
     //4.指定录音文件的名称
     File file = new File(Environment.getExternalStorageDirectory(),System.currentTimeMillis()+".3gp");
     mediaRecorder.setOutputFile(file.getAbsolutePath());
     //5.设置音频的编码
     mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
     //6.准备开始录音
     mediaRecorder.prepare();
     //7.开始录音
     mediaRecorder.start();
     
TelephonyManager.CALL_STATE_IDLE://空闲状态。0
     //8.停止捕获
     mediaRecorder.stop();
     //9.释放资源
     mediaRecorder.release();
     mediaRecorder = null;
     System.out.println("录制完毕,上传文件到服务器。");
     
     
     
附录:
// 后台监听电话的呼叫状态。
  // 得到电话管理器
  tm = (TelephonyManager) this.getSystemService(TELEPHONY_SERVICE);
  listener = new MyListener();
  tm.listen(listener, PhoneStateListener.LISTEN_CALL_STATE);

你可能感兴趣的:(录音机)