android绑定sqlite数据库与程序一起发布
由于需求需要某程序一安装就得有几个数据 , 而现在的程序是一运行先判断表是否存在,不存在则创建,存在则不创建。所以去网上找了半天,找到了解决方案。 就是把数据库文件放在res/raw下 貌似android 的raw下视不会被编译成二进制的。然后一运行程序就判断是否存在数据库表不存在则通过输入输出流复制raw下的数据库文件到手机中.代码如下
Java代码
try {
Java代码
Log.e(DATABASE_PATH, DATABASE_PATH);
String databaseFilename = DATABASE_PATH + "/" + DATABASE_FILENAME;
File dir = new File(DATABASE_PATH);
if (!dir.exists())
dir.mkdir();
if (!(new File(databaseFilename)).exists()) {
InputStream is = getResources().openRawResource(
R.raw.healthmanage);
FileOutputStream fos = new FileOutputStream(databaseFilename);
byte[] buffer = new byte[8192];
int count = 0;
while ((count = is.read(buffer)) > 0) {
fos.write(buffer, 0, count);
}
fos.close();
is.close();
}
catch (Exception e) {
Log.e("出错了", "出错了");
其中
Java代码
DATABASE_PATH 和
Java代码
DATABASE_FILENAME可自定义
补充:移动开发 , Android ,