android - 白名单对于 WRITE_EXTERNAL_STORAGE 意味着什么?
问题描述
许可文档WRITE_EXTERNAL_STORAGE
说:
如果此权限未针对以 Build.VERSION_CODES.Q 之前的 API 级别为目标的应用程序列入白名单,则无法向应用程序授予此权限。
这是什么意思以及如何将权限“列入白名单”?
解决方案
在您所说的上下文中,一些针对某些权限的应用程序被“祖父”。根据许可文档:
随着时间的推移,可能会向平台添加新的限制,这样,为了使用某些 API,您的应用必须请求以前不需要的权限。由于现有应用假定对这些 API 的访问是免费的,Android 可能会将新的权限请求应用于应用的清单,以避免在新平台版本上破坏应用(因此,“祖父”您的应用以获得权限)。Android 根据为 targetSdkVersion 属性提供的值来决定应用程序是否需要权限。如果该值低于添加权限的版本,则 Android 添加权限。
例如,从 API 级别 19 开始强制执行 READ_EXTERNAL_STORAGE 权限,以限制对共享存储空间的访问。如果您的 targetSdkVersion 为 18 或更低,则此权限会添加到您在较新版本的 Android 上的应用中。
推荐阅读
- sql - 这段代码中的编译错误是什么...我尽力了,但我无法解决错误
- python - 解码base64编码的zip文件得到原始的zip文件
- java - 如何在jsp的选择选项中选择数据库值?
- c++ - 从后台线程或计时器滴答更新与 viewmodel 属性绑定的 xaml 控件
- mysql - mysql-test-run: *** 错误: 找不到任何
- php - 无法在 Ubuntu 14.04 64 位上安装 PHP 7
- dart - 飞镖中的泛型和动态有什么区别?
- c++ - R Rcpp 定义 qnorm 函数
- python - 使用 pcolormesh 按数组索引绘制颜色
- python-3.x - Groupby 字符串