From: snickersun Date: Sat, 27 Jun 2020 10:18:06 +0000 (+0800) Subject: release 429 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.js?a=commitdiff_plain;h=7c2efd002dc1e8fa5c71ec0852f3ba6a26379183;p=protocol_srv.git release 429 1、添加 Proximity Sensor(脱腕检测)功能 2、增加温度循环检测功能 3、修改 AP10 报警 函数。 --- diff --git a/app/release/ICSer_V425_2006242237_release.apk b/app/release/ICSer_V429_2006271708_release.apk similarity index 79% rename from app/release/ICSer_V425_2006242237_release.apk rename to app/release/ICSer_V429_2006271708_release.apk index 952b93ea..12deb133 100644 Binary files a/app/release/ICSer_V425_2006242237_release.apk and b/app/release/ICSer_V429_2006271708_release.apk differ diff --git a/app/src/main/java/com/enqualcomm/support/Config.java b/app/src/main/java/com/enqualcomm/support/Config.java index 54bd0e9f..d8c840cc 100644 --- a/app/src/main/java/com/enqualcomm/support/Config.java +++ b/app/src/main/java/com/enqualcomm/support/Config.java @@ -111,6 +111,7 @@ public class Config { final static String KeySMSPassword="SMSPWD"; final static String DefaultSMSPassword="non"; + final static String KeyTempTestCycle="TempTestCycle"; public static String DefaultHost(){ if (protocol_no==PROTOCOL_BEEHOME) @@ -188,25 +189,6 @@ public class Config { SharPreferenceUtil.setPrefString(context,KeyLogFtpPWD,PWD); } - - public static double getTempAdjustValue(){ - - String tmpstr=FileUtil.readFileLine(new File("/productinfo/temp_adjust_37.txt")); - - double tmp=0.0f; - - if (tmpstr==null || tmpstr.isEmpty()) - { - tmpstr="0.0"; - } - tmp=Double.valueOf(tmpstr); - - ICLogger.i("get Temperature Adjust Value from /productinfo/temp_adjust_37.txt , value="+tmpstr); - return tmp; - - } - - public static void setAlarmCycle(Context context, int cycle){ SharPreferenceUtil.setPrefInt(context,KeyAlarmCycle,cycle); } @@ -380,9 +362,25 @@ public class Config { noSMSNotifyDialog=true; noVoiceNotifyDialog=true; } + String c41_branch_name=Util.getSystemProperties("persist.sys.c41.branch"); + + if ((c41_branch_name.equals("H88")) ){ + noPushTxtNotifyDialog=true; + noSMSNotifyDialog=false; + noVoiceNotifyDialog=false; + } + + } + + public static void loadTemperatureSettings(Runtime runtime){ + runtime.temp_test_Cycle = SharPreferenceUtil.getPrefInt(runtime.getContextProxy().context, KeyTempTestCycle, 30); + } + public static void setTemperatureTestCycle(Runtime runtime,int cycle_minutes) { + SharPreferenceUtil.setPrefInt(runtime.getContextProxy().context,KeyLocationCycle,cycle_minutes); + loadTemperatureSettings(runtime); } - public static boolean isUsingCustomServer=false; + public static boolean isUsingCustomServer=false; public static void setCustomServer(Context context,boolean isusingCutomerServer,String serverip,int serverport) { diff --git a/app/src/main/java/com/enqualcomm/support/CoreService.java b/app/src/main/java/com/enqualcomm/support/CoreService.java index be622d80..a855ccd4 100644 --- a/app/src/main/java/com/enqualcomm/support/CoreService.java +++ b/app/src/main/java/com/enqualcomm/support/CoreService.java @@ -15,9 +15,11 @@ import android.os.PowerManager; import android.os.SystemClock; import android.widget.Toast; +import com.enqualcomm.support.service.AntiMonitorService; import com.enqualcomm.support.utils.DeviceInfoUtil; import com.enqualcomm.support.utils.LedUtil; import com.enqualcomm.support.utils.StorageUtils; +import com.enqualcomm.support.utils.TemperatureUtil; import com.enqualcomm.support.utils.VibrateUtil; import com.ic.jni.ICJniUtils; import com.enqualcomm.support.adapter.LBSHelper; @@ -179,7 +181,7 @@ public class CoreService extends Service { setHeartRateDetectAlarm(runtime.getPpgTestCycle()); HeartRateManager.triggerPPGtest(); - runtime.setAlarmType(false,runtime.getBatteryLow(),true,false); + runtime.setAlarmType(Runtime.AlarmType.ALARM_SOS); //trigger AP10 报警定位 // CoreService.this.locationClient.triggerSOSLocationProcess(); connection.send(protocolAPIHelper.genStringMessage("AP10",protocolAPIHelper.getWarningMSG(runtime))); @@ -255,7 +257,7 @@ public class CoreService extends Service { private boolean isBinded = false; - + private AntiMonitorService antiservice; LocationClient locationClient; private Deliver mDeliver; @@ -356,9 +358,11 @@ public class CoreService extends Service { ICLogger.i("getInvokeHandlerServiceChain"); SendChatMessage sendChatMessage = new SendChatMessage(); HeartRateManager heartRateManager= new HeartRateManager(this.runtime,this.connection); + antiservice = new AntiMonitorService(); SilentManager silentManager = SilentManager.getInstance();// new SilentManager(); sendChatMessage.setNext(heartRateManager); heartRateManager.setNext(silentManager); + silentManager.setNext(antiservice); return sendChatMessage; } @@ -527,8 +531,8 @@ public class CoreService extends Service { //初始化温度测试相关参数 - runtime.temperature_adjustValue=Config.getTempAdjustValue(); - + runtime.temperature_adjustValue= TemperatureUtil.getTempAdjustValue(); + Config.loadTemperatureSettings(runtime); this.connectionServiceChain.processAttach(this.connection, this.runtime); this.invokeHandlerServiceChain.processAttach(this.connection, this.runtime); @@ -628,6 +632,8 @@ public class CoreService extends Service { needLocateInAfterHeartBeat=true; setLocationAlarm(runtime.getLocationInstance().getWorkingMod()); + //设置温度测量间隔时间 + setTempAlarm(); //设置来电模式 SimSignalUtil.SetRingMode(this, AudioManager.RINGER_MODE_NORMAL,true); @@ -756,7 +762,8 @@ public class CoreService extends Service { if (connection.isServerConnected() && runtime.isServerProtocolConnected()) { //测试温度并上报 - + String temperatureMsg=protocolAPIHelper.getTemperatureMSG(TemperatureUtil.get_temp_value_adjusted()); + Deliver.sendLocationMSG(temperatureMsg); } setTempAlarm(); if (Config.LOG_TOFILE) @@ -896,7 +903,6 @@ public class CoreService extends Service { StringBuilder sb=new StringBuilder(); int cycle=runtime.temp_test_Cycle; - //心跳指令默认设置为3分钟 AlarmHelper.setRealTimeAlarm(runtime.getContextProxy().context,cycle, TEMP_ALARM); sb.append(" setHeartAlarm "+TEMP_ALARM+", cycle "+cycle); // locationClient.triggerLocationProcess(); diff --git a/app/src/main/java/com/enqualcomm/support/LocationClient.java b/app/src/main/java/com/enqualcomm/support/LocationClient.java index bec82693..a5b917e3 100644 --- a/app/src/main/java/com/enqualcomm/support/LocationClient.java +++ b/app/src/main/java/com/enqualcomm/support/LocationClient.java @@ -773,9 +773,11 @@ public void updateCellInfo() { // connection.send(API.H05(runtime, "1")); ICLogger.i("sendBatteryNotification Low Battery "); - runtime.setAlarmType(false,runtime.getBatteryLow(),false,false); - //trigger AP10 报警低电 - connection.send(protocolAPIHelper.genStringMessage("AP10",protocolAPIHelper.getWarningMSG(runtime))); + if (runtime.getBatteryLow()) { + runtime.setAlarmType(Runtime.AlarmType.ALARM_LOWBATTERY); + //trigger AP10 报警低电 + connection.send(protocolAPIHelper.genStringMessage("AP10",protocolAPIHelper.getWarningMSG(runtime))); + } this.batteryLowNotification = true; } diff --git a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java index b9ff3848..24f392d5 100644 --- a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java +++ b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java @@ -147,19 +147,40 @@ public class Runtime { return alarmType; } + public enum AlarmType{ + ALARM_SOS, + ALARM_LOWBATTERY, + ALARM_ANTIOFF, + ALARM_WEARED, + ALARM_FALL, + ALARM_NONE, + }; // 00为无任何报警(01:SOS,02:低电,03:脱落报警,04:佩戴提醒,05/06:跌倒报警)) - public void setAlarmType(boolean fall,boolean lowbattery,boolean sos,boolean antioff){ + public void setAlarmType(AlarmType alarm){ // if ( !fall && !lowbattery && !sos && antioff) - alarmType= "00"; - if (sos){ - alarmType= "01"; - }else if(lowbattery){ - alarmType= "02"; - }else if(antioff){ - alarmType= "03"; - }else if(fall){ - alarmType= "05"; - } + + switch (alarm){ + case ALARM_SOS: + alarmType="01"; + break; + case ALARM_LOWBATTERY: + alarmType="02"; + break; + case ALARM_ANTIOFF: + alarmType="03"; + break; + case ALARM_WEARED: + alarmType="04"; + break; + case ALARM_FALL: + alarmType="05"; + break; + case ALARM_NONE: + default: + alarmType="00"; + break; + } + } public String preCdmaInfo; diff --git a/app/src/main/java/com/enqualcomm/support/service/AntiMonitorService.java b/app/src/main/java/com/enqualcomm/support/service/AntiMonitorService.java new file mode 100644 index 00000000..c39fbee0 --- /dev/null +++ b/app/src/main/java/com/enqualcomm/support/service/AntiMonitorService.java @@ -0,0 +1,140 @@ +package com.enqualcomm.support.service; + +import android.content.Context; +import android.content.Intent; +import android.hardware.Sensor; +import android.hardware.SensorEvent; +import android.hardware.SensorEventListener; +import android.hardware.SensorManager; +import android.os.Message; +import android.os.PowerManager; +import android.util.Log; + +import com.enqualcomm.support.bean.Runtime; +import com.enqualcomm.support.service.base.AbstractInvokeHandlerService; +import com.enqualcomm.support.utils.Connection; +import com.enqualcomm.support.utils.ICLogger; +import com.enqualcomm.support.utils.WakeLockUtil; +import com.ic.protocols.protocolAPIHelper; + +import static java.lang.Thread.*; + + +public class AntiMonitorService extends AbstractInvokeHandlerService { + + + Context mContext; + + Runtime mRuntime; + + Connection mConnection; + + private SensorManager mSensorManager; + + /** + * 启动传感器。 + */ + private void startSensor() { + mSensorManager = (SensorManager) mContext.getSystemService(Context.SENSOR_SERVICE); + Sensor mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY); + + if (mSensorManager == null || mSensor == null) { + ICLogger.i("Proximity 设备不支持1"); + return; + //throw new UnsupportedOperationException("设备不支持"); + } + + boolean isRegister = mSensorManager.registerListener(mSensorEventListener, mSensor, SensorManager.SENSOR_DELAY_NORMAL); + if (!isRegister) { + ICLogger.i("Proximity 设备不支持2"); + //throw new UnsupportedOperationException("设备不支持"); + return ; + } + } + + private String ACTION_ANTI_OFF = "com.ic.ACTION_STRIP"; + private String KEY_ANTI_EVENT="eventID"; //integer eventID =1 脱落, eventID =0 佩戴 + + private void send_anti_event_broadcast(int antioff){ + + Intent intent=new Intent(); + intent.setAction(ACTION_ANTI_OFF); + intent.putExtra(KEY_ANTI_EVENT,antioff); + mContext.sendBroadcast(intent); + + } + + + private void screen_on(){ + PowerManager mPowerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); + PowerManager.WakeLock mWakeLock = mPowerManager.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, "tag"); + mWakeLock.acquire(1*1000);//亮屏5秒 + } + private SensorEventListener mSensorEventListener = new SensorEventListener() { + + @Override + public void onSensorChanged(SensorEvent sensorEvent) { + float proximity=sensorEvent.values[0]; + ICLogger.i("近距离 "+String.valueOf(proximity)); + if (proximity==0){ + //佩戴 + screen_on(); + mRuntime.setAlarmType(Runtime.AlarmType.ALARM_WEARED); + String msg=protocolAPIHelper.getWarningMSG(mRuntime); + Deliver.sendLocationMSG(msg); //消息很重要,所以利用带buffer的对列来发送! + try { + sleep(1000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + send_anti_event_broadcast(0); + }else{ + //脱腕 + screen_on(); + mRuntime.setAlarmType(Runtime.AlarmType.ALARM_ANTIOFF); + String msg=protocolAPIHelper.getWarningMSG(mRuntime); + Deliver.sendLocationMSG(msg); //消息很重要,所以利用带buffer的对列来发送! + try { + sleep(1000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + send_anti_event_broadcast(1); + } + } + + @Override + public void onAccuracyChanged(Sensor sensor, int i) { + + } + }; + + + @Override + public boolean onUserRequest(Intent paramIntent, Connection paramConnection, Runtime paramRuntime) { + return false; + } + + @Override + public boolean onUserRequest(Message paramMessage, Connection paramConnection, Runtime paramRuntime) { + return false; + } + + @Override + public void onAlarmClock(Connection paramConnection, Runtime paramRuntime) { + + } + + @Override + public void onAttach(Connection paramConnection, Runtime paramRuntime) { + mRuntime=paramRuntime; + mContext=mRuntime.getContextProxy().context; + mConnection=paramConnection; + startSensor(); + } + + @Override + public void onDetach(Connection paramConnection, Runtime paramRuntime) { + mSensorManager.unregisterListener(mSensorEventListener); + } +} diff --git a/app/src/main/java/com/enqualcomm/support/service/KeepAlive.java b/app/src/main/java/com/enqualcomm/support/service/KeepAlive.java index ef65cb58..c6e3704e 100644 --- a/app/src/main/java/com/enqualcomm/support/service/KeepAlive.java +++ b/app/src/main/java/com/enqualcomm/support/service/KeepAlive.java @@ -349,10 +349,12 @@ public class KeepAlive extends AbstractConnectionService { ICLogger.i("Shutdown Received! reboot="+bool); if (KeepAlive.this.mRuntime.getBatteryLow() && !KeepAlive.this.mRuntime.getBatterychanging() && !bool && !KeepAlive.this.mRuntime.isShutdown()/*不是服务器让关闭的*/){ - KeepAlive.this.mRuntime.setAlarmType(false,KeepAlive.this.mRuntime.getBatteryLow(),false,false); - KeepAlive.this.connection.send(protocolAPIHelper.genStringMessage("AP10",protocolAPIHelper.getWarningMSG(KeepAlive.this.mRuntime))); + if (KeepAlive.this.mRuntime.getBatteryLow()){ + KeepAlive.this.mRuntime.setAlarmType(Runtime.AlarmType.ALARM_LOWBATTERY); + KeepAlive.this.connection.send(protocolAPIHelper.genStringMessage("AP10", protocolAPIHelper.getWarningMSG(KeepAlive.this.mRuntime))); ICLogger.i("Shutdown Received! send AP10 !"); + } } diff --git a/app/src/main/java/com/enqualcomm/support/utils/BatteryUtil.java b/app/src/main/java/com/enqualcomm/support/utils/BatteryUtil.java index a39055a9..ced27820 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/BatteryUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/BatteryUtil.java @@ -82,7 +82,7 @@ public class BatteryUtil { mRuntime.setBatteryLow(true); if (Config.LOG_TOFILE) ICLogger.logToFile("Battery","BatteryLow !"); - mRuntime.setAlarmType(false,mRuntime.getBatteryLow(),false,false); + mRuntime.setAlarmType(Runtime.AlarmType.ALARM_LOWBATTERY); //trigger AP10 报警定位 connection.send(protocolAPIHelper.genStringMessage("AP10",protocolAPIHelper.getWarningMSG(mRuntime))); } diff --git a/app/src/main/java/com/enqualcomm/support/utils/DeviceInfoUtil.java b/app/src/main/java/com/enqualcomm/support/utils/DeviceInfoUtil.java index 355b7d3b..bd15d48a 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/DeviceInfoUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/DeviceInfoUtil.java @@ -233,7 +233,8 @@ public class DeviceInfoUtil { .append(" [").append(runtime.getSignalStrength()).append(",").append(runtime.getSignalInfo()).append("] ") .append(runtime.IMEI()) .append("\n Srv [").append(runtime.getHost()).append(":").append(runtime.getPort()).append("]").append(KeepAlive.isConnected).append(" , HBcycle ").append(runtime.getHeartBeatCycle()) - .append("\n ServerConnected is ").append(runtime.isServerProtocolConnected()).append(",Temp ").append(ICJniUtils.getTemperature()-runtime.temperature_adjustValue) + .append("\n ServerConnected is ").append(runtime.isServerProtocolConnected()) + .append(",Temp ").append(String.format("%1$.2f",TemperatureUtil.get_temp_value_adjusted())).append(",TA ").append(String.format("%1$.2f",runtime.temperature_adjustValue)) .append(" \n Bat ").append(runtime.getBattery()).append(",").append(runtime.getBatteryVotage()) .append(" charged ").append(runtime.isPowerConnected()) .append(" StepCount ").append(runtime.getTotalStepCount()) @@ -274,7 +275,8 @@ public class DeviceInfoUtil { .append(",P").append(runtime.getHRS().getPPG()) .append(",H").append(runtime.getHRS().getBPH()) .append(",L").append(runtime.getHRS().getBPL()) - .append(",T").append(ICJniUtils.getTemperature()-runtime.temperature_adjustValue) + .append(",T").append(String.format("%1$.2f",TemperatureUtil.get_temp_value_adjusted())) + .append(",TA").append(String.format("%1$.2f",runtime.temperature_adjustValue)) .append(",").append(runtime.getHRS().getTestTime()).append("]") .toString(); } diff --git a/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java b/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java new file mode 100644 index 00000000..1abf1a54 --- /dev/null +++ b/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java @@ -0,0 +1,42 @@ +package com.enqualcomm.support.utils; + +import com.ic.jni.ICJniUtils; +import com.sina.util.dnscache.log.FileUtil; + +import java.io.File; + +public class TemperatureUtil { + + + private static double temp_value_orig =0.0f; + private static double temp_adjust_value=0.0f; + public static double get_temp_value_origin() + { + + temp_value_orig= ICJniUtils.getTemperature(); + return temp_value_orig; + } + public static double get_temp_value_adjusted() + { + get_temp_value_origin(); + return (temp_value_orig-temp_adjust_value); + } + + public static double getTempAdjustValue(){ + + String tmpstr= FileUtil.readFileLine(new File("/productinfo/temp_adjust_37.txt")); + + double tmp=0.0f; + + if (tmpstr==null || tmpstr.isEmpty()) + { + tmpstr="0.0"; + } + tmp=Double.valueOf(tmpstr); + + temp_adjust_value=tmp; + ICLogger.i("get Temperature Adjust Value from /productinfo/temp_adjust_37.txt , value="+tmpstr); + return tmp; + + } +} diff --git a/app/src/main/java/com/ic/jni/ICJniUtils.java b/app/src/main/java/com/ic/jni/ICJniUtils.java index 5c1928bc..6fbc460b 100644 --- a/app/src/main/java/com/ic/jni/ICJniUtils.java +++ b/app/src/main/java/com/ic/jni/ICJniUtils.java @@ -60,4 +60,5 @@ public class ICJniUtils { public static native double getTemperature(); -} + + } diff --git a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java index aedb741b..a4b4aaf7 100644 --- a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java +++ b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java @@ -42,6 +42,19 @@ public class protocolAPIHelper { return sm; } + public static String getTemperatureMSG(double temp_adusted){ + String ret=""; + switch(Config.protocol_no) + { + case 0: + ret=""; + break; + case 1: + ret=protocol_beehome.APTP(temp_adusted); + break; + } + return ret; + } public static String getWarningMSG(Runtime runtime){ String ret=""; switch(Config.protocol_no) 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 d4cf1f46..b477a0fc 100644 --- a/app/src/main/java/com/ic/protocols/protocol_beehome.java +++ b/app/src/main/java/com/ic/protocols/protocol_beehome.java @@ -387,7 +387,8 @@ public class protocol_beehome { * HOME|74-DE-2B-44-88-8C|97&HOME1|74-DE-2B-44-88-8C|97&HOME2|74-DE-2B-44-88-8C|97&HOME3|74-DE-2B-44-88-8C|97# */ return new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP10)).append(TimeUtil.getShortDate()) - .append(ds.getGPSData()).append(TimeUtil.getShortTime()).append(ds.getGPSHeading()).append(String.format("%03d",abs(ds.getSignalStrength()))) + .append(ds.getGPSData()).append(TimeUtil.getShortTime()).append(ds.getGPSHeading()) + .append(String.format("%03d",abs(ds.getSignalStrength()))) .append(ds.getGPSLocationStarNums()).append(ds.getBattery()).append("0") .append(ds.getProtection()).append(ds.getWorkModeStr()).append(CMDSPLIT) .append(ds.getLBSData()).append(CMDSPLIT) @@ -1527,7 +1528,7 @@ public class protocol_beehome { .append(CMDEND).toString(); } - public void handleBPTE(String cmd,Connection connection){ + public void handleBPTE(String cmd,Connection connection,Runtime runtime){ //示例: //IWBPTE,353456789012345,080835,60# @@ -1544,6 +1545,8 @@ public class protocol_beehome { int freq=Integer.valueOf(freqstr); connection.send(genStringMessage("APTE",APTE(index,freq))); ICLogger.i("收到服务器指令:测量体温 "+freq+"分钟一次。"); + Config.setTemperatureTestCycle(runtime,freq); + CoreService.getInstance().setTempAlarm(); }else{ ICLogger.i("BP89 format error!"); } @@ -1721,7 +1724,7 @@ public class protocol_beehome { break; case BPTE: //设置测试体温 - handleBPTE(cmd,mConnection); + handleBPTE(cmd,mConnection,mRuntime); break; case BPTP: diff --git a/app/src/main/jni/jni_interface/com_ic_jni_ICJniUtils.h b/app/src/main/jni/jni_interface/com_ic_jni_ICJniUtils.h new file mode 100644 index 00000000..cbbde17a --- /dev/null +++ b/app/src/main/jni/jni_interface/com_ic_jni_ICJniUtils.h @@ -0,0 +1,165 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */ +#include +/* Header for class com_ic_jni_ICJniUtils */ + +#ifndef _Included_com_ic_jni_ICJniUtils +#define _Included_com_ic_jni_ICJniUtils +#ifdef __cplusplus +extern "C" { +#endif +/* + * Class: com_ic_jni_ICJniUtils + * Method: resetStepCount + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_resetStepCount + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: getStepCount + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_getStepCount + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: enablePedometer + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_enablePedometer + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: disablePedometer + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_disablePedometer + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: isPedometerEnabled + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_isPedometerEnabled + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: saveStepCount + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_saveStepCount + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: recoverStepCount + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_recoverStepCount + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: isPPGavailable + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_isPPGavailable + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: enablePPG + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_enablePPG + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: disablePPG + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_disablePPG + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: getPPG + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_getPPG + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: isPPGStarted + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_isPPGStarted + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: isWeared + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_isWeared + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: getHighBloodPressure + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_getHighBloodPressure + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: getLowBloodPressure + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_getLowBloodPressure + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: getSPO2 + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_getSPO2 + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: getTemperature + * Signature: ()D + */ +JNIEXPORT jdouble JNICALL Java_com_ic_jni_ICJniUtils_getTemperature + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: enable_ps + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_enable_1ps + (JNIEnv *, jclass); + +/* + * Class: com_ic_jni_ICJniUtils + * Method: get_ps_data + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_com_ic_jni_ICJniUtils_get_1ps_1data + (JNIEnv *, jclass); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/app/version_code.properties b/app/version_code.properties index 2de9463d..f17a46fa 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,2 +1,2 @@ -#Wed Jun 24 22:37:19 CST 2020 -VERSION_CODE=425 +#Sat Jun 27 17:08:46 CST 2020 +VERSION_CODE=429