From: snickersun Date: Sat, 4 Jul 2020 03:57:10 +0000 (+0800) Subject: release 434 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=5aa1bf8ddff5928320e08f20c48b0ccca2a7723f;p=protocol_srv.git release 434 1、去掉脱腕检测调试用的声音报警 2、更新温度接口,增加腕温转体温接口,上报增加体温数值。 3、接收界面测试温度消息,转发服务器。 --- diff --git a/app/release/ICSer_V433_2007021842_release.apk b/app/release/ICSer_V434_2007041154_release.apk similarity index 79% rename from app/release/ICSer_V433_2007021842_release.apk rename to app/release/ICSer_V434_2007041154_release.apk index aefbb9a2..bb6cd678 100644 Binary files a/app/release/ICSer_V433_2007021842_release.apk and b/app/release/ICSer_V434_2007041154_release.apk differ diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8a7e5d51..a14fc125 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -152,6 +152,8 @@ + + diff --git a/app/src/main/java/com/enqualcomm/support/Constants.java b/app/src/main/java/com/enqualcomm/support/Constants.java index 7dcef293..b9ce84ee 100644 --- a/app/src/main/java/com/enqualcomm/support/Constants.java +++ b/app/src/main/java/com/enqualcomm/support/Constants.java @@ -295,5 +295,11 @@ public interface Constants { public static final String KEY_MESSAGE_FROM = "msgFrom"; // 消息来源(发送者名称),预留,暂时不用。 + + 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 腕温 + + } diff --git a/app/src/main/java/com/enqualcomm/support/CoreService.java b/app/src/main/java/com/enqualcomm/support/CoreService.java index 87dbed20..734f0295 100644 --- a/app/src/main/java/com/enqualcomm/support/CoreService.java +++ b/app/src/main/java/com/enqualcomm/support/CoreService.java @@ -74,9 +74,12 @@ import static com.enqualcomm.support.Constants.ANTI_ALARM; import static com.enqualcomm.support.Constants.HEART_ALARM; import static com.enqualcomm.support.Constants.KEY_SAVE_STEP_COUNT; import static com.enqualcomm.support.Constants.KEY_STEP_COUNT; +import static com.enqualcomm.support.Constants.KEY_TEMP_BODY; +import static com.enqualcomm.support.Constants.KEY_TEMP_WRIST; import static com.enqualcomm.support.Constants.STEP_COUNT_ALARM_ACTION; import static com.enqualcomm.support.Constants.TEMP_ALARM; import static com.enqualcomm.support.bean.ICLocation.*; +import static com.ic.protocols.protocolAPIHelper.getTemperatureMSG; public class CoreService extends Service { @@ -760,12 +763,12 @@ public class CoreService extends Service { return Service.START_STICKY; } } else if (TEMP_ALARM.equals(paramIntent.getAction())) { - if (this.mKeepAlive != null) { - if (connection.isServerConnected() && runtime.isServerProtocolConnected()) { //测试温度并上报 - String temperatureMsg=protocolAPIHelper.getTemperatureMSG(TemperatureUtil.get_temp_value_adjusted()); + double wrist_temp=paramIntent.getDoubleExtra(KEY_TEMP_WRIST,0.0f); + double body_temp=paramIntent.getDoubleExtra(KEY_TEMP_BODY,0.0f); + String temperatureMsg=getTemperatureMSG(wrist_temp,body_temp); ICLogger.i("发送体温测量值 "+temperatureMsg); Deliver.sendLocationMSG(temperatureMsg); } diff --git a/app/src/main/java/com/enqualcomm/support/service/AntiMonitorService.java b/app/src/main/java/com/enqualcomm/support/service/AntiMonitorService.java index e93d95e5..43bdf438 100644 --- a/app/src/main/java/com/enqualcomm/support/service/AntiMonitorService.java +++ b/app/src/main/java/com/enqualcomm/support/service/AntiMonitorService.java @@ -58,7 +58,7 @@ public class AntiMonitorService extends AbstractInvokeHandlerService { } if (current_anti_status==0){ //佩戴 - play_notify(); + // play_notify(); mRuntime.setAlarmType(Runtime.AlarmType.ALARM_WEARED); String msg=protocolAPIHelper.getWarningMSG(mRuntime); Deliver.sendLocationMSG(msg); //消息很重要,所以利用带buffer的对列来发送! @@ -70,7 +70,7 @@ public class AntiMonitorService extends AbstractInvokeHandlerService { // send_anti_event_broadcast(0); }else{ //脱腕 - play_notify(); + // play_notify(); // screen_on(); mRuntime.setAlarmType(Runtime.AlarmType.ALARM_ANTIOFF); String msg=protocolAPIHelper.getWarningMSG(mRuntime); diff --git a/app/src/main/java/com/enqualcomm/support/service/Deliver.java b/app/src/main/java/com/enqualcomm/support/service/Deliver.java index 6a06553f..020620c1 100644 --- a/app/src/main/java/com/enqualcomm/support/service/Deliver.java +++ b/app/src/main/java/com/enqualcomm/support/service/Deliver.java @@ -231,16 +231,17 @@ public class Deliver extends AbstractConnectionService { public static void sendLocationMSG( String Msg){ + if(Msg.trim().isEmpty()){ + ICLogger.i("命令为空,跳过发送!"); + return ; + } if(mRuntime.getUseQueue()){ if(!ServiceUtil.offerQueue(protocolAPIHelper.genStringMessage("queue",Msg))) { ICLogger.i(" MessageQueue 已满,数据将被丢弃," + Msg); if (Config.LOG_TOFILE)ICLogger.logToFile( "APILog", " queueFullskip " + Msg); - } - // if(queue.size()>5) //测试queue 发送逻辑用 triggerSendThread(); - }else { if (checkNetwork()) { ICLogger.i(" first send " + Msg); diff --git a/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java b/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java index 5117842d..de7d4370 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java +++ b/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java @@ -25,6 +25,7 @@ import com.enqualcomm.support.LocationClient; import com.enqualcomm.support.R; import com.enqualcomm.support.bean.NotificationParam; import com.enqualcomm.support.bean.VoiceContent; +import com.enqualcomm.support.service.Deliver; import com.ic.jni.ICJniUtils; import com.enqualcomm.support.bean.Contact; import com.enqualcomm.support.service.AudioService; @@ -49,14 +50,20 @@ import static com.enqualcomm.support.Constants.ACTION_REMOTE_CAMERA; import static com.enqualcomm.support.Constants.ACTION_SEND_EMEGENCY_LOCATION_START; import static com.enqualcomm.support.Constants.ACTION_SEND_SOS_MSG; import static com.enqualcomm.support.Constants.ACTION_SHUTDOWN; +import static com.enqualcomm.support.Constants.ACTION_TEMP_RESULT; import static com.enqualcomm.support.Constants.DIALOG_ACTION; import static com.enqualcomm.support.Constants.KEY_MESSAGE_FROM; import static com.enqualcomm.support.Constants.KEY_MESSAGE_TYPE; import static com.enqualcomm.support.Constants.KEY_MESSAGE_URL; +import static com.enqualcomm.support.Constants.KEY_TEMP_BODY; +import static com.enqualcomm.support.Constants.KEY_TEMP_WRIST; import static com.enqualcomm.support.Constants.RESUME_ACTION; import static com.enqualcomm.support.Constants.SOS_ACTION; import static com.enqualcomm.support.Constants.STEP_COUNT_ALARM_ACTION; import static com.enqualcomm.support.bean.Content.CONTACT_CATEGORY_GROUP; +import static com.ic.protocols.protocolAPIHelper.genStringMessage; +import static com.ic.protocols.protocolAPIHelper.getTemperatureMSG; +import static com.ic.protocols.protocol_beehome.APTP; public class ProcessReceiver extends BroadcastReceiver { private static final int MICRO_CHAT = 2; @@ -363,8 +370,14 @@ public class ProcessReceiver extends BroadcastReceiver { if (mCustomDialog != null && mCustomDialog.isShowing()) { mCustomDialog.dismiss(); } - - } else { + }else if (ACTION_TEMP_RESULT.equals(str)) { + double wrist_temp=paramIntent.getDoubleExtra(KEY_TEMP_WRIST,0.0f); + double body_temp=paramIntent.getDoubleExtra(KEY_TEMP_BODY,0.0f); + String temperatureMsg=getTemperatureMSG(wrist_temp,body_temp); + ICLogger.i("发送体温测量值 "+temperatureMsg); + Deliver.sendLocationMSG(temperatureMsg); + + } else { if (mCustomDialog != null && mCustomDialog.isShowing()) { mCustomDialog.dismiss(); } diff --git a/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java b/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java index b0d3d119..8be20968 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java @@ -10,6 +10,7 @@ public class TemperatureUtil { private static double temp_value_orig =0.0f; private static double temp_adjust_value=0.0f; + private static double body_temp_value=0.0f; public static double get_temp_value_origin() { temp_value_orig= ICJniUtils.getTemperature(); @@ -28,4 +29,9 @@ public class TemperatureUtil { return temp_adjust_value; } + public static double getBodyTemp(double wristtemp,double envtemp){ + body_temp_value=ICJniUtils.getBodyTempFromWristTemp(wristtemp,envtemp); + ICLogger.i("get body Temperature value="+body_temp_value); + return body_temp_value; + } } diff --git a/app/src/main/java/com/ic/jni/ICJniUtils.java b/app/src/main/java/com/ic/jni/ICJniUtils.java index ca48df91..338a64cd 100644 --- a/app/src/main/java/com/ic/jni/ICJniUtils.java +++ b/app/src/main/java/com/ic/jni/ICJniUtils.java @@ -82,5 +82,7 @@ public class ICJniUtils { /*此操作仅仅为了检查标志状态设置成功与否,标志已经在内部被使用*/ public static native int getTemperatureValidFlag(); + /*根据环境参考温度和腕温换算 体温*/ + public static native double getBodyTempFromWristTemp(double wrist_temp,double ref_temp); } diff --git a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java index a4b4aaf7..545edb46 100644 --- a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java +++ b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java @@ -42,7 +42,7 @@ public class protocolAPIHelper { return sm; } - public static String getTemperatureMSG(double temp_adusted){ + public static String getTemperatureMSG(double temp_adusted,double body_temp){ String ret=""; switch(Config.protocol_no) { @@ -50,7 +50,7 @@ public class protocolAPIHelper { ret=""; break; case 1: - ret=protocol_beehome.APTP(temp_adusted); + ret=protocol_beehome.APTP(temp_adusted,body_temp); break; } return ret; diff --git a/app/src/main/java/com/ic/protocols/protocol_beehome.java b/app/src/main/java/com/ic/protocols/protocol_beehome.java index 43053205..b9c932a3 100644 --- a/app/src/main/java/com/ic/protocols/protocol_beehome.java +++ b/app/src/main/java/com/ic/protocols/protocol_beehome.java @@ -1593,8 +1593,11 @@ public class protocol_beehome { ICLogger.i("收到服务器指令:测量体温 "+freq+"分钟一次。"); Config.setTemperatureTestCycle(runtime,freq); CoreService.getInstance().setTempAlarm(); - String temperatureMsg=APTP(TemperatureUtil.get_temp_value_adjusted()); - connection.send(genStringMessage("APTP",temperatureMsg)); + double wrist_temp,body_temp; + wrist_temp=TemperatureUtil.get_temp_value_adjusted(); + body_temp=TemperatureUtil.getBodyTemp(wrist_temp,26.0f); + String temperatureMsg=APTP(wrist_temp,body_temp); + connection.send(genStringMessage("APTP",temperatureMsg)); ICLogger.i("发送体温测量值 "+temperatureMsg); }else{ ICLogger.i("BP89 format error!"); @@ -1602,9 +1605,8 @@ public class protocol_beehome { } - //体温上行(上行协议号:APTP,响应:BPTP) - public static String APTP(double temperature){ + public static String APTP(double wrist_temp,double body_temp){ //设备: IWAPTP,36.3,33,132# //IW:标识符 @@ -1612,8 +1614,9 @@ public class protocol_beehome { //35.3:测量体温 (摄氏度) //33,132:温补用的参数,此处不用,可以用0 来代替。 return new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.APTP)) - .append(CMDSPLIT).append(String.format("%1$.2f",temperature)) - .append(CMDSPLIT).append(0).append(CMDSPLIT).append(0) + .append(CMDSPLIT).append(String.format("%1$.2f",wrist_temp)) + .append(CMDSPLIT).append(String.format("%1$.2f",body_temp)) + .append(CMDSPLIT).append(0) .append(CMDEND).toString(); } diff --git a/app/version_code.properties b/app/version_code.properties index 0dee1f52..278fbdca 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,2 +1,2 @@ -#Thu Jul 02 18:42:10 CST 2020 -VERSION_CODE=433 +#Sat Jul 04 11:54:24 CST 2020 +VERSION_CODE=434