android 实现音量变化监听和静音方法
android 静音实现方法
类似语音app实现静音与取消静音
1. 模拟按键
模拟静音键
2.调用静音接口
取消静音时,音量条UI显示音量进度与进度值
private AudioManager mAudioManager = null;
mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
mAudioManager.adjustSuggestedStreamVolume(AudioManager.ADJUST_TOGGLE_MUTE, AudioManager.STREAM_MUSIC, 1);
3. 音量变化 监听广播
frameworks/base/media/java/android/media/AudioManager.java
//VOLUME_CHANGED 音量变化
"android.media.VOLUME_CHANGED_ACTION")
//STREAM_MUTE_CHANGE 静音变化
"android.media.STREAM_MUTE_CHANGED_ACTION")
4. 静音mute时,getStreamVolume获取音量值为0
可通过getLastAudibleStreamVolume(非对外开放接口) 通过反射获取value
int value=0;
try {
AudioManager mAudioManager1 = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
Class clazz = Class.forName("android.media.AudioManager");
Method method = clazz.getDeclaredMethod("getLastAudibleStreamVolume",int.class);//方法名,参数类型
method.setAccessible(true);
value = (int) method.invoke(mAudioManager1, AudioManager.STREAM_MUSIC);//AudioManager.STREAM_MUSIC
} catch (Exception e) {
e.printStackTrace();
}
android 实现音量变化监听和静音方法相关推荐
- Android手机屏幕变化监听
监听手机屏幕的打开关闭 工具类,可直接使用 package com.utils; import android.content.BroadcastReceiver; import android. ...
- Android通过使用系统广播监听网络状态的改变
Android通过使用广播监听网络状态的改变 得先添加权限 //查看网络状态<uses-permission android:name="android.permission.ACCE ...
- android列表项点击事件,Android 开发 tips(2):监听 Listview 列表项点击事件
Android 开发 tips(2):监听 Listview 列表项点击事件 (这篇和上篇本来是应该一起写的,但是太过冗长,附链接:[SimpleAdapter 在 Listview 中的应用] ht ...
- Android截屏事件监听
1. 前言 Android系统没有直接对截屏事件监听的接口,也没有广播,只能自己动手来丰衣足食,一般有三种方法. 利用FileObserver监听某个目录中资源变化情况 利用ContentObserv ...
- input框的内容变化监听
input的两个功能 1.不允许一开始输入空格(即在input框内容为空的时候,输入空格是没有作用的) 2.input框的内容变化监听 这属于比较完美的input的设计了 下面是html代码实现功能1 ...
- vue 监听map数组变化_vuex state中的数组变化监听实例
前言 首先,因为我有一个需求就是vue组件中有一组多选框,选中多选框的内容,要在另一个组件中进行视图更新,这个就设计的兄弟组件之间的通信了,兄弟组件之前通信我首先选用的vuex这个解决办法. 问题 v ...
- spring 文件变化监听_Spring新变化
spring 文件变化监听 让我们检查一下Spring社区在前几天发布的一些新版本: Spring Boot 1.0.0.RC1 Spring很高兴地宣布Spring Boot v1.0.0的第一个候 ...
- Android学习按键事件监听与Command模式
Android学习按键事件监听与Command模式 - Dufresne - 博客园 Android学习按键事件监听与Command模式 一 Command模式 意图: 将一个请求封装为一个对象,从而 ...
- Vue2源码解析 Object变化监听
目录 1 什么是变化监听 2 如何跟踪变化 3 何如收集依赖 4 依赖收集在哪 5 依赖是谁 6 什么是Watcher 7 递归侦测所有key 8 关于Object的问题 9 总结 1 ...
最新文章
- 胡小明:大数据应用方向思考
- ASP.NET Web API 实现客户端Basic(基本)认证 之简单实现
- 中国大唐集团公司的发展战略
- kafka集群编程指南
- 采用动态解析设置***
- python属于哪类型的编程语言_Python是什么类型的编程语言,有什么特性
- Citrix XenDesktop 虚拟桌面 每用户/设备 许可手动释放
- c++全局变量的声明和使用
- VS 中PageLayout 属性设置
- MATLAB 2018
- java 从sip服务器_如何通过域而不是IP地址注册到SIP服务器并从客户端创建SIP帐户?...
- python 英语翻译_python实现在线翻译功能
- 中国计量大学matlab,计量经济学及matlab.pdf
- 断章·贵鬼篇·白羊妇语
- python提交表单发邮件_通过Mailgun和Python发送带有表单数据的电子邮件
- 安卓投屏大师_还不会把手机投屏到电脑?教你四种方法,柯达带你直播玩的更溜...
- “大蟒蛇”的养殖教程---“字符串”
- YDOOK: ANSYS Maxwell 19 教程14:Maxwell 2D 静电场怎样设置激励源 静电场有哪些激励源
- [Ubuntu 18.04]公共DNS设置[/etc/resolv.conf]
- A-Z,a-z,0-9的unicode编码表
热门文章
- Flask 报错:WARNING: This is a development server. Do not use it in a production deployment.
- win10服务项哪些能禁用?
- CPU突然飙升,如何排查
- 基于javaweb+jsp的蛋糕商城系统(java+JDBC+Servlet+HTML+Ajax+mysql+Fileupload)
- 胡汉三又回来了:“门头沟”CEO在日本注册新公司
- 删除个人空间动态(哔哩哔哩)
- 2020最全JVM垃圾回收机制面试题整理,阿里面试官最爱问的都在这里了(附答案)
- maven 打包 releases 和 snapshots 版本
- ave could not be completed.Reason:Some characters cannot be mapped using 'ISO-8859-1'character enco
- 修改电脑电源键按一下关机的策略