我在尝试获取应用根文件夹时遇到问题,问题出现在使用Marshmallow的模拟器中。当我执行context.getFilesDir()
时,它会返回错误的路径:
数据/用户/ 0 / com.android.appname /文件/
应该是:
数据/数据/ com.android.appname /文件/
有人知道为什么会发生这种情况以及如何解决它或以其他方式获得应用程序根文件夹的正确途径?
答案 0 :(得分:1)
/data/user/0/com.android.appname/files/
是getFilesDir()
返回的完全有效的路径。该目录可供您的应用使用。
adb
不是您的应用。它对文件系统的看法会有所不同。
getFilesDir()
在实际文件系统上映射到的位置的确切位置 - 或者adb
等工具将会看到的位置 - 将根据几个条件而有所不同,包括操作系统版本,用户帐户运行的是哪个app(请记住:Android支持多个用户!),可能还有设备制造商/自定义ROM更改。