android調節聲音大小


android調節聲音大小


1.背景音樂的一些知識

網上好多關於背景音樂添加用到的類: 
MediaPlayer,SoundPool,AudioManager的資料,可是有時候解決不了我們在開發中遇到的問題 
我主要講述一下調節音量這方面的經驗吧

1:Android調節音量有很多可以調節系統的音量,媒體的音量,鬧鍾的音量,這時就需要用到AudioManager類

首先是得到AudioManager實例:
  • 1
  • 2
 AudioManager am=(AudioManager)getSystemService(Context.AUDIO_SERVICE);
  • 1

2.調整音量方法有兩種,一種是漸進式,即像手動按音量鍵一樣,一步一步增加或減少,另一種是直接設置音量值.

1.首先是步進的方法:

**public void adjustStreamVolume (int streamType, int direction, int flags); **
  • 1
  • 2
    am.adjustStreamVolume (AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);
  • 1
  • 解釋一下三個參數

    第一個streamType是需要調整音量的類型,這里設的是媒體音量,可以是:

    字段 說明
    STREAM_ALARM 警報
    STREAM_MUSIC 音樂回放即媒體音量
    STREAM_NOTIFICATION 窗口頂部狀態欄Notification,
    STREAM_RING 鈴聲
    STREAM_SYSTEM 系統
    STREAM_VOICE_CALL 通話
    STREAM_DTMF 雙音多頻,不是很明白什么東西

    第二個direction,是調整的方向,增加或減少,可以是:

    字段 說明
    ADJUST_LOWER 降低音量
    ADJUST_RAISE 升高音量
    ADJUST_SAME 保持不變,這個主要用於向用戶展示當前的音量量時播

    第三個flags是一些附加參數,只介紹兩個常用的

    字段 說明
    FLAG_PLAY_SOUND 調整音量時播放聲音
    FLAG_SHOW_UI 調整時顯示音量條,就是按音量鍵出現的那個

2.直接設置音量值得方法:

public void setStreamVolume (int streamType, int index, int flags) { am.setStreamVolume(AudioManager.STREAM_MUSIC, /*修改第二個參數為一個固定的值,就是設置成功。 下面的方法:獲取音樂類型的音頻流的最大值*/ am.getStreamMaxVolume(AudioManager.STREAM_MUSIC), AudioManager.FLAG_PLAY_SOUND); }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM