From 30a3c9a703eb977f99286b436a0dc1e18c7da6c4 Mon Sep 17 00:00:00 2001 From: Matthew Date: Sun, 30 Jun 2024 21:54:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9F=BA=E4=BA=8E=E5=AE=89=E8=A3=85=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E8=B0=83=E6=95=B4=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/AndroidManifest.xml | 2 +- app/src/main/cpp/MicroPhoto.cpp | 8 + .../com/xypower/mpapp/BridgeActivity.java | 156 ++++++++++++++++++ .../java/com/xypower/mpapp/CertActivity.java | 79 --------- .../com/xypower/mpapp/MicroPhotoService.java | 15 +- .../mpapp/v2/Camera2VideoActivity.java | 18 +- app/src/main/res/layout/activity_cert.xml | 2 +- common/build.gradle | 2 +- .../java/com/xypower/common/FileUtils.java | 63 +++++++ .../com/xypower/common/MicroPhotoContext.java | 71 ++------ 10 files changed, 268 insertions(+), 148 deletions(-) create mode 100644 app/src/main/java/com/xypower/mpapp/BridgeActivity.java delete mode 100644 app/src/main/java/com/xypower/mpapp/CertActivity.java diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c44fcf96..ca222124 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -85,7 +85,7 @@ tools:targetApi="28"> + tools:context=".BridgeActivity"> \ No newline at end of file diff --git a/common/build.gradle b/common/build.gradle index a488f0fa..04de2f89 100644 --- a/common/build.gradle +++ b/common/build.gradle @@ -6,7 +6,7 @@ android { compileSdk 33 defaultConfig { - minSdk 25 + minSdk 24 targetSdk 28 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/common/src/main/java/com/xypower/common/FileUtils.java b/common/src/main/java/com/xypower/common/FileUtils.java index c39dab4f..0456b01d 100644 --- a/common/src/main/java/com/xypower/common/FileUtils.java +++ b/common/src/main/java/com/xypower/common/FileUtils.java @@ -1,7 +1,15 @@ package com.xypower.common; +import android.text.TextUtils; + +import org.w3c.dom.Text; + +import java.io.BufferedReader; import java.io.File; +import java.io.FileInputStream; import java.io.FileOutputStream; +import java.io.InputStreamReader; +import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -111,4 +119,59 @@ public class FileUtils { } } + public static String readTextFile(String path) { + FileInputStream fis = null; + InputStreamReader inputStreamReader = null; + BufferedReader bufferedReader = null; + StringBuilder stringBuilder = null; + try { + File appCfgFile = new File(path); + if (appCfgFile.exists()) { + fis = new FileInputStream(appCfgFile); + inputStreamReader = new InputStreamReader(fis, "UTF-8"); + bufferedReader = new BufferedReader(inputStreamReader); + stringBuilder = new StringBuilder(); + String line; + while ((line = bufferedReader.readLine()) != null) { + stringBuilder.append(line); + } + } + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } catch (Exception e) { + e.printStackTrace(); + } finally { + if (bufferedReader != null) { + try { + bufferedReader.close(); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + if (inputStreamReader != null) { + try { + inputStreamReader.close(); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + if (fis != null) { + try { + fis.close(); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + } + + return stringBuilder == null ? null : stringBuilder.toString(); + } + + public static String[] splitLines(String output) { + output = output.replaceAll("\r\n", "\n"); + output = output.replaceAll("\n\r", "\n"); + output = output.replaceAll("\r", "\n"); + + return TextUtils.split(output,"\n"); + } } diff --git a/common/src/main/java/com/xypower/common/MicroPhotoContext.java b/common/src/main/java/com/xypower/common/MicroPhotoContext.java index 44255f45..715162b2 100644 --- a/common/src/main/java/com/xypower/common/MicroPhotoContext.java +++ b/common/src/main/java/com/xypower/common/MicroPhotoContext.java @@ -4,8 +4,6 @@ import android.app.ActivityManager; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; -import android.net.ConnectivityManager; -import android.net.Network; import android.os.Environment; import android.os.storage.StorageManager; import android.text.TextUtils; @@ -16,14 +14,10 @@ import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; -import java.io.BufferedReader; import java.io.File; -import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; -import java.io.InputStreamReader; import java.io.OutputStreamWriter; -import java.io.UnsupportedEncodingException; import java.lang.reflect.Method; import java.util.List; @@ -76,54 +70,6 @@ public class MicroPhotoContext { } } - public static String readTextFile(String path) { - FileInputStream fis = null; - InputStreamReader inputStreamReader = null; - BufferedReader bufferedReader = null; - StringBuilder stringBuilder = null; - try { - File appCfgFile = new File(path); - if (appCfgFile.exists()) { - fis = new FileInputStream(appCfgFile); - inputStreamReader = new InputStreamReader(fis, "UTF-8"); - bufferedReader = new BufferedReader(inputStreamReader); - stringBuilder = new StringBuilder(); - String line; - while ((line = bufferedReader.readLine()) != null) { - stringBuilder.append(line); - } - } - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } finally { - if (bufferedReader != null) { - try { - bufferedReader.close(); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - if (inputStreamReader != null) { - try { - inputStreamReader.close(); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - if (fis != null) { - try { - fis.close(); - } catch (Exception ex) { - ex.printStackTrace(); - } - } - } - - return stringBuilder == null ? null : stringBuilder.toString(); - } - // 获取主存储卡路径 public static String getPrimaryStoragePath(Context context) { try { @@ -256,12 +202,17 @@ public class MicroPhotoContext { public static AppConfig getMpAppConfig(Context context) { - AppConfig appConfig = new AppConfig(); - String appPath = buildMpAppDir(context); + return getMpAppConfig(context, appPath + "data/App.json"); + } + + public static AppConfig getMpAppConfig(Context context, String path) { + + AppConfig appConfig = new AppConfig(); + try { - String content = readTextFile(appPath + "data/App.json"); + String content = FileUtils.readTextFile(path); JSONObject jsonObject = TextUtils.isEmpty(content) ? new JSONObject() : new JSONObject(content); appConfig.cmdid = jsonObject.optString(jsonObject.has("cmdid") ? "cmdid" : "CMDID", ""); @@ -291,7 +242,7 @@ public class MicroPhotoContext { String appPath = buildMasterAppDir(context); try { - String content = readTextFile(appPath + "data/Master.json"); + String content = FileUtils.readTextFile(appPath + "data/Master.json"); JSONObject jsonObject = TextUtils.isEmpty(content) ? new JSONObject() : new JSONObject(content); masterConfig.server = jsonObject.optString("server", ""); @@ -343,7 +294,7 @@ public class MicroPhotoContext { String path = appPath + "data/Master.json"; - String content = readTextFile(path); + String content = FileUtils.readTextFile(path); JSONObject jsonObject = TextUtils.isEmpty(content) ? new JSONObject() : new JSONObject(content); jsonObject.put("server", masterConfig.server); @@ -456,7 +407,7 @@ public class MicroPhotoContext { dataPath.mkdirs(); } - String content = readTextFile(path + "data/App.json"); + String content = FileUtils.readTextFile(path + "data/App.json"); JSONObject jsonObject = TextUtils.isEmpty(content) ? new JSONObject() : new JSONObject(content); jsonObject.put("CMDID", appConfig.cmdid);