android-安装时包含数据库

时间:2010-10-14 00:41:32

标签: android

在android中,我想在安装时包括一个数据库,即在.apk文件中。有可能吗?我在数据库中有一些数据,我想在应用程序中使用。我不想使用OnCreate方法来创建数据库。那么,我应该在哪里保存我的db文件,以便安装后可以访问该应用程序?

2 个答案:

答案 0 :(得分:2)

创建数据库文件,将其包含在资产目录中,并在首次启动应用程序时将其复制到/ data / data / PACKAGE_NAME / databases /

答案 1 :(得分:0)

这个网站对我帮助很大。

http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/

我单独创建我的SQLite数据库,将它们添加到app包中的assets目录,然后在启动应用程序时将数据库复制到/data/data/com.company.appname/databases/目录中以便在那里使用

我还要检查文件是否已经存在,然后再费心复制它(因此我通常只在首次启动时复制它)。

例如

boolean createDB= false;

        File dbDir = new File(DB_PATH);
        File dbFile = new File(DB_PATH + DB_NAME);

        if(!dbDir.exists())
        {
            dbDir.mkdir();
            createDB = true;
        }
        else if (!dbFile.exists())
        {
            createDB = true;
        }