[6.7.0][地图sdk] 升级地图sdk版本,并修复编译错误

This commit is contained in:
renwj
2024-10-16 17:22:27 +08:00
parent c4bcb2cb64
commit 5069f7b425
17 changed files with 203 additions and 25 deletions

View File

@@ -1,28 +1,35 @@
package com.mogo.launcher.startup
import android.content.Context
import com.autonavi.nge.hdmap.HDMapProvider
import com.google.gson.reflect.TypeToken
import com.mogo.commons.debug.DebugConfig
import com.mogo.eagle.core.data.app.AppConfigInfo
import com.mogo.eagle.core.data.app.UrlConfig
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.data.config.HdMapBuildConfig
import com.mogo.eagle.core.data.config.HmiBuildConfig
import com.mogo.eagle.core.data.config.JunkConfig
import com.mogo.eagle.core.data.deva.chain.ChainConstant
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.ProcessUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.launcher.BuildConfig
import com.mogo.launcher.R
import com.shuyu.gsyvideoplayer.player.IjkPlayerManager
import com.zhidaoauto.map.sdk.open.MapAutoApi
import com.zhidaoauto.map.sdk.open.MapParams
import com.zhjt.mogo_core_function_devatools.env.EnvChangeManager
import com.zhjt.service.chain.ChainLog
import tv.danmaku.ijk.media.player.IjkMediaPlayer
import java.util.concurrent.atomic.AtomicReference
object ConfigStartUp {
private const val TAG = "ConfigStartUp"
private val redisCallback by lazy { AtomicReference<HDMapProvider.IRedisLoadCallback>()}
@JvmStatic
fun init(context: Context) {
initDebugConfig()
@@ -118,6 +125,72 @@ object ConfigStartUp {
.setIsRecordLogs(false)
.setCoordinateType(MapParams.COORDINATETYPE_GCJ02)
MapAutoApi.init(context, mapParams)
HDMapProvider.setRedisDataLoadCallback(object : HDMapProvider.IRedisLoadCallback {
override fun onLoginStart(ip: String, port: Int, password: String, dbIndex: Int) {
Logger.d(TAG, "-- onLoginStart --: ip: $ip, port: $port, password: $password, dbIndex: $dbIndex")
onRedisDataLoadRoute(mapOf("onLoginStart" to "ip:$ip, port:$port, password: $password, dbIndex: $dbIndex"))
}
override fun onLoginSuccess() {
Logger.d(TAG, "-- onLoginSuccess --")
onRedisDataLoadRoute(mapOf("onLoginSuccess" to ""))
}
override fun onLoginFailed(error: String?) {
Logger.d(TAG, "-- onLoginFailed($error) --")
onRedisDataLoadRoute(mapOf("onLoginFailed" to "fail_reason:$error"))
}
override fun onReLogin(isCanRetry: Boolean) {
Logger.d(TAG, "-- onReLogin($isCanRetry) --")
onRedisDataLoadRoute(mapOf("onReLogin" to "isCanRetry:$isCanRetry"))
}
override fun onTileLoadStart(layerId: String, tileId: String) {
Logger.d(TAG, "-- onTileLoadStart(layerId: $layerId, tileId: $tileId) --")
onRedisDataLoadRoute(mapOf("onTileLoadStart" to "layerId: $layerId, tileId: $tileId"))
}
override fun onTileLoadFail(layerId: String, tileId: String, error: String) {
Logger.d(TAG, "-- onTileLoadFail(layerId: $layerId, tileId: $tileId, error: $error) --")
onRedisDataLoadRoute(mapOf("onTileLoadFail" to "layerId: $layerId, tileId: $tileId, error: $error"))
}
override fun onTileLoadSuccess(layerId: String, tileId: String) {
Logger.d(TAG, "-- onTileLoadSuccess(layerId: $layerId, tileId: $tileId) --")
onRedisDataLoadRoute(mapOf("onTileLoadSuccess" to "layerId: $layerId, tileId: $tileId"))
}
override fun onTilesLoadStart(layerId: String, tileIds: List<String>) {
Logger.d(TAG, "-- onTilesLoadStart(layerId: $layerId, tileIds: ${tileIds.joinToString(",")}) --")
onRedisDataLoadRoute(mapOf("onTilesLoadStart" to "layerId: $layerId, tileIds: ${tileIds.joinToString(",")}"))
}
override fun onTilesLoadFail(layerId: String, tileIds: List<String>, error: String?) {
Logger.d(TAG, "-- onTilesLoadFail(layerId: $layerId, tileIds: ${tileIds.joinToString(",")}, error: $error) --")
onRedisDataLoadRoute(mapOf("onTilesLoadFail" to "layerId: $layerId, tileIds: ${tileIds.joinToString(",")}, error:$error"))
}
override fun onTilesLoadSuccess(layerId: String, tileIds: List<String>) {
Logger.d(TAG, "-- onTilesLoadSuccess(layerId: $layerId, tileIds: ${tileIds.joinToString(",")}) --")
onRedisDataLoadRoute(mapOf("onTilesLoadSuccess" to "layerId: $layerId, tileIds: ${tileIds.joinToString(",")}"))
}
}.also {
redisCallback.set(it) // 将此回调保存起来只为了在native层的引用不回收因为native层的引用是全局弱引用
})
// HDMapProvider.toggleSystrace(true) // 开启systrace, 此功能默认关闭,只要在开发阶段定位渲染问题时才打开。(前提需要在地图sdk在关键节点进行手动打点后再开启之后使用systrace工具进行抓取trace文件进行分析)
// HDMapProvider.toggleMapDataDebugInfo(true) // 打开地图调试信息的文字展示,此功能也默认关闭,只有在地图测试工具中使用
}
@ChainLog(
linkChainLog = ChainConstant.CHAIN_TYPE_STATUS,
linkCode = ChainConstant.CHAIN_SOURCE_CLOUD,
nodeAliasCode = ChainConstant.CHAIN_CODE_REDIS_DATA_LOAD,
paramIndexes = [0]
)
private fun onRedisDataLoadRoute(extra: Map<String, Any>) {}
}