android 绑定sqlite数据库与程序一起发布
16lz
2021-01-26
由于需求需要某程序一安装就得有几个数据 , 而现在的程序是一运行先判断表是否存在,不存在则创建,存在则不创建。所以去网上找了半天,找到了解决方案。 就是把数据库文件放在res/raw下 貌似android 的 raw下视不会被编译成二进制的。然后一运行程序就判断是否存在数据库表不存在则通过输入输出流复制raw下的数据库文件到手机中.代码如下
try {
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("出错了", "出错了");}
其中
DATABASE_PATH 和
DATABASE_FILENAME可自定义
更多相关文章
- 关于ANE的调试心德
- Java JDK 收费,Android(安卓)也坐不住了,程序员们该咋办?
- Develop -- Training(十四) -- 打印内容
- Android应用程序是否需要手动退出
- Android(安卓)3.1后, 新安装的以及用户强行停止的apk, 无法监听
- Android应用程序中资源访问知识小结
- 手把手教你用android studio创建第一个安卓程序加载html5页面(一)
- 提高Android应用程序的速度四大原则
- android 数据库创建在SD(TF)卡中