4***@qq.com
4***@qq.com
  • 发布:2026-05-13 16:06
  • 更新:46 分钟前
  • 阅读:24

vivo审核时android.permission.WRITE_EXTERNAL_STORAGE权限不通过

分类:uni-app

vivo审核时android.permission.WRITE_EXTERNAL_STORAGE权限不通过

2026-05-13 16:06 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

针对vivo审核时 android.permission.WRITE_EXTERNAL_STORAGE 权限不通过的问题,这通常是因为从 Android 11 开始,该权限已被弃用,targetSdkVersion 较高的应用无法再通过此权限获得完整的存储访问能力,因此部分应用市场(如vivo)会拒绝含有此权限声明的应用。

根据知识库中的内容,以下是可以尝试的解决方案:

1. 移除已弃用的存储权限

如果应用实际上不需要在应用专属目录之外进行大范围的文件读写,可以尝试移除 WRITE_EXTERNAL_STORAGE 权限。

manifest.json 中,可以通过 “强制移除的权限” 功能来移除它。根据知识库,在 manifest.json 的可视化界面中,进入“安卓/iOS权限配置” -> “Android云打包权限配置” -> “强制移除的权限”,手动添加 android.permission.WRITE_EXTERNAL_STORAGE 权限即可。打包时系统会强制从最终的 AndroidManifest.xml 文件中删除该权限。

2. 处理由三方SDK或模块带入的权限

有时该权限是由三方SDK(如某些实人认证、语音识别等模块)默认包含的。可以在知识库中找到,FacialRecognitionVerify(实人认证) 模块就明确包含此权限。如果使用了这类模块,可以同样使用上述“强制移除的权限”功能来移除。

3. 适配分区存储 (Scoped Storage)

如果应用确实需要访问公共存储空间(如相册、下载目录等),则应适配分区存储模型,避免使用 WRITE_EXTERNAL_STORAGE

对于 Android 10(Q) 及以上版本,可以使用 MediaStore API 来访问公共媒体文件,或使用 Storage Access Framework (SAF) 让用户选择文件。对于需要管理所有文件的应用,可以申请特殊权限 android.permission.MANAGE_EXTERNAL_STORAGE,但该权限在 Google Play 等市场会受到严格审核。

4. 使用细粒度媒体权限 (针对 Android 13+ )

如果应用仅需访问媒体文件,在 Android 13(API 33) 及以上版本,应使用以下更细粒度的权限来替代 READ_EXTERNAL_STORAGE

  • android.permission.READ_MEDIA_IMAGES (访问图片)
  • android.permission.READ_MEDIA_VIDEO (访问视频)
  • android.permission.READ_MEDIA_AUDIO (访问音频)

5. 修改 targetSdkVersion (临时方案)

有开发者在问答社区中提及,将 targetSdkVersion 修改为 30 可以解决此问题。但需要注意,这只是一个临时的解决方案,Google Play 等市场要求应用的 targetSdkVersion 必须达到一定级别(如33),修改后可能无法上架这些市场。

总结建议:

  1. 首先检查应用是否真的需要全局存储权限。如果不需要,直接通过“强制移除的权限”功能删除 WRITE_EXTERNAL_STORAGE 即可。
  2. 如果需要访问媒体文件,请适配 Android 13 的细粒度权限(READ_MEDIA_IMAGES 等)。
  3. 如果必须拥有类似全局文件管理的功能,才考虑申请 MANAGE_EXTERNAL_STORAGE 权限,并准备好接受应用市场的严格审查。

更详细的权限配置说明可以参考文档:Android平台额外添加权限

内容为 AI 生成,仅供参考
4***@qq.com

4***@qq.com (作者) - 菜鸟

去除android.permission.WRITE_EXTERNAL_STORAGE权限后uni.saveImageToPhotosAlbum无法保存图片到相册

要回复问题请先登录注册