开发中关于手机的听筒模式的设置
最近在做一个OA类的项目,当然产品经理可不止希望他是一个单纯的OA(CRM)项目,在开发中 产品经理要求做一个类似微信朋友圈的页面,可以查看一些类型的信息,其中有语音信息。
开始忙碌加班,项目在测试阶段,产品经理过来说咱们的内部信息不能让别人听到,所以,要加类似微信的听筒模式,这里我也是现学现卖的。下面是我的代码 (代码渣,多多指教)
/***************************1:这里首先实现接口SensorEventListener (这里我是在适配器里实例化的 ,对于三星手机可能会出问题 这里建议写在Activity里)
public class CRMCustomInformationAdapter extends BaseAdapter implements SensorEventListener {
private List<CustomerInformation> mlist;
private BaseActivity mBaseActivity;
/************************2:声明控件
SensorManager _sensorManager = null; // 传感器管理器
Sensor mProximiny = null; // 传感器实例
private Object mlock = new Object();
float f_proximiny; // 当前传感器距离AudioManager audioManager = null; // 声音管理器
public CRMCustomInformationAdapter(List<CustomerInformation> list,
BaseActivity BaseActivity) {
this.mlist = list;
this.mBaseActivity = BaseActivity;
//***************************3:这里是实例化距离传感器 和管理者
audioManager = (AudioManager) mBaseActivity.getSystemService(Context.AUDIO_SERVICE);
_sensorManager = (SensorManager) mBaseActivity.getSystemService(Context.SENSOR_SERVICE);
mProximiny = _sensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY);
_sensorManager.registerListener(this, mProximiny,SensorManager.SENSOR_DELAY_NORMAL);
}
/***************************************
/*
* 4:实现SensorEventListener需要实现的两个方法。
* 这里的 mProximiny.getMaximumRange() 是监听手机听筒旁的红外线感应器的 如果检测到有物体靠近听筒时 自动开启听筒播放功能
* if (f_proximiny >= mProximiny.getMaximumRange()) {
* audioManager.setMode(AudioManager.MODE_NORMAL);
* } else {
* audioManager.setSpeakerphoneOn(false);
* audioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
* }
*/
@Override
public void onSensorChanged(SensorEvent event) {
synchronized (mlock) {
f_proximiny = event.values[0];
if (f_proximiny >= mProximiny.getMaximumRange()) {
audioManager.setMode(AudioManager.MODE_NORMAL);
} else {
audioManager.setSpeakerphoneOn(false);
audioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
}
}
}
/*
*/
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
public void releaseSensor() {
_sensorManager.unregisterListener(new SensorEventListener() {
@Override
public void onSensorChanged(SensorEvent event) {
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// TODO Auto-generated method stub
}
});
}
开发中关于手机的听筒模式的设置相关推荐
- java 判断手机运营商_Java开发中识别手机运营商的方法
在Java开发中程序需要根据用户输入的号码判断运营商,这该怎么实现呢?而我们需要根据不同的运营商进行相应的处理,下面是爱站技术频道小编介绍的Java开发中识别手机运营商的方法. js实现方法: var ...
- android 判断安装微信,Android开发中判断手机是否安装了QQ或者微信
下面一段代码给大家分享了android中判断手机是否安装了qq或者微信,代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下吧 public static boolean isWeixinAv ...
- 关于部分手机使用听筒模式播放音频时没有声音的问题
这一个问题其实包含细节很多(涉及硬件和多媒体的细节问题都特别多),我只讲述我所遇见的问题,做一下记录 前提是如果使用扬声器播放声音的时候播放正常,而使用听筒模式下面播放声音却没有声音.这种情况仅有部分 ...
- 网上搜集到iOS开发中获取手机IDFA,手机序列号,设备名称,别名,分辨率等信息,这里做个总结
下述函数中写入获取信息的代码 - (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDict ...
- android开发中调用手机的豌豆荚、应用宝等市场进行评分操作,以及分享功能
应用场景:某个手机阅读器程序,读者看到一篇 文章 ,觉得不错,想要与朋友分享 . 应用展现:按手机的Menu键,弹出"分享"菜单,点击后显示一系列Android分享功能的方式( ...
- Android开发中之手机定位(记录)
本篇博客主要记录一下如何进行手机定位到某一个城市之类的功能.当前,这里用到了百度地图的第三方地图解析API. 百度地图开放平台地址:http://lbsyun.baidu.com/index.php? ...
- android开发模式,Android开发中无处不在的设计模式
Android开发中无处不在的设计模式――单例模式 Android开发中无处不在的设计模式――Builder模式 前面介绍了单例模式和Builder模式,有兴趣的见上面两个链接,这篇文章侧重介绍1下视 ...
- Android开发中无处不在的设计模式——动态代理模式
继续更新设计模式系列.写这个模式的主要原因是近期看到了动态代理的代码. 先来回想一下前5个模式: - Android开发中无处不在的设计模式--单例模式 - Android开发中无处不在的设计模式-- ...
- 前端开发中的MCRV模式
针对前端开发中基于ajax的复杂页面开发所面临的代码规模大,难以组织和维护,代码复用性.扩展性和适应性差等问题,本文尝试以MVC思想为基础,结合Web前端开发中内容-结构-表现-行为相分离的开发标准, ...
最新文章
- Nacos深入浅出(三)
- why we have to redefine _isRefreshNeeded for oData model
- VB取得TextBox、RichTextBox光标所在的行和列(支持汉字)
- Linux 初始化 init 系统(一)
- 推荐给每个找工作的IT毕业生--打鸡血书
- 北京航天大学考研计算机科学与技术分数线,北京航空航天大学计算机科学与技术考研...
- 【原创】QT5-卸载精灵v1.0-卸载windows软件-简易版
- 南京信息工程大学 第二届程序设计大赛团队赛 试题
- 高效拓客必备工具:采集工具助力,让你事半功倍
- CentOS 7中yum安装java
- php十进制转ascii字符,(5条消息)php ASCII字符和十六进制数之间的相互转化
- js 获取系统时间
- 分享本电子书Sql Server 20008 internals
- Batch Normalization 批归一化是什么? 有什么用?
- ZStack深度试用:部署、架构与网络及其与OpenStack的对比
- PHP:POST 方法上传
- 科技部高新司副司长杨咸武:物联网前景广阔,大有可为
- CTFHUB(PWN)Ret2Text
- matlab写泰勒中值定理,基于Matlab环境优化Taylor中值定理教学
- DSP的EALLOW和EDIS指令
热门文章
- 前端SVG实现各式图片和动画
- Intel和AMD处理器各有什么特点?该如何选择?
- 视频会议,远程协助平台接入亮亮视野AR眼镜,UVC摄像头方案
- 学生学籍系统 按班级查找按学号查找
- FPGA学习日志——半加器half_adder
- Apache DolphinScheduler征稿 — 小Demo轻松入门DolphinSchedule大数据调度工具
- 支付平台--清算总的详解
- 与计算机相关的word的模板,将 Word 文档保存为模板
- 网络姻缘一线牵 大数据精准推广才能让合适的产品遇到合适的人!
- DirectX 9.0c游戏开发手记之RPG编程自学日志之11: 题外话