zerocdn 2023-06-26 12:29 采纳率: 0%
浏览 34

Android13无法使用SAF授权访问data目录

使用SAF授权访问data目录在android12的时候还能用,到了13就提示无法使用此文件夹,请问要改哪里才能正常授权?

  • 写回答

2条回答 默认 最新

  • 卑微的Coder 2023-06-26 12:52
    关注

    在 Android 11(API 级别 30)及更高版本中,SAF(Storage Access Framework)的使用发生了一些变化。

    在旧版本的 Android 中,SAF 的操作是通过 Intent 来完成的,开发者可以调用 ACTION_OPEN_DOCUMENT、ACTION_CREATE_DOCUMENT 等 Action 来启动文件选择器、新建文件等操作,以此来获取 SAF URI 来访问到特定的文件的。

    而在 Android 11、12、13中,SAF 的操作需要添加以下权限:

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

    需要注意的是,从 Android 11 开始,MANAGE_EXTERNAL_STORAGE 权限是受到限制的,只有符合特定条件的应用程序才能获得该权限。这些应用程序必须:

    在除 Google Play 之外的渠道进行分发。
    需要提供文件管理器等外部存储空间访问功能,以便用户可以上传或下载文件等操作。
    需要将应用程序标记为 system level,以便在设备首次启动时就可以安装。

    评论

报告相同问题?

问题事件

  • 创建了问题 6月26日