在网上找了很多关于铃声设置的,不晓得怎么回事就是没测试通过,后来换了另外一种方式解决了。回过头来看了一下原理是一样的,于是就把两者合并到了一起。原理:首先根据传进来的绝对路径来查询传进来路径的歌曲是否存在,如果存在则得到id和uri,通过ContentUris.withAppendedId(uri,id),将uri和id拼接成一个新的Uri,然后将新的uri设置成想要的铃声即可。
最主要的代码:RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE, newUri);
第一个参数表示上下文、第二个参数表示设置的铃声状态,第三个表示当前的歌曲uri。
如果传进来的歌曲路径不存在,则直接调用系统的插入数据方法,得到一个返回的uri,这里得到的uri是不带id参数的,不晓得为什么,这样设置铃声是不成功的。我想到的笨方法是,在插入数据之后应该立即发送广播让系统扫描媒体数据,然后来查询得到新的uri,然后再来设置。不晓得哪位大牛有什么好的方法能够借鉴一下。
按 Ctrl+C 复制代码
按 Ctrl+C 复制代码
这是之前在网上搜索的普遍方法,按照这个方法得到的uri是不带id参数的。只是将传入的文件添加到系统的媒体数据库中。
按 Ctrl+C 复制代码
按 Ctrl+C 复制代码
另外一种方法是调用系统的设置铃声的方法。如果不加自定义铃声的方法则调用的是系统默认的铃声设置。若添加了上面自定义铃声的代码则会将传进来的铃声
添加到铃声设置列表中供你选择。
按 Ctrl+C 复制代码
按 Ctrl+C 复制代码
最后需要添加修改系统设置的权限:
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
分享到:
相关推荐
主要介绍了Android设置铃声实现代码,以实例形式分析了Android中铃声设置的相关技巧,非常简单实用,需要的朋友可以参考下
Android 从SD卡上 选择设置指定联系人 的铃声
android 铃声 设置 相关 源码 android 铃声 设置 相关 源码 android 铃声 设置 相关 源码 android 铃声 设置 相关 源码
Android简单闹钟设置带铃声
android手机铃声制作裁剪设置铃声源码 Ringdroid,googlecode下载,加了个中文包,可以用于android手机裁剪手机铃声,并设置为来电铃声和联系人铃声,很强大。学习中
Android铃声、短信提示音、闹钟设置软件源代码
NULL 博文链接:https://aking86.iteye.com/blog/1424127
Android中设置来电铃声、闹钟铃声、通知铃声。
Android 2.2平台以下不支持设置存储卡上的音乐文件作为铃声,有了这个工具就可以了
获取系统所有铃声列表,选择与设置铃声,简化界面,无bug,希望对大家有帮助
Android情景模式的设置的代码。记得要开启服务权限
简单的android 闹钟选择SD卡音乐铃声 android 闹钟选择SD卡音乐铃声 android 闹钟选择SD卡音乐铃声
7.7 铃声设置 7.8 小结 第8章 网络与通信 8.1 网络通信基础 8.1.1 无线网络技术 8.1.2 Android网络基础 8.2 HTTP通信 8.2.1 HttpURLConnection接口 8.2.2 HttpClient接口 8.2.3 实时更新 8.3 Socket通信 8.3.1 ...
主要为大家详细介绍了Android给app设置自定义铃声功能的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
可将内存卡上自己喜欢的音乐设置为铃声 在主界面可显示所有的音乐文件。
android 上最强的铃声下载和设置软件,软件名称:极酷铃声
Android 9 添加开机音乐
Android操作铃声、震动与传感器的代码例子。用于演示铃声的情景设置、震动器的使用、传感器的使用(即微信的摇一摇)等等功能。
Android13 修改系统默认通知提示音为pixiedust.ogg.patch