从共享视频文件中获取Real FilePath

时间:2017-12-15 14:37:01

标签: android path send

大家早上好

我的应用程序中有此代码,它是通过共享按钮从另一个应用程序接收文件。在这里,没问题。

Intent intent = getIntent();
String action = intent.getAction();
String type = intent.getType();
if (Intent.ACTION_SEND.equals(action) && type != null) {
    if (type.startsWith("video/")) {
        Uri imageUri = intent.getParcelableExtra(Intent.EXTRA_STREAM);
        String path = imageUri.getPath();
        // /item/4567592  --> whatsapp
        // /media/telegram/telegram docuemnts/name.mp4 --> telegram
        // no more apps tested
    }
}

问题是我想要文件的绝对绝对路径,是的,我不想使用文件或其他任何东西,我想要设备上文件的实际路径。

我已经尝试了1000件事,也是使用Cursor的解决方案,但是它们返回null或其他令人费解的错误。

我试图将文件保存在内部存储器或应用程序的缓存中,但我也没有得到它。

连连呢? 谢谢!

1 个答案:

答案 0 :(得分:2)

  

我想要文件的绝对绝对路径。

你不应该那样想。只要您不必提供“路径”,就没有理由这样做。到外部图书馆。

只需打开InputStream即可。从流中读取并保存到文件。

InputStream is = getContentResolver().openInputStream(imageUri);

您可以将输入流用作文件输入流。