標籤:android開發之控制手機音頻 audiomanager的使用 android開發控制手機音量
本執行個體通過MediaPlayer播放一首音樂並通過AudioManager控制手機音頻,關於AudioManager的詳解可參照:Android開發之AudioManager(音頻管理器)詳解
程式運行:
執行個體代碼:
package com.jph.audiomanagerdemo;import android.media.AudioManager;import android.media.MediaPlayer;import android.os.Bundle;import android.app.Activity;import android.app.Service;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.CompoundButton;import android.widget.CompoundButton.OnCheckedChangeListener;import android.widget.ToggleButton;/** * Describe:</br> * 控制資料音頻 * 本執行個體通過MediaPlayer播放一首音樂並 * 通過AudioManager控制手機音頻 * */public class AudioManagerDemo extends Activity {Button btnPlay,btnUp,btnDown;ToggleButton btnMute;AudioManager aManager;MediaPlayer mPlayer;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);btnDown=(Button)findViewById(R.id.btnDown);btnPlay=(Button)findViewById(R.id.btnPlay);btnUp=(Button)findViewById(R.id.btnUp);btnMute=(ToggleButton)findViewById(R.id.btnMute);//初始化AudioManageraManager=(AudioManager) getSystemService(Service.AUDIO_SERVICE);OnClickListener listener=new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubswitch (v.getId()) {case R.id.btnPlay://初始化MediaPlayer為播放音樂做準備mPlayer=MediaPlayer.create(AudioManagerDemo.this, R.raw.music);//設定音樂迴圈播放mPlayer.setLooping(true);//播放mPlayer.start();break;case R.id.btnUp://指定調節音樂的音頻為增大,並顯示音量圖形aManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);break;case R.id.btnDown://指定調節音樂的音頻為減小,並顯示音量圖形aManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_LOWER, AudioManager.FLAG_SHOW_UI);break;default:break;}}};//為按鈕添加監聽器btnDown.setOnClickListener(listener);btnPlay.setOnClickListener(listener);btnUp.setOnClickListener(listener);btnMute.setOnCheckedChangeListener(new OnCheckedChangeListener() {@Overridepublic void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {// TODO Auto-generated method stub//設定音樂靜音aManager.setStreamMute(AudioManager.STREAM_MUSIC, isChecked);}});}}main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"> <Button android:id="@+id/btnPlay" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:text="播放"/> <Button android:id="@+id/btnUp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:layout_below="@+id/btnPlay" android:text="增大音量"/> <Button android:id="@+id/btnDown" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:layout_below="@+id/btnUp" android:text="減小音量"/> <ToggleButton android:id="@+id/btnMute" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:layout_below="@+id/btnDown" android:textOn="關閉靜音" android:textOff="開啟靜音"/></RelativeLayout>