面向Android 11及以上,可编辑配置文件应存放于何处?
Android 11+ 用户可编辑JSON配置文件的合规存储方案
优先推荐的存储位置
- 公共Documents目录
这是最佳选择:用户能通过系统文件管理器直接找到并编辑你的JSON配置文件,且Android 11+不需要申请完整存储权限就能访问。
实现时可以用ACTION_CREATE_DOCUMENT让用户确认保存路径(默认引导到Documents目录即可),创建后通过ContentResolverUri读写文件就行,全程无需额外权限。 - 应用专属外部存储目录
路径为/storage/emulated/0/Android/data/[你的应用包名]/files/,这里的文件无需用户交互就能直接创建,应用读写也不需要权限。但默认情况下,多数文件管理器会隐藏Android目录,用户需要手动开启"显示隐藏文件"才能找到并编辑。适合对用户编辑便捷性要求不那么高,且配置文件随应用卸载清除的场景。
避坑要点
- 别再用
Environment.getExternalStorageDirectory(),Android 11+已经限制了对这个路径的直接访问,必须改用MediaStore或存储访问框架(SAF)。 - 选公共Documents目录的话,首次创建需要用户确认位置,后续可以保存Uri来重复访问,不用每次都弹选择框。
- 应用专属外部存储的文件会随应用卸载被删除,公共Documents的文件会保留,根据你的需求选对应的位置。
内容的提问来源于stack exchange,提问作者michuu
相关产品推荐
相关产品推荐

