【问题标题】:Access to the xamarin.form Android 10 sd card访问 xamarin.form Android 10 sd 卡
【发布时间】:2020-03-19 11:23:06
【问题描述】:

我必须访问外部 sd 卡上的文件,但我不能,因为返回错误。

如何激活访问 SD 卡的授权?

我的代码:

private void Button_Clicked(object sender, EventArgs e)
{
   var filesPath = Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDocuments).Path;
   var files = System.IO.Directory.GetFiles(filesPath);
}

错误是:

对路径'/storage/emulated/0/Documents'的访问被拒绝。

【问题讨论】:

  • 您可以使用文件资源管理器访问文件吗?对于智能卡,我通常推荐 3 个步骤 1) 首先确保您可以使用文件资源管理器获得完全访问权限。这可以确保您正确安装了驱动程序并且您拥有要解锁的证书。 2)使用文件资源管理器解锁卡,然后将代码写入读/写设备。这可确保您的读/写卡与设备一起使用。设备可以有不同的大小(16、32、64),这确保您读写方法正确寻址卡 3)最后编写代码以在 c# 中解锁卡。这在第 2 步之前很难做到。

标签: c# android xamarin android-external-storage


【解决方案1】:

您是否请求了运行时权限?

在6.0之前,Android的权限系统一直是用户在安装过程中向用户请求授权,所以应用安装后可能会在用户不知情的情况下获取一些隐私信息。

为了解决这个问题,Google 在 Android 6.0 中改进了权限系统,将一些与用户隐私相关的权限改为在应用运行时动态向用户请求授权。

您可以参考RuntimePermission

【讨论】:

    猜你喜欢
    • 2015-07-27
    • 2015-06-21
    • 1970-01-01
    • 2011-11-13
    • 2011-10-17
    • 1970-01-01
    • 2021-02-18
    • 1970-01-01
    • 2011-07-06
    相关资源
    最近更新 更多