Flutter中getApplicationDocumentsDirectory返回与创建路径不一致问题
问题解答
这两个路径本质上是同一个目录,差异源于Android系统的符号链接(软链接)机制:
/data/user/0/[包名]是Android 5.0+针对多用户场景引入的标准存储路径,系统会自动将其软链接到传统的/data/data/[包名]路径- 调用
getApplicationDocumentsDirectory()时,Flutter的path_provider插件返回的是系统推荐的多用户规范路径(/data/user/0/...) - 执行
create(recursive: true)时,实际操作的是同一个目录,但Android Studio设备文件资源管理器可能优先展示了软链接对应的原始路径(/data/data/...)
你可以通过设备命令行验证两者的关联:
ls -l /data/data/co.XXX.dev
输出会显示app_flutter目录与/data/user/0/co.XXX.dev/app_flutter指向同一个inode,证明二者为同一位置。
内容的提问来源于stack exchange,提问作者genericUser
相关产品推荐
相关产品推荐

