[8.2.0]OTA升级兼容策略调整
This commit is contained in:
@@ -218,7 +218,7 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
if(OTAUpgradeConfig.coldStartCompleted && !OTAUpgradeConfig.autopilotStatus
|
||||
&& !OTAUpgradeConfig.inOrder){
|
||||
//触发强提示升级
|
||||
CallerHmiManager.showOTAUpgradeDialog(true,upgradeReason+upgradeTime)
|
||||
CallerHmiManager.showOTAUpgradeDialog(1,true,upgradeReason+upgradeTime)
|
||||
}else{
|
||||
//触发弱提示升级
|
||||
//冷启动未完成(进行中),或驾驶状态为自驾状态,或当前有订单,直接默认选择稍后升级,
|
||||
@@ -293,7 +293,7 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
//没有升级任务,取消查询,关掉弹窗
|
||||
responseTimeoutNum = 0
|
||||
handler.removeMessages(1)
|
||||
CallerHmiManager.showOTAUpgradeDialog(false,"")
|
||||
CallerHmiManager.showOTAUpgradeDialog(1,false,"")
|
||||
CallerHmiManager.showOTADownloadStatusDialog(false, emptyList())
|
||||
CallerOTAManager.invokeOtaDownloadStatus(false)
|
||||
}
|
||||
@@ -352,7 +352,7 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
if(OTAUpgradeConfig.coldStartCompleted && !OTAUpgradeConfig.autopilotStatus
|
||||
&& !OTAUpgradeConfig.inOrder){
|
||||
//触发强提示升级
|
||||
CallerHmiManager.showOTAUpgradeDialog(true,upgradeReason+upgradeTime)
|
||||
CallerHmiManager.showOTAUpgradeDialog(1,true,upgradeReason+upgradeTime)
|
||||
}else{
|
||||
//触发弱提示升级
|
||||
//冷启动未完成(进行中),或驾驶状态为自驾状态,或当前有订单,直接默认选择稍后升级,
|
||||
@@ -414,7 +414,7 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
//通知关闭提示升级窗口(存在域控也在进行5min倒计时,与app存在时间差,域控会更早完成倒计时触发升级,
|
||||
// 此时通知app开始升级,app收到后即使未完成倒计时,也关闭提示弹窗,开始展示下载进展)
|
||||
OTAUpgradeConfig.isQuery = false
|
||||
CallerHmiManager.showOTAUpgradeDialog(false,"")
|
||||
CallerHmiManager.showOTAUpgradeDialog(1,false,"")
|
||||
CallerHmiManager.showOTADownloadStatusDialog(true,otaUpgradeList)
|
||||
CallerOTAManager.invokeOtaDownloadStatus(true)
|
||||
}
|
||||
@@ -494,7 +494,7 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
if(OTAUpgradeConfig.coldStartCompleted && !OTAUpgradeConfig.autopilotStatus
|
||||
&& !OTAUpgradeConfig.inOrder){
|
||||
//触发强提示升级
|
||||
CallerHmiManager.showOTAUpgradeDialog(true,upgradeReason)
|
||||
CallerHmiManager.showOTAUpgradeDialog(2,true,upgradeReason)
|
||||
}else{
|
||||
//触发弱提示升级
|
||||
//冷启动未完成(进行中),或驾驶状态为自驾状态,或当前有订单,直接默认选择稍后升级,
|
||||
|
||||
@@ -389,7 +389,7 @@ class CarInfoTabView @JvmOverloads constructor(
|
||||
}else{
|
||||
"预计部署过程用时${leftTime%60}秒"
|
||||
}
|
||||
CallerHmiManager.showOTAUpgradeDialog(true,upgradeReason+upgradeTime)
|
||||
CallerHmiManager.showOTAUpgradeDialog(1,true,upgradeReason+upgradeTime)
|
||||
}else{
|
||||
ToastUtils.showLong("请结束订单后触发升级")
|
||||
}
|
||||
|
||||
@@ -677,10 +677,11 @@ class MoGoHmiProvider : IMoGoHmiProvider {
|
||||
|
||||
/**
|
||||
* 展示OTA升级弹窗
|
||||
* @param version OTA升级版本
|
||||
* @param isShow 设置是否展示
|
||||
* @param content 升级内容
|
||||
*/
|
||||
override fun showOTAUpgradeDialog(isShow: Boolean,content: String) {
|
||||
override fun showOTAUpgradeDialog(version: Int,isShow: Boolean,content: String) {
|
||||
ThreadUtils.runOnUiThread{
|
||||
context?.let {
|
||||
if(isShow){
|
||||
@@ -690,6 +691,7 @@ class MoGoHmiProvider : IMoGoHmiProvider {
|
||||
if(otaUpgradeDialog?.isShowing == false){
|
||||
otaUpgradeDialog?.show()
|
||||
}
|
||||
otaUpgradeDialog?.setOTAVersion(version)
|
||||
otaUpgradeDialog?.showUpgradeContent(content)
|
||||
}else{
|
||||
if(otaUpgradeDialog?.isShowing == true){
|
||||
|
||||
@@ -31,6 +31,7 @@ class OTAUpgradeDialog(context: Context) :
|
||||
|
||||
private var clickListener: ClickListener? = null
|
||||
private var upgradeWaitingTimer: CountDownTimer ?= null //等待升级确认计时器
|
||||
private var otaVersion: Int = 0
|
||||
|
||||
init{
|
||||
setContentView(R.layout.dialog_ota_upgrade)
|
||||
@@ -41,42 +42,74 @@ class OTAUpgradeDialog(context: Context) :
|
||||
private fun initView(){
|
||||
//立即升级
|
||||
tv_upgrade_now.setOnClickListener {
|
||||
// val result = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
// if(result){
|
||||
// ToastUtils.showShort("立即升级命令发送成功")
|
||||
// }else{
|
||||
// ToastUtils.showShort("立即升级命令发送失败")
|
||||
// }
|
||||
|
||||
val query = JSONObject()
|
||||
query.put("cmd","ASK_PAD_UPGRADE_RES")
|
||||
query.put("token",OTAUpgradeConfig.token)
|
||||
query.put("allow_upgrade",true)
|
||||
query.put("reason","")
|
||||
Log.i("xuxinchao",query.toString())
|
||||
CallerAutoPilotControlManager.sendOtaPadMsgQuery(query.toString())
|
||||
|
||||
if(otaVersion == 1){
|
||||
val result = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
if(result){
|
||||
ToastUtils.showShort("立即升级命令发送成功")
|
||||
}else{
|
||||
ToastUtils.showShort("立即升级命令发送失败")
|
||||
}
|
||||
}else if(otaVersion == 2){
|
||||
val query = JSONObject()
|
||||
query.put("cmd","ASK_PAD_UPGRADE_RES")
|
||||
query.put("token",OTAUpgradeConfig.token)
|
||||
query.put("allow_upgrade",true)
|
||||
query.put("reason","")
|
||||
Log.i(TAG,query.toString())
|
||||
CallerAutoPilotControlManager.sendOtaPadMsgQuery(query.toString())
|
||||
}else{
|
||||
val result = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
if(result){
|
||||
ToastUtils.showShort("立即升级命令发送成功")
|
||||
}else{
|
||||
ToastUtils.showShort("立即升级命令发送失败")
|
||||
}
|
||||
|
||||
val query = JSONObject()
|
||||
query.put("cmd","ASK_PAD_UPGRADE_RES")
|
||||
query.put("token",OTAUpgradeConfig.token)
|
||||
query.put("allow_upgrade",true)
|
||||
query.put("reason","")
|
||||
Log.i(TAG,query.toString())
|
||||
CallerAutoPilotControlManager.sendOtaPadMsgQuery(query.toString())
|
||||
}
|
||||
dismiss()
|
||||
}
|
||||
//稍后升级
|
||||
tv_upgrade_later.setOnClickListener {
|
||||
// val delayResult = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.DELAY)
|
||||
// if(delayResult){
|
||||
// ToastUtils.showShort("稍后升级命令发送成功")
|
||||
// }else{
|
||||
// ToastUtils.showShort("稍后升级命令发送失败")
|
||||
// }
|
||||
|
||||
//不允许OTA升级
|
||||
val query = JSONObject()
|
||||
query.put("cmd","ASK_PAD_UPGRADE_RES")
|
||||
query.put("token",OTAUpgradeConfig.token)
|
||||
query.put("allow_upgrade",false)
|
||||
query.put("reason","user click")
|
||||
Log.i("xuxinchao",query.toString())
|
||||
CallerAutoPilotControlManager.sendOtaPadMsgQuery(query.toString())
|
||||
if(otaVersion == 1){
|
||||
val delayResult = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.DELAY)
|
||||
if(delayResult){
|
||||
ToastUtils.showShort("稍后升级命令发送成功")
|
||||
}else{
|
||||
ToastUtils.showShort("稍后升级命令发送失败")
|
||||
}
|
||||
}else if(otaVersion == 2){
|
||||
//不允许OTA升级
|
||||
val query = JSONObject()
|
||||
query.put("cmd","ASK_PAD_UPGRADE_RES")
|
||||
query.put("token",OTAUpgradeConfig.token)
|
||||
query.put("allow_upgrade",false)
|
||||
query.put("reason","user click")
|
||||
Log.i(TAG,query.toString())
|
||||
CallerAutoPilotControlManager.sendOtaPadMsgQuery(query.toString())
|
||||
}else{
|
||||
val delayResult = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.DELAY)
|
||||
if(delayResult){
|
||||
ToastUtils.showShort("稍后升级命令发送成功")
|
||||
}else{
|
||||
ToastUtils.showShort("稍后升级命令发送失败")
|
||||
}
|
||||
|
||||
//不允许OTA升级
|
||||
val query = JSONObject()
|
||||
query.put("cmd","ASK_PAD_UPGRADE_RES")
|
||||
query.put("token",OTAUpgradeConfig.token)
|
||||
query.put("allow_upgrade",false)
|
||||
query.put("reason","user click")
|
||||
Log.i(TAG,query.toString())
|
||||
CallerAutoPilotControlManager.sendOtaPadMsgQuery(query.toString())
|
||||
}
|
||||
dismiss()
|
||||
}
|
||||
upgradeWaitingTimer = object: CountDownTimer(UPGRADE_WAITING_TIME,UPGRADE_WAITING_TIME){
|
||||
@@ -85,7 +118,37 @@ class OTAUpgradeDialog(context: Context) :
|
||||
|
||||
override fun onFinish() {
|
||||
//立即升级
|
||||
CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
if(otaVersion == 1){
|
||||
val result = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
if(result){
|
||||
ToastUtils.showShort("立即升级命令发送成功")
|
||||
}else{
|
||||
ToastUtils.showShort("立即升级命令发送失败")
|
||||
}
|
||||
}else if(otaVersion == 2){
|
||||
val query = JSONObject()
|
||||
query.put("cmd","ASK_PAD_UPGRADE_RES")
|
||||
query.put("token",OTAUpgradeConfig.token)
|
||||
query.put("allow_upgrade",true)
|
||||
query.put("reason","")
|
||||
Log.i(TAG,query.toString())
|
||||
CallerAutoPilotControlManager.sendOtaPadMsgQuery(query.toString())
|
||||
}else{
|
||||
val result = CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.IMMEDIATELY)
|
||||
if(result){
|
||||
ToastUtils.showShort("立即升级命令发送成功")
|
||||
}else{
|
||||
ToastUtils.showShort("立即升级命令发送失败")
|
||||
}
|
||||
|
||||
val query = JSONObject()
|
||||
query.put("cmd","ASK_PAD_UPGRADE_RES")
|
||||
query.put("token",OTAUpgradeConfig.token)
|
||||
query.put("allow_upgrade",true)
|
||||
query.put("reason","")
|
||||
Log.i(TAG,query.toString())
|
||||
CallerAutoPilotControlManager.sendOtaPadMsgQuery(query.toString())
|
||||
}
|
||||
UiThreadHandler.postDelayed({
|
||||
CallerAutoPilotControlManager.sendSsmFuncOtaStatusQuery(OTAUpgradeConfig.otaToken)
|
||||
dismiss()
|
||||
@@ -107,6 +170,10 @@ class OTAUpgradeDialog(context: Context) :
|
||||
}
|
||||
}
|
||||
|
||||
fun setOTAVersion(version: Int){
|
||||
otaVersion = version
|
||||
}
|
||||
|
||||
interface ClickListener{
|
||||
//立即升级
|
||||
fun upgradeNow()
|
||||
|
||||
@@ -334,7 +334,7 @@ interface IMoGoHmiProvider :IProvider{
|
||||
* 展示OTA升级弹窗
|
||||
* @param isShow 设置是否展示
|
||||
*/
|
||||
fun showOTAUpgradeDialog(isShow: Boolean,content: String)
|
||||
fun showOTAUpgradeDialog(version: Int,isShow: Boolean,content: String)
|
||||
|
||||
/**
|
||||
* 展示OTA升级下载状态弹窗
|
||||
|
||||
@@ -483,8 +483,8 @@ object CallerHmiManager {
|
||||
/**
|
||||
* 展示OTA升级弹窗
|
||||
*/
|
||||
fun showOTAUpgradeDialog(isShow: Boolean,content: String){
|
||||
hmiProviderApi?.showOTAUpgradeDialog(isShow,content)
|
||||
fun showOTAUpgradeDialog(version: Int,isShow: Boolean,content: String){
|
||||
hmiProviderApi?.showOTAUpgradeDialog(version,isShow,content)
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user