From 3be3637ae5a3e763ba99c8f6a1bb0cb144b7647f Mon Sep 17 00:00:00 2001
From: endian11 <Dana_Lee1016@126.com>
Date: 星期二, 25 八月 2020 17:21:12 +0800
Subject: [PATCH] 查看地图改为web   新增gps_monitor_url

---
 app/src/main/java/safeluck/drive/evaluation/bean/CarInfoHead.kt                |    2 
 app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt                   |   12 +
 app/src/main/java/safeluck/drive/evaluation/app.java                           |    2 
 app/src/main/java/safeluck/drive/evaluation/DB/rtktb/RTKConfigUpdateWorker.kt  |   19 ++
 app/src/main/java/safeluck/drive/evaluation/fragment/VPFragment.java           |    6 
 app/src/main/java/safeluck/drive/evaluation/fragment/JiaXiaoFragment.java      |  149 ++++++++++++++++--------
 app/src/main/res/values/strings.xml                                            |    2 
 app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpRoadMapRsp.java     |    9 +
 app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java    |   17 +-
 app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java        |   36 ++++-
 app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java |   39 +++++-
 app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpYardRsp.java        |    9 +
 12 files changed, 217 insertions(+), 85 deletions(-)

diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/rtktb/RTKConfigUpdateWorker.kt b/app/src/main/java/safeluck/drive/evaluation/DB/rtktb/RTKConfigUpdateWorker.kt
index 1b235ae..cc5a890 100644
--- a/app/src/main/java/safeluck/drive/evaluation/DB/rtktb/RTKConfigUpdateWorker.kt
+++ b/app/src/main/java/safeluck/drive/evaluation/DB/rtktb/RTKConfigUpdateWorker.kt
@@ -32,6 +32,7 @@
 import safeluck.drive.evaluation.util.CThreadPoolExecutor
 import safeluck.drive.evaluation.util.FileUtil
 import java.io.IOException
