【问题标题】:How to identify the Downloads folder with Xamarin Forms如何使用 Xamarin Forms 识别下载文件夹
【发布时间】:2021-08-26 10:30:01
【问题描述】:

如何检测 Xamarin 表单中的“下载”文件夹?我需要特定的权利吗? 我在 GetFolderPath() 和 FileSystemHelper 中都找不到匹配的变量。 谢谢

【问题讨论】:

    标签: xamarin.forms


    【解决方案1】:

    在android中,从external files,我们可以通过以下代码获取Downloads文件夹:

     string path1 = Path.Combine(Android.OS.Environment.ExternalStorageDirectory.AbsolutePath, Android.OS.Environment.DirectoryDownloads);
    

    /storage/emulated/0/Download/之类的路径

    在ios中,使用this directory存储用户文档和应用数据文件。

    var documents = Environment.GetFolderPath (Environment.SpecialFolder.MyDocuments);
    

    如果要添加或修改Download文件夹中的文件,Android平台需要request permissions

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    

    有一个线程你可以看看:

    How to open PDF file in xamarin forms

    【讨论】:

    • 请注意所需的新 Android 11 MANAGE_EXTERNAL_STORAGE 权限。 WRITE_EXTERNAL_STORAGE 将在 Android 11 中被完全忽略。(在 Android 10 和清单中的 android:requestLegacyExternalStorage="true" 中它仍然可以工作。)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-05
    • 1970-01-01
    相关资源
    最近更新 更多