【问题标题】:Get content:// Uri of Current Ringtone获取当前铃声的内容:// Uri
【发布时间】:2012-09-04 05:55:36
【问题描述】:

我正在尝试获取当前铃声的内容 uri (content://media/external/...)。

我得到的当前设备铃声是这样的:

Uri uri = RingtoneManager.getActualDefaultRingtoneUri(context, RingtoneManager.TYPE_RINGTONE);`

但是,调用uri.getPath() 会返回external/audio/media/50。它前面缺少content://media/。我曾考虑过手动将其粘贴到开头,但这似乎是错误的。

如何正确获取当前铃声的content:// uri?

谢谢!

【问题讨论】:

  • 不需要获取路径,直接使用uri
  • 但我需要保存对当前铃声的引用,以便稍后进行设置。我将它保存在数据库中。到目前为止,我一直在保存 content:// 路径,还有其他方法吗?
  • 没有 uri 已经有 content:// 部分吗?
  • 就像我上面所说的,调用 getPath() 返回没有 content:// 附加的路径。是否像手动将其添加到开头一样简单?只是似乎错了。
  • 啊,就是这么简单。谢谢,那是我所缺少的。如果你想正式回答这个问题,我一定会投票给你正确答案。

标签: android audio uri ringtone android-contentresolver


【解决方案1】:

使用uri.toString() 而不是uri.getPath()。

uri.getPath() 通常在 ContentProvider 想要解码 uri 并创建查询时使用。

【讨论】:

    猜你喜欢
    • 2023-04-09
    • 1970-01-01
    • 2014-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多