Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从Android Nougat上的文档打开文件_Java_Android_Android Intent - Fatal编程技术网

Java 从Android Nougat上的文档打开文件

Java 从Android Nougat上的文档打开文件,java,android,android-intent,Java,Android,Android Intent,我正在使用本文中的file helper类,但它在每种情况下都不能正常工作。我正在使用Intent chooseentent=newintent(Intent.ACTION\u OPEN\u文档)以启动文件选择器。我有安卓牛轧糖,我收到onActivityResult uri:content://com.android.externalstorage.documents/document/home%3Aimage.png 这个主页:是什么意思?如何访问此文件?我尝试使用环境.getExterna

我正在使用本文中的file helper类,但它在每种情况下都不能正常工作。我正在使用
Intent chooseentent=newintent(Intent.ACTION\u OPEN\u文档)以启动文件选择器。我有安卓牛轧糖,我收到onActivityResult uri:
content://com.android.externalstorage.documents/document/home%3Aimage.png

这个
主页:
是什么意思?如何访问此文件?我尝试使用
环境.getExternalStorageDirectory()
系统.getenv(“外部存储”)
,但无法获得访问权限。

以下代码可用于获取文档路径:

Intent galleryIntent = new Intent();
        galleryIntent .setType("image/*");
        galleryIntent .setAction(Intent.ACTION_GET_CONTENT);
        startActivityForResult(Intent.createChooser(galleryIntent , getString(R.string.app_name)),REQUEST_CODE);
OnActivityResult():

您可以使用“uri”变量值来获取位图。如果要同时打开文档其他图像,请删除以下行:

galleryIntent .setType("image/*");

以下代码可用于获取文档路径:

Intent galleryIntent = new Intent();
        galleryIntent .setType("image/*");
        galleryIntent .setAction(Intent.ACTION_GET_CONTENT);
        startActivityForResult(Intent.createChooser(galleryIntent , getString(R.string.app_name)),REQUEST_CODE);
OnActivityResult():

您可以使用“uri”变量值来获取位图。如果要同时打开文档其他图像,请删除以下行:

galleryIntent .setType("image/*");

例如,您可以通过打开uri上的InputStream来访问内容方案

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

BitmapFactory.decodeFromStream(is)将愉快地从您的流中读取内容。

您可以通过在uri上打开例如InputStream来访问内容方案

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

BitmapFactory.decodeFromStream(is)将很高兴从您的流中读取数据。

您是否收到任何错误或异常,请将其粘贴到此处?其他没有错误,路径不正确,当我尝试创建位图时,它为空。您是否收到任何错误或异常,请将其粘贴到此处?其他没有错误,路径不正确,当我尝试创建位图时,它是空的。有没有办法获取Uri来定位文件?有没有办法获取Uri来定位文件?