From e39237e09aae9b39b164b44b021fe07268f19240 Mon Sep 17 00:00:00 2001
From: lizhanwei <Dana_Lee1016@126.com>
Date: 星期一, 20 一月 2020 13:53:29 +0800
Subject: [PATCH] 添加车辆地图调试信息;联网训练主动发开始考试消息,如果是已经开始考试了(app重启后进到此页面再重发一次开始考试)

---
 app/src/main/java/safeluck/drive/evaluation/Constant.java                      |    2 +
 app/src/main/java/safeluck/drive/evaluation/app.java                           |    6 +++
 app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java |   33 +++++++---------
 app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java          |   44 +++++++++++++++++++++-
 4 files changed, 65 insertions(+), 20 deletions(-)

diff --git a/app/src/main/java/safeluck/drive/evaluation/Constant.java b/app/src/main/java/safeluck/drive/evaluation/Constant.java
index cccb7d0..995aafe 100644
--- a/app/src/main/java/safeluck/drive/evaluation/Constant.java
+++ b/app/src/main/java/safeluck/drive/evaluation/Constant.java
@@ -67,5 +67,7 @@
     public static final String REAL_TIME_POS_CAR_TOPIC = "real_time_car_pos_topic";
     public static final String BIND_SPEED_TOPIC = "BIND_SPEED_TOPIC";
     public static final int PASSING_SCORE = 80;
+    public static final int DEBUG_RTCM = 0x000f;
+    public static final int DEBUG_TXT = 0x0010;
     public static String exam_enter_exitdata="exam_enter_exitdata";
 }
diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java
index 803bb09..5ae8817 100644
--- a/app/src/main/java/safeluck/drive/evaluation/app.java
+++ b/app/src/main/java/safeluck/drive/evaluation/app.java
@@ -220,6 +220,12 @@
                 }
                 CEventCenter.dispatchEvent(Constant.REAL_TIME_POS_CAR_TOPIC,cmd,0,json);
                 break;
+            case Constant.DEBUG_RTCM:
+                CEventCenter.dispatchEvent(Constant.REAL_TIME_POS_CAR_TOPIC,cmd,0,json);
+                break;
+            case Constant.DEBUG_TXT:
+                CEventCenter.dispatchEvent(Constant.REAL_TIME_POS_CAR_TOPIC,cmd,0,json);
+                break;
 
         }
 
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java
index 27da75e..8f30081 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java
@@ -27,6 +27,9 @@
 import com.google.gson.reflect.TypeToken;
 
 
+import org.json.JSONException;
+import org.json.JSONObject;
+
 import java.lang.reflect.Type;
 import java.util.List;
 
@@ -279,6 +282,12 @@
                     pathText.lineTo(700, 30);
                     canvas2.drawTextOnPath(osd2, pathText, 0, 0, paint);//閫嗘椂閽堢敓鎴�
                 }
+                if (osd3 != null) {
+                    Path pathText = new Path();
+                    pathText.moveTo(10, 240);
+                    pathText.lineTo(700, 130);
+                    canvas2.drawTextOnPath(osd2, pathText, 0, 0, paint);//閫嗘椂閽堢敓鎴�
+                }
 
                 // 鎻愪氦鐢诲竷
                 Canvas canvas = holder.lockCanvas();
@@ -319,24 +328,55 @@
 
     int line = 0;
     int map_line = 0;
