首页 > 代码库 > Android开发之设置铃声
Android开发之设置铃声
首先介绍一下Android系统支持的铃声格式。有以下几种:
64赫兹Midi,AAC、AAC+、AMR、WAV、MP3、Real Audio、WMA、OGG等格式。
将音频文件设置成铃声很简单,只需如下几步即可:
1) 获取系统音频文件的Uri
Uri uri =MediaStore.Audio.Media.getContentUriForPath(file.getAbsolutePath());//获取系统音频文件的Uri
2) 将文件插入系统媒体库,并获取新的Uri
Uri newUri = this.getContentResolver().insert(uri,values);//将文件插入系统媒体库,并获取新的Uri
3) 设置铃声
RingtoneManager.setActualDefaultRingtoneUri(this, ringType, newUri);//设置铃声
下面是设置铃声的详细代码:
/** * 设置铃声 * @param ringType int: 铃声类型 * @param file File: 要设为铃声的文件 * */ protected void setRingtone(int ringType, File file) { // TODO Auto-generated method stub boolean isRingtone=false,isNotification=false,isAlarm=false,isMusic=false; String msg=""; switch (ringType) { case ConstUtil.RING_ALARM://闹铃 isAlarm=true; msg="设置闹钟铃声!"; break; case ConstUtil.RING_NOTIFICATION://通知 isNotification=true; msg="设置通知铃声成功!"; break; case ConstUtil.RING_RINGTONE://来电 isRingtone=true; msg="设置来电铃声成功!"; case ConstUtil.RING_MUSIC://添加到铃声库(全部铃声) isMusic=true; msg="设置全部铃声成功!"; break; default: break; } ContentValues values = new ContentValues(); values.put(MediaStore.MediaColumns.DATA, file.getAbsolutePath()); values.put(MediaStore.MediaColumns.TITLE, file.getName()); values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/*"); values.put(MediaStore.Audio.Media.IS_RINGTONE, isRingtone); values.put(MediaStore.Audio.Media.IS_NOTIFICATION, isNotification); values.put(MediaStore.Audio.Media.IS_ALARM, isAlarm); values.put(MediaStore.Audio.Media.IS_MUSIC, isMusic); Uri uri = MediaStore.Audio.Media.getContentUriForPath(file .getAbsolutePath());//获取系统音频文件的Uri Uri newUri = this.getContentResolver().insert(uri, values);//将文件插入系统媒体库,并获取新的Uri RingtoneManager.setActualDefaultRingtoneUri(this, ringType, newUri);//设置铃声 Toast.makeText(getApplicationContext(), msg,Toast.LENGTH_SHORT) .show(); }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。