From: snickersun Date: Mon, 21 Dec 2020 13:38:16 +0000 (+0800) Subject: release V58 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=eb0dcbf9d27b3ad7abdf4003cbc467a7606266a3;p=factoryMode.git release V58 修复自动测试 心率 体温 佩戴都不能进行下一个任务的问题 --- diff --git a/app/release/FactoryMode_V57_202012211803_release.apk b/app/release/FactoryMode_V58_202012212129_release.apk similarity index 84% rename from app/release/FactoryMode_V57_202012211803_release.apk rename to app/release/FactoryMode_V58_202012212129_release.apk index 24f3925..5cc79b3 100644 Binary files a/app/release/FactoryMode_V57_202012211803_release.apk and b/app/release/FactoryMode_V58_202012212129_release.apk differ diff --git a/app/release/output.json b/app/release/output.json index 3867591..e8b21a2 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":57,"versionName":"202012211803","enabled":true,"outputFile":"FactoryMode_V57_202012211803_release.apk","fullName":"release","baseName":"release"},"path":"FactoryMode_V57_202012211803_release.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":58,"versionName":"202012212129","enabled":true,"outputFile":"FactoryMode_V58_202012212129_release.apk","fullName":"release","baseName":"release"},"path":"FactoryMode_V58_202012212129_release.apk","properties":{}}] \ No newline at end of file diff --git a/app/src/main/java/mobile/miki/AntiMonitorActivity.java b/app/src/main/java/mobile/miki/AntiMonitorActivity.java index c87984a..83dc1df 100644 --- a/app/src/main/java/mobile/miki/AntiMonitorActivity.java +++ b/app/src/main/java/mobile/miki/AntiMonitorActivity.java @@ -1,174 +1,178 @@ -package mobile.miki; - -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.Handler; -import android.os.Message; -import android.os.PowerManager; - - - -import android.content.Intent; -import android.hardware.Sensor; -import android.hardware.SensorEvent; -import android.hardware.SensorEventListener; -import android.hardware.SensorManager; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.preference.PreferenceManager; -import android.util.Log; -import android.view.View; -import android.widget.TextView; - -import com.ic.jni.ICJniUtils; - -import java.io.DataInputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.util.Timer; -import java.util.TimerTask; - -import mobile.miki.mainui.ButtonViewTwo; -import mobile.miki.mainui.TestMainActivity; -import mobile.miki.util.Config; -import mobile.miki.util.Logger; -import static java.lang.Thread.sleep; - -public class AntiMonitorActivity extends BaseActivity implements View.OnClickListener, SensorEventListener { - - private ButtonViewTwo buttonView; - boolean running; - private TextView tv_isweared; - private TextView tv_ppg; - private TextView tv_isweared_value; - private TextView tv_ppg_value; - private SensorManager mSensorManager=null; - private Sensor mAntiManager=null; - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.heartrate_layout); - initView(); - - mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE); - mAntiManager = mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY); - boolean ret = mSensorManager.registerListener(this, mAntiManager, SensorManager.SENSOR_DELAY_UI); - Log.i( "dxc","AntiMonitor ret :: " + ret); - - - } - - Handler mhandler=new Handler(new Handler.Callback() { - @Override - public boolean handleMessage(Message message) { - - switch(message.what) - { - case 1: { - Bundle bdl = message.getData(); - - int anti = bdl.getInt("AntiEvent"); - tv_isweared_value.setText(" " + anti); - - } - break; - - } - - return false; - } - }); - @Override - protected void onDestroy() { - super.onDestroy(); - Log.i( "dxc","Anti Monitor onDestroy"); - mSensorManager.unregisterListener(this); - - } - - @Override - protected void onPause() { - super.onPause(); - Log.i( "dxc","Anti Monitor onPause"); - - } - - private void initView() { - buttonView = (ButtonViewTwo) findViewById(R.id.btn_set); - buttonView.btn_left.setOnClickListener(this); - buttonView.btn_right.setOnClickListener(this); - buttonView.setSuccessColor(); - buttonView.btn_left.setClickable(true); - - tv_isweared_value=(TextView)findViewById(R.id.tv_weared_value); - tv_isweared_value.setText(""); - - tv_ppg_value=(TextView)findViewById(R.id.tv_ppg_value); - tv_ppg_value.setVisibility(View.GONE); - - - tv_isweared=(TextView)findViewById(R.id.tv_isweared); - tv_isweared.setText("AntiCheck:"); - tv_ppg=(TextView)findViewById(R.id.tv_ppg); - tv_ppg.setVisibility(View.GONE); - - - } - - @Override - public void onClick(View view) { - Intent intent = Config.getNextTestIntent(this,this.getClass());//new Intent(this, SimDetectActivity.class); - intent.putExtra("running", true); - Intent intent1 = new Intent(this, TestMainActivity.class); - // TestResult testResult = (TestResult) getApplicationContext(); - switch (view.getId()) { - - case R.id.btn_two_left: - if (!running) { - startActivity(intent1); - } else { - startActivity(intent); - } - PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("anti", "true").commit(); - finish(); - break; - case R.id.btn_two_right: - if (!running) { - startActivity(intent1); - } else { - startActivity(intent); - } - PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("anti", "false").commit(); - finish(); - break; - } - } - - @Override - public void onSensorChanged(SensorEvent sensorEvent) { - float values[]=sensorEvent.values; - int length = values.length; - if (length>0) { - int current_anti_status = (int) sensorEvent.values[0]; - Log.i("AntiMonitor", "近距离 " + current_anti_status); - Message msg = new Message(); - Bundle bdl = new Bundle(); - msg.what = 1; - bdl.putInt("AntiEvent",current_anti_status ); - msg.setData(bdl); - mhandler.sendMessage(msg); - } - } - - @Override - public void onAccuracyChanged(Sensor sensor, int i) { - Log.i("dxc","onAccuracyChanged() is called "+sensor.getName()+" accuracy="+i); - } -} - +package mobile.miki; + +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.Handler; +import android.os.Message; +import android.os.PowerManager; + + + +import android.content.Intent; +import android.hardware.Sensor; +import android.hardware.SensorEvent; +import android.hardware.SensorEventListener; +import android.hardware.SensorManager; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.preference.PreferenceManager; +import android.util.Log; +import android.view.View; +import android.widget.TextView; + +import com.ic.jni.ICJniUtils; + +import java.io.DataInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.util.Timer; +import java.util.TimerTask; + +import mobile.miki.mainui.ButtonViewTwo; +import mobile.miki.mainui.TestMainActivity; +import mobile.miki.util.Config; +import mobile.miki.util.Logger; +import static java.lang.Thread.sleep; + +public class AntiMonitorActivity extends BaseActivity implements View.OnClickListener, SensorEventListener { + + private ButtonViewTwo buttonView; + boolean running; + private TextView tv_isweared; + private TextView tv_ppg; + private TextView tv_isweared_value; + private TextView tv_ppg_value; + private SensorManager mSensorManager=null; + private Sensor mAntiManager=null; + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.heartrate_layout); + initView(); + Intent intent = getIntent(); + running = false; + if (intent != null) { + running = intent.getBooleanExtra("running", false); + } + mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE); + mAntiManager = mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY); + boolean ret = mSensorManager.registerListener(this, mAntiManager, SensorManager.SENSOR_DELAY_UI); + Log.i( "dxc","AntiMonitor ret :: " + ret); + + + } + + Handler mhandler=new Handler(new Handler.Callback() { + @Override + public boolean handleMessage(Message message) { + + switch(message.what) + { + case 1: { + Bundle bdl = message.getData(); + + int anti = bdl.getInt("AntiEvent"); + tv_isweared_value.setText(" " + anti); + + } + break; + + } + + return false; + } + }); + @Override + protected void onDestroy() { + super.onDestroy(); + Log.i( "dxc","Anti Monitor onDestroy"); + mSensorManager.unregisterListener(this); + + } + + @Override + protected void onPause() { + super.onPause(); + Log.i( "dxc","Anti Monitor onPause"); + + } + + private void initView() { + buttonView = (ButtonViewTwo) findViewById(R.id.btn_set); + buttonView.btn_left.setOnClickListener(this); + buttonView.btn_right.setOnClickListener(this); + buttonView.setSuccessColor(); + buttonView.btn_left.setClickable(true); + + tv_isweared_value=(TextView)findViewById(R.id.tv_weared_value); + tv_isweared_value.setText(""); + + tv_ppg_value=(TextView)findViewById(R.id.tv_ppg_value); + tv_ppg_value.setVisibility(View.GONE); + + + tv_isweared=(TextView)findViewById(R.id.tv_isweared); + tv_isweared.setText("AntiCheck:"); + tv_ppg=(TextView)findViewById(R.id.tv_ppg); + tv_ppg.setVisibility(View.GONE); + + + } + + @Override + public void onClick(View view) { + Intent intent = Config.getNextTestIntent(this,this.getClass());//new Intent(this, SimDetectActivity.class); + intent.putExtra("running", true); + Intent intent1 = new Intent(this, TestMainActivity.class); + // TestResult testResult = (TestResult) getApplicationContext(); + switch (view.getId()) { + + case R.id.btn_two_left: + if (!running) { + startActivity(intent1); + } else { + startActivity(intent); + } + PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("anti", "true").commit(); + finish(); + break; + case R.id.btn_two_right: + if (!running) { + startActivity(intent1); + } else { + startActivity(intent); + } + PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("anti", "false").commit(); + finish(); + break; + } + } + + @Override + public void onSensorChanged(SensorEvent sensorEvent) { + float values[]=sensorEvent.values; + int length = values.length; + if (length>0) { + int current_anti_status = (int) sensorEvent.values[0]; + Log.i("AntiMonitor", "近距离 " + current_anti_status); + Message msg = new Message(); + Bundle bdl = new Bundle(); + msg.what = 1; + bdl.putInt("AntiEvent",current_anti_status ); + msg.setData(bdl); + mhandler.sendMessage(msg); + } + } + + @Override + public void onAccuracyChanged(Sensor sensor, int i) { + Log.i("dxc","onAccuracyChanged() is called "+sensor.getName()+" accuracy="+i); + } +} + diff --git a/app/src/main/java/mobile/miki/HeartRate.java b/app/src/main/java/mobile/miki/HeartRate.java index 925fbf1..5aef6ff 100644 --- a/app/src/main/java/mobile/miki/HeartRate.java +++ b/app/src/main/java/mobile/miki/HeartRate.java @@ -1,210 +1,216 @@ -package mobile.miki; - -import android.content.Intent; -import android.hardware.Sensor; -import android.hardware.SensorEvent; -import android.hardware.SensorEventListener; -import android.hardware.SensorManager; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.preference.PreferenceManager; -import android.util.Log; -import android.view.View; -import android.widget.TextView; - -import com.ic.jni.ICJniUtils; - -import java.io.DataInputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.util.Timer; -import java.util.TimerTask; - -import mobile.miki.mainui.ButtonViewTwo; -import mobile.miki.mainui.TestMainActivity; -import mobile.miki.util.Config; -import mobile.miki.util.Logger; - -public class HeartRate extends BaseActivity implements View.OnClickListener, SensorEventListener { - - private ButtonViewTwo buttonView; - boolean running; - public static final int TYPE_HEART_RATE = 21; - Timer mTimer=null; - - private TextView tv_isweared; - private TextView tv_ppg; - private int hrsType; - private SensorManager mSensorManager=null; - private Sensor mHeartRate=null; - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.heartrate_layout); - initView(); - hrsType = ICJniUtils.isPPGavailable(); - Log.i("dxc", "heartrate available : " + hrsType); - if (hrsType == ICJniUtils.PPG_EGC_SensorType.PPG_EGC_TYPE_IC66.ordinal()) { - - mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE); - mHeartRate = mSensorManager.getDefaultSensor(TYPE_HEART_RATE); - boolean ret = mSensorManager.registerListener(this, mHeartRate, SensorManager.SENSOR_DELAY_UI); - Log.i( "dxc","Heart Rate PPG_EGC_TYPE_IC66 opened ret :: " + ret); - - } else { - mTimer = new Timer(); - TimerTask HRTimerTask = new TimerTask() { - @Override - public void run() { - mhandler.sendEmptyMessage(0); - } - }; - mTimer.schedule(HRTimerTask, 0, 1000L); - if(ICJniUtils.isPPGavailable()>0) { - // if (ICJniUtils.isPPGStarted()==0){ - ICJniUtils.enablePPG(); - // } - }else{ - tv_isweared.setText(" "+HeartRate.this.getResources().getString(R.string.no_heartrate)); - tv_ppg.setText(""); - } - } - } - - Handler mhandler=new Handler(new Handler.Callback() { - @Override - public boolean handleMessage(Message message) { - - switch(message.what) - { - case 0: { - int ppg = ICJniUtils.getPPG(); - int weared = ICJniUtils.isWeared(); - - String wearedstr = String.valueOf(weared); - String ppgstr = String.valueOf(ppg); - - tv_isweared.setText(" " + wearedstr); - tv_ppg.setText(" " + ppgstr); - - Log.d("dxc", "Weared:" + wearedstr + " PPG:" + ppgstr); - } - break; - case 1: { - Bundle bdl = message.getData(); - String weared = bdl.getString("isweared"); - String ppg = bdl.getString("PPG"); - if (!weared.trim().isEmpty() && !ppg.trim().isEmpty()) { - tv_isweared.setText(" " + weared); - tv_ppg.setText(" " + ppg); - } else { - tv_isweared.setText(" " + HeartRate.this.getResources().getString(R.string.no_heartrate)); - tv_ppg.setText(""); - } - } - break; - - } - - return false; - } - }); - @Override - protected void onDestroy() { - super.onDestroy(); - if ( hrsType == ICJniUtils.PPG_EGC_SensorType.PPG_EGC_TYPE_IC66.ordinal()) { - mSensorManager.unregisterListener(this); - Log.i( "dxc","Heart Rate PPG_EGC_TYPE_IC66 closed"); - }else if(hrsType>0) { - Log.i( "dxc","Heart Rate closed"); - - - if(mTimer!=null) { - mTimer.cancel(); - mTimer=null; - } - ICJniUtils.disablePPG(); - } - } - - @Override - protected void onPause() { - super.onPause(); - Log.i( "dxc","Heart Rate onPause"); - - } - - private void initView() { - buttonView = (ButtonViewTwo) findViewById(R.id.btn_set); - buttonView.btn_left.setOnClickListener(this); - buttonView.btn_right.setOnClickListener(this); - buttonView.setSuccessColor(); - buttonView.btn_left.setClickable(true); - - tv_isweared=(TextView)findViewById(R.id.tv_weared_value); - tv_ppg=(TextView)findViewById(R.id.tv_ppg_value); - - } - - @Override - public void onClick(View view) { - Intent intent = Config.getNextTestIntent(this,this.getClass());//new Intent(this, SimDetectActivity.class); - intent.putExtra("running", true); - Intent intent1 = new Intent(this, TestMainActivity.class); - // TestResult testResult = (TestResult) getApplicationContext(); - switch (view.getId()) { - - case R.id.btn_two_left: - if (!running) { - startActivity(intent1); - } else { - startActivity(intent); - } - PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("heartrate", "true").commit(); - finish(); - break; - case R.id.btn_two_right: - if (!running) { - startActivity(intent1); - } else { - startActivity(intent); - } - PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("heartrate", "false").commit(); - finish(); - break; - } - } - - @Override - public void onSensorChanged(SensorEvent sensorEvent) { - float values[]=sensorEvent.values; - int length = values.length; - Log.i( "dxc","onSensorChanged() is called "+length - +" PPG = "+values[0] - +", BPH = "+values[1] - +", BPL = "+values[2] - +", spo2 = "+values[3] - +" , Weared = "+values[4] - ); - - Message msg=new Message(); - Bundle bdl=new Bundle(); - msg.what=1; - bdl.putString("isweared", ((int)values[4] == 2)?"1":"0"); - bdl.putString("PPG",String.valueOf(values[0])); - msg.setData(bdl); - mhandler.sendMessage(msg); - // int PPG = (int)values[0];//调用底层函数保证状态更新。 - // boolean isWared = ((int)values[4] == 2); - // tv_isweared.setText(isWared?1:0); - // tv_ppg.setText(PPG); - /*[0]---心率;[1]---血压高压;[2]---血压低压;[3]---血氧;[4]---佩戴检测(1--脱手,2--上手);*/ - } - - @Override - public void onAccuracyChanged(Sensor sensor, int i) { - Log.i("dxc","onAccuracyChanged() is called "+sensor.getName()+" accuracy="+i); - } -} +package mobile.miki; + +import android.content.Intent; +import android.hardware.Sensor; +import android.hardware.SensorEvent; +import android.hardware.SensorEventListener; +import android.hardware.SensorManager; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.preference.PreferenceManager; +import android.util.Log; +import android.view.View; +import android.widget.TextView; + +import com.ic.jni.ICJniUtils; + +import java.io.DataInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.util.Timer; +import java.util.TimerTask; + +import mobile.miki.mainui.ButtonViewTwo; +import mobile.miki.mainui.TestMainActivity; +import mobile.miki.util.Config; +import mobile.miki.util.Logger; + +public class HeartRate extends BaseActivity implements View.OnClickListener, SensorEventListener { + + private ButtonViewTwo buttonView; + boolean running; + public static final int TYPE_HEART_RATE = 21; + Timer mTimer=null; + + private TextView tv_isweared; + private TextView tv_ppg; + private int hrsType; + private SensorManager mSensorManager=null; + private Sensor mHeartRate=null; + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.heartrate_layout); + initView(); + + Intent intent = getIntent(); + running = false; + if (intent != null) { + running = intent.getBooleanExtra("running", false); + } + hrsType = ICJniUtils.isPPGavailable(); + Log.i("dxc", "heartrate available : " + hrsType); + if (hrsType == ICJniUtils.PPG_EGC_SensorType.PPG_EGC_TYPE_IC66.ordinal()) { + + mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE); + mHeartRate = mSensorManager.getDefaultSensor(TYPE_HEART_RATE); + boolean ret = mSensorManager.registerListener(this, mHeartRate, SensorManager.SENSOR_DELAY_UI); + Log.i( "dxc","Heart Rate PPG_EGC_TYPE_IC66 opened ret :: " + ret); + + } else { + mTimer = new Timer(); + TimerTask HRTimerTask = new TimerTask() { + @Override + public void run() { + mhandler.sendEmptyMessage(0); + } + }; + mTimer.schedule(HRTimerTask, 0, 1000L); + if(ICJniUtils.isPPGavailable()>0) { + // if (ICJniUtils.isPPGStarted()==0){ + ICJniUtils.enablePPG(); + // } + }else{ + tv_isweared.setText(" "+HeartRate.this.getResources().getString(R.string.no_heartrate)); + tv_ppg.setText(""); + } + } + } + + Handler mhandler=new Handler(new Handler.Callback() { + @Override + public boolean handleMessage(Message message) { + + switch(message.what) + { + case 0: { + int ppg = ICJniUtils.getPPG(); + int weared = ICJniUtils.isWeared(); + + String wearedstr = String.valueOf(weared); + String ppgstr = String.valueOf(ppg); + + tv_isweared.setText(" " + wearedstr); + tv_ppg.setText(" " + ppgstr); + + Log.d("dxc", "Weared:" + wearedstr + " PPG:" + ppgstr); + } + break; + case 1: { + Bundle bdl = message.getData(); + String weared = bdl.getString("isweared"); + String ppg = bdl.getString("PPG"); + if (!weared.trim().isEmpty() && !ppg.trim().isEmpty()) { + tv_isweared.setText(" " + weared); + tv_ppg.setText(" " + ppg); + } else { + tv_isweared.setText(" " + HeartRate.this.getResources().getString(R.string.no_heartrate)); + tv_ppg.setText(""); + } + } + break; + + } + + return false; + } + }); + @Override + protected void onDestroy() { + super.onDestroy(); + if ( hrsType == ICJniUtils.PPG_EGC_SensorType.PPG_EGC_TYPE_IC66.ordinal()) { + mSensorManager.unregisterListener(this); + Log.i( "dxc","Heart Rate PPG_EGC_TYPE_IC66 closed"); + }else if(hrsType>0) { + Log.i( "dxc","Heart Rate closed"); + + + if(mTimer!=null) { + mTimer.cancel(); + mTimer=null; + } + ICJniUtils.disablePPG(); + } + } + + @Override + protected void onPause() { + super.onPause(); + Log.i( "dxc","Heart Rate onPause"); + + } + + private void initView() { + buttonView = (ButtonViewTwo) findViewById(R.id.btn_set); + buttonView.btn_left.setOnClickListener(this); + buttonView.btn_right.setOnClickListener(this); + buttonView.setSuccessColor(); + buttonView.btn_left.setClickable(true); + + tv_isweared=(TextView)findViewById(R.id.tv_weared_value); + tv_ppg=(TextView)findViewById(R.id.tv_ppg_value); + + } + + @Override + public void onClick(View view) { + Intent intent = Config.getNextTestIntent(this,this.getClass());//new Intent(this, SimDetectActivity.class); + intent.putExtra("running", true); + Intent intent1 = new Intent(this, TestMainActivity.class); + // TestResult testResult = (TestResult) getApplicationContext(); + switch (view.getId()) { + + case R.id.btn_two_left: + if (!running) { + startActivity(intent1); + } else { + startActivity(intent); + } + PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("heartrate", "true").commit(); + finish(); + break; + case R.id.btn_two_right: + if (!running) { + startActivity(intent1); + } else { + startActivity(intent); + } + PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("heartrate", "false").commit(); + finish(); + break; + } + } + + @Override + public void onSensorChanged(SensorEvent sensorEvent) { + float values[]=sensorEvent.values; + int length = values.length; + Log.i( "dxc","onSensorChanged() is called "+length + +" PPG = "+values[0] + +", BPH = "+values[1] + +", BPL = "+values[2] + +", spo2 = "+values[3] + +" , Weared = "+values[4] + ); + + Message msg=new Message(); + Bundle bdl=new Bundle(); + msg.what=1; + bdl.putString("isweared", ((int)values[4] == 2)?"1":"0"); + bdl.putString("PPG",String.valueOf(values[0])); + msg.setData(bdl); + mhandler.sendMessage(msg); + // int PPG = (int)values[0];//调用底层函数保证状态更新。 + // boolean isWared = ((int)values[4] == 2); + // tv_isweared.setText(isWared?1:0); + // tv_ppg.setText(PPG); + /*[0]---心率;[1]---血压高压;[2]---血压低压;[3]---血氧;[4]---佩戴检测(1--脱手,2--上手);*/ + } + + @Override + public void onAccuracyChanged(Sensor sensor, int i) { + Log.i("dxc","onAccuracyChanged() is called "+sensor.getName()+" accuracy="+i); + } +} diff --git a/app/src/main/java/mobile/miki/TemperatureActivity.java b/app/src/main/java/mobile/miki/TemperatureActivity.java index 1129025..7f879d8 100644 --- a/app/src/main/java/mobile/miki/TemperatureActivity.java +++ b/app/src/main/java/mobile/miki/TemperatureActivity.java @@ -1,174 +1,179 @@ -package mobile.miki; - -import android.content.ComponentName; -import android.content.Intent; -import android.os.Bundle; -import android.os.Handler; -import android.os.HandlerThread; -import android.os.Looper; -import android.os.Message; -import android.os.UserHandle; -import android.preference.PreferenceManager; -import android.util.Log; -import android.view.View; -import android.widget.TextView; - -import com.ic.jni.ICJniUtils; - -import java.lang.ref.WeakReference; -import java.util.Timer; -import java.util.TimerTask; - -import mobile.miki.mainui.ButtonViewTwo; -import mobile.miki.mainui.TestMainActivity; -import mobile.miki.util.Config; -import mobile.miki.util.Logger; - -public class TemperatureActivity extends BaseActivity implements View.OnClickListener { - - private ButtonViewTwo buttonView; - boolean running; - - Timer mTimer = null; - - private TextView temperatureTv; - private TextView temperatureOutTv; - private TempHandler tempHandler; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.temperature_layout); - //初始化控件 - initView(); - //判断是否支持温度测试 - int temper = ICJniUtils.isTemperatureDevAvailable(); - Log.i("dxc", "Temperature available : " + temper); - if (temper > 0) { - tempHandler = new TempHandler(this); - //打开温度测试 - ICJniUtils.enableTemperature(); - mTimer = new Timer(); - TimerTask HRTimerTask = new TimerTask() { - @Override - public void run() { - //获取温度内容 - getTemperatureInfo(); - } - }; - mTimer.schedule(HRTimerTask, 500, 1000L); - } else { - this.temperatureTv.setText(this.getResources().getString(R.string.no_temperature)); - Log.i("dxc", "No temperature!"); - } - } - - - private void getTemperatureInfo() { - double temp = ICJniUtils.getTemperature(); - double tempOut = ICJniUtils.getTemperatureOrigin(); - Message message = tempHandler.obtainMessage(); - Bundle bundle = new Bundle(); - bundle.putDouble("temp", temp); - bundle.putDouble("tempOut", tempOut); - message.obj = bundle; - tempHandler.sendMessage(message); - } - - static class TempHandler extends Handler { - WeakReference activityWeakReference = null; - - TempHandler(TemperatureActivity temperatureActivity) { - activityWeakReference = new WeakReference<>(temperatureActivity); - } - - @Override - public void handleMessage(Message msg) { - TemperatureActivity temperatureActivity = activityWeakReference.get(); - if (temperatureActivity == null) { - return; - } - Bundle bundle = (Bundle) msg.obj; - String tempStr = String.format(temperatureActivity.getString(R.string.factory_temp_format_text), - bundle.getDouble("temp")); - String tempStrOut = String.format(temperatureActivity.getString(R.string.factory_temp_format_text), - bundle.getDouble("tempOut")); - temperatureActivity.temperatureTv.setText(tempStr); - temperatureActivity.temperatureOutTv.setText(tempStrOut); - Logger.d("Temperature:" + tempStr + " TemperatureOut:" + tempStrOut); - } - } - - @Override - protected void onDestroy() { - super.onDestroy(); - // ICJniUtils.disablePPG(); - - int temper = ICJniUtils.isTemperatureDevAvailable(); - Log.i("dxc", "Temperature available : " + temper); - - if (temper > 0) { - if (mTimer != null) { - - mTimer.cancel(); - mTimer = null; - } - Log.i("dxc", "Temperature onPause"); - ICJniUtils.disableTemperature(); - } else { - Log.i("dxc", "No temperature!"); - } - - } - - @Override - protected void onPause() { - super.onPause(); - Log.i("dxc", "Temperature onPause"); - } - - @Override - protected void onResume() { - super.onResume(); - } - - private void initView() { - buttonView = (ButtonViewTwo) findViewById(R.id.btn_set); - buttonView.btn_left.setOnClickListener(this); - buttonView.btn_right.setOnClickListener(this); - buttonView.setSuccessColor(); - buttonView.btn_left.setClickable(true); - temperatureTv = (TextView) findViewById(R.id.tv_temperature_value); - temperatureOutTv = (TextView) findViewById(R.id.tv_temperature_value_out); - - } - - @Override - public void onClick(View view) { - Intent intent = Config.getNextTestIntent(this, this.getClass());//new Intent(this, SimDetectActivity.class); - intent.putExtra("running", true); - Intent intent1 = new Intent(this, TestMainActivity.class); - // TestResult testResult = (TestResult) getApplicationContext(); - switch (view.getId()) { - - case R.id.btn_two_left: - if (!running) { - startActivity(intent1); - } else { - startActivity(intent); - } - PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("temperature", "true").commit(); - finish(); - break; - case R.id.btn_two_right: - if (!running) { - startActivity(intent1); - } else { - startActivity(intent); - } - PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("temperature", "false").commit(); - finish(); - break; - } - } -} +package mobile.miki; + +import android.content.ComponentName; +import android.content.Intent; +import android.os.Bundle; +import android.os.Handler; +import android.os.HandlerThread; +import android.os.Looper; +import android.os.Message; +import android.os.UserHandle; +import android.preference.PreferenceManager; +import android.util.Log; +import android.view.View; +import android.widget.TextView; + +import com.ic.jni.ICJniUtils; + +import java.lang.ref.WeakReference; +import java.util.Timer; +import java.util.TimerTask; + +import mobile.miki.mainui.ButtonViewTwo; +import mobile.miki.mainui.TestMainActivity; +import mobile.miki.util.Config; +import mobile.miki.util.Logger; + +public class TemperatureActivity extends BaseActivity implements View.OnClickListener { + + private ButtonViewTwo buttonView; + boolean running; + + Timer mTimer = null; + + private TextView temperatureTv; + private TextView temperatureOutTv; + private TempHandler tempHandler; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.temperature_layout); + //初始化控件 + initView(); + Intent intent = getIntent(); + running = false; + if (intent != null) { + running = intent.getBooleanExtra("running", false); + } + //判断是否支持温度测试 + int temper = ICJniUtils.isTemperatureDevAvailable(); + Log.i("dxc", "Temperature available : " + temper); + if (temper > 0) { + tempHandler = new TempHandler(this); + //打开温度测试 + ICJniUtils.enableTemperature(); + mTimer = new Timer(); + TimerTask HRTimerTask = new TimerTask() { + @Override + public void run() { + //获取温度内容 + getTemperatureInfo(); + } + }; + mTimer.schedule(HRTimerTask, 500, 1000L); + } else { + this.temperatureTv.setText(this.getResources().getString(R.string.no_temperature)); + Log.i("dxc", "No temperature!"); + } + } + + + private void getTemperatureInfo() { + double temp = ICJniUtils.getTemperature(); + double tempOut = ICJniUtils.getTemperatureOrigin(); + Message message = tempHandler.obtainMessage(); + Bundle bundle = new Bundle(); + bundle.putDouble("temp", temp); + bundle.putDouble("tempOut", tempOut); + message.obj = bundle; + tempHandler.sendMessage(message); + } + + static class TempHandler extends Handler { + WeakReference activityWeakReference = null; + + TempHandler(TemperatureActivity temperatureActivity) { + activityWeakReference = new WeakReference<>(temperatureActivity); + } + + @Override + public void handleMessage(Message msg) { + TemperatureActivity temperatureActivity = activityWeakReference.get(); + if (temperatureActivity == null) { + return; + } + Bundle bundle = (Bundle) msg.obj; + String tempStr = String.format(temperatureActivity.getString(R.string.factory_temp_format_text), + bundle.getDouble("temp")); + String tempStrOut = String.format(temperatureActivity.getString(R.string.factory_temp_format_text), + bundle.getDouble("tempOut")); + temperatureActivity.temperatureTv.setText(tempStr); + temperatureActivity.temperatureOutTv.setText(tempStrOut); + Logger.d("Temperature:" + tempStr + " TemperatureOut:" + tempStrOut); + } + } + + @Override + protected void onDestroy() { + super.onDestroy(); + // ICJniUtils.disablePPG(); + + int temper = ICJniUtils.isTemperatureDevAvailable(); + Log.i("dxc", "Temperature available : " + temper); + + if (temper > 0) { + if (mTimer != null) { + + mTimer.cancel(); + mTimer = null; + } + Log.i("dxc", "Temperature onPause"); + ICJniUtils.disableTemperature(); + } else { + Log.i("dxc", "No temperature!"); + } + + } + + @Override + protected void onPause() { + super.onPause(); + Log.i("dxc", "Temperature onPause"); + } + + @Override + protected void onResume() { + super.onResume(); + } + + private void initView() { + buttonView = (ButtonViewTwo) findViewById(R.id.btn_set); + buttonView.btn_left.setOnClickListener(this); + buttonView.btn_right.setOnClickListener(this); + buttonView.setSuccessColor(); + buttonView.btn_left.setClickable(true); + temperatureTv = (TextView) findViewById(R.id.tv_temperature_value); + temperatureOutTv = (TextView) findViewById(R.id.tv_temperature_value_out); + + } + + @Override + public void onClick(View view) { + Intent intent = Config.getNextTestIntent(this, this.getClass());//new Intent(this, SimDetectActivity.class); + intent.putExtra("running", true); + Intent intent1 = new Intent(this, TestMainActivity.class); + // TestResult testResult = (TestResult) getApplicationContext(); + switch (view.getId()) { + + case R.id.btn_two_left: + if (!running) { + startActivity(intent1); + } else { + startActivity(intent); + } + PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("temperature", "true").commit(); + finish(); + break; + case R.id.btn_two_right: + if (!running) { + startActivity(intent1); + } else { + startActivity(intent); + } + PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("temperature", "false").commit(); + finish(); + break; + } + } +} diff --git a/app/version_code.properties b/app/version_code.properties index 2644fbc..6bf5f99 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,2 +1,2 @@ -#Mon Dec 21 18:03:48 CST 2020 -VERSION_CODE=57 +#Mon Dec 21 21:29:58 CST 2020 +VERSION_CODE=58