From: TrillGates Date: Mon, 16 Aug 2021 08:23:23 +0000 (+0800) Subject: completed update stop count. X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=2c468daae0f349c9c6a65c22036bd663a7a642ff;p=icworkservice.git completed update stop count. --- diff --git a/app/IcL02WorkService/release/IcL02WorkService_V59_202107261412_release.apk b/app/IcL02WorkService/release/IcL02WorkService_V59_202107261412_release.apk deleted file mode 100644 index 80a55c3..0000000 Binary files a/app/IcL02WorkService/release/IcL02WorkService_V59_202107261412_release.apk and /dev/null differ diff --git a/app/IcL02WorkService/release/IcL02WorkService_V59_202107271557_release.apk b/app/IcL02WorkService/release/IcL02WorkService_V59_202107271557_release.apk new file mode 100644 index 0000000..bf545ca Binary files /dev/null and b/app/IcL02WorkService/release/IcL02WorkService_V59_202107271557_release.apk differ diff --git a/app/IcL02WorkService/release/output.json b/app/IcL02WorkService/release/output.json index 384d4f0..7ff646d 100644 --- a/app/IcL02WorkService/release/output.json +++ b/app/IcL02WorkService/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.1","enabled":true,"outputFile":"IcL02WorkService_V59_202107261412_release.apk","fullName":"IcL02WorkServiceRelease","baseName":"IcL02WorkService-release"},"path":"IcL02WorkService_V59_202107261412_release.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.1","enabled":true,"outputFile":"IcL02WorkService_V59_202107271557_release.apk","fullName":"IcL02WorkServiceRelease","baseName":"IcL02WorkService-release"},"path":"IcL02WorkService_V59_202107271557_release.apk","properties":{}}] \ No newline at end of file diff --git a/app/src/main/java/com/ic/work/SensorDataService.java b/app/src/main/java/com/ic/work/SensorDataService.java index b3025d6..f5f5a44 100644 --- a/app/src/main/java/com/ic/work/SensorDataService.java +++ b/app/src/main/java/com/ic/work/SensorDataService.java @@ -4,7 +4,6 @@ import android.app.Service; import android.content.ContentResolver; import android.content.ContentValues; import android.content.Intent; -import android.database.ContentObserver; import android.database.Cursor; import android.net.Uri; import android.os.Handler; @@ -24,19 +23,15 @@ import com.ic.work.event.TestTaskEvent; import com.ic.work.hardware.BloodInfoHelper; import com.ic.work.hardware.BloodSensorManager; import com.ic.work.hardware.TemperatureHelper; -import com.ic.work.utils.HardwareUtils; import com.ic.work.utils.ICLogger; import com.ic.work.utils.ICWorkConstants; import com.ic.work.utils.IcLog; import com.ic.work.utils.IcSystemProperty; -import com.ic.work.utils.PedUtil; -import com.ic.work.utils.SPUtils; import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.ThreadMode; -import java.math.BigDecimal; import java.util.concurrent.LinkedBlockingDeque; import static com.ic.work.utils.ICWorkConstants.Jx.ACTION_AEE_HEART_RATE; @@ -112,80 +107,8 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp handlerThread = new HandlerThread("ic:sensor:handler"); handlerThread.start(); handler = new Handler(handlerThread.getLooper()); - observerWatchFaceActiveState(); } - private void observerWatchFaceActiveState() { - ICLogger.d("observerWatchFaceActiveState..."); - getContentResolver().registerContentObserver( - Uri.parse(SETTINGS + ".watch_face_active_state"), - true, - contentObserver - ); - } - - private final ContentObserver contentObserver = new ContentObserver(null) { - @Override - public void onChange(boolean selfChange) { - handler.post(() -> { - handleWatchFaceActiveTask(); - }); - } - }; - - private void handleWatchFaceActiveTask() { - ICLogger.d("handleWatchFaceActiveTask..."); - //获取到状态 - Cursor cursor = getContentResolver().query(Uri.parse(SETTINGS), - new String[]{"s_value"}, "s_key=?", - new String[]{"watch_face_active_state"}, null); - if (cursor != null) { - try { - if (cursor.moveToNext()) { - String isActive = cursor.getString(0); - boolean isActiveValue = Boolean.parseBoolean(isActive); - //判断是否活跃 - ICLogger.d("isActiveValue == > " + isActiveValue); - handler.removeCallbacks(checkPetCountTask); - if (isActiveValue) { - handler.post(checkPetCountTask); - } - } - } catch (Exception e) { - e.printStackTrace(); - } finally { - cursor.close(); - } - } - } - - private final Runnable checkPetCountTask = new Runnable() { - @Override - public void run() { - int count = HardwareUtils.getNdkStepCountValue(); - //把count写到数据库里 - ContentValues contentValues = new ContentValues(); - contentValues.put("s_key", "sport_step_count"); - contentValues.put("s_value", count); - getContentResolver().insert( - Uri.parse(SensorDataService.SETTINGS), contentValues - ); - ICLogger.d("count == > " + count); - //更新卡路里 - BigDecimal bg = new BigDecimal(PedUtil.calcConsumeEnergy(SPUtils.getPedHeightSP(getBaseContext()), - SPUtils.getPedWighttSP(getBaseContext()), count)); - String value = String.valueOf(bg.setScale(2, BigDecimal.ROUND_HALF_UP).floatValue()); - //保存一份到数据库中 - ContentValues contentValuesCalorie = new ContentValues(); - contentValuesCalorie.put("s_key", "sport_calorie_value"); - contentValuesCalorie.put("s_value", value); - ICLogger.d("sport_calorie_value == > " + value); - getContentResolver().insert(Uri.parse(SensorDataService.SETTINGS), contentValuesCalorie); - //获取步数,然后入库 - handler.removeCallbacks(this); - handler.postDelayed(this, 1000 * 5); - } - }; /** * 此方法已经是子线程了,不可以再开子线程,包括结果的处理。 @@ -350,8 +273,6 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp public void onDestroy() { super.onDestroy(); mTaskList.clear(); - //不再监听表盘活跃状态的变化 - getContentResolver().unregisterContentObserver(contentObserver); powerManager = null; EventBus.getDefault().unregister(this); TemperatureHelper.getInstance().setTemperatureChangeListener(null); @@ -641,7 +562,6 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp } } - private void handleBloodResult(int high, int low, int heart, int oxygen) { HeartRate heartRate = new HeartRate(high, low, heart, oxygen); //遍历集合,通知一次内容 @@ -654,7 +574,6 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp sendHeartBroadcast(heart, oxygen); } - //0: 家长实时检测 1:周期上报 2:手表主动检测 //这两个是掌育给过来的测试模式 //0: 家长实时检测 1:周期上报 2:手表主动检测 @@ -685,7 +604,6 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp return super.onStartCommand(intent, flags, startId); } - private void dispatchHeartRateUpdate(int high, int low, int heart, int oxygen) { //处理一下数据 //对数据进行处理 @@ -715,7 +633,6 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp } } - private boolean hasUpdateAdjustBloodPressureValue = false; private int bloodHighDxValue = 0; private int bloodLowDxValue = 0; @@ -757,8 +674,6 @@ public class SensorDataService extends Service implements TemperatureHelper.Temp } bloodLowDxCursor.close(); } - - } /** diff --git a/app/src/main/java/com/ic/work/WorkService.java b/app/src/main/java/com/ic/work/WorkService.java index 3150e4a..e06c334 100644 --- a/app/src/main/java/com/ic/work/WorkService.java +++ b/app/src/main/java/com/ic/work/WorkService.java @@ -32,6 +32,7 @@ import com.ic.work.process.BloodProcess; import com.ic.work.process.PedProcess; import com.ic.work.process.TempProcess; import com.ic.work.process.WeatherProcess; +import com.ic.work.utils.ICLogger; import com.ic.work.utils.IcLog; import com.ic.work.utils.SPUtils; import com.ic.work.weather.WeatherDBRun; @@ -183,7 +184,7 @@ public class WorkService extends Service { @Subscribe(threadMode = ThreadMode.MAIN) public void onMessageEvent(PedCountEvent event) { if (pedProcess != null) { - pedProcess.sendPedCount(event.getPedCount(),event.getCalorie()); + pedProcess.sendPedCount(event.getPedCount(), event.getCalorie()); } if (akProcess != null) { @@ -260,18 +261,19 @@ public class WorkService extends Service { sendBroadcast(pedIntent); } - private BroadcastReceiver mIntentReceiver = new BroadcastReceiver() { + private final BroadcastReceiver mIntentReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { if (intent != null) { - String acyion = intent.getAction(); - if (TextUtils.isEmpty(acyion)) { + String action = intent.getAction(); + ICLogger.d("action == > " + action); + if (TextUtils.isEmpty(action)) { return; } - switch (acyion) { + switch (action) { case GET_PED_ACTION: //ThreadPoolManager.getInstance().execute(new PedRunnable(mApp.getApplicationContext(), mApp.getRepository())); - IcLog.d(TAG,"GET_PED_ACTION "); + IcLog.d(TAG, "GET_PED_ACTION "); new Thread(new PedRunnable(mApp.getApplicationContext(), mApp.getRepository())).start(); break; case Intent.ACTION_TIMEZONE_CHANGED: diff --git a/app/src/main/java/com/ic/work/db/entity/PedEntity.java b/app/src/main/java/com/ic/work/db/entity/PedEntity.java index fefc665..0f8c180 100644 --- a/app/src/main/java/com/ic/work/db/entity/PedEntity.java +++ b/app/src/main/java/com/ic/work/db/entity/PedEntity.java @@ -55,4 +55,15 @@ public class PedEntity { public void setPedDate(OffsetDateTime pedDate) { this.pedDate = pedDate; } + + @Override + public String toString() { + return "PedEntity{" + + "id=" + id + + ", pedNumber=" + pedNumber + + ", pedDistance='" + pedDistance + '\'' + + ", pedCalorie='" + pedCalorie + '\'' + + ", pedDate=" + pedDate + + '}'; + } } diff --git a/app/src/main/java/com/ic/work/hardware/PedBaseRunnable.java b/app/src/main/java/com/ic/work/hardware/PedBaseRunnable.java index b626148..4ab6ba4 100644 --- a/app/src/main/java/com/ic/work/hardware/PedBaseRunnable.java +++ b/app/src/main/java/com/ic/work/hardware/PedBaseRunnable.java @@ -56,6 +56,7 @@ public class PedBaseRunnable { } protected void updateDBPedEntity(PedEntity entity) { + ICLogger.d("updateDBPedEntity..." + entity); int number = entity.getPedNumber(); //更新到全局公用数据中去 ContentValues contentValues = new ContentValues(); @@ -87,7 +88,7 @@ public class PedBaseRunnable { if (isCheckPedInjection()) { return; } - + ICLogger.d("updateStepCountDB==> " + ped); int size = queryDBPedCount(); if (size == 0) { //如果数据库中无记录,把当前数据插入到数据库中 @@ -99,12 +100,12 @@ public class PedBaseRunnable { //3.如果数据中有当天的数据,并更新数据 if (ped > 0 && ped > todayPed.get(0).getPedNumber()) { todayPed.get(0).setPedNumber(ped); - updateDBPedEntity(todayPed.get(0)); } } else { //直接 插入今天的数据 insertDBPedEntity(ped, dateTime, size); } + updateDBPedEntity(todayPed.get(0)); } } diff --git a/app/src/main/java/com/ic/work/process/PedProcess.java b/app/src/main/java/com/ic/work/process/PedProcess.java index 9748a6c..dca3123 100644 --- a/app/src/main/java/com/ic/work/process/PedProcess.java +++ b/app/src/main/java/com/ic/work/process/PedProcess.java @@ -29,7 +29,7 @@ public class PedProcess { return pedBinder; } - private IPedRemoteService.Stub pedBinder = new IPedRemoteService.Stub() { + private final IPedRemoteService.Stub pedBinder = new IPedRemoteService.Stub() { @Override public void registerCallback(IPedAidlInterface cb) { if (cb != null) {