From 4eb9bd2cd9921386de8caec224cdb7405196472d Mon Sep 17 00:00:00 2001
From: 沈斌 <bluelazysb@hotmail.com>
Date: Tue, 15 May 2018 13:01:59 +0800
Subject: [PATCH] debugging

---
 app/src/main/java/com/moral/yunfushao/fragment/FragmentSettings.java |    3 +
 app/src/main/java/com/moral/yunfushao/utils/DebugUtils.java          |   36 ++++++++++++
 app/src/main/java/com/moral/yunfushao/fragment/FragmentMonitor.java  |   77 +++++++++++++++++++------
 app/src/main/java/com/moral/yunfushao/ble/BLECommon.java             |    5 +
 app/src/main/java/com/moral/yunfushao/httputils/HttpUtils.java       |   16 +++--
 5 files changed, 111 insertions(+), 26 deletions(-)

diff --git a/app/src/main/java/com/moral/yunfushao/ble/BLECommon.java b/app/src/main/java/com/moral/yunfushao/ble/BLECommon.java
index 4321744..4626073 100644
--- a/app/src/main/java/com/moral/yunfushao/ble/BLECommon.java
+++ b/app/src/main/java/com/moral/yunfushao/ble/BLECommon.java
@@ -12,4 +12,9 @@
     public final static String BLE_CLEAR = "6A09010001006B";
     public final static String BLE_HEART =  "6A09010005006B";//������3���������������
     public final static String BLE_HOUR_REC =  "7A7B";//������3���������������
+
+    //���������7A������������������������������������������������������
+    public final static String BLE_SEND_7A = "73656E64";
+    //������������������������������������app���������������
+    public final static String BLE_REC_TIME = "63616C74696D65";
 }
diff --git a/app/src/main/java/com/moral/yunfushao/fragment/FragmentMonitor.java b/app/src/main/java/com/moral/yunfushao/fragment/FragmentMonitor.java
index 2cc5443..24d4a23 100644
--- a/app/src/main/java/com/moral/yunfushao/fragment/FragmentMonitor.java
+++ b/app/src/main/java/com/moral/yunfushao/fragment/FragmentMonitor.java
@@ -6,7 +6,6 @@
 import android.bluetooth.BluetoothGattCharacteristic;
 import android.bluetooth.BluetoothGattService;
 import android.content.Context;
-import android.content.DialogInterface;
 import android.content.Intent;
 import android.content.res.AssetManager;
 import android.media.MediaPlayer;
@@ -53,6 +52,7 @@
 import com.moral.yunfushao.model.UpLoadParam;
 import com.moral.yunfushao.model.VoiceBean;
 import com.moral.yunfushao.ui.PanelView;
+import com.moral.yunfushao.utils.DebugUtils;
 
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
@@ -92,7 +92,19 @@
     //������������������������
     private ArrayList<RecData> submitTempResult = new ArrayList<>();
     private Timer heartTimer, resTimer, chonglianTimer;
-    Handler handler = new Handler();
+
+    private Handler handler = new Handler();
+
+    private Runnable runnable = new Runnable(){
+        @Override
+        public void run() {
+            checkTime();
+            checkTimeCount++;
+            handler.postDelayed(this, 5000);
+        }
+    };
+
+    private int checkTimeCount = 0;
 
     /**
      * ������
@@ -154,6 +166,14 @@
                                         parseCurrentData(result);
                                         parseHisData(result);
                                         parseHoutData(result);
+
+                                        if(result.equals(BLECommon.BLE_REC_TIME) || checkTimeCount > 5) {
+                                            handler.removeCallbacks(runnable);
+                                        }
+                                        if (result.startsWith("7A")) {
+                                            mBluetoothService.write(mBluetoothService.getWirteCharacteristic().getService().getUuid().toString(), mBluetoothService.getWirteCharacteristic().getUuid().toString(), BLECommon.BLE_SEND_7A, null);
+                                        }
+                                        DebugUtils.sendData("data", result);
                                     }
                                 });
                             }
@@ -172,12 +192,8 @@
                 /**
                  * ������������������
                  */
-                handler.postDelayed(new Runnable() {
-                    @Override
-                    public void run() {
-                        checkTime();
-                    }
-                }, 500);
+                handler.postDelayed(runnable, 5000);
+
                 /**
                  * ������������������������
                  */
