将URL从SD卡转换为内容uri

时间:2013-05-08 12:02:10

标签: android uri

我想绕过Intent.ACTION_PICK这样做我需要插入内容uri但我有字符串与url。

我需要转换此格式:

 /mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4

到uri格式:

content://media/external/video/media/2308

我发现了这个:

How to convert a file:// uri into content:// uri?

这是图像 Convert file uri to content uri

更新:

我有一个发送文件的方法,这个方法获取内容uri。

所以要使用这个方法我正在使用intent,因为输出是内容uri。

我正在使用这个意图:

Intent intent = new Intent(Intent.ACTION_PICK);
        intent.setType("video/*");
        startActivityForResult(intent, RESULT_PICK_IMAGE_CROP);

这个意图打开文件夹,用户选择文件夹和视频文件后

我以前的问: intent ACTION_PICK in specific folder

问题是我只需要特定的文件夹,但我在这里红了

Using Intent.ACTION_PICK for specific path

这是不可能的。

所以我尝试将我所拥有的路径转换为内容网址

2 个答案:

答案 0 :(得分:3)

段:

Uri.fromFile(new File("/mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4"))

Uri.parse(new File("/mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4").toString())

答案 1 :(得分:0)

您可以使用

Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
File file = new File("%PATH_TO_FILE%/test.mp4");
intent.setDataAndType(Uri.fromFile(file), "video/*");
startActivity(intent);

这将使用默认视频播放器绕过选择

打开文件

您可以从像这样的文件中获取内容URI

Uri myUri = Uri.fromFile(new File("/sdcard/cats.jpg"));

或者像这样

Uri myUri = Uri.parse(new File("/sdcard/cats.jpg").toString());

那应该给你一个你可以使用的Uri

参考:Get content uri from file path in android