Android来电铃声默认设置的实现方法与如何设置语音来电的默认铃声

一、Android来电铃声默认设置的实现方法

Andoird默认来电铃声的设置方法为修改build/target/product/core.mk的ro.config.ringtone的值如

ro.config.ringtone=Backroad.ogg,该音乐文件必须于framework/base/data/sounds/Android.mk中加入音乐文件。

framework/base/media/java/android/media/MediaScanner.java中类的初始化时会设置默认铃声的文件名的变量mDefaultRingtoneFilename = SystemProperties.get(DEFAULT_RINGTONE_PROPERTY_PREFIX + Setting.System.RINGTONE);

MediaScanner该类会搜索音乐文件必插入数据库中,搜索过程中检查是否与设置的默认铃声相同,如果相同则设为默认铃声。

} else if (ringtones && mWasEmptyPriorToScan && !mDefaultRingtoneSet) {

if (TextUtils.isEmpty(mDefaultRingtoneFilename) ||

doesPathHaveFilename(entry.mPath, mDefaultRingtoneFilename)) {

setSettingIfNotSet(Settings.System.RINGTONE, tableUri, rowId);

setProfileSettings(AudioProfileManager.TYPE_RINGTONE, tableUri, rowId);

mDefaultRingtoneSet = true;

}

}

二、如何设置语音来电的默认铃声

首先在core.mk中新增ro.config.videocall=BentleyDubs.ogg。

在framework/base/media/java/android/media/MediaScanner.java类中新加两个成员变量

private boolean mDefaultVideoCallSet;

private String mDefaultVideoCallFilename;

在setDefaultRingtoneFileNames()方法中加入以下代码初始化默认铃声的文件名

mDefaultVideoCallFilename = SystemProperties.get(DEFAULT_RINGTONE_PROPERTY_PREFIX

+ Settings.System.VIDEO_CALL);

在endFile()方法中加入以下代码设置语音来电的默认铃声

} else if (ringtones && mWasEmptyPriorToScan && !mDefaultVideoCallSet) {

if (TextUtils.isEmpty(mDefaultVideoCallFilename) ||

doesPathHaveFilename(entry.mPath, mDefaultVideoCallFilename)) {

setSettingIfNotSet(Settings.System.VIDEO_CALL, tableUri, rowId);

setProfileSettings(AudioProfileManager.TYPE_VIDEO_CALL, tableUri, rowId);

mDefaultVideoCallSet = true;

}

}

java设置铃声_Android来电铃声默认设置的实现方法与如何设置语音来电的默认铃声...相关推荐

  1. java手机震动_Android实现手机震动抖动效果的方法

    Android手机震动抖动效果的实现 (1)布局文件如下 xmlns:tools="http://schemas.android.com/tools" android:layout ...

  2. 安卓打开java文件管理器_Android开发之简单文件管理器实现方法

    本文实例讲述了Android开发之简单文件管理器实现方法.分享给大家供大家参考,具体如下: 这里运用Java I/O.ListActivity.Dialog.Bitmap等实现简单文件管理器,可以查看 ...

  3. 瑞晟蓝牙来电语音软件下载_语音来电秀app下载-语音来电秀 安卓版v12.6-PC6安卓网...

    语音来电秀app是一款超级炫酷的语音来电显示秀的软件.语音来电秀app拥有各种类型的有点显示秀任大家挑选,快来语音来电秀app挑选一款你喜欢的来电秀作为你的来电显示吧! 软件介绍 语音来电秀app是一 ...

  4. php checkbox默认选择问题,PHP_php select,radio和checkbox默认选择的实现方法,这是扩展yibing的select默认选择 - phpStudy...

    php select,radio和checkbox默认选择的实现方法 这是扩展yibing的select默认选择的实现方法 复制代码 代码如下: value="1">住宅 v ...

  5. Android来电铃声默认设置的实现方法与如何设置语音来电的默认铃声

    Android来电铃声默认设置的实现方法与如何设置语音来电的默认铃声 一.Android来电铃声默认设置的实现方法 Andoird默认来电铃声的设置方法为修改build/target/product/ ...

  6. Java缅甸文_Android键盘输入语言设置默认打开myanmar缅甸语的步骤

    locale是通过系统设置的地区和latin输入法语言通过merger出来的,所以在系统地区设置和输入法语言中同时支持才可以在"输入语言设置"里设置 languageList是从存 ...

  7. android通过代码设置铃声_Android基础(5)—自定义View

    自定义View 基本认知: 虽然Android已经自带来很多强大的UI控件,但是依旧不能满足所有开发人员的需求.通常开发人员需要实现设计师精心设计的视觉效果,这样情况下可能现有的控件就不能满足需求或者 ...

  8. android通过代码设置铃声_Android App驱动Arduino通过蓝牙控制交流调光器

    背景知识视频教程 使用App Inventor创建Android应用​viadean.com Arduino分步指南:完整指南 - 国外课栈​viadean.com Arduino仿真和块编码 - 国 ...

  9. MySQL数据库建表时对于某个字段设置了默认值,但是使用Spring Data Jpa的save后默认值没有生效

    问题描述:MySQL数据库建表时对于某个字段设置了默认值,但是使用Spring Data Jpa的save后默认值没有生效.MySQL数据库中构建的用户表表结构如下所示: DROP TABLE IF ...

  10. Android 9.0 设置讯飞语音引擎为默认tts语音播报引擎

    1.前言 在9.0的系统rom定制化开发中,在产品开发中,一些内置的app需要用到tts语音播报功能,所以需要用到讯飞语音引擎作为默认的系统tts语音引擎功能,所以就需要 了解系统关于tts语音引擎默 ...

最新文章

  1. python好学嘛-Python好学吗?Python学习路线
  2. 深度学习术语_您应该意识到这些(通用)深度学习术语和术语
  3. [转]GCC 命令行详解 -L 指定库的路径 -l 指定需连接的库名
  4. 幽默:程序员10大口头禅,你都听过吗?
  5. Android listview addHeaderView 和 addFooterView 详解
  6. 的底层实现 ios_iOS 面试梳理
  7. Spark Structured : java.lang.RuntimeException: Offsets committed out of order: 2 followed by 0
  8. Netty通信技术(一)
  9. 梦想成真,喜获微软MVP奖项,微软MVP FAQ?
  10. [导入] [转]总结C++与C#的区别
  11. 计算机主板电源线接法,主板电源线怎么接
  12. python画图怎么使用特殊符号?
  13. ArcGIS中将经纬度表格转为空间图层并制作采样点分布图
  14. linux强制移除pdf密码,linux-使用PDFtk删除pdf文件的最后一页?
  15. charles软件关闭后浏览器无法上网的问题
  16. imToken 2.7.2,你的 Eth2「入场券」待领取
  17. 【毕业设计_课程设计】面向高考招生咨询的问答系统设计与实现(源码+论文)
  18. 端口映射工具网络通-个人电脑也能作为服务器
  19. 股票打板 知识 收集
  20. HTTP请求方式:get与post

热门文章

  1. 数据科学家的修行之路---基本功
  2. java excel 数组公式_教你如何快速学习Excel数组公式及运用
  3. Android Studio 连接手机进行调试
  4. 方舟非专用服务器稳定吗,方舟非专用服务器
  5. 壁纸控福音:私藏的100PC张壁纸一次打包分享
  6. 模拟数字接口及调制解调器
  7. WebVirtMgr + KVM 环境中的 Linux 虚拟机部署
  8. Supplier和Vendor的区别
  9. C++构造函数的default和delete
  10. 吴氏太极拳宗师王茂斋简介