Repository navigation
v2.1.0
撤回 2.0.0 的文件夹递归。跨应用分享只授予目录这一个 URI,列子项需要 FLAG_GRANT_PREFIX_URI_PERMISSION 或 SAF 树授权,普通 ACTION_SEND 不会给;HyperOS 3 等来源上文件夹分享必然失败。与其留一个假入口,不如把路径/链接当纯文本交出去。
Changed
- 文件夹分享改为纯文本:分享的是文件夹时,直接把它的 URI/路径放进文本模式——可改名、可保存为 UTF-8 无 BOM 的
.txt、也可点“发送”原样转发来源请求;不再尝试读取文件夹内容。 - 多文件:只处理文件;同时选中文件夹时跳过文件夹,状态栏提示跳过了几个;全部是文件夹时整单降级为纯文本。
- 多文件保存路径:统一写
Download/根(Android 7–9 写用户选中目录的根),不再创建/复用来源的目录层级。 - 版本号:
versionName2.1.0,versionCode最低 16(覆盖 v2.0.0 的 15)。 - 测试:
folderShare_preservesNestedStructure换成folderShare_isTreatedAsPlainText——断言预览是文件夹 URI、可改名/保存/发送、重建后仍在,并校验保存的.txt内容就是该 URI。instrumentation 仍为 14 条。
Removed
- 文件夹递归展开(
DocumentsContract子项遍历)、RELATIVE_PATH子目录与 SAF 逐级建目录的代码及文案。 status_folder_unreadable(“无法读取分享的文件夹”)——这条失败路径已经不存在。
Fixed
- 文件夹分享在真机上必然失败:来源只授予目录本身,列子项会抛
SecurityException,界面停在“无法读取分享的文件夹”。现在不再把文件夹当成可保存的目录树。 - 文本模式的状态/提示能区分“普通文本”“未知请求转储”“文件夹路径”三种来源,不再是笼统的文本提示。
本包已签名,证书 SHA-256: 3682cce6d8fbf859b9b0a90ef8818acc747c82bb5f9d97418a4e6749cb6ccaca
校验安装包完整性: sha256sum -c SHA256SUMS.txt