在 Android 中将字符串转换为 Uri
Posted
技术标签:
【中文标题】在 Android 中将字符串转换为 Uri【英文标题】:Turning a string into a Uri in Android 【发布时间】:2011-02-12 03:19:12 【问题描述】:我有一个字符串,'songchoice'
。我希望它成为一个“Uri”,这样我就可以使用MediaPlayer.create(context, Uri)
如何将歌曲选择转换为 Uri?
【问题讨论】:
【参考方案1】:Uri myUri = Uri.parse("http://www.google.com");
这是文档http://developer.android.com/reference/android/net/Uri.html#parse%28java.lang.String%29
【讨论】:
当然,如果你在应用程序中传递的字符串中有任何空格,如果你用这个 Uri 启动一个 Intent,就会到处乱扔垃圾。【参考方案2】:Uri.parse(STRING);
见文档:
字符串:符合 RFC 2396 的编码 URI
网址在使用前必须规范化,如下所示:
Uri.parse(Uri.decode(STRING));
【讨论】:
【参考方案3】:我必须转换为 URI 的字符串是本地文件路径,但没有 file://
前缀。所以就算了
Uri.parse(Uri.decode(STRING));
导致FileNotFoundException: No content provider
(另见this question)。
我首先创建了一个File
对象,即:
Uri myUri = Uri.fromFile(new File(STRING));
【讨论】:
以上是关于在 Android 中将字符串转换为 Uri的主要内容,如果未能解决你的问题,请参考以下文章