DebugView增加分支名称和HASH信息,方便跟踪问题

Signed-off-by: donghongyu <donghongyu@zhidaoauto.com>
This commit is contained in:
donghongyu
2022-01-10 14:28:18 +08:00
parent de45685aaa
commit d342784146
4 changed files with 79 additions and 19 deletions

View File

@@ -106,6 +106,8 @@ android {
// 是否作为 launcher 运行
buildConfigField 'boolean', 'IS_LAUNCHER', 'true'
buildConfigField 'String', 'SOCKET_APP_ID', '\"com.mogo.launcher\"'
buildConfigField 'String', 'WORKING_BRANCH_NAME', getWorkingBranchName()
buildConfigField 'String', 'WORKING_BRANCH_HASH', getWorkingBranchHash()
// 是否支持目的地导航策略
buildConfigField 'boolean', 'IS_SUPPORT_SCHEDULE_CALCULATE_NOT_HOME_COMPANY_DISTANCE_FOR_PUSH', 'false'
}
@@ -296,3 +298,29 @@ android.applicationVariants.all { variant ->
}
apply from: "./regroup.gradle"
/**
* @return 获取当前分支名称
*/
def getWorkingBranchName() {
def workingBranchName = ""
def proc = "git rev-parse --abbrev-ref HEAD".execute()
proc.in.eachLine { line -> workingBranchName = line }
proc.err.eachLine { line -> println line }
proc.waitFor()
workingBranchName = "\"${workingBranchName}\""
println "Working branch name: " + workingBranchName
return workingBranchName
}
/**
* @return 获取当前分支hash
*/
def getWorkingBranchHash() {
def workingBranchHash = ""
def proc = "git log -n1 --format=format:\"%h\"".execute()
proc.in.eachLine { line -> workingBranchHash = line }
proc.err.eachLine { line -> println line }
proc.waitFor()
println "Working branch hash: " + workingBranchHash
return workingBranchHash
}

View File

