MainActivity.java

  1. package com.wwj.serviceandboardcast;
  2.  
  3. import android.app.Activity;
  4. import android.app.Service;
  5. import android.media.AudioManager;
  6. import android.media.MediaPlayer;
  7. import android.os.Bundle;
  8. import android.view.View;
  9. import android.view.View.OnClickListener;
  10. import android.widget.Button;
  11. import android.widget.CompoundButton;
  12. import android.widget.CompoundButton.OnCheckedChangeListener;
  13. import android.widget.ToggleButton;
  14.  
  15.  
  16. public class MainActivity extends Activity
  17. {
  18. Button play, up, down;
  19. ToggleButton mute;
  20. AudioManager aManager;
  21. @Override
  22. public void onCreate(Bundle savedInstanceState)
  23. {
  24. super.onCreate(savedInstanceState);
  25. setContentView(R.layout.main);
  26. // 获取系统的音频服务
  27. aManager = (AudioManager) getSystemService(
  28. Service.AUDIO_SERVICE);
  29. // 获取界面中三个按钮和一个ToggleButton控件
  30. play = (Button) findViewById(R.id.play);
  31. up = (Button) findViewById(R.id.up);
  32. down = (Button) findViewById(R.id.down);
  33. mute = (ToggleButton) findViewById(R.id.mute);
  34. // 为play按钮的单击事件绑定监听器
  35. play.setOnClickListener(new OnClickListener()
  36. {
  37. @Override
  38. public void onClick(View source)
  39. {
  40. // 初始化MediaPlayer对象,准备播放音乐
  41. MediaPlayer mPlayer = MediaPlayer.create(
  42. MainActivity.this, R.raw.earth);
  43. // 设置循环播放
  44. mPlayer.setLooping(true);
  45. // 开始播放
  46. mPlayer.start();
  47. }
  48. });
  49. up.setOnClickListener(new OnClickListener()
  50. {
  51. @Override
  52. public void onClick(View source)
  53. {
  54. // 指定调节音乐的音频,增大音量,而且显示音量图形示意
  55. aManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
  56. AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);
  57. }
  58. });
  59. down.setOnClickListener(new OnClickListener()
  60. {
  61. @Override
  62. public void onClick(View source)
  63. {
  64. // 指定调节音乐的音频,降低音量,而且显示音量图形示意
  65. aManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
  66. AudioManager.ADJUST_LOWER, AudioManager.FLAG_SHOW_UI);
  67. }
  68. });
  69. mute.setOnCheckedChangeListener(new OnCheckedChangeListener()
  70. {
  71. @Override
  72. public void onCheckedChanged(CompoundButton source,
  73. boolean isChecked)
  74. {
  75. // 指定调节音乐的音频,根据isChecked确定是否需要静音
  76. aManager.setStreamMute(AudioManager.STREAM_MUSIC,
  77. isChecked);
  78. }
  79. });
  80. }
  81. }

XML文件

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="match_parent"
  5. android:layout_height="match_parent"
  6. android:gravity="center_horizontal"
  7. >
  8. <Button
  9. android:id="@+id/play"
  10. android:layout_width="wrap_content"
  11. android:layout_height="wrap_content"
  12. android:text="音频播放音乐"
  13. />
  14. <LinearLayout
  15. android:orientation="horizontal"
  16. android:layout_width="match_parent"
  17. android:layout_height="match_parent"
  18. android:gravity="center_horizontal"
  19. >
  20. <Button
  21. android:id="@+id/up"
  22. android:layout_width="wrap_content"
  23. android:layout_height="wrap_content"
  24. android:text="增大音量"
  25. />
  26. <Button
  27. android:id="@+id/down"
  28. android:layout_width="wrap_content"
  29. android:layout_height="wrap_content"
  30. android:text="降低音量"
  31. />
  32. <ToggleButton
  33. android:id="@+id/mute"
  34. android:layout_width="wrap_content"
  35. android:layout_height="wrap_content"
  36. android:textOn="静音"
  37. android:textOff="正常"
  38. />
  39. </LinearLayout>
  40. </LinearLayout>

目录结构:

效果

