期望:使项目apk包中的大文件批量数据可以单独作为一个apk来管理,所以需要将Android assets文件夹下的zip打包文件解压到SDCard上。
解压缩的操作由于比较耗时,所以新开一个线程执行以下函数
/**将assets对应文件解压到对应的sdcard目录中*/
public void unPress2Sdcard(String fileName){
try {
/**目标路径*/
String destDir = rootPath + File.separator + fileName;
/**将压缩文件拷贝到内存卡中*/
mAssetCopyer.copyBigDataToSD(destDir, fileName);
/**解压文件到目标路径*/
unzip(destDir, offlinePath);
/**删除在内存卡上临时存在的压缩文件*/
FileUtils.deleteFile(destDir);
} catch (Exception e) {
e.printStackTrace();
}
}
对应的先将assets下的zip文件拷贝到SDCard中,这个是直接在网上找的方法拿来用
public void copyBigDataToSD(String strOutFileName,String file) throws IOException{
InputStream myInput;
OutputStream myOutput = new FileOutputStream(strOutFileName);
myInput = mContext.getAsse