繁体   English   中英

System.UnauthorizedAccessException为什么

[英]System.UnauthorizedAccessException Why

嗨,我有许可的问题(我认为)。 我试图通过MegaApiClient从Mega.nz下载文件,当它试图这样做时出现问题:“System.UnauthorizedAccessException:拒绝访问路径'/ storage / emulated / 0 / Download'。”

所以我尝试了不同的方法,如更改路径文件夹或只是简单地创建新文件,并将所有内容写入该新文件,但没有任何作用。 当然我已经在AndroidManifest.xml中添加了权限

<uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" />
<usespermissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
 var client = new MegaApiClient();
 client.LoginAnonymous();
 Uri fileLink = new Uri(Link);
 INodeInfo node = client.GetNodeFromLink(fileLink);
 client.DownloadFile(node, node.Name); //problem occurs here 
 client.Logout();

由于您测试应用程序的设备/模拟器具有API 23或更高版本,因此可能会出现此问题。 这意味着清单权限不够,您需要添加要求编写文件的运行时权限。

此链接将使用xamarin解释它这是官方文档

运行时权限基本上向用户显示一个对话框,该对话框允许他决定是否允许App访问例如设备的内部存储。

哦, 这篇文章也将帮助您实现它。

我认为你写的是内部记忆而不是外部记忆。

在新的Android上,您需要让用户接受权限。 所以大多数都有一个警告弹出窗口允许写入权限,位置等。

您也可以尝试这样: Android Dev Console支持

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM