From 6ac65d7d54df6b2299b0c3e86f467cca585ad98b Mon Sep 17 00:00:00 2001 From: renwj Date: Tue, 26 Nov 2024 19:09:57 +0800 Subject: [PATCH] =?UTF-8?q?[6.8.0][=E9=A9=BE=E9=A9=B6=E4=BD=8D=E8=A7=86?= =?UTF-8?q?=E9=A2=91=E6=B5=81]=20=E4=BF=AE=E6=AD=A3=E8=BD=A6=E7=89=8C?= =?UTF-8?q?=E5=8F=B7=E8=8E=B7=E5=8F=96=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../video/DriveSeatVideoProviderImpl.kt | 6 +++-- .../hmi/ui/operate/OperatePanelLayout.kt | 22 ++++++++++++++++++- .../datacenter/CallerDataCenterBizListener.kt | 4 ++++ 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/driver/video/DriveSeatVideoProviderImpl.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/driver/video/DriveSeatVideoProviderImpl.kt index 615fcdc64b..5acb76fdbc 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/driver/video/DriveSeatVideoProviderImpl.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/driver/video/DriveSeatVideoProviderImpl.kt @@ -14,6 +14,7 @@ import com.mogo.eagle.core.function.api.driver.video.IDriveSeatVideoProvider.Eve import com.mogo.eagle.core.function.api.driver.video.IDriveSeatVideoProvider.Event.Failed import com.mogo.eagle.core.function.api.driver.video.IDriveSeatVideoProvider.Event.Loading import com.mogo.eagle.core.function.api.driver.video.IDriveSeatVideoProvider.Event.Playing +import com.mogo.eagle.core.function.call.datacenter.CallerDataCenterBizListener import com.mogo.eagle.core.network.MoGoRetrofitFactory import com.mogo.eagle.core.utilcode.util.AppStateManager import com.tencent.liteav.basic.log.TXCLog @@ -58,8 +59,9 @@ class DriveSeatVideoProviderImpl: IDriveSeatVideoProvider { override suspend fun requestVideoInfo(): VideoUrlData? { - val plateNumber = AppConfigInfo.plateNumber - if (TextUtils.isEmpty(plateNumber)) { + val plateNumber = CallerDataCenterBizListener.getPlateNumber() +// val plateNumber = "京A40188D" + if (plateNumber == null || TextUtils.isEmpty(plateNumber)) { Log.e(TAG, "-- isVideoLiveUsable -- plate number is empty.") return null } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/OperatePanelLayout.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/OperatePanelLayout.kt index 64c92eb7d6..15f15629b2 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/OperatePanelLayout.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/OperatePanelLayout.kt @@ -4,6 +4,7 @@ import android.content.Context import android.os.Bundle import android.util.AttributeSet import android.util.Log +import android.view.Gravity import android.view.LayoutInflater import android.view.View import android.view.ViewGroup @@ -54,6 +55,7 @@ import com.mogo.eagle.core.function.hmi.ui.operate.preferences.PreferenceWithWel import com.mogo.eagle.core.function.hmi.ui.tools.SweeperModeChangedConfirmDialog import com.mogo.eagle.core.function.hmi.ui.utils.HmiActionLog.Companion.hmiAction import com.mogo.eagle.core.function.hmi.ui.utils.SOPAnalyticsManager.clickEventAnalytics +import com.mogo.eagle.core.utilcode.floating.MoGoPopWindow import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger @@ -898,8 +900,14 @@ class OperatePanelLayout : LinearLayout { clickEventAnalytics("视频流驾驶位开关", isChecked) val map = HashMap() map["open"] = if (isChecked) "1" else "0" - map["playUrl"] = CallerDevaToolsManager.driveSeatVideoProvider()?.getLastData()?.livePlayUrl ?: "" + val playUrl = CallerDevaToolsManager.driveSeatVideoProvider()?.getLastData()?.livePlayUrl ?: "" + map["playUrl"] = playUrl CallerTelematicManager.sendMsgToAllClients(TelematicConstant.DRIVE_SEAT_VIDEO_STREAM_REQ, toJson(map).toByteArray()) + CallerDevaToolsManager.driveSeatVideoProvider()?.getDriveVideoView(playUrl) { event -> + Log.d(TAG, "event -> $event") + }?.also { + showVideoView(it) + } return false } } @@ -909,6 +917,18 @@ class OperatePanelLayout : LinearLayout { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { setPreferencesFromResource(R.xml.operate_panel_preference_details_business, rootKey) } + + private fun showVideoView(target: View) { + val activity = AppStateManager.currentActivity() ?: return + MoGoPopWindow.Builder() + .attachToActivity(activity) + .contentView(target) + .draggable(false) + .width(AutoSizeUtils.dp2px(activity, 640.0f)) + .height(AutoSizeUtils.dp2px(activity, 480.0f)) + .gravityInActivity(Gravity.CENTER) + .build().show() + } } class MoFangPreferenceFragmentCompat : OperatePanelDetailBase(), IMoGoMoFangProvider.OnMoFangStatusListener { diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/datacenter/CallerDataCenterBizListener.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/datacenter/CallerDataCenterBizListener.kt index a2c1e78652..e32ebbfd83 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/datacenter/CallerDataCenterBizListener.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/datacenter/CallerDataCenterBizListener.kt @@ -116,4 +116,8 @@ object CallerDataCenterBizListener : CallerBase() { fun getCarModel(): Carmodel? { return carModel } + + fun getPlateNumber(): String? { + return no + } } \ No newline at end of file