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