android - 如何获取 4.4 kitkat 上的铃声 URI

标签 android uri android-4.4-kitkat mediastore ringtone

if (Build.VERSION.SDK_INT > 18) {
 // I have no idea what to do... :( 



 } else { // It works good under api level 18 
   Uri DefaultRingtoneUri = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE);

 if (DefaultRingtoneUri != null) {
  Cursor c = getContentResolver().query(DefaultRingtoneUri, null, null, null, null);
  c.moveToFirst();
  BellName = c.getString(c.getColumnIndex(MediaStore.MediaColumns.TITLE));
  mediaURI = String.valueOf(DefaultRingtoneUri);
 } 
}

如何获取我的默认铃声 URI?

In else 代码在 4.3 及以下版本上运行良好。

最佳答案

这是我用来播放默认声音的。

Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification);
r.play();

参见How to play ringtone/alarm sound in Android欲了解更多信息。

关于android - 如何获取 4.4 kitkat 上的铃声 URI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21238621/

相关文章:

android - 如何在android中获取图像资源的uri

android - FLAG_SHOW_WHEN_LOCKED 在 4.4.2 的最新版本中不起作用

android - 在 kitkat Nexus7 中裁剪图像时图库已停止

android - 新的 gcmSender 值停止所有推送通知工作

android - 关于Android中保存和加载对象的问题

java - java(android)中的正则表达式可防止除一个之外的其他网址

uri - 在 dropwizard 中为 REST web 服务配置 URI 前缀

Android 内容提供商相同的 URI 不匹配

android - API 级别 19 上的 grantUriPermission 中的 IllegalArgumentException

Android DialogFragment 在屏幕旋转时崩溃