Skip to content
阅读进度

如何在不申请 WRITE_EXTERNAL_STORAGE 权限的情况下保存图片到相册? ​

返回 数据与搜索 目录

标准回答 ​

在 Android 10/API 29 及以上,向 MediaStore.Images 插入 DISPLAY_NAME、MIME_TYPE、RELATIVE_PATH 等元数据,取得 URI 后用 ContentResolver.openOutputStream 写入图片。写入期间可设 IS_PENDING=1,成功后改为 0;失败需清理未完成条目。

**权限与版本条件:**通过 MediaStore 添加应用自己创建的媒体通常无需 WRITE_EXTERNAL_STORAGE;Android 9 及更早的公共目录写入规则不同,不能套用这条结论。

通俗例子 ​

截图完成后,在图片集合里创建记录、打开输出流写入图片,完成后再让条目可见;具体字段和兼容路径按系统版本处理。

参考资料 ​

内容来源 ​

用完整回答理解机制,用真实证据解释项目。