Android(安卓)開發中AudioManager聲音管理用法

來源:互聯網
上載者:User

AudioManager 類位於 android.Media 包中,該類提供存取控制音量和鈐聲模式的操作

以下分別是AudioManager設定聲音模式和調整聲音大小的方法。

 如何擷取聲音管理器:

 代碼如下 複製代碼

AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);

 

裡面主要的方法:

A、設定聲音模式

 代碼如下 複製代碼

//聲音模式
AudioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
//靜音
AudioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
//震動模式
AudioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);


B、調整聲音大小

 代碼如下 複製代碼

//減少聲音音量
AudioManager.adjustVolume(AudioManager.ADJUST_LOWER,  0);
//調大聲音音量
AudioManager.adjustVolume(AudioManager.ADJUST_RAISE, 0);

(當傳入的第一個參數為 AudioManager.ADJUST_LOWER 時,可將音量調小一個單位,傳入AudioManager.ADJUST_RAISE 時,則可以將音量調大一個單位。)

 
getMode()擷取音頻模式

getRingerMode()擷取鈴聲震動模式

AudioManager
 

public void setStreamMute (int streamType, boolean state)


靜音或不靜音音頻流。

靜音命令被保護以免用戶端進程死亡:若具有流上的活動靜音請求的進程死亡,這個流會自動取消靜音。

對於給定的流,靜音請求是累計的:AudioManager會從一個或多個用戶端接收數個靜音請求,只有當接收到相同數目的取消靜音請求時流才會取消靜音。

為了更好的使用者體驗,應該程式必須在onPause()中取消已靜音流,若合適在onResume()中再次靜音


這個方法只能用於代替音頻設定的平台範圍管理應用程式或主要電話應用程式。


參數

streamType                 欲靜音/取消靜音的流。

state                           請求靜音狀態:若為true,靜音;若為false,取消靜音。

 

這裡如果使用了和手機震動有關的模式,記得添加許可權。android.permission.VIBRATE哦!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.