diff --git a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/callback/ISweeperControllerStatusCallback.java b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/callback/ISweeperControllerStatusCallback.java index 1b247f036e..2ad48d1d5b 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/callback/ISweeperControllerStatusCallback.java +++ b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/callback/ISweeperControllerStatusCallback.java @@ -12,6 +12,6 @@ public interface ISweeperControllerStatusCallback { void onVRModeChanged(boolean isVRMode); // 自车定位 void onCarLocationChanged(MogoLocation location); - //开始开启自动驾驶 - void startOpenAutopilot(); + //自动驾驶状态 + void onAutopilotState(int state); } diff --git a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/fragment/BaseSweeperTabFragment.java b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/fragment/BaseSweeperTabFragment.java index 3eed9c364a..44436021f3 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/fragment/BaseSweeperTabFragment.java +++ b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/fragment/BaseSweeperTabFragment.java @@ -249,7 +249,9 @@ public abstract class BaseSweeperTabFragment { @@ -478,7 +484,8 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM SweeperTask.StartTaskResp startTaskResp = builder.build(); String reqNo = msgTypeAndReqNo.get(SweeperCloudTask.MessageType.CloudPushTask.getNumber()); getAutoPilotControlManager().sendSweeperStartTaskResp(reqNo, startTaskResp); - CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "sendSweeperStartTaskResp:" + printMessage(startTaskResp) + " reqNo:" + reqNo+" messageType:"+ SweeperCloudTask.MessageType.CloudPushTask.getNumber()); + CallerLogger.INSTANCE.d(M_SWEEPER + TAG, + "sendSweeperStartTaskResp:" + printMessage(startTaskResp) + " reqNo:" + reqNo + " messageType:" + SweeperCloudTask.MessageType.CloudPushTask.getNumber()); } /** @@ -492,7 +499,8 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM builder.setCode(code); SweeperTaskConfirm.TaskConfirmResp taskConfirmResp = builder.build(); String reqNo = msgTypeAndReqNo.get(SweeperCloudTask.MessageType.CloudPushTaskConfirm.getNumber()); - CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "sendSweeperTaskConfirmResp" + printMessage(taskConfirmResp) + " reqNo:" + reqNo+" messageType:"+ SweeperCloudTask.MessageType.CloudPushTaskConfirm.getNumber()); + CallerLogger.INSTANCE.d(M_SWEEPER + TAG, + "sendSweeperTaskConfirmResp" + printMessage(taskConfirmResp) + " reqNo:" + reqNo + " messageType:" + SweeperCloudTask.MessageType.CloudPushTaskConfirm.getNumber()); getAutoPilotControlManager().sendSweeperTaskConfirmResp(reqNo, taskConfirmResp); } @@ -509,7 +517,8 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM builder.setCode(code); SweeperTaskStop.StopTaskResp stopTaskResp = builder.build(); String reqNo = msgTypeAndReqNo.get(SweeperCloudTask.MessageType.CloudPushTaskStop.getNumber()); - CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "sendSweeperStopTaskResp" + printMessage(stopTaskResp) + " reqNo:" + reqNo+" messageType:"+ SweeperCloudTask.MessageType.CloudPushTaskStop.getNumber()); + CallerLogger.INSTANCE.d(M_SWEEPER + TAG, + "sendSweeperStopTaskResp" + printMessage(stopTaskResp) + " reqNo:" + reqNo + " messageType:" + SweeperCloudTask.MessageType.CloudPushTaskStop.getNumber()); getAutoPilotControlManager().sendSweeperStopTaskResp(reqNo, stopTaskResp); } @@ -528,10 +537,11 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM builder.setLineId(lineId); SweeperBootable.IsBootable isBootable = builder.build(); String reqNo = SweeperCloudTaskUtils.getRequestId(); - CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "sendSweeperAutopilotBootable" + printMessage(isBootable) + " reqNo:" + reqNo+" messageType:"+ SweeperCloudTask.MessageType.PadSendBootable.getNumber()); + CallerLogger.INSTANCE.d(M_SWEEPER + TAG, + "sendSweeperAutopilotBootable" + printMessage(isBootable) + " reqNo:" + reqNo + " messageType:" + SweeperCloudTask.MessageType.PadSendBootable.getNumber()); getAutoPilotControlManager().sendSweeperAutopilotBootable(reqNo, isBootable); // TODO: 2023/5/16 - SweeperCloudTaskUtils.mockSendCloudBootable(); + //SweeperCloudTaskUtils.mockSendCloudBootable(); } public CallerAutoPilotControlManager getAutoPilotControlManager() { @@ -544,8 +554,11 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM @Override public void onAutopilotStatusResponse(@NonNull AutopilotStatusInfo autoPilotStatusInfo) { - CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "onAutopilotStatusResponse state:" + autoPilotStatusInfo.getState()); + //CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "onAutopilotStatusResponse state:" + autoPilotStatusInfo.getState()); this.mAutopilotState = autoPilotStatusInfo.getState(); + if (mControllerStatusCallback!=null){ + mControllerStatusCallback.onAutopilotState(autoPilotStatusInfo.getState()); + } switch (autoPilotStatusInfo.getState()) { case IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE://不可自动驾驶 break; @@ -577,6 +590,11 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM @Override public void onAutopilotIpcConnectStatusChanged(int status, @Nullable String reason) { + if (status == 0x00){//判断工控机重连后,获取当前正在执行的子任务,延时10秒,防止工控机连接上时SN为空 + UiThreadHandler.postDelayed(()->{ + getCurrentTask(); + },10000); + } //CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "onAutopilotIpcConnectStatusChanged status:" + status + " reason:" + reason); } diff --git a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/presenter/SweeperPresenter.java b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/presenter/SweeperPresenter.java index b059615e1d..370595df17 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/presenter/SweeperPresenter.java +++ b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/presenter/SweeperPresenter.java @@ -83,6 +83,11 @@ public class SweeperPresenter extends Presenter } } + @Override + public void onAutopilotState(int state) { + ThreadUtils.runOnUiThread(() ->mView.setAutoState(state)); + } + /** * 获取自动驾驶状态 * @return @@ -90,12 +95,6 @@ public class SweeperPresenter extends Presenter public int getAutopilotState() { return SweeperTaskModel.getInstance().getAutopilotState(); } - - @Override - public void startOpenAutopilot() { - - } - /** * 清除路线缓存数据 */ diff --git a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/ui/dialog/SweeperCloudLoadingDialog.kt b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/ui/dialog/SweeperCloudLoadingDialog.kt index f333e53dc8..3321382705 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/ui/dialog/SweeperCloudLoadingDialog.kt +++ b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/ui/dialog/SweeperCloudLoadingDialog.kt @@ -33,7 +33,7 @@ class SweeperCloudLoadingDialog : BaseFloatDialog, LifecycleObserver { * 开始旋转 */ private fun startRotation() { - objectAnimator = ObjectAnimator.ofFloat(mLoadingView, "rotation", 0f, 720f) + objectAnimator = ObjectAnimator.ofFloat(mLoadingView, "rotation", -720f, 0f) objectAnimator?.let { it.duration = 3000 it.repeatCount = -1 diff --git a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/util/SweeperCloudTaskUtils.kt b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/util/SweeperCloudTaskUtils.kt index 0dfbc0ac38..a1895fc2ee 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/util/SweeperCloudTaskUtils.kt +++ b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/util/SweeperCloudTaskUtils.kt @@ -30,9 +30,10 @@ object SweeperCloudTaskUtils { */ @JvmStatic fun mockQueryCurrentTaskInfo() { - UiThreadHandler.getsUiHandler().postDelayed({ - mockSendCloudTaskInfo(MessageType.PadSendGetTaskReq) - },1000) +// UiThreadHandler.getsUiHandler().postDelayed({ +// mockSendCloudTaskInfo(MessageType.PadSendGetTaskReq) +// },1000) + SweeperTaskModel.getInstance().getCurrentTask() } /** @@ -202,7 +203,7 @@ object SweeperCloudTaskUtils { val builder = SweeperBigTaskStatus.BigTaskStatusPush.newBuilder() builder.sn = getDriverSn() builder.taskId = "10" - builder.taskStatus = BigTaskStatus.RUNNING + builder.taskStatus = BigTaskStatus.FINISHED builder.systemTime = System.currentTimeMillis() SweeperTaskModel.getInstance().onSweeperFutianCloudBigTaskStatus( MessageType.CloudPushBigTaskStatus, "${System.currentTimeMillis()}", diff --git a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SweeperTrafficDataView.kt b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SweeperTrafficDataView.kt index b8885f7231..6ee2639db7 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SweeperTrafficDataView.kt +++ b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SweeperTrafficDataView.kt @@ -12,10 +12,7 @@ import chassis.Chassis.LightSwitch import chassis.ChassisStatesOuterClass.BMSSystemStates import chassis.ChassisStatesOuterClass.SweeperFuTianTaskSystemStates import com.elegant.utils.UiThreadHandler -import com.mogo.eagle.core.function.api.autopilot.IMoGoBatteryManagementSystemListener -import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisGearStateListener -import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLamplightListener -import com.mogo.eagle.core.function.api.autopilot.IMoGoSweeperFutianCleanSystemListener +import com.mogo.eagle.core.function.api.autopilot.* import com.mogo.eagle.core.function.call.autopilot.* import com.mogo.eagle.core.function.hmi.ui.widget.TapPositionView import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d @@ -32,16 +29,15 @@ class SweeperTrafficDataView : ConstraintLayout, IMoGoBatteryManagementSystemListener, IMoGoChassisLamplightListener, IMoGoChassisGearStateListener, - IMoGoSweeperFutianCleanSystemListener -{ + IMoGoSweeperFutianCleanSystemListener { private var tapPositionView //方向盘下方的档位 : TapPositionView? = null private var speedImage //速度图标 : ImageView? = null private var speedTextView //速度值 : TextView? = null - private var sweeperTurnSignal //转向灯 - : TurnSignalView? = null + private var sweeperAutoState //自动驾驶状态 + : TextView? = null private var tvBattery //电量百分比展示 : TextView? = null private var ivBgWaterWarning //水位预警背景图 @@ -72,7 +68,7 @@ class SweeperTrafficDataView : ConstraintLayout, tapPositionView = findViewById(R.id.sweeperTrafficPosition) speedImage = findViewById(R.id.sweeperSpeedImage) speedTextView = findViewById(R.id.sweeperSpeedText) - sweeperTurnSignal = findViewById(R.id.sweeperTurnSignal) + sweeperAutoState = findViewById(R.id.sweeperAutoState) tvBattery = findViewById(R.id.tvBattery) ivBgWaterWarning = findViewById(R.id.sweeperIvBgWaterWarning) ivWater = findViewById(R.id.sweeperIvWater) @@ -92,7 +88,7 @@ class SweeperTrafficDataView : ConstraintLayout, override fun onDetachedFromWindow() { super.onDetachedFromWindow() - CallerBatteryManagementSystemListenerManager.removeListener(TAG ) + CallerBatteryManagementSystemListenerManager.removeListener(TAG) CallerChassisLamplightListenerManager.removeListener(TAG) CallerChassisGearStateListenerManager.removeListener(TAG) CallerSweeperFutianCleanSystemListenerManager.removeListener(TAG) @@ -101,7 +97,7 @@ class SweeperTrafficDataView : ConstraintLayout, override fun onSweeperFutianTaskIndexData(roboSweeperTaskIndex: RoboSweeperTaskIndexOuterClass.RoboSweeperTaskIndex) {} override fun onSweeperFutianCleanSystemState(cleanSystemState: SweeperFuTianTaskSystemStates) { val current = System.currentTimeMillis() - if (current - mCurrentTimeWaterMillis <=VEHICLE_STATE_INTERVAL_MILLIS) { + if (current - mCurrentTimeWaterMillis <= VEHICLE_STATE_INTERVAL_MILLIS) { return } mCurrentTimeWaterMillis = current @@ -121,23 +117,49 @@ class SweeperTrafficDataView : ConstraintLayout, @SuppressLint("SetTextI18n") override fun onBatteryManagementSystemStates(states: BMSSystemStates) { val current = System.currentTimeMillis() - if (current - mCurrentTimeBatteryMillis <=VEHICLE_STATE_INTERVAL_MILLIS) { + if (current - mCurrentTimeBatteryMillis <= VEHICLE_STATE_INTERVAL_MILLIS) { return } mCurrentTimeBatteryMillis = current d(SceneConstant.M_SWEEPER + TAG, "电量:${states.bmsSoc}") - UiThreadHandler.post{ + UiThreadHandler.post { tvBattery?.text = "${states.bmsSoc.roundToInt()}%" } } + /** * 车辆转向灯 * @param directionLight */ override fun onAutopilotLightSwitchData(lightSwitch: LightSwitch?) { //转向灯状态 0是正常 1是左转 2是右转 - if (lightSwitch != null) { - sweeperTurnSignal?.setTurnLight(lightSwitch) + } + + /** + * 设置自动驾驶状态 + */ + fun setAutoState(state: Int) { + when (state) { + //不可自动驾驶 + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> { + sweeperAutoState?.text="自动驾驶" + sweeperAutoState?.setBackgroundResource(R.drawable.icon_not_auto) + } + //人工驾驶 + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> { + sweeperAutoState?.text="人工驾驶" + sweeperAutoState?.setBackgroundResource(R.drawable.icon_auto) + } + //自动驾驶中 + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> { + sweeperAutoState?.text="自动驾驶" + sweeperAutoState?.setBackgroundResource(R.drawable.icon_auto) + } + //平行驾驶 + IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> { + sweeperAutoState?.text="平行驾驶" + sweeperAutoState?.setBackgroundResource(R.drawable.icon_auto) + } } } @@ -148,6 +170,7 @@ class SweeperTrafficDataView : ConstraintLayout, override fun onAutopilotBrakeLightData(brakeLight: Boolean) { d(TAG, "刹车灯:$brakeLight") } + /** * 方向盘下方的档位 * @param gear @@ -158,9 +181,11 @@ class SweeperTrafficDataView : ConstraintLayout, tapPositionView?.updateWithGear(gear) } } - fun getSpeedImage():ImageView?{ - return speedImage + + fun getSpeedImage(): ImageView? { + return speedImage } + /** * 速度设置 */ diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/icon_auto.png b/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/icon_auto.png new file mode 100755 index 0000000000..b76ce3dd2b Binary files /dev/null and b/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/icon_auto.png differ diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/icon_not_auto.png b/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/icon_not_auto.png new file mode 100755 index 0000000000..3cb8679a55 Binary files /dev/null and b/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/icon_not_auto.png differ diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/sweeper_cloud_rotation_background.png b/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/sweeper_cloud_rotation_background.png new file mode 100755 index 0000000000..8d3650e9ba Binary files /dev/null and b/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/sweeper_cloud_rotation_background.png differ diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/drawable/bg_shape_dialog_cloud_view.xml b/OCH/sweeper/sweeper-cloud/src/main/res/drawable/bg_shape_dialog_cloud_view.xml index ff26c61d57..a0f105b0ac 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/res/drawable/bg_shape_dialog_cloud_view.xml +++ b/OCH/sweeper/sweeper-cloud/src/main/res/drawable/bg_shape_dialog_cloud_view.xml @@ -1,5 +1,4 @@ - \ No newline at end of file diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/drawable/shape_sweeper_cloud_rotation.xml b/OCH/sweeper/sweeper-cloud/src/main/res/drawable/shape_sweeper_cloud_rotation.xml deleted file mode 100644 index e5d5e1fd4d..0000000000 --- a/OCH/sweeper/sweeper-cloud/src/main/res/drawable/shape_sweeper_cloud_rotation.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/drawable/sweeper_cloud_rotation_layer.xml b/OCH/sweeper/sweeper-cloud/src/main/res/drawable/sweeper_cloud_rotation_layer.xml new file mode 100644 index 0000000000..b4793b37ad --- /dev/null +++ b/OCH/sweeper/sweeper-cloud/src/main/res/drawable/sweeper_cloud_rotation_layer.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/layout/dialog_sweeper_cloud_view.xml b/OCH/sweeper/sweeper-cloud/src/main/res/layout/dialog_sweeper_cloud_view.xml index 424034563e..1f8c7ed1b2 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/res/layout/dialog_sweeper_cloud_view.xml +++ b/OCH/sweeper/sweeper-cloud/src/main/res/layout/dialog_sweeper_cloud_view.xml @@ -12,18 +12,20 @@ app:shadow_position="outer" app:xOffset="0dp" app:yOffset="0dp"> - + android:background="@drawable/bg_shape_dialog_cloud_view" + app:roundLayoutRadius="@dimen/dp_45" + > @@ -67,8 +69,8 @@ android:id="@+id/sweeper_cloud_content" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/dp_30" - android:layout_marginEnd="@dimen/dp_30" + android:layout_marginStart="@dimen/dp_60" + android:layout_marginEnd="@dimen/dp_60" android:gravity="center" android:textColor="#FFFFFFFF" android:textSize="@dimen/dp_50" @@ -78,9 +80,9 @@ android:id="@+id/sweeper_cloud_tip" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/dp_30" + android:layout_marginStart="@dimen/dp_60" android:layout_marginTop="@dimen/dp_10" - android:layout_marginEnd="@dimen/dp_30" + android:layout_marginEnd="@dimen/dp_60" android:gravity="center" android:textColor="#A6CEFF" android:textSize="@dimen/dp_40" @@ -129,5 +131,5 @@ android:textSize="@dimen/dp_50" tools:text="拒绝" /> - + \ No newline at end of file diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/layout/sweeper_traffic_data.xml b/OCH/sweeper/sweeper-cloud/src/main/res/layout/sweeper_traffic_data.xml index b6ae34a471..17e9645c22 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/res/layout/sweeper_traffic_data.xml +++ b/OCH/sweeper/sweeper-cloud/src/main/res/layout/sweeper_traffic_data.xml @@ -68,21 +68,27 @@ app:layout_constraintBottom_toBottomOf="@+id/sweeperTrafficPosition" android:layout_marginStart="@dimen/dp_34" /> - + android:layout_marginTop="@dimen/dp_20" + android:gravity="center" + android:textColor="@color/white" + android:textSize="@dimen/dp_28" + android:text="自动驾驶" + android:background="@drawable/icon_not_auto" + android:layout_marginStart="@dimen/dp_20"/> sweeper_task_confirm.proto @@ -56,6 +62,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { taskConfirm = SweeperTaskConfirm.TaskConfirm.parseFrom(payload); } + Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (taskConfirm == null ? "null" : + TextFormat.printer().escapingNonAscii(false).printToString(taskConfirm))); adasListener.onSweeperFutianCloudTaskConfirm(header, msgType, reqNo, sysTime, taskConfirm); } else if (msgType == SweeperCloudTask.MessageType.CloudPushTaskStatus) { //3、云端下发任务状态到pad(type:100003)-> sweeper_task_status.proto @@ -63,6 +71,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { taskStatusPush = SweeperTaskStatus.TaskStatusPush.parseFrom(payload); } + Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (taskStatusPush == null ? "null" : + TextFormat.printer().escapingNonAscii(false).printToString(taskStatusPush))); adasListener.onSweeperFutianCloudTaskStatus(header, msgType, reqNo, sysTime, taskStatusPush); } else if (msgType == SweeperCloudTask.MessageType.CloudPushTaskStop) { //4、云端请求pad结束任务(type:100004)-> sweeper_task_stop.proto @@ -70,6 +80,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { stopTaskReq = SweeperTaskStop.StopTaskReq.parseFrom(payload); } + Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (stopTaskReq == null ? "null" : + TextFormat.printer().escapingNonAscii(false).printToString(stopTaskReq))); adasListener.onSweeperFutianCloudTaskStop(header, msgType, reqNo, sysTime, stopTaskReq); } else if (msgType == SweeperCloudTask.MessageType.PadSendTaskSuspend || msgType == SweeperCloudTask.MessageType.PadSendTaskResume) { //5、pad请求挂起任务(type:100005)-> sweeper_task_suspend_resume.proto @@ -78,6 +90,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { suspendResumeTaskResp = SweeperTaskSuspendResume.SuspendResumeTaskResp.parseFrom(payload); } + Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (suspendResumeTaskResp == null ? "null" : + TextFormat.printer().escapingNonAscii(false).printToString(suspendResumeTaskResp))); adasListener.onSweeperFutianCloudTaskSuspendResume(header, msgType, reqNo, sysTime, suspendResumeTaskResp); } else if (msgType == SweeperCloudTask.MessageType.PadSendBootable) { //8、接管后回自驾-pad上报状态给云端 云端下发启动自驾(type: 100008)-> sweeper_autopilot.proto @@ -85,6 +99,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { isBootableResp = SweeperBootable.IsBootableResp.parseFrom(payload); } + Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (isBootableResp == null ? "null" : + TextFormat.printer().escapingNonAscii(false).printToString(isBootableResp))); adasListener.onSweeperFutianCloudBootable(header, msgType, reqNo, sysTime, isBootableResp); } else if (msgType == SweeperCloudTask.MessageType.CloudPushBigTaskStatus) { //9、云端下发pad大任务状态(type: 100009)-> sweeper_big_task_status.proto @@ -92,9 +108,12 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { bigTaskStatusPush = SweeperBigTaskStatus.BigTaskStatusPush.parseFrom(payload); } + Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (bigTaskStatusPush == null ? "null" : + TextFormat.printer().escapingNonAscii(false).printToString(bigTaskStatusPush))); adasListener.onSweeperFutianCloudBigTaskStatus(header, msgType, reqNo, sysTime, bigTaskStatusPush); } else { //未知数据类型 + Log.i("SweeperCloudTaskMessage", " 错误数据=" + ByteUtil.byteArrToHex(bytes)); adasListener.onSweeperFutianCloudTaskUnknown(header, bytes); } }