From: snickersun Date: Sat, 24 Oct 2020 16:45:09 +0000 (+0800) Subject: release ICL02WorkService V57 20201025 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=409f1e139d89b02a7dbfe39f9e6e5af2480147c2;p=icworkservice.git release ICL02WorkService V57 20201025 添加环境温度检测。 --- diff --git a/app/IcL02WorkService/release/IcL02WorkService_V57_202010132019_release.apk b/app/IcL02WorkService/release/IcL02WorkService_V57_202010132019_release.apk deleted file mode 100644 index 2dd6727..0000000 Binary files a/app/IcL02WorkService/release/IcL02WorkService_V57_202010132019_release.apk and /dev/null differ diff --git a/app/IcL02WorkService/release/IcL02WorkService_V57_202010250043_release.apk b/app/IcL02WorkService/release/IcL02WorkService_V57_202010250043_release.apk new file mode 100644 index 0000000..394a609 Binary files /dev/null and b/app/IcL02WorkService/release/IcL02WorkService_V57_202010250043_release.apk differ diff --git a/app/src/main/aidl/com/ic/aidl/temp/ITempAidlInterface.aidl b/app/src/main/aidl/com/ic/aidl/temp/ITempAidlInterface.aidl index 2feb420..433313c 100644 --- a/app/src/main/aidl/com/ic/aidl/temp/ITempAidlInterface.aidl +++ b/app/src/main/aidl/com/ic/aidl/temp/ITempAidlInterface.aidl @@ -6,6 +6,6 @@ interface ITempAidlInterface { * Demonstrates some basic types that you can use as parameters * and return values in AIDL. */ - void updateCurrTempValue(double value,double animal); - void updateResultTempValue(double value,double animal); + void updateCurrTempValue(double value,double animal,double tempOut); + void updateResultTempValue(double value,double animal,double tempOut); } diff --git a/app/src/main/java/com/ic/work/WorkService.java b/app/src/main/java/com/ic/work/WorkService.java index 54670fa..067554f 100644 --- a/app/src/main/java/com/ic/work/WorkService.java +++ b/app/src/main/java/com/ic/work/WorkService.java @@ -72,6 +72,7 @@ public class WorkService extends Service { public static final String ACTION_TEMP_RESULT = "com.ic.action.temp_result"; public static final String KEY_TEMP_BODY = "body"; // double 体温 public static final String KEY_TEMP_WRIST = "wrist"; // double 腕温 + public static final String KEY_TEMP_OUT = "out"; // double 腕温 private static final String TXT_ACTION = "action.ic.srvPushTxt"; private static final String TYPE_KEY = "msgType"; @@ -205,7 +206,7 @@ public class WorkService extends Service { } //发送一次广播给 心率 launcher - sendHeartBroadcast(event.getHeart()); + sendHeartBroadcast(event.getHeart(),event.getOxygen()); } @Subscribe(threadMode = ThreadMode.MAIN) @@ -259,7 +260,7 @@ public class WorkService extends Service { @Subscribe(threadMode = ThreadMode.MAIN) public void onMessageEvent(TemperatureResultEvent event) { if (tempProcess != null) { - tempProcess.sendCurrTempValue(event.value, event.animal); + tempProcess.sendCurrTempValue(event.value, event.animal,event.tempOut); } if (akProcess != null) { @@ -269,9 +270,9 @@ public class WorkService extends Service { @Subscribe(threadMode = ThreadMode.MAIN) public void onMessageEvent(TemperatureResultCompleteEvent event) { - sendTempBroadcast(event.value, event.animal); + sendTempBroadcast(event.value, event.animal,event.tempOut); if (tempProcess != null) { - tempProcess.sendResultTempValue(event.value, event.animal); + tempProcess.sendResultTempValue(event.value, event.animal,event.tempOut); } if (akProcess != null) { @@ -297,7 +298,7 @@ public class WorkService extends Service { } //发送一次广播给 心率 launcher - sendHeartBroadcast(event.heart); + sendHeartBroadcast(event.heart,event.oxygen); } @Subscribe(threadMode = ThreadMode.MAIN) @@ -366,19 +367,21 @@ public class WorkService extends Service { //testBatteryBroadcast(this,"ddddddddddddtttttttttttttttttttttttt"); } - private void sendHeartBroadcast(int count) { + private void sendHeartBroadcast(int count,int spo2) { Intent pedIntent = new Intent(); pedIntent.setAction(HEART_ACTION); pedIntent.putExtra("BLOOD_HEART", count); - Log.i(TAG,"sendHeartBroadcast "+HEART_ACTION+" BLOOD_HEART "+count); + pedIntent.putExtra("BLOOD_SPO2", spo2); + Log.i(TAG,"sendHeartBroadcast "+HEART_ACTION+" BLOOD_HEART "+count+" BLOOD_SPO2 "+spo2); sendBroadcast(pedIntent); } - private void sendTempBroadcast(double value, double animal) { + private void sendTempBroadcast(double value, double animal,double tempOut) { Intent pedIntent = new Intent(); pedIntent.setAction(ACTION_TEMP_RESULT); pedIntent.putExtra(KEY_TEMP_WRIST, value); pedIntent.putExtra(KEY_TEMP_BODY, animal); + pedIntent.putExtra(KEY_TEMP_OUT, tempOut); sendBroadcast(pedIntent); } diff --git a/app/src/main/java/com/ic/work/event/TemperatureResultCompleteEvent.java b/app/src/main/java/com/ic/work/event/TemperatureResultCompleteEvent.java index d4c2bf8..4fcd0a6 100644 --- a/app/src/main/java/com/ic/work/event/TemperatureResultCompleteEvent.java +++ b/app/src/main/java/com/ic/work/event/TemperatureResultCompleteEvent.java @@ -3,9 +3,11 @@ package com.ic.work.event; public class TemperatureResultCompleteEvent { public double value; public double animal; + public double tempOut; - public TemperatureResultCompleteEvent(double value, double animal) { + public TemperatureResultCompleteEvent(double value, double animal,double tempOut) { this.value = value; this.animal = animal; + this.tempOut = tempOut; } } diff --git a/app/src/main/java/com/ic/work/event/TemperatureResultEvent.java b/app/src/main/java/com/ic/work/event/TemperatureResultEvent.java index eb6860d..4cbd4c0 100644 --- a/app/src/main/java/com/ic/work/event/TemperatureResultEvent.java +++ b/app/src/main/java/com/ic/work/event/TemperatureResultEvent.java @@ -3,9 +3,12 @@ package com.ic.work.event; public class TemperatureResultEvent { public double value; public double animal; + public double tempOut; - public TemperatureResultEvent(double value, double animal) { + + public TemperatureResultEvent(double value, double animal,double tempOut) { this.value = value; this.animal = animal; + this.tempOut = tempOut; } } diff --git a/app/src/main/java/com/ic/work/hardware/TemperatureRunnable.java b/app/src/main/java/com/ic/work/hardware/TemperatureRunnable.java index c2180cc..7429479 100644 --- a/app/src/main/java/com/ic/work/hardware/TemperatureRunnable.java +++ b/app/src/main/java/com/ic/work/hardware/TemperatureRunnable.java @@ -17,7 +17,8 @@ public class TemperatureRunnable implements Runnable { public void run() { double testValue = 0.0; double animal = 0.0; - int delay_times_in_seconds=20; + double tempout = 0.0; + int delay_times_in_seconds=10; boolean[] state = HardwareUtils.isTemperatureDevAvailable(); IcLog.i(TAG, "TemperatureRunnable :"+state[0]+" state[1]:"+state[1]); if(state[0]) { //have temp @@ -34,9 +35,16 @@ public class TemperatureRunnable implements Runnable { // } while (true) { testValue = HardwareUtils.getNdkTemperatureValue(); - animal = HardwareUtils.getBodyTempFromWristTemp(testValue, room_temperature); - IcLog.i(TAG, "getNdkTemperatureValue Value:" + testValue); - EventBus.getDefault().post(new TemperatureResultEvent(testValue, animal)); + tempout = HardwareUtils.getNdkTemperatureOutValue(); + if (tempout<0 || tempout > 60 ) + tempout=0; + if(tempout>0 ){ + animal = HardwareUtils.getBodyTempFromWristTemp(testValue, tempout); + }else { + animal = HardwareUtils.getBodyTempFromWristTemp(testValue, room_temperature); + } + IcLog.i(TAG, "getNdkTemperatureValue Value:" + testValue + " TempOut:"+tempout+" bodyTemp:"+animal); + EventBus.getDefault().post(new TemperatureResultEvent(testValue, animal,tempout)); try { Thread.sleep(1000); } catch (InterruptedException e) { @@ -56,7 +64,7 @@ public class TemperatureRunnable implements Runnable { } } - EventBus.getDefault().post(new TemperatureResultCompleteEvent(testValue, animal)); + EventBus.getDefault().post(new TemperatureResultCompleteEvent(testValue, animal,tempout)); } public static double div(double value1, int value2, int scale) { diff --git a/app/src/main/java/com/ic/work/process/TempProcess.java b/app/src/main/java/com/ic/work/process/TempProcess.java index ce6fd2f..7c551e9 100644 --- a/app/src/main/java/com/ic/work/process/TempProcess.java +++ b/app/src/main/java/com/ic/work/process/TempProcess.java @@ -54,13 +54,13 @@ public class TempProcess { } }; - public void sendCurrTempValue(double value,double animal) { + public void sendCurrTempValue(double value,double animal,double tempOut) { int N = 0; IcLog.d(TAG, "sendCurrTempValue "+value); try { N = mCallbacks.beginBroadcast(); for (int i = 0; i < N; i++) { - mCallbacks.getBroadcastItem(i).updateCurrTempValue(value,animal); + mCallbacks.getBroadcastItem(i).updateCurrTempValue(value,animal,tempOut); } } catch (NullPointerException e) { IcLog.e(TAG, "",e); @@ -77,12 +77,12 @@ public class TempProcess { } } - public void sendResultTempValue(double value,double animal) { + public void sendResultTempValue(double value,double animal,double tempOut) { int N = 0; try { N = mCallbacks.beginBroadcast(); for (int i = 0; i < N; i++) { - mCallbacks.getBroadcastItem(i).updateResultTempValue(value,animal); + mCallbacks.getBroadcastItem(i).updateResultTempValue(value,animal,tempOut); } } catch (NullPointerException e) { IcLog.e(TAG, "",e); diff --git a/app/src/main/java/com/ic/work/utils/HardwareUtils.java b/app/src/main/java/com/ic/work/utils/HardwareUtils.java index d60812f..14f8627 100644 --- a/app/src/main/java/com/ic/work/utils/HardwareUtils.java +++ b/app/src/main/java/com/ic/work/utils/HardwareUtils.java @@ -139,7 +139,14 @@ public class HardwareUtils { return 0; } } - + public static double getNdkTemperatureOutValue() { + try { + return ICJniUtils.getTemperatureOrigin(); + } catch (Exception e) { + IcLog.e(TAG, "",e); + return 0; + } + } public static double getBodyTempFromWristTemp(double wrist_temp,double ref_temp) { try { return ICJniUtils.getBodyTempFromWristTemp(wrist_temp,ref_temp);