android音频管理器(AudioManager)

本文介绍了Android中AudioManager的使用,包括如何获取AudioManager对象,调整不同类型的音量,设置麦克风静音,以及切换电话铃声模式。重点讲解了adjustStreamVolume方法用于改变音乐、闹钟等音量,setMicrophoneMute方法用于控制麦克风静音,以及setRingerMode方法用于设定铃声模式。
摘要由CSDN通过智能技术生成

AudioManger对象通过getSystemService(Service.AUDIO_SERVICE)获取

AudioManger常用的几个方法void android.media.AudioManager.adjustStreamVolume(int streamType, int direction, int flags):第二个表示调整音乐的大小,第三个参数表示显示调整是的标志 AudioManager.FLAG_SHOW_UI;调整手机类型的声音;第一个参数的几个值

    STREAM_ALARM:手机闹铃的声音

    STREAM_MUSIC:手机音乐的声音

     STREAM_DTMF:DTMF音调的声音

     STREAM_RING:电话铃声的声音

     STREAM_NOTFICATION:系统提示的声音

      STREAM_SYSTEM:系统的声音

      STREAM_VOICE_CALL:语音电话声音

void android.media.AudioManager.setMicrophoneMute(boolean on)设置是否让麦克风设置静音

void android.media.AudioManager.setRingerMode(int ringerMode):设置手机电话铃声的模式;支持的几个属性值

   RINGER_MODE_NORMAL:正常的手机铃声

   RINGER_MODE_SILENT:手机铃声静音

   RING_MODE_VIBATE:手机震动

void android.media.AudioManager.setStreamMute(int streamType, boolean state)将指定的音量类型调整为静音


package com.android.xiong.audiotest;

import android.app.Activity;
import android.app.Service;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ToggleButton;

public class MainActivity extends Activity {

	private Button play, up, down;
	private ToggleButton mute;
	private AudioManager aManger;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		// 获取系统的音频服务
		aManger = (AudioManager) getSystemService(Service.AUDIO_SERVICE);
		// 获取界面的三个按钮和一恶搞ToggleButton
		play = (Button) findViewById(R.id.play);
		up = (Button) findViewById(R.id.up);
		down = (Button) findViewById(R.id.down);
		mute = (ToggleButton) findViewById(R.id.mute);
		// 绑定监听事件
		play.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				// 初始化MediaPlay对象 ,准备播放音乐
				MediaPlayer mPlayer = MediaPlayer.create(MainActivity.this,
						R.raw.earth);
				// 设置循环播放
				mPlayer.setLooping(true);
				// 开始播放
				mPlayer.start();

			}
		});

		up.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				// 指定调节音乐的音频,增大音量,而且显示音量的图形示意
				aManger.adjustStreamVolume(AudioManager.STREAM_MUSIC,
						AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);
				
			}
		});
		down.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				// 指定调节音乐的音频,增大音量,而且音量的图形示意
				aManger.adjustStreamVolume(AudioManager.STREAM_MUSIC,
						AudioManager.ADJUST_LOWER, AudioManager.FLAG_SHOW_UI);

			}
		});
		mute.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				aManger.setStreamMute(AudioManager.STREAM_MUSIC, true);
				
			}
		});

	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

}



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值