From 0793a01b3342b7bbb16edee12c186f2dce2fb5e0 Mon Sep 17 00:00:00 2001 From: Matthew Date: Fri, 21 Feb 2025 17:02:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5Main=E5=88=86=E6=94=AF?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/xypower/common/JSONUtils.java | 19 +++++++++++++++++++ .../com/xypower/common/MicroPhotoContext.java | 12 ++++++------ 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/common/src/main/java/com/xypower/common/JSONUtils.java b/common/src/main/java/com/xypower/common/JSONUtils.java index c9227e29..982467b2 100644 --- a/common/src/main/java/com/xypower/common/JSONUtils.java +++ b/common/src/main/java/com/xypower/common/JSONUtils.java @@ -107,6 +107,25 @@ public class JSONUtils { return false; } + public static JSONObject getConfigFile(String path, String fileName) { + JSONObject jsonObject = null; + File configFile = new File(Environment.getExternalStorageDirectory(), path); + if (!configFile.exists()) { + configFile.mkdirs(); + } + + configFile = new File(configFile, fileName); + if (!configFile.exists()) { + return jsonObject; + } + + jsonObject = JSONUtils.loadJson(configFile.getAbsolutePath()); + if (jsonObject == null) { + jsonObject = new JSONObject(); + } + return jsonObject; + } + public static boolean updateConfigFile(String path, String fileName, String name, int fieldType, Object val) { if (name == null) { diff --git a/common/src/main/java/com/xypower/common/MicroPhotoContext.java b/common/src/main/java/com/xypower/common/MicroPhotoContext.java index d7596dce..eb9c910e 100644 --- a/common/src/main/java/com/xypower/common/MicroPhotoContext.java +++ b/common/src/main/java/com/xypower/common/MicroPhotoContext.java @@ -83,7 +83,7 @@ public class MicroPhotoContext { public static String getPrimaryStoragePath(Context context) { try { StorageManager sm = (StorageManager) context.getSystemService(Context.STORAGE_SERVICE); - Method getVolumePathsMethod = StorageManager.class.getMethod("getVolumePaths", (Class[])null); + Method getVolumePathsMethod = StorageManager.class.getMethod("getVolumePaths", (Class[]) null); Object[] args = null; String[] paths = (String[]) getVolumePathsMethod.invoke(sm, args); // first element in paths[] is primary storage path @@ -99,7 +99,7 @@ public class MicroPhotoContext { public static String getSecondaryStoragePath(Context context) { try { StorageManager sm = (StorageManager) context.getSystemService(Context.STORAGE_SERVICE); - Method getVolumePathsMethod = StorageManager.class.getMethod("getVolumePaths", (Class[])null); + Method getVolumePathsMethod = StorageManager.class.getMethod("getVolumePaths", (Class[]) null); Object[] args = null; String[] paths = (String[]) getVolumePathsMethod.invoke(sm, args); // second element in paths[] is secondary storage path @@ -114,7 +114,7 @@ public class MicroPhotoContext { public String getStorageState(Context context, String path) { try { StorageManager sm = (StorageManager) context.getSystemService(Context.STORAGE_SERVICE); - Method getVolumeStateMethod = StorageManager.class.getMethod("getVolumeState", new Class[] {String.class}); + Method getVolumeStateMethod = StorageManager.class.getMethod("getVolumeState", new Class[]{String.class}); String state = (String) getVolumeStateMethod.invoke(sm, path); return state; } catch (Exception e) { @@ -398,9 +398,9 @@ public class MicroPhotoContext { intent.putExtra("reason", reason); } intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); - PendingIntent restartIntent = PendingIntent.getActivity(context, 0, intent, 0); - AlarmManager mgr = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE); - mgr.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + delayedTimeMs, restartIntent); + PendingIntent restartIntent = PendingIntent.getActivity(context, 100, intent, PendingIntent.FLAG_UPDATE_CURRENT); + AlarmManager mgr = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); + mgr.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + ((delayedTimeMs > 0) ? delayedTimeMs : 10), restartIntent); } public static void restartApp(Context context, String packageName, String reason) {