package android.source.tuangou.framework;
import android.content.res.AssetManager;
import android.source.tuangou.framework.file.FileHelper;
import android.source.tuangou.framework.update.LocalVersion;
import android.source.tuangou.framework.update.VersionManager;
import android.source.tuangou.framework.util.LogUtil;
import java.io.*;
import java.util.Iterator;
import java.util.List;
/*
* 第一次安装处理类
* */
public class FirstInstaller{
static AssetManager am;
static String appFilesPath;
public FirstInstaller()
{
}
private static boolean check(){
boolean flag = false;
if (Config.ASSETS_FOLDERS_TO_COPY.size() <= 0){
return flag;
} else{
Iterator iterator = Config.ASSETS_FOLDERS_TO_COPY.iterator();
while(true){
if (!iterator.hasNext()) {
return flag;
} else{
String s;
s = (String)iterator.next();
StringBuilder stringbuilder = new StringBuilder();
String s1 = appFilesPath;
String s2 = stringbuilder.append(s1).append(s).toString();
if ((new File(s2)).exists()){
String s3 = Config.UPDATE_FILE_FOLDER;
if (!s.equalsIgnoreCase(s3)) {
continue;
}else{
String s4;
String s5;
if (VersionManager.getLocalVersion() == null){
break;
}
s4 = VersionManager.getLocalVersion().webFileVersion;
s5 = Config.CLIENT_VERSION;
if (s4.equalsIgnoreCase(s5)) {
continue;
}else{
flag = true;
}
}
} else{
flag = true;
}
}
}
}
return flag;
}
/*
* 拷贝Assets文件夹下目录到sd卡中
* */
public static void checkAndCopyAssetsFolders(){
StringBuilder stringbuilder = new StringBuilder();
String s = Application.getAppFilesPath();
appFilesPath = stringbuilder.append(s).append("/").toString();
if (check()){
am = Application.getInstance().getAssets();
Iterator iterator = Config.ASSETS_FOLDERS_TO_COPY.iterator();
while(iterator.hasNext()){
copyAssetFolderIfNotExists((String)iterator.next());
}
}else{
}
}
private static void copyAssetFolderIfNotExists(String s){
try {
Object obj;
StringBuilder stringbuilder = new StringBuilder();
String s1 = appFilesPath;
String s2 = stringbuilder.append(s1).append(s).toString();
obj = new File(s2);
boolean flag;
if (((File) (obj)).exists()){
flag = FileHelper.delete(((File) (obj)).getAbsolutePath());
}
String as1[];
int i;
int j;
boolean flag1 = ((File) (obj)).mkdir();
String as[] = am.list(s);
StringBuilder stringbuilder1 = new StringBuilder();
String s3 = appFilesPath;
obj = stringbuilder1.append(s3).append(s).append("/").toString();
as1 = as;
i = as1.length;
for(j = 0; j < i; j++){
InputStream inputstream;
FileOutputStream fileoutputstream;
String s4 = as1[j];
File file = new File(((String) (obj)), s4);
AssetManager assetmanager = am;
String s5 = (new StringBuilder()).append(s).append("/")
.append(s4).toString();
inputstream = assetmanager.open(s5);
fileoutputstream = new FileOutputStream(file);
byte abyte0[] = new byte[4096];
do {
int k = inputstream.read(abyte0);
if (k <= 0)
break;
fileoutputstream.write(abyte0, 0, k);
} while (true);
inputstream.close();
fileoutputstream.close();
}
} catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
}
}
}