在PhoneGap / Cordova 3.1中读取文件

时间:2013-11-13 12:14:57

标签: android sqlite cordova

所以,我正在开发一个需要预填充数据库的应用程序。根据{{​​3}},使用应用程序打包预制数据库没有直接的方法。作为解决方案,我将执行Select count(*)...语句来检查并插入if result <= 0

现在问题是插入。我有一个约500行的表,我不想将它们粘贴在js文件中。我找到了Raymon Camden,我相信我可以阅读.sql文件,然后执行。

问题:

  1. PhoneGap 3.1( ugh,命名。)如何打包应用?在我的www目录中我有

    • JS​​
    • CSS
    • dev的
      • data.sql

    所以,最初我认为fileSystem.root.getFile('/dev/data.sql', ...会起作用。 (基于File API,MattDavis称应用数据转到/data/data/packageName。)

  2. 如何访问该文件?
  3. 我是否在正确的轨道上?或者,有更好的方法吗?
  4. 我正在使用Cordova 3.1来构建this

    修改

    我尝试在设备的根目录上创建.txt文件。我可以使用fileSystem.root.getFile('test.txt', ...)成功访问它。所以我推断我只需要获取实际应用程序目录。

2 个答案:

答案 0 :(得分:0)

是的,你的正确轨道。因为您可以在asset/www/dev/内访问data.sql。

/data/data/packageName这是用于访问您应用内的 SD (应用内部存储空间)。所以不需要这样做。

答案 1 :(得分:0)

How did I access the file? + Or, is there a better approach?

AJAX。事实证明,我可以通过以下方式访问资产文件夹:

    $.get('file:///android_asset/www/dev/data.sql', function(response){
        console.log('Data found!');
        console.log(response); 
    });

我不确定这是否适用于其他平台。