Asi*_*ian 25 android phonegap-plugins cordova cordova-plugins
我使用Cordova File Plugin在移动设备上创建文件.以下是创建文件的代码:
window.resolveLocalFileSystemURL(cordova.file.dataDirectory, function (dir) {
alert(cordova.file.dataDirectory);
dir.getFile("log.txt", { create: true }, function (file) {
alert("got the file: "+ file.name + ', ' + file.fullPath);
});
});
Run Code Online (Sandbox Code Playgroud)
当我在Android手机上部署应用程序时,该文件将成功创建,但我无法在我的设备上找到创建的文件.
虽然cordova.file.dataDirectory
指向 file:///data/data/io.cordova.myappId/files/
我设备io.cordova.myappId
上的data>data
路径,但该Android>data
路径中不存在该文件夹,但存在于路径中.顺便说一句,我查都storage>Android>data>io.Cordova.myappId>files
与storage>data>data
该文件不存在.
这是因为:
创建的文件位于另一个地方,那么我在哪里可以找到它?
要么
因为它是私有的,我的文件管理器无法访问它,所以如何更改权限设置以获得公共文件?
Asi*_*ian 36
为什么我在设备上找不到该文件?
该文件已成功创建,但我在我的设备上找不到,因为dataDirectory
我指示创建文件的路径是私有路径,而我的设备文件管理器无法访问它(基于此表).实际上dataDirectory
是一个Internal Storage
选择.
内部存储:将私有数据存储在设备内存中.
您可以将文件直接保存在设备的内部存储中.默认情况下,保存到内部存储的文件对应用程序是私有的,而其他应用程序无法访问它们(用户也无法访问).当用户卸载您的应用程序时,将删除这些文件.(参考)
如何创建公共文件?
因此,要在我的设备上创建一个可以使用文件管理器访问它的文件,我必须使用以下公共路径选项之一:externalDataDirectory
.以前,我以为它是用于存储我手机上没有的外部SD卡上的文件,所以我没有测试它.但是今天进行测试,它会在我的内部设备存储上创建文件,该文件Android/data/<app-id>/files
是公共的,我可以使用设备文件管理器访问它.
实际上,术语internal
和external
被误导我,而external storage
可以是一个可移动存储介质(例如,SD卡)或内部(不可移动)存储器(参照).
归档时间: |
|
查看次数: |
15232 次 |
最近记录: |