completed update stop count.
authorTrillGates <williamtrillgates@gmail.com>
Mon, 16 Aug 2021 08:23:23 +0000 (16:23 +0800)
committerTrillGates <williamtrillgates@gmail.com>
Mon, 16 Aug 2021 08:23:23 +0000 (16:23 +0800)
app/IcL02WorkService/release/IcL02WorkService_V59_202107261412_release.apk [deleted file]
app/IcL02WorkService/release/IcL02WorkService_V59_202107271557_release.apk [new file with mode: 0644]
app/IcL02WorkService/release/output.json
app/src/main/java/com/ic/work/SensorDataService.java
app/src/main/java/com/ic/work/WorkService.java
app/src/main/java/com/ic/work/db/entity/PedEntity.java
app/src/main/java/com/ic/work/hardware/PedBaseRunnable.java
app/src/main/java/com/ic/work/process/PedProcess.java

diff --git a/app/IcL02WorkService/release/IcL02WorkService_V59_202107261412_release.apk b/app/IcL02WorkService/release/IcL02WorkService_V59_202107261412_release.apk
deleted file mode 100644 (file)
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 (file)
index 0000000..bf545ca
Binary files /dev/null and b/app/IcL02WorkService/release/IcL02WorkService_V59_202107271557_release.apk differ
index 384d4f0..7ff646d 100644 (file)
@@ -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
index b3025d6..f5f5a44 100644 (file)
@@ -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();
         }
-
-
     }
 
     /**
index 3150e4a..e06c334 100644 (file)
@@ -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:
index fefc665..0f8c180 100644 (file)
@@ -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 +
+                '}';
+    }
 }
index b626148..4ab6ba4 100644 (file)
@@ -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));
         }
     }
 
index 9748a6c..dca3123 100644 (file)
@@ -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) {