2

我的 iPhone 应用程序的沙箱包括 3 个目录:Documents、Library 和 tmp。

如果我使用这个 Cordova 代码片段 ,我可以访问Documents目录:

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, onError);   

如果我使用这个 Cordova 代码片段,我可以访问tmp目录:

window.requestFileSystem(LocalFileSystem.TEMPORARY, 0, onSuccess, onError);  

有没有办法使用 Cordova访问库目录?

4

2 回答 2

0

看起来 Cordova 没有提供访问库目录的 API。请注意库目录的 Apple 文档:“此目录是非用户数据文件的顶级目录。您通常将文件放在几个标准子目录之一中,但您也可以为要备份但不向用户公开的文件创建自定义子目录。您不应将此目录用于用户数据文件。该目录的内容(Caches 子目录除外)由 iTunes 备份。” 如果您仍然需要对 Library 目录的 Javascript 访问权限,您可以考虑编写自定义 Cordova 插件。请注意遵循 Apple 指南,否则他们可能会在提交审核时拒绝您的申请。

于 2013-10-06T08:03:38.387 回答
0

尝试使用 resolveLocalFileSystemURL,我尝试使用 Cordova 3。请记住遵循 Apple 关于使用不同存储位置https://developer.apple.com/icloud/documentation/data-storage/index.html的最新指南,否则您的应用将被拒绝用于 AppStore 发布。

resolveLocalFileSystemURL(cordova.file.dataDirectory,//data directory points to Library/NoCloud
win-callback(directory){
}
fail-callback(error){
});

对于其他目录,将“cordova.file.dataDirectory”替换为;

cordova.file.applicationDirectory
cordova.file.applicationStorageDirectory 
cordova.file.documentsDirectory
cordova.file.syncedDataDirectory
cordova.file.cacheDirectory
cordova.file.tempDirectory
于 2015-09-07T15:56:31.930 回答