我完全阅读Cordova插件文件系统的documentation。更进一步,我一直在谷歌搜索没有确定的解释。
特别是,cordova.file.*
中变量中存储的路径如何映射Android文件系统中您可以在任何文件资源管理器中看到的真实文件夹?例如,我无法将文件保存到Downloads文件夹中。我试了file:///android_asset/Download
没有成功。
协议file:///
和路径file:///android_asset/
究竟是什么?什么是“应用程序的沙箱”?
例如,我将文件保存到cordova.file.cacheDirectory
因为我需要处理临时文件,但我试图在文件资源管理器中找到这样的文件,但我找不到这样的文件。隐藏在某种程度上吗?我无法在/data/data/<app-id>/cache
和"file:///data/user/0/com.form.parking.violation/cache/"
中找到它(该字符串的实际值)。
我知道,问题太多了,但我会计划将这个问题作为一个规范性的问题,因为明确的教学信息非常缺乏。
答案 0 :(得分:1)
在设备上使用“文件管理器”应用程序无法访问您列出的文档中列为“私人”的项目。 “私有”意味着没有其他应用程序能够看到“应用程序沙箱”所描述的内容。通常情况下,沙箱用于描述无法摆脱的环境。如果您不熟悉多用户环境,也可能意味着没有适当级别权限的其他人无法看到。
除非您正在测试的设备已植根,否则除非您使用Android SDK中的adb
,否则您将无法看到SQLite数据库和您感兴趣的其他文件等“私有”文件使用adb shell
命令run-as
,如下所述:
Android ADB access to application databases without root
请注意,要获取文件,您需要通过Android Studio调试Cordova应用程序(调试模式)。
对于什么是file:///android_asset/
我将参考这个问题: