我正在使用 Cordova / PhoneGap 构建一个 BlackBerry 应用程序。我的最终目标是能够将预填充的 SQLite 数据库与应用程序捆绑在一起。
我看过一些教程建议在 Assets 文件夹中包含所需的文件并在第一次加载应用程序时加载它。
为了实现预填充数据库的结束,我将要访问黑莓设备上的本地文件系统。
使用 Cordova 文档中提供的示例,我汇总了以下内容:
onDeviceReady: function() {
app.receivedEvent('deviceready');
var fail = function(err){console.log(err)};
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0,
function(fs){
var reader = fs.root.createReader().readEntries(
function(entries){
console.log("FS:"+entries)
},
fail);
},fail
);
window.resolveLocalFileSystemURI("file:///store/home",
function(uri){
console.log(uri);
},
fail);
}
在所有情况下,模拟器上的文件列表都是空的(专门尝试使用 chromeipple 插件)
missing exec:File.resolveLocalFileSystemURI ripple.js:39
["file:///store/home"] ripple.js:39
TypeError
ripple.js:39
TypeError: Cannot read property 'root' of undefined
at Object.module.exports.resolveLocalFileSystemURI (chrome- extension://geelfhphabnejjhdalkjhgipohgpdnoc/ripple.js:39:7398)
at module.exports.exec (chrome- extension://geelfhphabnejjhdalkjhgipohgpdnoc/ripple.js:39:19386)
at module.exports (http://telusbb.com/cordova-2.3.0.js:9602:5)
at app.onDeviceReady (http://telusbb.com/js/index.js:73:10)
at Channel.fire (http://telusbb.com/cordova-2.3.0.js:690:23)
at http://telusbb.com/cordova-2.3.0.js:219:47 ripple.js:39
File ripple.js:46
resolveLocalFileSystemURI
FS:
我无法从文档中找出我想在哪里存储一个文件以使其出现在 PhoneGap 文件系统中。
目前我的资产文件夹<sampleapplciation>/www/assets
在如果我想在应用程序中访问它们,我应该存储文件的另一个路径吗?