Android 将url从SD卡转换为内容uri

Android 将url从SD卡转换为内容uri,android,uri,Android,Uri,我想绕过Intent.ACTION\u PICK这样做,我需要插入内容uri,但我有带有url的字符串 我需要转换此格式: /mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4 content://media/external/video/media/2308 到uri格式: /mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4 content://media/e

我想绕过Intent.ACTION\u PICK这样做,我需要插入内容uri,但我有带有url的字符串

我需要转换此格式:

 /mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4
content://media/external/video/media/2308
到uri格式:

 /mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4
content://media/external/video/media/2308
我发现:

这是我的想象

更新:

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

所以要使用这个方法,我使用intent,因为输出是contenturi

我使用这个意图:

Intent intent = new Intent(Intent.ACTION_PICK);
        intent.setType("video/*");
        startActivityForResult(intent, RESULT_PICK_IMAGE_CROP);
此意向打开文件夹,用户拾取文件夹和之后的视频文件

我以前的问题是:

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

这是不可能的

因此,我尝试将路径转换为内容url片段:

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

片段:

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

你可以用

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 myUri = Uri.fromFile(new File("/sdcard/cats.jpg"));
Uri myUri = Uri.parse(new File("/sdcard/cats.jpg").toString());
这将为您提供一个可以使用的Uri

参考资料:

您可以使用

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 myUri = Uri.fromFile(new File("/sdcard/cats.jpg"));
Uri myUri = Uri.parse(new File("/sdcard/cats.jpg").toString());
这将为您提供一个可以使用的Uri


参考资料:

我收到了file:///mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4 不是这种格式content://media/external/video/media/2308i 接收file:///mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4 不是这种格式content://media/external/video/media/2308You 可以使用[Uri.parse(fileName)]()您可以使用[Uri.parse(fileName)]我试过了,但我不知道为什么不工作意向=新意向;setAction(android.content.intent.ACTION\u视图);File File=新文件(“/mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4”);intent.setDataAndType(Uri.fromFile(file),“video/*”//星触觉(意向);startActivityForResult(意图、结果、拾取、图像、裁剪);结果是什么?那是你自己戴的面具吗?我没听说过,它只是最后的整数,比如4,结果我有了开关。在结果中,FileURI=data.getData();您确定尝试启动的应用程序将返回结果吗?你犯了什么错误。如果没有像Logcats这样的东西,很难看到实际发生的事情。可能有很多事情。是否有与MP4兼容的视频播放器。视频文件确实存在吗?另外,你想用这个视频做什么?命名了标志RESULT\u PICK\u IMAGE\u CROPHave更新了我关于如何从文件中获取内容Uri的答案我尝试了这个,但我不知道为什么不使用work Intent Intent=new Intent();setAction(android.content.intent.ACTION\u视图);File File=新文件(“/mnt/sdcard/Movies/Your_voice/Your_voice080513_141510.mp4”);intent.setDataAndType(Uri.fromFile(file),“video/*”//星触觉(意向);startActivityForResult(意图、结果、拾取、图像、裁剪);结果是什么?那是你自己戴的面具吗?我没听说过,它只是最后的整数,比如4,结果我有了开关。在结果中,FileURI=data.getData();您确定尝试启动的应用程序将返回结果吗?你犯了什么错误。如果没有像Logcats这样的东西,很难看到实际发生的事情。可能有很多事情。是否有与MP4兼容的视频播放器。视频文件确实存在吗?另外,在命名标志RESULT\u PICK\u IMAGE\u CROPHave更新了我关于如何从文件中获取内容Uri的答案之后,您打算如何处理此视频