音频管理器(AudioManager)的更多相关文章

  1. Android 音频管理器AudioManager

    音频管理器AudioManager,通过它可以管理android系统的音量或直接让系统静音,依旧是通过调用getSystemService()方法获取音频管理器AudioManager对象,获取到该对 ...

  2. AudioManager音频管理器

    AudioManager音频管理器提供了如下几种常用方法来控制手机音频: 1.adjustStreamVolume(int StreamType,int direction,int flgs):调整手 ...

  3. WIN10REALTEL高清音频管理器如何调音?调音无效怎么办?

    从win7升级到win10,发现realtel高清音频管理器不能调节高级音响效果了,即使设置也没用. 经过研究后发现是驱动 问题,不是驱动 没有安装,而是可能 没有安装完整,于是下载了驱动精灵,重新安 ...

  4. [翻译] SoundManager 音频管理器

    SoundManager 音频管理器 https://github.com/nicklockwood/SoundManager Purpose SoundManager is a simple cla ...

  5. 电脑没有声音,显示“未插入耳机或扬声器”,检测不到Realtek高清晰音频管理器

    2018-7-16,电脑彻夜未关,早上发现已经死机了.关机重启之后,就发现没有声音了,提示“未插入耳机或扬声器”,并且检测不到Realtek高清晰音频管理器,只能检查到显卡音频输出.首先,音箱在其他电 ...

  6. 故障解决 | win10没声音及找不到Realtek高清音频管理器

    重装 win10 系统后,电脑没声音,更新驱动以及万不得已下载驱动精灵都没有解决. 后来发现在“硬件和声音”中没有Realtek高清音频管理器,之后找到解决办法如下: 1. 找到Realtek高清音频 ...

  7. Android开发之AudioManager(音频管理器)具体解释

    AudioManager简单介绍: AudioManager类提供了訪问音量和振铃器mode控制. 使用Context.getSystemService(Context.AUDIO_SERVICE)来 ...

  8. AudioManager音频管理器控制手机音频实例

    import android.media.AudioManager;import android.media.MediaPlayer;import android.os.Bundle;import a ...

  9. Android之声音管理器《AudioManager》的使用以及音量控制

    以下为网上下载然后拼接-- Android声音管理AudioManager使用 手机都有声音模式,声音.静音还有震动,甚至震动加声音兼备,这些都是手机的基本功能.在Android手机中,我们同样可以通 ...

随机推荐

  1. 数据库(mysql)

    一.left join  right join  inner join left join(左连接),在两张表进行连接查询时,会返回左表所有的行,即使在右表中没有匹配的记录. right join(右 ...

  2. echarts横向柱状图Demo

    echarts链接:http://gallery.echartsjs.com/editor.html?c=xByfdMz7mM 代码: option = { backgroundColor: 'bla ...

  3. win8 IIS配置

    iis发展到win8已经到是iis8.0了.至于如何安装的,咱们接下来看.大体和iis6安装差别不大.iis8安装起来也是很方便的. 1.打开“控制面板”——“程序和功能”.如下图所示 2.点击“启用 ...

  4. 自编辑列的gridview,分页,删除,点击删除提示“确认”

    分页:    gridview的属性中:AllowPaging="True"  PageSize="2"    找到gridview的PageIndexChan ...

  5. swift语言版本选择 - 解决XCode报错:The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported valu

    转发链接:https://blog.csdn.net/nathan1987_/article/details/79757368 The “Swift Language Version” (SWIFT_ ...

  6. day15 json,os,sys,hashlib

     序列化模块 import json # json 序列化模块 是所有语言通用的一种标准(数据转化格式). # str int bool dict list(tuple) None import pi ...

  7. Spring事务<tx:annotation-driven/>的理解

    在使用Spring的时候,配置文件中我们经常看到 annotation-driven 这样的注解,其含义就是支持注解,一般根据前缀 tx.mvc 等也能很直白的理解出来分别的作用. <tx:an ...

  8. 产品密钥无法激活成功,最后使用visio2013激活软件激活成功。

    装了visio2013,使用网上搜索的产品密钥,没有一个能够激活成功.最后发现了visio的一个激活软件KMSpico,成功激活. 破解工具 KMSpico_setup.exe 下载地址: http: ...

  9. Linux_(3)Shell编程(上)

    一.shell 简介Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言.Shell 是指一种应用程序,这个应用程序提供了一个 ...

  10. eclipse中增加多个Tomcat

    一.在eclipse中新增Tomcat,并增加在其上部署的工程 1.打开eclipse,并选择菜单中的 "Window" ---> "Show View" ...