Xamarin Android-写入文件-访问被拒绝
我正在使用PCL项目中的以下代码获取保存video.mp4文件的路径,该代码返回“/storage/emulated/0/DCIM/”: 我已经向Android.Manifest添加了权限,如下所示:Xamarin Android-写入文件-访问被拒绝,xamarin,xamarin.forms,xamarin.ios,xamarin.android,Xamarin,Xamarin.forms,Xamarin.ios,Xamarin.android,我正在使用PCL项目中的以下代码获取保存video.mp4文件的路径,该代码返回“/storage/emulated/0/DCIM/”: 我已经向Android.Manifest添加了权限,如下所示: <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
当程序运行到“target.Write(buffer,0,bytes);时,我得到一个异常“访问路径被拒绝”,所以有人告诉我为什么会发生这个错误吗
我已经尝试了插件。权限:
#if __ANDROID__
var dir = Android.OS.Environment
.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDcim);
var publicPath= dir.AbsolutePath;
var newFilepath = System.IO.Path.Combine(publicPath, fileName);
video.path = newFilepath;
#endif
Dictionary<Permission, PermissionStatus> results =
await CrossPermissions.Current.RequestPermissionsAsync(Permission.Storage);
PermissionStatus status = results[Permission.Storage];
var dir = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
video.path = System.IO.Path.Combine(dir, filename);
downloadVideo功能可以将所有字节数据写入该路径而不会出错,但在浏览到该路径时,我看不到任何文件
以下是我的SDK配置:
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="25" />
因为您的目标sdk是25,所以您必须。如何在xamarin中执行此操作,您可以参考此内容。您可以提及所使用的目标sdk版本吗?@GauravKP:这里是:看起来您尝试的目录可能不存在,请尝试保存在现有目录中,或者在保存前创建目录file@GauravKP:我已经调用了新的FileInfo(video.path).Directory.Create();在调用下载视频之前,因为您的目标sdk是25,对吗?关于如何在xamarin中实现这一点,您可以参考本文。
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="25" />