[英]Android Studio: Set mp3 from raw folder as device ringtone in 2020
[英]Set .mp3 file as ringtone from assets
我正在尝试将/ assets文件夹中的.mp3文件设置为铃声。 这是我的代码
File file = new File("file:///android_asset/my_sounds/", name);
ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, file.getAbsolutePath());
values.put(MediaStore.MediaColumns.TITLE, name.replace(".mp3", ""));
values.put(MediaStore.MediaColumns.SIZE, file.length());
values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3");
values.put(MediaStore.Audio.Media.ARTIST,
media.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ARTIST));
values.put(MediaStore.Audio.Media.DURATION,
media.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION));
uri = MediaStore.Audio.Media.getContentUriForPath(file.getAbsolutePath());
mUri = getContext().getContentResolver().insert(uri, values);
values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
RingtoneManager.setActualDefaultRingtoneUri(getContext(),
RingtoneManager.TYPE_RINGTONE, mUri);
当我转到设置(手机的设置)时,会看到我设置为铃声的歌曲名称,但是当有人打电话给我时,它会播放旧的铃声。
File file = new File("file:///android_asset/my_sounds/", name);
ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, file.getAbsolutePath());
values.put(MediaStore.MediaColumns.TITLE, name.replace(".mp3", ""));
values.put(MediaStore.MediaColumns.SIZE, file.length());
values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3");
values.put(MediaStore.Audio.Media.ARTIST,
media.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ARTIST));
values.put(MediaStore.Audio.Media.DURATION,
media.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION));
values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
uri = MediaStore.Audio.Media.getContentUriForPath(file.getAbsolutePath());
mUri = getContext().getContentResolver().insert(uri, values);
RingtoneManager.setActualDefaultRingtoneUri(getContext(),
RingtoneManager.TYPE_RINGTONE, mUri);
将铃声设置为mUri后,您已经放置了铃声。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.