+    private StringBuffer stringBuffer = new StringBuffer();
     private ICEventListener icEventListener = new ICEventListener() {
         @Override
         public void onCEvent(String topic, int msgCode, int resultCode, Object obj) {
 
-            CThreadPoolExecutor.runInBackground(new CalRunnable((String)obj));
+            CThreadPoolExecutor.runInBackground(new CalRunnable(msgCode,(String)obj));
 
         }
     };
     class CalRunnable implements Runnable{
 
         private String json;
-        public CalRunnable(String obj) {
+        private int cmd;
+        public CalRunnable(int cmd,String obj) {
            this.json = obj;
+           this.cmd = cmd;
         }
 
         @Override
         public void run() {
             MyLog.i(TAG, json);
+            if (!(cmd == Constant.REAL_TIME_CAR_POS)){
+                if (cmd == Constant.DEBUG_RTCM){
+                    stringBuffer.append("\tRTCM:");
+                    try {
+                        JSONObject jsonObject = new JSONObject(json);
+                        int length = jsonObject.getInt("length");
+                        stringBuffer.append(length);
+                    } catch (JSONException e) {
+                        e.printStackTrace();
+                    }
+                }
+                if (cmd == Constant.DEBUG_TXT){
+                    try {
+                        JSONObject jsonObject = new JSONObject(json);
+                        String info = jsonObject.getString("info");
+                        stringBuffer.append("\tinfo:");
+                        stringBuffer.append(info);
+                    } catch (JSONException e) {
+                        e.printStackTrace();
+                    }
+
+                }
+            }
+            osd3 = stringBuffer.toString();
+            if (osd3!=null && osd3.contains("info:")&&osd3.contains("RTCM:")){
+
+                stringBuffer.delete(0,stringBuffer.length());
+            }
             RealTimeCarPos timeCarPos = gson.fromJson((String) json, RealTimeCarPos.class);
             List<Double> points = timeCarPos.getPoint();
             switch (timeCarPos.getMove()){
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
index 1925faf..3f2ec67 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
@@ -161,6 +161,7 @@
                     if (examStatus.get(0).getStartExam() == Constant.HAS_BEEN_START_EXAM){
                         btn_start_exam.setEnabled(false);
                         tv_stop.setEnabled(true);
+                        sendExamJson(Constant.HAS_BEEN_START_EXAM);
                     }else{
                         btn_start_exam.setEnabled(true);
                         tv_stop.setEnabled(false);
@@ -287,15 +288,7 @@
         switch (v.getId()) {
             case R.id.btn_start:
                 examStatusViewModel.updateStartExam(Constant.HAS_BEEN_START_EXAM);
-                try {
-                    JSONObject jsonObject = new JSONObject();
-                    jsonObject.put("exam", 1);
-                    String examJson = jsonObject.toString();
-                    Log.i(TAG, "onClick: " + examJson);
-                    AYSdk.getInstance().sendCmd(Constant.EXAM_STATUS, examJson);
-                } catch (JSONException e) {
-                    e.printStackTrace();
-                }
+                sendExamJson(1);
                 iv_head.getDrawable().setLevel(1);
                 break;
             case R.id.tv_stop:
@@ -315,6 +308,18 @@
         }
     }
 
+    private void sendExamJson(int i) {
+        try {
+            JSONObject jsonObject = new JSONObject();
+            jsonObject.put("exam", i);
+            String examJson = jsonObject.toString();
+            Log.i(TAG, "onClick: " + examJson);
+            AYSdk.getInstance().sendCmd(Constant.EXAM_STATUS, examJson);
+        } catch (JSONException e) {
+            e.printStackTrace();
+        }
+    }
+
     private void stopExam() {
         MyLog.i(TAG,"缁撴潫鑰冭瘯");
         item_id = 0;
@@ -323,15 +328,7 @@
         iv_head.getDrawable().setLevel(0);
         OneTimeWorkRequest examStatusInitWork = OneTimeWorkRequest.from(ExamStatusInitWorker.class);
         WorkManager.getInstance(_mActivity).enqueue(examStatusInitWork);
-        try {
-            JSONObject jsonObject = new JSONObject();
-            jsonObject.put("exam", 0);
-            String examJson = jsonObject.toString();
-            Log.i(TAG, "onClick: " + examJson);
-            AYSdk.getInstance().sendCmd(Constant.EXAM_STATUS, examJson);
-        } catch (JSONException e) {
-            e.printStackTrace();
-        }
+        sendExamJson(0);
     }
 
     private ICEventListener icEventListener = new ICEventListener() {

--
Gitblit v1.8.0