如何编写程序设置Android来电铃声
//设置--铃声的具体方法public void setMyRingtone(String path)File sdfile = new File(path);ContentValues values = new ContentValues();values.put(MediaStore.MediaColumns.DATA, sdfile.getAbsolutePath());values.put(MediaStore.MediaColumns.TITLE, sdfile.getName());values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/*");values.put(MediaStore.Audio.Media.IS_RINGTONE, true);values.put(MediaStore.Audio.Media.IS_NOTIFICATION, false);values.put(MediaStore.Audio.Media.IS_ALARM, false);values.put(MediaStore.Audio.Media.IS_MUSIC, false);Uri uri = MediaStore.Audio.Media.getContentUriForPath(sdfile.getAbsolutePath());Uri newUri = this.getContentResolver().insert(uri, values);RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE, newUri);Toast.makeText( getApplicationContext (),"设置来电铃声成功!", Toast.LENGTH_SHORT ).show();System.out.println("setMyRingtone()-----铃声");//设置--提示音的具体实现方法public void setMyNotification(String path)File sdfile = new File(path);ContentValues values = new ContentValues();values.put(MediaStore.MediaColumns.DATA, sdfile.getAbsolutePath());values.put(MediaStore.MediaColumns.TITLE, sdfile.getName());values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/*");values.put(MediaStore.Audio.Media.IS_RINGTONE, false);values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);values.put(MediaStore.Audio.Media.IS_ALARM, false);values.put(MediaStore.Audio.Media.IS_MUSIC, false);Uri uri = MediaStore.Audio.Media.getContentUriForPath(sdfile.getAbsolutePath());Uri newUri = this.getContentResolver().insert(uri, values);RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_NOTIFICATION, newUri);Toast.makeText( getApplicationContext (),"设置通知铃声成功!", Toast.LENGTH_SHORT ).show();System.out.println("setMyNOTIFICATION-----提示音");//设置--闹铃音的具体实现方法public void setMyAlarm(String path)File sdfile = new File(path);ContentValues values = new ContentValues();values.put(MediaStore.MediaColumns.DATA, sdfile.getAbsolutePath());values.put(MediaStore.MediaColumns.TITLE, sdfile.getName());values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/*");values.put(MediaStore.Audio.Media.IS_RINGTONE, false);values.put(MediaStore.Audio.Media.IS_NOTIFICATION, false);values.put(MediaStore.Audio.Media.IS_ALARM, true);values.put(MediaStore.Audio.Media.IS_MUSIC, false);Uri uri = MediaStore.Audio.Media.getContentUriForPath(sdfile.getAbsolutePath());Uri newUri = this.getContentResolver().insert(uri, values);RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM, newUri);Toast.makeText( getApplicationContext (),"设置闹钟铃声成功!", Toast.LENGTH_SHORT ).show();System.out.println("setMyNOTIFICATION------闹铃音");2、如果读取多媒体库的音频文件,设为铃声,使用以下方式:首先写一个常量类(定义想要设置为那种铃声的标示):AppConstant.javapublic interface AppConstant {public static final int RINGTONE = 0; //铃声public static final int NOTIFICATION = 1; //通知音public static final int ALARM = 2; //闹钟public static final int ALL = 3; //所有声音此方法需要传入想要设置为铃声的全路径(如:/mnt/sdcard/mp3/a.mp3),和想要设置为哪种铃声的标示:private void setVoice(String path2,int id)ContentValues cv = new ContentValues();Uri newUri = null;Uri uri = MediaStore.Audio.Media.getContentUriForPath(path2);// 查询音乐文件在媒体库是否存在Cursor cursor = this.getContentResolver().query(uri, null, MediaStore.MediaColumns.DATA + "=?", new String[] { path2 },null);if (cursor.moveToFirst() && cursor.getCount() > 0)String _id = cursor.getString(0);switch (id) {case AppConstant.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);case AppConstant.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);case AppConstant.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);case AppConstant.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);default:// 把需要设为铃声的歌曲更新铃声库getContentResolver().update(uri, cv, MediaStore.MediaColumns.DATA + "=?",new String[] { path2 });newUri = ContentUris.withAppendedId(uri, Long.valueOf(_id));// 一下为关键代码:switch (id) {case AppConstant.RINGTONE:RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE, newUri);case AppConstant.NOTIFICATION:RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_NOTIFICATION, newUri);case AppConstant.ALARM:RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM, newUri);case AppConstant.ALL:RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALL, newUri); rt = RingtoneManager.getRingtone(this, newUri);//rt.play();
android 怎么获取到系统的铃声
参考下面代码:
MediaPlayermp=newMediaPlayer();
mp.setDataSource(this,RingtoneManager
.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION));
mp.prepare();
mp.start();
}catch(Exceptione){
e.printStackTrace();
本回答由提问者推荐
Android系统如何设置铃声?
Android系统设置手机铃声和S60,WM系统差不多,同时很容易设置任意MP3铃声,比iPhone要方便很多。
1、系统自带铃声设置
首先介绍一下如何设置系统自带的一部分铃声。首先进入设置,选择声音。在声音设置中,我们可以对手机的铃声进行管理。勾选相应的功能可以实现相应的功能,比如静音、按键音、屏幕锁定提示音等。
需要设置来电铃声时,选择手机铃声项,系统会罗列出系统自带的一些铃声,选择后系统会自动播放预览音乐,选定后点击确定即可。设置短信铃声请选择通知铃声,操作类似。
2、第三方铃声设置
第三方铃声设置,意思是把自己下载好的mp3等音乐文件设置成铃声。您可以通过进入文件管理器,找到需要的mp3文件,在屏幕上长按该文件,会出现文件操作菜单,选择用作铃声即可。
文件管理器中设置铃声
在音乐播放器中,你也可以按菜单键,选择用作铃声即可,操作和塞班,WM等操作系统类似,非常简单。
安卓系统如何设置单独APP通知提示音
在待机模式中,点击【应用程序】。
选择【设定】。
选择【声音】。
选择【默认通知】。
选择想要设定的通知铃声。
选择【确定】即可。就是直接去搞就可以了
再看看别人怎么说的。