@@ -9,6 +9,7 @@ import com.bytedance.apm.insight.ApmInsight;
import com.bytedance.apm.insight.ApmInsightInitConfig;
import com.mogo.cloud.passport.MoGoAiCloudClientConfig;
import com.mogo.commons.debug.DebugConfig;
import com.mogo.eagle.core.data.app.AppConfigInfo;
import com.mogo.eagle.core.data.config.FunctionBuildConfig;
import com.mogo.eagle.core.function.main.MainMoGoApplication;
import com.mogo.module.v2x.utils.ObuConfig;
@@ -156,6 +157,10 @@ public class MogoApplication extends MainMoGoApplication {
DebugConfig.setNeedUploadCoordinatesInTime(BuildConfig.IS_NEED_UPLOAD_COORDINATES_IN_TIME);
DebugConfig.setObuType(SharedPrefsMgr.getInstance(this).getInt("OBU_TYPE", DebugConfig.OBU_TYPE_CIDI));
// 初始化构建APP的时候的分支及提交HASH用于辅助定位问题
AppConfigInfo.INSTANCE.setWorkingBranchName(BuildConfig.WORKING_BRANCH_NAME);
AppConfigInfo.INSTANCE.setWorkingBranchHash(BuildConfig.WORKING_BRANCH_HASH);
ObuConfig.useObuLocation = false;
// 使用与渠道配置一样的gps提供者提供的数据,app/productFlavors/fPadLenovo.gradle GPS_PROVIDER 0-Android系统1-工控机2-OBU
FunctionBuildConfig.gpsProvider = BuildConfig.GPS_PROVIDER;

View File

@@ -58,8 +58,6 @@ class DebugSettingView @JvmOverloads constructor(
IMoGoAutopilotStatusListener, IMoGoAutopilotCarStateListener, IMoGoMapLocationListener {
private val TAG = "DebugSettingView"
// 初始化App 配置信息
val mAppConfigInfo = AppConfigInfo()
init {
LayoutInflater.from(context).inflate(R.layout.view_debug_setting, this, true)
@@ -283,20 +281,21 @@ class DebugSettingView @JvmOverloads constructor(
* 绘制应用基本
*/
private fun drawAppInfo() {
mAppConfigInfo.appName = AppUtils.getAppName()
mAppConfigInfo.appVersionCode = AppUtils.getAppVersionCode()
mAppConfigInfo.appVersionName = AppUtils.getAppVersionName()
mAppConfigInfo.appPackageName = AppUtils.getAppPackageName()
mAppConfigInfo.uniqueDeviceId = DeviceIdUtils.getDeviceId(AbsMogoApplication.getApp())
mAppConfigInfo.mogoSN = MoGoAiCloudClient.getInstance().aiCloudClientConfig.sn
mAppConfigInfo.mogoToken = MoGoAiCloudClient.getInstance().aiCloudClientConfig.token
mAppConfigInfo.mapSdkVersion = MogoMap.getInstance().mogoMap.mapVersion
mAppConfigInfo.isConnectNet = NetworkUtils.isConnected(context)
mAppConfigInfo.isConnectSocket = DebugConfig.isDownloadSnapshot()
AppConfigInfo.appName = AppUtils.getAppName()
AppConfigInfo.appName = AppUtils.getAppName()
AppConfigInfo.appVersionCode = AppUtils.getAppVersionCode()
AppConfigInfo.appVersionName = AppUtils.getAppVersionName()
AppConfigInfo.appPackageName = AppUtils.getAppPackageName()
AppConfigInfo.uniqueDeviceId = DeviceIdUtils.getDeviceId(AbsMogoApplication.getApp())
AppConfigInfo.mogoSN = MoGoAiCloudClient.getInstance().aiCloudClientConfig.sn
AppConfigInfo.mogoToken = MoGoAiCloudClient.getInstance().aiCloudClientConfig.token
AppConfigInfo.netMode = DebugConfig.getNetMode()
AppConfigInfo.mapSdkVersion = MogoMap.getInstance().mogoMap.mapVersion
AppConfigInfo.isConnectNet = NetworkUtils.isConnected(context)
AppConfigInfo.isConnectSocket = DebugConfig.isDownloadSnapshot()
// 将数据绘制
tvAppInfo.text = mAppConfigInfo.toString()
tvAppInfo.text = AppConfigInfo.toString()
}
/**
@@ -306,8 +305,8 @@ class DebugSettingView @JvmOverloads constructor(
UiThreadHandler.post {
tvObuInfo.text = GsonUtils.toJson(obuStatusInfo)
mAppConfigInfo.obuSdkVersion = obuStatusInfo.obuSdkVersion
mAppConfigInfo.isConnectObu = obuStatusInfo.obuStatus
AppConfigInfo.obuSdkVersion = obuStatusInfo.obuSdkVersion
AppConfigInfo.isConnectObu = obuStatusInfo.obuStatus
drawAppInfo()
}
}
@@ -320,8 +319,8 @@ class DebugSettingView @JvmOverloads constructor(
tvAutopilotInfo.post {
tvAutopilotInfo.text = GsonUtils.toJson(autoPilotStatusInfo)
mAppConfigInfo.adasSdkVersion = autoPilotStatusInfo.version
mAppConfigInfo.isConnectAutopilot = autoPilotStatusInfo.connectStatus
AppConfigInfo.adasSdkVersion = autoPilotStatusInfo.version
AppConfigInfo.isConnectAutopilot = autoPilotStatusInfo.connectStatus
drawAppInfo()
}
}

View File

@@ -5,7 +5,10 @@ package com.mogo.eagle.core.data.app
* @date 2021/10/12 2:46 下午
* 当前应用的配置信息
*/
class AppConfigInfo {
object AppConfigInfo {
/*应用构建基本信息*/
var workingBranchName: String? = null
var workingBranchHash: String? = null
/*应用基本信息*/
var appName: String? = null
@@ -22,6 +25,13 @@ class AppConfigInfo {
var mogoToken: String? = null
var mogoSN: String? = null
/**
* debug 测试环境--2
* release 生产环境--3
* demo 演示环境--4
*/
var netMode: Int = 3
// 是否可以网络连接
var isConnectNet: Boolean = false
@@ -55,6 +65,8 @@ class AppConfigInfo {
return "应用名称:${appName}\n" +
"应用版本:${appVersionCode}\n" +
"应用版本名称:${appVersionName}\n" +
"Git分支名称${workingBranchName}\n" +
"Git分支HASH${workingBranchHash}\n" +
"HD-MAP-SDK版本${mapSdkVersion}\n" +
"ADAS-SDK版本${adasSdkVersion}\n" +
"OBU-SDK版本${obuSdkVersion}\n" +
@@ -62,6 +74,22 @@ class AppConfigInfo {
//"mogoToken${mogoToken}\n"+
"中台分配的SN${mogoSN}\n" +
"网络是否正常:${isConnectNet}\n" +
"当前网络服务连接:${netMode} -- ${
(when (netMode) {
2 -> {
"测试环境"
}
3 -> {
"生产环境"
}
4 -> {
"演示环境"
}
else -> {
"未知环境"
}
})
}\n" +
"Socket是否正常${isConnectSocket}\n" +
"ADAS连接是否正常${isConnectAutopilot}\n" +
"OBU连接是否正常${isConnectObu}\n"