可以輕松地控制鈴聲音量和鈴聲配置文件,即:(無(wú)聲,震動(dòng),響亮等)在Android中。 Android提供了訪問(wèn)這些控件AudioManager類。
為了使用AndroidManager類,必須通過(guò)調(diào)用getSystemService()方法首先創(chuàng)建AudioManager類的一個(gè)對(duì)象。以下是其語(yǔ)法給出如下。
private AudioManager myAudioManager; myAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
實(shí)例化AudioManager類的對(duì)象之后,可以使用setRingerMode方法來(lái)設(shè)置設(shè)備的音頻或振鈴。以下給出的語(yǔ)法。
myAudioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
該setRingerMode方法取整數(shù)作為參數(shù)。對(duì)于每種模式,整數(shù)倍分配,將不同的模式之間區(qū)分在可能的模式。
| Sr.No | Mode & 描述 |
|---|---|
| 1 |
RINGER_MODE_VIBRATE 這種模式設(shè)置設(shè)備的振動(dòng)模式 |
| 2 |
RINGER_MODE_NORMAL 這種模式設(shè)置設(shè)備在正常(大聲)模式 |
| 3 |
RINGER_MODE_SILENT 這種模式設(shè)置設(shè)備在靜音模式 |
設(shè)定模式之后,可以調(diào)用getRingerMode()方法來(lái)獲得系統(tǒng)的設(shè)置狀態(tài)。其語(yǔ)法如下給出。
int mod = myAudioManager.getRingerMode();
除了setRingerMode方法,還有其他的方法,在AudioManager類來(lái)控制音量和其他模式。它們?nèi)缦旅媪谐觥?/p>
| Sr.No | 方法及說(shuō)明 |
|---|---|
| 1 |
adjustVolume(int direction, int flags) 這個(gè)方法調(diào)整最相關(guān)的數(shù)據(jù)流的量 |
| 2 |
getMode() 這個(gè)方法返回當(dāng)前的音頻模式 |
| 3 |
getStreamMaxVolume(int streamType) 此方法返回一個(gè)特定流的最大容積指數(shù) |
| 4 |
getStreamVolume(int streamType) 此方法返回一個(gè)特定流中的當(dāng)前量指數(shù) |
| 5 |
isMusicActive() 此方法檢查任何音樂(lè)是否是活動(dòng)的 |
| 6 |
startBluetoothSco() 這個(gè)方法啟動(dòng)藍(lán)牙SCO音頻連接 |
| 7 |
stopBluetoothSco() 這個(gè)方法停止藍(lán)牙SCO音頻連接。 |
下面的例子演示了如何使用AudioManager類。該包裝箱是一個(gè)基本的應(yīng)用程序,允許設(shè)置不同的鈴聲模式。
為了試驗(yàn)這個(gè)例子,需要在實(shí)際設(shè)備上運(yùn)行此程序。
| Steps | 描述 |
|---|---|
| 1 | 使用Android Studio創(chuàng)建Android應(yīng)用程序,并將其命名為AudioManager,創(chuàng)建這個(gè)項(xiàng)目確保目標(biāo)SDK編譯在Android SDK最新版本或使用更高級(jí)別的API |
| 2 | 修改 src/MainActivity.java 文件中添加AudioManager代碼 |
| 3 | 修改所需的布局XML文件res/layout/activity_main.xml添加GUI組件 |
| 4 | 修改 res/values/string.xml 文件,并添加必要的字符串組成部分 |
| 5 | 修改AndroidManifest.xml 添加必要的權(quán)限 |
| 6 | 運(yùn)行應(yīng)用程序并選擇運(yùn)行Android的設(shè)備,并在其上安裝的應(yīng)用和驗(yàn)證結(jié)果。 |
這里是 src/com.yiibai.audiomanager/MainActivity.java 的內(nèi)容
package com.yiibai.audiomanager; import android.media.AudioManager; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.TextView; public class MainActivity extends Activity { private Button Vibrate , Ring , Silent , Mode; private TextView Status; private AudioManager myAudioManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Vibrate = (Button)findViewById(R.id.button2); Ring = (Button)findViewById(R.id.button4); Silent = (Button)findViewById(R.id.button3); Mode = (Button)findViewById(R.id.button1); Status = (TextView)findViewById(R.id.textView2); myAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); } public void vibrate(View view){ myAudioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE); } public 上一篇:Android通知下一篇:Android 資源組織和訪問(wèn)