小编Her*_*rHo的帖子

在 Android 中设置自定义闹钟音改为播放默认音调

我正在编写一个音板应用程序,并希望将自定义 ogg 文件设置为铃声、通知音和闹钟。我正在使用 RingtoneManager 来做到这一点:

// register with MediaStore content provider
ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, newSoundFile.getAbsolutePath());
values.put(MediaStore.MediaColumns.TITLE, soundName);
values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/ogg");
values.put(MediaStore.MediaColumns.SIZE, newSoundFile.length());
values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);
values.put(MediaStore.Audio.Media.IS_ALARM, true);
values.put(MediaStore.Audio.Media.IS_MUSIC, false);

// delete row if it exists
Uri uri = MediaStore.Audio.Media.getContentUriForPath(newSoundFile.getAbsolutePath());
getContentResolver().delete(uri, MediaStore.MediaColumns.DATA + "=\"" + newSoundFile.getAbsolutePath() + "\"", null);

Uri newUri = getContentResolver().insert(uri, values);
RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM, newUri);
Run Code Online (Sandbox Code Playgroud)

它适用于铃声和通知(通过替换 TYPE_ALARM)但不适用于警报。相反,它只播放默认的 Android 通知声音。

有没有人有同样的问题或可能的解决方案?

android alarm ringtone

5
推荐指数
0
解决办法
1755
查看次数

标签 统计

alarm ×1

android ×1

ringtone ×1