Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.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 使用FileProvider使用android默认应用程序打开映像(内部存储)_Java_Android_Android Intent_Android Contentprovider - Fatal编程技术网

Java 使用FileProvider使用android默认应用程序打开映像(内部存储)

Java 使用FileProvider使用android默认应用程序打开映像(内部存储),java,android,android-intent,android-contentprovider,Java,Android,Android Intent,Android Contentprovider,我有一张图片存储在我的内部应用程序存储器中,我想用android默认应用程序(gallery或任何其他应用程序)打开它 因此,我使用的是一个文件提供商,我的代码在android 4.3上运行良好,但在某些版本(例如2.3.6)上,它不工作,应用程序会自动打开,但随后会出现黑屏,什么都没有。 我的应用程序需要与API-10兼容 我读了很多关于这个问题的话题,似乎没有什么能解决它。代码可能没有错,因为它在4.3上工作。。。 有什么想法吗 启动活动的我的代码: File file = getMyFil

我有一张图片存储在我的内部应用程序存储器中,我想用android默认应用程序(gallery或任何其他应用程序)打开它

因此,我使用的是一个文件提供商,我的代码在android 4.3上运行良好,但在某些版本(例如2.3.6)上,它不工作,应用程序会自动打开,但随后会出现黑屏,什么都没有。 我的应用程序需要与API-10兼容

我读了很多关于这个问题的话题,似乎没有什么能解决它。代码可能没有错,因为它在4.3上工作。。。 有什么想法吗

启动活动的我的代码:

File file = getMyFile();
Uri contentUri = FileProvider.getUriForFile(getContext(), <full-path-to-my-activity>, file);

Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(contentUri, "image/*");
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent = Intent.createChooser(intent, "Open with");

startActivity(intent);
File File=getMyFile();
Uri contentUri=FileProvider.getUriForFile(getContext(),file);
意图=新意图();
intent.setAction(intent.ACTION\u视图);
setDataAndType(contentUri,“image/*”);
intent.setFlags(intent.FLAG_GRANT_READ_URI_PERMISSION|intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(intent.FLAG\u活动\u新任务);
intent=intent.createChooser(intent,“打开时使用”);
星触觉(意向);
在我的清单中:

<provider
    android:name="android.support.v4.content.FileProvider"
    android:authorities="<full-path-to-my-activity>"
    android:exported="false"
    android:grantUriPermissions="true">
    <meta-data
        android:name="android.support.FILE_PROVIDER_PATHS"
        android:resource="@xml/provider"/>
</provider>

my provider.xml:

<?xml version="1.0" encoding="utf-8"?>
<paths>
<files-path
    name="pictures"
    path=""/>
</paths>


问题很可能出现在其他应用程序中,而不是您的应用程序中。很多Android开发者都没有很好地处理
内容://
Uri
值:我试过的应用程序是官方的Android gallery应用程序。我猜它应该行得通不?“我猜它应该行得通不?”——我不会这么想,尤其是回到那么远的地方。LogCat是否显示任何错误消息,可能来自图库?不,LogCat没有显示任何错误消息。请尝试模拟器。问题可能是三星更换Gallery造成的。