@@ -436,7 +452,7 @@
                     message.what = 1;
                     heartHandler.sendMessage(message);
                 }
-            }, 0, 1000 * 60);
+            }, 0, 1000 * 10);
         }
     }
 
@@ -655,15 +671,19 @@
         }
         if (!TextUtils.isEmpty(nowResult) && nowResult.length() == 8 && nowResult.startsWith("7A") && nowResult.endsWith("7B")) {
 
-            //-----------------------Test------------------------------------------//
-//            String aaa = MainApp.theApp.sharedPreferencesUtil.getTest()+"\n"+nowResult+"   ���������������"+TimeUtil.getCurrentDate("yyyy-MM-dd HH:mm:ss");
-//            MainApp.theApp.sharedPreferencesUtil.saveTest(aaa);
-            //-----------------------Test------------------------------------------//
+            if(DebugUtils.debug_mode) {
+                //-----------------------Test------------------------------------------//
+                String aaa = MainApp.theApp.sharedPreferencesUtil.getTest()+"\n"+nowResult+"   ���������������"+TimeUtil.getCurrentDate("yyyy-MM-dd HH:mm:ss");
+                MainApp.theApp.sharedPreferencesUtil.saveTest(aaa);
+                //-----------------------Test------------------------------------------//
+            }
 
             test(nowResult, TimeUtil.getCurrentDate("yyyy-MM-dd HH:mm:ss"));
             int hourValue = Integer.parseInt(nowResult.substring(2, 4), 16) * 256 + Integer.parseInt(nowResult.substring(4, 6), 16);
 //            Log.d("haijiang", "������������������������="+ nowResult+"���������"+nowResult.substring(2, 4)+"|"+Integer.parseInt(nowResult.substring(2, 4), 16) * 256+"���������"+nowResult.substring(4, 6)+"|"+Integer.parseInt(nowResult.substring(4, 6), 16) +"���������"+(hourValue/100.0));
-            sendHourDataRec();
+
+            //sendHourDataRec();
+
             RecData data = new RecData();
             data.setType(1);
             data.setIs_warn(0);
@@ -692,10 +712,12 @@
         if (!TextUtils.isEmpty(nowResult) && nowResult.length() == 16 && nowResult.startsWith("3A") && nowResult.endsWith("3B")) {
             Log.d("hourdata", "=====nowResult=====" + nowResult);
 
-            //-----------------------Test------------------------------------------//
-//            String aaa = MainApp.theApp.sharedPreferencesUtil.getTest()+"\n"+nowResult;
-//            MainApp.theApp.sharedPreferencesUtil.saveTest(aaa);
-            //-----------------------Test------------------------------------------//
+            if(DebugUtils.debug_mode) {
+                //-----------------------Test------------------------------------------//
+                String aaa = MainApp.theApp.sharedPreferencesUtil.getTest() + "\n" + nowResult;
+                MainApp.theApp.sharedPreferencesUtil.saveTest(aaa);
+                //-----------------------Test------------------------------------------//
+            }
 
             String year = "20" + Integer.parseInt(nowResult.substring(2, 4), 16);
             String month = Integer.parseInt(nowResult.substring(4, 6), 16) + "";
@@ -738,7 +760,24 @@
         blesb.append(toHex(Integer.toHexString((now.get(Calendar.HOUR_OF_DAY)))));
         blesb.append(toHex(Integer.toHexString((now.get(Calendar.MINUTE)))));
         blesb.append("4B");
-        mBluetoothService.write(mBluetoothService.getWirteCharacteristic().getService().getUuid().toString(), mBluetoothService.getWirteCharacteristic().getUuid().toString(), blesb.toString(), null);
+
+        boolean result = mBluetoothService.write(mBluetoothService.getWirteCharacteristic().getService().getUuid().toString(), mBluetoothService.getWirteCharacteristic().getUuid().toString(), blesb.toString(), new BleCharacterCallback() {
+            @Override
+            public void onSuccess(BluetoothGattCharacteristic characteristic) {
+                String val = StringUtils.byteArrayToHexStr(characteristic.getValue());
+                DebugUtils.sendData("time", val);
+            }
+
+            @Override
+            public void onFailure(BleException exception) {
+            }
+
+            @Override
+            public void onInitiatedResult(boolean result) {
+                //DebugUtils.sendData("time", String.valueOf(result));
+            }
+        });
+        DebugUtils.sendData("time", String.valueOf(result));
     }
 
     private String toHex(String s) {
diff --git a/app/src/main/java/com/moral/yunfushao/fragment/FragmentSettings.java b/app/src/main/java/com/moral/yunfushao/fragment/FragmentSettings.java
index ee055a1..41bca27 100644
--- a/app/src/main/java/com/moral/yunfushao/fragment/FragmentSettings.java
+++ b/app/src/main/java/com/moral/yunfushao/fragment/FragmentSettings.java
@@ -24,6 +24,7 @@
 import com.moral.yunfushao.httputils.HttpCallBack;
 import com.moral.yunfushao.httputils.HttpUtils;
 import com.moral.yunfushao.model.EventMessage;
+import com.moral.yunfushao.utils.DebugUtils;
 
 import org.greenrobot.eventbus.EventBus;
 
@@ -57,6 +58,8 @@
         sc_open = findView(R.id.sc_open);
         tv_version = findView(R.id.tv_version);
         tv_version.setText("������������V"+getVersion());
+
+        bt_look.setVisibility(DebugUtils.debug_mode ? View.VISIBLE : View.GONE);
     }
 
     @Override
diff --git a/app/src/main/java/com/moral/yunfushao/httputils/HttpUtils.java b/app/src/main/java/com/moral/yunfushao/httputils/HttpUtils.java
index 7614692..60ab35a 100644
--- a/app/src/main/java/com/moral/yunfushao/httputils/HttpUtils.java
+++ b/app/src/main/java/com/moral/yunfushao/httputils/HttpUtils.java
@@ -137,13 +137,15 @@
                         XLog.e("result:" + s);
                         try {
                             JSONObject resJosn= new JSONObject(s);
-                            JSONObject jsonObject = resJosn.getJSONObject("data");
-                            int errno = jsonObject.optInt("code");
-                            String message = jsonObject.optString("msg");
-                            if(errno == 0){
-                                httpCallBack.onSuccess(jsonObject.optString("info"),message);
-                            }else{
-                                httpCallBack.onFail(errno,message);
+                            if(resJosn.has("data")) {
+                                JSONObject jsonObject = resJosn.getJSONObject("data");
+                                int errno = jsonObject.optInt("code");
+                                String message = jsonObject.optString("msg");
+                                if(errno == 0){
+                                    httpCallBack.onSuccess(jsonObject.optString("info"),message);
+                                }else{
+                                    httpCallBack.onFail(errno,message);
+                                }
                             }
                         } catch (JSONException e) {
                             e.printStackTrace();
diff --git a/app/src/main/java/com/moral/yunfushao/utils/DebugUtils.java b/app/src/main/java/com/moral/yunfushao/utils/DebugUtils.java
new file mode 100644
index 0000000..e89f2be
--- /dev/null
+++ b/app/src/main/java/com/moral/yunfushao/utils/DebugUtils.java
@@ -0,0 +1,36 @@
+package com.moral.yunfushao.utils;
+
+import com.lzy.okgo.cache.CacheMode;
+import com.moral.yunfushao.httputils.HttpCallBack;
+import com.moral.yunfushao.httputils.HttpUtils;
+
+import java.util.HashMap;
+
+public class DebugUtils {
+
+    public static boolean debug_mode = false;
+
+    private static String debug_url = "http://47.96.171.62:3100/send_yfs";
+
+    public static void sendData(String key, String data) {
+        HashMap<String, String> params = new HashMap<>();
+        params.put("key", key);
+        params.put("data", data);
+        sendData(params);
+    }
+
+    public static void sendData(HashMap<String, String> params) {
+        if(debug_mode) {
+            HttpUtils.doPost(debug_url, params, CacheMode.DEFAULT, false, new HttpCallBack() {
+                @Override
+                public void onSuccess(String res, String msg) { }
+
+                @Override
+                public void showLoadingDialog() { }
+
+                @Override
+                public void onFail(int errno, String s) { }
+            });
+        }
+    }
+}

--
Gitblit v1.8.0