From fda0c0ab62c338177ad07e6562645cf27f90af07 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 19 Sep 2023 11:46:56 +0800 Subject: [PATCH] [3.4.0-map-sdk] fix bug of mapview init when biz use --- .../v2x/trafficlight/network/TrafficLightNetWorkModel.kt | 2 +- .../biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt | 4 ++-- .../logcatch/MogoLogCatchManager.kt | 4 ++-- .../eagle/core/function/hmi/ui/map/OfflineMapDialog.kt | 6 +++--- .../core/function/hmi/ui/setting/DebugSettingView.kt | 8 ++++---- .../core/function/hmi/ui/widget/SystemVersionView.kt | 2 +- .../core/function/business/cachemap/CacheHDMapManager.kt | 4 ++-- .../java/com/zhidaoauto/map/sdk/inner/road/RoadHelper.kt | 3 --- .../mogo-map-api/src/main/java/com/mogo/map/MogoData.kt | 7 +++++-- 9 files changed, 20 insertions(+), 20 deletions(-) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/trafficlight/network/TrafficLightNetWorkModel.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/trafficlight/network/TrafficLightNetWorkModel.kt index a5ba68f037..e5b1c2632a 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/trafficlight/network/TrafficLightNetWorkModel.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/trafficlight/network/TrafficLightNetWorkModel.kt @@ -28,7 +28,7 @@ class TrafficLightNetWorkModel { request>("requestRoadID") { loader { apiCall { - val tileId = mogoMapData.get().getTileId(lon, lat) + val tileId = mogoMapData.get()?.getTileId(lon, lat)?:0 val map = hashMapOf() val roadIDRequestData = RoadIDRequestData(tileId, lat, lon, bearing) map["sn"] = MoGoAiCloudClientConfig.getInstance().sn diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt index dccb3da33b..c5f4c343fa 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt @@ -91,7 +91,7 @@ class AiRoadMarker { if (drawRoadLine) { //施工中心点前方的自车行驶方向上300米距离 var l1: CenterLine? = null - mogoMapData.get().getCenterLineRangeInfo( + mogoMapData.get()?.getCenterLineRangeInfo( marker.poi_lon, marker.poi_lat, location.heading.toFloat(), @@ -103,7 +103,7 @@ class AiRoadMarker { } }) var l2: CenterLine? = null - mogoMapData.get().getCenterLineRangeInfo( + mogoMapData.get()?.getCenterLineRangeInfo( marker.poi_lon, marker.poi_lat, location.heading.toFloat(), diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt index 5f0ca5ea9b..357a371349 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt @@ -224,7 +224,7 @@ object MogoLogCatchManager : IMogoOnMessageListener, Handl config.isShowDebugLog = true config.isShowNetDebugLog = true } - MogoData.mogoMapData.get().setDebugMode(true) +// MogoData.mogoMapData.get()?.setDebugMode(true) CallerAutoPilotControlManager.setEnableLog(true) } @@ -238,7 +238,7 @@ object MogoLogCatchManager : IMogoOnMessageListener, Handl config.isShowDebugLog = false config.isShowNetDebugLog = false } - MogoData.mogoMapData.get().setDebugMode(false) +// MogoData.mogoMapData.get()?.setDebugMode(false) CallerAutoPilotControlManager.setEnableLog(false) } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/map/OfflineMapDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/map/OfflineMapDialog.kt index eeb852975f..5c7ff33b48 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/map/OfflineMapDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/map/OfflineMapDialog.kt @@ -87,14 +87,14 @@ class OfflineMapDialog(context: Context) : BaseFloatDialog(context) { okView?.setOnClickListener { if (isLoading) { - mogoMapData.get().cancelDownloadCacheData() + mogoMapData.get()?.cancelDownloadCacheData() } dismiss() } } private fun cacheHDDataByCityByLonLat() { - mogoMapData.get().cacheHDDataByCityByLonLat(location!!, { _, progress -> + mogoMapData.get()?.cacheHDDataByCityByLonLat(location!!, { _, progress -> if (Thread.currentThread() != Looper.getMainLooper().thread) { ThreadUtils.runOnUiThread({ updateProgress(progress.toInt()) @@ -119,7 +119,7 @@ class OfflineMapDialog(context: Context) : BaseFloatDialog(context) { private fun cacheHDOfflineData() { if (location == null) {// 拿到了高德地图的cityCode - mogoMapData.get().cacheHDDataByCity({ _, progress -> + mogoMapData.get()?.cacheHDDataByCity({ _, progress -> if (Thread.currentThread() != Looper.getMainLooper().thread) { ThreadUtils.runOnUiThread({ updateProgress(progress.toInt()) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt index bd8623a375..41852cf95d 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt @@ -591,7 +591,7 @@ internal class DebugSettingView @JvmOverloads constructor( if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { ThreadUtils.getIoPool().execute { - mogoMapData.get().isCityDataCached { + mogoMapData.get()?.isCityDataCached { isHDCached = it UiThreadHandler.post { btn_cache_hd_map.text = "缓存高精离线地图(${if (it) "已是最新版" else "待更新"}!)" @@ -1301,7 +1301,7 @@ internal class DebugSettingView @JvmOverloads constructor( * 设置是否输出高精地图日志 true-打印日志,false-不打印日志 */ tbHdMapLog.setOnCheckedChangeListener { _, isChecked -> - mogoMapData.get().setDebugMode(isChecked) + mogoMapData.get()?.setDebugMode(isChecked) } cbTraceLog.isChecked = CallerDevaToolsManager.getTraceLogStatus() @@ -2155,7 +2155,7 @@ internal class DebugSettingView @JvmOverloads constructor( private fun cacheHDOfflineData(isGaoDe: Boolean) { if (isGaoDe) {// 拿到了高德地图的cityCode - mogoMapData.get().cacheHDDataByCity({ _, progress -> + mogoMapData.get()?.cacheHDDataByCity({ _, progress -> if (Thread.currentThread() != Looper.getMainLooper().thread) { ThreadUtils.runOnUiThread(Runnable { cacheHDCityProgressUpdate(progress) @@ -2174,7 +2174,7 @@ internal class DebugSettingView @JvmOverloads constructor( }) } else {// 只拿到了高精的经纬度 mGnssInfo?.let { loc -> - mogoMapData.get().cacheHDDataByCityByLonLat(loc, { _, progress -> + mogoMapData.get()?.cacheHDDataByCityByLonLat(loc, { _, progress -> if (Thread.currentThread() != Looper.getMainLooper().thread) { ThreadUtils.runOnUiThread(Runnable { cacheHDCityProgressUpdate(progress) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SystemVersionView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SystemVersionView.kt index 720668e9ec..26ae715708 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SystemVersionView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SystemVersionView.kt @@ -160,7 +160,7 @@ class SystemVersionView @JvmOverloads constructor( } ThreadUtils.getIoPool().execute { - mogoMapData.get().isCityDataCached { + mogoMapData.get()?.isCityDataCached { UiThreadHandler.post { updateHDDataCacheStatus(it) } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/cachemap/CacheHDMapManager.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/cachemap/CacheHDMapManager.kt index 3eb81060fe..86176d020b 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/cachemap/CacheHDMapManager.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/cachemap/CacheHDMapManager.kt @@ -15,14 +15,14 @@ object CacheHDMapManager { fun scheduleGetLocation() { if (!AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { ThreadUtils.getIoPool().execute { - mogoMapData.get().isCityDataCached { + mogoMapData.get()?.isCityDataCached { if(!it){ while (true) { val loc = CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84() if (loc.latitude != 0.0 || loc.longitude != 0.0) { CallerLogger.d(TAG, "开始下载") - mogoMapData.get().cacheHDDataByCityByLonLat(loc, + mogoMapData.get()?.cacheHDDataByCityByLonLat(loc, { _, progress -> CallerLogger.i(M_MAP + TAG, "下载进度:${progress.toInt()}") }, diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/road/RoadHelper.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/road/RoadHelper.kt index 8a4be67583..674c49a4d6 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/road/RoadHelper.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/road/RoadHelper.kt @@ -804,9 +804,6 @@ class RoadHelper private constructor() { mapBox.llaGetCrossRoadById(tileId,id) } - - - fun initFileCacheByCity( lon :Double, lat: Double){ mapBox.initFileCacheByCity(lon, lat) } diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/MogoData.kt b/libraries/mogo-map-api/src/main/java/com/mogo/map/MogoData.kt index 43b85e3e7e..3d73107b3f 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/MogoData.kt +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/MogoData.kt @@ -9,13 +9,16 @@ class MogoData private constructor() { } } - private lateinit var iMogoData: IMogoData + private var iMogoData: IMogoData? = null fun init(iMogoData: IMogoData) { this.iMogoData = iMogoData } - fun get():IMogoData{ + fun get():IMogoData?{ + if(iMogoData == null){ + return null + } return iMogoData }