You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter应用Google Play发布因存储权限合规问题遭拒求助

Google Play发布Flutter应用存储权限合规调整方案

核心问题分析

Google Play当前对存储权限的管控核心是最小权限原则和媒体库规范使用,两次提交被拒的关键原因大概率是权限适配未符合Android 13+的细分权限规则,或存储操作存在合规性遗漏。

具体调整项

  • 替换权限声明:Android 13(API 33)及以上版本中,WRITE_EXTERNAL_STORAGE已被废弃,需在AndroidManifest.xml中替换为细分媒体权限,同时做好低版本兼容:

    <!-- Android 13+ 图片读写权限 -->
    <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
    <uses-permission android:name="android.permission.WRITE_MEDIA_IMAGES" />
    <!-- Android 12及以下版本兼容 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="32" />
    

    彻底移除MANAGE_EXTERNAL_STORAGE权限,包括Manifest文件和Google Play控制台的权限声明。

  • 规范存储路径使用:

    • 相册保存:确保通过Gal包调用系统MediaStore接口写入媒体库,禁止直接写入外部存储的公共目录(如/sdcard/下的非媒体库路径)。
    • 应用本地文件/数据库:必须存储在应用私有目录,Flutter中可使用path_provider包的getApplicationDocumentsDirectory()获取路径,绝对不能写到外部存储公共区域。
  • 优化权限申请逻辑:

    • 权限申请必须触发式:仅当用户点击“保存到相册”按钮时,才弹出权限申请对话框,禁止应用启动时提前申请。
    • 权限申请说明要精准:弹窗提示需明确告知用户权限用途,比如“需要权限将您的图片保存到相册,用于个人备份”,避免模糊表述。
  • 修正Google Play控制台权限声明:
    在控制台“权限和声明”板块,针对存储权限的用途描述需严格匹配实际场景:仅说明“用于将应用内生成的图片保存至设备相册,供用户个人备份使用”,不得提及任何无关存储用途。

  • 全面合规测试:

    • 在Android 13+设备上完整测试保存流程,确认权限申请、存储路径均符合规范。
    • 检查代码中是否存在直接操作外部存储公共目录的逻辑,这类代码必须全部替换为媒体库或私有目录操作。

内容的提问来源于stack exchange,提问作者maremaFNX

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 16:37:40