`
活着,其实是一种心情-Elvin-Lee
  • 浏览: 16104 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Android手机铃声代码实现

 
阅读更多

网上查了很多例子,都有点问题,综合几个自己写了个可以设置铃声、通知声音、闹钟声音和所有声音功能的方法。

首先写一个常量类(定义想要设置为那种铃声的标示):

AppConstant.java

publicinterfaceAppConstant {

publicstaticfinalintRINGTONE= 0;//铃声

publicstaticfinalintNOTIFICATION= 1;//通知音

publicstaticfinalintALARM= 2;//闹钟

publicstaticfinalintALL= 3;//所有声音

}

此方法需要传入想要设置为铃声的全路径(如:/mnt/sdcard/mp3/a.mp3 ),和想要设置为那种铃声的标示:

privatevoidsetVoice(String path2,intid)

{

ContentValues cv =newContentValues();

Uri newUri =null;

Uri uri = MediaStore.Audio.Media.getContentUriForPath(path2);

//查询音乐文件在媒体库是否存在

Cursor cursor =this.getContentResolver().query(uri,null, MediaStore.MediaColumns.DATA+"=?",newString[] { path2 },null);

if(cursor.moveToFirst() && cursor.getCount() > 0)

{

String _id = cursor.getString(0);

switch(id) {

caseAppConstant.RINGTONE:

cv.put(MediaStore.Audio.Media.IS_RINGTONE,true);

cv.put(MediaStore.Audio.Media.IS_NOTIFICATION,false);

cv.put(MediaStore.Audio.Media.IS_ALARM,false);

cv.put(MediaStore.Audio.Media.IS_MUSIC,false);

break;

caseAppConstant.NOTIFICATION:

cv.put(MediaStore.Audio.Media.IS_RINGTONE,false);

cv.put(MediaStore.Audio.Media.IS_NOTIFICATION,true);

cv.put(MediaStore.Audio.Media.IS_ALARM,false);

cv.put(MediaStore.Audio.Media.IS_MUSIC,false);

break;

caseAppConstant.ALARM:

cv.put(MediaStore.Audio.Media.IS_RINGTONE,false);

cv.put(MediaStore.Audio.Media.IS_NOTIFICATION,false);

cv.put(MediaStore.Audio.Media.IS_ALARM,true);

cv.put(MediaStore.Audio.Media.IS_MUSIC,false);

break;

caseAppConstant.ALL:

cv.put(MediaStore.Audio.Media.IS_RINGTONE,true);

cv.put(MediaStore.Audio.Media.IS_NOTIFICATION,true);

cv.put(MediaStore.Audio.Media.IS_ALARM,true);

cv.put(MediaStore.Audio.Media.IS_MUSIC,false);

break;

default:

break;

}

//把需要设为铃声的歌曲更新铃声库

getContentResolver().update(uri, cv, MediaStore.MediaColumns.DATA+"=?",newString[] { path2 });

newUri = ContentUris.withAppendedId(uri, Long.valueOf(_id));

//一下为关键代码:

switch(id) {

caseAppConstant.RINGTONE:

RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE, newUri);

break;

caseAppConstant.NOTIFICATION:

RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_NOTIFICATION, newUri);

break;

caseAppConstant.ALARM:

RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM, newUri);

break;

caseAppConstant.ALL:

RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALL, newUri);

break;

default:

break;

}

//播放铃声

//Ringtone rt = RingtoneManager.getRingtone(this, newUri);

//rt.play();

}

}

分享到:
评论

相关推荐

    Android手机铃声软件源码.zip

    【Android手机铃声软件源码】是一个专门为Android操作系统设计的应用程序源代码,它允许用户自定义和管理他们的手机铃声。这个源码包可能包含了实现这一功能的各种组件和模块,如音频文件处理、用户界面设计、数据库...

    Android 手机铃声软件源码-IT计算机-毕业设计.zip

    这篇文档将深入解析《Android 手机铃声软件源码》这一项目,旨在为学习者提供一份详尽的Android应用开发教程,特别是针对毕业设计和论文撰写的学生。这个项目不仅涵盖了基本的Android应用构建,还涉及到自定义铃声...

    Android应用源码之手机铃声软件源代码

    在深入探讨这个“Android应用源码之手机铃声软件源代码”之前,首先我们要理解Android系统的基本架构和应用程序开发的基础。Android是一个开源的操作系统,基于Linux内核,由Google主导并由开放手持设备联盟(OHA)...

    Android源代码——手机铃声软件

    综上所述,开发一个Android手机铃声软件不仅需要掌握Android平台的基本开发技能,还要熟悉音频处理、UI设计、资源管理以及系统权限等多方面的知识。通过理解和实践这些知识点,可以构建出一个功能齐全、用户体验良好...

    Android 手机铃声软件源码.zip

    这个"Android手机铃声软件源码"项目提供了一个宝贵的参考资料,便于开发者深入理解和实践Android应用开发。以下是基于该源码项目的一些主要知识点: 1. **Android SDK与Java编程**: - 项目使用Java语言编写,这是...

    Android 手机铃声软件源码.rar

    通过分析这个Android手机铃声软件的源码,开发者不仅可以学习到如何在Android平台上实现一个完整的应用,还能深入理解Android系统的多媒体处理、用户界面设计以及权限管理等方面的知识,对于提升Android开发技能...

    android手机设置自己喜欢的铃声

    本文将详细介绍如何在Android手机上设置自定义铃声,并探讨相关技术。 首先,Android系统提供了一个方便的界面供用户管理手机的铃声。用户可以通过“设置”应用中的“声音与振动”选项来更改各种类型的铃声。然而,...

    安卓Android源码——手机铃声软件源代码.rar

    描述中的内容重复了标题,即“安卓Android源码——手机铃声软件源代码.rar”,这表明提供的压缩包可能是一个完整的开发项目,包含实现手机铃声选择、设置和管理功能的所有源代码文件。 【标签解析】 "安卓 android ...

    Android应用源码之手机铃声软件源代码.zip

    【Android应用源码之手机铃声软件源代码.zip】是一个包含Android应用开发相关的资源包,主要涉及的是一个手机铃声管理软件的源代码。通过分析这个压缩包中的内容,我们可以深入学习Android应用开发,特别是与音频...

    Android手机铃声软件_安卓源码.zip

    《Android手机铃声软件开发详解》 在移动设备领域,Android操作系统以其开源、灵活的特点深受开发者喜爱。本篇文章将深入探讨一个特殊的Android应用——手机铃声软件的开发,通过分析提供的"Android应用源码之手机...

    Android 手机铃声软件源码.zip源码资源下载

    源码中,开发者可能使用了Java的面向对象特性,如类、对象、继承、封装和多态性,以及各种API来实现手机铃声的功能。 三、Apache技术 标签中的“apache”可能指的是Apache Commons或Apache HTTP Client等项目。在...

    Android手机模拟点击实现自动接听电话和免提功能 模拟点击自动免提TelPhone1.1.5.rar

    总的来说,实现Android手机的自动接听电话和免提功能,需要深入理解Android的事件处理机制、无障碍服务、音频管理和定时任务。通过合理地结合这些技术,可以创建一个高效且可靠的自动接听电话的应用。当然,实际开发...

    android手机闹钟服务代码

    在Android系统中,闹钟服务是开发者常用的功能之一,...在`AlarmTest`项目中,你可以找到实现这些功能的具体代码。通过理解并实践这些知识点,你可以根据个人需求定制自己的闹钟应用,使其更灵敏、更方便地服务于用户。

    Android代码-手机小闹钟源码.zip

    《Android手机小闹钟源码解析》 在Android开发领域,构建一款实用的手机小闹钟应用是一项常见的任务。这份“手机小闹钟源码”为我们提供了一个宝贵的实践案例,让我们深入理解Android应用开发的核心技术和设计思路...

    Android开发应用实战详解源代码

    5.5 实现手机震动效果 5.6 图文提醒效果 5.7 状态栏提醒 5.8 检索通讯录 5.8.1 实现原理 5.8.2 contentprovider介绍 5.8.3 具体实现 5.9 文件管理 5.10 还原手机桌面 5.11 置换背景图 5.12 修改和删除文件 5.12.1 ...

    android铃声振动模式

    综上所述,通过使用`AudioManager`提供的API,我们可以灵活地控制Android设备的铃声和振动模式,从而实现更加丰富的用户体验。希望本文能帮助您更好地理解和掌握Android中的铃声与振动控制技术。

Global site tag (gtag.js) - Google Analytics