2013-04-10 75 views
0

我们可以将我们的Sql lite数据库存储在Phonegap项目的assets文件夹中吗?我们可以存储我们的Sql lite数据库 - phonegap android吗?

我已经实现了android项目。我想为Phonegap项目使用相同的数据库。

我可以使用它吗?或者有什么选择,它的程序是什么?

我已搜索过去2天.i没有得到任何正确答案?

回答

1

您可以将sqlite数据库包含在资产文件夹中,但在第一次运行应用程序时,您需要将其移至正确的目录,以便webview可以打开数据库。还有就是怎么做的正是这种在插件和说明:

http://gauravstomar.blogspot.ca/2011/08/prepopulate-sqlite-in-phonegap.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+GauravSTomarBootstrappingIntelligence+(Gaurav+S+Tomar+:+Bootstrapping+Intelligence)

另外,您可以包括您的数据库作为.sql文件,执行该文件的第一次启动您的应用程序:

http://simonmacdonald.blogspot.ca/2011/12/on-fourth-day-of-phonegapping-creating.html

+0

谢谢你,西蒙麦克唐纳Sir.i会尝试一下,希望我能成功。它会让你知道我的状态。 – user 2013-04-12 04:39:08

+0

Simon MacDonald先生,这是我的第一个Phonegap应用程序,我使用Cordova 2.5.0,希望它不是问题。或者你会建议我从较低版本开始? 先生一个更多的疑问,我们应该如何编码以下phonegap?...... ** table_instance_name = db.method_of_the_details_from the_table(id); (0).get(“column_name”); ** – user 2013-04-12 05:02:17

1

我现在MyPhoneGapActivity看起来像这样

package com.rkadukar.database; 

import org.apache.cordova.DroidGap; 
import android.os.Bundle; 

public class MyPhoneGapActivity extends DroidGap { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     super.loadUrl("file:///android_asset/www/index.html"); 
    } 
} 

在哪里加合作de将数据库文件从Assets文件夹复制到我的应用程序的data/data/...文件夹中。

按我的理解,一旦数据库被复制,然后我可以删除该文件,并使用本地PhoneGap的存储API来阅读我的导入的数据库,但在这种情况下,为什么我们需要这个插件https://github.com/brodyspark/PhoneGap-SQLitePlugin-Android

可有人好心详细需要

  1. 步骤复制从资产文件夹中的数据/数据/文件夹..
  2. 读取数据库中的复制数据库,并在其上执行操作。
+1

Rahul Kadukar,checkout [** this **](http://gauravstomar.blogspot.ca/2011/08/prepopulate-sqlite -in-phonegap.html?utm_source = feedburner&utm_medium = feed&utm_campaign = Feed:+ GauravSTomarBootstrappingIntelligence +(Gaurav + S + Tomar +:+ Bootstrapping + Intelligence))......尽管读了它,如果你没有在这里获得流注释......将回答你的问题...详细 – user 2013-04-26 04:43:02

+0

嗨用户,我使用PhoneGap进行开发,因此我使用的是唯一的Java代码,这是我在评论中提到的那个。据我所知,它将在应用程序启动时加载名为index.html的文件。 我想将数据库从资产复制到data/data/...文件夹,所以我应该在我的onloadUrl之前添加来自Gaurav帖子的代码吗? – 2013-04-26 08:32:54

+1

是的......希望你理解这个正确的..'public void onCreate(Bundle savedInstanceState){超级。{ }。的onCreate(savedInstanceState); 尝试 String pName = this.getClass()。getPackage()。getName(); (“ABC.db”,“/ data/data /”+ pName +“/ databases /”); (“0000000000000001.db”,“/ data/data /”+ pName +“/ databases/file__0 /”); } catch(IOException e) { e.printStackTrace(); } super.loadUrl(“file:///android_asset/www/index.html”); }' – user 2013-04-26 08:56:04

相关问题