[fea]
[删除车型维度]
This commit is contained in:
yangyakun
2025-01-23 14:55:57 +08:00
parent 496af11530
commit bf313f04c1
98 changed files with 1540 additions and 1689 deletions

View File

@@ -6,6 +6,7 @@ import com.mogo.commons.debug.DebugConfig
import com.mogo.eagle.core.data.constants.MogoServicePaths
import com.mogo.eagle.core.function.api.startup.IStartUpProvider
import com.mogo.eagle.core.function.startup.stageone.APMStartup
import com.mogo.eagle.core.function.startup.stageone.CarBizInfoStartup
import com.mogo.eagle.core.function.startup.stageone.HttpDnsStartUp
import com.mogo.eagle.core.function.startup.stagetwo.*
import com.rousetime.android_startup.StartupListener
@@ -53,6 +54,7 @@ class MogoStartUpProvider : IStartUpProvider {
StartupManager.Builder()
.addStartup(HttpDnsStartUp())
.addStartup(APMStartup())
.addStartup(CarBizInfoStartup())
.setConfig(config)
.build(it)
.start()
@@ -70,6 +72,7 @@ class MogoStartUpProvider : IStartUpProvider {
}
context?.let {
StartupManager.Builder()
.addStartup(ScreenStartUp())
.addStartup(DataCenterStartUp())
.addStartup(AutopilotStartUp())
.addStartup(ObuStartUp())

View File

@@ -0,0 +1,73 @@
package com.mogo.eagle.core.function.startup.stageone
import android.content.Context
import com.google.gson.reflect.TypeToken
import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.screen.ScreenHelper
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.Product
import com.mogo.eagle.core.utilcode.mogo.Vehicle
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.DateTimeUtils
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.rousetime.android_startup.AndroidStartup
class CarBizInfoStartup : AndroidStartup<Boolean?>() {
private val OCHPRODUCT = "OCHPRODUCT"
private val OCHVEHICLE = "OCHVEHICLE"
private val loginInfoKey = "LOGININFOKEY"
private val tag = "CarBizInfoStartup"
override fun create(context: Context): Boolean? {
CallerLogger.d(tag,"开始设置:${FunctionBuildConfig.appIdentityMode}")
// apm
val ochProduct = SharedPrefsMgr.getInstance().getString(OCHPRODUCT)
val ochVehicle = SharedPrefsMgr.getInstance().getString(OCHVEHICLE)
if(!ochProduct.isNullOrEmpty()&&!ochVehicle.isNullOrEmpty()){
val (_, identity, _) = AppIdentityModeUtils.getInfo(FunctionBuildConfig.appIdentityMode)
FunctionBuildConfig.appIdentityMode = "${ochProduct}_${identity}_${ochVehicle}"
CallerLogger.d(tag,"设置成功1:${FunctionBuildConfig.appIdentityMode}")
ScreenHelper.setScreenConfig(context)
}else{
SharedPrefsMgr.getInstance().getString(loginInfoKey)?.let {
val timeText = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd)
if (it.startsWith(timeText)) {
val loginjson = it.replace(timeText, "")
val type = object : TypeToken<HashMap<String, Any>>() {}.type
val hashMap:HashMap<String,Any> = GsonUtils.fromJson(loginjson,type)
val businessType = hashMap["businessType"]
val carModel = hashMap["carModel"]
if(businessType is Int && carModel is String && carModel.isNotEmpty()){
val product = Product.getName(businessType)
val vehicle = Vehicle.getCarVehicleFromServerName(carModel)
if(product.isNotEmpty()&&vehicle!=Vehicle.NONE){
val (_, identity, _) = AppIdentityModeUtils.getInfo(FunctionBuildConfig.appIdentityMode)
FunctionBuildConfig.appIdentityMode = "${ochProduct}_${identity}_${ochVehicle}"
ScreenHelper.setScreenConfig(context)
CallerLogger.d(tag,"设置成功2:${FunctionBuildConfig.appIdentityMode}")
}
}
}
}
}
CallerLogger.d(tag,"结束设置:${FunctionBuildConfig.appIdentityMode}")
return true
}
override fun callCreateOnMainThread(): Boolean {
return true
}
override fun waitOnMainThread(): Boolean {
return false
}
override fun dependenciesByName(): List<String> {
return emptyList()
}
}

View File

@@ -0,0 +1,40 @@
package com.mogo.eagle.core.function.startup.stagetwo
import android.content.Context
import android.content.pm.ActivityInfo
import com.mogo.commons.screen.ScreenHelper
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.ScreenUtils
import com.rousetime.android_startup.AndroidStartup
class ScreenStartUp: AndroidStartup<Boolean>() {
override fun create(context: Context): Boolean? {
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
ActivityUtils.getTopActivity().requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
}else if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) {
ActivityUtils.getTopActivity().requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
}else{
ActivityUtils.getTopActivity().requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
}
}else{
ActivityUtils.getTopActivity().requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
}
return true
}
override fun callCreateOnMainThread(): Boolean {
return true
}
override fun waitOnMainThread(): Boolean {
return true
}
override fun dependenciesByName(): List<String>? {
return emptyList()
}
}