打开和关闭手机扬声器

编程入门 行业动态 更新时间:2024-10-25 22:33:56

打开和关闭手机<a href=https://www.elefans.com/category/jswz/34/1769680.html style=扬声器"/>

打开和关闭手机扬声器

调用OpenSpeaker方法后打开扬声器有效,但大约过了1-2秒后又自动变成听筒模式了。太诡异了!! 请问哥哥姐姐们,这是为啥????
已添加权限: <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>

代码如下:
//打开扬声器
public void OpenSpeaker() 
{

   try
   {
     AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
     audioManager.setMode(AudioManager.ROUTE_SPEAKER);
     currVolume = audioManager.getStreamVolume(AudioManager.STREAM_VOICE_CALL);

     if(!audioManager.isSpeakerphoneOn()) 
     {
       audioManager.setSpeakerphoneOn(true);
       audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,                                                                             
                                                   audioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL ),
                                                 AudioManager.STREAM_VOICE_CALL);
     }
  } 
  catch (Exception e) 
  {
      e.printStackTrace();
  }
}

//关闭扬声器
public void CloseSpeaker() 
{
    try 
    {
        AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
        if(audioManager != null) 
        {
            if(audioManager.isSpeakerphoneOn()) 
            {
              audioManager.setSpeakerphoneOn(false);
              audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,
                                                         currVolume,
                                                         AudioManager.STREAM_VOICE_CALL);
            }
        }
    }
    catch (Exception e) 
    {
        e.printStackTrace();
    }
}

更多推荐

打开和关闭手机扬声器

本文发布于:2024-02-17 06:45:33,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1693066.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:扬声器   手机

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!