hjw
2023-04-20 a75addbc22f25b5fb219d3979f7bcd9cbf4942c3
app/src/main/java/com/jwipc/nodka_alarmpower/MainActivity.java
....@@ -15,6 +15,7 @@
1515 import android.content.pm.PackageManager.NameNotFoundException;
1616 import android.hardware.spirit.AlarmPowerItem;
1717 import android.hardware.spirit.AlarmPowerManager;
18
+import android.os.Build;
1819 import android.os.Bundle;
1920 import android.os.Handler;
2021 import android.os.Message;
....@@ -42,6 +43,8 @@
4243 import android.widget.TimePicker;
4344 import android.widget.TimePicker.OnTimeChangedListener;
4445 import android.provider.Settings;
46
+
47
+import com.nodka.api.alarm.SpiritAlarmItem;
4548
4649 public class MainActivity extends Activity{
4750
....@@ -347,40 +350,72 @@
347350 sendBroadcast(new Intent("android.intent.action.NDJ_GET_ALARM_REBOOT"));
348351
349352 try {
350
- AlarmPowerManager mAlarmPowerManager = new AlarmPowerManager();
351
-
352
- List<AlarmPowerItem> list_AlarmPowerItem = mAlarmPowerManager.getAlarmPowerList();
353
-
354
- if(list_AlarmPowerItem != null)
355
- {
356
- if(list_AlarmPowerItem.size() > 0)
353
+ if (isSpiritVersion()) {
354
+ AlarmPowerManager mAlarmPowerManager = new AlarmPowerManager();
355
+
356
+ List<AlarmPowerItem> list_AlarmPowerItem = mAlarmPowerManager.getAlarmPowerList();
357
+ if(list_AlarmPowerItem != null)
357358 {
358
-
359
- AlarmPowerItem mAlarmPowerItem = list_AlarmPowerItem.get(0);
360
-
361
- Message msg_on = new Message();
362
- msg_on.what = set_AlarmPower_on;
363
- msg_on.obj = mAlarmPowerItem.getAlarmPowerOnHour() + ":" + mAlarmPowerItem.getAlarmPowerOnMinute() + ":" + mAlarmPowerItem.getAlarmPowerOnSecond();
364
- time_alarm_power_on = (String) msg_on.obj;
365
- handler.sendMessage(msg_on);
366
-
367
- Message msg_off = new Message();
368
- msg_off.what = set_AlarmPower_off;
369
- msg_off.obj = mAlarmPowerItem.getAlarmPowerOffHour() + ":" + mAlarmPowerItem.getAlarmPowerOffMinute() + ":" + mAlarmPowerItem.getAlarmPowerOffSecond();
370
- time_alarm_power_off = (String) msg_off.obj;
371
- handler.sendMessage(msg_off);
372
-
373
-
359
+ if(list_AlarmPowerItem.size() > 0)
360
+ {
361
+
362
+ AlarmPowerItem mAlarmPowerItem = list_AlarmPowerItem.get(0);
363
+
364
+ Message msg_on = new Message();
365
+ msg_on.what = set_AlarmPower_on;
366
+ msg_on.obj = mAlarmPowerItem.getAlarmPowerOnHour() + ":" + mAlarmPowerItem.getAlarmPowerOnMinute() + ":" + mAlarmPowerItem.getAlarmPowerOnSecond();
367
+ time_alarm_power_on = (String) msg_on.obj;
368
+ handler.sendMessage(msg_on);
369
+
370
+ Message msg_off = new Message();
371
+ msg_off.what = set_AlarmPower_off;
372
+ msg_off.obj = mAlarmPowerItem.getAlarmPowerOffHour() + ":" + mAlarmPowerItem.getAlarmPowerOffMinute() + ":" + mAlarmPowerItem.getAlarmPowerOffSecond();
373
+ time_alarm_power_off = (String) msg_off.obj;
374
+ handler.sendMessage(msg_off);
375
+
376
+
374377 /*Message msg_check_AlarmPower_repeat = new Message();
375378 msg_check_AlarmPower_repeat.what = set_check_AlarmPower_repeat;
376379 msg_check_AlarmPower_repeat.obj = mAlarmPowerItem.getAlarmPowerRepeat().equals("true") ? true : false;
377380 time_alarm_power_repeat = mAlarmPowerItem.getAlarmPowerRepeat();
378381 handler.sendMessage(msg_check_AlarmPower_repeat);*/
379
-
382
+
383
+ }
384
+ }
385
+
386
+
387
+
388
+ } else {
389
+ List<SpiritAlarmItem> spiritAlarmItems = MyApplication.getApplication().getNodkaAPI().alarm_getAlarmPowerList();
390
+ if (spiritAlarmItems != null) {
391
+ if (spiritAlarmItems.size() > 0) {
392
+
393
+ SpiritAlarmItem mSpiritAlarmItem = spiritAlarmItems.get(0);
394
+
395
+ Message msg_on = new Message();
396
+ msg_on.what = set_AlarmPower_on;
397
+ msg_on.obj = mSpiritAlarmItem.getAlarmPowerOnHour() + ":" + mSpiritAlarmItem.getAlarmPowerOnMinute() + ":" + mSpiritAlarmItem.getAlarmPowerOnSecond();
398
+ time_alarm_power_on = (String) msg_on.obj;
399
+ handler.sendMessage(msg_on);
400
+
401
+ Message msg_off = new Message();
402
+ msg_off.what = set_AlarmPower_off;
403
+ msg_off.obj = mSpiritAlarmItem.getAlarmPowerOffHour() + ":" + mSpiritAlarmItem.getAlarmPowerOffMinute() + ":" + mSpiritAlarmItem.getAlarmPowerOffSecond();
404
+ time_alarm_power_off = (String) msg_off.obj;
405
+ handler.sendMessage(msg_off);
406
+
407
+
408
+ /*Message msg_check_AlarmPower_repeat = new Message();
409
+ msg_check_AlarmPower_repeat.what = set_check_AlarmPower_repeat;
410
+ msg_check_AlarmPower_repeat.obj = mAlarmPowerItem.getAlarmPowerRepeat().equals("true") ? true : false;
411
+ time_alarm_power_repeat = mAlarmPowerItem.getAlarmPowerRepeat();
412
+ handler.sendMessage(msg_check_AlarmPower_repeat);*/
413
+
414
+ }
380415 }
381416 }
382417
383
- } catch (RemoteException e) {
418
+ } catch (Exception e) {
384419 // TODO Auto-generated catch block
385420 e.printStackTrace();
386421 }
....@@ -533,8 +568,10 @@
533568
534569 return npList;
535570 }
536
-
537
-
571
+
572
+ public boolean isSpiritVersion() {
573
+ return Build.VERSION.SDK_INT <= 25;
574
+ }
538575
539576
540577