//設(shè)置鈴聲
public static void setRingtone(File rt, Context context) {
if (rt != null && context != null && rt.exists()) {
//先掃描文件, 添加到媒體庫中
scanForMedia(rt, context);
//再從媒體庫中,搜索該文件, 修改添加到鈴聲列表
Cursor c = context.getContentResolver().query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null,
"_data = ?", new String[]{rt.getAbsolutePath()}, null);
if (c.getCount() > 0) {
c.moveToFirst();
int id = c.getInt(0);
//添加到鈴聲列表
ContentValues values = new ContentValues();
values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
context.getContentResolver().update(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
values, "_id = ?", new String[] {id + ""});
//得到該鈴聲的Uri
Uri ringtone = Uri.withAppendedPath(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, id + "");
//設(shè)置為默認(rèn)鈴聲
RingtoneManager.setActualDefaultRingtoneUri(
context,
RingtoneManager.TYPE_RINGTONE,
ringtone
);
}
c.close();
}
}
}