在android中录制声音时是否可以将通话静音

Art*_*rka 4 java audio android call voice-recording

我想构建一个应用程序,我想在通话中调制声音。我编写了一个代码来记录声音并以不同的音调播放。现在我在通话时想要这个功能。我想静音通话记录声音然后用不同的音高播放它。如何使通话静音但仍记录音频。

Swe*_*ang 5

此答案可在通话期间使您的麦克风静音:

Boolean isMuted = false;
Run Code Online (Sandbox Code Playgroud)

然后在你的活动中,说一个 onClick

AudioManager audioManager = (AudioManager) getContext().getSystemService(Context.AUDIO_SERVICE);
if(!isMuted){

   if((audioManager.getMode()== AudioManager.MODE_IN_CALL)||(audioManager.getMode()== AudioManager.MODE_IN_COMMUNICATION)){
   audioManager.setMicrophoneMute(true);
  }
  isMuted = true;

 }else{

  if((audioManager.getMode()== AudioManager.MODE_IN_CALL)||(audioManager.getMode()== AudioManager.MODE_IN_COMMUNICATION)){
    audioManager.setMicrophoneMute(false);
    }
  isMuted = false;
 }
Run Code Online (Sandbox Code Playgroud)

请记住在清单中启用权限:

<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
Run Code Online (Sandbox Code Playgroud)