最近在学习androidSQLite数据库加载时,遇到了一些问题:
1.我在虚拟机外面创建的数据库文件,如何复制到虚拟机里面?(不是通过DDMS来复制,而是用程序)?
2.继承SQLiteOpenHelper类的子类,其中的OnCreate()重载方法到底是在什么情况下运行的?
第一个问题,我的解决方案如下:
在继承SQLiteOpenHelper的子类SQLiteHelp中,新建函数createDatabase:
在构造函数中调用createDatabase函数,可以解决第一个问题
注意,不能放在重载的方法OnCreate()中,当你第一次运行程序后,再次运行时,OnCreate函数不会运行
我试着故意删掉虚拟器中的数据库文件,如果你把函数放在OnCreate()中,运行会出错
第二个问题有待解决
本文探讨了在Android中如何将外部数据库文件复制到虚拟机内部,并通过自定义的SQLiteOpenHelper子类实现。作者详细解释了如何在创建数据库文件夹、检查文件存在性后,从资源中读取数据库流并写入输出流。同时提醒不应在OnCreate()方法中执行此操作,因为该方法只在首次创建数据库时执行。
725

被折叠的 条评论
为什么被折叠?