+import java.net.URLDecoder
 
 class RTKConfigUpdateWorker(context:Context, workerParams: WorkerParameters) :Worker(context, workerParams){
 
@@ -98,7 +99,7 @@
                     jsonObject1 = JSONObject(str)
                     val result = jsonObject1!!.getBoolean("result")
                     if (result) {
-                        var mapInfoHead:MapInfoHead = MapInfoHead("","",BaseDataUIBean.TYPE_.car)
+                        var mapInfoHead:MapInfoHead = MapInfoHead("","",BaseDataUIBean.TYPE_.car,"","")
 
                         when(type){
                             "road" ->{
@@ -110,6 +111,8 @@
 
                                     if (map.data.map_json.type.equals("road")) {
                                         mapInfoHead.str = map.data.map_json.name
+                                        mapInfoHead.gps_moinitor_url =  URLDecoder.decode( map.data.gps_monitor_url,"UTF-8")
+                                        mapInfoHead.arcgis_url = map.data.map_url
                                         ExamPlatformData.getInstance().setNewRoadMapPath(Environment.getExternalStorageDirectory().absolutePath + "/"
                                                 + applicationContext.getPackageName() + "/" + fileName)
                                         CThreadPoolExecutor.runInBackground(Runnable {
@@ -130,9 +133,13 @@
                                     val yard = gson.fromJson<HttpYardRsp>(str,HttpYardRsp::class.java)
                                     if (yard.isResult){
                                         if (yard.data !=null){
-                                            mapInfoHead.version = yard.data.version
                                             Log.i(TAG,"yard====")
+                                            mapInfoHead.version = yard.data.version
+                                            mapInfoHead.gps_moinitor_url =             URLDecoder.decode(yard.data.gps_monitor_url,"UTF-8")
+                                            Log.i(PlatFormConstant.HTTPTAG,"gps="+mapInfoHead.gps_moinitor_url)
+
                                             mapInfoHead.str = yard.data.map_json.name
+                                            mapInfoHead.arcgis_url = yard.data.map_url
                                             ExamPlatformData.getInstance().setNewMapPath(Environment.getExternalStorageDirectory().absolutePath + "/"
                                                     + applicationContext.getPackageName() + "/"+fileName)
                                             CThreadPoolExecutor.runInBackground(Runnable{
@@ -150,8 +157,14 @@
 
                                 if (car.isResult){
                                     if (car.data !=null){
+                                        if (car.data.version != null){
+
                                         mapInfoHead.version = car.data.version
-                                        mapInfoHead.str = car.data.map_json.name
+                                        }
+                                        if (car.data.map_json!= null){
+                                            mapInfoHead.str = car.data.map_json.name
+                                        }
+
                                         ExamPlatformData.getInstance().carModelPath = Environment.getExternalStorageDirectory().absolutePath + "/" +
                                                 applicationContext.getPackageName() + "/"+fileName
 
diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java
index 75bfee6..691a576 100644
--- a/app/src/main/java/safeluck/drive/evaluation/app.java
+++ b/app/src/main/java/safeluck/drive/evaluation/app.java
@@ -82,7 +82,7 @@
                         }
                     })
                     .install();
-            
+
             CrashHandler crashHandler = CrashHandler.getInstance();
             crashHandler.init(getApplicationContext());
             AYSdk.getInstance().init(getApplicationContext());
diff --git a/app/src/main/java/safeluck/drive/evaluation/bean/CarInfoHead.kt b/app/src/main/java/safeluck/drive/evaluation/bean/CarInfoHead.kt
index ce8dc77..c2712e9 100644
--- a/app/src/main/java/safeluck/drive/evaluation/bean/CarInfoHead.kt
+++ b/app/src/main/java/safeluck/drive/evaluation/bean/CarInfoHead.kt
@@ -5,4 +5,4 @@
  * 閭锛�632393724@qq.com
  * All Rights Saved! Chongqing AnYun Tech co. LTD
  */
-data class MapInfoHead(var version:String,var str:String,var type:BaseDataUIBean.TYPE_)
\ No newline at end of file
+data class MapInfoHead(var version:String,var str:String,var type:BaseDataUIBean.TYPE_,var gps_moinitor_url:String,var arcgis_url:String)
\ No newline at end of file
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java
index 6cb346b..d7faece 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/BaseDatasFragment.java
@@ -135,15 +135,18 @@
                                         setitemInfo("鑰冭瘯骞冲彴鐘舵��         ", ExamPlatformData.getInstance().getExamplatformStatusStr(ExamPlatformData.getInstance().getExamplatformStatus()),R.mipmap.conn_status);
                                     }
                                     HashMap<BaseDataUIBean.TYPE_, MapInfoHead> hashMaps = ExamPlatformData.getInstance().getMapInfoHeads();
-                                    Iterator<Map .Entry<BaseDataUIBean.TYPE_,MapInfoHead>> iterator = hashMaps.entrySet().iterator();
-                                    while (iterator.hasNext()){
-                                        Map.Entry<BaseDataUIBean.TYPE_,MapInfoHead>entry = iterator.next();
-                                        Log.i(TAG,"key= " + entry.getKey() + " and value= " + entry.getValue());
-                                        datas.add(new BaseDataUIBean(str2SpannableString(entry.getValue().getStr()),R.mipmap.province_id,str2FouregourdSpannableString(getResources().getString(R.string.mapversion)+entry.getValue().getVersion()),
-                                                        entry.getKey()== BaseDataUIBean.TYPE_.car?"鏇存柊杞﹁締妯″瀷":(entry.getKey()== BaseDataUIBean.TYPE_.road?"鏇存柊閬撹矾鍦板浘":"鏇存柊鍦哄湴鍦板浘")
-                                                ,1, entry.getKey()));
+                                    if (hashMaps != null){
+                                        Iterator<Map .Entry<BaseDataUIBean.TYPE_,MapInfoHead>> iterator = hashMaps.entrySet().iterator();
+                                        while (iterator.hasNext()){
+                                            Map.Entry<BaseDataUIBean.TYPE_,MapInfoHead>entry = iterator.next();
+                                            Log.i(TAG,"key= " + entry.getKey() + " and value= " + entry.getValue());
+                                            datas.add(new BaseDataUIBean(str2SpannableString(entry.getValue().getStr()),R.mipmap.province_id,str2FouregourdSpannableString(getResources().getString(R.string.mapversion)+entry.getValue().getVersion()),
+                                                    entry.getKey()== BaseDataUIBean.TYPE_.car?"鏇存柊杞﹁締妯″瀷":(entry.getKey()== BaseDataUIBean.TYPE_.road?"鏇存柊閬撹矾鍦板浘":"鏇存柊鍦哄湴鍦板浘")
+                                                    ,1, entry.getKey()));
+                                        }
                                     }
 
+
                                     gpsInfoAdapter.addAll(datas);
                                 }
                             });
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/JiaXiaoFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/JiaXiaoFragment.java
index 942bbb6..883f06a 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/JiaXiaoFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/JiaXiaoFragment.java
@@ -4,6 +4,7 @@
 import android.graphics.Color;
 import android.os.Bundle;
 
+import android.os.Environment;
 import android.os.Handler;
 import android.os.Message;
 import android.text.TextUtils;
@@ -17,6 +18,7 @@
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
 
+import com.anyun.basecommonlib.MyLog;
 import com.esri.arcgisruntime.ArcGISRuntimeEnvironment;
 import com.esri.arcgisruntime.arcgisservices.ArcGISMapServiceInfo;
 import com.esri.arcgisruntime.concurrent.ListenableFuture;
@@ -63,6 +65,7 @@
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.LinkedBlockingDeque;
+import java.util.concurrent.LinkedBlockingQueue;
 import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.TimeUnit;
 
@@ -90,25 +93,26 @@
 
     private static final String TAG = JiaXiaoFragment.class.getSimpleName();
 
-
+    private LinkedBlockingQueue queue = new LinkedBlockingQueue(100);
+    private ExecutorService consumer = Executors.newSingleThreadExecutor();
+    private ExecutorService producer = Executors.newSingleThreadExecutor();
 
     private Gson gson = new Gson();
     private ICEventListener icEventListener = new ICEventListener() {
         @Override
         public void onCEvent(String topic, int msgCode, int resultCode, Object obj) {
 
-            synchronized (JiaXiaoFragment.class){
-                String json = (String)obj;
-                Log.i(TAG,String.format("褰撳墠绾跨▼鍙�%d,json=%s",Thread.currentThread().getId(),json));
-                RTKInfoBean rtkInfoBean = gson.fromJson(json,RTKInfoBean.class);
-                Log.i(TAG,String.format("CThreadPoolExecutor,褰撳墠绾跨▼鍙�%d,Coord_x=%f,Coord_y=%f",
-                        Thread.currentThread().getId(),rtkInfoBean.getCoord_x(),rtkInfoBean
-                                .getCoord_y()));
-                yaw = rtkInfoBean.getHeading();
-                startX = rtkInfoBean.getCoord_y();
-                startY = rtkInfoBean.getCoord_x();
-                addGraphicLayer(yaw,startX,startY);
-            }
+
+
+
+                producer.execute(()->{
+                    String json = (String)obj;
+                    Log.i(TAG,String.format("褰撳墠绾跨▼鍙�%d,json=%s",Thread.currentThread().getId(),json));
+                    RTKInfoBean rtkInfoBean = gson.fromJson(json,RTKInfoBean.class);
+                    queue.offer(rtkInfoBean);
+                });
+
+//                MyLog.i(TAG,"澶勭悊瀹�11.鏃堕棿="+Utils.formatTimeYYMMDDHHmmSSSSS(System.currentTimeMillis()));
 
 
         }
@@ -149,15 +153,54 @@
         View view = inflater.inflate(R.layout.layout_arc_gis,container,false);
         mMapView = view.findViewById(R.id.mapView);
         Log.i(TAG,String.format("褰撳墠绾跨▼鍙�%d,json=%s",Thread.currentThread().getId(),"onCreateView"));
-        setupMap();
-        addTrailheadsLayer();
-        addGraphicLayer(0,startX,startY);
+//        setupMap();
+//        addTrailheadsLayer();
+
+addImageLayer();
+//        addtiledLayer();
+
+
+//        addGraphicLayer(0,startX,startY);
 
 //        mHandler.sendEmptyMessageDelayed(MSG_CAR,1000);
 
-
+//        consumer.execute(new CalRunnable());
         return view;
     }
+
+
+
+
+
+    boolean flag = true;
+    class CalRunnable implements Runnable{
+
+        @Override
+        public void run() {
+            while (flag){
+
+
+                RTKInfoBean rtkInfoBean = (RTKInfoBean) queue.poll();
+                if (rtkInfoBean != null){
+                    Log.i(TAG,String.format("鍙栧嚭涓�涓紝queue.size=%d,rtkinfo=%s",queue.size(),rtkInfoBean.toString()));
+                    yaw = rtkInfoBean.getHeading();
+                    startX = rtkInfoBean.getCoord_y();
+                    startY = rtkInfoBean.getCoord_x();
+                    addGraphicLayer(yaw,startX,startY);
+                }else{
+                    Log.i(TAG,String.format("鍙栧嚭涓�涓负绌猴紝queue.size=%d",queue.size()));
+                }
+
+            }
+
+        }
+    }
+
+
+
+
+
+
     private SublayerList mSublayersList;
     private void setupMap() {
         if (mMapView != null) {
@@ -173,7 +216,9 @@
 
 //涓�瀹氫笉鑳藉皯浜嗘渶鍚庣殑 /
 
-        String url = "http://192.168.0.47:6080/arcgis/rest/services/%E5%9C%9F%E4%B8%BB%E8%80%83%E5%9C%BA/MapServer/";
+//        String url = "http://192.168.0.47:6080/arcgis/rest/services/%E5%9C%9F%E4%B8%BB%E8%80%83%E5%9C%BA/MapServer/";
+//        String url = "http://192.168.0.47:6080/arcgis/rest/services/%E7%A7%91%E4%B8%89%E5%9C%B0%E5%9B%BE/MapServer/";
+        String url = "http://192.168.0.47:6080/arcgis/rest/services/%E7%A7%91%E4%BA%8C%E5%9C%B0%E5%9B%BE/MapServer/";
 //        String url = "http://192.168.0.47:6080/arcgis/rest/services/test/MapServer/";
 //        String url = "http://192.168.0.47:6080/arcgis/rest/services/Testmap_3/MapServer/";
         ArcGISMapImageLayer arcGISMapImageLayer = new ArcGISMapImageLayer(url);
@@ -183,10 +228,9 @@
                 SublayerList tables = arcGISMapImageLayer.getSublayers();
 
                 Log.i(TAG,"ServiceFeatureTables size = "+tables.size());
-                for (int i = tables.size()-1; i >= 0; i--) {
+                for (int i = tables.size()-1; i >=0; i--) {
 //                for (int i =0; i < tables.size(); i++) {
         ServiceFeatureTable serviceFeatureTable = new ServiceFeatureTable(url+String.valueOf(i));
-
         FeatureLayer featureLayer = new FeatureLayer(serviceFeatureTable);
         ArcGISMap map = mMapView.getMap();
         map.getOperationalLayers().add(featureLayer);
@@ -195,19 +239,20 @@
         });
 
 
-        final ListenableFuture<Boolean> viewPointSetFuture = mMapView.setViewpointRotationAsync(90);
-        viewPointSetFuture.addDoneListener(() -> {
-            try{
-                boolean completed = viewPointSetFuture.get();
-                if (completed){
-                    Log.i(TAG,"Rotation completed successfully");
-                }
-            }catch (InterruptedException e){
-                Log.i(TAG,"Rotation Interrupted");
-            }catch (ExecutionException e){
-
-            }
-        });
+//鏃嬭浆90搴� 閫嗘椂閽�
+//        final ListenableFuture<Boolean> viewPointSetFuture = mMapView.setViewpointRotationAsync(90);
+//        viewPointSetFuture.addDoneListener(() -> {
+//            try{
+//                boolean completed = viewPointSetFuture.get();
+//                if (completed){
+//                    Log.i(TAG,"Rotation completed successfully");
+//                }
+//            }catch (InterruptedException e){
+//                Log.i(TAG,"Rotation Interrupted");
+//            }catch (ExecutionException e){
+//
+//            }
+//        });
 
 
         mMapView.setOnTouchListener(new MapSingleTapListener(getContext(),mMapView));
@@ -220,14 +265,12 @@
         SimpleLineSymbol lineSymbol = new SimpleLineSymbol(SimpleLineSymbol.Style.SOLID, Color.rgb(232,0,0), 0.5f);
         SimpleFillSymbol simpleFillSymbol = new SimpleFillSymbol(SimpleFillSymbol.Style.SOLID, Color.argb(255,232,0,0), lineSymbol);
         PointCollection points = new PointCollection(SpatialReference.create(4544));
-        String carFilePath = ExamPlatformData.getInstance().getCarModelPath();
+        String carFilePath = Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+_mActivity.getPackageName()+"/giscar.json";
         if (TextUtils.isEmpty(carFilePath)){
             Toast.makeText(_mActivity, "杞﹁締妯″瀷鏂囦欢涓嶅瓨鍦�", Toast.LENGTH_SHORT).show();
             return;
         }
-        CThreadPoolExecutor.runInBackground(new Runnable() {
-            @Override
-            public void run() {
+
                 byte[] fileContentBytes=FileUtil.readFile(carFilePath);
                 String buffer= new String(fileContentBytes);
 //                Log.i(TAG,"giscar="+buffer);
@@ -235,8 +278,8 @@
                 List<safeluck.drive.evaluation.bean.Point> carNew=Utils.getCarPoint(0,yaw,new safeluck.drive.evaluation.bean.Point(x,y));
                 List<Integer> bodys =gisCarModel.getBody();
                 for (int i = 0; i <bodys.size(); i++) {
-                    Log.i(TAG,String.format("杞﹁韩鐐逛綅缃細%d",bodys.get(i)));
-                    Log.i(TAG,"鏂板潗鏍�"+carNew.get(bodys.get(i)).getX()+" Y="+carNew.get(bodys.get(i)).getY());
+//                    Log.i(TAG,String.format("杞﹁韩鐐逛綅缃細%d",bodys.get(i)));
+//                    Log.i(TAG,"鏂板潗鏍�"+carNew.get(bodys.get(i)).getX()+" Y="+carNew.get(bodys.get(i)).getY());
                     points.add(carNew.get(bodys.get(i)).getX(),carNew.get(bodys.get(i)).getY());
                 }
 
@@ -260,10 +303,9 @@
                 });
 
 
-            }
 
 
-        });
+
     }
 
     private void drawPoint(Point point) {
@@ -272,25 +314,26 @@
         Graphic graphic = new Graphic(point, simpleMarkerSymbol);
         mGraphicsOverlay.getGraphics().add(graphic);
     }
+    SimpleLineSymbol lineSymbolGls = new SimpleLineSymbol(SimpleLineSymbol.Style.SOLID, Color.BLACK, 0.5f);
+
+    SimpleFillSymbol simpleFillSymbolGls = new SimpleFillSymbol(SimpleFillSymbol.Style.SOLID, Color.argb(255,0,0,0), lineSymbolGls);
+    PointCollection points = new PointCollection(SpatialReference.create(4544));
 
     private void drawrightCenterGls(GisCarModel gisCarModel, List<safeluck.drive.evaluation.bean.Point> carNew) {
 
-        SimpleLineSymbol lineSymbol = new SimpleLineSymbol(SimpleLineSymbol.Style.SOLID, Color.BLACK, 0.5f);
-        SimpleFillSymbol simpleFillSymbol = new SimpleFillSymbol(SimpleFillSymbol.Style.SOLID, Color.argb(255,0,0,0), lineSymbol);
-        PointCollection points = new PointCollection(SpatialReference.create(4544));
 
-        drawGlses(carNew, simpleFillSymbol, points, gisCarModel.getRight_center_glass());
-        drawGlses(carNew, simpleFillSymbol, points, gisCarModel.getLeft_center_glass());
+        drawGlses(carNew, simpleFillSymbolGls, points, gisCarModel.getRight_center_glass());
+        drawGlses(carNew, simpleFillSymbolGls, points, gisCarModel.getLeft_center_glass());
 
         List<Integer> frontCLs = new ArrayList<>();
         frontCLs.addAll(gisCarModel.getLeft_front_glass());
         frontCLs.addAll(gisCarModel.getRight_front_glass());
-        drawGlses(carNew, simpleFillSymbol, points, frontCLs);
+        drawGlses(carNew, simpleFillSymbolGls, points, frontCLs);
 
         frontCLs.clear();
         frontCLs.addAll(gisCarModel.getLeft_rear_glass());
         frontCLs.addAll(gisCarModel.getRight_rear_glass());
-        drawGlses(carNew, simpleFillSymbol, points, frontCLs);
+        drawGlses(carNew, simpleFillSymbolGls, points, frontCLs);
 
 
     }
@@ -397,7 +440,7 @@
     }
 
 private void addImageLayer(){
-            String url = "http://192.168.0.47:6080/arcgis/rest/services/%E5%9C%9F%E4%B8%BB%E8%80%83%E5%9C%BA/MobileServer";
+            String url = "http://192.168.0.47:6080/arcgis/rest/services/%E5%9C%9F%E4%B8%BB%E8%80%83%E5%9C%BA/MobileServer/";
     // create a MapImageLayer with dynamically generated map images
     final ArcGISMapImageLayer mapImageLayer = new ArcGISMapImageLayer(url);
 //    mapImageLayer.loadAsync();
@@ -421,7 +464,7 @@
 
 private void addtiledLayer(){
 //    String url = "http://192.168.0.47:6080/arcgis/rest/services/%E5%9C%9F%E4%B8%BB%E8%80%83%E5%9C%BA/MapServer";
-    String url = "http://192.168.0.47:6080/arcgis/manager/service.html?name=SampleWorldCities.MapServer";
+    String url = "http://192.168.0.47:6080/arcgis/rest/services/%E7%A7%91%E4%BA%8C%E5%9C%B0%E5%9B%BE/MapServer";
     // create a MapImageLayer with dynamically generated map images
     final ArcGISTiledLayer arcGISTiledLayer = new ArcGISTiledLayer(url);
     // Add a listener that is invoked when layer loading has completed.
@@ -482,13 +525,15 @@
         if (mMapView != null) {
             mMapView.dispose();
         }
-        CEventCenter.onBindEvent(false,icEventListener, Constant.BIND_RTK_INFO_MAP);
+//        CEventCenter.onBindEvent(false,icEventListener, Constant.BIND_RTK_INFO_MAP);
+        producer.shutdown();
+        consumer .shutdown();
         super.onDetach();
     }
 
     @Override
     public void onAttach(Context context) {
         super.onAttach(context);
-        CEventCenter.onBindEvent(true,icEventListener,Constant.BIND_RTK_INFO_MAP);
+//        CEventCenter.onBindEvent(true,icEventListener,Constant.BIND_RTK_INFO_MAP);
     }
 }
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 ef7c128..b4442f8 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java
@@ -56,7 +56,9 @@
 import safeluck.drive.evaluation.R;
 import safeluck.drive.evaluation.adapter.ScoreAdapter;
 import safeluck.drive.evaluation.DB.exam_status.ExamStatus;
+import safeluck.drive.evaluation.bean.BaseDataUIBean;
 import safeluck.drive.evaluation.bean.ExamPlatformData;
+import safeluck.drive.evaluation.bean.MapInfoHead;
 import safeluck.drive.evaluation.bean.ScoreBean;
 import safeluck.drive.evaluation.cEventCenter.CEventCenter;
 import safeluck.drive.evaluation.cEventCenter.ICEventListener;
@@ -613,19 +615,40 @@
 
             case R.id.view_map:
                 if (ExamPlatformData.getInstance().getExamType()>ExamPlatformData.EXAM_TYPE_ChangKAO){
-                    RoadDriveMapFragmentaa mapFragment = findFragment(RoadDriveMapFragmentaa.class);
+//                    RoadDriveMapFragmentaa mapFragment = findFragment(RoadDriveMapFragmentaa.class);
                     MyLog.i(TAG,"鏌ョ湅璺�冨湴鍥�");
-                    if (mapFragment == null) {
-                        mapFragment = (RoadDriveMapFragmentaa) RoadDriveMapFragmentaa.newInstance();
+//                    if (mapFragment == null) {
+//                        mapFragment = (RoadDriveMapFragmentaa) RoadDriveMapFragmentaa.newInstance();
+//                    }
+//                    start(mapFragment);
+
+
+
+
+                    MapInfoHead mapInfoHead = ExamPlatformData.getInstance().getMapInfoHeads().get(BaseDataUIBean.TYPE_.road);
+                    String url = mapInfoHead.getGps_moinitor_url();
+                    Log.i(TAG,"map head lulao gps url="+url);
+                    VPFragment jiaXiaoFragment = findFragment(VPFragment.class);
+                    if (jiaXiaoFragment == null) {
+                        jiaXiaoFragment = (VPFragment) VPFragment.newInstance(url);
                     }
-                    start(mapFragment);
+                    start(jiaXiaoFragment);
                 }else{
-                    MapFragment mapFragment = findFragment(MapFragment.class);
+//                    MapFragment mapFragment = findFragment(MapFragment.class);
                     MyLog.i(TAG,"鏌ョ湅鍦鸿�冨湴鍥�");
-                    if (mapFragment == null) {
-                        mapFragment = (MapFragment) MapFragment.newInstance();
+//                    if (mapFragment == null) {
+//                        mapFragment = (MapFragment) MapFragment.newInstance();
+//                    }
+//                    start(mapFragment);
+
+                    VPFragment jiaXiaoFragment = findFragment(VPFragment.class);
+                    if (jiaXiaoFragment == null) {
+                        MapInfoHead mapInfoHead = ExamPlatformData.getInstance().getMapInfoHeads().get(BaseDataUIBean.TYPE_.yard);
+                        String url = mapInfoHead.getGps_moinitor_url();
+                        Log.i(TAG,"map head gps url="+url);
+                        jiaXiaoFragment = (VPFragment) VPFragment.newInstance(url);
                     }
-                    start(mapFragment);
+                    start(jiaXiaoFragment);
                 }
 
                 break;
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java
index 8609a49..39c56a7 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java
@@ -59,7 +59,9 @@
 import safeluck.drive.evaluation.MainActivity;
 import safeluck.drive.evaluation.R;
 import safeluck.drive.evaluation.adapter.ScoreAdapter;
+import safeluck.drive.evaluation.bean.BaseDataUIBean;
 import safeluck.drive.evaluation.bean.ExamPlatformData;
+import safeluck.drive.evaluation.bean.MapInfoHead;
 import safeluck.drive.evaluation.bean.ScoreBean;
 import safeluck.drive.evaluation.cEventCenter.CEventCenter;
 import safeluck.drive.evaluation.cEventCenter.ICEventListener;
@@ -594,19 +596,37 @@
 
             case R.id.view_map:
                 if (ExamPlatformData.getInstance().getExamType()>ExamPlatformData.EXAM_TYPE_ChangKAO){
-                    RoadDriveMapFragmentaa mapFragment = findFragment(RoadDriveMapFragmentaa.class);
+//                    RoadDriveMapFragmentaa mapFragment = findFragment(RoadDriveMapFragmentaa.class);
                     MyLog.i(TAG,"鏌ョ湅璺�冨湴鍥�");
-                    if (mapFragment == null) {
-                        mapFragment = (RoadDriveMapFragmentaa) RoadDriveMapFragmentaa.newInstance();
+//                    if (mapFragment == null) {
+//                        mapFragment = (RoadDriveMapFragmentaa) RoadDriveMapFragmentaa.newInstance();
+//                    }
+//                    start(mapFragment);
+
+                    MapInfoHead mapInfoHead = ExamPlatformData.getInstance().getMapInfoHeads().get(BaseDataUIBean.TYPE_.road);
+                    String url = mapInfoHead.getGps_moinitor_url();
+                    Log.i(TAG,"map head lulao gps url="+url);
+                    VPFragment jiaXiaoFragment = findFragment(VPFragment.class);
+                    if (jiaXiaoFragment == null) {
+                        jiaXiaoFragment = (VPFragment) VPFragment.newInstance(url);
                     }
-                    start(mapFragment);
+                    start(jiaXiaoFragment);
                 }else{
-                    MapFragment mapFragment = findFragment(MapFragment.class);
+//                    MapFragment mapFragment = findFragment(MapFragment.class);
                     MyLog.i(TAG,"鏌ョ湅鍦鸿�冨湴鍥�");
-                    if (mapFragment == null) {
-                        mapFragment = (MapFragment) MapFragment.newInstance();
+//                    if (mapFragment == null) {
+//                        mapFragment = (MapFragment) MapFragment.newInstance();
+//                    }
+//                    start(mapFragment);
+
+                    VPFragment jiaXiaoFragment = findFragment(VPFragment.class);
+                    if (jiaXiaoFragment == null) {
+                        MapInfoHead mapInfoHead = ExamPlatformData.getInstance().getMapInfoHeads().get(BaseDataUIBean.TYPE_.yard);
+                        String url = mapInfoHead.getGps_moinitor_url();
+                        Log.i(TAG,"map head gps url="+url);
+                        jiaXiaoFragment = (VPFragment) VPFragment.newInstance(url);
                     }
-                    start(mapFragment);
+                    start(jiaXiaoFragment);
                 }
                 break;
             case R.id.iv_head:
diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/VPFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/VPFragment.java
index 41b36ae..5b20e99 100644
--- a/app/src/main/java/safeluck/drive/evaluation/fragment/VPFragment.java
+++ b/app/src/main/java/safeluck/drive/evaluation/fragment/VPFragment.java
@@ -37,7 +37,8 @@
         return vpFragment;
     }
 
-    private String url = "http://192.168.40.202:9527/#/visitor/monitor?device_id=0314200100000002";
+//    private String url = "http://192.168.40.201:9527/#/visitor/monitor?device_id=0314200100000004";
+    private String url = "https://trainsim.aaej.cn/#/visitor/monitor?device_id=0314200100000004";
     private String url1 = "http://www.baidu.com";
     private static final String TAG = VPFragment.class.getCanonicalName();
 
@@ -50,7 +51,8 @@
         webView.setLayoutParams(layoutParams);
         Bundle bundle = getArguments();
         if (bundle != null){
-
+                url = getArguments().getString("argu");
+                Log.i(TAG,"鏀跺埌鍙傛暟="+url);
         }else{
 
         }
diff --git a/app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpRoadMapRsp.java b/app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpRoadMapRsp.java
index ef25dfe..0c02928 100644
--- a/app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpRoadMapRsp.java
+++ b/app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpRoadMapRsp.java
@@ -40,9 +40,18 @@
         private String port;
         private String version;
         private String map_url;
+        private String gps_monitor_url;
         private MapJsonBean map_json;
         private String pzh;
 
+        public String getGps_monitor_url() {
+            return gps_monitor_url;
+        }
+
+        public void setGps_monitor_url(String gps_monitor_url) {
+            this.gps_monitor_url = gps_monitor_url;
+        }
+
         public String getVersion() {
             return version;
         }
diff --git a/app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpYardRsp.java b/app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpYardRsp.java
index 348435b..f944ebc 100644
--- a/app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpYardRsp.java
+++ b/app/src/main/java/safeluck/drive/evaluation/httpmodule/HttpYardRsp.java
@@ -42,9 +42,18 @@
         private String port;
         private String version;
         private String map_url;
+        private String gps_monitor_url;
         private MapJsonBean map_json;
         private String pzh;
 
+        public String getGps_monitor_url() {
+            return gps_monitor_url;
+        }
+
+        public void setGps_monitor_url(String gps_monitor_url) {
+            this.gps_monitor_url = gps_monitor_url;
+        }
+
         public String getVersion() {
             return version;
         }
diff --git a/app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt b/app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt
index ca4620d..ba565c5 100644
--- a/app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt
+++ b/app/src/main/java/safeluck/drive/evaluation/util/DataInit.kt
@@ -18,6 +18,7 @@
 import retrofit2.Call
 import retrofit2.Callback
 import retrofit2.Response
+import retrofit2.http.Url
 import safeluck.drive.evaluation.Constant
 import safeluck.drive.evaluation.DB.WorkRoomDataBase
 import safeluck.drive.evaluation.DB.rtktb.RTKConfig
@@ -33,6 +34,8 @@
 import safeluck.drive.evaluation.worker.MCUUpgradeWorker
 import java.io.IOException
 import java.io.InputStreamReader
+import java.net.URL
+import java.net.URLDecoder
 import java.nio.charset.Charset
 
 /**
@@ -241,7 +244,7 @@
                 jsonObject1 = JSONObject(str)
                 val result = jsonObject1!!.getBoolean("result")
                 if (result) {
-                    var mapInfoHead: MapInfoHead = MapInfoHead("","", BaseDataUIBean.TYPE_.car)
+                    var mapInfoHead: MapInfoHead = MapInfoHead("","", BaseDataUIBean.TYPE_.car,"","")
 
                     when(type){
                         "road" ->{
@@ -253,6 +256,8 @@
 
                                     if (map.data.map_json.type.equals("road")) {
                                         mapInfoHead.str = map.data.map_json.name
+                                        mapInfoHead.gps_moinitor_url =  URLDecoder.decode( map.data.gps_monitor_url,"UTF-8")
+                                        mapInfoHead.arcgis_url = map.data.map_url
                                         ExamPlatformData.getInstance().setNewRoadMapPath(Environment.getExternalStorageDirectory().absolutePath + "/"
                                                 + app.getAppContext().getPackageName() + "/" + fileName)
                                         CThreadPoolExecutor.runInBackground(Runnable {
@@ -274,11 +279,14 @@
                             if (yard.isResult){
                                 if (yard.data !=null){
                                     mapInfoHead.version = yard.data.version
+                                    mapInfoHead.gps_moinitor_url =             URLDecoder.decode(yard.data.gps_monitor_url,"UTF-8")
+
                                     mapInfoHead.str = yard.data.map_json.name
+                                    mapInfoHead.arcgis_url = yard.data.map_url
                                     ExamPlatformData.getInstance().setNewMapPath(Environment.getExternalStorageDirectory().absolutePath + "/"
                                             + app.getAppContext().getPackageName() + "/"+fileName)
                                     CThreadPoolExecutor.runInBackground(Runnable{
-                                        MyLog.i(PlatFormConstant.HTTPTAG,"绉戜笁鍦哄湴鍦板浘淇濆瓨鎴愬姛")
+                                        MyLog.i(PlatFormConstant.HTTPTAG,"鍦哄湴鍦板浘淇濆瓨鎴愬姛")
                                         str = gson.toJson(yard.data.map_json)
                                         FileUtil.writeTxtFileToSD(app.getAppContext(),fileName,str,"")
                                         sendMapInfo()
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 50efd62..e8e87bb 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -52,7 +52,7 @@
     <string name="by_crossing">閫氳繃璺彛</string>
     <string name="lane_change">鍙樻洿杞﹂亾</string>
     <string name="simulate_light_tip_start">涓嬮潰灏嗚繘琛屾ā鎷熷闂磋椹跺満鏅伅鍏変娇鐢ㄧ殑鑰冭瘯锛岃鎸夎闊虫寚浠ゅ湪5绉掑唴鍋氬嚭鐩稿簲鐨勭伅鍏夋搷浣�</string>
-    <string name="mapversion">鐗堟湰锛歏</string>
+    <string name="mapversion">鐗堟湰锛�</string>
     <array name="simulate_light_tips">
         <item>涓嬮潰灏嗚繘琛屾ā鎷熷闂磋椹跺満鏅伅鍏変娇鐢ㄧ殑鑰冭瘯锛岃鎸夎闊虫寚浠ゅ湪5绉掑唴鍋氬嚭鐩稿簲鐨勭伅鍏夋搷浣�</item>
         <item>妯℃嫙澶滈棿鑰冭瘯瀹屾垚璇峰叧闂墍鏈夌伅鍏夛紝璇疯捣姝ョ户缁畬鎴愯�冭瘯</item>

--
Gitblit v1.8.0