如何将带数据的SQLite数据与apk程序一起发布

如何将带数据的sqlite数据与apk程序一起发布

任何文件包括sqlite数据库文件)与apk程序一起发布都必须将该文件嵌入到apk文件中。对于sqlite数据库来说,安卓的程序不能打开和操作嵌入在apk程序中的数据库文件。因此,需要想办法在程序第一次启动时就将sqlite数据库复制到手机内存或者SD卡上,然后才能再来操作sqlite数据库

这里我把数据库文件复制到应用程序的assets或res/raw目录中,因为只有这两个目中中的资源文件才不会被编译,在应用程序第一次启动时应该使用下面的代码数据库复制到手机内存或sd卡上,然后在操作数据库。下面是代码

                String databaseFileName = "/sdcard/test.db";
		//当test.db不存在时,将res/raw目录中的数据库文件赋值到SD卡的目录中
		if (!(new File(databaseFileName).exists())) {
			//在res/raw目录中存在test.db文件
			InputStream is = getResources().openRawResource(R.raw.test);
			FileOutputStream fos = new FileOutputStream(databaseFileName);
			byte[] buffer = new byte[4096];
			int count = 0;
			while ((count = is.read(buffer))> 0 ) {
				fos.write(buffer,count);
			}
			fos.close();
			is.close();
		}
		//打开数据库
		sqliteDatabase database = sqliteDatabase.openorCreateDatabase(databaseFileName,null);
	    //获取数据库之后,下面就可以进行数据库的操作了
		...

相关文章

SQLite架构简单,又有Json计算能力,有时会承担Json文件/RES...
使用Python操作内置数据库SQLite以及MySQL数据库。
破解微信数据库密码,用python导出微信聊天记录
(Unity)SQLite 是一个软件库,实现了自给自足的、无服务器...
安卓开发,利用SQLite实现登陆注册功能