关于AudioManager在项目中遇到的一些问题的记录
在项目中涉及到语音的一些处理,其中遇到了一些问题。在打完电话后重新进入项目调起TTS,语音从话筒中出来,不从扩音器中出来,audiofocus变成了-2,并且没有重新获取。解决方案为:监听电话,手机空闲设置模式为speakeron,手机挂起是释放audiofocus。
代码如下:
mPhoneManager = ((TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE));
mPhoneManager.listen(mPhoneStateListener,PhoneStateListener.LISTEN_CALL_STATE);
private PhoneStateListener mPhoneStateListener = new PhoneStateListener(){
@Override
public void onCallStateChanged(int state, String incomingNumber) {
switch (state) {
case TelephonyManager.CALL_STATE_IDLE:
Log.d(TAG, "手机空闲");
mAudioManager.setSpeakerphoneOn(true);
break;
case TelephonyManager.CALL_STATE_RINGING:
Log.d(TAG, "手机来电");
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
Log.d(TAG, "手机挂起");
mAudioManager.abandonAudioFocus(mAudioFocusListener);
default:
break;
}
super.onCallStateChanged(state, incomingNumber);
}
};
关于AudioManager在项目中遇到的一些问题的记录相关推荐
- java日志怎么实现_JAVA项目中怎么实现一个通用日志记录功能
JAVA项目中怎么实现一个通用日志记录功能 发布时间:2020-11-21 17:04:50 来源:亿速云 阅读:53 作者:Leah 今天就跟大家聊聊有关JAVA项目中怎么实现一个通用日志记录功能, ...
- asp.net Web项目中使用Log4Net进行错误日志记录
使用log4net可以很方便地为应用添加日志功能.应用Log4net,开发者可以很精确地控制日志信息的输出,减少了多余信息,提高了日志记录性能.同时,通过外部配置文件,用户可以不用重新编译程序就能改变 ...
- 计划将项目中使用entity framework的要点记录到改栏目下
ef监控sql执行性能日志.http://www.cnblogs.com/CreateMyself/p/5277681.html http://123.122.205.38/cn_sql_server ...
- 在Spring Boot 项目中使用Spring AOP实现切面日志
导语 大数据时代,数据来源是比较重要的.而日志作为用户操作.系统监控.业务分析等都比较重要的一个环节.能更好的使用日志显得尤为重要.那么在Spring Boot的项目中如何能更加高效的记录Cont ...
- 使用localStorage完成Vue项目中的历史搜索
在一些电商项目中,我们经常会看到记录历史搜索的功能,如下图所示.我们今天来使用localStorage结合Vue来完成这一功能. 1.首先第一步就是获取到搜索框的值,并存入localStorage里面 ...
- canvas java 上传截图_在Vue项目中使用html2canvas生成页面截图并上传
使用方法 项目中引入 npm install html2canvas html代码 //html代码 js代码 // 引入html2canvas import html2canvas from 'ht ...
- android studio 自动提示jni代码,如何将JNI(C/C++本机代码)添加到现有的Android Studio项目中...
从现有项目中执行以下步骤: 1.修改build.gradle(模块应用程序)看起来像这样(很多变化!): apply plugin: 'com.android.model.application' m ...
- android使用webview上传文件,Android项目中如何在webview页面中上传文件
Android项目中如何在webview页面中上传文件 发布时间:2020-11-26 15:56:27 来源:亿速云 阅读:68 作者:Leah 本篇文章为大家展示了Android项目中如何在web ...
- java fragment_Java Web Fragment在项目中使用方法详解
Web Fragment 是什么 - 它是在 servlet 3.0开始支持的,可以把一个dy web项目拆分为多个项目,解耦合,使其在项目中开发效率提高,下面我演示简单的项目创建过程 用eclips ...
最新文章
- 031_MessageBox弹框
- wxWidgets:wxPropertyGrid类用法
- @async 默认线程池_springboot@Async默认线程池导致OOM问题
- 消息称苹果下代iPhone、iPad产品都将采用钛合金
- LINUX下简单制作QCOW2镜像
- 图论--最长路--洛谷P1807 最长路_NOI导刊2010提高(07)
- 最好的Java开发人员测试和集成工具
- vuex 的 action 传参问题
- html作业本,小鹅通作业本使用教程
- 四级英语作文大学生使用计算机,大学生四级英语作文范文
- 工时分析软件哪个好用?ECRS工时分析软件-精益人都在用的IE分析软件
- 易语言教你制作onoQQ机器人
- 13种常用按钮、文本框、表单等CSS样式
- 在python中画正态分布图像
- 华为交换机导入配置_华为交换机配置导入和导出
- warning C4183: ‘Cricle‘: member function definition looks like a ctor, but name does not match enclo
- oracle图书操作、sql语句查询+授权、视图、索引、表操作
- 日常小记-pdf扫描版和非扫描版区别
- 小学四年级数学上册计算机算题,四年级上册数学计算题大全
- 在Coordinatorlayout中使用RecyclerView导致recyclerview最后一个item显示不全的问题