Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.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 FileProvider.GetUriForFile()引发异常。找不到配置的根目录_Android_Xamarin - Fatal编程技术网

Android FileProvider.GetUriForFile()引发异常。找不到配置的根目录

Android FileProvider.GetUriForFile()引发异常。找不到配置的根目录,android,xamarin,Android,Xamarin,下面是我的代码,我试图在其中创建ContentUri,以便调用pdf查看器 ~provider,位于中。我不知道mRoots.entrySet()中有什么东西是为了使应用程序崩溃 因此,在阅读源代码后,我发现提供程序正在尝试将/data/data/com.package/files/Library/OfflineAssets匹配到/data/data/com.package/。/Library/OfflineAssets 所以基本上我对android文件目录的理解是不正确的 确保您在data/d

下面是我的代码,我试图在其中创建ContentUri,以便调用pdf查看器


~provider,位于
中。我不知道
mRoots.entrySet()中有什么东西是为了使应用程序崩溃

因此,在阅读源代码后,我发现提供程序正在尝试将/data/data/com.package/files/Library/OfflineAssets匹配到/data/data/com.package/。/Library/OfflineAssets

所以基本上我对android文件目录的理解是不正确的

确保您在data/data/com.package/files/之后保存文件的目录与
路径属性匹配

~Updated

我也遇到了类似的问题(在我的应用程序中,我试图调用摄像头而不是PDF查看器),但后来我发现我的代码中有一个输入错误。 输入错误在AndroidManifest.xml中,正好在标记的“authorities”行中

对我来说

android:authorities="com.stackoverflow.test.camerawithfileprovider.fileprovider"
不起作用(当我调用camera实例时,应用程序崩溃),但如果我删除“文件”并替换该字符串,如下所示:

android:authorities="com.stackoverflow.test.camerawithfileprovider.provider"
我的应用程序运行平稳(应用程序拍摄照片,存储照片,并在客户端应用程序中返回活动预览)

你的应用程序也有同样的问题吗

var dir = "/data/data/com.tripleplay_services.triplesport/files/../Library/OfflineAssets/xamarin_documentation1_v1.pdf";
var newFile = new File(dir);
if(newFile.Exists ()) {
    var contentUri = FileProvider.GetUriForFile(Context, "com.company.fileprovider", newFile);
}
android:authorities="com.stackoverflow.test.camerawithfileprovider.fileprovider"
android:authorities="com.stackoverflow.test.camerawithfileprovider.provider"