关于Android项目中打包资源文件到apk的总结
2016-08-25 10:32
429 查看
关于Android项目中打包资源文件到apk的总结
在开发中遇到了数据库方面的资源文件,想在打包的时候能够自动的装进apk中,并在运行的时候进行自动的复制文件到指定目录中,经过学习,现在总结如下,以便自己今后使用:可分为两个方法
检测数据库文件是否存在进行复制数据库操作
对数据库资源文件进行检查
public boolean checkDataBase() { String dbName = strings[i]; SQLiteDatabase checkDB = null; try { String databaseFilename = DATABASE_PATH + dbName; checkDB = SQLiteDatabase.openDatabase(databaseFilename, null, SQLiteDatabase.OPEN_READONLY); } catch (SQLiteException e) { //此处抛出相关异常 } if (checkDB != null) { checkDB.close(); } return checkDB != null ? true : false; }
在这段代码中获取指定的文件目录下,资源是否可读,若不能读取则返回null,随后对其值进行相关判断,以便是否进行相关资源的复制
对数据库资源文件进行复制到指定目录
代码如下
private void copyDataBase() { private static String DATABASE_PATH = "/data/data/"apk包名"/databases/";//数据库在手机里的路径 String[] strings = {dbFloor, dbDirection, dbSpecial}; for (int i = 0; i < strings.length; i++) { //数据库名称集合 String databaseFilenames = DATABASE_PATH + strings[i]; File dir = new File(DATABASE_PATH); if (!dir.exists())//判断文件夹是否存在,不存在就新建一个 dir.mkdir(); FileOutputStream os = null; InputStream is = null; try { os = new FileOutputStream(databaseFilenames);//得到数据库文件的写入流 //得到数据库文件的数据流 is = getAssets().open(strings[i]); byte[] buffer = new byte[1024]; int len = 0; while ((len = is.read(buffer)) != -1) { os.write(buffer, 0, len); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { os.close(); is.close(); } catch (IOException e) { e.printStackTrace(); } } } } 此处主要是Io流相关的操作
相关文章推荐
- android 把activity和资源文件打包成jar包给其他项目使用
- Android项目在eclipse中无法打包apk文件[bin目录下没生成apk文件]问题解决
- Android项目打包成APK文件
- Android项目在eclipse中无法打包apk文件[bin目录下没生成apk文件]
- 关于cocos2dx编写的游戏由vs2013项目打包成apk文件
- 将Eclipse Android项目打包成APK文件
- Android项目打包成APK文件,,以及,,Android项目中XML文件格式化配置
- 在android项目中导入自己写的jar文件发现不能打包到apk文件中
- 将Android项目打包成APK文件
- Android项目打包成APK文件
- 用 Ant 打包Android项目时 ,因资源文件中包含.9.png 报错
- eclipse 将android项目打包成签名的apk文件
- Android项目打包成APK文件
- 将Eclipse Android项目打包成APK文件
- ANDROID开发:将数据库文件与项目包一起打包成APK文件
- 解决Android项目在eclipse中无法打包apk文件[bin目录下没生成apk文件]的问题
- maven(android-maven-plugin3.8.0)打包apk无法启动,apklib依赖包的资源索引出错(R文件与主模块冲突)问题解析
- 将Eclipse Android项目打包成APK文件
- Android项目在eclipse中无法打包apk文件[bin目录下没生成apk文件]问题解决
- 关于Android项目中,突然就R类找不到已存在的资源文件的解决方法