From b2dd8ca6ea52926382dabd0914efcc6b552267d1 Mon Sep 17 00:00:00 2001
From: hjw <hjw@ma.nodka.com>
Date: Thu, 20 Apr 2023 05:47:09 +0000
Subject: [PATCH] 适配安卓11

---
 app/src/main/java/com/jwipc/nodka_reboot_under/utils/Utils.java |   94 +++++++++++++++++++++++++++++-----------------
 1 files changed, 59 insertions(+), 35 deletions(-)

diff --git a/app/src/main/java/com/jwipc/nodka_reboot_under/utils/Utils.java b/app/src/main/java/com/jwipc/nodka_reboot_under/utils/Utils.java
index 46359c6..210c117 100644
--- a/app/src/main/java/com/jwipc/nodka_reboot_under/utils/Utils.java
+++ b/app/src/main/java/com/jwipc/nodka_reboot_under/utils/Utils.java
@@ -24,10 +24,15 @@
 import android.net.ConnectivityManager;
 import android.net.NetworkInfo;
 import android.net.NetworkInfo.DetailedState;
+import android.os.Build;
 import android.os.PowerManager;
 import android.os.RemoteException;
 import android.text.format.DateFormat;
 import android.util.Log;
+
+import com.jwipc.nodka_reboot_under.MyApplication;
+import com.nodka.api.NodkaAPI;
+import com.nodka.api.NodkaNative;
 
 
 public class Utils {
@@ -67,8 +72,7 @@
 	Thread thread_set_time_reboot = null;
 	Thread thread_STOP_WATCH_DOG = null;
 	Thread thread_AlarmPower_Repeat_Poweroff = null;
-	
-	
+
 	
 
 	public Utils(Context context) {
@@ -80,7 +84,6 @@
 		sharedPreferences = context.getSharedPreferences(shapre, context.MODE_PRIVATE);
 		editor = sharedPreferences.edit();
 	}
-	
 	
 	public void shut_Down()
 	{
@@ -250,26 +253,30 @@
 			return;
 		}
 		
-		
-		AlarmPowerManager mAlarmPowerManager = new AlarmPowerManager();
-		
-		mAlarmPowerManager.removeAllalarmPower();
-		
+		if (isSpiritVersion()) {
+			new AlarmPowerManager().removeAllalarmPower();
+			setFileState("0", "/sys/class/minix-rtc/MCURTCDATA");
+		} else {
+			MyApplication.getApplication().getNodkaAPI().alarm_removeAllalarmPower();
+			setFileState("0", "/sys/class/minix-rtc/minix_RTC_DATA");
+		}
+
 		editor.putString(repeat_alarm_poweron_time, "");
 		editor.putString(repeat_alarm_poweroff_time, "");
 		editor.commit();
-		
-		setFileState("0", "/sys/class/minix-rtc/MCURTCDATA");
-		
+
 		if(active)
 		{
 			if(repeat.equals("true"))
 			{
-				SpiritAlarmManager mSpiritAlarmManager = new SpiritAlarmManager();
-				mSpiritAlarmManager.setSpiritAlarmWithDay(1, hms_on[0], hms_on[1]);
-								
-				setFileState("1", "/sys/class/minix-rtc/MCURTCDATA");
-				
+				if (isSpiritVersion()) {
+					new SpiritAlarmManager().setSpiritAlarmWithDay(1, hms_on[0], hms_on[1]);
+					setFileState("1", "/sys/class/minix-rtc/MCURTCDATA");
+				} else {
+					MyApplication.getApplication().getNodkaAPI().alarm_setSpiritAlarmWithDay(1, hms_on[0], hms_on[1]);
+					setFileState("1", "/sys/class/minix-rtc/minix_RTC_DATA");
+				}
+
 				editor.putString(repeat_alarm_poweron_time, hms_on[0]+":"+hms_on[1]+":"+0);
 				editor.putString(repeat_alarm_poweroff_time, hms_off[0]+":"+hms_off[1]+":"+0);
 				editor.commit();
@@ -284,22 +291,37 @@
 				editor.commit();
 				
 				Calendar calendar = Calendar.getInstance();
-				
-				// 改接口 setSpiritAlarmWithDay()
-				mAlarmPowerManager.CreatOneAlarmPower(calendar.get(Calendar.YEAR)+"", 
-													  calendar.get(Calendar.MONTH)+1+"", 
-													  calendar.get(Calendar.DAY_OF_MONTH)+"", 
-													  hms_on[0]+"", 
-													  hms_on[1]+"", 
-													  hms_on[2]+"", 
-													  hms_off[0]+"", 
-													  hms_off[1]+"", 
-													  hms_off[2]+"", 
-													  hms_on[0]>12? "0":"1", 
-													  hms_off[0]>12? "0":"1");
-				
-				mAlarmPowerManager.updateAlarmPowerActive(0, active+"");
-				
+
+				if (isSpiritVersion()) {
+					// 改接口 setSpiritAlarmWithDay()
+					new AlarmPowerManager().CreatOneAlarmPower(calendar.get(Calendar.YEAR)+"",
+							calendar.get(Calendar.MONTH)+1+"",
+							calendar.get(Calendar.DAY_OF_MONTH)+"",
+							hms_on[0]+"",
+							hms_on[1]+"",
+							hms_on[2]+"",
+							hms_off[0]+"",
+							hms_off[1]+"",
+							hms_off[2]+"",
+							hms_on[0]>12? "0":"1",
+							hms_off[0]>12? "0":"1");
+
+					new AlarmPowerManager().updateAlarmPowerActive(0, active+"");
+				} else {
+					MyApplication.getApplication().getNodkaAPI().alarm_creatOneAlarmPower(calendar.get(Calendar.YEAR)+"",
+							calendar.get(Calendar.MONTH)+1+"",
+							calendar.get(Calendar.DAY_OF_MONTH)+"",
+							hms_on[0]+"",
+							hms_on[1]+"",
+							hms_on[2]+"",
+							hms_off[0]+"",
+							hms_off[1]+"",
+							hms_off[2]+"",
+							hms_on[0]>12? "0":"1",
+							hms_off[0]>12? "0":"1");
+
+					MyApplication.getApplication().getNodkaAPI().alarm_updateAlarmPowerActive(0, active+"");
+				}
 			}
 		}
 	}
@@ -667,7 +689,9 @@
 		return re;
 	}
 	
-	
-	
-	
+	public boolean isSpiritVersion() {
+		return Build.VERSION.SDK_INT <= 25;
+	}
+
+
 }

--
Gitblit v1.6.2