日志上传包括数据传输日志

serial
Matthew 1 year ago
parent 16cef5a4bf
commit ea1ba78352

@ -10,10 +10,13 @@ import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
public class ZipUtils {
public static void ZipFolder(File srcFile, File zipFile) {
public static interface Filter {
boolean match(String file);
}
public static void ZipFolder(File srcFile, File zipFile, Filter filter) {
try {
ZipOutputStream outZip = new ZipOutputStream(new FileOutputStream(zipFile));
ZipFiles(srcFile.getParent() + File.separator, srcFile.getName(), outZip);
ZipFiles(srcFile.getParent() + File.separator, srcFile.getName(), outZip, filter);
outZip.finish();
outZip.close();
} catch (FileNotFoundException e) {
@ -25,7 +28,7 @@ public class ZipUtils {
}
}
private static void ZipFiles(String srcFileParentName, String srcFileName, ZipOutputStream zipOutputSteam) throws Exception {
private static void ZipFiles(String srcFileParentName, String srcFileName, ZipOutputStream zipOutputSteam, Filter filter) throws Exception {
if (zipOutputSteam == null)
return;
File file = new File(srcFileParentName + srcFileName);
@ -51,10 +54,10 @@ public class ZipUtils {
}
//
for (int i = 0; i < fileList.length; i++) {
if (fileList[i].startsWith("specdata") || fileList[i].endsWith(".lck")) {
if (filter != null && !filter.match(fileList[i])) {
continue;
}
ZipFiles(srcFileParentName + srcFileName + "/", fileList[i], zipOutputSteam);
ZipFiles(srcFileParentName + srcFileName + "/", fileList[i], zipOutputSteam, filter);
}
}
}

@ -8,6 +8,7 @@ import android.net.NetworkInfo;
import android.os.Environment;
import android.os.PowerManager;
import android.os.SystemClock;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import android.util.Log;
import android.util.Pair;
@ -111,6 +112,10 @@ public class AppMaster {
return (System.currentTimeMillis() - SystemClock.elapsedRealtimeNanos() / 1000000) / 1000;
}
private void selectSimCard(int number) {
TelephonyManager telephonyManager = (TelephonyManager)mService.getSystemService(Context.TELEPHONY_SERVICE);
}
public void start() {
new Thread(new Runnable() {
@ -420,7 +425,8 @@ public class AppMaster {
SysApi.reboot(mService.getApplicationContext());
} else if (TextUtils.equals(cmd, CMD_UPLOAD_LOGS)) {
String url = jsonObject.optString("url", null);
uploadLogs(url);
int noSpecData = jsonObject.optInt("noSpecData", 0);
uploadLogs(url, noSpecData == 0);
uploadMasterLogs(url);
} else if (TextUtils.equals(cmd, CMD_SET_CMA)) {
String ip = jsonObject.optString("value_str", null);
@ -725,7 +731,7 @@ public class AppMaster {
}
}
private void uploadLogs(String url) {
private void uploadLogs(String url, final boolean includingSpecData) {
String appDir = mService.buildAppDir();
try {
@ -746,7 +752,19 @@ public class AppMaster {
return;
}
ZipUtils.ZipFolder(logDir, file);
ZipUtils.Filter filter = new ZipUtils.Filter() {
@Override
public boolean match(String fileName) {
if (!fileName.endsWith(".txt")) {
return false;
}
if (!includingSpecData && fileName.startsWith("specdata")) {
return false;
}
return true;
}
};
ZipUtils.ZipFolder(logDir, file, filter);
if (!file.exists()) {
return;
@ -785,7 +803,13 @@ public class AppMaster {
return;
}
ZipUtils.ZipFolder(logDir, file);
ZipUtils.Filter filter = new ZipUtils.Filter() {
@Override
public boolean match(String fileName) {
return fileName.endsWith(".txt");
}
};
ZipUtils.ZipFolder(logDir, file, filter);
if (!file.exists()) {
return;
@ -817,7 +841,7 @@ public class AppMaster {
return;
}
ZipUtils.ZipFolder(pathFile, file);
ZipUtils.ZipFolder(pathFile, file, null);
if (!file.exists()) {
return;

Loading…
Cancel
Save