Merge branch 'dev_robotaxi-d_251110_8.2.8_i18n' into dev_robotaxi-d_251204_8.3.0_xfk_temp
# Conflicts: # OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt
This commit is contained in:
@@ -19,6 +19,7 @@ import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
|
||||
import com.mogo.eagle.core.utilcode.util.SoundPoolUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.zhjt.mogo_core_function_devatools.status.StatusManager
|
||||
import com.zhjt.mogo_core_function_devatools.status.entity.AcceleratorStatus
|
||||
@@ -80,7 +81,8 @@ class StartAutoPilotStatusView @JvmOverloads constructor(
|
||||
|
||||
private fun initView() {
|
||||
// 默认展示 FSM 情况未知的状态
|
||||
handleFSM(FSMStatus(FSMStateCode.UnKnown, listOf("未知")))
|
||||
// handleFSM(FSMStatus(FSMStateCode.UnKnown, listOf("未知")))
|
||||
handleFSM(FSMStatus(FSMStateCode.UnKnown, listOf(StringUtils.getString(R.string.module_core_unknown))))
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -293,7 +295,8 @@ class StartAutoPilotStatusView @JvmOverloads constructor(
|
||||
*/
|
||||
private fun handleFSMDemoMode() {
|
||||
Logger.d(TAG, "--- handleFSMDemoMode ---")
|
||||
handleFSM(FSMStatus(FSMStateCode.ExistNormal, listOf("正常")))
|
||||
// handleFSM(FSMStatus(FSMStateCode.ExistNormal, listOf("正常")))
|
||||
handleFSM(FSMStatus(FSMStateCode.ExistNormal, listOf(StringUtils.getString(R.string.module_core_normal))))
|
||||
}
|
||||
|
||||
private fun notifyStatus(isError: Boolean) {
|
||||
|
||||
@@ -12,6 +12,7 @@ import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.dialog.BaseFloatDialog
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.zhjt.mogo_core_function_devatools.status.StatusManager
|
||||
import com.zhjt.mogo_core_function_devatools.status.entity.FSMStateCode
|
||||
import com.zhjt.mogo_core_function_devatools.status.entity.FSMStatus
|
||||
@@ -48,7 +49,8 @@ class FSMStatusDetailDialog(context: Context) : BaseFloatDialog(context, TAG),
|
||||
}
|
||||
|
||||
fun setFsmErrorStatus(msgArray: List<String>) {
|
||||
tvTitle?.text = "FSM异常"
|
||||
// tvTitle?.text = "FSM异常"
|
||||
tvTitle?.text = StringUtils.getString(R.string.module_core_fsm_error)
|
||||
runCatching {
|
||||
val c = Color.parseColor("#FF4E41")
|
||||
tvTitle?.setTextColor(c)
|
||||
@@ -60,16 +62,19 @@ class FSMStatusDetailDialog(context: Context) : BaseFloatDialog(context, TAG),
|
||||
}
|
||||
|
||||
private fun setFsmNormalStatus() {
|
||||
tvTitle?.text = "FSM正常"
|
||||
// tvTitle?.text = "FSM正常"
|
||||
tvTitle?.text = StringUtils.getString(R.string.module_core_fsm_normal)
|
||||
runCatching {
|
||||
val c = Color.parseColor("#26C14F")
|
||||
tvTitle?.setTextColor(c)
|
||||
}
|
||||
addFsmMsgItemView(ArrayList<String>().also { it += "FSM异常状态已恢复" }, false)
|
||||
// addFsmMsgItemView(ArrayList<String>().also { it += "FSM异常状态已恢复" }, false)
|
||||
addFsmMsgItemView(ArrayList<String>().also { it += StringUtils.getString(R.string.module_core_fsm_error_recover) }, false)
|
||||
}
|
||||
|
||||
private fun setFsmUnknownStatus() {
|
||||
tvTitle?.text = "FSM状态未知"
|
||||
// tvTitle?.text = "FSM状态未知"
|
||||
tvTitle?.text = StringUtils.getString(R.string.module_core_fsm_error_unknown)
|
||||
runCatching {
|
||||
val c = Color.parseColor("#FFCD3D")
|
||||
tvTitle?.setTextColor(c)
|
||||
@@ -78,7 +83,8 @@ class FSMStatusDetailDialog(context: Context) : BaseFloatDialog(context, TAG),
|
||||
}
|
||||
|
||||
private fun setFsmNotExistStatus() {
|
||||
tvTitle?.text = "FSM不存在"
|
||||
// tvTitle?.text = "FSM不存在"
|
||||
tvTitle?.text = StringUtils.getString(R.string.module_core_fsm_not_exist)
|
||||
runCatching {
|
||||
val c = Color.parseColor("#FFFFFF")
|
||||
tvTitle?.setTextColor(c)
|
||||
|
||||
@@ -36,6 +36,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
|
||||
import com.mogo.eagle.core.utilcode.util.AppUtils
|
||||
import com.mogo.eagle.core.utilcode.util.NetworkUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.map.MogoData
|
||||
@@ -140,7 +141,8 @@ class CarInfoTabView @JvmOverloads constructor(
|
||||
)
|
||||
val provider = CallerDevaToolsManager.upgradeProvider()
|
||||
if (provider?.isDownloading() == true) {
|
||||
ToastUtils.showShort("正在下载最新版本,请稍候再试...")
|
||||
// ToastUtils.showShort("正在下载最新版本,请稍候再试...")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_downloading_new_version)
|
||||
return@setOnClickListener
|
||||
}
|
||||
CallerDevaToolsManager.queryAppUpgrade { upgradeStatus, errorInfo ->
|
||||
@@ -168,7 +170,8 @@ class CarInfoTabView @JvmOverloads constructor(
|
||||
CallerAutoPilotControlManager.sendOtaPadMsgQuery(query.toString())
|
||||
CallerOTAManager.invokeOtaPadMsgQuery()
|
||||
}else{
|
||||
ToastUtils.showLong("当前SSM节点未成功启动或当前版本不支持OTA升级")
|
||||
// ToastUtils.showLong("当前SSM节点未成功启动或当前版本不支持OTA升级")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_ssm_not_start)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -385,16 +388,20 @@ class CarInfoTabView @JvmOverloads constructor(
|
||||
leftTime = productInfo.optInt("left_time")//剩余时间,单位秒
|
||||
}
|
||||
val upgradeTime = if(leftTime > 60){
|
||||
"预计部署过程用时${leftTime/60}分钟${leftTime%60}秒"
|
||||
// "预计部署过程用时${leftTime/60}分钟${leftTime%60}秒"
|
||||
StringUtils.getString(R.string.module_core_deployment_time_used, leftTime / 60, leftTime % 60)
|
||||
}else{
|
||||
"预计部署过程用时${leftTime%60}秒"
|
||||
// "预计部署过程用时${leftTime%60}秒"
|
||||
StringUtils.getString(R.string.module_core_deployment_time_used1, leftTime % 60)
|
||||
}
|
||||
CallerHmiManager.showOTAUpgradeDialog(1,true,upgradeReason+upgradeTime)
|
||||
}else{
|
||||
ToastUtils.showLong("请结束订单后触发升级")
|
||||
// ToastUtils.showLong("请结束订单后触发升级")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_stop_order_upgrade)
|
||||
}
|
||||
}else{
|
||||
ToastUtils.showLong("暂无待升级任务!")
|
||||
// ToastUtils.showLong("暂无待升级任务!")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_devatools_not_upgrade_task)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -42,6 +42,7 @@ import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.util.ClickUtils
|
||||
import com.mogo.eagle.core.utilcode.util.JsonParser
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils.millis2String
|
||||
@@ -183,7 +184,8 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
//故障类型选择
|
||||
tvFaultType.setOnClickListener {
|
||||
if (!hasLevel2) {
|
||||
ToastUtils.showShort("运营后台没有配置故障类型")
|
||||
// ToastUtils.showShort("运营后台没有配置故障类型")
|
||||
ToastUtils.showShort(com.zhjt.mogo_core_function_devatools.R.string.module_mogo_core_function_devatools_operation_not_configured_fault_type)
|
||||
return@setOnClickListener
|
||||
}
|
||||
if (faultTypeSelectStatus) {
|
||||
@@ -223,11 +225,13 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
//故障原因选择
|
||||
tvFaultReason.setOnClickListener {
|
||||
if (tvFaultType.text.isEmpty()) {
|
||||
ToastUtils.showShort("请先选择故障类型")
|
||||
// ToastUtils.showShort("请先选择故障类型")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_operation_choose_fault_type)
|
||||
return@setOnClickListener
|
||||
}
|
||||
if(!hasLevel3){
|
||||
ToastUtils.showShort("后台未配置故障原因")
|
||||
// ToastUtils.showShort("后台未配置故障原因")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_cloud_not_fault_cause)
|
||||
return@setOnClickListener
|
||||
}
|
||||
|
||||
@@ -257,7 +261,8 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
}
|
||||
ivTimeAdd.setOnClickListener {
|
||||
if (workOrderOccurrenceTime + 60000 > System.currentTimeMillis()) {
|
||||
ToastUtils.showShort("发生时间应在当前时间之前")
|
||||
// ToastUtils.showShort("发生时间应在当前时间之前")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_occurrence_time_should_be_before_current_time)
|
||||
return@setOnClickListener
|
||||
}
|
||||
workOrderOccurrenceTime += 60000
|
||||
@@ -271,7 +276,8 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
if (hasFocus) {
|
||||
edit.hint = ""
|
||||
} else {
|
||||
edit.hint = "手动输入"
|
||||
// edit.hint = "手动输入"
|
||||
edit.hint = StringUtils.getString(R.string.module_core_manual_input)
|
||||
}
|
||||
}
|
||||
etNoteInput.addTextChangedListener(object : TextWatcher {
|
||||
@@ -312,11 +318,13 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
tvFaultReport.setOnClickListener {
|
||||
if(ClickUtils.isFastClick()){
|
||||
if (level2Name.isEmpty()) {
|
||||
ToastUtils.showShort("请完整填写再上报")
|
||||
// ToastUtils.showShort("请完整填写再上报")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_complete_submit_again)
|
||||
return@setOnClickListener
|
||||
}
|
||||
if (hasLevel3 && level3Name.isEmpty()) {
|
||||
ToastUtils.showShort("请完整填写再上报")
|
||||
// ToastUtils.showShort("请完整填写再上报")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_complete_submit_again)
|
||||
return@setOnClickListener
|
||||
}
|
||||
reportNote = etNoteInput.text.toString()
|
||||
@@ -359,7 +367,8 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
val q = RegeocodeQuery(latLon, 200f, GeocodeSearch.AMAP)
|
||||
geocodeSearch.getFromLocationAsyn(q)
|
||||
}else{
|
||||
ToastUtils.showShort("请勿连续上报,稍后再试")
|
||||
// ToastUtils.showShort("请勿连续上报,稍后再试")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_dot_continuous_upload)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -380,7 +389,8 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
// 不显示听写对话框
|
||||
ret = it.startListening(mRecognizerListener)
|
||||
if (ret != ErrorCode.SUCCESS) {
|
||||
ToastUtils.showShort("听写失败,错误码:$ret,请点击网址https://www.xfyun.cn/document/error-code查询解决方案")
|
||||
// ToastUtils.showShort("听写失败,错误码:$ret,请点击网址https://www.xfyun.cn/document/error-code查询解决方案")
|
||||
ToastUtils.showShort(com.zhjt.mogo_core_function_devatools.R.string.module_mogo_core_function_devatools_iflytek_speech_recognizer_fail, ret)
|
||||
}
|
||||
}
|
||||
//开始录音,展示放大缩小动效
|
||||
@@ -405,7 +415,8 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
*/
|
||||
private val mInitListener = InitListener { code ->
|
||||
if (code != ErrorCode.SUCCESS) {
|
||||
ToastUtils.showShort("讯飞语音听写初始化失败,错误码:$code")
|
||||
// ToastUtils.showShort("讯飞语音听写初始化失败,错误码:$code")
|
||||
ToastUtils.showShort(com.zhjt.mogo_core_function_devatools.R.string.module_mogo_core_function_devatools_iflytek_speech_recognizer_init_fail, code)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -499,7 +510,9 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
|
||||
override fun problemPadAddError(msg: String) {
|
||||
super.problemPadAddError(msg)
|
||||
ToastUtils.showShort("故障原因上报失败$msg")
|
||||
// ToastUtils.showShort("故障原因上报失败$msg")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_fault_cause_upload_fail, msg)
|
||||
|
||||
}
|
||||
|
||||
override fun getCategoriesSuccess(list: List<CategoryInfo>) {
|
||||
@@ -533,7 +546,8 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
hasLevel3 = false
|
||||
} else {
|
||||
hasLevel2 = false
|
||||
ToastUtils.showShort("故障类型列表为空")
|
||||
// ToastUtils.showShort("故障类型列表为空")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_fault_type_list_empty)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -542,7 +556,8 @@ class FaultReasonView @JvmOverloads constructor(
|
||||
override fun getCategoriesError(msg: String) {
|
||||
super.getCategoriesError(msg)
|
||||
if(ProjectUtils.isSaas()){
|
||||
ToastUtils.showShort("故障列表获取失败:$msg")
|
||||
// ToastUtils.showShort("故障列表获取失败:$msg")
|
||||
ToastUtils.showShort(com.zhjt.mogo_core_function_devatools.R.string.module_mogo_core_function_devatools_fault_list_get_fail, msg)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -86,7 +86,8 @@ class ReportTypeView @JvmOverloads constructor(
|
||||
//一键上报
|
||||
ivOneClickReport.setOnClickListener {
|
||||
if(!canOneReport){
|
||||
ToastUtils.showShort("故障描述获取失败不能上报")
|
||||
// ToastUtils.showShort("故障描述获取失败不能上报")
|
||||
ToastUtils.showShort(com.zhjt.mogo_core_function_devatools.R.string.module_mogo_core_function_devatools_fault_des_get_fail)
|
||||
return@setOnClickListener
|
||||
}
|
||||
hasReportOperate = true
|
||||
@@ -145,7 +146,8 @@ class ReportTypeView @JvmOverloads constructor(
|
||||
clickListener?.closeReportView()
|
||||
},1500)
|
||||
}else{
|
||||
ToastUtils.showShort("主动录包命令下发失败")
|
||||
// ToastUtils.showShort("主动录包命令下发失败")
|
||||
ToastUtils.showShort(com.zhjt.mogo_core_function_devatools.R.string.module_mogo_core_function_devatools_initiative_record_bad_cmd_send_fail)
|
||||
this@ReportTypeView.visibility = View.GONE
|
||||
clickListener?.closeReportView()
|
||||
}
|
||||
@@ -236,7 +238,8 @@ class ReportTypeView @JvmOverloads constructor(
|
||||
|
||||
override fun problemPadAddError(msg: String) {
|
||||
super.problemPadAddError(msg)
|
||||
ToastUtils.showShort("故障原因上报失败$msg")
|
||||
// ToastUtils.showShort("故障原因上报失败$msg")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_fault_cause_upload_fail, msg)
|
||||
ThreadUtils.runOnUiThread {
|
||||
this.visibility = View.GONE
|
||||
clickListener?.closeReportView()
|
||||
@@ -246,7 +249,8 @@ class ReportTypeView @JvmOverloads constructor(
|
||||
override fun getCategoriesSuccess(list: List<CategoryInfo>) {
|
||||
super.getCategoriesSuccess(list)
|
||||
if(list.isEmpty()){
|
||||
ToastUtils.showShort("一键上报故障描述后台未配置")
|
||||
// ToastUtils.showShort("一键上报故障描述后台未配置")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_fault_cloud_not_configured)
|
||||
canOneReport = false
|
||||
}else{
|
||||
when (level) {
|
||||
@@ -275,7 +279,8 @@ class ReportTypeView @JvmOverloads constructor(
|
||||
|
||||
override fun getCategoriesError(msg: String) {
|
||||
super.getCategoriesError(msg)
|
||||
ToastUtils.showShort("一键上报故障描述获取失败$msg")
|
||||
// ToastUtils.showShort("一键上报故障描述获取失败$msg")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_fault_desc_get_fail, msg)
|
||||
canOneReport = false
|
||||
}
|
||||
|
||||
|
||||
@@ -34,6 +34,7 @@ import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.util.ClickUtils
|
||||
import com.mogo.eagle.core.utilcode.util.JsonParser
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils.millis2String
|
||||
@@ -100,22 +101,28 @@ class WorkOrderView @JvmOverloads constructor(
|
||||
wrap_radio_group.setOnCheckedChangeListener{_, checkedId ->
|
||||
when(checkedId){
|
||||
R.id.rb_type_software->{
|
||||
workOrderType = "软件"
|
||||
// workOrderType = "软件"
|
||||
workOrderType = StringUtils.getString(R.string.module_core_software)
|
||||
}
|
||||
R.id.rb_type_kit->{
|
||||
workOrderType = "套件"
|
||||
// workOrderType = "套件"
|
||||
workOrderType = StringUtils.getString(R.string.module_core_kit)
|
||||
}
|
||||
R.id.rb_type_vehicle->{
|
||||
workOrderType = "车辆"
|
||||
// workOrderType = "车辆"
|
||||
workOrderType = StringUtils.getString(R.string.module_core_vehicle)
|
||||
}
|
||||
R.id.rb_type_capacity->{
|
||||
workOrderType = "运力"
|
||||
// workOrderType = "运力"
|
||||
workOrderType = StringUtils.getString(R.string.module_core_capacity)
|
||||
}
|
||||
R.id.rb_type_environment->{
|
||||
workOrderType = "环境"
|
||||
// workOrderType = "环境"
|
||||
workOrderType = StringUtils.getString(R.string.module_core_environment)
|
||||
}
|
||||
R.id.rb_type_other->{
|
||||
workOrderType = "其他"
|
||||
// workOrderType = "其他"
|
||||
workOrderType = StringUtils.getString(R.string.module_core_other)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -128,7 +135,8 @@ class WorkOrderView @JvmOverloads constructor(
|
||||
}
|
||||
iv_time_add.setOnClickListener {
|
||||
if(workOrderOccurrenceTime + 60000 > System.currentTimeMillis()){
|
||||
ToastUtils.showShort("发生时间应在当前时间之前")
|
||||
// ToastUtils.showShort("发生时间应在当前时间之前")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_occurrence_time_should_be_before_current_time)
|
||||
return@setOnClickListener
|
||||
}
|
||||
workOrderOccurrenceTime += 60000
|
||||
@@ -140,7 +148,8 @@ class WorkOrderView @JvmOverloads constructor(
|
||||
if(hasFocus){
|
||||
edit.hint = ""
|
||||
}else{
|
||||
edit.hint = "手动输入"
|
||||
// edit.hint = "手动输入"
|
||||
edit.hint = StringUtils.getString(R.string.module_core_manual_input)
|
||||
}
|
||||
}
|
||||
et_describe_input.addTextChangedListener(object: TextWatcher {
|
||||
@@ -184,11 +193,13 @@ class WorkOrderView @JvmOverloads constructor(
|
||||
if(ClickUtils.isFastClick()){
|
||||
//工单问题类型必选,没有选择,进行提示
|
||||
if(workOrderType.isEmpty()){
|
||||
ToastUtils.showShort("请选择问题类型")
|
||||
// ToastUtils.showShort("请选择问题类型")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_choose_issue_type)
|
||||
return@setOnClickListener
|
||||
}
|
||||
if(et_describe_input.text.toString().isEmpty()){
|
||||
ToastUtils.showShort("请填写问题描述")
|
||||
// ToastUtils.showShort("请填写问题描述")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_choose_issue_desc)
|
||||
return@setOnClickListener
|
||||
}
|
||||
GlobalScope.launch(Dispatchers.IO){
|
||||
@@ -212,7 +223,8 @@ class WorkOrderView @JvmOverloads constructor(
|
||||
CallerDevaToolsManager.workOrderReport(workOrderReportInfo)
|
||||
}
|
||||
}else{
|
||||
ToastUtils.showShort("请勿连续上报,稍后再试")
|
||||
// ToastUtils.showShort("请勿连续上报,稍后再试")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_dot_continuous_upload)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -234,7 +246,8 @@ class WorkOrderView @JvmOverloads constructor(
|
||||
// 不显示听写对话框
|
||||
ret = it.startListening(mRecognizerListener)
|
||||
if (ret != ErrorCode.SUCCESS) {
|
||||
ToastUtils.showShort("听写失败,错误码:$ret,请点击网址https://www.xfyun.cn/document/error-code查询解决方案")
|
||||
// ToastUtils.showShort("听写失败,错误码:$ret,请点击网址https://www.xfyun.cn/document/error-code查询解决方案")
|
||||
ToastUtils.showShort(com.zhjt.mogo_core_function_devatools.R.string.module_mogo_core_function_devatools_iflytek_speech_recognizer_fail, ret)
|
||||
}
|
||||
}
|
||||
//开始录音,展示放大缩小动效
|
||||
@@ -258,7 +271,8 @@ class WorkOrderView @JvmOverloads constructor(
|
||||
*/
|
||||
private val mInitListener = InitListener { code ->
|
||||
if (code != ErrorCode.SUCCESS) {
|
||||
ToastUtils.showShort("讯飞语音听写初始化失败,错误码:$code")
|
||||
// ToastUtils.showShort("讯飞语音听写初始化失败,错误码:$code")
|
||||
ToastUtils.showShort(com.zhjt.mogo_core_function_devatools.R.string.module_mogo_core_function_devatools_iflytek_speech_recognizer_init_fail, code)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -322,7 +336,8 @@ class WorkOrderView @JvmOverloads constructor(
|
||||
}
|
||||
|
||||
override fun workOrderReportSuccess() {
|
||||
ToastUtils.showShort("工单上报成功")
|
||||
// ToastUtils.showShort("工单上报成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_work_order_upload_success)
|
||||
ThreadUtils.runOnUiThread {
|
||||
this@WorkOrderView.visibility = View.GONE
|
||||
clickListener?.closeWorkOrderView()
|
||||
@@ -330,7 +345,8 @@ class WorkOrderView @JvmOverloads constructor(
|
||||
}
|
||||
|
||||
override fun workOrderReportError() {
|
||||
ToastUtils.showShort("工单上报失败")
|
||||
// ToastUtils.showShort("工单上报失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_work_order_upload_fail)
|
||||
}
|
||||
|
||||
interface ClickListener{
|
||||
|
||||
@@ -20,6 +20,7 @@ import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.GlideApp
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.transform.GlideRoundedCornersTransform
|
||||
import com.mogo.eagle.core.utilcode.util.ResourceUtils.getDrawable
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils.getHourMinFormat
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
@@ -182,12 +183,14 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
holder.tvBagReceiveTime.text =
|
||||
TimeUtils.millis2String(it[position].timestamp, getHourMinFormat())
|
||||
holder.tvBagRecordTime.text =
|
||||
"时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
// "时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
val msgBoxBean = it[position]
|
||||
val recordBagMsg = msgBoxBean.bean as RecordBagMsg
|
||||
holder.tvRecordCheck.setOnClickListener {
|
||||
if(recordBagMsg.isShow){
|
||||
ToastUtils.showShort("当前录包上报面板已打开,请勿重复操作")
|
||||
// ToastUtils.showShort("当前录包上报面板已打开,请勿重复操作")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_bad_case_view_opened)
|
||||
}else{
|
||||
//打开被动录包弹窗
|
||||
CallerDevaToolsManager.onReceiveBadCaseRecord(msgBoxBean, activity, false)
|
||||
@@ -202,13 +205,16 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
val fmInfoMsg = it[position].bean as FMInfoMsg
|
||||
//时间显示
|
||||
holder.tvFmTime.text =
|
||||
"时间:${fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1) }}"
|
||||
// "时间:${fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1) }}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1) }}"
|
||||
//建议操作
|
||||
if(fmInfoMsg.fmInfoList.isNullOrEmpty()){
|
||||
//建议操作暂无
|
||||
holder.tvFmAction.text = "建议操作:暂无"
|
||||
// holder.tvFmAction.text = "建议操作:暂无"
|
||||
holder.tvFmAction.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
//Title
|
||||
holder.tvFmTitle.text = "暂无建议操作"
|
||||
// holder.tvFmTitle.text = "暂无建议操作"
|
||||
holder.tvFmTitle.text = StringUtils.getString(R.string.module_core_not_available_suggested_procedure)
|
||||
}else{
|
||||
val receiveFaultLevel = ArrayList<Int>()
|
||||
fmInfoMsg.fmInfoList!!.forEach { info ->
|
||||
@@ -224,7 +230,8 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
//对faultLevel集合进行排序,按照顺序输出建议操作
|
||||
if(receiveFaultLevel.size > 0){
|
||||
val faultActionStr: StringBuilder = StringBuilder()
|
||||
faultActionStr.append("建议操作:")
|
||||
// faultActionStr.append("建议操作:")
|
||||
faultActionStr.append(StringUtils.getString(R.string.module_core_suggested_procedure))
|
||||
receiveFaultLevel.sort()
|
||||
// receiveFaultLevel.reverse()
|
||||
//Title
|
||||
@@ -263,22 +270,27 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
}
|
||||
holder.tvFmAction.text = faultActionStr.toString()
|
||||
}else{
|
||||
holder.tvFmAction.text = "建议操作:暂无"
|
||||
// holder.tvFmAction.text = "建议操作:暂无"
|
||||
holder.tvFmAction.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
}
|
||||
}else{
|
||||
holder.tvFmAction.text = "建议操作:暂无"
|
||||
// holder.tvFmAction.text = "建议操作:暂无"
|
||||
holder.tvFmAction.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
//轻度预警样式
|
||||
holder.ivFmImage.setImageDrawable(getDrawable(R.drawable.icon_fm_mild_warning))
|
||||
}
|
||||
}
|
||||
//故障策略
|
||||
holder.tvFmFault.text = "故障策略:${MsgFmData.getFmPolicyName(fmInfoMsg.policyCode)}(${fmInfoMsg.policyCode})"
|
||||
// holder.tvFmFault.text = "故障策略:${MsgFmData.getFmPolicyName(fmInfoMsg.policyCode)}(${fmInfoMsg.policyCode})"
|
||||
holder.tvFmFault.text = "${StringUtils.getString(R.string.module_core_fault_handling_strategy)}${MsgFmData.getFmPolicyName(fmInfoMsg.policyCode)}(${fmInfoMsg.policyCode})"
|
||||
//故障原因
|
||||
if(fmInfoMsg.fmInfoList.isNullOrEmpty()){
|
||||
holder.tvFmReason.text = "故障原因:暂无"
|
||||
// holder.tvFmReason.text = "故障原因:暂无"
|
||||
holder.tvFmReason.text = StringUtils.getString(R.string.module_core_failure_cause_not_available)
|
||||
}else{
|
||||
val fmFaultReason = StringBuilder()
|
||||
fmFaultReason.append("故障原因:")
|
||||
// fmFaultReason.append("故障原因:")
|
||||
fmFaultReason.append(StringUtils.getString(R.string.module_core_failure_cause))
|
||||
for((index,info) in fmInfoMsg.fmInfoList!!.withIndex()){
|
||||
fmFaultReason.append(info.faultName)
|
||||
if(info.faultId.isNotBlank()){
|
||||
@@ -294,10 +306,12 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
}
|
||||
//故障后果
|
||||
if(fmInfoMsg.fmInfoList.isNullOrEmpty()){
|
||||
holder.tvFmResult.text = "故障后果:暂无"
|
||||
// holder.tvFmResult.text = "故障后果:暂无"
|
||||
holder.tvFmResult.text = StringUtils.getString(R.string.module_core_consequences_failure_not_available)
|
||||
}else{
|
||||
val fmFaultResult = StringBuilder()
|
||||
fmFaultResult.append("故障后果:")
|
||||
// fmFaultResult.append("故障后果:")
|
||||
fmFaultResult.append(StringUtils.getString(R.string.module_core_consequences_failure))
|
||||
fmInfoMsg.fmInfoList!!.forEach { info->
|
||||
if(info.faultResultCount != 0){
|
||||
info.faultResultList.forEach { result->
|
||||
@@ -318,17 +332,20 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
if(fmFaultResult.endsWith("/")){
|
||||
holder.tvFmResult.text = fmFaultResult.deleteCharAt(fmFaultResult.lastIndex).toString()
|
||||
}else{
|
||||
holder.tvFmResult.text = "故障后果:暂无"
|
||||
// holder.tvFmResult.text = "故障后果:暂无"
|
||||
holder.tvFmResult.text = StringUtils.getString(R.string.module_core_consequences_failure_not_available)
|
||||
}
|
||||
}
|
||||
//对布局进行展开折叠操作
|
||||
if(fmInfoMsg.isShow){
|
||||
holder.tvFmShowStatus.text = "收起"
|
||||
// holder.tvFmShowStatus.text = "收起"
|
||||
holder.tvFmShowStatus.text = StringUtils.getString(R.string.module_core_pack_up)
|
||||
holder.tvFmFault.visibility = View.VISIBLE
|
||||
holder.tvFmReason.visibility = View.VISIBLE
|
||||
holder.tvFmResult.visibility = View.VISIBLE
|
||||
}else{
|
||||
holder.tvFmShowStatus.text = "展开"
|
||||
// holder.tvFmShowStatus.text = "展开"
|
||||
holder.tvFmShowStatus.text = StringUtils.getString(R.string.module_core_unfold)
|
||||
holder.tvFmFault.visibility = View.GONE
|
||||
holder.tvFmReason.visibility = View.GONE
|
||||
holder.tvFmResult.visibility = View.GONE
|
||||
@@ -336,13 +353,15 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
holder.tvFmShowStatus.setOnClickListener{
|
||||
if(!fmInfoMsg.isShow){
|
||||
fmInfoMsg.isShow = true
|
||||
holder.tvFmShowStatus.text = "收起"
|
||||
// holder.tvFmShowStatus.text = "收起"
|
||||
holder.tvFmShowStatus.text = StringUtils.getString(R.string.module_core_pack_up)
|
||||
holder.tvFmFault.visibility = View.VISIBLE
|
||||
holder.tvFmReason.visibility = View.VISIBLE
|
||||
holder.tvFmResult.visibility = View.VISIBLE
|
||||
}else{
|
||||
fmInfoMsg.isShow = false
|
||||
holder.tvFmShowStatus.text = "展开"
|
||||
// holder.tvFmShowStatus.text = "展开"
|
||||
holder.tvFmShowStatus.text = StringUtils.getString(R.string.module_core_unfold)
|
||||
holder.tvFmFault.visibility = View.GONE
|
||||
holder.tvFmReason.visibility = View.GONE
|
||||
holder.tvFmResult.visibility = View.GONE
|
||||
@@ -355,7 +374,8 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
data?.let { it ->
|
||||
val reportMsgBox = it[position]
|
||||
holder.tvReportTime.text =
|
||||
"时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
// "时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
val reportEntity = (it[position].bean as ReportEntity)
|
||||
if (reportEntity.resultList.contains(RESULT_AUTOPILOT_DISABLE)
|
||||
|| reportEntity.resultList.contains(RESULT_AUTOPILOT_SYSTEM_UNSTARTED)
|
||||
@@ -378,29 +398,36 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
}
|
||||
|
||||
holder.tvReportTime.text =
|
||||
"时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
var resultStr = "类型:"
|
||||
// "时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
// var resultStr = "类型:"
|
||||
var resultStr = StringUtils.getString(R.string.module_core_type)
|
||||
for (result in reportEntity.resultList) {
|
||||
resultStr =
|
||||
"${resultStr}${CallerAutoPilotControlManager.getReportResultDesc(result)}"
|
||||
}
|
||||
holder.tvReportType.text = resultStr
|
||||
holder.tvReportReason.text = "原因:${reportEntity.msg}"
|
||||
holder.tvReportSrc.text = "消息来源:${reportEntity.src}"
|
||||
// holder.tvReportReason.text = "原因:${reportEntity.msg}"
|
||||
holder.tvReportReason.text = "${StringUtils.getString(R.string.module_core_cause1)}${reportEntity.msg}"
|
||||
// holder.tvReportSrc.text = "消息来源:${reportEntity.src}"
|
||||
holder.tvReportSrc.text = "${StringUtils.getString(R.string.module_core_message_source)}${reportEntity.src}"
|
||||
var actionStr = ""
|
||||
for (action in reportEntity.actionsList) {
|
||||
actionStr =
|
||||
"${actionStr}${CallerAutoPilotControlManager.getReportActionDesc(action)}"
|
||||
}
|
||||
holder.tvReportAction.text = "建议操作:$actionStr"
|
||||
// holder.tvReportAction.text = "建议操作:$actionStr"
|
||||
holder.tvReportAction.text = "${StringUtils.getString(R.string.module_core_suggested_procedure)}$actionStr"
|
||||
holder.tvReportShowStatus.tag = reportEntity
|
||||
if(reportEntity.isShow){
|
||||
holder.tvReportShowStatus.text = "收起"
|
||||
// holder.tvReportShowStatus.text = "收起"
|
||||
holder.tvReportShowStatus.text = StringUtils.getString(R.string.module_core_pack_up)
|
||||
holder.tvReportReason.visibility = View.VISIBLE
|
||||
holder.tvReportSrc.visibility = View.VISIBLE
|
||||
holder.tvReportAction.visibility = View.VISIBLE
|
||||
}else{
|
||||
holder.tvReportShowStatus.text = "展开"
|
||||
// holder.tvReportShowStatus.text = "展开"
|
||||
holder.tvReportShowStatus.text = StringUtils.getString(R.string.module_core_unfold)
|
||||
holder.tvReportReason.visibility = View.GONE
|
||||
holder.tvReportSrc.visibility = View.GONE
|
||||
holder.tvReportAction.visibility = View.GONE
|
||||
@@ -408,13 +435,15 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
holder.tvReportShowStatus.setOnClickListener {
|
||||
if (!reportEntity.isShow) {
|
||||
reportEntity.isShow = true
|
||||
holder.tvReportShowStatus.text = "收起"
|
||||
// holder.tvReportShowStatus.text = "收起"
|
||||
holder.tvReportShowStatus.text = StringUtils.getString(R.string.module_core_pack_up)
|
||||
holder.tvReportReason.visibility = View.VISIBLE
|
||||
holder.tvReportSrc.visibility = View.VISIBLE
|
||||
holder.tvReportAction.visibility = View.VISIBLE
|
||||
} else {
|
||||
reportEntity.isShow = false
|
||||
holder.tvReportShowStatus.text = "展开"
|
||||
// holder.tvReportShowStatus.text = "展开"
|
||||
holder.tvReportShowStatus.text = StringUtils.getString(R.string.module_core_unfold)
|
||||
holder.tvReportReason.visibility = View.GONE
|
||||
holder.tvReportSrc.visibility = View.GONE
|
||||
holder.tvReportAction.visibility = View.GONE
|
||||
@@ -579,7 +608,8 @@ class MsgBoxTabAdapter(private val activity: Activity) :
|
||||
holder.tvOTATitle.text = otaMsg.title
|
||||
holder.tvOTAContent.text = otaMsg.des
|
||||
holder.tvOTATime.text = TimeUtils.millis2String(it[position].timestamp,getHourMinFormat())
|
||||
if(otaMsg.type == "成功"){
|
||||
// if(otaMsg.type == "成功"){
|
||||
if(otaMsg.type == StringUtils.getString(R.string.module_core_succeed)){
|
||||
holder.ivOTAImage.setImageDrawable(getDrawable(R.drawable.icon_ota_msg_success))
|
||||
}else{
|
||||
holder.ivOTAImage.setImageDrawable(getDrawable(R.drawable.icon_ota_msg_fail))
|
||||
|
||||
@@ -44,15 +44,18 @@ class ToolDriverRomaView @JvmOverloads constructor(
|
||||
|
||||
toolDriverRomaContainer.setOnClickListener {
|
||||
if (ClickUtils.isClickTooFrequent(this, 2500)) {
|
||||
ToastUtils.showShort("不要频繁点击哦~")
|
||||
// ToastUtils.showShort("不要频繁点击哦~")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_dot_often_click)
|
||||
return@setOnClickListener
|
||||
}
|
||||
if (!click) {
|
||||
ToastUtils.showShort("漫游准备中,请等待")
|
||||
// ToastUtils.showShort("漫游准备中,请等待")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_roam_starting)
|
||||
return@setOnClickListener
|
||||
}
|
||||
if (!MogoStatusManager.getInstance().isSocketOnLine) {
|
||||
ToastUtils.showShort("长链状态异常,请检查链接后开启漫游")
|
||||
// ToastUtils.showShort("长链状态异常,请检查链接后开启漫游")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_long_connection_state_error)
|
||||
return@setOnClickListener
|
||||
}
|
||||
click = false
|
||||
|
||||
@@ -48,7 +48,8 @@ class ToolRestartSystemView @JvmOverloads constructor(
|
||||
*/
|
||||
private fun showRebootDialog() {
|
||||
if (!connectStatus) {
|
||||
ToastUtils.showShort("尚未连接工控机,无法重启系统")
|
||||
// ToastUtils.showShort("尚未连接工控机,无法重启系统")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_not_sent_reboot_ipc)
|
||||
return
|
||||
}
|
||||
//dialog
|
||||
@@ -58,12 +59,14 @@ class ToolRestartSystemView @JvmOverloads constructor(
|
||||
override fun confirm() {
|
||||
if (CallerAutoPilotStatusListenerManager.getState() == 2) {
|
||||
//当前处于自动驾驶状态,不可进行重启,Toast提示
|
||||
ToastUtils.showShort("请先退出自动驾驶状态")
|
||||
// ToastUtils.showShort("请先退出自动驾驶状态")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_please_exit_autopilot_state)
|
||||
} else {
|
||||
//确认重启
|
||||
CallerLogger.d("$M_HMI$TAG", "reboot confirm")
|
||||
CallerAutoPilotControlManager.sendIpcReboot()
|
||||
ToastUtils.showLong("重启命令已发送")
|
||||
// ToastUtils.showLong("重启命令已发送")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_send_reboot_success)
|
||||
//打开冷启动页面
|
||||
CallerHmiManager.showColdStartWindow()
|
||||
}
|
||||
|
||||
@@ -28,6 +28,7 @@ import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.ui.utils.HmiActionLog.Companion.hmiAction
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
|
||||
import com.mogo.eagle.core.utilcode.util.ParseVersionUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.zhjt.mogo.adas.common.MessageType
|
||||
@@ -200,30 +201,36 @@ class ToolStopServiceView @JvmOverloads constructor(
|
||||
*/
|
||||
private fun powerOff() {
|
||||
if (!connectStatus) {
|
||||
ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令")
|
||||
// ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_not_sent_shutdown_ipc)
|
||||
return
|
||||
}
|
||||
if (AppConfigInfo.dockerVersion.isEmpty()) {
|
||||
ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令")
|
||||
// ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_not_sent_shutdown_ipc)
|
||||
return
|
||||
}
|
||||
if (ParseVersionUtils.parseVersion(true, AppConfigInfo.dockerVersion) < 40100) {
|
||||
ToastUtils.showShort("此域控版本不支持一键停服功能,最低支持版本为4.1.0")
|
||||
// ToastUtils.showShort("此域控版本不支持一键停服功能,最低支持版本为4.1.0")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_ipc_version_nonsupport_shutdown_ipc)
|
||||
return
|
||||
}
|
||||
if (CallerAutoPilotStatusListenerManager.getState() == 2) {
|
||||
//当前处于自动驾驶状态,不可进行重启,Toast提示
|
||||
ToastUtils.showShort("请先退出自动驾驶状态")
|
||||
// ToastUtils.showShort("请先退出自动驾驶状态")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_please_exit_autopilot_state)
|
||||
return
|
||||
}
|
||||
if (isExecutingPowerOff) {
|
||||
//一键停服命令下发执行中
|
||||
ToastUtils.showShort("一键停服命令下发中,请勿重复点击")
|
||||
// ToastUtils.showShort("一键停服命令下发中,请勿重复点击")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_sending_shutdown_ipc)
|
||||
return
|
||||
}
|
||||
if (isPowerOffCountDown) {
|
||||
//系统停服中
|
||||
ToastUtils.showShort("系统停服中,请勿重复点击")
|
||||
// ToastUtils.showShort("系统停服中,请勿重复点击")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_shutdowning_ipc)
|
||||
return
|
||||
}
|
||||
//将是否正在下发一键停服命令标签改为true
|
||||
@@ -378,7 +385,8 @@ class ToolStopServiceView @JvmOverloads constructor(
|
||||
if (receivedAck.status == ReceivedAck.Status.NORMAL) {
|
||||
//一键停服命令回执成功,则正常进入停服阶段中,1分钟倒计时,并且TTS和消息盒子提示
|
||||
CallerDevaToolsManager.setPowerOffStatus(2)
|
||||
AIAssist.getInstance(context).speakTTSVoice("请等待1分钟再执行车辆下电")
|
||||
// AIAssist.getInstance(context).speakTTSVoice("请等待1分钟再执行车辆下电")
|
||||
AIAssist.getInstance(context).speakTTSVoice(StringUtils.getString(R.string.module_core_one_minute_later_power_off))
|
||||
saveMsgBox(
|
||||
MsgBoxBean(
|
||||
MsgBoxType.V2X, V2XMsg(
|
||||
|
||||
@@ -2,6 +2,8 @@ package com.mogo.eagle.core.function.hmi.notification
|
||||
|
||||
import android.content.Context
|
||||
import android.util.Log
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import java.util.concurrent.ConcurrentHashMap
|
||||
|
||||
/**
|
||||
@@ -26,7 +28,8 @@ internal object WarningFloatWindowManager {
|
||||
} else {
|
||||
Log.w(TAG, "存在相同的tag,延长弹窗时间")
|
||||
// 存在相同的tag,直接创建失败
|
||||
config.callbacks?.createdResult(false, "存在相同的tag,延长弹窗时间", null)
|
||||
// config.callbacks?.createdResult(false, "存在相同的tag,延长弹窗时间", null)
|
||||
config.callbacks?.createdResult(false, StringUtils.getString(R.string.module_core_have_tag_lengthen_popup_window_time), null)
|
||||
windowMap[config.floatTag!!]?.resetDownTime()
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -25,6 +25,7 @@ import com.mogo.eagle.core.function.call.biz.CallerFuncBizManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.widget.media.video.SimpleVideoPlayer
|
||||
import com.shuyu.gsyvideoplayer.GSYVideoManager
|
||||
import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder
|
||||
@@ -51,11 +52,13 @@ class CameraListView : FrameLayout {
|
||||
GSYVideoOptionBuilder()
|
||||
}
|
||||
private val spannableStringBuilder by lazy {
|
||||
SpannableStringBuilder("当前设备暂无信号,切换其他摄像头 3S")
|
||||
// SpannableStringBuilder("当前设备暂无信号,切换其他摄像头 3S")
|
||||
SpannableStringBuilder(StringUtils.getString(R.string.module_core_no_signal_switch_camera))
|
||||
}
|
||||
|
||||
private val spannableStringBuilder2 by lazy {
|
||||
SpannableStringBuilder("当前路口信号丢失,3S 后自动关闭")
|
||||
// SpannableStringBuilder("当前路口信号丢失,3S 后自动关闭")
|
||||
SpannableStringBuilder(StringUtils.getString(R.string.module_core_alert_intersection_signal_lost_auto_close))
|
||||
}
|
||||
private var isCloseStatus = true
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@ import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.ui.diskcopy.adapter.DiskCopyCalendarAdapter
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
|
||||
import com.mogo.eagle.core.utilcode.util.ClickUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import kotlinx.android.synthetic.main.view_disk_copy.view.groupDateSelect
|
||||
@@ -98,30 +99,37 @@ class DiskCopyView @JvmOverloads constructor(
|
||||
//开始拷贝数据
|
||||
val result = CallerAutoPilotControlManager.sendCopyBagCopyDate(currentCopyDate)
|
||||
if(result){
|
||||
ToastUtils.showShort("已发起拷贝")
|
||||
// ToastUtils.showShort("已发起拷贝")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_start_copy)
|
||||
}else{
|
||||
ToastUtils.showShort("拷贝命令发送失败")
|
||||
// ToastUtils.showShort("拷贝命令发送失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_copy_cmd_error)
|
||||
}
|
||||
}
|
||||
2 -> {
|
||||
//拷贝中
|
||||
ToastUtils.showShort("正在拷贝中...")
|
||||
// ToastUtils.showShort("正在拷贝中...")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_copying)
|
||||
}
|
||||
3 -> {
|
||||
//拷贝成功
|
||||
ToastUtils.showShort("当前日期数据已拷贝成功")
|
||||
// ToastUtils.showShort("当前日期数据已拷贝成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_now_date_copy_success)
|
||||
}
|
||||
4 -> {
|
||||
//剩余空间不足
|
||||
ToastUtils.showShort("当前硬盘剩余空间不足")
|
||||
// ToastUtils.showShort("当前硬盘剩余空间不足")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_insufficient_disk_space)
|
||||
}
|
||||
5 -> {
|
||||
//所选日期无法拷贝
|
||||
ToastUtils.showShort("所选日期无法拷贝")
|
||||
// ToastUtils.showShort("所选日期无法拷贝")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_choose_date_not_copy)
|
||||
}
|
||||
}
|
||||
}else{
|
||||
ToastUtils.showShort("请勿连续点击,稍后再试")
|
||||
// ToastUtils.showShort("请勿连续点击,稍后再试")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_bad_case_do_no_click_continuously)
|
||||
}
|
||||
}
|
||||
//拔出硬盘
|
||||
@@ -134,13 +142,16 @@ class DiskCopyView @JvmOverloads constructor(
|
||||
//如果处于未拷贝状态,则调用硬盘安全弹出请求
|
||||
val result = CallerAutoPilotControlManager.sendCopyBagSafeUnmount()
|
||||
if(result){
|
||||
ToastUtils.showShort("硬盘安全弹出命令已发送")
|
||||
// ToastUtils.showShort("硬盘安全弹出命令已发送")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_disk_safely_ejecting)
|
||||
}else{
|
||||
ToastUtils.showShort("硬盘安全弹出命令发送失败")
|
||||
// ToastUtils.showShort("硬盘安全弹出命令发送失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_disk_safely_ejecting_fail)
|
||||
}
|
||||
}
|
||||
}else{
|
||||
ToastUtils.showShort("请勿连续点击,稍后再试")
|
||||
// ToastUtils.showShort("请勿连续点击,稍后再试")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_bad_case_do_no_click_continuously)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -148,7 +159,8 @@ class DiskCopyView @JvmOverloads constructor(
|
||||
viewDiskCopyDate.setOnClickListener {
|
||||
if(copyStatus == 2){
|
||||
//数据拷贝中,不可再选择日期
|
||||
ToastUtils.showShort("数据拷贝中,不可再次选择日期,请耐心等待")
|
||||
// ToastUtils.showShort("数据拷贝中,不可再次选择日期,请耐心等待")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_data_copying)
|
||||
}else{
|
||||
//隐藏当前视图
|
||||
pbDiskCopyProgress.visibility = View.GONE
|
||||
@@ -163,52 +175,71 @@ class DiskCopyView @JvmOverloads constructor(
|
||||
val formatIpc = SimpleDateFormat("yyyyMMdd", Locale.CHINA)
|
||||
val formatUi = SimpleDateFormat("yyyy.MM.dd",Locale.CHINA)
|
||||
//添加日历星期标题头
|
||||
calendarList.add(CopyCalendarInfo(true,"日"))
|
||||
calendarList.add(CopyCalendarInfo(true,"一"))
|
||||
calendarList.add(CopyCalendarInfo(true,"二"))
|
||||
calendarList.add(CopyCalendarInfo(true,"三"))
|
||||
calendarList.add(CopyCalendarInfo(true,"四"))
|
||||
calendarList.add(CopyCalendarInfo(true,"五"))
|
||||
calendarList.add(CopyCalendarInfo(true,"六"))
|
||||
// calendarList.add(CopyCalendarInfo(true,"日"))
|
||||
calendarList.add(CopyCalendarInfo(true,StringUtils.getString(R.string.module_core_sunday)))
|
||||
// calendarList.add(CopyCalendarInfo(true,"一"))
|
||||
calendarList.add(CopyCalendarInfo(true,StringUtils.getString(R.string.module_core_monday)))
|
||||
// calendarList.add(CopyCalendarInfo(true,"二"))
|
||||
calendarList.add(CopyCalendarInfo(true,StringUtils.getString(R.string.module_core_tuesday)))
|
||||
// calendarList.add(CopyCalendarInfo(true,"三"))
|
||||
calendarList.add(CopyCalendarInfo(true,StringUtils.getString(R.string.module_core_wednesday)))
|
||||
// calendarList.add(CopyCalendarInfo(true,"四"))
|
||||
calendarList.add(CopyCalendarInfo(true,StringUtils.getString(R.string.module_core_thursday)))
|
||||
// calendarList.add(CopyCalendarInfo(true,"五"))
|
||||
calendarList.add(CopyCalendarInfo(true,StringUtils.getString(R.string.module_core_friday)))
|
||||
// calendarList.add(CopyCalendarInfo(true,"六"))
|
||||
calendarList.add(CopyCalendarInfo(true,StringUtils.getString(R.string.module_core_saturday)))
|
||||
|
||||
val calendar: Calendar = Calendar.getInstance(TimeZone.getTimeZone("GMT+8"))
|
||||
val currentMonth = calendar.get(Calendar.MONTH)
|
||||
tvCurrentMonth.text = when(currentMonth){
|
||||
Calendar.JANUARY->{
|
||||
"一月"
|
||||
// "一月"
|
||||
StringUtils.getString(R.string.module_core_january)
|
||||
}
|
||||
Calendar.FEBRUARY->{
|
||||
"二月"
|
||||
// "二月"
|
||||
StringUtils.getString(R.string.module_core_february)
|
||||
}
|
||||
Calendar.MARCH->{
|
||||
"三月"
|
||||
// "三月"
|
||||
StringUtils.getString(R.string.module_core_march)
|
||||
}
|
||||
Calendar.APRIL->{
|
||||
"四月"
|
||||
// "四月"
|
||||
StringUtils.getString(R.string.module_core_april)
|
||||
}
|
||||
Calendar.MAY->{
|
||||
"五月"
|
||||
// "五月"
|
||||
StringUtils.getString(R.string.module_core_may)
|
||||
}
|
||||
Calendar.JUNE->{
|
||||
"六月"
|
||||
// "六月"
|
||||
StringUtils.getString(R.string.module_core_june)
|
||||
}
|
||||
Calendar.JULY->{
|
||||
"七月"
|
||||
// "七月"
|
||||
StringUtils.getString(R.string.module_core_july)
|
||||
}
|
||||
Calendar.AUGUST->{
|
||||
"八月"
|
||||
// "八月"
|
||||
StringUtils.getString(R.string.module_core_august)
|
||||
}
|
||||
Calendar.SEPTEMBER->{
|
||||
"九月"
|
||||
// "九月"
|
||||
StringUtils.getString(R.string.module_core_september)
|
||||
}
|
||||
Calendar.OCTOBER->{
|
||||
"十月"
|
||||
// "十月"
|
||||
StringUtils.getString(R.string.module_core_october)
|
||||
}
|
||||
Calendar.NOVEMBER->{
|
||||
"十一月"
|
||||
// "十一月"
|
||||
StringUtils.getString(R.string.module_core_november)
|
||||
}
|
||||
Calendar.DECEMBER->{
|
||||
"十二月"
|
||||
// "十二月"
|
||||
StringUtils.getString(R.string.module_core_december)
|
||||
}
|
||||
else -> {
|
||||
""
|
||||
@@ -380,31 +411,38 @@ class DiskCopyView @JvmOverloads constructor(
|
||||
return when(currentWeek){
|
||||
//星期日
|
||||
Calendar.SUNDAY->{
|
||||
"周日"
|
||||
// "周日"
|
||||
StringUtils.getString(R.string.module_core_sunday1)
|
||||
}
|
||||
//星期一
|
||||
Calendar.MONDAY->{
|
||||
"周一"
|
||||
// "周一"
|
||||
StringUtils.getString(R.string.module_core_monday1)
|
||||
}
|
||||
//星期二
|
||||
Calendar.TUESDAY->{
|
||||
"周二"
|
||||
// "周二"
|
||||
StringUtils.getString(R.string.module_core_tuesday1)
|
||||
}
|
||||
//星期三
|
||||
Calendar.WEDNESDAY->{
|
||||
"周三"
|
||||
// "周三"
|
||||
StringUtils.getString(R.string.module_core_wednesday1)
|
||||
}
|
||||
//星期四
|
||||
Calendar.THURSDAY->{
|
||||
"周四"
|
||||
// "周四"
|
||||
StringUtils.getString(R.string.module_core_thursday1)
|
||||
}
|
||||
//星期五
|
||||
Calendar.FRIDAY->{
|
||||
"周五"
|
||||
// "周五"
|
||||
StringUtils.getString(R.string.module_core_friday1)
|
||||
}
|
||||
//星期六
|
||||
Calendar.SATURDAY->{
|
||||
"周六"
|
||||
// "周六"
|
||||
StringUtils.getString(R.string.module_core_saturday1)
|
||||
}
|
||||
else->{
|
||||
""
|
||||
@@ -556,7 +594,8 @@ class DiskCopyView @JvmOverloads constructor(
|
||||
//硬盘是否已安全弹出,是-True,否-False
|
||||
Logger.i(TAG,"硬盘是否已安全弹出,是-True,否-False="+diskCopy.diskUnmount)
|
||||
if(diskCopy.diskUnmount){
|
||||
ToastUtils.showShort("硬盘已安全弹出")
|
||||
// ToastUtils.showShort("硬盘已安全弹出")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_disk_safely_ejecting)
|
||||
//隐藏数据落盘辅助工具视图
|
||||
this@DiskCopyView.visibility = View.GONE
|
||||
}
|
||||
|
||||
@@ -30,9 +30,11 @@ class TerminateCopyDataDialog(context: Context) :
|
||||
tvCopyTerminateConfirm.setOnClickListener {
|
||||
val result = CallerAutoPilotControlManager.sendCopyBagAbortCopy()
|
||||
if(result){
|
||||
ToastUtils.showShort("终止数据拷贝命令已发送")
|
||||
// ToastUtils.showShort("终止数据拷贝命令已发送")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_stop_copy)
|
||||
}else{
|
||||
ToastUtils.showShort("终止数据拷贝命令发送失败")
|
||||
// ToastUtils.showShort("终止数据拷贝命令发送失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_stop_copy_fail)
|
||||
}
|
||||
dismiss()
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ import com.mogo.eagle.core.function.api.autopilot.*
|
||||
import com.mogo.eagle.core.function.api.lookaround.data.*
|
||||
import com.mogo.eagle.core.function.call.autopilot.*
|
||||
import com.mogo.eagle.core.function.call.devatools.*
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.kotlin.*
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
|
||||
@@ -299,7 +300,8 @@ class M1LookAroundView: SurfaceView, SurfaceHolder.Callback, Runnable, IMoGoChas
|
||||
delay(5000)
|
||||
val d = data
|
||||
if (d == null || !d.isValid()) {
|
||||
Toast.makeText(Utils.getApp(), "当前MAP版本不支持360环视,请升级MAP版本", Toast.LENGTH_SHORT).show()
|
||||
// Toast.makeText(Utils.getApp(), "当前MAP版本不支持360环视,请升级MAP版本", Toast.LENGTH_SHORT).show()
|
||||
Toast.makeText(Utils.getApp(), R.string.module_core_ipc_version_nonsupport_360_look_around, Toast.LENGTH_SHORT).show()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,7 +91,8 @@ class MoFangStatusView : LinearLayout, OnMoFangStatusListener, IMoGoAutopilotSta
|
||||
return
|
||||
}
|
||||
if (!CallerAutoPilotStatusListenerManager.isConnect()) {
|
||||
ToastUtils.showShort("工控机连接异常,无法执行魔方命令")
|
||||
// ToastUtils.showShort("工控机连接异常,无法执行魔方命令")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_ipc_disconnect_not_use_mofang)
|
||||
return
|
||||
}
|
||||
if (keyCode == KeyEvent.KEYCODE_A) {
|
||||
@@ -169,7 +170,8 @@ class MoFangStatusView : LinearLayout, OnMoFangStatusListener, IMoGoAutopilotSta
|
||||
return
|
||||
}
|
||||
if (!CallerAutoPilotStatusListenerManager.isConnect()) {
|
||||
ToastUtils.showShort("工控机连接异常,无法执行魔方命令")
|
||||
// ToastUtils.showShort("工控机连接异常,无法执行魔方命令")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_ipc_disconnect_not_use_mofang)
|
||||
return
|
||||
}
|
||||
if (keyCode == KeyEvent.KEYCODE_A) {
|
||||
@@ -218,7 +220,8 @@ class MoFangStatusView : LinearLayout, OnMoFangStatusListener, IMoGoAutopilotSta
|
||||
return
|
||||
}
|
||||
if (!CallerAutoPilotStatusListenerManager.isConnect()) {
|
||||
ToastUtils.showShort("工控机连接异常,无法执行魔方命令")
|
||||
// ToastUtils.showShort("工控机连接异常,无法执行魔方命令")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_ipc_disconnect_not_use_mofang)
|
||||
return
|
||||
}
|
||||
if (keyCodes.size != 2) {
|
||||
|
||||
@@ -37,6 +37,7 @@ import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.ui.msgbox.adapter.DriverMsgBoxBubbleAdapter
|
||||
import com.mogo.eagle.core.function.msgbox.MsgBoxConfig
|
||||
import com.mogo.eagle.core.utilcode.util.SoundPoolUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.zhjt.mogo.adas.data.AdasConstants
|
||||
import com.zhjt.mogo.adas.data.AdasConstants.NodeState
|
||||
@@ -219,7 +220,8 @@ class DriverMsgBoxBubbleView @JvmOverloads constructor(
|
||||
CallerHmiManager.warningV2X(
|
||||
EventTypeEnumNew.TAKE_OVER_EVENT.poiType,
|
||||
EventTypeEnumNew.TAKE_OVER_EVENT.content,
|
||||
"识别车辆故障,建议安全停车并查看操作建议",
|
||||
// "识别车辆故障,建议安全停车并查看操作建议",
|
||||
StringUtils.getString(R.string.module_core_warning_vehicle_fault_safe_park),
|
||||
object : IMoGoWarningStatusListener {
|
||||
override fun onShow() {
|
||||
CallerTakeOverManager.invokeTakeOverEvent(true)
|
||||
@@ -236,7 +238,8 @@ class DriverMsgBoxBubbleView @JvmOverloads constructor(
|
||||
//二级
|
||||
MsgFmData.LEVEL_TWO->{
|
||||
//语音提示
|
||||
AIAssist.getInstance(context).speakTTSVoice("识别车辆异常,建议尽快安全停车,查看操作建议")
|
||||
// AIAssist.getInstance(context).speakTTSVoice("识别车辆异常,建议尽快安全停车,查看操作建议")
|
||||
AIAssist.getInstance(context).speakTTSVoice(StringUtils.getString(R.string.module_core_warning_vehicle_abnormal_safe_park))
|
||||
//展示消息盒子消息
|
||||
showData(msgBoxBean)
|
||||
}
|
||||
|
||||
@@ -35,6 +35,7 @@ import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.ui.msgbox.adapter.MsgBoxToastAdapter
|
||||
import com.mogo.eagle.core.function.msgbox.MsgBoxConfig
|
||||
import com.mogo.eagle.core.utilcode.util.SoundPoolUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import kotlinx.android.synthetic.main.layout_msg_box_bubble.view.llMsgBubbleLayout
|
||||
import kotlinx.android.synthetic.main.layout_msg_box_bubble.view.rvBubbleList
|
||||
@@ -210,7 +211,8 @@ class MsgBoxToastView @JvmOverloads constructor(
|
||||
CallerHmiManager.warningV2X(
|
||||
EventTypeEnumNew.TAKE_OVER_EVENT.poiType,
|
||||
EventTypeEnumNew.TAKE_OVER_EVENT.content,
|
||||
"识别车辆故障,建议安全停车并查看操作建议",
|
||||
// "识别车辆故障,建议安全停车并查看操作建议",
|
||||
StringUtils.getString(R.string.module_core_warning_vehicle_fault_safe_park),
|
||||
object : IMoGoWarningStatusListener {
|
||||
override fun onShow() {
|
||||
CallerTakeOverManager.invokeTakeOverEvent(true)
|
||||
@@ -227,7 +229,8 @@ class MsgBoxToastView @JvmOverloads constructor(
|
||||
//二级
|
||||
MsgFmData.LEVEL_TWO->{
|
||||
//语音提示
|
||||
AIAssist.getInstance(context).speakTTSVoice("识别车辆异常,建议尽快安全停车,查看操作建议")
|
||||
// AIAssist.getInstance(context).speakTTSVoice("识别车辆异常,建议尽快安全停车,查看操作建议")
|
||||
AIAssist.getInstance(context).speakTTSVoice(StringUtils.getString(R.string.module_core_warning_vehicle_abnormal_safe_park))
|
||||
//展示消息盒子消息
|
||||
showData(msgBoxBean)
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.GlideApp
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.transform.GlideRoundedCornersTransform
|
||||
import com.mogo.eagle.core.utilcode.util.ResourceUtils.getDrawable
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils.getHourMinFormat
|
||||
import com.mogo.eagle.core.widget.RoundCanClickConstraintLayout
|
||||
@@ -176,9 +177,11 @@ class DriverMsgBoxBubbleAdapter(private val activity: Activity) : RecyclerView.A
|
||||
data?.let {
|
||||
val msgBoxBean = it[position].msgBoxBean
|
||||
val reportEntity = msgBoxBean.bean as ReportEntity
|
||||
holder.tvBubbleReportTime.text = "时间:${TimeUtils.millis2String(it[position].msgBoxBean.timestamp)}"
|
||||
// holder.tvBubbleReportTime.text = "时间:${TimeUtils.millis2String(it[position].msgBoxBean.timestamp)}"
|
||||
holder.tvBubbleReportTime.text = "${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].msgBoxBean.timestamp)}"
|
||||
holder.tvBubbleReceiveTime.text = TimeUtils.millis2String(it[position].msgBoxBean.timestamp,getHourMinFormat())
|
||||
var resultStr = "类型:"
|
||||
// var resultStr = "类型:"
|
||||
var resultStr = StringUtils.getString(R.string.module_core_type)
|
||||
for (result in reportEntity.resultList){
|
||||
resultStr = "${resultStr}${CallerAutoPilotControlManager.getReportResultDesc(result)}"
|
||||
}
|
||||
@@ -274,7 +277,8 @@ class DriverMsgBoxBubbleAdapter(private val activity: Activity) : RecyclerView.A
|
||||
holder.tvBubbleFmTime.text = TimeUtils.millis2String(fmMsg.policyTime!!,getHourMinFormat())
|
||||
}
|
||||
if(fmMsg.fmInfoList?.size == 0){
|
||||
holder.tvBubbleFmFaultAction.text = "建议操作:暂无"
|
||||
// holder.tvBubbleFmFaultAction.text = "建议操作:暂无"
|
||||
holder.tvBubbleFmFaultAction.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
holder.tvBubbleFmFault.text = MsgFmData.getFmPolicyName(fmMsg.policyCode)
|
||||
}else{
|
||||
var curFaultLevel = 5 //默认级别,遍历数组找出级别最高的(level数越小,级别越高)
|
||||
@@ -293,7 +297,8 @@ class DriverMsgBoxBubbleAdapter(private val activity: Activity) : RecyclerView.A
|
||||
//当出现多个建议操作时,按照整车下电重启、请求人工驾驶接管、请求平行驾驶接管、系统重启、联系硬件工程师、
|
||||
// 联系运维工程师、联系软件工程师优先级递减的顺序,只展示最高优先级的内容
|
||||
if(curFaultLevel == 5){
|
||||
holder.tvBubbleFmFaultAction.text = "建议操作:暂无"
|
||||
// holder.tvBubbleFmFaultAction.text = "建议操作:暂无"
|
||||
holder.tvBubbleFmFaultAction.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
}else{
|
||||
holder.tvBubbleFmFaultAction.text = "${faultAction}(${MsgFmData.FaultAction.getFaultActionCode(curFaultLevel)})"
|
||||
}
|
||||
@@ -359,7 +364,8 @@ class DriverMsgBoxBubbleAdapter(private val activity: Activity) : RecyclerView.A
|
||||
holder.tvOTATitle.text = otaMsg.title
|
||||
holder.tvOTAContent.text = otaMsg.des
|
||||
holder.tvOTATime.text = TimeUtils.millis2String(it[position].msgBoxBean.timestamp,getHourMinFormat())
|
||||
if(otaMsg.type == "成功"){
|
||||
// if(otaMsg.type == "成功"){
|
||||
if(otaMsg.type == StringUtils.getString(R.string.module_core_succeed)){
|
||||
holder.ivOTAImage.setImageDrawable(getDrawable(R.drawable.icon_ota_msg_success))
|
||||
}else{
|
||||
holder.ivOTAImage.setImageDrawable(getDrawable(R.drawable.icon_ota_msg_fail))
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.GlideApp
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.transform.GlideRoundedCornersTransform
|
||||
import com.mogo.eagle.core.utilcode.util.ResourceUtils.getDrawable
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils.getHourMinFormat
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
@@ -172,12 +173,14 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
holder.tvBagReceiveTime.text =
|
||||
TimeUtils.millis2String(it[position].timestamp, getHourMinFormat())
|
||||
holder.tvBagRecordTime.text =
|
||||
"时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
// "时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
val msgBoxBean = it[position]
|
||||
val recordBagMsg = msgBoxBean.bean as RecordBagMsg
|
||||
holder.tvRecordCheck.setOnClickListener {
|
||||
if(recordBagMsg.isShow){
|
||||
ToastUtils.showShort("当前录包上报面板已打开,请勿重复操作")
|
||||
// ToastUtils.showShort("当前录包上报面板已打开,请勿重复操作")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_bad_case_view_opened)
|
||||
}else{
|
||||
//打开被动录包弹窗
|
||||
CallerDevaToolsManager.onReceiveBadCaseRecord(msgBoxBean, activity, false)
|
||||
@@ -192,19 +195,25 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
val fmInfoMsg = it[position].bean as FMInfoMsg
|
||||
//时间显示
|
||||
holder.tvFmTimeOpen.text =
|
||||
"时间:${fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1) }}"
|
||||
// "时间:${fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1) }}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1) }}"
|
||||
holder.tvFmTimeNormal.text =
|
||||
"时间:${fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1) }}"
|
||||
// "时间:${fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1) }}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1) }}"
|
||||
holder.tvFmTime.text =
|
||||
fmInfoMsg.policyTime?.let { it1 -> TimeUtils.millis2String(it1,getHourMinFormat()) }
|
||||
//建议操作
|
||||
if(fmInfoMsg.fmInfoList.isNullOrEmpty()){
|
||||
//建议操作暂无
|
||||
holder.tvFmActionOpen.text = "建议操作:暂无"
|
||||
holder.tvFmActionNormal.text = "建议操作:暂无"
|
||||
// holder.tvFmActionOpen.text = "建议操作:暂无"
|
||||
holder.tvFmActionOpen.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
// holder.tvFmActionNormal.text = "建议操作:暂无"
|
||||
holder.tvFmActionNormal.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
//Title
|
||||
holder.tvFmTitleNormal.text = "暂无建议操作"
|
||||
holder.tvFmTitleOpen.text = "暂无建议操作"
|
||||
// holder.tvFmTitleNormal.text = "暂无建议操作"
|
||||
holder.tvFmTitleNormal.text = StringUtils.getString(R.string.module_core_not_available_suggested_procedure)
|
||||
// holder.tvFmTitleOpen.text = "暂无建议操作"
|
||||
holder.tvFmTitleOpen.text = StringUtils.getString(R.string.module_core_not_available_suggested_procedure)
|
||||
}else{
|
||||
val receiveFaultLevel = ArrayList<Int>()
|
||||
fmInfoMsg.fmInfoList!!.forEach { info ->
|
||||
@@ -220,7 +229,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
//对faultLevel集合进行排序,按照顺序输出建议操作
|
||||
if(receiveFaultLevel.size > 0){
|
||||
val faultActionStr: StringBuilder = StringBuilder()
|
||||
faultActionStr.append("建议操作:")
|
||||
// faultActionStr.append("建议操作:")
|
||||
faultActionStr.append(StringUtils.getString(R.string.module_core_suggested_procedure))
|
||||
receiveFaultLevel.sort()
|
||||
// receiveFaultLevel.reverse()
|
||||
//Title
|
||||
@@ -264,25 +274,32 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
holder.tvFmActionOpen.text = faultActionStr.toString()
|
||||
holder.tvFmActionNormal.text = faultActionStr.toString()
|
||||
}else{
|
||||
holder.tvFmActionOpen.text = "建议操作:暂无"
|
||||
holder.tvFmActionNormal.text = "建议操作:暂无"
|
||||
// holder.tvFmActionOpen.text = "建议操作:暂无"
|
||||
holder.tvFmActionOpen.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
// holder.tvFmActionNormal.text = "建议操作:暂无"
|
||||
holder.tvFmActionNormal.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
}
|
||||
}else{
|
||||
holder.tvFmActionOpen.text = "建议操作:暂无"
|
||||
holder.tvFmActionNormal.text = "建议操作:暂无"
|
||||
// holder.tvFmActionOpen.text = "建议操作:暂无"
|
||||
holder.tvFmActionOpen.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
// holder.tvFmActionNormal.text = "建议操作:暂无"
|
||||
holder.tvFmActionNormal.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
//轻度预警样式
|
||||
holder.ivFmImageNormal.setImageDrawable(getDrawable(R.drawable.icon_fm_warning_normal))
|
||||
holder.ivFmImageOpen.setImageDrawable(getDrawable(R.drawable.icon_fm_warning_open))
|
||||
}
|
||||
}
|
||||
//故障策略
|
||||
holder.tvFmFaultOpen.text = "故障策略:${MsgFmData.getFmPolicyName(fmInfoMsg.policyCode)}(${fmInfoMsg.policyCode})"
|
||||
// holder.tvFmFaultOpen.text = "故障策略:${MsgFmData.getFmPolicyName(fmInfoMsg.policyCode)}(${fmInfoMsg.policyCode})"
|
||||
holder.tvFmFaultOpen.text = "${StringUtils.getString(R.string.module_core_fault_handling_strategy)}${MsgFmData.getFmPolicyName(fmInfoMsg.policyCode)}(${fmInfoMsg.policyCode})"
|
||||
//故障原因
|
||||
if(fmInfoMsg.fmInfoList.isNullOrEmpty()){
|
||||
holder.tvFmReasonOpen.text = "故障原因:暂无"
|
||||
// holder.tvFmReasonOpen.text = "故障原因:暂无"
|
||||
holder.tvFmReasonOpen.text = StringUtils.getString(R.string.module_core_failure_cause_not_available)
|
||||
}else{
|
||||
val fmFaultReason = StringBuilder()
|
||||
fmFaultReason.append("故障原因:")
|
||||
// fmFaultReason.append("故障原因:")
|
||||
fmFaultReason.append(StringUtils.getString(R.string.module_core_failure_cause))
|
||||
for((index,info) in fmInfoMsg.fmInfoList!!.withIndex()){
|
||||
fmFaultReason.append(info.faultName)
|
||||
if(info.faultId.isNotBlank()){
|
||||
@@ -298,10 +315,12 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
}
|
||||
//故障后果
|
||||
if(fmInfoMsg.fmInfoList.isNullOrEmpty()){
|
||||
holder.tvFmResultOpen.text = "故障后果:暂无"
|
||||
// holder.tvFmResultOpen.text = "故障后果:暂无"
|
||||
holder.tvFmResultOpen.text = StringUtils.getString(R.string.module_core_consequences_failure_not_available)
|
||||
}else{
|
||||
val fmFaultResult = StringBuilder()
|
||||
fmFaultResult.append("故障后果:")
|
||||
// fmFaultResult.append("故障后果:")
|
||||
fmFaultResult.append(StringUtils.getString(R.string.module_core_consequences_failure))
|
||||
fmInfoMsg.fmInfoList!!.forEach { info->
|
||||
if(info.faultResultCount != 0){
|
||||
info.faultResultList.forEach { result->
|
||||
@@ -322,7 +341,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
if(fmFaultResult.endsWith("/")){
|
||||
holder.tvFmResultOpen.text = fmFaultResult.deleteCharAt(fmFaultResult.lastIndex).toString()
|
||||
}else{
|
||||
holder.tvFmResultOpen.text = "故障后果:暂无"
|
||||
// holder.tvFmResultOpen.text = "故障后果:暂无"
|
||||
holder.tvFmResultOpen.text = StringUtils.getString(R.string.module_core_consequences_failure_not_available)
|
||||
}
|
||||
}
|
||||
//对布局进行展开折叠操作
|
||||
@@ -333,7 +353,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvFmStatusSelect.text = "折叠"
|
||||
// holder.tvFmStatusSelect.text = "折叠"
|
||||
holder.tvFmStatusSelect.text = StringUtils.getString(R.string.module_core_fold)
|
||||
holder.ivFmImageNormal.visibility = View.GONE
|
||||
holder.tvFmTitleNormal.visibility = View.GONE
|
||||
holder.tvFmTimeNormal.visibility = View.GONE
|
||||
@@ -352,7 +373,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvFmStatusSelect.text = "展开"
|
||||
// holder.tvFmStatusSelect.text = "展开"
|
||||
holder.tvFmStatusSelect.text = StringUtils.getString(R.string.module_core_unfold)
|
||||
holder.ivFmImageNormal.visibility = View.VISIBLE
|
||||
holder.tvFmTitleNormal.visibility = View.VISIBLE
|
||||
holder.tvFmTimeNormal.visibility = View.VISIBLE
|
||||
@@ -374,7 +396,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvFmStatusSelect.text = "折叠"
|
||||
// holder.tvFmStatusSelect.text = "折叠"
|
||||
holder.tvFmStatusSelect.text = StringUtils.getString(R.string.module_core_fold)
|
||||
holder.ivFmImageNormal.visibility = View.GONE
|
||||
holder.tvFmTitleNormal.visibility = View.GONE
|
||||
holder.tvFmTimeNormal.visibility = View.GONE
|
||||
@@ -394,7 +417,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvFmStatusSelect.text = "展开"
|
||||
// holder.tvFmStatusSelect.text = "展开"
|
||||
holder.tvFmStatusSelect.text = StringUtils.getString(R.string.module_core_unfold)
|
||||
holder.ivFmImageNormal.visibility = View.VISIBLE
|
||||
holder.tvFmTitleNormal.visibility = View.VISIBLE
|
||||
holder.tvFmTimeNormal.visibility = View.VISIBLE
|
||||
@@ -415,9 +439,11 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
data?.let { it ->
|
||||
val reportMsgBox = it[position]
|
||||
holder.tvReportTimeNormal.text =
|
||||
"时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
// "时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
holder.tvReportTimeOpen.text =
|
||||
"时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
// "时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
val reportEntity = (it[position].bean as ReportEntity)
|
||||
if (reportEntity.resultList.contains(RESULT_AUTOPILOT_DISABLE)
|
||||
|| reportEntity.resultList.contains(RESULT_AUTOPILOT_SYSTEM_UNSTARTED)
|
||||
@@ -446,26 +472,32 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
}
|
||||
|
||||
holder.tvReportTimeNormal.text =
|
||||
"时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
// "时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
holder.tvReportTimeOpen.text =
|
||||
"时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
// "时间:${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
"${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].timestamp)}"
|
||||
holder.tvReportTime.text =
|
||||
TimeUtils.millis2String(it[position].timestamp, getHourMinFormat())
|
||||
var resultStr = "类型:"
|
||||
// var resultStr = "类型:"
|
||||
var resultStr = StringUtils.getString(R.string.module_core_type)
|
||||
for (result in reportEntity.resultList) {
|
||||
resultStr =
|
||||
"${resultStr}${CallerAutoPilotControlManager.getReportResultDesc(result)}"
|
||||
}
|
||||
holder.tvReportTypeNormal.text = resultStr
|
||||
holder.tvReportTypeOpen.text = resultStr
|
||||
holder.tvReportReasonOpen.text = "原因:${reportEntity.msg}"
|
||||
holder.tvReportSrcOpen.text = "消息来源:${reportEntity.src}"
|
||||
// holder.tvReportReasonOpen.text = "原因:${reportEntity.msg}"
|
||||
holder.tvReportReasonOpen.text = "${StringUtils.getString(R.string.module_core_cause1)}${reportEntity.msg}"
|
||||
// holder.tvReportSrcOpen.text = "消息来源:${reportEntity.src}"
|
||||
holder.tvReportSrcOpen.text = "${StringUtils.getString(R.string.module_core_message_source)}${reportEntity.src}"
|
||||
var actionStr = ""
|
||||
for (action in reportEntity.actionsList) {
|
||||
actionStr =
|
||||
"${actionStr}${CallerAutoPilotControlManager.getReportActionDesc(action)}"
|
||||
}
|
||||
holder.tvReportActionOpen.text = "建议操作:$actionStr"
|
||||
// holder.tvReportActionOpen.text = "建议操作:$actionStr"
|
||||
holder.tvReportActionOpen.text = "${StringUtils.getString(R.string.module_core_suggested_procedure)}$actionStr"
|
||||
holder.tvStatusSelect.tag = reportEntity
|
||||
if(reportEntity.isShow){
|
||||
holder.tvStatusSelect.setCompoundDrawablesWithIntrinsicBounds(
|
||||
@@ -474,7 +506,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvStatusSelect.text = "折叠"
|
||||
// holder.tvStatusSelect.text = "折叠"
|
||||
holder.tvStatusSelect.text = StringUtils.getString(R.string.module_core_fold)
|
||||
holder.ivReportImageNormal.visibility = View.GONE
|
||||
holder.tvReportLevelNormal.visibility = View.GONE
|
||||
holder.tvReportTimeNormal.visibility = View.GONE
|
||||
@@ -494,7 +527,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvStatusSelect.text = "展开"
|
||||
// holder.tvStatusSelect.text = "展开"
|
||||
holder.tvStatusSelect.text = StringUtils.getString(R.string.module_core_unfold)
|
||||
holder.ivReportImageNormal.visibility = View.VISIBLE
|
||||
holder.tvReportLevelNormal.visibility = View.VISIBLE
|
||||
holder.tvReportTimeNormal.visibility = View.VISIBLE
|
||||
@@ -517,7 +551,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvStatusSelect.text = "折叠"
|
||||
// holder.tvStatusSelect.text = "折叠"
|
||||
holder.tvStatusSelect.text = StringUtils.getString(R.string.module_core_fold)
|
||||
holder.ivReportImageNormal.visibility = View.GONE
|
||||
holder.tvReportLevelNormal.visibility = View.GONE
|
||||
holder.tvReportTimeNormal.visibility = View.GONE
|
||||
@@ -538,7 +573,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvStatusSelect.text = "展开"
|
||||
// holder.tvStatusSelect.text = "展开"
|
||||
holder.tvStatusSelect.text = StringUtils.getString(R.string.module_core_unfold)
|
||||
holder.ivReportImageNormal.visibility = View.VISIBLE
|
||||
holder.tvReportLevelNormal.visibility = View.VISIBLE
|
||||
holder.tvReportTimeNormal.visibility = View.VISIBLE
|
||||
@@ -576,7 +612,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvOperationStatusSelect.text = "折叠"
|
||||
// holder.tvOperationStatusSelect.text = "折叠"
|
||||
holder.tvOperationStatusSelect.text = StringUtils.getString(R.string.module_core_fold)
|
||||
holder.ivOperationImageNormal.visibility = View.GONE
|
||||
holder.tvOperationTitleNormal.visibility = View.GONE
|
||||
holder.tvOperationContentNormal.visibility = View.GONE
|
||||
@@ -591,7 +628,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
null,
|
||||
null
|
||||
)
|
||||
holder.tvOperationStatusSelect.text = "展开"
|
||||
// holder.tvOperationStatusSelect.text = "展开"
|
||||
holder.tvOperationStatusSelect.text = StringUtils.getString(R.string.module_core_unfold)
|
||||
holder.ivOperationImageNormal.visibility = View.VISIBLE
|
||||
holder.tvOperationTitleNormal.visibility = View.VISIBLE
|
||||
holder.tvOperationContentNormal.visibility = View.VISIBLE
|
||||
@@ -745,7 +783,8 @@ class DriverMsgBoxListAdapter(private val activity: Activity) :
|
||||
holder.tvOTATitle.text = otaMsg.title
|
||||
holder.tvOTAContent.text = otaMsg.des
|
||||
holder.tvOTATime.text = TimeUtils.millis2String(it[position].timestamp,getHourMinFormat())
|
||||
if(otaMsg.type == "成功"){
|
||||
// if(otaMsg.type == "成功"){
|
||||
if(otaMsg.type == StringUtils.getString(R.string.module_core_succeed)){
|
||||
holder.ivOTAImage.setImageDrawable(getDrawable(R.drawable.icon_ota_msg_success))
|
||||
}else{
|
||||
holder.ivOTAImage.setImageDrawable(getDrawable(R.drawable.icon_ota_msg_fail))
|
||||
|
||||
@@ -37,6 +37,7 @@ import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.GlideApp
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.transform.GlideRoundedCornersTransform
|
||||
import com.mogo.eagle.core.utilcode.util.ResourceUtils.getDrawable
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils.getHourMinFormat
|
||||
import com.mogo.eagle.core.widget.RoundCanClickConstraintLayout
|
||||
@@ -101,9 +102,11 @@ class MsgBoxToastAdapter(private val activity: Activity) : RecyclerView.Adapter<
|
||||
data?.let {
|
||||
val msgBoxBean = it[position].msgBoxBean
|
||||
val reportEntity = msgBoxBean.bean as ReportEntity
|
||||
holder.tvBubbleReportTime.text = "时间:${TimeUtils.millis2String(it[position].msgBoxBean.timestamp)}"
|
||||
// holder.tvBubbleReportTime.text = "时间:${TimeUtils.millis2String(it[position].msgBoxBean.timestamp)}"
|
||||
holder.tvBubbleReportTime.text = "${StringUtils.getString(R.string.module_core_time)}${TimeUtils.millis2String(it[position].msgBoxBean.timestamp)}"
|
||||
holder.tvBubbleReceiveTime.text = TimeUtils.millis2String(it[position].msgBoxBean.timestamp,getHourMinFormat())
|
||||
var resultStr = "类型:"
|
||||
// var resultStr = "类型:"
|
||||
var resultStr = StringUtils.getString(R.string.module_core_type)
|
||||
for (result in reportEntity.resultList){
|
||||
resultStr = "${resultStr}${CallerAutoPilotControlManager.getReportResultDesc(result)}"
|
||||
}
|
||||
@@ -176,7 +179,8 @@ class MsgBoxToastAdapter(private val activity: Activity) : RecyclerView.Adapter<
|
||||
val otaMsg = it[position].msgBoxBean.bean as OTAMsg
|
||||
holder.tvOTATitle.text = otaMsg.title
|
||||
holder.tvOTAContent.text = otaMsg.des
|
||||
if(otaMsg.type == "成功"){
|
||||
// if(otaMsg.type == "成功"){
|
||||
if(otaMsg.type == StringUtils.getString(R.string.module_core_succeed)){
|
||||
holder.ivOTAImage.setImageDrawable(getDrawable(R.drawable.icon_ota_msg_success))
|
||||
}else{
|
||||
holder.ivOTAImage.setImageDrawable(getDrawable(R.drawable.icon_ota_msg_fail))
|
||||
@@ -230,7 +234,8 @@ class MsgBoxToastAdapter(private val activity: Activity) : RecyclerView.Adapter<
|
||||
//FM信息
|
||||
val fmMsg = it[position].msgBoxBean.bean as FMInfoMsg
|
||||
if(fmMsg.fmInfoList?.size == 0){
|
||||
holder.tvV2XContent.text = "建议操作:暂无"
|
||||
// holder.tvV2XContent.text = "建议操作:暂无"
|
||||
holder.tvV2XContent.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
holder.tvV2XTitle.text = MsgFmData.getFmPolicyName(fmMsg.policyCode)
|
||||
}else{
|
||||
var curFaultLevel = 5 //默认级别,遍历数组找出级别最高的(level数越小,级别越高)
|
||||
@@ -249,7 +254,8 @@ class MsgBoxToastAdapter(private val activity: Activity) : RecyclerView.Adapter<
|
||||
//当出现多个建议操作时,按照整车下电重启、请求人工驾驶接管、请求平行驾驶接管、系统重启、联系硬件工程师、
|
||||
// 联系运维工程师、联系软件工程师优先级递减的顺序,只展示最高优先级的内容
|
||||
if(curFaultLevel == 5){
|
||||
holder.tvV2XContent.text = "建议操作:暂无"
|
||||
// holder.tvV2XContent.text = "建议操作:暂无"
|
||||
holder.tvV2XContent.text = StringUtils.getString(R.string.module_core_suggested_procedure_not_available)
|
||||
}else{
|
||||
holder.tvV2XContent.text = "${faultAction}(${MsgFmData.FaultAction.getFaultActionCode(curFaultLevel)})"
|
||||
}
|
||||
@@ -286,7 +292,8 @@ class MsgBoxToastAdapter(private val activity: Activity) : RecyclerView.Adapter<
|
||||
when(operationMsg.type){
|
||||
0->{
|
||||
//运营平台还车通知
|
||||
holder.tvV2XTitle.text = "还车通知"
|
||||
// holder.tvV2XTitle.text = "还车通知"
|
||||
holder.tvV2XTitle.text = StringUtils.getString(R.string.module_core_vehicle_return_notice)
|
||||
holder.ivV2XImage.setImageDrawable(
|
||||
ContextCompat.getDrawable(
|
||||
activity,
|
||||
@@ -295,7 +302,8 @@ class MsgBoxToastAdapter(private val activity: Activity) : RecyclerView.Adapter<
|
||||
}
|
||||
1->{
|
||||
//运营平台靠边停车
|
||||
holder.tvV2XTitle.text = "运营平台"
|
||||
// holder.tvV2XTitle.text = "运营平台"
|
||||
holder.tvV2XTitle.text = StringUtils.getString(R.string.module_core_operation_platform)
|
||||
holder.ivV2XImage.setImageDrawable(
|
||||
ContextCompat.getDrawable(
|
||||
activity,
|
||||
@@ -304,7 +312,8 @@ class MsgBoxToastAdapter(private val activity: Activity) : RecyclerView.Adapter<
|
||||
}
|
||||
3->{
|
||||
//车门开启关闭失败
|
||||
holder.tvV2XTitle.text = "运营平台"
|
||||
// holder.tvV2XTitle.text = "运营平台"
|
||||
holder.tvV2XTitle.text = StringUtils.getString(R.string.module_core_operation_platform)
|
||||
holder.ivV2XImage.setImageDrawable(
|
||||
ContextCompat.getDrawable(
|
||||
activity,
|
||||
@@ -313,7 +322,8 @@ class MsgBoxToastAdapter(private val activity: Activity) : RecyclerView.Adapter<
|
||||
}
|
||||
else->{
|
||||
//普通运营平台
|
||||
holder.tvV2XTitle.text = "运营平台"
|
||||
// holder.tvV2XTitle.text = "运营平台"
|
||||
holder.tvV2XTitle.text = StringUtils.getString(R.string.module_core_operation_platform)
|
||||
holder.ivV2XImage.setImageDrawable(
|
||||
ContextCompat.getDrawable(
|
||||
activity,
|
||||
|
||||
@@ -12,6 +12,7 @@ import androidx.annotation.NonNull;
|
||||
import com.mogo.eagle.core.data.biz.dispatch.DispatchAdasAutoPilotLocReceiverBean;
|
||||
import com.mogo.eagle.core.function.call.biz.CallerFuncBizManager;
|
||||
import com.mogo.eagle.core.function.hmi.R;
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils;
|
||||
|
||||
|
||||
public class DispatchCarsDialog extends DispatchBaseDialog {
|
||||
@@ -99,8 +100,10 @@ public class DispatchCarsDialog extends DispatchBaseDialog {
|
||||
show();
|
||||
if(dispatchContent.getType() == 2){
|
||||
//取消调度
|
||||
tvAdasDispatchTitle.setText("调度取消确认");
|
||||
tvAdasDispatchRemindContent.setText("车辆将取消到以下位置的自动驾驶");
|
||||
// tvAdasDispatchTitle.setText("调度取消确认");
|
||||
tvAdasDispatchTitle.setText(StringUtils.getString(R.string.module_core_scheduling_cancellation_confirmation));
|
||||
// tvAdasDispatchRemindContent.setText("车辆将取消到以下位置的自动驾驶");
|
||||
tvAdasDispatchRemindContent.setText(StringUtils.getString(R.string.module_core_vehicle_cancel_autopilot_target_location));
|
||||
}
|
||||
dispatchType = dispatchContent.getType();
|
||||
handler.sendEmptyMessage(MSG_TYPE_TIMER);
|
||||
|
||||
@@ -10,6 +10,8 @@ import android.content.Context;
|
||||
|
||||
import com.mogo.commons.voice.AIAssist;
|
||||
import com.mogo.eagle.core.data.biz.dispatch.DispatchAdasAutoPilotLocReceiverBean;
|
||||
import com.mogo.eagle.core.function.hmi.R;
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils;
|
||||
|
||||
public class DispatchDialogManager {
|
||||
|
||||
@@ -108,7 +110,8 @@ public class DispatchDialogManager {
|
||||
}
|
||||
|
||||
private void voice() {
|
||||
AIAssist.getInstance(mContext).speakTTSVoiceWithLevel("请立即停车!请立即停车!",AIAssist.LEVEL0);
|
||||
// AIAssist.getInstance(mContext).speakTTSVoiceWithLevel("请立即停车!请立即停车!",AIAssist.LEVEL0);
|
||||
AIAssist.getInstance(mContext).speakTTSVoiceWithLevel(StringUtils.getString(R.string.module_core_immediate_stop_vehicle),AIAssist.LEVEL0);
|
||||
}
|
||||
|
||||
public void releaseDialog() {
|
||||
|
||||
@@ -25,6 +25,7 @@ import com.mogo.eagle.core.function.call.hmi.CallerHmiViewControlListenerManager
|
||||
import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxListenerManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
|
||||
|
||||
@@ -137,13 +138,20 @@ open class AutomaticExplorationView @JvmOverloads constructor(
|
||||
|
||||
private fun initData() {
|
||||
val dataList = ArrayList<AutoExplorationEntity>(7)
|
||||
dataList.add(AutoExplorationEntity("当前道路事件分析",2000L,false))
|
||||
dataList.add(AutoExplorationEntity("前方车辆",2000L,false))
|
||||
dataList.add(AutoExplorationEntity("两侧车辆",2600L,false))
|
||||
dataList.add(AutoExplorationEntity("后方车辆",3000L,false))
|
||||
dataList.add(AutoExplorationEntity("前方路口车辆流速分析",4000L,false))
|
||||
dataList.add(AutoExplorationEntity("前方路口行人/非机动车分析",4300L,false))
|
||||
dataList.add(AutoExplorationEntity("路侧视频分析",5000L,false))
|
||||
// dataList.add(AutoExplorationEntity("当前道路事件分析",2000L,false))
|
||||
dataList.add(AutoExplorationEntity(StringUtils.getString(R.string.module_och_crossing_event_analyse),2000L,false))
|
||||
// dataList.add(AutoExplorationEntity("前方车辆",2000L,false))
|
||||
dataList.add(AutoExplorationEntity(StringUtils.getString(R.string.module_och_vehicle_ahead),2000L,false))
|
||||
// dataList.add(AutoExplorationEntity("两侧车辆",2600L,false))
|
||||
dataList.add(AutoExplorationEntity(StringUtils.getString(R.string.module_och_vehicle_both_sides),2600L,false))
|
||||
// dataList.add(AutoExplorationEntity("后方车辆",3000L,false))
|
||||
dataList.add(AutoExplorationEntity(StringUtils.getString(R.string.module_och_vehicle_behind),3000L,false))
|
||||
// dataList.add(AutoExplorationEntity("前方路口车辆流速分析",4000L,false))
|
||||
dataList.add(AutoExplorationEntity(StringUtils.getString(R.string.module_och_analysis_vehicle_flow_ahead),4000L,false))
|
||||
// dataList.add(AutoExplorationEntity("前方路口行人/非机动车分析",4300L,false))
|
||||
dataList.add(AutoExplorationEntity(StringUtils.getString(R.string.module_och_pedestrians_ahead),4300L,false))
|
||||
// dataList.add(AutoExplorationEntity("路侧视频分析",5000L,false))
|
||||
dataList.add(AutoExplorationEntity(StringUtils.getString(R.string.module_och_sidewalk_video_analysis),5000L,false))
|
||||
automaticExplorationAdapter?.setListener(object: AutomaticExplorationAdapter.CompleteListener{
|
||||
override fun onComplete(entity: AutoExplorationEntity) {
|
||||
var allComplete = true //所有探查项目都探查完毕
|
||||
@@ -160,7 +168,8 @@ open class AutomaticExplorationView @JvmOverloads constructor(
|
||||
rotationAnim?.cancel()
|
||||
//语音播放,只在司机端播放
|
||||
if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){
|
||||
AIAssist.getInstance(context).speakTTSVoice("正为您探查道路情况")
|
||||
// AIAssist.getInstance(context).speakTTSVoice("正为您探查道路情况")
|
||||
AIAssist.getInstance(context).speakTTSVoice(StringUtils.getString(R.string.module_core_probing_road_condition_for_you))
|
||||
}
|
||||
//5秒后关闭弹窗
|
||||
val hideViewTimer =object: CountDownTimer(EXPLORATION_HIDE_TIME,EXPLORATION_HIDE_TIME){
|
||||
|
||||
@@ -32,6 +32,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.eagle.core.utilcode.util.BitmapHelper
|
||||
import com.mogo.eagle.core.utilcode.util.CoordinateUtils
|
||||
import com.mogo.eagle.core.utilcode.util.DateTimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.widget.media.video.NoticeSimpleSmallVideoPlayer
|
||||
import com.shuyu.gsyvideoplayer.GSYVideoManager
|
||||
import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder
|
||||
@@ -360,41 +361,50 @@ class NoticeTrafficDialog : BaseFloatDialog, LifecycleObserver {
|
||||
dataArrayList.clear()
|
||||
}
|
||||
val laiYuan = NoticeValue()
|
||||
laiYuan.key = "事故来源:"
|
||||
// laiYuan.key = "事故来源:"
|
||||
laiYuan.key = StringUtils.getString(R.string.module_core_accident_source)
|
||||
laiYuan.value = info!!.uploadType
|
||||
dataArrayList.add(laiYuan)
|
||||
val cTime = NoticeValue()
|
||||
cTime.key = "事故时间:"
|
||||
// cTime.key = "事故时间:"
|
||||
cTime.key = StringUtils.getString(R.string.module_core_accident_time)
|
||||
cTime.value = DateTimeUtils.getTimeText(
|
||||
info.dataCreateTime,
|
||||
DateTimeUtils.MM_Yue_dd_Ri_HH_mm
|
||||
)
|
||||
dataArrayList.add(cTime)
|
||||
val hTime = NoticeValue()
|
||||
hTime.key = "处理时间:"
|
||||
// hTime.key = "处理时间:"
|
||||
hTime.key = StringUtils.getString(R.string.module_core_processing_time)
|
||||
hTime.value = DateTimeUtils.getTimeText(
|
||||
info.dataHandleTime,
|
||||
DateTimeUtils.MM_Yue_dd_Ri_HH_mm
|
||||
)
|
||||
dataArrayList.add(hTime)
|
||||
val reason = NoticeValue()
|
||||
reason.key = "事故原因:"
|
||||
// reason.key = "事故原因:"
|
||||
reason.key = StringUtils.getString(R.string.module_core_accident_cause)
|
||||
reason.value = info.reason
|
||||
dataArrayList.add(reason)
|
||||
val status = NoticeValue()
|
||||
status.key = "处理状态:"
|
||||
// status.key = "处理状态:"
|
||||
status.key = StringUtils.getString(R.string.module_core_treatment_state)
|
||||
if (info.operaStatus == "1") {
|
||||
status.value = "待处理"
|
||||
// status.value = "待处理"
|
||||
status.value = StringUtils.getString(R.string.module_core_pending)
|
||||
} else {
|
||||
status.value = "已处理"
|
||||
// status.value = "已处理"
|
||||
status.value = StringUtils.getString(R.string.module_core_processed)
|
||||
}
|
||||
dataArrayList.add(status)
|
||||
val location = NoticeValue()
|
||||
location.key = "事故地点:"
|
||||
// location.key = "事故地点:"
|
||||
location.key = StringUtils.getString(R.string.module_core_accident_spot)
|
||||
location.value = info.uploadAddress
|
||||
dataArrayList.add(location)
|
||||
val style = NoticeValue()
|
||||
style.key = "事故等级:"
|
||||
// style.key = "事故等级:"
|
||||
style.key = StringUtils.getString(R.string.module_core_accident_grade)
|
||||
style.value = info.troubleTypeName
|
||||
dataArrayList.add(style)
|
||||
adapter!!.setData(dataArrayList)
|
||||
|
||||
@@ -15,6 +15,7 @@ import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.ui.widget.TypefaceTextView
|
||||
import com.mogo.eagle.core.utilcode.mogo.thread.WorkThreadHandler
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
|
||||
/**
|
||||
@@ -260,17 +261,22 @@ class TrafficLightPromptView @JvmOverloads constructor(
|
||||
when (user) {
|
||||
0 -> {
|
||||
//司机端提示
|
||||
tvPromptTitle?.text = "即将绿灯"
|
||||
tvPromptContent?.text = "请准备出发"
|
||||
// tvPromptTitle?.text = "即将绿灯"
|
||||
tvPromptTitle?.text = StringUtils.getString(R.string.module_core_upcoming_green_light)
|
||||
// tvPromptContent?.text = "请准备出发"
|
||||
tvPromptContent?.text = StringUtils.getString(R.string.module_core_prepare_to_depart)
|
||||
}
|
||||
1 -> {
|
||||
//TAXI乘客端提示
|
||||
tvPromptContent?.text = "即将绿灯,请准备出发"
|
||||
// tvPromptContent?.text = "即将绿灯,请准备出发"
|
||||
tvPromptContent?.text = StringUtils.getString(R.string.module_core_upcoming_green_light_prepare_to_depart)
|
||||
}
|
||||
else -> {
|
||||
//BUS乘客端提示
|
||||
tvPromptTitle?.text = "即将绿灯,"
|
||||
tvPromptContent?.text = "请准备出发"
|
||||
// tvPromptTitle?.text = "即将绿灯,"
|
||||
tvPromptTitle?.text = StringUtils.getString(R.string.module_core_upcoming_green_light1)
|
||||
// tvPromptContent?.text = "请准备出发"
|
||||
tvPromptContent?.text = StringUtils.getString(R.string.module_core_prepare_to_depart)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -278,17 +284,22 @@ class TrafficLightPromptView @JvmOverloads constructor(
|
||||
when (user) {
|
||||
0 -> {
|
||||
//司机端提示
|
||||
tvPromptTitle?.text = "即将红灯"
|
||||
tvPromptContent?.text = "请减速慢行"
|
||||
// tvPromptTitle?.text = "即将红灯"
|
||||
tvPromptTitle?.text = StringUtils.getString(R.string.module_core_upcoming_red_light)
|
||||
// tvPromptContent?.text = "请减速慢行"
|
||||
tvPromptContent?.text = StringUtils.getString(R.string.module_core_warning_slow_down)
|
||||
}
|
||||
1 -> {
|
||||
//TAXI乘客端提示
|
||||
tvPromptContent?.text = "即将红灯,请减速慢行"
|
||||
// tvPromptContent?.text = "即将红灯,请减速慢行"
|
||||
tvPromptContent?.text = StringUtils.getString(R.string.module_core_upcoming_red_light_warning_slow_down)
|
||||
}
|
||||
else -> {
|
||||
//BUS乘客端提示
|
||||
tvPromptTitle?.text = "即将红灯,"
|
||||
tvPromptContent?.text = "请减速慢行"
|
||||
// tvPromptTitle?.text = "即将红灯,"
|
||||
tvPromptTitle?.text = StringUtils.getString(R.string.module_core_upcoming_red_light1)
|
||||
// tvPromptContent?.text = "请减速慢行"
|
||||
tvPromptContent?.text = StringUtils.getString(R.string.module_core_warning_slow_down)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -296,17 +307,22 @@ class TrafficLightPromptView @JvmOverloads constructor(
|
||||
when (user) {
|
||||
0 -> {
|
||||
//司机端提示
|
||||
tvPromptTitle?.text = "即将黄灯"
|
||||
tvPromptContent?.text = "请减速慢行"
|
||||
// tvPromptTitle?.text = "即将黄灯"
|
||||
tvPromptTitle?.text = StringUtils.getString(R.string.module_core_upcoming_yellow_light)
|
||||
// tvPromptContent?.text = "请减速慢行"
|
||||
tvPromptContent?.text = StringUtils.getString(R.string.module_core_warning_slow_down)
|
||||
}
|
||||
1 -> {
|
||||
//TAXI乘客端提示
|
||||
tvPromptContent?.text = "即将红灯,请减速慢行"
|
||||
// tvPromptContent?.text = "即将红灯,请减速慢行"
|
||||
tvPromptContent?.text = StringUtils.getString(R.string.module_core_upcoming_yellow_light_warning_slow_down)
|
||||
}
|
||||
else -> {
|
||||
//BUS乘客端提示
|
||||
tvPromptTitle?.text = "即将黄灯,"
|
||||
tvPromptContent?.text = "请减速慢行"
|
||||
// tvPromptTitle?.text = "即将黄灯,"
|
||||
tvPromptTitle?.text = StringUtils.getString(R.string.module_core_upcoming_yellow_light1)
|
||||
// tvPromptContent?.text = "请减速慢行"
|
||||
tvPromptContent?.text = StringUtils.getString(R.string.module_core_warning_slow_down)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1227,7 +1227,8 @@ class OperatePanelLayout : LinearLayout {
|
||||
"01" -> {
|
||||
//关闭成功
|
||||
Log.d(TAG, "-- 驾驶位视频流关闭成功 --")
|
||||
ToastUtils.showShort("驾驶位视频流功能已关闭")
|
||||
// ToastUtils.showShort("驾驶位视频流功能已关闭")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_drive_seat_video_stream_close)
|
||||
FunctionBuildConfig.isDriveSeatVideoStream = false
|
||||
lastTimeOnSendDriveVideo = 0L
|
||||
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(KEY_DRIVE_SEAT_VIDEO_STREAM)?.also { it.isChecked = false }
|
||||
@@ -1235,7 +1236,8 @@ class OperatePanelLayout : LinearLayout {
|
||||
"11" -> {
|
||||
//打开成功
|
||||
Log.d(TAG, "-- 驾驶位视频流打开成功 --")
|
||||
ToastUtils.showShort("驾驶位视频流功能已开启")
|
||||
// ToastUtils.showShort("驾驶位视频流功能已开启")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_drive_seat_video_stream_open)
|
||||
FunctionBuildConfig.isDriveSeatVideoStream = true
|
||||
lastTimeOnSendDriveVideo = 0L
|
||||
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(KEY_DRIVE_SEAT_VIDEO_STREAM)?.also { it.isChecked = true }
|
||||
@@ -1245,7 +1247,8 @@ class OperatePanelLayout : LinearLayout {
|
||||
"0" -> {
|
||||
Log.d(TAG, "-- 设备下线 --")
|
||||
FunctionBuildConfig.isDriveSeatVideoStream = false // 设备下线
|
||||
ToastUtils.showShort("驾驶位视频流功能因设备下线已关闭")
|
||||
// ToastUtils.showShort("驾驶位视频流功能因设备下线已关闭")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_drive_seat_video_stream_device_live_close)
|
||||
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(KEY_DRIVE_SEAT_VIDEO_STREAM)?.also {
|
||||
it.isChecked = false
|
||||
it.isEnabled = false
|
||||
@@ -1304,17 +1307,20 @@ class OperatePanelLayout : LinearLayout {
|
||||
if (CallerHmiManager.isTaxiUnmanedDriverPerformTask()||
|
||||
CallerHmiManager.isShuttleDriverPerformTask()
|
||||
) {
|
||||
ToastUtils.showLong("请先结束当前任务")
|
||||
// ToastUtils.showLong("请先结束当前任务")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_please_stop_current_task)
|
||||
return false
|
||||
}
|
||||
if (CallerHmiManager.isTaxiUnmanedDriverTakingOrders()) {
|
||||
ToastUtils.showLong("请先结束接单状态")
|
||||
// ToastUtils.showLong("请先结束接单状态")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_please_stop_receive_order_state)
|
||||
return false
|
||||
}
|
||||
CallerHmiManager.setTaxiUnmanedDriverLineRoutingVerifyMode(true)
|
||||
} else {
|
||||
if (CallerHmiManager.isTaxiUnmanedDriverLineRoutingPerformTask()) {
|
||||
ToastUtils.showLong("请先结束当前任务")
|
||||
// ToastUtils.showLong("请先结束当前任务")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_please_stop_current_task)
|
||||
return false
|
||||
}
|
||||
CallerHmiManager.setTaxiUnmanedDriverLineRoutingVerifyMode(false)
|
||||
@@ -1373,13 +1379,19 @@ class OperatePanelLayout : LinearLayout {
|
||||
val interval = SystemClock.elapsedRealtime() - lastTimeOnSendDriveVideo
|
||||
if (interval <= TimeUnit.SECONDS.toMillis(10)) {
|
||||
val seconds = TimeUnit.MILLISECONDS.toSeconds(interval)
|
||||
ToastUtils.showShort("未收到乘客屏响应,${ if (seconds >= 1) "请${seconds}秒后再试" else "请稍候再试"}")
|
||||
// ToastUtils.showShort("未收到乘客屏响应,${ if (seconds >= 1) "请${seconds}秒后再试" else "请稍候再试"}")
|
||||
if (seconds >= 1) {
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_drive_seat_video_stream_device_response_second, seconds)
|
||||
} else {
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_drive_seat_video_stream_device_response)
|
||||
}
|
||||
return false
|
||||
}
|
||||
}
|
||||
lastTimeOnSendDriveVideo = SystemClock.elapsedRealtime()
|
||||
val isChecked = newValue as? Boolean ?: false
|
||||
ToastUtils.showShort(if (isChecked) "驾驶位视频流功能开启指令已发送,等待乘客端响应" else "驾驶位视频流功能关闭指令已发送,等待乘客端响应")
|
||||
// ToastUtils.showShort(if (isChecked) "驾驶位视频流功能开启指令已发送,等待乘客端响应" else "驾驶位视频流功能关闭指令已发送,等待乘客端响应")
|
||||
ToastUtils.showShort(if (isChecked) R.string.module_mogo_core_function_hmi_send_open_drive_seat_video_stream_cmd else R.string.module_mogo_core_function_hmi_send_close_drive_seat_video_stream_cmd)
|
||||
clickEventAnalytics("视频流驾驶位开关", isChecked)
|
||||
val map = HashMap<String, String>()
|
||||
map["open"] = if (isChecked) "1" else "0"
|
||||
@@ -2135,13 +2147,16 @@ class OperatePanelLayout : LinearLayout {
|
||||
val isSuccess = CallerAutoPilotControlManager.setAutoPilotSpeed(FunctionBuildConfig.maxSpeedLimit.toInt())
|
||||
when {
|
||||
isSuccess -> {
|
||||
ToastUtils.showShort("车速设置成功,立即生效")
|
||||
// ToastUtils.showShort("车速设置成功,立即生效")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_set_auto_pilot_speed_success)
|
||||
}
|
||||
else -> {
|
||||
if (!CallerAutoPilotStatusListenerManager.isConnect()) {
|
||||
ToastUtils.showShort("设置车速失败,请启动域控制器")
|
||||
// ToastUtils.showShort("设置车速失败,请启动域控制器")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_set_auto_pilot_speed_fail)
|
||||
} else {
|
||||
ToastUtils.showShort("设置车速失败")
|
||||
// ToastUtils.showShort("设置车速失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_set_auto_pilot_speed_fail_disconnect)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2154,10 +2169,12 @@ class OperatePanelLayout : LinearLayout {
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed)
|
||||
val isSuccess = CallerAutoPilotControlManager.sendDetouringSpeed(FunctionBuildConfig.detouringSpeed)
|
||||
if (isSuccess == true) {
|
||||
ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置成功")
|
||||
// ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_detouring_speed_success)
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "成功")
|
||||
} else {
|
||||
ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置失败")
|
||||
// ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_detouring_speed_fail)
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "失败")
|
||||
}
|
||||
clickEventAnalytics("变道速度阈值", true)
|
||||
@@ -2167,10 +2184,12 @@ class OperatePanelLayout : LinearLayout {
|
||||
FunctionBuildConfig.overTakeSpeed = preference.extras.getDouble(PreferenceWithSpeedSetting.KEY_BUNDLE_CURRENT_VALUE, FunctionBuildConfig.overTakeSpeed)
|
||||
val isSuccess = CallerAutoPilotControlManager.sendOvertakeMaxSpeed(FunctionBuildConfig.overTakeSpeed)
|
||||
if (isSuccess == true) {
|
||||
ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置成功")
|
||||
// ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_sop_detouring_speed_success)
|
||||
hmiAction("SOP 超车目标障碍物速度阈值设置", "成功")
|
||||
} else {
|
||||
ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置失败")
|
||||
// ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_sop_detouring_speed_fail)
|
||||
hmiAction("SOP 超车目标障碍物速度阈值设置", "失败")
|
||||
}
|
||||
clickEventAnalytics("超车速度阈值", true)
|
||||
|
||||
@@ -84,7 +84,8 @@ class PreferenceWithSpeedSetting : Preference {
|
||||
btnOk.isEnabled = false
|
||||
holder.itemView.isEnabled = false
|
||||
ll.isSelected = false
|
||||
ToastUtils.showShort("阈值最大为${max.safeScale()}$unit")
|
||||
// ToastUtils.showShort("阈值最大为${max.safeScale()}$unit")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_speed_limit_max_value, "${max.safeScale()}$unit")
|
||||
return@doAfterTextChanged
|
||||
}
|
||||
val temp = current.safeScale()
|
||||
@@ -118,7 +119,8 @@ class PreferenceWithSpeedSetting : Preference {
|
||||
minus.onClickWidthDuration(100) {
|
||||
val minusAfter = cur - step
|
||||
if (minusAfter < min) {
|
||||
ToastUtils.showShort("阈值最小为${min.safeScale()}$unit")
|
||||
// ToastUtils.showShort("阈值最小为${min.safeScale()}$unit")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_speed_limit_min_value, "${min.safeScale()}$unit")
|
||||
return@onClickWidthDuration
|
||||
}
|
||||
cur = minusAfter
|
||||
@@ -140,7 +142,8 @@ class PreferenceWithSpeedSetting : Preference {
|
||||
add.onClickWidthDuration(100) {
|
||||
val addAfter = cur + step
|
||||
if (addAfter > max) {
|
||||
ToastUtils.showShort("阈值最大为${max.safeScale()}$unit")
|
||||
// ToastUtils.showShort("阈值最大为${max.safeScale()}$unit")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_speed_limit_max_value, "${max.safeScale()}$unit")
|
||||
return@onClickWidthDuration
|
||||
}
|
||||
holder.itemView.isEnabled = false
|
||||
|
||||
@@ -1133,7 +1133,8 @@ internal class DebugSettingView @JvmOverloads constructor(
|
||||
//重启工控机所有节点
|
||||
btnIpcReboot.onClick {
|
||||
CallerAutoPilotControlManager.sendIpcReboot()
|
||||
ToastUtils.showLong("重启命令已发送")
|
||||
// ToastUtils.showLong("重启命令已发送")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_send_reboot_success)
|
||||
}
|
||||
btnAppReboot.onClick {
|
||||
killApp()
|
||||
|
||||
@@ -39,6 +39,7 @@ import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.vehicle.SweeperVehicleConfigUtils
|
||||
import com.mogo.eagle.core.utilcode.util.GsonUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.zhjt.mogo.adas.data.AdasConstants
|
||||
@@ -646,7 +647,8 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
ivSpeedReduce.setOnClickListener {
|
||||
if (FunctionBuildConfig.detouringSpeed <= 3) {
|
||||
ToastUtils.showShort("阈值最小可为3 m/s")
|
||||
// ToastUtils.showShort("阈值最小可为3 m/s")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_detouring_speed_min_value)
|
||||
} else {
|
||||
FunctionBuildConfig.detouringSpeed--
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
@@ -655,7 +657,8 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
}
|
||||
ivSpeedAdd.setOnClickListener {
|
||||
if (FunctionBuildConfig.detouringSpeed >= 7) {
|
||||
ToastUtils.showShort("阈值最大可为7 m/s")
|
||||
// ToastUtils.showShort("阈值最大可为7 m/s")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_detouring_speed_max_value)
|
||||
} else {
|
||||
FunctionBuildConfig.detouringSpeed++
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
@@ -666,10 +669,12 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
val isSuccess =
|
||||
CallerAutoPilotControlManager.sendDetouringSpeed(FunctionBuildConfig.detouringSpeed.toDouble())
|
||||
if (isSuccess == true) {
|
||||
ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置成功")
|
||||
// ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_detouring_speed_success)
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "成功")
|
||||
} else {
|
||||
ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置失败")
|
||||
// ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_detouring_speed_fail)
|
||||
hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "失败")
|
||||
}
|
||||
clickEventAnalytics("变道速度阈值",true)
|
||||
@@ -677,7 +682,8 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
|
||||
ivSpeedOverTakeReduce.setOnClickListener {
|
||||
if (FunctionBuildConfig.overTakeSpeed <= 3) {
|
||||
ToastUtils.showShort("阈值最小可为3 m/s")
|
||||
// ToastUtils.showShort("阈值最小可为3 m/s")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_detouring_speed_min_value)
|
||||
} else {
|
||||
FunctionBuildConfig.overTakeSpeed -= 0.5f
|
||||
tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s"
|
||||
@@ -686,7 +692,8 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
}
|
||||
ivSpeedOverTakeAdd.setOnClickListener {
|
||||
if (FunctionBuildConfig.overTakeSpeed >= 12.5) {
|
||||
ToastUtils.showShort("阈值最大可为12.5 m/s")
|
||||
// ToastUtils.showShort("阈值最大可为12.5 m/s")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_over_take_speed_max_value)
|
||||
} else {
|
||||
FunctionBuildConfig.overTakeSpeed += 0.5f
|
||||
tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s"
|
||||
@@ -697,10 +704,12 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
val isSuccess =
|
||||
CallerAutoPilotControlManager.sendOvertakeMaxSpeed(FunctionBuildConfig.overTakeSpeed.toDouble())
|
||||
if (isSuccess == true) {
|
||||
ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置成功")
|
||||
// ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_sop_detouring_speed_success)
|
||||
hmiAction("SOP 超车目标障碍物速度阈值设置", "成功")
|
||||
} else {
|
||||
ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置失败")
|
||||
// ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_sop_detouring_speed_fail)
|
||||
hmiAction("SOP 超车目标障碍物速度阈值设置", "失败")
|
||||
}
|
||||
clickEventAnalytics("超车速度阈值",true)
|
||||
@@ -793,19 +802,22 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
if(!buttonView.isPressed) return@setOnCheckedChangeListener
|
||||
if (isChecked) {
|
||||
if (CallerHmiManager.isTaxiUnmanedDriverPerformTask()) {
|
||||
ToastUtils.showLong("请先结束当前任务")
|
||||
// ToastUtils.showLong("请先结束当前任务")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_please_stop_current_task)
|
||||
buttonView.isChecked = !isChecked
|
||||
return@setOnCheckedChangeListener
|
||||
}
|
||||
if (CallerHmiManager.isTaxiUnmanedDriverTakingOrders()) {
|
||||
ToastUtils.showLong("请先结束接单状态")
|
||||
// ToastUtils.showLong("请先结束接单状态")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_please_stop_receive_order_state)
|
||||
buttonView.isChecked = !isChecked
|
||||
return@setOnCheckedChangeListener
|
||||
}
|
||||
CallerHmiManager.setTaxiUnmanedDriverLineRoutingVerifyMode(true)
|
||||
} else {
|
||||
if (CallerHmiManager.isTaxiUnmanedDriverLineRoutingPerformTask()) {
|
||||
ToastUtils.showLong("请先结束当前任务")
|
||||
// ToastUtils.showLong("请先结束当前任务")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_please_stop_current_task)
|
||||
buttonView.isChecked = !isChecked
|
||||
return@setOnCheckedChangeListener
|
||||
}
|
||||
@@ -929,7 +941,8 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
if (mf != null) {
|
||||
mfStatusLayout.setClickEnabled(true)
|
||||
mfStatusLayout.setClickedTextAndTag(
|
||||
if (mf.isConnected()) "断开魔方连接" else "开始连接魔方",
|
||||
// if (mf.isConnected()) "断开魔方连接" else "开始连接魔方",
|
||||
if (mf.isConnected()) StringUtils.getString(R.string.module_core_disconnect_mofang) else StringUtils.getString(R.string.module_core_connect_mofang),
|
||||
if (mf.isConnected()) 0 else 1
|
||||
)
|
||||
mf.registerMoFangStatusListener(TAG, this)
|
||||
@@ -938,22 +951,26 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
if (tag == 0) {
|
||||
//断开魔方连接
|
||||
if (!mf.isConnected()) {
|
||||
Toast.makeText(context, "尚未建立连接", Toast.LENGTH_SHORT).show()
|
||||
// Toast.makeText(context, "尚未建立连接", Toast.LENGTH_SHORT).show()
|
||||
Toast.makeText(context, R.string.module_core_mofang_disconnect, Toast.LENGTH_SHORT).show()
|
||||
return@setOnClickCallback
|
||||
}
|
||||
mfStatusLayout.showLoadingView()
|
||||
mfStatusLayout.setLoadingViewText("正在断开魔方连接, 请稍候...")
|
||||
// mfStatusLayout.setLoadingViewText("正在断开魔方连接, 请稍候...")
|
||||
mfStatusLayout.setLoadingViewText(StringUtils.getString(R.string.module_core_disconnecting_mofang))
|
||||
mf.disconnect()
|
||||
}
|
||||
if (tag == 1) {
|
||||
//建立魔方连接
|
||||
if (mf.isConnected()) {
|
||||
Toast.makeText(context, "已连接,不要重复连接", Toast.LENGTH_SHORT).show()
|
||||
// Toast.makeText(context, "已连接,不要重复连接", Toast.LENGTH_SHORT).show()
|
||||
Toast.makeText(context, R.string.module_core_mofang_connected, Toast.LENGTH_SHORT).show()
|
||||
return@setOnClickCallback
|
||||
}
|
||||
mf.connect()
|
||||
mfStatusLayout.showLoadingView()
|
||||
mfStatusLayout.setLoadingViewText("正在连接魔方, 请稍候")
|
||||
// mfStatusLayout.setLoadingViewText("正在连接魔方, 请稍候")
|
||||
mfStatusLayout.setLoadingViewText(StringUtils.getString(R.string.module_core_connecting_mofang))
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1047,7 +1064,8 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
override fun onMoFangConnected() {
|
||||
mfStatusLayout?.also {
|
||||
it.hideLoadingView()
|
||||
it.setClickedTextAndTag("断开魔方连接", 0)
|
||||
// it.setClickedTextAndTag("断开魔方连接", 0)
|
||||
it.setClickedTextAndTag(StringUtils.getString(R.string.module_core_disconnect_mofang), 0)
|
||||
mfTest?.isEnabled = true
|
||||
mfTest?.isChecked = CallerDevaToolsManager.mofang()?.isEnableTest() ?: false
|
||||
}
|
||||
@@ -1056,7 +1074,8 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
override fun onMoFangDisconnected() {
|
||||
mfStatusLayout?.also {
|
||||
it.hideLoadingView()
|
||||
it.setClickedTextAndTag("开始连接魔方", 1)
|
||||
// it.setClickedTextAndTag("开始连接魔方", 1)
|
||||
it.setClickedTextAndTag(StringUtils.getString(R.string.module_core_connect_mofang), 1)
|
||||
mfTest?.isEnabled = false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,6 +30,7 @@ import com.mogo.eagle.core.function.hmi.ui.utils.HmiActionLog
|
||||
import com.mogo.eagle.core.function.hmi.ui.utils.HmiActionLog.Companion.hmiAction
|
||||
import com.mogo.eagle.core.utilcode.kotlin.PX
|
||||
import com.mogo.eagle.core.utilcode.rv.divider.CommonDividerItemDecoration
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.zhjt.mogo.adas.data.AdasConstants
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
@@ -51,7 +52,8 @@ class StatusSummaryView @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
it.add(StatusSummaryEntity(1))
|
||||
it.add(StatusSummaryEntity(2))
|
||||
it.add(StatusSummaryEntity(3))
|
||||
it.add(StatusSummaryEntity(4, "域控未连接", true))
|
||||
// it.add(StatusSummaryEntity(4, "域控未连接", true))
|
||||
it.add(StatusSummaryEntity(4, StringUtils.getString(R.string.module_core_ipc_disconnect), true))
|
||||
it.add(StatusSummaryEntity(5, CallerAutopilotCarConfigListenerManager.getCertFileResult(), CallerCloudCertManager.getRootCrtF().isNullOrEmpty()))
|
||||
}
|
||||
}
|
||||
@@ -114,7 +116,9 @@ class StatusSummaryView @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
super.onServerStatusChanged(isStarted)
|
||||
UiThreadHandler.post({
|
||||
if (data.size < 1) return@post
|
||||
data[0].desc = "司机屏Server启动${if (isStarted) "正常" else "异常"}"
|
||||
// data[0].desc = "司机屏Server启动${if (isStarted) "正常" else "异常"}"
|
||||
data[0].desc = "${StringUtils.getString(R.string.module_core_driver_server_start)}${
|
||||
if (isStarted) StringUtils.getString(R.string.module_core_normal) else StringUtils.getString(R.string.module_core_error)}"
|
||||
data[0].isException = !isStarted
|
||||
adapter?.notifyItemChanged(0)
|
||||
}, UiThreadHandler.MODE.QUEUE)
|
||||
@@ -124,7 +128,8 @@ class StatusSummaryView @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
super.gpsStatus(status)
|
||||
UiThreadHandler.post({
|
||||
if (data.size < 2) return@post
|
||||
data[1].desc = "GPS${if (status) "正常" else "异常"}"
|
||||
// data[1].desc = "GPS${if (status) "正常" else "异常"}"
|
||||
data[1].desc = "GPS${if (status) StringUtils.getString(R.string.module_core_normal) else StringUtils.getString(R.string.module_core_error)}"
|
||||
data[1].isException = !status
|
||||
adapter?.notifyItemChanged(1)
|
||||
}, UiThreadHandler.MODE.QUEUE)
|
||||
@@ -137,7 +142,9 @@ class StatusSummaryView @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
if (StatusDescriptor.CLOUD_SOCKET == descriptor) {
|
||||
UiThreadHandler.post({
|
||||
if (data.size < 3) return@post
|
||||
data[2].desc = "云Socket连接${if (isTrue) "正常" else "异常"}"
|
||||
// data[2].desc = "云Socket连接${if (isTrue) "正常" else "异常"}"
|
||||
data[2].desc = "${StringUtils.getString(R.string.module_core_cloud_socket_connect)}${
|
||||
if (isTrue) StringUtils.getString(R.string.module_core_normal) else StringUtils.getString(R.string.module_core_error)}"
|
||||
data[2].isException = !isTrue
|
||||
adapter?.notifyItemChanged(2)
|
||||
}, UiThreadHandler.MODE.QUEUE)
|
||||
@@ -148,7 +155,9 @@ class StatusSummaryView @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
super.tracingStatus(status) // 发送事件前限制了频率
|
||||
UiThreadHandler.post({
|
||||
if (data.size < 4) return@post
|
||||
data[3].desc = "寻迹算路${if (status) "正常" else "异常"}"
|
||||
// data[3].desc = "寻迹算路${if (status) "正常" else "异常"}"
|
||||
data[3].desc = "${StringUtils.getString(R.string.module_core_trail_tracking_route_calculation)}${
|
||||
if (status) StringUtils.getString(R.string.module_core_normal) else StringUtils.getString(R.string.module_core_error)}"
|
||||
data[3].isException = !status
|
||||
adapter?.notifyItemChanged(3)
|
||||
}, UiThreadHandler.MODE.QUEUE)
|
||||
@@ -159,43 +168,53 @@ class StatusSummaryView @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
var pair: Pair<String, Boolean>? = null
|
||||
when (status) {
|
||||
AdasConstants.IpcConnectionStatus.DISCONNECTED -> {
|
||||
pair = Pair("域控未连接", true)
|
||||
// pair = Pair("域控未连接", true)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_disconnect), true)
|
||||
}
|
||||
|
||||
AdasConstants.IpcConnectionStatus.CONNECTED -> {
|
||||
pair = Pair("域控已连接", false)
|
||||
// pair = Pair("域控已连接", false)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_connected), false)
|
||||
}
|
||||
|
||||
AdasConstants.IpcConnectionStatus.CONNECTING -> {
|
||||
pair = Pair("域控连接中", true)
|
||||
// pair = Pair("域控连接中", true)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_connecting), true)
|
||||
}
|
||||
|
||||
AdasConstants.IpcConnectionStatus.RECONNECTING_TIMER, AdasConstants.IpcConnectionStatus.RECONNECTING_NETWORK -> {
|
||||
pair = Pair("域控重连中", true)
|
||||
// pair = Pair("域控重连中", true)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_reconnecting), true)
|
||||
}
|
||||
|
||||
AdasConstants.IpcConnectionStatus.CONNECT_EXCEPTION -> {
|
||||
pair = Pair("域控连接异常", true)
|
||||
// pair = Pair("域控连接异常", true)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_connect_error), true)
|
||||
}
|
||||
|
||||
AdasConstants.IpcConnectionStatus.ILLEGAL_ADDRESS -> {
|
||||
pair = Pair("非法域控地址", true)
|
||||
// pair = Pair("非法域控地址", true)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_illegal_address), true)
|
||||
}
|
||||
|
||||
AdasConstants.IpcConnectionStatus.SEARCH_ADDRESS -> {
|
||||
pair = Pair("正在搜索域控地址", true)
|
||||
// pair = Pair("正在搜索域控地址", true)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_search_address), true)
|
||||
}
|
||||
|
||||
AdasConstants.IpcConnectionStatus.NOT_FOUND_ADDRESS -> {
|
||||
pair = Pair("找不到可用的域控地址", true)
|
||||
// pair = Pair("找不到可用的域控地址", true)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_not_found_address), true)
|
||||
}
|
||||
|
||||
AdasConstants.IpcConnectionStatus.HEARTBEAT_TIMEOUT -> {
|
||||
pair = Pair("域控心跳超时", true)
|
||||
// pair = Pair("域控心跳超时", true)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_heartbeat_timeout), true)
|
||||
}
|
||||
|
||||
AdasConstants.IpcConnectionStatus.SERVER_DISCONNECTED -> {
|
||||
pair = Pair("域控主动断开连接", true)
|
||||
// pair = Pair("域控主动断开连接", true)
|
||||
pair = Pair(StringUtils.getString(R.string.module_core_ipc_server_disconnected), true)
|
||||
}
|
||||
|
||||
else -> {}
|
||||
@@ -211,11 +230,13 @@ class StatusSummaryView @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
override fun authCrtFile(device: String, root: String) {
|
||||
super.authCrtFile(device, root)
|
||||
UiThreadHandler.post({
|
||||
if (CallerAutopilotCarConfigListenerManager.getCertFileResult() != "未开启认证") {
|
||||
// if (CallerAutopilotCarConfigListenerManager.getCertFileResult() != "未开启认证") {
|
||||
if (CallerAutopilotCarConfigListenerManager.getCertFileResult() != StringUtils.getString(R.string.module_core_authentication_not_enabled)) {
|
||||
return@post
|
||||
}
|
||||
if (data.size < 6) return@post
|
||||
data[5].desc = "本机证书已下载"
|
||||
// data[5].desc = "本机证书已下载"
|
||||
data[5].desc = StringUtils.getString(R.string.module_core_local_cert_downloaded)
|
||||
data[5].isException = false
|
||||
adapter?.notifyItemChanged(5)
|
||||
}, UiThreadHandler.MODE.QUEUE)
|
||||
@@ -225,7 +246,8 @@ class StatusSummaryView @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
super.authCrtError(errorMsg)
|
||||
UiThreadHandler.post({
|
||||
if (data.size < 6) return@post
|
||||
data[5].desc = "本机证书下载异常:$errorMsg"
|
||||
// data[5].desc = "本机证书下载异常:$errorMsg"
|
||||
data[5].desc = "${StringUtils.getString(R.string.module_core_local_cert_download_failed)}$errorMsg"
|
||||
data[5].isException = true
|
||||
adapter?.notifyItemChanged(5)
|
||||
}, UiThreadHandler.MODE.QUEUE)
|
||||
@@ -240,7 +262,8 @@ class StatusSummaryView @JvmOverloads constructor(context: Context, attrs: Attri
|
||||
UiThreadHandler.post({
|
||||
if (data.size < 6) return@post
|
||||
data[5].desc = msg
|
||||
data[5].isException = !msg.contains("成功校验")
|
||||
// data[5].isException = !msg.contains("成功校验")
|
||||
data[5].isException = !msg.contains(StringUtils.getString(R.string.module_core_check_success))
|
||||
adapter?.notifyItemChanged(5)
|
||||
}, UiThreadHandler.MODE.QUEUE)
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ import com.mogo.eagle.core.data.deva.bindingcar.IPCUpgradeStateInfo
|
||||
import com.mogo.eagle.core.data.enums.SidePattern
|
||||
import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener
|
||||
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.notification.WarningFloat
|
||||
import com.mogo.eagle.core.function.hmi.notification.anim.DefaultAnimator
|
||||
import com.mogo.eagle.core.function.hmi.ui.setting.SopView.Companion.sopView
|
||||
@@ -117,7 +118,8 @@ class ToolsView private constructor() {
|
||||
toolsView?.showAdUpgradeStatus(ipcUpgradeStateInfo)
|
||||
ipcUpgradeStateInfo.status.let {
|
||||
if (AdUpgradeStateHelper.isUpgradeSuccess(it)) {
|
||||
ToastUtils.showLong("升级成功")
|
||||
// ToastUtils.showLong("升级成功")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_ipc_upgrade_success)
|
||||
AdUpgradeStateHelper.setConfirmUpgrade(false)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,7 +59,8 @@ class AdUpgradeDialog(context: Context, images: List<String>, padSn: String, rel
|
||||
//确认升级
|
||||
CallerDevaToolsManager.upgradeConfirm(images, padSn, releaseId)
|
||||
AdUpgradeStateHelper.setConfirmUpgrade(true)
|
||||
ToastUtils.showLong("最新版本下载中...")
|
||||
// ToastUtils.showLong("最新版本下载中...")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_ipc_upgrade_dow)
|
||||
dismiss()
|
||||
}
|
||||
upgradeCancel?.setOnClickListener {
|
||||
|
||||
@@ -28,6 +28,7 @@ import com.mogo.eagle.core.function.msgbox.MsgBoxConfig
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ActivityUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.zhjt.service_biz.BizConfig
|
||||
@@ -82,7 +83,8 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
when {
|
||||
speed > 60 -> {
|
||||
// 设置失败键盘不消失,让用户直接修改
|
||||
ToastUtils.showShort("超过最大限速值60,设置失败")
|
||||
// ToastUtils.showShort("超过最大限速值60,设置失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_speed_beyond_max_value)
|
||||
}
|
||||
else -> {
|
||||
keyBoardUtil?.hideKeyboard()
|
||||
@@ -93,10 +95,12 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
when {
|
||||
isSuccess -> {
|
||||
etInputSpeed.setText(speedLimit.toString())
|
||||
ToastUtils.showShort("车速设置成功,立即生效")
|
||||
// ToastUtils.showShort("车速设置成功,立即生效")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_set_auto_pilot_speed_success)
|
||||
}
|
||||
else -> {
|
||||
ToastUtils.showShort("设置车速失败,请启动域控制器")
|
||||
// ToastUtils.showShort("设置车速失败,请启动域控制器")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_set_auto_pilot_speed_fail)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -113,11 +117,13 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
speedLimit = inputContent.toInt()
|
||||
if(speedLimit>60){
|
||||
speedLimit = 60
|
||||
ToastUtils.showShort("最大限速60")
|
||||
// ToastUtils.showShort("最大限速60")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_speed_max_value)
|
||||
}
|
||||
}
|
||||
}catch (t: Exception){
|
||||
ToastUtils.showShort("最大限速60")
|
||||
// ToastUtils.showShort("最大限速60")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_speed_max_value)
|
||||
speedLimit = 60
|
||||
|
||||
}
|
||||
@@ -175,7 +181,8 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
// tvAcceleration.text = "加速度 $maxAcceleration m/s²"
|
||||
// }
|
||||
clSpeedSet.visibility = View.VISIBLE
|
||||
tvAcceleration.text = "每次调整车速±5km/h,点击确定生效"
|
||||
// tvAcceleration.text = "每次调整车速±5km/h,点击确定生效"
|
||||
tvAcceleration.text = StringUtils.getString(R.string.module_core_speed_adjust_step_5km)
|
||||
if (speedLimit > 0) {
|
||||
etInputSpeed.setText(speedLimit.toString())
|
||||
}else{
|
||||
@@ -200,7 +207,8 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
svLayout.fullScroll(View.FOCUS_DOWN)
|
||||
}
|
||||
if (!CallerAutoPilotStatusListenerManager.isConnect()) {
|
||||
ToastUtils.showShort("设置车速失败,请启动域控制器")
|
||||
// ToastUtils.showShort("设置车速失败,请启动域控制器")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_set_auto_pilot_speed_fail)
|
||||
keyBoardUtil?.hideKeyboard()
|
||||
return@setOnTouchListener true
|
||||
} else {
|
||||
@@ -216,7 +224,8 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
speedLimit = 0
|
||||
etInputSpeed.setText(speedLimit.toString())
|
||||
} else{
|
||||
ToastUtils.showShort("车速不能再减了")
|
||||
// ToastUtils.showShort("车速不能再减了")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_speed_not_minus)
|
||||
}
|
||||
try{
|
||||
etInputSpeed.setSelection(speedLimit.toString().length)
|
||||
@@ -231,7 +240,8 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
speedLimit = 60
|
||||
etInputSpeed.setText(speedLimit.toString())
|
||||
} else{
|
||||
ToastUtils.showShort("车速不能再加了")
|
||||
// ToastUtils.showShort("车速不能再加了")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_speed_not_add)
|
||||
}
|
||||
try{
|
||||
etInputSpeed.setSelection(speedLimit.toString().length)
|
||||
@@ -242,7 +252,8 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
tvSureModify.setOnClickListener {
|
||||
if(speedLimit>60){
|
||||
// 设置失败键盘不消失,让用户直接修改
|
||||
ToastUtils.showShort("超过最大限速值60,设置失败")
|
||||
// ToastUtils.showShort("超过最大限速值60,设置失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_speed_beyond_max_value)
|
||||
return@setOnClickListener
|
||||
}
|
||||
val isSuccess = CallerAutoPilotControlManager.setAutoPilotSpeed(speedLimit)
|
||||
@@ -250,10 +261,12 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
isSuccess -> {
|
||||
//速度显示
|
||||
etInputSpeed.setText(speedLimit.toString())
|
||||
ToastUtils.showShort("车速设置成功,立即生效")
|
||||
// ToastUtils.showShort("车速设置成功,立即生效")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_set_auto_pilot_speed_success)
|
||||
}
|
||||
else -> {
|
||||
ToastUtils.showShort("设置车速失败,请启动域控制器")
|
||||
// ToastUtils.showShort("设置车速失败,请启动域控制器")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_set_auto_pilot_speed_fail)
|
||||
}
|
||||
}
|
||||
try {
|
||||
@@ -267,7 +280,8 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
if (CallerAutoPilotStatusListenerManager.getState() == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING
|
||||
|| CallerAutoPilotStatusListenerManager.getState() == IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING
|
||||
) {
|
||||
ToastUtils.showShort("请稍后退出")
|
||||
// ToastUtils.showShort("请稍后退出")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_please_out_later)
|
||||
return@onClick
|
||||
}
|
||||
EventBus.getDefault().post(EventLogout(EventLogout.LOGOUT_TYPE))
|
||||
|
||||
@@ -76,9 +76,11 @@ class ModifyBindingCarDialog(context: Context) : BaseFloatDialog(context, TAG),
|
||||
private fun modifyBindingCar() {
|
||||
CallerDevaToolsManager.modifyCarInfo {
|
||||
if (it.code == 200) {
|
||||
TipToast.shortTip("修改绑定成功")
|
||||
// TipToast.shortTip("修改绑定成功")
|
||||
TipToast.shortTip(R.string.module_core_change_bind_success)
|
||||
} else {
|
||||
TipToast.shortTip("修改绑定失败")
|
||||
// TipToast.shortTip("修改绑定失败")
|
||||
TipToast.shortTip(R.string.module_core_change_bind_failed)
|
||||
}
|
||||
}
|
||||
dismiss()
|
||||
|
||||
@@ -5,6 +5,7 @@ import androidx.lifecycle.LifecycleObserver
|
||||
import com.mogo.commons.voice.AIAssist
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.dialog.BaseFloatDialog
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import kotlinx.android.synthetic.main.dialog_ota_power_off_finish.tvPowerOffClose
|
||||
|
||||
/**
|
||||
@@ -28,7 +29,8 @@ class OTAPowerOffFinishDialog(context: Context) :
|
||||
|
||||
fun speakTTS(){
|
||||
//语音提示下电重启
|
||||
AIAssist.getInstance(context).speakTTSVoice("优雅停服完成,请操作车辆下电重启")
|
||||
// AIAssist.getInstance(context).speakTTSVoice("优雅停服完成,请操作车辆下电重启")
|
||||
AIAssist.getInstance(context).speakTTSVoice(StringUtils.getString(R.string.module_core_notice_shut_down_power_off))
|
||||
}
|
||||
|
||||
}
|
||||
@@ -45,9 +45,11 @@ class OTAUpgradeDialog(context: Context) :
|
||||
if(otaVersion == 1){
|
||||
val result = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
if(result){
|
||||
ToastUtils.showShort("立即升级命令发送成功")
|
||||
// ToastUtils.showShort("立即升级命令发送成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_ipc_upgrade_cmd_success)
|
||||
}else{
|
||||
ToastUtils.showShort("立即升级命令发送失败")
|
||||
// ToastUtils.showShort("立即升级命令发送失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_ipc_upgrade_cmd_fail)
|
||||
}
|
||||
}else if(otaVersion == 2){
|
||||
val query = JSONObject()
|
||||
@@ -60,9 +62,11 @@ class OTAUpgradeDialog(context: Context) :
|
||||
}else{
|
||||
val result = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
if(result){
|
||||
ToastUtils.showShort("立即升级命令发送成功")
|
||||
// ToastUtils.showShort("立即升级命令发送成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_ipc_upgrade_cmd_success)
|
||||
}else{
|
||||
ToastUtils.showShort("立即升级命令发送失败")
|
||||
// ToastUtils.showShort("立即升级命令发送失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_ipc_upgrade_cmd_fail)
|
||||
}
|
||||
|
||||
val query = JSONObject()
|
||||
@@ -80,9 +84,11 @@ class OTAUpgradeDialog(context: Context) :
|
||||
if(otaVersion == 1){
|
||||
val delayResult = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.DELAY)
|
||||
if(delayResult){
|
||||
ToastUtils.showShort("稍后升级命令发送成功")
|
||||
// ToastUtils.showShort("稍后升级命令发送成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_later_send_ipc_upgrade_cmd_success)
|
||||
}else{
|
||||
ToastUtils.showShort("稍后升级命令发送失败")
|
||||
// ToastUtils.showShort("稍后升级命令发送失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_later_send_ipc_upgrade_cmd_fail)
|
||||
}
|
||||
}else if(otaVersion == 2){
|
||||
//不允许OTA升级
|
||||
@@ -96,9 +102,11 @@ class OTAUpgradeDialog(context: Context) :
|
||||
}else{
|
||||
val delayResult = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.DELAY)
|
||||
if(delayResult){
|
||||
ToastUtils.showShort("稍后升级命令发送成功")
|
||||
// ToastUtils.showShort("稍后升级命令发送成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_later_send_ipc_upgrade_cmd_success)
|
||||
}else{
|
||||
ToastUtils.showShort("稍后升级命令发送失败")
|
||||
// ToastUtils.showShort("稍后升级命令发送失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_later_send_ipc_upgrade_cmd_fail)
|
||||
}
|
||||
|
||||
//不允许OTA升级
|
||||
@@ -121,9 +129,11 @@ class OTAUpgradeDialog(context: Context) :
|
||||
if(otaVersion == 1){
|
||||
val result = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
if(result){
|
||||
ToastUtils.showShort("立即升级命令发送成功")
|
||||
// ToastUtils.showShort("立即升级命令发送成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_ipc_upgrade_cmd_success)
|
||||
}else{
|
||||
ToastUtils.showShort("立即升级命令发送失败")
|
||||
// ToastUtils.showShort("立即升级命令发送失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_ipc_upgrade_cmd_fail)
|
||||
}
|
||||
}else if(otaVersion == 2){
|
||||
val query = JSONObject()
|
||||
@@ -136,9 +146,11 @@ class OTAUpgradeDialog(context: Context) :
|
||||
}else{
|
||||
val result = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
if(result){
|
||||
ToastUtils.showShort("立即升级命令发送成功")
|
||||
// ToastUtils.showShort("立即升级命令发送成功")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_ipc_upgrade_cmd_success)
|
||||
}else{
|
||||
ToastUtils.showShort("立即升级命令发送失败")
|
||||
// ToastUtils.showShort("立即升级命令发送失败")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_send_ipc_upgrade_cmd_fail)
|
||||
}
|
||||
|
||||
val query = JSONObject()
|
||||
|
||||
@@ -11,6 +11,7 @@ import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.dialog.BaseFloatDialog
|
||||
import com.mogo.eagle.core.utilcode.util.ResourceUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils.getHourMinSecondFormat
|
||||
import kotlinx.android.synthetic.main.dialog_ota_upgrade_result.ivUpgradeResult
|
||||
@@ -53,10 +54,14 @@ class OTAUpgradeResultDialog(context: Context) :
|
||||
MsgBoxBean(
|
||||
MsgBoxType.OTA,
|
||||
OTAMsg(
|
||||
"成功", "车辆部署任务执行结果", "任务下载完成,一分钟后操作车辆下电重启")
|
||||
// "成功", "车辆部署任务执行结果", "任务下载完成,一分钟后操作车辆下电重启")
|
||||
StringUtils.getString(R.string.module_core_succeed),
|
||||
StringUtils.getString(R.string.module_core_vehicle_deployment_task_result),
|
||||
StringUtils.getString(R.string.module_core_task_download_complete_power_restart))
|
||||
)
|
||||
)
|
||||
AIAssist.getInstance(context).speakTTSVoice("任务下载完成,一分钟后操作车辆下电重启")
|
||||
// AIAssist.getInstance(context).speakTTSVoice("任务下载完成,一分钟后操作车辆下电重启")
|
||||
AIAssist.getInstance(context).speakTTSVoice(StringUtils.getString(R.string.module_core_task_download_complete_power_restart))
|
||||
}else{
|
||||
//升级失败
|
||||
ivUpgradeResult.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_ota_upgrade_fail))
|
||||
@@ -71,10 +76,14 @@ class OTAUpgradeResultDialog(context: Context) :
|
||||
MsgBoxBean(
|
||||
MsgBoxType.OTA,
|
||||
OTAMsg(
|
||||
"失败", "车辆部署任务执行结果", "车辆部署任务执行失败,建议上报问题")
|
||||
// "失败", "车辆部署任务执行结果", "车辆部署任务执行失败,建议上报问题")
|
||||
StringUtils.getString(R.string.module_core_fail),
|
||||
StringUtils.getString(R.string.module_core_vehicle_deployment_task_result),
|
||||
StringUtils.getString(R.string.module_core_vehicle_deployment_task_failed_report))
|
||||
)
|
||||
)
|
||||
AIAssist.getInstance(context).speakTTSVoice("车辆部署任务执行失败")
|
||||
// AIAssist.getInstance(context).speakTTSVoice("车辆部署任务执行失败")
|
||||
AIAssist.getInstance(context).speakTTSVoice(StringUtils.getString(R.string.module_core_vehicle_deployment_task_failed))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -79,9 +79,11 @@ class ToBindingCarDialog(context: Context) : BaseFloatDialog(context, TAG), Life
|
||||
private fun toBindingCar() {
|
||||
CallerDevaToolsManager.modifyCarInfo {
|
||||
if (it.code == 200) {
|
||||
TipToast.shortTip("绑定成功")
|
||||
// TipToast.shortTip("绑定成功")
|
||||
TipToast.shortTip(R.string.module_core_bind_success)
|
||||
} else {
|
||||
TipToast.shortTip("绑定失败")
|
||||
// TipToast.shortTip("绑定失败")
|
||||
TipToast.shortTip(R.string.module_core_bind_failed)
|
||||
}
|
||||
}
|
||||
dismiss()
|
||||
|
||||
@@ -70,7 +70,8 @@ class UpgradeAppDialog(context: Context) : BaseFloatDialog(context,TAG), Lifecyc
|
||||
confirmTv?.onClick {
|
||||
val provider = CallerDevaToolsManager.upgradeProvider()
|
||||
if (provider?.isDownloading() == true) {
|
||||
ToastUtils.showShort("正在下载最新版本,请稍候再试...")
|
||||
// ToastUtils.showShort("正在下载最新版本,请稍候再试...")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_downloading_new_version)
|
||||
return@onClick
|
||||
}
|
||||
downloadApp()
|
||||
@@ -83,7 +84,8 @@ class UpgradeAppDialog(context: Context) : BaseFloatDialog(context,TAG), Lifecyc
|
||||
confirmForceTv?.onClick {
|
||||
val provider = CallerDevaToolsManager.upgradeProvider()
|
||||
if (provider?.isDownloading() == true) {
|
||||
ToastUtils.showShort("正在下载最新版本,请稍候再试...")
|
||||
// ToastUtils.showShort("正在下载最新版本,请稍候再试...")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_downloading_new_version)
|
||||
return@onClick
|
||||
}
|
||||
downloadApp()
|
||||
@@ -95,7 +97,8 @@ class UpgradeAppDialog(context: Context) : BaseFloatDialog(context,TAG), Lifecyc
|
||||
* 去下载
|
||||
*/
|
||||
private fun downloadApp() {
|
||||
ToastUtils.showLong("开始下载APK,稍后可前往downloads文件夹查看,通知栏查看下载进度")
|
||||
// ToastUtils.showLong("开始下载APK,稍后可前往downloads文件夹查看,通知栏查看下载进度")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_start_download_apk)
|
||||
tag?.let {
|
||||
downloadUrl?.let { url ->
|
||||
window?.decorView?.scope?.launch {
|
||||
|
||||
@@ -9,6 +9,7 @@ import android.widget.TextView
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.mogo.eagle.core.data.deva.ota.OtaUpgradeInfo
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
|
||||
/**
|
||||
* OTA升级下载状态适配器
|
||||
@@ -34,7 +35,8 @@ class OTADownloadStatusAdapter(private val context: Context): RecyclerView.Adapt
|
||||
holder.tvProductName.text = otaUpgradeInfo.product_name
|
||||
holder.tvDownloadProgress.text = "${(otaUpgradeInfo.cur_size*100/otaUpgradeInfo.total_size).toInt()}%"
|
||||
if(otaUpgradeInfo.cur_size == otaUpgradeInfo.total_size){
|
||||
holder.tvDownloadProgress.text = "部署中"
|
||||
// holder.tvDownloadProgress.text = "部署中"
|
||||
holder.tvDownloadProgress.text = StringUtils.getString(R.string.module_core_installing)
|
||||
}
|
||||
holder.pbDownloadProgress.progress = (otaUpgradeInfo.cur_size*100/otaUpgradeInfo.total_size).toInt()
|
||||
if(otaUpgradeInfo.left_time <= 0){
|
||||
@@ -42,9 +44,11 @@ class OTADownloadStatusAdapter(private val context: Context): RecyclerView.Adapt
|
||||
}else{
|
||||
holder.tvDownloadTime.visibility = View.VISIBLE
|
||||
val upgradeTime = if(otaUpgradeInfo.left_time > 60){
|
||||
"剩余${otaUpgradeInfo.left_time/60}分钟${otaUpgradeInfo.left_time%60}秒"
|
||||
// "剩余${otaUpgradeInfo.left_time/60}分钟${otaUpgradeInfo.left_time%60}秒"
|
||||
StringUtils.getString(R.string.module_core_installing_time_used, otaUpgradeInfo.left_time / 60, otaUpgradeInfo.left_time % 60)
|
||||
}else{
|
||||
"剩余${otaUpgradeInfo.left_time%60}秒"
|
||||
// "剩余${otaUpgradeInfo.left_time%60}秒"
|
||||
StringUtils.getString(R.string.module_core_installing_time_used1, otaUpgradeInfo.left_time%60)
|
||||
}
|
||||
holder.tvDownloadTime.text = upgradeTime
|
||||
}
|
||||
|
||||
@@ -29,6 +29,7 @@ import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.GlideImageLoader
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.util.DateTimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import kotlinx.android.synthetic.main.hmi_view_road_v2n_event_window.view.containerEventContent
|
||||
import kotlinx.android.synthetic.main.hmi_view_road_v2n_event_window.view.containerIconHint
|
||||
@@ -481,7 +482,8 @@ class RoadV2NEventWindowView @JvmOverloads constructor(
|
||||
)
|
||||
tvV2XHintContent.text = dataBean.hintStr
|
||||
tvV2XTimeStr.text =
|
||||
"更新时间:${DateTimeUtils.getTimeText(dataBean.timestamp, DateTimeUtils.HH_mm_ss)}"
|
||||
// "更新时间:${DateTimeUtils.getTimeText(dataBean.timestamp, DateTimeUtils.HH_mm_ss)}"
|
||||
"${StringUtils.getString(R.string.module_core_update_time)}${DateTimeUtils.getTimeText(dataBean.timestamp, DateTimeUtils.HH_mm_ss)}"
|
||||
if (dataBean.isNeedTTS && !TextUtils.isEmpty(dataBean.ttsStr)) {
|
||||
AIAssist.getInstance(context)
|
||||
.speakTTSVoiceWithLevel(dataBean.ttsStr, AIAssist.NEW_LEVEL_2)
|
||||
|
||||
@@ -26,6 +26,7 @@ import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.SoundPoolUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.eagle.core.utilcode.util.Utils
|
||||
import com.zhjt.service_biz.BizConfig
|
||||
@@ -116,7 +117,8 @@ class PncActionsView @JvmOverloads constructor(
|
||||
&& mTrafficLightResult != null
|
||||
&& hasRedLight()
|
||||
) {
|
||||
actions += ",预计${getWaitTrafficLightTime()}秒后通过"
|
||||
// actions += ",预计${getWaitTrafficLightTime()}秒后通过"
|
||||
actions += StringUtils.getString(R.string.module_core_estimated_pass_time, getWaitTrafficLightTime())
|
||||
} else {
|
||||
mTrafficLightResult = null
|
||||
}
|
||||
@@ -135,7 +137,8 @@ class PncActionsView @JvmOverloads constructor(
|
||||
}
|
||||
if (isPlanningFromServer && AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
|
||||
AIAssist.getInstance(Utils.getApp())
|
||||
.speakTTSVoiceWithLevel("正在使用云端规划通过路口", AIAssist.NEW_LEVEL_2)
|
||||
// .speakTTSVoiceWithLevel("正在使用云端规划通过路口", AIAssist.NEW_LEVEL_2)
|
||||
.speakTTSVoiceWithLevel(StringUtils.getString(R.string.module_core_using_cloud_planning_pass_intersection), AIAssist.NEW_LEVEL_2)
|
||||
}
|
||||
// update view
|
||||
if (actions.isNullOrEmpty()) {
|
||||
@@ -147,7 +150,8 @@ class PncActionsView @JvmOverloads constructor(
|
||||
tvHmiPncActions.text = actions
|
||||
}
|
||||
//voice tip
|
||||
if(actions == "已超出ODD"){
|
||||
// if(actions == "已超出ODD"){
|
||||
if(actions == StringUtils.getString(R.string.module_core_has_exceeded_odd)){
|
||||
val countDownTimer = object : CountDownTimer(3000, 1000){
|
||||
override fun onTick(p0: Long) {
|
||||
try {
|
||||
|
||||
@@ -55,7 +55,8 @@ class AutoPilotStatusView constructor(
|
||||
when (mAutopilotStatus) {
|
||||
0 -> {// 不可自动驾驶,adas与工控机没有链接,或工控机异常
|
||||
CallerLogger.e("$M_HMI$TAG", "不可自动驾驶,adas与工控机没有链接,或工控机异常,请检查")
|
||||
ToastUtils.showShort("不可自动驾驶,adas与工控机没有链接,或工控机异常,请检查")
|
||||
// ToastUtils.showShort("不可自动驾驶,adas与工控机没有链接,或工控机异常,请检查")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_not_start_autopilot)
|
||||
}
|
||||
1 -> {// 可自动驾驶,目前处于人工干预状态
|
||||
CallerHmiListenerManager.invokeCheckAutoPilotBtnListener(true)
|
||||
|
||||
@@ -153,7 +153,8 @@ open class BlueToothView: LinearLayout, IMoGoMoFangProvider.OnMoFangStatusListen
|
||||
val prev = prevTime.get()
|
||||
val current = SystemClock.elapsedRealtime()
|
||||
if (prev == 0L || TimeUnit.MILLISECONDS.toSeconds(current - prev) >= 30) {
|
||||
ToastUtils.showShort("蘑方当前处于低电状态,请及时充电")
|
||||
// ToastUtils.showShort("蘑方当前处于低电状态,请及时充电")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_mofang_low_power)
|
||||
prevTime.set(current)
|
||||
}
|
||||
ivMoFangStatus?.background = (ContextCompat.getDrawable(context, R.drawable.icon_mofang_low_power))
|
||||
|
||||
@@ -31,6 +31,7 @@ import com.mogo.eagle.core.function.hmi.ui.utils.HmiActionLog.Companion.hmiActio
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
|
||||
import com.mogo.eagle.core.utilcode.util.ParseVersionUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.zhjt.mogo.adas.common.MessageType
|
||||
@@ -205,30 +206,36 @@ class CheckSystemView @JvmOverloads constructor(
|
||||
*/
|
||||
private fun powerOff() {
|
||||
if (!connectStatus) {
|
||||
ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令")
|
||||
// ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_not_sent_shutdown_ipc)
|
||||
return
|
||||
}
|
||||
if(AppConfigInfo.dockerVersion.isEmpty()){
|
||||
ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令")
|
||||
// ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_not_sent_shutdown_ipc)
|
||||
return
|
||||
}
|
||||
if(ParseVersionUtils.parseVersion(true, AppConfigInfo.dockerVersion)<40100){
|
||||
ToastUtils.showShort("此域控版本不支持一键停服功能,最低支持版本为4.1.0")
|
||||
// ToastUtils.showShort("此域控版本不支持一键停服功能,最低支持版本为4.1.0")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_ipc_version_nonsupport_shutdown_ipc)
|
||||
return
|
||||
}
|
||||
if(CallerAutoPilotStatusListenerManager.getState() == 2){
|
||||
//当前处于自动驾驶状态,不可进行重启,Toast提示
|
||||
ToastUtils.showShort("请先退出自动驾驶状态")
|
||||
// ToastUtils.showShort("请先退出自动驾驶状态")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_please_exit_autopilot_state)
|
||||
return
|
||||
}
|
||||
if (isExecutingPowerOff) {
|
||||
//一键停服命令下发执行中
|
||||
ToastUtils.showShort("一键停服命令下发中,请勿重复点击")
|
||||
// ToastUtils.showShort("一键停服命令下发中,请勿重复点击")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_sending_shutdown_ipc)
|
||||
return
|
||||
}
|
||||
if (isPowerOffCountDown) {
|
||||
//系统停服中
|
||||
ToastUtils.showShort("系统停服中,请勿重复点击")
|
||||
// ToastUtils.showShort("系统停服中,请勿重复点击")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_shutdowning_ipc)
|
||||
return
|
||||
}
|
||||
//将是否正在下发一键停服命令标签改为true
|
||||
@@ -247,7 +254,8 @@ class CheckSystemView @JvmOverloads constructor(
|
||||
*/
|
||||
private fun showRebootDialog() {
|
||||
if (!connectStatus) {
|
||||
ToastUtils.showShort("尚未连接工控机,无法重启系统")
|
||||
// ToastUtils.showShort("尚未连接工控机,无法重启系统")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_not_sent_reboot_ipc)
|
||||
return
|
||||
}
|
||||
//dialog
|
||||
@@ -257,12 +265,14 @@ class CheckSystemView @JvmOverloads constructor(
|
||||
override fun confirm() {
|
||||
if (CallerAutoPilotStatusListenerManager.getState() == 2) {
|
||||
//当前处于自动驾驶状态,不可进行重启,Toast提示
|
||||
ToastUtils.showShort("请先退出自动驾驶状态")
|
||||
// ToastUtils.showShort("请先退出自动驾驶状态")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_please_exit_autopilot_state)
|
||||
} else {
|
||||
//确认重启
|
||||
CallerLogger.d("$M_HMI$TAG", "reboot confirm")
|
||||
CallerAutoPilotControlManager.sendIpcReboot()
|
||||
ToastUtils.showLong("重启命令已发送")
|
||||
// ToastUtils.showLong("重启命令已发送")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_send_reboot_success)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -417,7 +427,8 @@ class CheckSystemView @JvmOverloads constructor(
|
||||
if ( receivedAck.status == ReceivedAck.Status.NORMAL) {
|
||||
//一键停服命令回执成功,则正常进入停服阶段中,1分钟倒计时,并且TTS和消息盒子提示
|
||||
CallerDevaToolsManager.setPowerOffStatus(2)
|
||||
AIAssist.getInstance(context).speakTTSVoice("请等待1分钟再执行车辆下电")
|
||||
// AIAssist.getInstance(context).speakTTSVoice("请等待1分钟再执行车辆下电")
|
||||
AIAssist.getInstance(context).speakTTSVoice(StringUtils.getString(R.string.module_core_one_minute_later_power_off))
|
||||
saveMsgBox(
|
||||
MsgBoxBean(
|
||||
MsgBoxType.V2X, V2XMsg(
|
||||
|
||||
@@ -25,6 +25,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerColdStartStateListenerManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.util.ResourceUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.zhjt.mogo.adas.data.AdasConstants
|
||||
@@ -185,7 +186,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
when(status){
|
||||
//主动断开连接
|
||||
AdasConstants.IpcConnectionStatus.DISCONNECTED ->{
|
||||
showIPCConnectFailView("域控未连接或主动断开连接,建议重启车辆并上报问题")
|
||||
// showIPCConnectFailView("域控未连接或主动断开连接,建议重启车辆并上报问题")
|
||||
showIPCConnectFailView(StringUtils.getString(R.string.module_core_cold_ipc_disconnected))
|
||||
}
|
||||
//连接中
|
||||
AdasConstants.IpcConnectionStatus.CONNECTING ->{
|
||||
@@ -201,13 +203,15 @@ class ColdStartView @JvmOverloads constructor(
|
||||
}
|
||||
//连接异常(鹰眼与域控连接失败、无法连接、非正常断开等)
|
||||
AdasConstants.IpcConnectionStatus.CONNECT_EXCEPTION ->{
|
||||
showIPCConnectFailView("本设备与域控未连接,建议检查WIFI状态、域控开关")
|
||||
// showIPCConnectFailView("本设备与域控未连接,建议检查WIFI状态、域控开关")
|
||||
showIPCConnectFailView(StringUtils.getString(R.string.module_core_cold_ipc_connect_exception))
|
||||
// showIPCConnectFailView("域控连接异常,建议检查WiFi连接情况及域控是否开机")
|
||||
}
|
||||
//非法地址(连接模式为指定地址时:表示当前鹰眼调用连接时传入的域控地址错误或不符合规则【不修改默认配置不会出现此问题】;
|
||||
// 连接模式为PING模式时:表示传入的PING地址列表存在问题)
|
||||
AdasConstants.IpcConnectionStatus.ILLEGAL_ADDRESS ->{
|
||||
showIPCConnectFailView("非法域控地址,建议重启车辆并上报问题")
|
||||
// showIPCConnectFailView("非法域控地址,建议重启车辆并上报问题")
|
||||
showIPCConnectFailView(StringUtils.getString(R.string.module_core_cold_ipc_illegal_address))
|
||||
}
|
||||
//正在搜索域控地址
|
||||
AdasConstants.IpcConnectionStatus.SEARCH_ADDRESS ->{
|
||||
@@ -217,23 +221,28 @@ class ColdStartView @JvmOverloads constructor(
|
||||
// 【不修改默认配置的情况下需要排查PAD是否连接车载路由器、工控机是否连接车载路由器、
|
||||
// 工控机是否开机等】)
|
||||
AdasConstants.IpcConnectionStatus.NOT_FOUND_ADDRESS ->{
|
||||
showIPCConnectFailView("找不到域控可用地址,建议检查车载路由器及域控是否开机")
|
||||
// showIPCConnectFailView("找不到域控可用地址,建议检查车载路由器及域控是否开机")
|
||||
showIPCConnectFailView(StringUtils.getString(R.string.module_core_cold_ipc_not_found_address))
|
||||
}
|
||||
//域控证书认证异常
|
||||
AdasConstants.IpcConnectionStatus.CERTIFICATION_FAILED ->{
|
||||
showIPCConnectFailView("域控证书认证异常")
|
||||
// showIPCConnectFailView("域控证书认证异常")
|
||||
showIPCConnectFailView(StringUtils.getString(R.string.module_core_cold_ipc_certification_failed))
|
||||
}
|
||||
//心跳超时(连接域控成功后在一段时间内未收到域控任何数据),超时时间:
|
||||
AdasConstants.IpcConnectionStatus.HEARTBEAT_TIMEOUT ->{
|
||||
showIPCConnectFailView("心跳超时(连接域控成功后在一段时间内未收到域控任何数据)")
|
||||
// showIPCConnectFailView("心跳超时(连接域控成功后在一段时间内未收到域控任何数据)")
|
||||
showIPCConnectFailView(StringUtils.getString(R.string.module_core_cold_ipc_heartbeat_timeout))
|
||||
}
|
||||
//協議不匹配(被连接的域控端非WebSocket协议【可能性非常低】)
|
||||
AdasConstants.IpcConnectionStatus.PROTOCOL_MISMATCH ->{
|
||||
showIPCConnectFailView("协议不匹配")
|
||||
// showIPCConnectFailView("协议不匹配")
|
||||
showIPCConnectFailView(StringUtils.getString(R.string.module_core_cold_ipc_protocol_mismatch))
|
||||
}
|
||||
//域控主动断开连接(域控主动发起断开WebSocket连接
|
||||
AdasConstants.IpcConnectionStatus.SERVER_DISCONNECTED ->{
|
||||
showIPCConnectFailView("域控主动断开连接,建议重启车辆并上报问题")
|
||||
// showIPCConnectFailView("域控主动断开连接,建议重启车辆并上报问题")
|
||||
showIPCConnectFailView(StringUtils.getString(R.string.module_core_cold_ipc_server_disconnected))
|
||||
}
|
||||
|
||||
else -> {}
|
||||
@@ -259,7 +268,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
coldStartStatus = true
|
||||
showColdStartSuccessView()
|
||||
//冷启动成功埋点统计
|
||||
reason = "冷启动成功"
|
||||
// reason = "冷启动成功"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_started_success)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.coldStartSuccess,reason)
|
||||
//记录冷启动成功时间
|
||||
ColdStartConfig.setColdStartSuccessTime(System.currentTimeMillis())
|
||||
@@ -294,7 +304,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
coldStartStatus = true
|
||||
showColdStartSuccessView()
|
||||
//冷启动成功埋点统计
|
||||
reason = "冷启动成功"
|
||||
// reason = "冷启动成功"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_started_success)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.coldStartSuccess,reason)
|
||||
//记录冷启动成功时间
|
||||
ColdStartConfig.setColdStartSuccessTime(System.currentTimeMillis())
|
||||
@@ -333,7 +344,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
showColdStartSuccessView()
|
||||
}
|
||||
//冷启动成功埋点统计
|
||||
reason = "冷启动成功"
|
||||
// reason = "冷启动成功"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_started_success)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.coldStartSuccess,reason)
|
||||
//记录冷启动成功时间
|
||||
ColdStartConfig.setColdStartSuccessTime(System.currentTimeMillis())
|
||||
@@ -342,7 +354,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
//展示冷启动失败视图
|
||||
showColdStartFailView()
|
||||
//冷启动失败埋点统计
|
||||
reason = "SSM返回冷启动失败"
|
||||
// reason = "SSM返回冷启动失败"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_start_failed_ssm)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.coldStartFail,reason)
|
||||
}
|
||||
nodeList.clear()
|
||||
@@ -412,13 +425,15 @@ class ColdStartView @JvmOverloads constructor(
|
||||
// 网络连接可用
|
||||
connectWifiSuccess()
|
||||
//网络连接可用埋点统计
|
||||
reason = "网络连接可用"
|
||||
// reason = "网络连接可用"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_network_usable)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.wifiConnectSuccess,reason)
|
||||
} else {
|
||||
// 网络连接不可用
|
||||
showWifiConnecting()
|
||||
//网络连接不可用埋点统计
|
||||
reason = "网络连接不可用"
|
||||
// reason = "网络连接不可用"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_network_unusable)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.wifiConnectFail,reason)
|
||||
}
|
||||
}
|
||||
@@ -436,23 +451,28 @@ class ColdStartView @JvmOverloads constructor(
|
||||
return when(state){
|
||||
// 未开始
|
||||
SsmInfo.CSState.COLD_START_DEFAULT->{
|
||||
"启动中…"
|
||||
// "启动中…"
|
||||
StringUtils.getString(R.string.module_core_starting)
|
||||
}
|
||||
// 启动中
|
||||
SsmInfo.CSState.COLD_START_STARTING->{
|
||||
"启动中…"
|
||||
// "启动中…"
|
||||
StringUtils.getString(R.string.module_core_starting)
|
||||
}
|
||||
// 就绪
|
||||
SsmInfo.CSState.COLD_START_READY->{
|
||||
"系统启动成功,即将进入主页"
|
||||
// "系统启动成功,即将进入主页"
|
||||
StringUtils.getString(R.string.module_core_cold_ipc_started)
|
||||
}
|
||||
// 有异常未就绪
|
||||
SsmInfo.CSState.COLD_START_UNREADY->{
|
||||
"系统启动异常,建议重启车辆并上报问题"
|
||||
// "系统启动异常,建议重启车辆并上报问题"
|
||||
StringUtils.getString(R.string.module_core_cold_ipc_start_error)
|
||||
}
|
||||
// 超时
|
||||
SsmInfo.CSState.COLD_START_TIMEOUT->{
|
||||
"系统启动超时,建议重启车辆并上报问题"
|
||||
// "系统启动超时,建议重启车辆并上报问题"
|
||||
StringUtils.getString(R.string.module_core_cold_ipc_start_timeout)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -464,19 +484,23 @@ class ColdStartView @JvmOverloads constructor(
|
||||
return when(nodeStatus){
|
||||
// 启动中
|
||||
SsmInfo.NodeStatus.NODE_STARTING->{
|
||||
"启动中…"
|
||||
// "启动中…"
|
||||
StringUtils.getString(R.string.module_core_starting)
|
||||
}
|
||||
// 启动成功
|
||||
SsmInfo.NodeStatus.NODE_FINISH->{
|
||||
"启动成功"
|
||||
// "启动成功"
|
||||
StringUtils.getString(R.string.module_core_cold_started_success1)
|
||||
}
|
||||
// 启动失败
|
||||
SsmInfo.NodeStatus.NODE_FAILED->{
|
||||
"启动失败"
|
||||
// "启动失败"
|
||||
StringUtils.getString(R.string.module_core_cold_start_failed)
|
||||
}
|
||||
// 启动超时
|
||||
SsmInfo.NodeStatus.NODE_TIMEOUT->{
|
||||
"启动超时"
|
||||
// "启动超时"
|
||||
StringUtils.getString(R.string.module_core_cold_start_timeout1)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -525,7 +549,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
rvFaultList.visibility = View.GONE
|
||||
|
||||
//域控连接成功埋点统计
|
||||
reason = "域控连接成功"
|
||||
// reason = "域控连接成功"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_ipc_connected)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.ipcConnectSuccess,reason)
|
||||
ssmConnectStatus = false
|
||||
coldStartStatus = false
|
||||
@@ -571,7 +596,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
ivFaultIcon.visibility = View.GONE
|
||||
rvFaultList.visibility = View.GONE
|
||||
//域控连接失败埋点统计
|
||||
this.reason = "域控连接失败:$failReason"
|
||||
// this.reason = "域控连接失败:$failReason"
|
||||
this.reason = "${StringUtils.getString(R.string.module_core_cold_ipc_connected_fail)}$failReason"
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.ipcConnectFail,reason)
|
||||
ssmConnectStatus = false
|
||||
coldStartStatus = false
|
||||
@@ -685,7 +711,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
tvSystemStartupTitle.text = resources.getString(R.string.cold_start_title_tel_wait)
|
||||
tvSystemStartupTitle.setTextColor(ContextCompat.getColor(context, R.color.white))
|
||||
ivIpcConnectStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_process))
|
||||
tvIpcConnectContent.text = "正在重连域控..."
|
||||
// tvIpcConnectContent.text = "正在重连域控..."
|
||||
tvIpcConnectContent.text = StringUtils.getString(R.string.module_core_cold_ipc_connecting)
|
||||
if(ipcRotationAnim == null){
|
||||
ipcRotationAnim = ObjectAnimator.ofFloat(ivIpcConnectStatus, "rotation", 0f, 360f)
|
||||
}
|
||||
@@ -728,7 +755,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
//开始启动冷启动等待倒计时
|
||||
coldStartProcess()
|
||||
//SSM连接成功埋点统计
|
||||
reason = "SSM连接成功"
|
||||
// reason = "SSM连接成功"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_ssm_connected)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.ssmConnectSuccess,reason)
|
||||
}
|
||||
ssmConnectStatus = true
|
||||
@@ -751,7 +779,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
tvSsmConnectContent.setTextColor(ContextCompat.getColor(context, R.color.white))
|
||||
//展示冷启动连接过程视图
|
||||
rvNodeList.visibility = View.VISIBLE
|
||||
tvColdStartContent.text = "启动中…"
|
||||
// tvColdStartContent.text = "启动中…"
|
||||
tvColdStartContent.text = StringUtils.getString(R.string.module_core_starting)
|
||||
tvColdStartContent.setTextColor(ContextCompat.getColor(context, R.color.white))
|
||||
ivColdStartStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_process))
|
||||
//开启冷启动连接状态动画
|
||||
@@ -800,7 +829,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
//展示连接SSM失败视图
|
||||
showSSMConnectFailView()
|
||||
//SSM连接失败埋点统计
|
||||
reason = "等待SSM超时"
|
||||
// reason = "等待SSM超时"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_ssm_timeout)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.ssmConnectFail,reason)
|
||||
}
|
||||
}
|
||||
@@ -828,7 +858,8 @@ class ColdStartView @JvmOverloads constructor(
|
||||
//展示冷启动失败视图
|
||||
showColdStartFailView()
|
||||
//冷启动失败埋点统计
|
||||
reason = "等待冷启动超时"
|
||||
// reason = "等待冷启动超时"
|
||||
reason = StringUtils.getString(R.string.module_core_cold_ssm_await_timeout)
|
||||
ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.coldStartFail,reason)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import com.mogo.eagle.core.function.api.hmi.view.IViewControlListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
|
||||
import com.mogo.eagle.core.function.call.hmi.CallerHmiViewControlListenerManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.zhjt.mogo.adas.data.AdasConstants
|
||||
import kotlinx.android.synthetic.main.view_connection_process.view.clConnectionTip
|
||||
@@ -222,7 +223,8 @@ class ConnectionProcessView @JvmOverloads constructor(
|
||||
pbConnectionProgress.progressDrawable = ContextCompat.getDrawable(context, R.drawable.connection_progress_style)
|
||||
pbConnectionProgress.progress = 25
|
||||
tvConnectionStatus.setPadding(0,0,0,10)
|
||||
tvConnectionStatus.text = "系统启动中..."
|
||||
// tvConnectionStatus.text = "系统启动中..."
|
||||
tvConnectionStatus.text = StringUtils.getString(R.string.module_core_ipc_starting)
|
||||
clConnectionTip.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
@@ -239,7 +241,8 @@ class ConnectionProcessView @JvmOverloads constructor(
|
||||
pbConnectionProgress.progressDrawable = ContextCompat.getDrawable(context, R.drawable.connection_progress_style)
|
||||
pbConnectionProgress.progress = 50
|
||||
tvConnectionStatus.setPadding(0,0,0,10)
|
||||
tvConnectionStatus.text = "系统启动中..."
|
||||
// tvConnectionStatus.text = "系统启动中..."
|
||||
tvConnectionStatus.text = StringUtils.getString(R.string.module_core_ipc_starting)
|
||||
clConnectionTip.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
@@ -256,7 +259,8 @@ class ConnectionProcessView @JvmOverloads constructor(
|
||||
pbConnectionProgress.progressDrawable = ContextCompat.getDrawable(context, R.drawable.connection_success_style)
|
||||
pbConnectionProgress.progress = 100
|
||||
tvConnectionStatus.setPadding(0,0,0,0)
|
||||
tvConnectionStatus.text = "系统启动成功"
|
||||
// tvConnectionStatus.text = "系统启动成功"
|
||||
tvConnectionStatus.text = StringUtils.getString(R.string.module_core_ipc_started)
|
||||
clConnectionTip.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
@@ -273,10 +277,13 @@ class ConnectionProcessView @JvmOverloads constructor(
|
||||
pbConnectionProgress.progressDrawable = ContextCompat.getDrawable(context, R.drawable.connection_fail_style)
|
||||
pbConnectionProgress.progress = 25
|
||||
tvConnectionStatus.setPadding(0,0,0,0)
|
||||
tvConnectionStatus.text = "系统启动异常"
|
||||
// tvConnectionStatus.text = "系统启动异常"
|
||||
tvConnectionStatus.text = StringUtils.getString(R.string.module_core_ipc_start_error)
|
||||
clConnectionTip.visibility = View.VISIBLE
|
||||
tvConnectionTipTitle.text = "Telematics连接异常"
|
||||
tvConnectionTipContent.text = "建议重启车辆并上报问题"
|
||||
// tvConnectionTipTitle.text = "Telematics连接异常"
|
||||
tvConnectionTipTitle.text = StringUtils.getString(R.string.module_core_ipc_tel_node_connect_error)
|
||||
// tvConnectionTipContent.text = "建议重启车辆并上报问题"
|
||||
tvConnectionTipContent.text = StringUtils.getString(R.string.module_core_reboot_car)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -292,10 +299,13 @@ class ConnectionProcessView @JvmOverloads constructor(
|
||||
pbConnectionProgress.progressDrawable = ContextCompat.getDrawable(context, R.drawable.connection_fail_style)
|
||||
pbConnectionProgress.progress = 50
|
||||
tvConnectionStatus.setPadding(0,0,0,0)
|
||||
tvConnectionStatus.text = "系统启动异常"
|
||||
// tvConnectionStatus.text = "系统启动异常"
|
||||
tvConnectionStatus.text = StringUtils.getString(R.string.module_core_ipc_start_error)
|
||||
clConnectionTip.visibility = View.VISIBLE
|
||||
tvConnectionTipTitle.text = "SSM连接异常"
|
||||
tvConnectionTipContent.text = "建议重启车辆并上报问题"
|
||||
// tvConnectionTipTitle.text = "SSM连接异常"
|
||||
tvConnectionTipTitle.text = StringUtils.getString(R.string.module_core_cold_ssm_connect_error)
|
||||
// tvConnectionTipContent.text = "建议重启车辆并上报问题"
|
||||
tvConnectionTipContent.text = StringUtils.getString(R.string.module_core_reboot_car)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -311,10 +321,13 @@ class ConnectionProcessView @JvmOverloads constructor(
|
||||
pbConnectionProgress.progressDrawable = ContextCompat.getDrawable(context, R.drawable.connection_fail_style)
|
||||
pbConnectionProgress.progress = 100
|
||||
tvConnectionStatus.setPadding(0,0,0,0)
|
||||
tvConnectionStatus.text = "系统启动异常"
|
||||
// tvConnectionStatus.text = "系统启动异常"
|
||||
tvConnectionStatus.text = StringUtils.getString(R.string.module_core_ipc_start_error)
|
||||
clConnectionTip.visibility = View.VISIBLE
|
||||
tvConnectionTipTitle.text = "系统冷启动异常"
|
||||
tvConnectionTipContent.text = "建议重启车辆并上报问题"
|
||||
// tvConnectionTipTitle.text = "系统冷启动异常"
|
||||
tvConnectionTipTitle.text = StringUtils.getString(R.string.module_core_cold_start_error)
|
||||
// tvConnectionTipContent.text = "建议重启车辆并上报问题"
|
||||
tvConnectionTipContent.text = StringUtils.getString(R.string.module_core_reboot_car)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -139,10 +139,12 @@ class DriverMonitorView :
|
||||
carLiveCallBack
|
||||
)
|
||||
} else {
|
||||
ToastUtils.showShort("正在直播中")
|
||||
// ToastUtils.showShort("正在直播中")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_live_streaming)
|
||||
}
|
||||
} else {
|
||||
ToastUtils.showShort("当前车内没有直播源")
|
||||
// ToastUtils.showShort("当前车内没有直播源")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_car_not_live_device)
|
||||
//为空又怎么撸
|
||||
CallerLogger.d(
|
||||
"${SceneConstant.M_HMI}$TAG",
|
||||
|
||||
@@ -20,6 +20,7 @@ import com.mogo.eagle.core.function.call.hmi.CallerHmiViewControlListenerManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.kotlin.scope
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import kotlinx.coroutines.Runnable
|
||||
import kotlinx.coroutines.launch
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
@@ -154,11 +155,15 @@ class GreenWaveView: LinearLayout, IMoGoChassisLocationGCJ02Listener, RecyclerVi
|
||||
rv?.adapter = WaveAdapter()
|
||||
startAutoScroll()
|
||||
if (isDriver) {
|
||||
driver_recommend_speed?.text = "建议车速${minSpeed}-${maxSpeed}km/h"
|
||||
driver_recommend_cross?.text = "可丝滑通过${cross}个路口"
|
||||
// driver_recommend_speed?.text = "建议车速${minSpeed}-${maxSpeed}km/h"
|
||||
driver_recommend_speed?.text = StringUtils.getString(R.string.module_core_suggested_speed_test_range, minSpeed, maxSpeed)
|
||||
// driver_recommend_cross?.text = "可丝滑通过${cross}个路口"
|
||||
driver_recommend_cross?.text = StringUtils.getString(R.string.module_core_pass_intersection_count, cross)
|
||||
} else {
|
||||
passenger_recommend_speed?.text = "建议车速${minSpeed}-${maxSpeed}km/h"
|
||||
passenger_recommend_cross?.text = "可丝滑通过${cross}个路口"
|
||||
// passenger_recommend_speed?.text = "建议车速${minSpeed}-${maxSpeed}km/h"
|
||||
passenger_recommend_speed?.text = StringUtils.getString(R.string.module_core_suggested_speed_test_range, minSpeed, maxSpeed)
|
||||
// passenger_recommend_cross?.text = "可丝滑通过${cross}个路口"
|
||||
passenger_recommend_cross?.text = StringUtils.getString(R.string.module_core_pass_intersection_count, cross)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerServicesEventManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.view.TravelRealityView
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
import java.util.Random
|
||||
@@ -124,9 +125,18 @@ open class ItinerarySummaryDialog(context: Context, isDriver: Boolean, theme: In
|
||||
val formattedMileage: String = String.format("%.1f", mileage/1000)
|
||||
val formattedSmartRoadLen: String = String.format("%.1f", smartRoadLen/1000)
|
||||
if(isDriver){
|
||||
tvSummaryZhiContent?.text = "全程 ${formattedMileage}km,智慧道路护航 ${(formattedSmartRoadLen)}km,全息感知覆盖率 ${(smartRoadLen*100/mileage).toInt()}%,车辆服务次数${vehicleServiceNum}次"
|
||||
// tvSummaryZhiContent?.text = "全程 ${formattedMileage}km,智慧道路护航 ${(formattedSmartRoadLen)}km,全息感知覆盖率 ${(smartRoadLen*100/mileage).toInt()}%,车辆服务次数${vehicleServiceNum}次"
|
||||
tvSummaryZhiContent?.text = StringUtils.getString(
|
||||
R.string.module_core_trip_core_data_summary,
|
||||
formattedMileage,
|
||||
formattedSmartRoadLen,
|
||||
(smartRoadLen * 100 / mileage).toInt(),
|
||||
vehicleServiceNum
|
||||
)
|
||||
}else{
|
||||
tvSummaryZhiContent?.text = "旅途全长 $formattedMileage km,全感知覆盖率 ${(smartRoadLen*100/mileage).toInt()}%,车辆服务次数${vehicleServiceNum}次"
|
||||
// tvSummaryZhiContent?.text = "旅途全长 $formattedMileage km,全感知覆盖率 ${(smartRoadLen*100/mileage).toInt()}%,车辆服务次数${vehicleServiceNum}次"
|
||||
tvSummaryZhiContent?.text =
|
||||
StringUtils.getString(R.string.module_core_trip_key_data, formattedMileage, (smartRoadLen * 100 / mileage).toInt(), vehicleServiceNum)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,6 +29,7 @@ import com.mogo.eagle.core.function.hmi.ui.utils.HmiActionLog
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import mogo.yycp.paralleldriving.protocol.ParallelDrivingRequest.ParallelRequest
|
||||
@@ -112,18 +113,21 @@ class ParallelDriveView @JvmOverloads constructor(
|
||||
APP_REQUESTING -> {
|
||||
cancelParaDrive()
|
||||
HmiActionLog.hmiAction(TAG,"Click-请求已取消")
|
||||
ToastUtils.showShort("请求已取消!")
|
||||
// ToastUtils.showShort("请求已取消!")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_cancel_para_drive)
|
||||
checkAvailableAndUpdateUI()
|
||||
}
|
||||
|
||||
AD_REQUESTING -> {
|
||||
HmiActionLog.hmiAction(TAG,"Click-自动驾驶正在请求平行驾驶")
|
||||
ToastUtils.showShort("自动驾驶正在请求平行驾驶")
|
||||
// ToastUtils.showShort("自动驾驶正在请求平行驾驶")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_request_para_drive)
|
||||
}
|
||||
|
||||
UNAVAILABLE -> {
|
||||
HmiActionLog.hmiAction(TAG,"Click-请P档驻车并松开油门刹车后请求")
|
||||
ToastUtils.showShort("请P档驻车并松开油门刹车后请求")
|
||||
// ToastUtils.showShort("请P档驻车并松开油门刹车后请求")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_para_drive_not_conditions)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -204,7 +208,8 @@ class ParallelDriveView @JvmOverloads constructor(
|
||||
"TASK_REJECTED" -> {// 任务已被拒绝
|
||||
state = FAILURE
|
||||
updateUI(FAILURE)
|
||||
AIAssist.getInstance(context).speakTTSVoice("请求已被拒绝")
|
||||
// AIAssist.getInstance(context).speakTTSVoice("请求已被拒绝")
|
||||
AIAssist.getInstance(context).speakTTSVoice(StringUtils.getString(R.string.module_core_request_rejected))
|
||||
}
|
||||
|
||||
"PARALLEL_EXCEPTION_MANUAL_DRIVING" -> {// 异常请人工驾驶
|
||||
@@ -385,7 +390,8 @@ class ParallelDriveView @JvmOverloads constructor(
|
||||
.setType(2)// 2:鹰眼请求
|
||||
.setTakeover(1)// 1:请求平行驾驶接管
|
||||
.setCode("PAD_ACTIVE")
|
||||
parallelRequest.reason = "鹰眼请求"
|
||||
// parallelRequest.reason = "鹰眼请求"
|
||||
parallelRequest.reason = StringUtils.getString(R.string.module_core_eagle_eye_request)
|
||||
CallerAutoPilotControlManager.sendParallelDrivingReq(
|
||||
System.currentTimeMillis().toString(), parallelRequest.build()
|
||||
)
|
||||
@@ -398,7 +404,8 @@ class ParallelDriveView @JvmOverloads constructor(
|
||||
.setType(2)// 2:鹰眼请求
|
||||
.setTakeover(2)// 2:取消平行驾驶接管
|
||||
.setCode("PAD_ACTIVE")
|
||||
parallelRequest.reason = "鹰眼请求"
|
||||
// parallelRequest.reason = "鹰眼请求"
|
||||
parallelRequest.reason = StringUtils.getString(R.string.module_core_eagle_eye_request)
|
||||
CallerAutoPilotControlManager.sendParallelDrivingReq(
|
||||
System.currentTimeMillis().toString(), parallelRequest.build()
|
||||
)
|
||||
|
||||
@@ -13,6 +13,7 @@ import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import com.mogo.eagle.core.function.api.map.roma.IMoGoRomaListener
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapRomaListener
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import kotlinx.android.synthetic.main.view_roma_distance.view.*
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
@@ -39,9 +40,11 @@ class RomaDistanceView @JvmOverloads constructor(
|
||||
}
|
||||
if (disChangeColor) {
|
||||
romaDistanceMeter.text =
|
||||
Html.fromHtml("<font color='#293449'>漫游距离</font><font color='#0752C3'>${dis}米</font>")
|
||||
// Html.fromHtml("<font color='#293449'>漫游距离</font><font color='#0752C3'>${dis}米</font>")
|
||||
Html.fromHtml("<font color='#293449'>${StringUtils.getString(R.string.module_core_roaming_distance)}</font><font color='#0752C3'>${dis}${StringUtils.getString(R.string.module_och_m)}</font>")
|
||||
} else {
|
||||
romaDistanceMeter.text = "漫游距离${dis}米"
|
||||
// romaDistanceMeter.text = "漫游距离${dis}米"
|
||||
romaDistanceMeter.text = "${StringUtils.getString(R.string.module_core_roaming_distance)}${dis}${StringUtils.getString(R.string.module_och_m)}"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,14 +46,16 @@ class RomaPassengerView @JvmOverloads constructor(
|
||||
a.recycle()
|
||||
setOnClickListener {
|
||||
if (ClickUtils.isClickTooFrequent(this,2500)) {
|
||||
ToastUtils.showShort("不要频繁点击哦~")
|
||||
// ToastUtils.showShort("不要频繁点击哦~")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_dot_often_click)
|
||||
return@setOnClickListener
|
||||
}
|
||||
if(!click){
|
||||
return@setOnClickListener
|
||||
}
|
||||
if(!MogoStatusManager.getInstance().isSocketOnLine){
|
||||
ToastUtils.showShort("长链状态异常,请检查链接后开启漫游")
|
||||
// ToastUtils.showShort("长链状态异常,请检查链接后开启漫游")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_long_connection_state_error)
|
||||
return@setOnClickListener
|
||||
}
|
||||
click = false
|
||||
|
||||
@@ -71,7 +71,8 @@ class SystemVersionView @JvmOverloads constructor(
|
||||
hmiAction("$M_HMI$TAG", "pad version view clicked")
|
||||
val provider = CallerDevaToolsManager.upgradeProvider()
|
||||
if (provider?.isDownloading() == true) {
|
||||
ToastUtils.showShort("正在下载最新版本,请稍候再试...")
|
||||
// ToastUtils.showShort("正在下载最新版本,请稍候再试...")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_downloading_new_version)
|
||||
return@setOnClickListener
|
||||
}
|
||||
CallerDevaToolsManager.queryAppUpgrade()
|
||||
@@ -106,14 +107,24 @@ class SystemVersionView @JvmOverloads constructor(
|
||||
currentProgress
|
||||
).isEmpty()
|
||||
) {
|
||||
ToastUtils.showShort("下载已完成")
|
||||
// ToastUtils.showShort("下载已完成")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_download_complete)
|
||||
} else {
|
||||
// ToastUtils.showShort(
|
||||
// "预计" + AdUpgradeStateHelper.getRemainingTime(
|
||||
// progressDetail.total,
|
||||
// previousProgress,
|
||||
// currentProgress
|
||||
// ) + "下载完成"
|
||||
// )
|
||||
ToastUtils.showShort(
|
||||
"预计" + AdUpgradeStateHelper.getRemainingTime(
|
||||
progressDetail.total,
|
||||
previousProgress,
|
||||
currentProgress
|
||||
) + "下载完成"
|
||||
StringUtils.getString(
|
||||
R.string.module_core_estimated_download_complete, AdUpgradeStateHelper.getRemainingTime(
|
||||
progressDetail.total,
|
||||
previousProgress,
|
||||
currentProgress
|
||||
)
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -124,15 +135,18 @@ class SystemVersionView @JvmOverloads constructor(
|
||||
}
|
||||
AdUpgradeStateHelper.isUpgrading(it.status) -> {
|
||||
//工控机状态为“升级中”
|
||||
ToastUtils.showShort("新版本升级中,预计5分钟升级完成")
|
||||
// ToastUtils.showShort("新版本升级中,预计5分钟升级完成")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_ipc_upgrade_now)
|
||||
}
|
||||
AdUpgradeStateHelper.isUpgradeFailed(it.status) -> {
|
||||
//如果升级失败,则Toast提示:升级失败,请联系运维人员
|
||||
ToastUtils.showShort("升级失败,请联系运维人员")
|
||||
// ToastUtils.showShort("升级失败,请联系运维人员")
|
||||
ToastUtils.showShort(R.string.module_mogo_core_function_hmi_ipc_upgrade_fail)
|
||||
}
|
||||
AdUpgradeStateHelper.isUpgradeSuccess(it.status) -> {
|
||||
//升级成功
|
||||
ToastUtils.showLong("已是最新版本")
|
||||
// ToastUtils.showLong("已是最新版本")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_ipc_last_version)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -342,7 +356,8 @@ class SystemVersionView @JvmOverloads constructor(
|
||||
// ivAdVersion?.setBackgroundResource(R.drawable.version_upgradeable_background)
|
||||
AdUpgradeStateHelper.setUpgradeableStatus(true)
|
||||
} else {
|
||||
ToastUtils.showLong("已是最新版本")
|
||||
// ToastUtils.showLong("已是最新版本")
|
||||
ToastUtils.showLong(R.string.module_mogo_core_function_hmi_ipc_last_version)
|
||||
ivAdStatus?.setImageResource(R.drawable.icon_latest_version)
|
||||
adCircularProgressView?.visibility = View.GONE
|
||||
// ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
|
||||
|
||||
@@ -8,7 +8,9 @@ import android.os.Looper
|
||||
import android.os.Message
|
||||
import android.widget.ImageView
|
||||
import com.mogo.commons.AbsMogoApplication
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadPoolManagerUtils
|
||||
import java.lang.ref.SoftReference
|
||||
import java.util.concurrent.ArrayBlockingQueue
|
||||
@@ -115,7 +117,8 @@ class FrameAnimatorContainerUtils (resId: Int,
|
||||
heightImage = bmp.height
|
||||
config = bmp.config
|
||||
}catch (e:Exception){
|
||||
throw RuntimeException("请设置图片或传递大小")
|
||||
// throw RuntimeException("请设置图片或传递大小")
|
||||
throw RuntimeException(StringUtils.getString(R.string.module_core_set_image))
|
||||
}
|
||||
}
|
||||
// 当图片大小类型相同时进行复用,避免频繁GC
|
||||
|
||||
@@ -46,6 +46,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.eagle.core.utilcode.mogo.permissions.PermissionsDialogUtils
|
||||
import com.mogo.eagle.core.utilcode.util.NetworkUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ProcessUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.zhjt.mogo.adas.data.AdasConstants
|
||||
import com.zhjt.service.chain.ChainLog
|
||||
@@ -90,7 +91,8 @@ open class MainActivity : MvpActivity<MainView?, MainPresenter?>(), MainView,
|
||||
return
|
||||
}
|
||||
//申请悬浮窗权限
|
||||
PermissionsDialogUtils.openAppDetails(this, "显示悬浮窗", REQUEST_CODE_DIALOG)
|
||||
// PermissionsDialogUtils.openAppDetails(this, "显示悬浮窗", REQUEST_CODE_DIALOG)
|
||||
PermissionsDialogUtils.openAppDetails(this, StringUtils.getString(R.string.module_core_show_pop_window), REQUEST_CODE_DIALOG)
|
||||
}
|
||||
|
||||
// todo 优化 车聊聊
|
||||
@@ -369,23 +371,28 @@ open class MainActivity : MvpActivity<MainView?, MainPresenter?>(), MainView,
|
||||
isAllGranted = false
|
||||
when (permissions[index]) {
|
||||
Manifest.permission.RECORD_AUDIO -> {
|
||||
reasong.append("录音机、")
|
||||
// reasong.append("录音机、")
|
||||
reasong.append(StringUtils.getString(R.string.module_core_record_audio)).append(StringUtils.getString(R.string.module_core_comma))
|
||||
}
|
||||
// Manifest.permission.BLUETOOTH -> {
|
||||
// reasong.append("蓝牙、")
|
||||
// }
|
||||
Manifest.permission.READ_EXTERNAL_STORAGE -> {
|
||||
reasong.append("读取外部文件、")
|
||||
// reasong.append("读取外部文件、")
|
||||
reasong.append(StringUtils.getString(R.string.module_core_read_external_storage)).append(StringUtils.getString(R.string.module_core_comma))
|
||||
}
|
||||
Manifest.permission.WRITE_EXTERNAL_STORAGE -> {
|
||||
reasong.append("写入外部文件、")
|
||||
// reasong.append("写入外部文件、")
|
||||
reasong.append(StringUtils.getString(R.string.module_core_write_external_storage)).append(StringUtils.getString(R.string.module_core_comma))
|
||||
}
|
||||
Manifest.permission.ACCESS_LOCATION_EXTRA_COMMANDS,
|
||||
Manifest.permission.ACCESS_FINE_LOCATION,
|
||||
Manifest.permission.ACCESS_COARSE_LOCATION -> {
|
||||
isLocationGranted = false
|
||||
if(!reasong.contains("定位")){
|
||||
reasong.append("定位、")
|
||||
// if(!reasong.contains("定位")){
|
||||
if(!reasong.contains(StringUtils.getString(R.string.module_core_location))){
|
||||
// reasong.append("定位、")
|
||||
reasong.append(StringUtils.getString(R.string.module_core_location)).append(StringUtils.getString(R.string.module_core_comma))
|
||||
}
|
||||
}
|
||||
else -> {}
|
||||
|
||||
@@ -7,12 +7,13 @@
|
||||
android:layout_height="match_parent"
|
||||
android:background="@drawable/bg_v2n_event_live_play_passenger">
|
||||
|
||||
<!-- android:text="当前设备暂无信号"-->
|
||||
<TextView
|
||||
android:id="@+id/tvTipContent"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:text="当前设备暂无信号"
|
||||
android:text="@string/module_core_current_device_no_signal"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="@dimen/dp_32"
|
||||
android:visibility="gone"
|
||||
|
||||
@@ -15,13 +15,14 @@
|
||||
android:layout_height="150dp"
|
||||
android:src="@drawable/icon_ad" />
|
||||
|
||||
<!-- android:text="应用名称"-->
|
||||
<TextView
|
||||
android:id="@+id/list_item_app_name_tv"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="10dp"
|
||||
android:singleLine="true"
|
||||
android:text="应用名称"
|
||||
android:text="@string/module_core_app_name"
|
||||
android:textColor="@color/color_FFFFFF"
|
||||
android:textSize="30dp" />
|
||||
|
||||
|
||||
@@ -25,13 +25,14 @@
|
||||
android:layout_marginStart="25dp"
|
||||
/>
|
||||
|
||||
<!-- android:text="录包提醒"-->
|
||||
<TextView
|
||||
android:id="@+id/tvRecordTip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/ivBadCaseImage"
|
||||
app:layout_constraintLeft_toRightOf="@id/ivBadCaseImage"
|
||||
android:text="录包提醒"
|
||||
android:text="@string/module_core_bag_record_reminder"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="32dp"
|
||||
android:layout_marginStart="25dp"
|
||||
@@ -59,6 +60,7 @@
|
||||
android:layout_marginEnd="25dp"
|
||||
/>
|
||||
|
||||
<!-- android:text="查看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvRecordCheck"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -68,7 +70,7 @@
|
||||
app:layout_constraintBottom_toBottomOf="@id/tvBagRecordTime"
|
||||
android:paddingEnd="25dp"
|
||||
android:paddingStart="20dp"
|
||||
android:text="查看"
|
||||
android:text="@string/module_core_look_over"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="30dp"
|
||||
/>
|
||||
|
||||
@@ -20,11 +20,12 @@
|
||||
app:isUseSkin="true"
|
||||
/>
|
||||
|
||||
<!-- android:text="官方公告"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMNoticeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="官方公告"
|
||||
android:text="@string/module_core_communique"
|
||||
android:textColor="#FF203555"
|
||||
android:textSize="@dimen/dp_18"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
|
||||
@@ -20,11 +20,12 @@
|
||||
app:isUseSkin="true"
|
||||
/>
|
||||
|
||||
<!-- android:text="官方公告"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMNoticeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="官方公告"
|
||||
android:text="@string/module_core_communique"
|
||||
android:textColor="#FF203555"
|
||||
android:textSize="@dimen/dp_25"
|
||||
android:textStyle="bold"
|
||||
@@ -49,11 +50,12 @@
|
||||
android:ellipsize="end"
|
||||
/>
|
||||
|
||||
<!-- android:text="查 看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMNoticeCheck"
|
||||
android:layout_width="@dimen/dp_100"
|
||||
android:layout_height="@dimen/dp_110"
|
||||
android:text="查 看"
|
||||
android:text="@string/module_core_look_over1"
|
||||
android:textColor="#FF1366FB"
|
||||
android:textSize="@dimen/dp_20"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
|
||||
@@ -46,11 +46,12 @@
|
||||
android:gravity="start"
|
||||
/>
|
||||
|
||||
<!-- android:text="查 看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMSummaryCheck"
|
||||
android:layout_width="110dp"
|
||||
android:layout_height="110dp"
|
||||
android:text="查 看"
|
||||
android:text="@string/module_core_look_over1"
|
||||
android:textColor="#FF1366FB"
|
||||
android:textSize="20dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
|
||||
@@ -16,11 +16,12 @@
|
||||
app:isUseSkin="true"
|
||||
/>
|
||||
|
||||
<!-- android:text="官方公告"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMNoticeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="官方公告"
|
||||
android:text="@string/module_core_communique"
|
||||
android:textColor="#FF203555"
|
||||
android:textSize="@dimen/dp_25"
|
||||
android:layout_marginStart="@dimen/dp_16"
|
||||
@@ -45,11 +46,12 @@
|
||||
android:ellipsize="end"
|
||||
/>
|
||||
|
||||
<!-- android:text="查 看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMNoticeCheck"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="@dimen/dp_100"
|
||||
android:text="查 看"
|
||||
android:text="@string/module_core_look_over1"
|
||||
android:textColor="#FF1366FB"
|
||||
android:textSize="20dp"
|
||||
android:paddingEnd="@dimen/dp_10"
|
||||
|
||||
@@ -42,11 +42,12 @@
|
||||
android:gravity="start"
|
||||
/>
|
||||
|
||||
<!-- android:text="查 看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMSummaryCheck"
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="100dp"
|
||||
android:text="查 看"
|
||||
android:text="@string/module_core_look_over1"
|
||||
android:textColor="#FF1366FB"
|
||||
android:textSize="20dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
|
||||
@@ -48,11 +48,12 @@
|
||||
android:lineSpacingMultiplier="1.2"
|
||||
/>
|
||||
<!--展开折叠按钮-->
|
||||
<!-- android:text="展开"-->
|
||||
<TextView
|
||||
android:id="@+id/tvFmStatusSelect"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="展开"
|
||||
android:text="@string/module_core_unfold"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="@dimen/sp_24"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
|
||||
@@ -66,11 +66,12 @@
|
||||
android:lineSpacingMultiplier="1.2"
|
||||
/>
|
||||
|
||||
<!-- android:text="展开"-->
|
||||
<TextView
|
||||
android:id="@+id/tvStatusSelect"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="展开"
|
||||
android:text="@string/module_core_unfold"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="24dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
|
||||
@@ -24,11 +24,12 @@
|
||||
app:isUseSkin="true"
|
||||
/>
|
||||
|
||||
<!-- android:text="官方公告"-->
|
||||
<TextView
|
||||
android:id="@+id/tvNoticeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="官方公告"
|
||||
android:text="@string/module_core_communique"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="32dp"
|
||||
app:layout_constraintTop_toTopOf="@id/ivNoticeImage"
|
||||
@@ -48,6 +49,7 @@
|
||||
android:textSize="24dp"
|
||||
/>
|
||||
|
||||
<!-- android:text="查看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvNoticeCheck"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -56,7 +58,7 @@
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginEnd="25dp"
|
||||
android:layout_marginBottom="20dp"
|
||||
android:text="查看"
|
||||
android:text="@string/module_core_look_over"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="30dp"
|
||||
/>
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
android:src="@drawable/icon_msg_box_operation"
|
||||
/>
|
||||
|
||||
<!-- android:text="运营平台"-->
|
||||
<TextView
|
||||
android:id="@+id/tvOperationTitleNormal"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -32,7 +33,7 @@
|
||||
app:layout_constraintTop_toTopOf="@id/tvOperationStatusSelect"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tvOperationStatusSelect"
|
||||
app:layout_constraintLeft_toRightOf="@id/ivOperationImageNormal"
|
||||
android:text="运营平台"
|
||||
android:text="@string/module_core_operation_platform"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="32dp"
|
||||
android:layout_marginStart="23dp"
|
||||
@@ -54,12 +55,12 @@
|
||||
android:paddingBottom="15dp"
|
||||
android:lineSpacingMultiplier="1.2"
|
||||
/>
|
||||
|
||||
<!-- android:text="展开"-->
|
||||
<TextView
|
||||
android:id="@+id/tvOperationStatusSelect"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="展开"
|
||||
android:text="@string/module_core_unfold"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="24dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
@@ -99,6 +100,7 @@
|
||||
android:visibility="gone"
|
||||
/>
|
||||
|
||||
<!-- android:text="运营平台"-->
|
||||
<TextView
|
||||
android:id="@+id/tvOperationTitleOpen"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -106,7 +108,7 @@
|
||||
app:layout_constraintTop_toTopOf="@id/tvOperationStatusSelect"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tvOperationStatusSelect"
|
||||
app:layout_constraintLeft_toRightOf="@id/ivOperationImageOpen"
|
||||
android:text="运营平台"
|
||||
android:text="@string/module_core_operation_platform"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="32dp"
|
||||
android:layout_marginStart="10dp"
|
||||
|
||||
@@ -24,11 +24,12 @@
|
||||
android:src="@drawable/icon_msg_box_operation_return"
|
||||
/>
|
||||
|
||||
<!-- android:text="还车通知"-->
|
||||
<TextView
|
||||
android:id="@+id/tvOperationReturnTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="还车通知"
|
||||
android:text="@string/module_core_car_return_notice"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="32dp"
|
||||
app:layout_constraintTop_toTopOf="@id/ivOperationReturnImage"
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
android:textSize="24dp"
|
||||
/>
|
||||
|
||||
<!-- android:text="靠边停车"-->
|
||||
<TextView
|
||||
android:id="@+id/tvOperationStopContent"
|
||||
android:layout_width="0dp"
|
||||
@@ -48,7 +49,7 @@
|
||||
android:textSize="32dp"
|
||||
android:maxLines="1"
|
||||
android:ellipsize="end"
|
||||
android:text="靠边停车"
|
||||
android:text="@string/module_core_pull_over"
|
||||
/>
|
||||
|
||||
</com.mogo.eagle.core.widget.RoundConstraintLayout>
|
||||
@@ -22,11 +22,12 @@
|
||||
app:isUseSkin="true"
|
||||
/>
|
||||
|
||||
<!-- android:text="官方公告"-->
|
||||
<TextView
|
||||
android:id="@+id/tvNoticeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="官方公告"
|
||||
android:text="@string/module_core_communique"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="32dp"
|
||||
app:layout_constraintTop_toTopOf="@id/ivNoticeImage"
|
||||
@@ -46,6 +47,7 @@
|
||||
android:textSize="24dp"
|
||||
/>
|
||||
|
||||
<!-- android:text="查看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvNoticeCheck"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -54,7 +56,7 @@
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginEnd="25dp"
|
||||
android:layout_marginBottom="20dp"
|
||||
android:text="查看"
|
||||
android:text="@string/module_core_look_over"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="30dp"
|
||||
/>
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
android:src="@drawable/icon_msg_box_operation"
|
||||
/>
|
||||
|
||||
<!-- android:text="运营平台"-->
|
||||
<TextView
|
||||
android:id="@+id/tvBubbleOperationTitle"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -32,7 +33,7 @@
|
||||
android:layout_marginStart="25dp"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="32dp"
|
||||
android:text="运营平台"
|
||||
android:text="@string/module_core_operation_platform"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
|
||||
@@ -23,11 +23,12 @@
|
||||
android:src="@drawable/icon_msg_box_operation_return"
|
||||
/>
|
||||
|
||||
<!-- android:text="还车通知"-->
|
||||
<TextView
|
||||
android:id="@+id/tvOperationReturnTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="还车通知"
|
||||
android:text="@string/module_core_car_return_notice"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="32dp"
|
||||
app:layout_constraintTop_toTopOf="@id/ivOperationReturnImage"
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
android:textSize="24dp"
|
||||
/>
|
||||
|
||||
<!-- android:text="靠边停车"-->
|
||||
<TextView
|
||||
android:id="@+id/tvOperationStopContent"
|
||||
android:layout_width="0dp"
|
||||
@@ -46,7 +47,7 @@
|
||||
android:textSize="32dp"
|
||||
android:maxLines="1"
|
||||
android:ellipsize="end"
|
||||
android:text="靠边停车"
|
||||
android:text="@string/module_core_pull_over"
|
||||
/>
|
||||
|
||||
</com.mogo.eagle.core.widget.RoundConstraintLayout>
|
||||
@@ -10,11 +10,12 @@
|
||||
android:layout_marginBottom="16dp"
|
||||
>
|
||||
|
||||
<!-- android:text="官方公告"-->
|
||||
<TextView
|
||||
android:id="@+id/tvPassengerNoticeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="官方公告"
|
||||
android:text="@string/module_core_communique"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="@dimen/dp_34"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
@@ -35,6 +36,7 @@
|
||||
android:layout_marginEnd="@dimen/dp_30"
|
||||
/>
|
||||
|
||||
<!-- android:text="5月31日起,蘑菇车联无人化运营时间将调整为09:00~21:00,欢迎市民朋友前来体验。5月31日起,蘑菇车联无人化运营时间将调整为09:00~21:00,欢迎市民朋友前来体验。5月31日起,蘑菇车联无人化运营时间将调整为09:00~21:00,欢迎市民朋友前来体验。"-->
|
||||
<TextView
|
||||
android:id="@+id/tvPassengerNoticeContent"
|
||||
android:layout_width="0dp"
|
||||
@@ -46,7 +48,7 @@
|
||||
app:layout_constraintTop_toBottomOf="@id/tvPassengerNoticeTitle"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_margin="@dimen/dp_30"
|
||||
android:text="5月31日起,蘑菇车联无人化运营时间将调整为09:00~21:00,欢迎市民朋友前来体验。5月31日起,蘑菇车联无人化运营时间将调整为09:00~21:00,欢迎市民朋友前来体验。5月31日起,蘑菇车联无人化运营时间将调整为09:00~21:00,欢迎市民朋友前来体验。"
|
||||
android:text="@string/module_core_PassengerNoticeContent"
|
||||
android:maxLines="3"
|
||||
android:gravity="start"
|
||||
android:ellipsize="end"
|
||||
|
||||
@@ -46,11 +46,12 @@
|
||||
android:gravity="start"
|
||||
/>
|
||||
|
||||
<!-- android:text="查 看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvPassengerSummaryCheck"
|
||||
android:layout_width="130dp"
|
||||
android:layout_height="160dp"
|
||||
android:text="查 看"
|
||||
android:text="@string/module_core_look_over1"
|
||||
android:textColor="#FF243959"
|
||||
android:textSize="28dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
|
||||
@@ -15,11 +15,12 @@
|
||||
app:isUseSkin="true"
|
||||
/>
|
||||
|
||||
<!-- android:text="官方公告"-->
|
||||
<TextView
|
||||
android:id="@+id/tvPassengerNoticeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="官方公告"
|
||||
android:text="@string/module_core_communique"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="36dp"
|
||||
android:layout_marginStart="20dp"
|
||||
@@ -43,11 +44,12 @@
|
||||
android:ellipsize="end"
|
||||
/>
|
||||
|
||||
<!-- android:text="查 看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvPassengerNoticeCheck"
|
||||
android:layout_width="140dp"
|
||||
android:layout_height="150dp"
|
||||
android:text="查 看"
|
||||
android:text="@string/module_core_look_over1"
|
||||
android:textColor="#FF84D4FF"
|
||||
android:textSize="28dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
|
||||
@@ -41,11 +41,12 @@
|
||||
android:gravity="start"
|
||||
/>
|
||||
|
||||
<!-- android:text="查 看"-->
|
||||
<TextView
|
||||
android:id="@+id/tvPassengerSummaryCheck"
|
||||
android:layout_width="140dp"
|
||||
android:layout_height="150dp"
|
||||
android:text="查 看"
|
||||
android:text="@string/module_core_look_over1"
|
||||
android:textColor="#FF84D4FF"
|
||||
android:textSize="28dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
|
||||
@@ -6,11 +6,12 @@
|
||||
android:background="@drawable/bg_msg_box"
|
||||
>
|
||||
|
||||
<!-- android:text="通知"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMsgNotice"
|
||||
android:layout_width="@dimen/dp_216"
|
||||
android:layout_height="@dimen/dp_90"
|
||||
android:text="通知"
|
||||
android:text="@string/module_core_notice"
|
||||
android:textColor="@color/color_FF1BB7FF"
|
||||
android:textSize="@dimen/sp_38"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
@@ -28,11 +29,12 @@
|
||||
app:layout_constraintBottom_toBottomOf="@id/tvMsgNotice"
|
||||
/>
|
||||
|
||||
<!-- android:text="FM信息"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMsgFm"
|
||||
android:layout_width="@dimen/dp_216"
|
||||
android:layout_height="@dimen/dp_90"
|
||||
android:text="FM信息"
|
||||
android:text="@string/module_core_fm_info"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="@dimen/sp_38"
|
||||
android:gravity="center"
|
||||
@@ -52,11 +54,12 @@
|
||||
android:visibility="gone"
|
||||
/>
|
||||
|
||||
<!-- android:text="系统信息"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMsgIpcReport"
|
||||
android:layout_width="@dimen/dp_216"
|
||||
android:layout_height="@dimen/dp_90"
|
||||
android:text="系统信息"
|
||||
android:text="@string/module_core_system_info"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="@dimen/sp_38"
|
||||
android:gravity="center"
|
||||
@@ -76,11 +79,12 @@
|
||||
android:visibility="gone"
|
||||
/>
|
||||
|
||||
<!-- android:text="录包"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMsgBadCase"
|
||||
android:layout_width="@dimen/dp_216"
|
||||
android:layout_height="@dimen/dp_90"
|
||||
android:text="录包"
|
||||
android:text="@string/module_core_bag_record"
|
||||
android:textColor="#FFFFFFFF"
|
||||
android:textSize="@dimen/sp_38"
|
||||
android:gravity="center"
|
||||
|
||||
@@ -21,12 +21,13 @@
|
||||
android:background="@drawable/icon_operate_panel_rect_blue"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<!-- android:text="运营面板"-->
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="运营面板"
|
||||
android:text="@string/module_core_operation_panel"
|
||||
android:textColor="#ffffff"
|
||||
android:textSize="@dimen/dp_42"
|
||||
tools:ignore="HardcodedText,SpUsage" />
|
||||
|
||||
@@ -57,12 +57,14 @@
|
||||
android:button="@null"
|
||||
android:background="@drawable/bg_radio_button_operate_panel_unman_interval"
|
||||
tools:ignore="HardcodedText,SpUsage" />
|
||||
|
||||
<!-- android:text="从不"-->
|
||||
<RadioButton
|
||||
android:id="@+id/rb_never"
|
||||
android:layout_width="0dip"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_weight="1"
|
||||
android:text="从不"
|
||||
android:text="@string/module_core_never"
|
||||
android:textSize="@dimen/dp_30"
|
||||
android:textColor="#ffffff"
|
||||
android:gravity="center"
|
||||
|
||||
@@ -18,12 +18,13 @@
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<!-- android:text="官方公告"-->
|
||||
<TextView
|
||||
android:id="@+id/module_push_dialog_acc_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_58"
|
||||
android:text="官方公告"
|
||||
android:text="@string/module_core_communique"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/dp_56"
|
||||
android:textStyle="bold"
|
||||
@@ -121,6 +122,7 @@
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/module_push_dialog_acc_title" />
|
||||
|
||||
<!-- android:text="连接"-->
|
||||
<TextView
|
||||
android:id="@+id/notice_connect"
|
||||
android:layout_width="@dimen/dp_310"
|
||||
@@ -128,7 +130,7 @@
|
||||
android:layout_marginBottom="@dimen/dp_110"
|
||||
android:background="@drawable/notice_connect"
|
||||
android:gravity="center"
|
||||
android:text="连接"
|
||||
android:text="@string/module_core_connect"
|
||||
android:textColor="#FFF"
|
||||
android:textSize="@dimen/dp_42"
|
||||
android:visibility="gone"
|
||||
|
||||
@@ -19,12 +19,13 @@
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<!-- android:text="交通事故任务详情"-->
|
||||
<TextView
|
||||
android:id="@+id/notice_traffic_dialog_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_54"
|
||||
android:text="交通事故任务详情"
|
||||
android:text="@string/module_core_traffic_accident_task_detail"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/dp_56"
|
||||
android:textStyle="bold"
|
||||
@@ -65,6 +66,7 @@
|
||||
app:layout_constraintRight_toRightOf="@id/video_player"
|
||||
app:layout_constraintTop_toTopOf="@id/video_player" />
|
||||
|
||||
<!-- android:text="连接"-->
|
||||
<TextView
|
||||
android:id="@+id/notice_connect"
|
||||
android:layout_width="@dimen/dp_200"
|
||||
@@ -72,7 +74,7 @@
|
||||
android:layout_marginBottom="@dimen/dp_40"
|
||||
android:background="@drawable/notice_connect"
|
||||
android:gravity="center"
|
||||
android:text="连接"
|
||||
android:text="@string/module_core_connect"
|
||||
android:textColor="#FFF"
|
||||
android:textSize="@dimen/dp_42"
|
||||
android:visibility="invisible"
|
||||
@@ -112,12 +114,13 @@
|
||||
app:layout_constraintRight_toRightOf="parent" />
|
||||
|
||||
<!--接受 拒绝-->
|
||||
<!-- android:text="接 受"-->
|
||||
<TextView
|
||||
android:id="@+id/accept_traffic"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:text="接 受"
|
||||
android:text="@string/module_core_accept"
|
||||
android:textColor="@color/color_1F9BFE"
|
||||
android:textSize="@dimen/dp_50"
|
||||
android:textStyle="bold"
|
||||
@@ -126,12 +129,13 @@
|
||||
app:layout_constraintRight_toRightOf="@+id/traffic_middle_line"
|
||||
app:layout_constraintTop_toTopOf="@+id/traffic_top_line" />
|
||||
|
||||
<!-- android:text="拒 绝"-->
|
||||
<TextView
|
||||
android:id="@+id/refuse_traffic"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:text="拒 绝"
|
||||
android:text="@string/module_core_refuse"
|
||||
android:textColor="#FFF"
|
||||
android:textSize="@dimen/dp_50"
|
||||
android:textStyle="bold"
|
||||
|
||||
@@ -77,6 +77,7 @@
|
||||
app:layout_constraintLeft_toRightOf="@+id/module_push_app_icon_title"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<!-- android:text="查看"-->
|
||||
<TextView
|
||||
android:id="@+id/notice_push_banner_check"
|
||||
android:layout_width="@dimen/dp_100"
|
||||
@@ -84,7 +85,7 @@
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:gravity="center"
|
||||
android:text="查看"
|
||||
android:text="@string/module_core_look_over"
|
||||
android:textColor="@color/color_5A8EFD"
|
||||
android:textSize="@dimen/dp_42"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
|
||||
@@ -13,12 +13,13 @@
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<!-- android:text="事故来源:"-->
|
||||
<TextView
|
||||
android:id="@+id/key_text_view"
|
||||
android:layout_width="@dimen/dp_180"
|
||||
android:layout_height="@dimen/dp_50"
|
||||
android:gravity="left|center"
|
||||
android:text="事故来源:"
|
||||
android:text="@string/module_core_accident_source"
|
||||
android:textColor="#CCFFFFFF"
|
||||
android:textSize="@dimen/dp_36" />
|
||||
|
||||
|
||||
@@ -21,12 +21,13 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<!-- android:text="预警信息"-->
|
||||
<TextView
|
||||
android:id="@+id/tvWaringContent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="26dp"
|
||||
android:text="预警信息"
|
||||
android:text="@string/module_core_warning_info"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="42dp"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/ivWaringIcon"
|
||||
|
||||
@@ -107,6 +107,7 @@
|
||||
android:layout_centerHorizontal="true"
|
||||
android:background="@drawable/close_nor" />
|
||||
|
||||
<!-- android:text="杀死APP"-->
|
||||
<TextView
|
||||
android:id="@+id/tvKillContent"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -114,7 +115,7 @@
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_marginTop="23dp"
|
||||
android:text="杀死APP"
|
||||
android:text="@string/module_core_kill_app"
|
||||
android:textColor="@color/color_FFA7B6F0"
|
||||
android:textSize="32dp" />
|
||||
</RelativeLayout>
|
||||
@@ -240,13 +241,14 @@
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
<!-- android:text="检测"-->
|
||||
<TextView
|
||||
android:id="@+id/tv_check_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="86dp"
|
||||
android:layout_marginStart="19dp"
|
||||
android:gravity="center"
|
||||
android:text="检测"
|
||||
android:text="@string/module_core_detection"
|
||||
android:textColor="@color/color_FFFFFF"
|
||||
android:textSize="42dp"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/v_second_group"
|
||||
@@ -328,6 +330,7 @@
|
||||
app:layout_constraintLeft_toRightOf="@id/ivSpeedAdd"
|
||||
app:layout_constraintTop_toTopOf="@id/ivSpeedAdd" />
|
||||
|
||||
<!-- android:text="确定"-->
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/tvSureModify"
|
||||
android:layout_width="200dp"
|
||||
@@ -335,7 +338,7 @@
|
||||
android:layout_marginLeft="50dp"
|
||||
android:background="@drawable/taxi_loginout_sure_bg"
|
||||
android:gravity="center"
|
||||
android:text="确定"
|
||||
android:text="@string/module_core_confirm"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="42dp"
|
||||
app:layout_constraintBottom_toBottomOf="@id/ivSpeedAdd"
|
||||
@@ -388,6 +391,7 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/viewSystemVersion" />
|
||||
|
||||
<!-- android:text="退出登录"-->
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actvLoginout"
|
||||
android:layout_width="790dp"
|
||||
@@ -395,7 +399,7 @@
|
||||
android:layout_marginBottom="40dp"
|
||||
android:background="@drawable/taxi_loginout_bg"
|
||||
android:gravity="center"
|
||||
android:text="退出登录"
|
||||
android:text="@string/module_core_logout"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="42dp"
|
||||
android:visibility="gone"
|
||||
|
||||
@@ -15,12 +15,13 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<!-- android:text="自动驾驶"-->
|
||||
<TextView
|
||||
android:id="@+id/tvStatusDes"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/module_mogo_autopilot_status_text_margin_start"
|
||||
android:text="自动驾驶"
|
||||
android:text="@string/module_core_automatic_driving"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="@dimen/module_mogo_autopilot_status_text_size"
|
||||
android:textStyle="bold"
|
||||
|
||||
@@ -32,12 +32,13 @@
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent" />
|
||||
|
||||
<!-- android:text="刹车中"-->
|
||||
<TextView
|
||||
android:id="@+id/tv_brake"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:text="刹车中"
|
||||
android:text="@string/module_core_breaking"
|
||||
android:textColor="#ffffff"
|
||||
android:textSize="40dp"
|
||||
android:visibility="gone"
|
||||
|
||||
@@ -28,12 +28,13 @@
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent" />
|
||||
|
||||
<!-- android:text="刹车中"-->
|
||||
<TextView
|
||||
android:id="@+id/tv_brake"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:text="刹车中"
|
||||
android:text="@string/module_core_breaking"
|
||||
android:textColor="#2D3E5F"
|
||||
android:textSize="34dp"
|
||||
android:textStyle="bold"
|
||||
|
||||
@@ -9,12 +9,13 @@
|
||||
android:minHeight="550dp"
|
||||
app:roundLayoutRadius="30dp">
|
||||
|
||||
<!-- android:text="视频设备"-->
|
||||
<TextView
|
||||
android:id="@+id/tvCameraTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="30dp"
|
||||
android:text="视频设备"
|
||||
android:text="@string/module_core_video_device"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="42dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
@@ -43,13 +44,14 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<!-- android:text="当前设备暂无信号,切换其他摄像头 3S"-->
|
||||
<TextView
|
||||
android:id="@+id/tvTipContent"
|
||||
android:layout_width="448dp"
|
||||
android:layout_height="100dp"
|
||||
android:layout_marginTop="60dp"
|
||||
android:gravity="center"
|
||||
android:text="当前设备暂无信号,切换其他摄像头 3S"
|
||||
android:text="@string/module_core_no_signal_switch_camera"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="36dp"
|
||||
android:visibility="gone"
|
||||
|
||||
@@ -41,12 +41,13 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<!-- android:text="加载中……"-->
|
||||
<TextView
|
||||
android:id="@+id/tvLoadingHit"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="24dp"
|
||||
android:text="加载中……"
|
||||
android:text="@string/module_core_loading"
|
||||
android:textColor="#2D3E5F"
|
||||
android:textSize="28dp"
|
||||
app:layout_constraintEnd_toEndOf="@+id/liveProgressBar"
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<!-- android:text="V2X总开关"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scV2XSwitch"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -37,11 +38,12 @@
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.4"
|
||||
android:scaleY="1.4"
|
||||
android:text="V2X总开关"
|
||||
android:text="@string/module_core_v2x_main_switch"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
<!--V2N总开关-->
|
||||
<!-- android:text="V2N总开关"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scV2NSwitch"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -50,7 +52,7 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="V2N总开关"
|
||||
android:text="@string/module_core_v2n_main_switch"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scV2XSwitch" />
|
||||
@@ -64,6 +66,7 @@
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent" />
|
||||
<!--V2N新链路-->
|
||||
<!-- android:text="V2N新链路"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scNewV2NData"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -71,12 +74,13 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="V2N新链路"
|
||||
android:text="@string/module_core_v2n_new_line"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/scV2XSwitch"
|
||||
app:layout_constraintRight_toRightOf="@id/v2xGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scV2NSwitch" />
|
||||
<!--V2N场景进PNC-->
|
||||
<!-- android:text="V2N场景进PNC"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scV2nPnc"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -84,12 +88,13 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="V2N场景进PNC"
|
||||
android:text="@string/module_core_v2n_to_pnc"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/v2xGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scV2NSwitch" />
|
||||
<!--绿波通行-->
|
||||
<!-- android:text="绿波通行"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scGreenWaveSop"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -97,11 +102,12 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="绿波通行"
|
||||
android:text="@string/module_core_green_wave_sop"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/scNewV2NData"
|
||||
app:layout_constraintTop_toBottomOf="@id/scNewV2NData" />
|
||||
<!--V2I总开关-->
|
||||
<!-- android:text="V2I总开关"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scV2ISwitch"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -110,11 +116,12 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="V2I总开关"
|
||||
android:text="@string/module_core_v2i_main_switch"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scGreenWaveSop" />
|
||||
<!--V2I场景进PNC-->
|
||||
<!-- android:text="V2I场景进PNC"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scV2iPnc"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -123,12 +130,13 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="V2I场景进PNC"
|
||||
android:text="@string/module_core_v2i_to_pnc"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/v2xGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scV2ISwitch" />
|
||||
<!--闯红灯预警-->
|
||||
<!-- android:text="闯红灯预警"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scRunRedLightSop"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -136,12 +144,13 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="闯红灯预警"
|
||||
android:text="@string/module_core_run_red_light_sop"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/v2xGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scV2ISwitch" />
|
||||
<!--路侧弱势交通参与者-->
|
||||
<!-- android:text="路侧弱势交通参与者"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scObuWeaknessTrafficSop"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -149,11 +158,12 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="路侧弱势交通参与者"
|
||||
android:text="@string/module_core_obu_weakness_traffic_sop"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/scV2iPnc"
|
||||
app:layout_constraintTop_toBottomOf="@id/scV2iPnc" />
|
||||
<!--V2V总开关-->
|
||||
<!-- android:text="V2V总开关"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scObuV2vView"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -162,11 +172,12 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="V2V总开关"
|
||||
android:text="@string/module_core_v2v_main_switch"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scObuWeaknessTrafficSop" />
|
||||
<!--obu总开关-->
|
||||
<!-- android:text="OBU总开关"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scObu"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -176,7 +187,7 @@
|
||||
android:layout_marginBottom="@dimen/dp_10"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="OBU总开关"
|
||||
android:text="@string/module_core_obu_main_switch"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
@@ -204,13 +215,14 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<!-- android:text="地图效果类"-->
|
||||
<TextView
|
||||
android:id="@+id/tvMapTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="地图效果类"
|
||||
android:text="@string/module_core_map_title"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/sp_36"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
@@ -226,6 +238,7 @@
|
||||
app:layout_constraintRight_toRightOf="parent" />
|
||||
|
||||
<!--危险障碍物颜色标记-->
|
||||
<!-- android:text="危险障碍物颜色标记"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scMarkingObstacles"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -233,12 +246,13 @@
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="危险障碍物颜色标记"
|
||||
android:text="@string/module_core_marking_obstacles"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/mapGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvMapTitle" />
|
||||
<!--引导线动态效果-->
|
||||
<!-- android:text="引导线动态效果"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scRouteDynamicEffect"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -246,12 +260,13 @@
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="引导线动态效果"
|
||||
android:text="@string/module_core_route_dynamic_effect"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/mapGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvMapTitle" />
|
||||
<!--点云效果-->
|
||||
<!-- android:text="点云效果"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scDrawPointCloudData"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -260,13 +275,14 @@
|
||||
android:layout_marginBottom="@dimen/dp_10"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="点云效果"
|
||||
android:text="@string/module_core_point_cloud"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/mapGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scMarkingObstacles" />
|
||||
<!--自车光圈-->
|
||||
<!-- android:text="自车光圈"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scCarAperture"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -275,7 +291,7 @@
|
||||
android:layout_marginBottom="@dimen/dp_10"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="自车光圈"
|
||||
android:text="@string/module_core_car_aperture"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="@id/mapGuideLine"
|
||||
@@ -304,13 +320,14 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<!-- android:text="美化模式类"-->
|
||||
<TextView
|
||||
android:id="@+id/tvDemoTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="美化模式类"
|
||||
android:text="@string/module_core_demo_title"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/sp_36"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
@@ -326,6 +343,7 @@
|
||||
app:layout_constraintRight_toRightOf="parent" />
|
||||
|
||||
<!--美化模式-->
|
||||
<!-- android:text="美化模式"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scDemoMode"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -333,13 +351,14 @@
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="美化模式"
|
||||
android:text="@string/module_core_demo_mode"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/demoGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvDemoTitle" />
|
||||
|
||||
<!--是否展示录包弹窗-->
|
||||
<!-- android:text="录包弹窗"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scShowBagRecordWindow"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -348,12 +367,13 @@
|
||||
android:layout_marginBottom="@dimen/dp_10"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="录包弹窗"
|
||||
android:text="@string/module_core_show_bag_record_window"
|
||||
app:layout_constraintLeft_toLeftOf="@id/demoGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvDemoTitle" />
|
||||
|
||||
<!--接管提醒-->
|
||||
<!-- android:text="接管提醒"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scTakeOverRemind"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -362,7 +382,7 @@
|
||||
android:layout_marginBottom="@dimen/dp_10"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="接管提醒"
|
||||
android:text="@string/module_core_take_over_remind"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/demoGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scDemoMode"
|
||||
@@ -390,13 +410,14 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<!-- android:text="与车相关类"-->
|
||||
<TextView
|
||||
android:id="@+id/tvVehicleTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="与车相关类"
|
||||
android:text="@string/module_core_vehicle_title"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/sp_36"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
@@ -412,6 +433,7 @@
|
||||
app:layout_constraintRight_toRightOf="parent" />
|
||||
|
||||
<!--PNC-park-会车-->
|
||||
<!-- android:text="PNC-park-会车"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scParkVehCross"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -419,7 +441,7 @@
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="PNC-park-会车"
|
||||
android:text="@string/module_core_park_veh_cross"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/vehicleGuideLine"
|
||||
@@ -427,6 +449,7 @@
|
||||
/>
|
||||
|
||||
<!--PNC-park-超车-->
|
||||
<!-- android:text="PNC-park-超车"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scParkVehOvertake"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -434,13 +457,14 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="PNC-park-超车"
|
||||
android:text="@string/module_core_park_veh_overtake"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvVehicleTitle" />
|
||||
|
||||
<!--绕障类功能-->
|
||||
<!-- android:text="绕障类功能"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scObstacleAvoidance"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -448,13 +472,14 @@
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="绕障类功能"
|
||||
android:text="@string/module_core_obstacle_avoidance"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scParkVehCross" />
|
||||
|
||||
<!--雨天模式-->
|
||||
<!-- android:text="雨天模式"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scRainMode"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -462,12 +487,13 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="雨天模式"
|
||||
android:text="@string/module_core_rain_mode"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scParkVehOvertake" />
|
||||
<!--弱网减速停车-->
|
||||
<!-- android:text="弱网减速停车"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scWeakNetSlowDown"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -475,12 +501,13 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="弱网减速停车"
|
||||
android:text="@string/module_core_weak_net_slow_down"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scRainMode" />
|
||||
<!--故障减速停车-->
|
||||
<!-- android:text="故障减速停车"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scFaultSlowDown"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -488,13 +515,14 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="故障减速停车"
|
||||
android:text="@string/module_core_fault_slow_down"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/vehicleGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scRainMode" />
|
||||
|
||||
<!--考试功能面板-->
|
||||
<!-- android:text="考试功能面板"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scExamControl"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -502,7 +530,7 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="考试功能面板"
|
||||
android:text="@string/module_core_exam_control"
|
||||
android:textSize="@dimen/sp_28"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/vehicleGuideLine"
|
||||
@@ -521,54 +549,60 @@
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scExamControl">
|
||||
|
||||
<!-- android:text="全融合模式"-->
|
||||
<RadioButton
|
||||
android:id="@+id/rbFullIntegration"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="全融合模式"
|
||||
android:text="@string/module_core_full_integration"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<!-- android:text="盲区模式"-->
|
||||
<RadioButton
|
||||
android:id="@+id/rbBlind"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="盲区模式"
|
||||
android:text="@string/module_core_blind"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<!-- android:text="超视距模式"-->
|
||||
<RadioButton
|
||||
android:id="@+id/rbBeyondSight"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="超视距模式"
|
||||
android:text="@string/module_core_beyond_sight"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<!-- android:text="透传模式"-->
|
||||
<RadioButton
|
||||
android:id="@+id/rbTransparent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="透传模式"
|
||||
android:text="@string/module_core_transparent"
|
||||
android:textSize="32dp" />
|
||||
|
||||
<!-- android:text="纯路侧模式"-->
|
||||
<RadioButton
|
||||
android:id="@+id/rbPureRoad"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="纯路侧模式"
|
||||
android:text="@string/module_core_pure_road"
|
||||
android:textSize="32dp" />
|
||||
|
||||
</RadioGroup>
|
||||
|
||||
<!-- android:text="变道速度阈值:"-->
|
||||
<TextView
|
||||
android:id="@+id/tvSpeedThresholdTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="20dp"
|
||||
android:text="变道速度阈值:"
|
||||
android:text="@string/module_core_speed_threshold_title"
|
||||
android:textColor="#1A1A1A"
|
||||
android:textSize="@dimen/dp_36"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
@@ -609,17 +643,19 @@
|
||||
app:layout_constraintLeft_toRightOf="@id/tvSpeed"
|
||||
app:layout_constraintTop_toTopOf="@id/tvSpeed" />
|
||||
|
||||
<!-- android:text="设置阈值"-->
|
||||
<Button
|
||||
android:id="@+id/btnSpeedSet"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="10dp"
|
||||
android:padding="@dimen/dp_20"
|
||||
android:text="设置阈值"
|
||||
android:text="@string/module_core_speed_set"
|
||||
app:layout_constraintBottom_toBottomOf="@id/ivSpeedAdd"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@id/ivSpeedAdd" />
|
||||
|
||||
<!-- android:text="超车速度阈值:"-->
|
||||
<TextView
|
||||
android:id="@+id/tvSpeedOverTakeLimit"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -628,7 +664,7 @@
|
||||
android:layout_marginStart="15dp"
|
||||
android:layout_marginTop="@dimen/dp_30"
|
||||
android:layout_marginEnd="15dp"
|
||||
android:text="超车速度阈值:"
|
||||
android:text="@string/module_core_speed_over_take_limit"
|
||||
android:textColor="#1A1A1A"
|
||||
android:textSize="@dimen/dp_36"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
@@ -673,13 +709,14 @@
|
||||
app:layout_constraintLeft_toRightOf="@id/tvOverTakeLimit"
|
||||
app:layout_constraintTop_toTopOf="@id/tvOverTakeLimit" />
|
||||
|
||||
<!-- android:text="设置阈值"-->
|
||||
<Button
|
||||
android:id="@+id/btnSpeedOverTakeSet"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="10dp"
|
||||
android:padding="@dimen/dp_20"
|
||||
android:text="设置阈值"
|
||||
android:text="@string/module_core_speed_set"
|
||||
app:layout_constraintBottom_toBottomOf="@id/ivSpeedOverTakeAdd"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@id/ivSpeedOverTakeAdd" />
|
||||
@@ -706,13 +743,14 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<!-- android:text="业务类"-->
|
||||
<TextView
|
||||
android:id="@+id/tvOtherTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_10"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="业务类"
|
||||
android:text="@string/module_core_other_title"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="@dimen/sp_36"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
@@ -729,6 +767,7 @@
|
||||
|
||||
|
||||
<!--限速标识-->
|
||||
<!-- android:text="限速标识"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scSpeedLimit"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -736,11 +775,12 @@
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="限速标识"
|
||||
android:text="@string/module_core_speed_limit"
|
||||
app:layout_constraintLeft_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvOtherTitle" />
|
||||
<!--异常上报提示-->
|
||||
<!-- android:text="异常上报提示"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scIPCReport"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -748,11 +788,12 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="异常上报提示"
|
||||
android:text="@string/module_core_ipc_report"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvOtherTitle" />
|
||||
<!--360环视-->
|
||||
<!-- android:text="360环视"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scNew360LookAround"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -760,12 +801,13 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="360环视"
|
||||
android:text="@string/module_core_360_look_around"
|
||||
app:layout_constraintLeft_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scSpeedLimit" />
|
||||
|
||||
<!--清扫和业务模式切换开关(开-云控,关-运营)-->
|
||||
<!-- android:text="清扫云控业务"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scSweeperModeSwitch"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -773,13 +815,14 @@
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/scIPCReport"
|
||||
android:text="清扫云控业务"
|
||||
android:text="@string/module_core_sweeper_mode_switch"
|
||||
android:scaleY="1.2"
|
||||
android:scaleX="1.2"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:layout_marginBottom="@dimen/dp_10"/>
|
||||
|
||||
<!--自主算路验证模式-->
|
||||
<!-- android:text="自主算路验证模式"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scLineRoutingVerify"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -787,12 +830,13 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="自主算路验证模式"
|
||||
android:text="@string/module_core_line_routing_verify"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scSweeperModeSwitch" />
|
||||
|
||||
<!--平行驾驶是否提醒开关 -->
|
||||
<!-- android:text="平行驾驶介入及退出提醒"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scRemoteModelNotice"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -800,12 +844,13 @@
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:text="平行驾驶介入及退出提醒"
|
||||
android:text="@string/module_core_remote_model_notice"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
|
||||
app:layout_constraintTop_toBottomOf="@id/scSweeperModeSwitch" />
|
||||
|
||||
<!--天气效果开关-->
|
||||
<!-- android:text="天气效果开关"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scWeatherSwitch"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -814,11 +859,12 @@
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:checked="true"
|
||||
android:text="天气效果开关"
|
||||
android:text="@string/module_core_weather_switch"
|
||||
app:layout_constraintLeft_toLeftOf="@id/scIPCReport"
|
||||
app:layout_constraintRight_toRightOf="@id/scIPCReport"
|
||||
app:layout_constraintTop_toBottomOf="@id/scIPCReport" />
|
||||
|
||||
<!-- android:text="系统启动状态展示"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/scConnectionSwitch"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -827,7 +873,7 @@
|
||||
android:scaleX="1.2"
|
||||
android:scaleY="1.2"
|
||||
android:checked="true"
|
||||
android:text="系统启动状态展示"
|
||||
android:text="@string/module_core_connection_switch"
|
||||
app:layout_constraintLeft_toLeftOf="@id/scWeatherSwitch"
|
||||
app:layout_constraintRight_toRightOf="@id/scWeatherSwitch"
|
||||
app:layout_constraintTop_toBottomOf="@id/scWeatherSwitch"
|
||||
@@ -852,6 +898,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="60dp" />
|
||||
|
||||
<!-- android:text="魔方指令测试"-->
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
android:id="@+id/mfTest"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -859,7 +906,7 @@
|
||||
android:layout_marginTop="5dip"
|
||||
android:paddingTop="25dp"
|
||||
android:paddingBottom="25dp"
|
||||
android:text="魔方指令测试" />
|
||||
android:text="@string/module_core_mf_test" />
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
<TextView
|
||||
@@ -918,12 +965,13 @@
|
||||
android:layout_margin="10dp"
|
||||
android:text="5s"
|
||||
android:textSize="32dp" />
|
||||
<!-- android:text="不接取"-->
|
||||
<RadioButton
|
||||
android:id="@+id/rbNo"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="10dp"
|
||||
android:text="不接取"
|
||||
android:text="@string/module_core_not_accept"
|
||||
android:textSize="32dp" />
|
||||
</RadioGroup>
|
||||
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
</LinearLayout>
|
||||
</ScrollView>
|
||||
|
||||
<!-- android:text="关闭"-->
|
||||
<TextView
|
||||
android:id="@+id/btnClose"
|
||||
android:layout_width="@dimen/dp_356"
|
||||
@@ -58,7 +59,7 @@
|
||||
android:layout_marginBottom="@dimen/dp_65"
|
||||
android:background="@drawable/bg_fsm_status_detail_close"
|
||||
android:gravity="center"
|
||||
android:text="关闭"
|
||||
android:text="@string/module_core_close"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="@dimen/sp_40"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<!-- android:text="漫游模式"-->
|
||||
<TextView
|
||||
android:id="@+id/tvTitleView"
|
||||
android:layout_width="match_parent"
|
||||
@@ -22,7 +23,7 @@
|
||||
android:ellipsize="end"
|
||||
android:gravity="center"
|
||||
android:maxLines="2"
|
||||
android:text="漫游模式"
|
||||
android:text="@string/module_core_roaming_mode"
|
||||
android:textColor="@color/color_FFFFFF"
|
||||
android:textSize="@dimen/sp_38"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
|
||||
@@ -0,0 +1,305 @@
|
||||
<resources>
|
||||
|
||||
<string name="motice_push_check">View</string>
|
||||
|
||||
<string name="tab_car_info">My Vehicle</string>
|
||||
<string name="tab_tool_kit">More</string>
|
||||
<string name="tab_car_login_info">Login Info</string>
|
||||
<string name="tab_car_exit">Exit</string>
|
||||
<string name="tab_car_no">Vehicle Binding</string>
|
||||
<string name="tab_version_info">Version Info</string>
|
||||
<string name="tab_sn">Device SN</string>
|
||||
<string name="tab_version_pad_info">PAD:</string>
|
||||
<string name="tab_version_ad_info">AD:</string>
|
||||
<string name="tab_version_hdmap_info">HD MAP:</string>
|
||||
<string name="tab_version_admap_info">AD MAP:</string>
|
||||
<string name="tab_version_grid_map_info">Grid Map:</string>
|
||||
<string name="tab_version_slam_map_info">Islam Map:</string>
|
||||
<string name="tab_version_update">Check Update</string>
|
||||
<string name="tab_login_norphone"> Guest (Not Logged In)</string>
|
||||
<string name="tab_login_gophone">Login</string>
|
||||
|
||||
<string name="log_min">Minimize</string>
|
||||
<string name="log_info">Log</string>
|
||||
<string name="log_info_edt_hint">Enter keyword to filter</string>
|
||||
|
||||
<string name="log_info_verbose">Verbose</string>
|
||||
<string name="log_info_debug">Debug</string>
|
||||
<string name="log_info_info">Info</string>
|
||||
<string name="log_info_warn">Warn</string>
|
||||
<string name="log_info_error">Error</string>
|
||||
|
||||
<!--日志-->
|
||||
<string name="log_btn_clean">Clear Log</string>
|
||||
<string name="log_btn_export">Export</string>
|
||||
<string name="log_btn_back_top">Back to Top</string>
|
||||
<string name="log_btn_to_bottom">Scroll to Bottom</string>
|
||||
<string name="log_text_loading">Loading logs...</string>
|
||||
|
||||
<string name="check_vehicle_detection">Vehicle Detection</string>
|
||||
<string name="debug_panel">Debug Panel</string>
|
||||
<string name="debug_panel_fb">Record Setting</string>
|
||||
<string name="debug_sop">Operation Panel</string>
|
||||
<string name="debug_bad_case">Record</string>
|
||||
<string name="take_over_record">Takeover Record</string>
|
||||
<string name="wait_upload_task">Local Tasks</string>
|
||||
<string name="debug_bad_case_manager">Record Manager</string>
|
||||
<string name="debug_bad_case_report">Report</string>
|
||||
<string name="check_vehicle_speed_setting">Speed Setting</string>
|
||||
<string name="bus_operation_title">Account Info</string>
|
||||
<string name="check_system_operation">System Operation</string>
|
||||
<string name="check_system_shut_down">One-click Shutdown</string>
|
||||
<string name="check_system_reboot">Reboot System</string>
|
||||
<string name="check_system_reboot_title">Reboot Notice</string>
|
||||
<string name="check_system_reboot_content">Reboot autonomous driving system?</string>
|
||||
<string name="check_system_reboot_tips">Ensure exited autonomous driving and surroundings are safe</string>
|
||||
|
||||
|
||||
<!--系统版本-->
|
||||
<string name="check_system_version">System Version</string>
|
||||
<string name="current_system_version">Current Version</string>
|
||||
<string name="application_upgrade">App Upgrade</string>
|
||||
<string name="application_upgrade_confirm">Upgrade app to latest version?</string>
|
||||
<string name="application_upgrade_tips">Note! Exit autonomous driving before upgrade. Allowed during manual driving. Do not power off during upgrade.</string>
|
||||
<string name="confirm">Confirm</string>
|
||||
<string name="cancel">Cancel</string>
|
||||
<string name="upgrade_later">Upgrade Later</string>
|
||||
|
||||
<string name="ipc_report_time">Time:</string>
|
||||
<string name="ipc_report_type">Type:</string>
|
||||
<string name="ipc_report_msg">Reason:</string>
|
||||
<string name="ipc_report_action">Suggested Action:</string>
|
||||
|
||||
<!--绑定车机-->
|
||||
<string name="bindingcar_title">Bind Vehicle</string>
|
||||
<string name="modify_binding_car">Modify vehicle binding?</string>
|
||||
<string name="to_binding_car">Bind vehicle?</string>
|
||||
|
||||
<string name="status_bar_tag">Mogo Nebula</string>
|
||||
|
||||
<string name="dispatch_dialog_title">You Have a New Task</string>
|
||||
<string name="dispatch_dialog_start_loc">Start:</string>
|
||||
<string name="dispatch_dialog_end_loc">End:</string>
|
||||
<string name="dispatch_dialog_task_time">Task Time:</string>
|
||||
<string name="dispatch_dialog_task_info">Task Detail:</string>
|
||||
<string name="dispatch_dialog_flight_info">Flight Info:</string>
|
||||
<string name="dispatch_dialog_affirm">Accept Task</string>
|
||||
<string name="dispatch_cars_remind_title">Dispatch Confirm</string>
|
||||
<string name="dispatch_dialog_restart_title">Notice</string>
|
||||
<string name="dispatch_dialog_restart_content">Vehicle exited autonomous driving, click below to resume</string>
|
||||
<string name="dispatch_dialog_restart_enter">Enter Autonomous Driving</string>
|
||||
<string name="dispatch_cars_remind_content">Vehicle will enter autonomous driving and head to:</string>
|
||||
<string name="dispatch_cars_affirm">Confirm</string>
|
||||
<string name="dispatch_cars_cancel">Cancel</string>
|
||||
<string name="offline_map_cache_tip">Offline Map Cache Notice</string>
|
||||
<string name="cache_offline_map_content">Cache latest offline map?</string>
|
||||
<string name="offline_downloading">Offline Map Downloading</string>
|
||||
<string name="offline_download_success">Offline Map Downloaded</string>
|
||||
<string name="offline_download_failure">Offline Map Download Failed</string>
|
||||
<string name="offline_had_downloaded">Already Latest Version</string>
|
||||
<string name="offline_update_tip">Check network connection</string>
|
||||
<string name="location_try_again">Check location service</string>
|
||||
<string name="ok_tip">OK</string>
|
||||
<string name="retry">Retry</string>
|
||||
<string name="hint_exit_app_again">Press again to exit</string>
|
||||
<!--消息盒子V2X消息Title-->
|
||||
<string name="v2x_title_content">%s-%s</string>
|
||||
|
||||
<string name="traffic_light_status">Traffic Light Status</string>
|
||||
<!--红绿灯数据来源-->
|
||||
<string name="light_source_ai_cloud">Cloud</string>
|
||||
<string name="light_source_driver_ai_cloud">Cloud</string>
|
||||
<string name="light_source_perception">Vehicle</string>
|
||||
<string name="light_source_driver_perception">Vehicle</string>
|
||||
<string name="light_source_perception_v2i">Fusion V2I</string>
|
||||
<string name="light_source_perception_v2n">Fusion V2N</string>
|
||||
<string name="light_source_obu">OBU</string>
|
||||
<string name="light_source_driver_obu">OBU</string>
|
||||
<string name="parallel_drive">Remote Driving</string>
|
||||
<string name="parallel_drive_requesting">Requesting...</string>
|
||||
<string name="parallel_drive_synchronizing">Syncing...</string>
|
||||
<string name="parallel_drive_failure">Request Failed</string>
|
||||
<string name="parallel_drive_exception">Exception</string>
|
||||
<!--清扫车模式切换-->
|
||||
<string name="sweeper_mode_change_title">Sweeper Mode Switch Notice</string>
|
||||
<string name="sweeper_mode_change_tips">Switch sweeper mode? The app will restart.</string>
|
||||
|
||||
<string name="pull_time_title">Taxi Unmanned Task Fetch Interval</string>
|
||||
|
||||
<!--融合红绿灯-->
|
||||
<string name="fusion_traffic_light_state">Fusion Traffic Light Status</string>
|
||||
<string name="fusion_traffic_light_scale">Fusion Traffic Light Scale</string>
|
||||
<string name="fusion_traffic_light_pointer">Fusion Traffic Light Pointer</string>
|
||||
|
||||
<!--行程总结-->
|
||||
<string name="summary_close">Trip Summary Close</string>
|
||||
<string name="summary_zhi">Trip Summary Zhi Icon</string>
|
||||
<string name="summary_intersection_services">Holographic Intersection Service</string>
|
||||
<string name="summary_light_services">Traffic Light Service</string>
|
||||
<string name="summary_info_tip">Road Info Reminder</string>
|
||||
<string name="summary_vehicle_tip">Vehicle Behavior Reminder</string>
|
||||
<string name="summary_vulnerable_tip">Vulnerable Participant Reminder</string>
|
||||
<string name="summary_service_unit">times</string>
|
||||
<string name="summary_efficiency_unit">%</string>
|
||||
<string name="summary_danger_title">Eliminate Safety Risks</string>
|
||||
<string name="summary_efficiency_title">Traffic Efficiency Improvement</string>
|
||||
<string name="summary_danger_tip">‘Even the smallest chance of traffic accidents brings unbearable consequences.’</string>
|
||||
<string name="summary_powered">Powered by Mogo Traffic Model™</string>
|
||||
|
||||
<!--自动探索-->
|
||||
<string name="exploration_scan">Auto Exploration Scan</string>
|
||||
<string name="exploration_vehicle_lane">Auto Exploration Lane</string>
|
||||
<string name="exploration_title">Scanning Road Ahead</string>
|
||||
<string name="exploration_close">Auto Exploration Close</string>
|
||||
<string name="exploration_loading">Auto Exploration Loading</string>
|
||||
|
||||
<string name="road_cross_live_tip">Mogo is protecting your journey in real time!</string>
|
||||
|
||||
<string name="hmi_take_over">Manual Takeover</string>
|
||||
<string name="hmi_over_take">Overtake</string>
|
||||
<string name="hmi_line_to_left">Change Lane Left</string>
|
||||
<string name="hmi_line_to_right">Change Lane Right</string>
|
||||
<string name="hmi_pull_over">Pull Over</string>
|
||||
<string name="hmi_emergency_stop">Emergency Stop</string>
|
||||
<string name="hmi_take_over_request">Takeover Request</string>
|
||||
<string name="hmi_take_over_recover">Resume Auto Decision</string>
|
||||
<string name="hmi_open_lane_change">Obstacle Mode</string>
|
||||
<string name="hmi_close_lane_change">Obstacle Mode</string>
|
||||
<string name="hmi_open_aeb">Brake Mode</string>
|
||||
<string name="hmi_close_aeb">Brake Mode</string>
|
||||
<string name="hmi_open_stop_yield">Stop</string>
|
||||
<string name="hmi_close_stop_yield">Stop</string>
|
||||
<string name="hmi_open_map_speed">Speed Limit Mode</string>
|
||||
<string name="hmi_close_map_speed">Speed Limit Mode</string>
|
||||
<string name="hmi_open_ramp">Roundabout Mode</string>
|
||||
<string name="hmi_close_ramp">Roundabout Mode</string>
|
||||
|
||||
<string name="hmi_main_driver">Driver</string>
|
||||
<string name="hmi_co_driver">Co-driver</string>
|
||||
<string name="hmi_rear_row">Rear Seat</string>
|
||||
|
||||
<!--消息盒子-->
|
||||
<string name="msg_box_title_notice">Notice</string>
|
||||
<string name="msg_box_title_fm">FM Info</string>
|
||||
<string name="msg_box_title_report">System Info</string>
|
||||
<string name="msg_box_title_bad_case">Record</string>
|
||||
<string name="bad_case_icon">Record Icon</string>
|
||||
<string name="bad_case_record_tip">Record Tip</string>
|
||||
<string name="bad_case_check">View</string>
|
||||
<string name="report_icon">System Info Icon</string>
|
||||
<string name="report_retract">Collapse</string>
|
||||
<string name="report_open">Expand</string>
|
||||
<string name="fm_icon">FM Icon</string>
|
||||
<string name="fm_retract">Collapse</string>
|
||||
<string name="fm_open">Expand</string>
|
||||
<string name="operation_icon">Operation Icon</string>
|
||||
<string name="operation_title">Operation Platform</string>
|
||||
<string name="operation_return_icon">Return Notice Icon</string>
|
||||
<string name="operation_return_title">Return Notice</string>
|
||||
<string name="operation_stop_icon">Pull Over Icon</string>
|
||||
<string name="operation_stop_title">Pull Over</string>
|
||||
<string name="operation_door_icon">Platform Door Fail Icon</string>
|
||||
<string name="operation_door_title">Operation Platform</string>
|
||||
<string name="notice_icon">Official Notice Icon</string>
|
||||
<string name="notice_title">Official Notice</string>
|
||||
<string name="notice_check">View</string>
|
||||
<string name="summary_icon">Summary Icon</string>
|
||||
<string name="summary_title">Mogo Assistant</string>
|
||||
<string name="ssm_icon">SSM Icon</string>
|
||||
<string name="autopilot_icon">Domain Controller State Icon</string>
|
||||
<string name="fsm_icon">FSM Icon</string>
|
||||
<string name="v2x_icon">V2X Icon</string>
|
||||
<string name="nde_icon">NDE Icon</string>
|
||||
<string name="ota_icon">OTA Icon</string>
|
||||
<string name="nde_road_icon">NDE Lane Icon</string>
|
||||
<string name="nde_road_recommend">Recommend</string>
|
||||
<string name="nde_road_slow">Slow</string>
|
||||
|
||||
<string name="fault_time_reduce">Fault Time Reduced</string>
|
||||
<string name="fault_time_add">Fault Time Increased</string>
|
||||
<string name="msg_box_toast_icon">Message Toast Icon</string>
|
||||
<string name="traffic_light_source">Traffic Light Source</string>
|
||||
<string name="report_success">Reported</string>
|
||||
|
||||
<string name="operate_v2x_connect_tip">Wait for V2X connection</string>
|
||||
|
||||
<string name="wifi_connect_icon">WiFi Icon</string>
|
||||
<string name="ipc_connect_icon">Domain Controller Icon</string>
|
||||
<string name="ssm_connect_icon">SSM Icon</string>
|
||||
<string name="cold_start_icon">Cold Start Icon</string>
|
||||
<string name="wifi_connect_loading">Waiting for Vehicle WiFi…</string>
|
||||
<string name="wifi_connect_success">Connected to Vehicle WiFi</string>
|
||||
<string name="ipc_connect_wait">Waiting for Domain Controller</string>
|
||||
<string name="ipc_connect_loading">Connecting…</string>
|
||||
<string name="ipc_connect_success">Connected to Controller</string>
|
||||
<string name="cold_start_in_progress_title">System Starting…</string>
|
||||
<string name="cold_start_success_title">System Started</string>
|
||||
<string name="cold_start_fail_title">System Start Failed</string>
|
||||
<string name="ssm_connect_wait">Waiting for SSM</string>
|
||||
<string name="ssm_connect_loading">Waiting for SSM Info</string>
|
||||
<string name="ssm_connect_success">SSM Communication OK</string>
|
||||
<string name="ssm_connect_fail">Timeout, restart vehicle and report</string>
|
||||
<string name="cold_start_wait">Waiting</string>
|
||||
<string name="cold_start_success_content">System started, entering home</string>
|
||||
<string name="cold_start_fail_content">System error, try restart</string>
|
||||
|
||||
<string name="cold_start_title_wifi_wait">Waiting Vehicle Power</string>
|
||||
<string name="cold_start_title_tel_wait">Waiting Controller</string>
|
||||
<string name="cold_start_title_tel_exception">Controller Connection Exception</string>
|
||||
<string name="cold_start_title_ssm_wait">Waiting SSM</string>
|
||||
<string name="cold_start_title_ssm_exception">SSM Communication Exception</string>
|
||||
<string name="cold_start_title_sys_wait">Waiting System Start</string>
|
||||
<string name="cold_start_title_sys_success">System Started</string>
|
||||
<string name="cold_start_title_sys_exception">System Exception</string>
|
||||
<string name="cold_start_list_mask">Cold Start Mask</string>
|
||||
<string name="cold_start_soft_icon">Cold Start Software Icon</string>
|
||||
<string name="cold_start_fault_icon">Cold Start HW Fault Icon</string>
|
||||
<string name="cold_start_now">Use Now</string>
|
||||
<string name="cold_start_now_tip">Skipping may disable autonomous mode</string>
|
||||
|
||||
<string name="cold_start_process">Cold Start Progress</string>
|
||||
|
||||
<!--OTA升级-->
|
||||
<string name="ota_upgrade_title">Vehicle Deployment</string>
|
||||
<string name="ota_upgrade_tip_one">Received deployment task;</string>
|
||||
<string name="ota_upgrade_tip_two">Ensure safe position and engine on;</string>
|
||||
<string name="ota_upgrade_tip_three">No operations during upgrade;</string>
|
||||
<string name="ota_upgrade_now">Upgrade Now</string>
|
||||
<string name="ota_upgrade_later">Upgrade Later</string>
|
||||
<string name="ota_download_title">Downloading</string>
|
||||
<string name="ota_result_image">OTA Result Image</string>
|
||||
<string name="ota_result_success">Deployment Download Finished</string>
|
||||
<string name="ota_result_fail">Deployment Failed</string>
|
||||
<string name="ota_result_timeout">Status Query Timeout</string>
|
||||
<string name="ota_result_success_tip">System stopping gracefully, operate restart after %s</string>
|
||||
<string name="ota_result_fail_tip">Contact Admin</string>
|
||||
<string name="ota_result_close">Close</string>
|
||||
<string name="ota_power_off_finish_title">Graceful Stop Finished</string>
|
||||
<string name="ota_power_off_finish_tip">Restart Vehicle</string>
|
||||
|
||||
<string name="fsm_demo_mode_error">FSM Demo Error</string>
|
||||
|
||||
<string name="hard_disk_connected">Disk Connected</string>
|
||||
<string name="hard_disk_unplug">Disk Unplug Icon</string>
|
||||
<string name="hard_disk_data_date">Data Date</string>
|
||||
<string name="disk_copy_date_select">Date Selector Icon</string>
|
||||
<string name="select_copy_date">Select Date</string>
|
||||
<string name="disk_copy_terminate">Terminate Copy Icon</string>
|
||||
<string name="disk_copy_terminate_title">Terminate Copy</string>
|
||||
<string name="disk_copy_terminate_content">Terminate copy and eject disk</string>
|
||||
<string name="disk_copy_terminate_confirm">Confirm</string>
|
||||
<string name="disk_copy_terminate_cancel">Cancel</string>
|
||||
<string name="disk_copy_exception_icon">Copy Exception Icon</string>
|
||||
<string name="disk_copy_exception_close">Close</string>
|
||||
<string name="copy_bag_success_close">Close</string>
|
||||
<string name="disk_free_space">%dG Available</string>
|
||||
<string name="disk_used_percent">%d%%</string>
|
||||
<string name="disk_copy_progress">Copying…%d%%</string>
|
||||
<string name="copy_bag_start">Start Copy</string>
|
||||
<string name="copy_bag_success">Copy Success</string>
|
||||
<string name="disk_not_enough_space">Not Enough Space</string>
|
||||
<string name="date_cannot_copy">Selected Date Unavailable</string>
|
||||
|
||||
<string name="common_traffic_light_status">Traffic Light Background</string>
|
||||
|
||||
</resources>
|
||||
@@ -18,9 +18,10 @@
|
||||
<Key
|
||||
android:codes="51"
|
||||
android:keyLabel="3" />
|
||||
<!-- android:keyLabel="删除"-->
|
||||
<Key
|
||||
android:codes="-5"
|
||||
android:keyLabel="删除" />
|
||||
android:keyLabel="@string/module_core_delete" />
|
||||
</Row>
|
||||
|
||||
<Row>
|
||||
@@ -34,11 +35,12 @@
|
||||
android:codes="54"
|
||||
android:keyLabel="6" />
|
||||
|
||||
<!-- android:keyLabel="确定"-->
|
||||
<Key
|
||||
android:codes="-4"
|
||||
app:keyBackground="@drawable/keyboard_blue"
|
||||
android:keyHeight="368dp"
|
||||
android:keyLabel="确定"/>
|
||||
android:keyLabel="@string/module_core_confirm"/>
|
||||
</Row>
|
||||
|
||||
<Row>
|
||||
|
||||
@@ -1,74 +1,86 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- android:title="业务类"-->
|
||||
<PreferenceCategory
|
||||
android:layout="@layout/layout_operate_panel_preference_category_title"
|
||||
android:title="业务类">
|
||||
android:title="@string/module_core_other_title">
|
||||
<!-- android:title="异常上报提示"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="fault_report_tip"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="异常上报提示"
|
||||
android:title="@string/module_core_ipc_report"
|
||||
android:persistent="false"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
<!-- android:title="限速标识"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="limit_speed_marker"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="限速标识"
|
||||
android:title="@string/module_core_speed_limit"
|
||||
android:persistent="false"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
<!-- android:title="天气效果开关"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="weather_effect_switch"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="天气效果开关"
|
||||
android:title="@string/module_core_weather_switch"
|
||||
android:persistent="false"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
<!-- android:title="系统启动状态展示"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="system_boot_status_show"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="系统启动状态展示"
|
||||
android:title="@string/module_core_connection_switch"
|
||||
android:persistent="false"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
<!-- android:title="无人化演练任务拉取时间间隔"-->
|
||||
<com.mogo.eagle.core.function.hmi.ui.operate.preferences.PreferenceWithUnmanInterval
|
||||
android:key="unmanned_demo_pull_interval"
|
||||
android:layout="@layout/layout_operate_panel_preference_with_title_above"
|
||||
android:title="无人化演练任务拉取时间间隔"
|
||||
android:title="@string/module_core_unmanned_demo_pull_interval"
|
||||
android:persistent="false"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_radio_group_custom" />
|
||||
<!-- android:title="自主算路验证模式"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="self_routing_verify_mode"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="自主算路验证模式"
|
||||
android:title="@string/module_core_line_routing_verify"
|
||||
android:persistent="false"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
<!-- android:title="平行驾驶介入及退出提醒"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="remote_mode_show_notice"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="平行驾驶介入及退出提醒"
|
||||
android:title="@string/module_core_remote_model_notice"
|
||||
android:persistent="false"
|
||||
android:defaultValue="true"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
<!-- android:title="清扫车云控业务"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="sweeper_cloud_control"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="清扫车云控业务"
|
||||
android:title="@string/module_core_sweeper_mode_switch1"
|
||||
android:persistent="false"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
<!-- android:title="360环视"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="look_around_360"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="360环视"
|
||||
android:title="@string/module_core_360_look_around"
|
||||
android:persistent="false"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
<!-- android:title="驾驶位视频流"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="drive_seat_video_stream"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="驾驶位视频流"
|
||||
android:title="@string/module_core_drive_seat_video_stream"
|
||||
android:persistent="false"
|
||||
android:enabled="false"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
<!-- android:title="MogoMind开关"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="mogo_mind_switch"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:title="MogoMind开关"
|
||||
android:title="@string/module_core_mogo_mind_switch"
|
||||
android:persistent="false"
|
||||
android:enabled="true"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat" />
|
||||
|
||||
@@ -1,27 +1,32 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<PreferenceCategory android:title="美化模式" android:layout="@layout/layout_operate_panel_preference_category_title">
|
||||
<!-- android:title="美化模式"-->
|
||||
<PreferenceCategory android:title="@string/module_core_demo_mode" android:layout="@layout/layout_operate_panel_preference_category_title">
|
||||
<!-- android:title="美化模式"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="demo_switch"
|
||||
android:title="美化模式"
|
||||
android:title="@string/module_core_demo_mode"
|
||||
android:persistent="false"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat"/>
|
||||
<!-- android:title="录包弹窗"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="record_bag_dialog"
|
||||
android:title="录包弹窗"
|
||||
android:title="@string/module_core_show_bag_record_window"
|
||||
android:persistent="false"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat"/>
|
||||
<!-- android:title="接管提醒"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="take_over_wake"
|
||||
android:title="接管提醒"
|
||||
android:title="@string/module_core_take_over_remind"
|
||||
android:persistent="false"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
android:widgetLayout="@layout/layout_operate_panel_preference_widget_switch_compat"/>
|
||||
<!-- android:title="B2乘客屏驾驶状态美化呈现"-->
|
||||
<SwitchPreferenceCompat
|
||||
android:key="mogo_prettify_switch"
|
||||
android:title="B2乘客屏驾驶状态美化呈现"
|
||||
android:title="@string/module_core_mogo_prettify_switch"
|
||||
android:persistent="false"
|
||||
android:enabled="true"
|
||||
android:layout="@layout/layout_operate_panel_preference_switch_compat"
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user