Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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
Android 找不到";getUriForFile";FileProvider中的方法_Android - Fatal编程技术网

Android 找不到";getUriForFile";FileProvider中的方法

Android 找不到";getUriForFile";FileProvider中的方法,android,Android,我正在尝试实现一个文件提供商,允许我与电子邮件和其他应用程序共享本地、私人图像。我一直在遵循《Android开发者指南》的说明,开始使用“getUriForFile”函数,Eclipse告诉我必须创建该方法。我的印象是这应该在android.support.v4.content包中,它在应用程序的参考库中,但它不在那里 我已将以下内容添加到我的清单中: <provider android:name="android.support.v4.content.FileProvider" andr

我正在尝试实现一个文件提供商,允许我与电子邮件和其他应用程序共享本地、私人图像。我一直在遵循《Android开发者指南》的说明,开始使用“getUriForFile”函数,Eclipse告诉我必须创建该方法。我的印象是这应该在android.support.v4.content包中,它在应用程序的参考库中,但它不在那里

我已将以下内容添加到我的清单中:

<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.gelbintergalactic.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/my_paths" />
</provider>

我遗漏了哪一步?

是的,开发指南中的说明不是最好的
getUriForFile()
是FileProvider类的静态方法,因此需要执行以下操作:

Uri contentUri =
  FileProvider.getUriForFile(this, "com.gelbintergalactic.fileprovider", newfile);

当我尝试在清单和xml路径文件就绪的情况下使用应用程序,但删除了运行时代码时,我在LogCat中得到了以下结果:11-12 11:57:39.357:E/AndroidRuntime(11019):原因:java.lang.ClassNotFoundException:android.support.v4.content.FileProviderI找到了FileProvider的明显源代码,并能够将其添加到我的应用程序代码中并使其正常工作,但为什么我与Eclipse链接的android.support.v4.content软件包中没有这个功能,这对我来说仍然是一个谜。我现在知道了将当前的android.support.v4库放入我的应用程序的正确方法。右键单击软件包,Android工具,添加支持库。。。
Uri contentUri = getUriForFile(this, "com.gelbintergalactic.fileprovider", newfile);
Uri contentUri =
  FileProvider.getUriForFile(this, "com.gelbintergalactic.fileprovider", newfile);