diff --git a/config.gradle b/config.gradle index cb1025f38a..0d35061592 100644 --- a/config.gradle +++ b/config.gradle @@ -131,7 +131,6 @@ ext { mogocustommapoperational : "com.zhidaoauto.map:operational:${MAP_SDK_OPERATION_VERSION}", modulemap : "com.mogo.module:module-map:${MOGO_MODULE_MAP_VERSION}", - mogoserviceapi : "com.mogo.service:mogo-service-api:${MOGO_SERVICE_API_VERSION}", chat : "com.mogo.module.carchatim:module-chat:${MOGO_MODULE_CHAT_VERSION}", callchat : "com.mogo.module.carchatim:module-carchatting:${MOGO_MODULE_CARCHATTING_VERSION}", callchatprovider : "com.mogo.module.carchatim:module-carchatting-provider:${MOGO_MODULE_CARCHATTINGPROVIDER_VERSION}", @@ -178,8 +177,7 @@ ext { //========================= 新架构的 Maven 版本管理 ========================= mogo_core_function_autopilot : "com.mogo.eagle.core.function.impl:autopilot:${MOGO_CORE_FUNCTION_AUTOPILOT_VERSION}", - mogo_core_function_check : "com.mogo.eagle.core.function.impl:check:${MOGO_CORE_FUNCTION_CHECK_VERSION}", - mogo_core_function_devatools : "com.mogo.eagle.core.function.impl:devatools:${MOGO_CORE_FUNCTION_CHECK_VERSION}", + mogo_core_function_devatools : "com.mogo.eagle.core.function.impl:devatools:${MOGO_CORE_FUNCTION_DEVATOOLS_VERSION}", mogo_core_function_hmi : "com.mogo.eagle.core.function.impl:hmi:${MOGO_CORE_FUNCTION_HMI_VERSION}", mogo_core_function_map : "com.mogo.eagle.core.function.impl:map:${MOGO_CORE_FUNCTION_MAP_VERSION}", mogo_core_function_main : "com.mogo.eagle.core.function.impl:main:${MOGO_CORE_FUNCTION_MAIN_VERSION}", diff --git a/core/function-impl/mogo-core-function-carcorder/.gitignore b/core/function-impl/mogo-core-function-carcorder/.gitignore deleted file mode 100644 index 42afabfd2a..0000000000 --- a/core/function-impl/mogo-core-function-carcorder/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-carcorder/build.gradle b/core/function-impl/mogo-core-function-carcorder/build.gradle deleted file mode 100644 index 4bc442ab10..0000000000 --- a/core/function-impl/mogo-core-function-carcorder/build.gradle +++ /dev/null @@ -1,65 +0,0 @@ -plugins { - id 'com.android.library' - id 'kotlin-android' - id 'kotlin-android-extensions' - id 'kotlin-kapt' - id 'com.alibaba.arouter' -} - -android { - compileSdkVersion rootProject.ext.android.compileSdkVersion - // buildToolsVersion rootProject.ext.android.buildToolsVersion - defaultConfig { - minSdkVersion rootProject.ext.android.minSdkVersion - targetSdkVersion rootProject.ext.android.targetSdkVersion - versionCode Integer.valueOf(VERSION_CODE) - versionName getValueFromRootProperties("${project.name.replace("-", "_").toUpperCase()}_VERSION") - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles 'consumer-rules.pro' - - //ARouter apt 参数 - kapt { - useBuildCache = false - arguments { - arg("AROUTER_MODULE_NAME", project.getName()) - } - } - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - -} - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation rootProject.ext.dependencies.kotlinstdlibjdk7 - implementation rootProject.ext.dependencies.coroutinescore - implementation rootProject.ext.dependencies.arouter - kapt rootProject.ext.dependencies.aroutercompiler - - if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { - implementation project(':libraries:map-usbcamera') - - implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_function_call - implementation rootProject.ext.dependencies.mogo_core_data - }else { - implementation project(':libraries:map-usbcamera') - implementation project(':core:mogo-core-utils') - implementation project(':core:mogo-core-function-call') - implementation project(':core:mogo-core-data') - } -} - -apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString() \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-carcorder/gradle.properties b/core/function-impl/mogo-core-function-carcorder/gradle.properties deleted file mode 100644 index ba1462e8ad..0000000000 --- a/core/function-impl/mogo-core-function-carcorder/gradle.properties +++ /dev/null @@ -1,3 +0,0 @@ -GROUP=com.mogo.eagle.core.function.impl -POM_ARTIFACT_ID=carcorder -VERSION_CODE=1 diff --git a/core/function-impl/mogo-core-function-carcorder/proguard-rules.pro b/core/function-impl/mogo-core-function-carcorder/proguard-rules.pro deleted file mode 100644 index 481bb43481..0000000000 --- a/core/function-impl/mogo-core-function-carcorder/proguard-rules.pro +++ /dev/null @@ -1,21 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-carcorder/src/main/AndroidManifest.xml b/core/function-impl/mogo-core-function-carcorder/src/main/AndroidManifest.xml deleted file mode 100644 index 6c1ea8112e..0000000000 --- a/core/function-impl/mogo-core-function-carcorder/src/main/AndroidManifest.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-carcorder/src/main/java/com/mogo/eagle/core/function/carcorder/service/CarcorderService.kt b/core/function-impl/mogo-core-function-carcorder/src/main/java/com/mogo/eagle/core/function/carcorder/service/CarcorderService.kt deleted file mode 100644 index e34f590acf..0000000000 --- a/core/function-impl/mogo-core-function-carcorder/src/main/java/com/mogo/eagle/core/function/carcorder/service/CarcorderService.kt +++ /dev/null @@ -1,162 +0,0 @@ -package com.mogo.eagle.core.function.carcorder.service - -import android.content.Intent -import android.hardware.usb.UsbDevice -import android.os.IBinder -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_CORDER -import com.mogo.usbcamera.UVCCameraHelper -import com.serenegiant.usb.IFrameCallback -import com.serenegiant.usb.USBMonitor -import com.serenegiant.usb.USBMonitor.OnDeviceConnectListener -import com.serenegiant.usb.USBMonitor.UsbControlBlock -import com.serenegiant.usb.UVCCamera -import com.serenegiant.usb.common.BaseService -import com.serenegiant.usb.encoder.MediaVideoBufferEncoder - -/** - * 行车记录仪服务 - * @author donghongyu - */ -class CarcorderService : BaseService() { - private val DEBUG = true - val TAG = CarcorderService::class.java.name - - // 挂载的USB设备集合 - private var mDeviceList: List? = null - - // USB 设备连接工具 - private var mUSBMonitor: USBMonitor? = null - - // 用于接入UVC摄像机 - private var mUVCCamera: UVCCamera? = null - - // 相机控制 - private var mCtrlBlock: UsbControlBlock? = null - - /** - * 配置相机基本按书 - */ - private val previewWidth = 640 - private val previewHeight = 480 - - // Default using MJPEG - // if your device is connected,but have no images - // please try to change it to FRAME_FORMAT_YUYV - val FRAME_FORMAT_MJPEG: Int = UVCCamera.FRAME_FORMAT_MJPEG - val MODE_BRIGHTNESS = UVCCamera.PU_BRIGHTNESS - val MODE_CONTRAST = UVCCamera.PU_CONTRAST - private val mFrameFormat = UVCCameraHelper.FRAME_FORMAT_MJPEG - - override fun onCreate() { - super.onCreate() - if (DEBUG) { - CallerLogger.d("$M_CORDER$TAG", "onCreate……") - } - if (mUSBMonitor == null) { - mUSBMonitor = USBMonitor(applicationContext, mOnDeviceConnectListener) - mUSBMonitor!!.register() - mDeviceList = mUSBMonitor!!.deviceList - } - - } - - override fun onDestroy() { - super.onDestroy() - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "onDestroy:") - if (mUSBMonitor != null) { - mUSBMonitor!!.unregister() - mUSBMonitor = null - } - } - - override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int { - return super.onStartCommand(intent, flags, startId) - } - - - override fun onBind(intent: Intent): IBinder? { - return null - } - - override fun onRebind(intent: Intent) { - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "onRebind:$intent") - } - - - override fun onUnbind(intent: Intent): Boolean { - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "onUnbind:$intent") - - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "onUnbind:finished") - return true - } - - //********************************************************************************************************************************** - private val mSync: Any = Any() - - private val mVideoEncoder: MediaVideoBufferEncoder? = null - - - /** - * USB 设备连接监听 - */ - private val mOnDeviceConnectListener: OnDeviceConnectListener = object : OnDeviceConnectListener { - override fun onAttach(device: UsbDevice) { - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "OnDeviceConnectListener#onAttach:${device.deviceName}---mDeviceList:${mDeviceList?.size}") - mUSBMonitor!!.requestPermission(device) - } - - override fun onConnect(device: UsbDevice, ctrlBlock: UsbControlBlock, createNew: Boolean) { - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "OnDeviceConnectListener#onConnect:${device.deviceName}") - openCamera(device, ctrlBlock, createNew) - } - - override fun onDisconnect(device: UsbDevice, ctrlBlock: UsbControlBlock) { - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "OnDeviceConnectListener#onDisconnect:${device.deviceName}") - } - - override fun onDettach(device: UsbDevice) { - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "OnDeviceConnectListener#onDettach:${device.deviceName}") - } - - override fun onCancel(device: UsbDevice) { - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "OnDeviceConnectListener#onCancel:${device.deviceName}") - } - } - - /** - * 连接相机 - */ - private fun openCamera(device: UsbDevice, ctrlBlock: UsbControlBlock, createNew: Boolean) { - if (mUVCCamera == null) { - mUVCCamera = UVCCamera() - mUVCCamera!!.open(ctrlBlock) - mUVCCamera!!.setStatusCallback { statusClass, event, selector, statusAttribute, data -> - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "IStatusCallback#onStatus(statusClass=${statusClass},event=${event},selector=${selector},statusAttribute=${statusAttribute},data=${data})") - } - - try { - mUVCCamera!!.setPreviewSize(UVCCamera.DEFAULT_PREVIEW_WIDTH, UVCCamera.DEFAULT_PREVIEW_HEIGHT, UVCCamera.FRAME_FORMAT_MJPEG) - } catch (e: Exception) { - e.printStackTrace() - try { - mUVCCamera!!.setPreviewSize(UVCCamera.DEFAULT_PREVIEW_WIDTH, UVCCamera.DEFAULT_PREVIEW_HEIGHT, UVCCamera.DEFAULT_PREVIEW_MODE) - } catch (e: Exception) { - e.printStackTrace() - mUVCCamera!!.destroy() - } - } - - mUVCCamera!!.setFrameCallback(mIFrameCallback, UVCCamera.PIXEL_FORMAT_YUV420SP) - mUVCCamera!!.startPreview() - } - } - - /** - * 视频帧回掉 - */ - private val mIFrameCallback = IFrameCallback { frame -> - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "IFrameCallback#onFrame:${frame}") - } - -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-carcorder/src/main/java/com/mogo/eagle/core/function/carcorder/service/LivePushService.kt b/core/function-impl/mogo-core-function-carcorder/src/main/java/com/mogo/eagle/core/function/carcorder/service/LivePushService.kt deleted file mode 100644 index f16acc8c4a..0000000000 --- a/core/function-impl/mogo-core-function-carcorder/src/main/java/com/mogo/eagle/core/function/carcorder/service/LivePushService.kt +++ /dev/null @@ -1,53 +0,0 @@ -package com.mogo.eagle.core.function.carcorder.service - -import android.content.Intent -import android.os.IBinder -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_CORDER -import com.serenegiant.usb.common.BaseService - -/** - * 行车记录仪服务 - * @author donghongyu - */ -class LivePushService : BaseService() { - private val DEBUG = true - val TAG = LivePushService::class.java.name - - override fun onCreate() { - super.onCreate() - if (DEBUG) { - CallerLogger.d("$M_CORDER$TAG", "onCreate……") - } - - } - - override fun onDestroy() { - super.onDestroy() - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "onDestroy:") - - } - - override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int { - return super.onStartCommand(intent, flags, startId) - } - - - override fun onBind(intent: Intent): IBinder? { - return null - } - - override fun onRebind(intent: Intent) { - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "onRebind:$intent") - } - - - override fun onUnbind(intent: Intent): Boolean { - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "onUnbind:$intent") - - if (DEBUG) CallerLogger.d("$M_CORDER$TAG", "onUnbind:finished") - return true - } - - -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/.gitignore b/core/function-impl/mogo-core-function-check/.gitignore deleted file mode 100644 index 42afabfd2a..0000000000 --- a/core/function-impl/mogo-core-function-check/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/README.md b/core/function-impl/mogo-core-function-check/README.md deleted file mode 100644 index 4db7fee32b..0000000000 --- a/core/function-impl/mogo-core-function-check/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# 状态检测模块 -硬件检测范围 - 主激光雷达 - 侧激光雷达-2个 - ADAS长焦摄像头-前 - ADAS广角摄像头-前 - ADAS标准摄像头-前 - ADAS广角摄像头-后 - RTK设备 - OUB设备 - PAD - 路由器 - -自动驾驶软件检测范围 节点 - 车控节点 - 轨迹地图加载节点 - 轨迹规划节点 - 定位转化节点 - 融合节点 - yolov5节点(包含红绿灯检测) - 激光雷达渲染节点 - 摄像头驱动节点 - gnss定位驱动节点 - 中激光驱动节点 - 左激光解码节点 - 左激光驱动节点 - 右激光解码节点 - 右激光驱动节点 - 监控节点 - 通讯交互节点 - 轨迹录制节点 - can车辆控制节点 - 鹰眼 - -版本更新 - 自动驾驶版本 - 鹰眼版本 - -功能隐藏 不用适配 \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/build.gradle b/core/function-impl/mogo-core-function-check/build.gradle deleted file mode 100644 index 85c6be0074..0000000000 --- a/core/function-impl/mogo-core-function-check/build.gradle +++ /dev/null @@ -1,74 +0,0 @@ -plugins { - id 'com.android.library' - id 'kotlin-android' - id 'kotlin-android-extensions' - id 'kotlin-kapt' - id 'com.alibaba.arouter' -} -android { - compileSdkVersion rootProject.ext.android.compileSdkVersion - defaultConfig { - minSdkVersion rootProject.ext.android.minSdkVersion - targetSdkVersion rootProject.ext.android.targetSdkVersion - versionCode Integer.valueOf(VERSION_CODE) - versionName getValueFromRootProperties("${project.name.replace("-", "_").toUpperCase()}_VERSION") - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles 'consumer-rules.pro' - - //ARouter apt 参数 - kapt { - useBuildCache = false - arguments { - arg("AROUTER_MODULE_NAME", project.getName()) - } - } - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - -} - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation rootProject.ext.dependencies.androidxappcompat - implementation rootProject.ext.dependencies.androidxrecyclerview - implementation rootProject.ext.dependencies.androidxconstraintlayout - implementation rootProject.ext.dependencies.arouter - implementation rootProject.ext.dependencies.coroutinesandroid - implementation rootProject.ext.dependencies.coroutinescore - implementation rootProject.ext.dependencies.rxandroid - implementation rootProject.ext.dependencies.kotlinstdlibjdk7 - implementation rootProject.ext.dependencies.material - - kapt rootProject.ext.dependencies.aroutercompiler - - if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { - implementation rootProject.ext.dependencies.mogocommons - implementation rootProject.ext.dependencies.callchatprovider - - implementation rootProject.ext.dependencies.mogo_core_data - implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_network - implementation rootProject.ext.dependencies.mogo_core_function_call - - } else { - implementation project(":foudations:mogo-commons") - implementation project(':core:mogo-core-data') - implementation project(':core:mogo-core-utils') - implementation project(':core:mogo-core-network') - implementation project(':core:mogo-core-function-call') - } - -} - -apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString() diff --git a/core/function-impl/mogo-core-function-check/consumer-rules.pro b/core/function-impl/mogo-core-function-check/consumer-rules.pro deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/core/function-impl/mogo-core-function-check/gradle.properties b/core/function-impl/mogo-core-function-check/gradle.properties deleted file mode 100644 index 92cfc1d4d9..0000000000 --- a/core/function-impl/mogo-core-function-check/gradle.properties +++ /dev/null @@ -1,3 +0,0 @@ -GROUP=com.mogo.eagle.core.function.impl -POM_ARTIFACT_ID=check -VERSION_CODE=1 diff --git a/core/function-impl/mogo-core-function-check/proguard-rules.pro b/core/function-impl/mogo-core-function-check/proguard-rules.pro deleted file mode 100644 index 481bb43481..0000000000 --- a/core/function-impl/mogo-core-function-check/proguard-rules.pro +++ /dev/null @@ -1,21 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/AndroidManifest.xml b/core/function-impl/mogo-core-function-check/src/main/AndroidManifest.xml deleted file mode 100644 index c018fbfc9c..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/AndroidManifest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.kt b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.kt deleted file mode 100644 index f23712e897..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.kt +++ /dev/null @@ -1,130 +0,0 @@ -package com.mogo.eagle.core.function.check - -import android.content.Context -import android.content.Intent -import com.alibaba.android.arouter.facade.annotation.Route -import com.mogo.commons.module.status.IMogoStatusChangedListener -import com.mogo.commons.module.status.MogoStatusManager -import com.mogo.commons.module.status.StatusDescriptor -import com.mogo.eagle.core.data.constants.MogoServicePaths -import com.mogo.eagle.core.function.api.check.ICheckProvider -import com.mogo.eagle.core.function.api.check.IMogoCheckListener -import com.mogo.eagle.core.function.check.api.ICheckResultCallBack -import com.mogo.eagle.core.function.check.net.CheckNetWork.checkNetWork -import com.mogo.eagle.core.function.check.net.CheckResultData -import com.mogo.eagle.core.function.check.view.CheckActivity -import com.mogo.eagle.core.function.check.view.CheckDialog -import com.mogo.eagle.core.function.report.IPCReportManager -import com.mogo.eagle.core.utilcode.util.* -import java.util.concurrent.ConcurrentHashMap - -/** - * 鹰眼系统、自动驾驶系统 检测模块 - * - * @date 4/21/21 3:39 PM - * 需求地址 - * wiki:http://wiki.zhidaohulian.com/pages/viewpage.action?pageId=58204952 - */ -@Route(path = MogoServicePaths.PATH_CHECK) -class VehicleMonitoringManager : ICheckProvider, IMogoStatusChangedListener { - private val TAG = "VehicleMonitoringManager" - private var mContext: Context? = null - private val mListeners: ConcurrentHashMap = ConcurrentHashMap() - private var hasTipShow = false //是否已经弹框提示 - var dialog: CheckDialog? = null - - override val functionName: String - get() = "VehicleMonitoringManager" - - override fun init(context: Context) { - mContext = context - MogoStatusManager.getInstance().registerStatusChangedListener(TAG, - StatusDescriptor.MAIN_PAGE_RESUME, - this) - //开启工控机监控节点上报服务 - IPCReportManager.INSTANCE.initServer() - } - - override fun registerVehicleMonitoringListener(module: String, listener: IMogoCheckListener) { - mListeners[module] = listener - } - - override fun unregisterListener(module: String) { - mListeners.remove(module) - } - - override fun startCheckActivity(context: Context) { - val starter = Intent(context, CheckActivity::class.java) - starter.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) - context.startActivity(starter) - } - - override fun showCheckDialog(context: Context) { - showDialog(context) - } - - override fun checkMonitor(context: Context) { - checkNetWork( context, object : ICheckResultCallBack { - override fun callBackWithCheckData(data: CheckResultData) { - updateMonitoringStatus(TAG, data.data.vehicle.state) - if (data.data.vehicle.state == 1) { - hasTipShow = false - } else { - if (!hasTipShow) { - showDialog(context) - hasTipShow = true //已弹框 - } - } - } - - override fun callBackWithError(message: String, code: Int) { - - } - }) - } - - /** - * 指标异常弹框 - */ - private fun showDialog(context: Context) { - try { - if (AppStateManager.isActive() && AppUtils.isAppRunning( - AppUtils.getAppPackageName() - ) && ActivityUtils.getTopActivity() !is CheckActivity - ) { - if (dialog != null) { - dialog!!.dismiss() - } - dialog = CheckDialog(context, true) - dialog!!.show() - } - } catch (e: Exception) { - e.printStackTrace() - } - } - - override fun updateMonitoringStatus(module: String, state: Int) { - for (listener in mListeners) { - listener.value.updateMonitoringStatus(state) - } - } - - override fun onStatusChanged(descriptor: StatusDescriptor, isTrue: Boolean) { - if (descriptor == StatusDescriptor.MAIN_PAGE_RESUME) { - if (!isTrue) { - if (dialog != null && dialog!!.isShowing) { - dialog!!.dismiss() - } - } - } - } - - override fun onDestroy() { - //停止工控机监控节点上报服务 - MogoStatusManager.getInstance().unregisterStatusChangedListener(TAG, - StatusDescriptor.MAIN_PAGE_RESUME, - this) - IPCReportManager.INSTANCE.destroy() - } - -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/ICheckResultCallBack.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/ICheckResultCallBack.java deleted file mode 100644 index 2d630b7abf..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/ICheckResultCallBack.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.mogo.eagle.core.function.check.api; - -import com.mogo.eagle.core.function.check.net.CheckResultData; - -/** - * @author liujing - * @description 自车检测结果回调 - * @since: 9/28/21 - */ -public interface ICheckResultCallBack { - void callBackWithCheckData(CheckResultData data); - - void callBackWithError(String message, int code); -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/model/CheckItemInfo.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/model/CheckItemInfo.java deleted file mode 100644 index 19773ee321..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/model/CheckItemInfo.java +++ /dev/null @@ -1,138 +0,0 @@ -package com.mogo.eagle.core.function.check.model; - -import java.io.Serializable; -import java.util.ArrayList; - -/** - * @author liujing - * @description 描述 - * @since: 7/28/21 - */ -public class CheckItemInfo implements Serializable { - //view类型 - private int style; - //view顶端标题 - private String viewTitle; - - //icon 下第一行title 自动驾驶软件\鹰眼系统 - private String title; - - private String value; - private ArrayList itemList; - //是否存在异常 - private boolean usual; - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public ArrayList getItemList() { - return itemList; - } - - public void setItemList(ArrayList itemList) { - this.itemList = itemList; - } - - public String getValue() { - return value; - } - - public void setValue(String value) { - this.value = value; - } - - public boolean isUsual() { - return usual; - } - - public void setUsual(boolean usual) { - this.usual = usual; - } - - public int getStyle() { - return style; - } - - public void setStyle(int style) { - this.style = style; - } - - public String getViewTitle() { - return viewTitle; - } - - public void setViewTitle(String viewTitle) { - this.viewTitle = viewTitle; - } - - @Override - public String toString() { - return "CheckItemInfo{" + - "style=" + style + - ", viewTitle='" + viewTitle + '\'' + - ", title='" + title + '\'' + - ", value='" + value + '\'' + - ", itemList=" + itemList + - ", usual=" + usual + - '}'; - } - - public static class DetailItem implements Serializable { - private boolean usual; - private String title; - private String value; - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public String getValue() { - return value; - } - - public void setValue(String value) { - this.value = value; - } - - public boolean isUsual() { - return usual; - } - - public void setUsual(boolean usual) { - this.usual = usual; - } - - @Override - public String toString() { - return "DetailItem{" + - "usual=" + usual + - ", title='" + title + '\'' + - ", value='" + value + '\'' + - '}'; - } - } - - public interface CheckAdapterStyleEnum { - int ITEM_TYPE_CHECK_TITLE = 0; - int ITEM_TYPE_CHECK_LIST = 1; - int ITEM_TYPE_CHECK_IMAGE = 2; - } - - public interface CheckInfoStyle { - String CHECK_INFO_STYLE_DEVICES = "devices"; - String CHECK_INFO_STYLE_SOFT = "soft"; - } -} - - - - diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckApiServiceFactory.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckApiServiceFactory.java deleted file mode 100644 index b8cf015887..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckApiServiceFactory.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.mogo.eagle.core.function.check.net; - -import com.mogo.commons.constants.HostConst; -import com.mogo.eagle.core.network.MoGoRetrofitFactory; - -/** - * @author liujing - * @description 描述 - * @since: 8/13/21 - */ -public class CheckApiServiceFactory { - private static CheckApiServices mDataApiService; - - /** - * 获取指定域名下的 API 服务 - */ - public static CheckApiServices getApiService(String netHost) { - return MoGoRetrofitFactory.getInstance(netHost).create(CheckApiServices.class); - } - - public static CheckApiServices getDataApiService() { - if (mDataApiService == null) { - synchronized (CheckApiServiceFactory.class) { - if (mDataApiService == null) { - mDataApiService = getApiService(HostConst.DATA_SERVICE_HOST); - } - } - } - return mDataApiService; - } - -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckApiServices.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckApiServices.java deleted file mode 100644 index 02338e73fa..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckApiServices.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.mogo.eagle.core.function.check.net; - -import java.util.Map; - -import io.reactivex.Observable; -import retrofit2.http.GET; -import retrofit2.http.QueryMap; - -/** - * @author liujing - * @description 描述 - * @since: 8/13/21 - */ -public interface CheckApiServices { - - @GET("/yycp-vehicle-management-service/monitor/license/detail") - Observable loadMonitorDetail(@QueryMap Map param); -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckNetWork.kt b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckNetWork.kt deleted file mode 100644 index 5e37156e19..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckNetWork.kt +++ /dev/null @@ -1,43 +0,0 @@ -package com.mogo.eagle.core.function.check.net - -import android.content.Context -import com.elegant.network.ParamsBuilder -import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.eagle.core.function.check.api.ICheckResultCallBack -import com.mogo.eagle.core.network.RequestOptions -import com.mogo.eagle.core.network.SubscribeImpl -import com.mogo.eagle.core.utilcode.util.ThreadUtils -import io.reactivex.android.schedulers.AndroidSchedulers -import io.reactivex.schedulers.Schedulers - -/** - * @author liujing - * @description 自测检测网络请求类 - * @since: 10/12/21 - */ - -object CheckNetWork { - - //网络请求,获取自车检测结果(工控机上报云端) - fun checkNetWork(context: Context, callbackFlow: ICheckResultCallBack) { - val params = ParamsBuilder.of(false) - .append("sn", MoGoAiCloudClientConfig.getInstance().sn) - .build() - - CheckApiServiceFactory.getDataApiService().loadMonitorDetail(params) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(object : SubscribeImpl(RequestOptions.create(context)) { - override fun onSuccess(o: CheckResultData) { - super.onSuccess(o) - ThreadUtils.runOnUiThread { callbackFlow?.callBackWithCheckData(o) } - } - - override fun onError(message: String, code: Int) { - super.onError(message, code) - ThreadUtils.runOnUiThread { callbackFlow?.callBackWithError(message, code) } - } - }) - } - -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckResultData.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckResultData.java deleted file mode 100644 index cee2344af1..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/net/CheckResultData.java +++ /dev/null @@ -1,278 +0,0 @@ -package com.mogo.eagle.core.function.check.net; - -import com.mogo.eagle.core.data.BaseData; - -import java.io.Serializable; -import java.util.List; - -/** - * @author liujing - * @description 描述 - * @since: 8/13/21 - */ -public class CheckResultData extends BaseData { - private Data data; - private boolean success; - - public Data getData() { - return data; - } - - public void setData(Data data) { - this.data = data; - } - - public boolean isSuccess() { - return success; - } - - public void setSuccess(boolean success) { - this.success = success; - } - - @Override - public String toString() { - return "CheckResultData{" + - "data=" + data + - ", success=" + success + - '}'; - } - - public static class Data implements Serializable{ - private Vehicle vehicle; - private List soft; - private List devices; - private Integer deviceState = 1;//硬件状态 - private Integer softState = 0;//系统(软件)状态 - - public Vehicle getVehicle() { - return vehicle; - } - - public void setVehicle(Vehicle vehicle) { - this.vehicle = vehicle; - } - - public List getSoft() { - return soft; - } - - public void setSoft(List soft) { - this.soft = soft; - } - - public List getDevices() { - return devices; - } - - public void setDevices(List devices) { - this.devices = devices; - } - - public Integer getSoftState() { - return softState; - } - - public void setSoftState(Integer softState) { - this.softState = softState; - } - - public Integer getDeviceState() { - return deviceState; - } - - public void setDeviceState(Integer deviceState) { - this.deviceState = deviceState; - } - - @Override - public String toString() { - return "Data{" + - "vehicle=" + vehicle + - ", soft=" + soft + - ", devices=" + devices + - ", softState=" + softState + - ", deviceState=" + deviceState + - '}'; - } - } - - public static class Vehicle implements Serializable { - private String id; - private String sn; - private String vin; - private String carBrand; - private String carLicense; - private String carType; - private String userName; - private String userPhone; - private String carImage; - private double createTime; - private Integer state; - private Integer ipcState; - private Integer autoState; - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getSn() { - return sn; - } - - public void setSn(String sn) { - this.sn = sn; - } - - public String getVin() { - return vin; - } - - public void setVin(String vin) { - this.vin = vin; - } - - public String getCarBrand() { - return carBrand; - } - - public void setCarBrand(String carBrand) { - this.carBrand = carBrand; - } - - public String getCarLicense() { - return carLicense; - } - - public void setCarLicense(String carLicense) { - this.carLicense = carLicense; - } - - public String getCarType() { - return carType; - } - - public void setCarType(String carType) { - this.carType = carType; - } - - public String getUserName() { - return userName; - } - - public void setUserName(String userName) { - this.userName = userName; - } - - public String getUserPhone() { - return userPhone; - } - - public void setUserPhone(String userPhone) { - this.userPhone = userPhone; - } - - public String getCarImage() { - return carImage; - } - - public void setCarImage(String carImage) { - this.carImage = carImage; - } - - public double getCreateTime() { - return createTime; - } - - public void setCreateTime(double createTime) { - this.createTime = createTime; - } - - public Integer getState() { - return state; - } - - public void setState(Integer state) { - this.state = state; - } - - public Integer getIpcState() { - return ipcState; - } - - public void setIpcState(Integer ipcState) { - this.ipcState = ipcState; - } - - public Integer getAutoState() { - return autoState; - } - - public void setAutoState(Integer autoState) { - this.autoState = autoState; - } - - @Override - public String toString() { - return "vehicle{" + - "id='" + id + '\'' + - ", sn='" + sn + '\'' + - ", vin='" + vin + '\'' + - ", carBrand='" + carBrand + '\'' + - ", carLicense='" + carLicense + '\'' + - ", carType='" + carType + '\'' + - ", userName='" + userName + '\'' + - ", userPhone='" + userPhone + '\'' + - ", carImage='" + carImage + '\'' + - ", createTime='" + createTime + '\'' + - ", state='" + state + '\'' + - ", ipcState='" + ipcState + '\'' + - ", autoState='" + autoState + '\'' + - '}'; - } - } - - public static class CheckListItem implements Serializable{ - private String name; - private String stateValue; - private List items; - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Object getStateValue() { - return stateValue; - } - - public void setStateValue(String stateValue) { - this.stateValue = stateValue; - } - - public List getItems() { - return items; - } - - public void setItems(List items) { - this.items = items; - } - - @Override - public String toString() { - return "soft{" + - "name='" + name + '\'' + - ", stateValue=" + stateValue + - ", items=" + items + - '}'; - } - } - -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckActivity.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckActivity.java deleted file mode 100644 index 18f3cbc7ea..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckActivity.java +++ /dev/null @@ -1,225 +0,0 @@ -package com.mogo.eagle.core.function.check.view; - -import android.animation.Animator; -import android.animation.AnimatorListenerAdapter; -import android.animation.AnimatorSet; -import android.animation.ObjectAnimator; -import android.animation.ValueAnimator; -import android.graphics.Rect; -import android.os.Bundle; -import android.view.View; -import android.widget.ImageView; -import android.widget.ProgressBar; - -import androidx.annotation.Nullable; -import androidx.appcompat.app.AppCompatActivity; -import androidx.recyclerview.widget.RecyclerView; - -import com.mogo.eagle.core.function.check.R; -import com.mogo.eagle.core.function.check.api.ICheckResultCallBack; -import com.mogo.eagle.core.function.check.net.CheckNetWork; -import com.mogo.eagle.core.function.check.net.CheckResultData; -import com.mogo.eagle.core.utilcode.util.ThreadUtils; -import com.mogo.eagle.core.utilcode.mogo.view.SpacesItemDecoration; - -import java.math.BigDecimal; - -/** - * @author liujing - * @description 车辆监控页面首页 - * @since: 7/27/21 - */ -public class CheckActivity extends AppCompatActivity { - - private RecyclerView mRecyclerView; - private static CheckResultData sCheckResultData; - private ImageView mImageView; - //车模 - private ImageView scanBottomCarImage; - //扫描束 - private ImageView scanLineImage; - //车辆模型顶部色值加深车模 - private ImageViewClipBounds scanTopImageView; - //车模顶部小部件图片 - private ImageViewClipBounds tipsImageView; - //动画组 - private AnimatorSet setAnimation = null; - private ValueAnimator mValueAnimator; - private float movement = 1162f; - //进度条 - private ProgressBar mProgressBar; - private final static long DURATION_TIME = 1000; - private CheckAdapter mCheckAdapter; - - @Override - protected void onCreate(@Nullable Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_check); - initView(); - } - - @Override - protected void onStart() { - super.onStart(); - animation(); - checkAction(); - } - - /** - * 列表View初始化 - */ - public void initView() { - setAnimation = new AnimatorSet(); - mImageView = findViewById(R.id.btnBack); - scanBottomCarImage = findViewById(R.id.scan_car_image); - scanLineImage = findViewById(R.id.scan_line_image); - scanTopImageView = findViewById(R.id.scan_car_top_image); - tipsImageView = findViewById(R.id.scan_car_tips); - mProgressBar = findViewById(R.id.check_progress); - mImageView.setOnClickListener(v -> { - finish(); - }); - - mRecyclerView = findViewById(R.id.check_list); - CheckLinearLayout linearLayoutManager = - new CheckLinearLayout(this, CheckLinearLayout.VERTICAL, false); - mRecyclerView.addItemDecoration(new SpacesItemDecoration((int) getResources().getDimension(R.dimen.check_item_space_vr))); - mRecyclerView.setLayoutManager(linearLayoutManager); - mCheckAdapter = new CheckAdapter(CheckActivity.this, sCheckResultData); - mRecyclerView.setAdapter(mCheckAdapter); - } - - private void checkAction() { - CheckNetWork.INSTANCE.checkNetWork(this.getApplicationContext(), new ICheckResultCallBack() { - @Override - public void callBackWithCheckData(CheckResultData data) { - ThreadUtils.runOnUiThread(() -> { - if (data != null && mCheckAdapter != null) { - mCheckAdapter.errorMsg = null; - mCheckAdapter.mCheckResultData = data; - mCheckAdapter.notifyDataSetChanged(); - } - }); - } - - @Override - public void callBackWithError(String message, int code) { - if (message != null) { - mCheckAdapter.errorMsg = message; - mCheckAdapter.notifyDataSetChanged(); - } - } - }); - - } - - - /** - * **************************************************************************************检测动画 - */ - public void animation() { - ObjectAnimator animatorX = ObjectAnimator.ofFloat(scanLineImage, "translationX", - scanBottomCarImage.getWidth(), 0); - ObjectAnimator animatorAl = ObjectAnimator.ofFloat(scanLineImage, "alpha", - 0, 1); - setAnimation.playTogether(animatorX, animatorAl); - setAnimation.setDuration(DURATION_TIME); - setAnimation.start(); - setAnimation.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - super.onAnimationEnd(animation); - if (scanTopImageView != null) { - movement = (float) scanTopImageView.getWidth(); - scanLineImage.setVisibility(View.VISIBLE); - scanTopImageView.setVisibility(View.VISIBLE); - tipsImageView.setVisibility(View.VISIBLE); - } - if (scanLineImage != null) { - scanLineImage - .animate() - .translationX(movement) - .setDuration(DURATION_TIME) - .setListener(new Animator.AnimatorListener() { - @Override - public void onAnimationStart(Animator animation) { - animatorScanCarBorder(true, scanTopImageView.getWidth()); - } - - @Override - public void onAnimationEnd(Animator animation) { - - } - - @Override - public void onAnimationCancel(Animator animation) { - - } - - @Override - public void onAnimationRepeat(Animator animation) { - - } - }).start(); - } - } - }); - } - - /** - * 扫描动画:实现扫描束位移+顶部深色车模及检测元件的显示 - */ - public void animatorScanCarBorder(boolean show, int weight) { - if (show) { - mValueAnimator = ValueAnimator.ofInt(0, weight); - } - mValueAnimator.addUpdateListener(animation -> { - Rect rect = new Rect(0, 0, (int) mValueAnimator.getAnimatedValue(), scanTopImageView.getHeight()); - setProgressBarRefresh((int) mValueAnimator.getAnimatedValue()); - scanTopImageView.setClip(rect); - tipsImageView.setClip(rect); - }); - mValueAnimator.setDuration(DURATION_TIME); - mValueAnimator.start(); - } - - /** - * 进度条状态刷新 - */ - public void setProgressBarRefresh(int animateValue) { - if (mProgressBar != null) { - double scale = BigDecimal.valueOf((float) animateValue / scanBottomCarImage.getWidth()) - .setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue() * 100; - if (mProgressBar.getProgress() < 100) { - mProgressBar.setProgress((int) scale); - } else { - findViewById(R.id.animationLayout).setVisibility(View.GONE); - } - } - } - - @Override - protected void onPause() { - super.onPause(); - if (mCheckAdapter != null) { - mCheckAdapter.dismissDialog(); - } - } - - @Override - protected void onStop() { - super.onStop(); - } - - @Override - protected void onRestart() { - super.onRestart(); - } - - @Override - protected void onDestroy() { - super.onDestroy(); - mCheckAdapter.onDestroy(); - } - -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckAdapter.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckAdapter.java deleted file mode 100644 index 039409810a..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckAdapter.java +++ /dev/null @@ -1,192 +0,0 @@ -package com.mogo.eagle.core.function.check.view; - -import android.content.Context; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.recyclerview.widget.RecyclerView; - -import com.mogo.eagle.core.function.check.R; -import com.mogo.eagle.core.function.check.model.CheckItemInfo; -import com.mogo.eagle.core.function.check.net.CheckResultData; - - -/** - * @author liujing - * @description 检测首页单元格 - * @since: 7/27/21 - */ -public class CheckAdapter extends RecyclerView.Adapter { - - LayoutInflater mLayoutInflater; - CheckResultData mCheckResultData; - private Context mContext; - CheckInfoListDialog mCheckInfoListDialog; - String errorMsg; - - public CheckAdapter(@NonNull Context context, @NonNull CheckResultData checkResult) { - mContext = context; - mCheckResultData = checkResult; - mLayoutInflater = LayoutInflater.from(mContext); - } - - @Override - public int getItemViewType(int position) { - if (position == 0) { - return CheckItemInfo.CheckAdapterStyleEnum.ITEM_TYPE_CHECK_TITLE; - - } - return CheckItemInfo.CheckAdapterStyleEnum.ITEM_TYPE_CHECK_LIST; - } - - @NonNull - @Override - public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - if (viewType == CheckItemInfo.CheckAdapterStyleEnum.ITEM_TYPE_CHECK_TITLE) { - View v = mLayoutInflater.inflate(R.layout.check_titel, parent, - false); - return new CheckTitleViewHolder(v); - } - View v = mLayoutInflater.inflate(R.layout.check_list, parent, - false); - return new CheckListViewHolder(v); - } - - public void dismissDialog() { - if (mCheckInfoListDialog != null && mCheckInfoListDialog.isShowing()) { - mCheckInfoListDialog.dismiss(); - } - } - - public void onDestroy() { - mContext = null; - mCheckInfoListDialog = null; - } - - /** - * 顶部view列表 - */ - private static class CheckTitleViewHolder extends RecyclerView.ViewHolder { - private final ImageView errorImage; - private final TextView mTextView; - - public CheckTitleViewHolder(@NonNull View itemView) { - super(itemView); - errorImage = itemView.findViewById(R.id.check_tip_image); - mTextView = itemView.findViewById(R.id.check_title); - } - } - - /** - * 版本->软件检测 - */ - private static class CheckListViewHolder extends RecyclerView.ViewHolder { - private final TextView viewTitle; - private TextView iconAutoTitle; - private final TextView autoRiskState; - private final ImageView iconAuto; - - public CheckListViewHolder(@NonNull View itemView) { - super(itemView); - viewTitle = itemView.findViewById(R.id.list_item_title); - //自动驾驶 - iconAuto = itemView.findViewById(R.id.icon_auto); - iconAutoTitle = itemView.findViewById(R.id.icon_auto_title); - autoRiskState = itemView.findViewById(R.id.auto_risk_state); - } - } - - @Override - public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { - if (errorMsg != null) { - errorMsgShow(holder, position); - } - - if (mCheckResultData == null || mCheckResultData.getData() == null) { - return; - } - - try { - if (position == 0) { - if (mCheckResultData.getData().getVehicle().getState() == 1) { - ((CheckTitleViewHolder) holder).errorImage.setImageResource(R.drawable.check_right); - ((CheckTitleViewHolder) holder).mTextView.setText("车辆自检正常"); - } else { - ((CheckTitleViewHolder) holder).errorImage.setImageResource(R.drawable.check_wrong); - ((CheckTitleViewHolder) holder).mTextView.setText("车辆存在异常项"); - } - } else if (position == 1) { - ((CheckListViewHolder) holder).viewTitle.setText("硬件检测:"); - if (mCheckResultData.getData().getDeviceState() == 1) { - ((CheckListViewHolder) holder).autoRiskState.setTextColor( - (mContext.getResources().getColor(R.color.check_little_btn_green))); - ((CheckListViewHolder) holder).autoRiskState.setText("运行正常"); - } else { - ((CheckListViewHolder) holder).autoRiskState.setTextColor( - (mContext.getResources().getColor(R.color.check_icon_error_color))); - ((CheckListViewHolder) holder).autoRiskState.setText("存在异常项"); - } - ((CheckListViewHolder) holder).iconAuto.setOnClickListener(v -> { - if (mCheckInfoListDialog != null) { - mCheckInfoListDialog.dismiss(); - } - mCheckInfoListDialog = new CheckInfoListDialog(mContext, CheckItemInfo.CheckInfoStyle.CHECK_INFO_STYLE_DEVICES, mCheckResultData); - mCheckInfoListDialog.show(); - - }); - } else if (position == 2) { - ((CheckListViewHolder) holder).viewTitle.setText("系统检测:"); - if (mCheckResultData.getData().getSoftState() == 1) { - ((CheckListViewHolder) holder).autoRiskState.setTextColor( - (mContext.getResources().getColor(R.color.check_little_btn_green))); - ((CheckListViewHolder) holder).autoRiskState.setText("运行正常"); - } else { - ((CheckListViewHolder) holder).autoRiskState.setTextColor( - (mContext.getResources().getColor(R.color.check_icon_error_color))); - ((CheckListViewHolder) holder).autoRiskState.setText("存在异常项"); - } - ((CheckListViewHolder) holder).iconAuto.setOnClickListener(v -> { - if (mCheckInfoListDialog != null) { - mCheckInfoListDialog.dismiss(); - } - mCheckInfoListDialog = new CheckInfoListDialog(mContext, CheckItemInfo.CheckInfoStyle.CHECK_INFO_STYLE_SOFT, mCheckResultData); - mCheckInfoListDialog.show(); - }); - } - - } catch (Exception e) { - e.printStackTrace(); - } - } - - private void errorMsgShow(@NonNull RecyclerView.ViewHolder holder, int position) { - switch (position) { - case 0: - ((CheckTitleViewHolder) holder).mTextView.setText(errorMsg); - break; - case 1: - ((CheckListViewHolder) holder).viewTitle.setText("硬件检测:"); - ((CheckListViewHolder) holder).autoRiskState.setText(errorMsg); - ((CheckListViewHolder) holder).autoRiskState.setTextColor( - (mContext.getResources().getColor(R.color.check_icon_error_color))); - break; - case 2: - ((CheckListViewHolder) holder).viewTitle.setText("系统检测:"); - ((CheckListViewHolder) holder).autoRiskState.setText(errorMsg); - ((CheckListViewHolder) holder).autoRiskState.setTextColor( - (mContext.getResources().getColor(R.color.check_icon_error_color))); - break; - default: - } - } - - @Override - public int getItemCount() { - return 3; - } - -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckDialog.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckDialog.java deleted file mode 100644 index 2638bf24e4..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckDialog.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.mogo.eagle.core.function.check.view; - -import android.app.Dialog; -import android.content.Context; -import android.os.Build; -import android.view.View; -import android.view.WindowManager; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; - -import com.mogo.eagle.core.function.call.check.CallerCheckManager; -import com.mogo.eagle.core.function.check.R; - -/** - * @author liujing - * @description 车辆监控弹框提示(长时间未检测或者后台任务检测出现问题的弹框) - * 第一版本为添加长时间未检测的提示框,因为逻辑冲突,二期需求与产品确认,UI公用 - * @since: 7/30/21 - */ -public class CheckDialog extends Dialog { - - private boolean showWarning; - private Context mContext; - - public CheckDialog(@NonNull Context context, boolean hasError) { - super(context,R.style.CheckInfoDialogStyle); - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { - getWindow().setType(WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY); - } else { - getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); - } - getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN - | WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION - | WindowManager.LayoutParams.FLAG_LOCAL_FOCUS_MODE); - mContext = context; - showWarning = hasError; - initView(); - } - - public CheckDialog(@NonNull Context context, int themeResId) { - super(context, themeResId); - } - - public void initView() { - setContentView(R.layout.check_dialog); - ImageView cancel = findViewById(R.id.cancel_button); - cancel.setOnClickListener(v -> { - dismiss(); - }); - TextView checkDetail = findViewById(R.id.check_detail); - checkDetail.setOnClickListener(v -> { - dismiss(); - if (mContext != null) { - CallerCheckManager.startCheckActivity(mContext); - } - }); - - //根据条件显示体检页面/风险提示 - if (showWarning) { - findViewById(R.id.error_view).setVisibility(View.VISIBLE); - findViewById(R.id.check_view).setVisibility(View.INVISIBLE); - } else { - findViewById(R.id.error_view).setVisibility(View.INVISIBLE); - findViewById(R.id.check_view).setVisibility(View.VISIBLE); - } - } - - public void cancel() { - - } - - @Override - public void dismiss() { - super.dismiss(); - } -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoAdapter.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoAdapter.java deleted file mode 100644 index 3e04633765..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoAdapter.java +++ /dev/null @@ -1,131 +0,0 @@ -package com.mogo.eagle.core.function.check.view; - -import android.content.Context; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.recyclerview.widget.RecyclerView; - -import com.mogo.eagle.core.function.check.R; -import com.mogo.eagle.core.function.check.net.CheckResultData; - -import java.util.List; - -/** - * @author liujing - * @description 点击自动驾驶icon显示各个检测指标结果 - * @since: 9/23/21 - */ -public class CheckInfoAdapter extends RecyclerView.Adapter { - LayoutInflater mLayoutInflater; - private Context mContext; - private String mStyle; - private final List showData; - //item类型 - public static final int ITEM_TYPE_CONTENT = 0;//内容 - public static final int ITEM_TYPE_BOTTOM = 1;//footer类型 - //适配UI的空白表格 - private int mBottomCount = 0; - - public CheckInfoAdapter(Context context, String style, List checkResultData) { - mContext = context; - mStyle = style; - showData = checkResultData; - mLayoutInflater = LayoutInflater.from(context); - } - - @NonNull - @Override - public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - if (viewType == ITEM_TYPE_BOTTOM) { - View v = mLayoutInflater.inflate(R.layout.check_recycler_footer, parent, - false); - CheckInfoAdapter.CheckInfoFooter holder = new CheckInfoAdapter.CheckInfoFooter(v); - return holder; - } - View v = mLayoutInflater.inflate(R.layout.check_info_adapter, parent, - false); - CheckInfoAdapter.CheckInfoViewHolder holder = new CheckInfoViewHolder(v); - return holder; - } - - - @Override - public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { - try { - if (holder instanceof CheckInfoAdapter.CheckInfoViewHolder) { - if (position < showData.size() * 2) { - int index = position / 2; - CheckResultData.CheckListItem positionItem = showData.get(index); - if (isEven(position)) {//偶数隐藏图片显示检测指标 - ((CheckInfoViewHolder) holder).checkIcon.setVisibility(View.GONE); - ((CheckInfoViewHolder) holder).mTextView.setText(positionItem.getName()); - } else {//奇数显示图片和检测指标结果 - ((CheckInfoViewHolder) holder).checkIcon.setVisibility(View.VISIBLE); - String state = (String) positionItem.getStateValue(); - if (state.equals("1")) { - ((CheckInfoViewHolder) holder).mTextView.setText("正常"); - ((CheckInfoViewHolder) holder).checkIcon.setImageResource(R.drawable.check_right); - } else if ((state.equals("0"))) { - ((CheckInfoViewHolder) holder).mTextView.setText("异常"); - ((CheckInfoViewHolder) holder).checkIcon.setImageResource(R.drawable.check_wrong); - } else { - ((CheckInfoViewHolder) holder).mTextView.setText(state); - } - } - } - } - } catch (Exception e) { - e.printStackTrace(); - } - - } - - public boolean isEven(int position) { - if (position % 2 == 0) { - System.out.println("偶数"); - return true; - } else { - return false; - } - } - - @Override - public int getItemCount() { - if (isEven(showData.size())) { - mBottomCount = 0; - } else { - mBottomCount = 1; - } - return showData.size() * 2 + mBottomCount; - } - - private static class CheckInfoViewHolder extends RecyclerView.ViewHolder { - private final ImageView checkIcon; - private final TextView mTextView; - - public CheckInfoViewHolder(View v) { - super(v); - checkIcon = v.findViewById(R.id.info_check_icon); - mTextView = v.findViewById(R.id.info_result_tx); - } - } - - private static class CheckInfoFooter extends RecyclerView.ViewHolder { - public CheckInfoFooter(View v) { - super(v); - } - } - - @Override - public int getItemViewType(int position) { - if (position > showData.size() * 2) { - return ITEM_TYPE_BOTTOM; - } - return ITEM_TYPE_CONTENT; - } -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoGridItemDivider.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoGridItemDivider.java deleted file mode 100644 index 863ed6c3c0..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoGridItemDivider.java +++ /dev/null @@ -1,160 +0,0 @@ -package com.mogo.eagle.core.function.check.view; - -import android.content.Context; -import android.content.res.TypedArray; -import android.graphics.Canvas; -import android.graphics.Rect; -import android.graphics.drawable.Drawable; -import android.graphics.drawable.GradientDrawable; -import android.view.View; - -import androidx.recyclerview.widget.GridLayoutManager; -import androidx.recyclerview.widget.RecyclerView; -import androidx.recyclerview.widget.StaggeredGridLayoutManager; - -/** - * @author liujing - * @description 网格布局网格绘制类 - * @since: 9/22/21 - */ -public class CheckInfoGridItemDivider extends RecyclerView.ItemDecoration { - private static final int[] ATTRS = new int[]{android.R.attr.listDivider}; - private final Drawable divider; - - public CheckInfoGridItemDivider(Context context) { - final TypedArray a = context.obtainStyledAttributes(ATTRS); - divider = a.getDrawable(0); - a.recycle(); - } - - public CheckInfoGridItemDivider(Drawable drawable) { - divider = drawable; - } - - public CheckInfoGridItemDivider(int height, int color) { - GradientDrawable shapeDrawable = new GradientDrawable(); - shapeDrawable.setColor(color); - shapeDrawable.setShape(GradientDrawable.RECTANGLE); - shapeDrawable.setSize(height, height); - divider = shapeDrawable; - } - - - @Override - public void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state) { - drawHorizontal(c, parent); - drawVertical(c, parent); - - } - - private int getSpanCount(RecyclerView parent) { - // 列数 - int spanCount = -1; - RecyclerView.LayoutManager layoutManager = parent.getLayoutManager(); - if (layoutManager instanceof GridLayoutManager) { - - spanCount = ((GridLayoutManager) layoutManager).getSpanCount(); - } else if (layoutManager instanceof StaggeredGridLayoutManager) { - spanCount = ((StaggeredGridLayoutManager) layoutManager) - .getSpanCount(); - } - return spanCount; - } - - public void drawHorizontal(Canvas c, RecyclerView parent) { - int childCount = parent.getChildCount(); //获取可见item的数量 - int spanCount = getSpanCount(parent); - for (int i = 0; i < childCount; i++) { - final View child = parent.getChildAt(i); - final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child - .getLayoutParams(); - final int left = child.getLeft() - params.leftMargin; - final int right = child.getRight() + params.rightMargin - + divider.getIntrinsicWidth(); - final int top = child.getBottom() + params.bottomMargin; - final int bottom = top + divider.getIntrinsicHeight(); - divider.setBounds(left, top, right, bottom); - divider.draw(c); - if (i < spanCount) { //画第一行顶部的分割线 - drawHorizontalForFirstRow(c, child); - } - } - } - - private void drawHorizontalForFirstRow(Canvas c, View child) { - final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child - .getLayoutParams(); - int left = child.getLeft() - params.leftMargin - divider.getIntrinsicWidth(); - int top = child.getTop() - params.topMargin - divider.getIntrinsicHeight(); - int right = child.getRight() + params.rightMargin + divider.getIntrinsicWidth(); - int bottom = top + divider.getIntrinsicHeight(); - divider.setBounds(left, top, right, bottom); - divider.draw(c); - } - - private void drawVerticalForFirstColum(Canvas c, View child) { - final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child - .getLayoutParams();//在父布局的 - int left = child.getLeft() - params.leftMargin - divider.getIntrinsicWidth(); - int top = child.getTop() - params.topMargin; - int right = child.getLeft() - params.leftMargin; - int bottom = top + child.getHeight() + divider.getIntrinsicHeight(); - divider.setBounds(left, top, right, bottom); - divider.draw(c); - } - - public void drawVertical(Canvas c, RecyclerView parent) { - final int childCount = parent.getChildCount(); - for (int i = 0; i < childCount; i++) { - final View child = parent.getChildAt(i); - - final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child - .getLayoutParams(); - final int top = child.getTop() - params.topMargin; - final int bottom = child.getBottom() + params.bottomMargin; - final int left = child.getRight() + params.rightMargin; - final int right = left + divider.getIntrinsicWidth(); - divider.setBounds(left, top, right, bottom); - divider.draw(c); - if (isFirstColum(parent, i, getSpanCount(parent))) { //画第一列左边分割线 - drawVerticalForFirstColum(c, child); - } - } - } - - //是否为第一列 - private boolean isFirstColum(RecyclerView parent, int pos, int spanCount) { - RecyclerView.LayoutManager layoutManager = parent.getLayoutManager(); - if (layoutManager instanceof GridLayoutManager) { //网格布局 - if ((pos + 1) % spanCount == 1) { - return true; - } - } - return false; - } - - //是否为第一行 - private boolean isFirstRaw(int pos, int spanCount) { - return pos < spanCount; - } - - @Override - public void getItemOffsets(Rect outRect, int itemPosition, - RecyclerView parent) { - int spanCount = getSpanCount(parent); //列数 - - if (itemPosition == 0) { //第一行第一个,四边都画 - outRect.set(divider.getIntrinsicWidth(), divider.getIntrinsicHeight(), - divider.getIntrinsicWidth(), divider.getIntrinsicHeight()); - } else if (isFirstRaw(itemPosition, spanCount)) { //第一行,画上下右三边 - outRect.set(0, divider.getIntrinsicHeight(), divider.getIntrinsicWidth(), divider.getIntrinsicHeight()); - } else if (isFirstColum(parent, itemPosition, spanCount)) { //第一列,画左右下三边 - outRect.set(divider.getIntrinsicWidth(), 0, divider.getIntrinsicWidth(), divider.getIntrinsicHeight()); - } else { //其他,画右下两边 - outRect.set(0, 0, divider.getIntrinsicWidth(), divider.getIntrinsicHeight()); - } - - } - -} - diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoListDialog.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoListDialog.java deleted file mode 100644 index 3fc27d82ac..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoListDialog.java +++ /dev/null @@ -1,124 +0,0 @@ -package com.mogo.eagle.core.function.check.view; - -import android.app.Dialog; -import android.content.Context; -import android.os.Build; -import android.view.WindowManager; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.recyclerview.widget.GridLayoutManager; - -import com.mogo.eagle.core.function.check.R; -import com.mogo.eagle.core.function.check.model.CheckItemInfo; -import com.mogo.eagle.core.function.check.net.CheckResultData; - -import java.util.ArrayList; -import java.util.List; - -/** - * @author liujing - * @description 检测指标详情弹框 - * @since: 9/22/21 - */ -public class CheckInfoListDialog extends Dialog { - - private static final String TAG = "CheckInfoListDialog"; - private CheckInfoRecyclerView mRecyclerView; - private Context mContext; - private TextView titleView; - private int span; - private String mStyle; - private CheckResultData mCheckResultData; - private final List result = new ArrayList<>(); - - public CheckInfoListDialog(@NonNull Context context, String style, CheckResultData checkResultData) { - super(context,R.style.CheckInfoDialogStyle); - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { - getWindow().setType(WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY); - } else { - getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); - } - getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN - | WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION - | WindowManager.LayoutParams.FLAG_LOCAL_FOCUS_MODE); - mContext = context; - mStyle = style; - mCheckResultData = checkResultData; - initView(); - } - - public CheckInfoListDialog(@NonNull Context context, int themeResId) { - super(context, themeResId); - } - - public void initView() { - setContentView(R.layout.check_info_list); - mRecyclerView = findViewById(R.id.check_list_recycler); - titleView = findViewById(R.id.check_info_title); - if (mStyle.equals(CheckItemInfo.CheckInfoStyle.CHECK_INFO_STYLE_DEVICES)) { - titleView.setText("硬件自检结果"); - } else { - titleView.setText("系统自检结果"); - } - //网格布局 - GridLayoutManager layoutManager = new GridLayoutManager(mContext, 4); - mRecyclerView.setLayoutManager(layoutManager); - layoutManager.setOrientation(GridLayoutManager.VERTICAL); - //网格绘制 - try { - CheckInfoGridItemDivider gridLayoutDivider = new CheckInfoGridItemDivider(1, - (mContext.getResources().getColor(R.color.check_info_position_line_color))); - mRecyclerView.addItemDecoration(gridLayoutDivider); - } catch (Exception e) { - e.printStackTrace(); - } - List resultData = showInfoResult(); - CheckInfoAdapter adapter = new CheckInfoAdapter(mContext, mStyle, resultData); - mRecyclerView.setAdapter(adapter); - //关闭按钮 - findViewById(R.id.cancel_info_list_button).setOnClickListener(v -> { - dismiss(); - }); - } - - public List showInfoResult() { - - if (result.size() > 0) { - result.clear(); - } - try { - List checkListResult = new ArrayList(); - try { - if (mStyle.equals(CheckItemInfo.CheckInfoStyle.CHECK_INFO_STYLE_DEVICES)) { - checkListResult = mCheckResultData.getData().getDevices(); - } else { - checkListResult = mCheckResultData.getData().getSoft(); - } - for (CheckResultData.CheckListItem item : checkListResult) { - if (item.getStateValue() != null) { - result.addAll(checkListResult); - } - if (item.getItems() != null) { - result.addAll(item.getItems()); - } - } - } catch (Exception e) { - e.printStackTrace(); - } - } catch (Exception e) { - - } - return result; - } - - public void cancel() { - - } - - @Override - public void dismiss() { - super.dismiss(); - } - -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoRecyclerView.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoRecyclerView.java deleted file mode 100644 index eea15f59ca..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoRecyclerView.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.mogo.eagle.core.function.check.view; - -import android.content.Context; -import android.util.AttributeSet; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.recyclerview.widget.RecyclerView; - -import com.mogo.eagle.core.function.check.R; - -/** - * @author liujing - * @description 列表自适应高+限高 - * @since: 9/29/21 - */ -public class CheckInfoRecyclerView extends RecyclerView { - private final int maxHeight = (int) getContext().getResources().getDimension(R.dimen.check_height); - private final int maxWeight = (int) getContext().getResources().getDimension(R.dimen.check_width); - - public CheckInfoRecyclerView(@NonNull Context context) { - super(context); - } - - public CheckInfoRecyclerView(@NonNull Context context, @Nullable AttributeSet attrs) { - super(context, attrs); - } - - public CheckInfoRecyclerView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - } - - @Override - protected void onMeasure(int widthSpec, int heightSpec) { - super.onMeasure(widthSpec, heightSpec); - int limitHeight = getMeasuredHeight(); - if (getMeasuredHeight() > maxHeight) { - limitHeight = maxHeight; - } - setMeasuredDimension(maxWeight, limitHeight); - } -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckLinearLayout.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckLinearLayout.java deleted file mode 100644 index 8243f85519..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckLinearLayout.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.mogo.eagle.core.function.check.view; - -import android.content.Context; -import android.util.AttributeSet; - -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; - - -/** - * @author liujing - * @description 描述 - * @since: 7/27/21 - */ -class CheckLinearLayout extends LinearLayoutManager { - public CheckLinearLayout(Context context) { - super(context); - } - - public CheckLinearLayout(Context context, int orientation, boolean reverseLayout) { - super(context, orientation, reverseLayout); - } - - public CheckLinearLayout(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { - super(context, attrs, defStyleAttr, defStyleRes); - } - - @Override - public void onLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) { - try { - super.onLayoutChildren(recycler, state); - } catch (IndexOutOfBoundsException e) { - e.printStackTrace(); - } - } -} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/ImageViewClipBounds.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/ImageViewClipBounds.java deleted file mode 100644 index 1159b12ac6..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/ImageViewClipBounds.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.mogo.eagle.core.function.check.view; - -import android.content.Context; -import android.graphics.Canvas; -import android.graphics.Rect; -import android.util.AttributeSet; - -import androidx.appcompat.widget.AppCompatImageView; - -import java.util.Objects; - -/** - * @author donghongyu - * @date 2019-08-22 - */ -public class ImageViewClipBounds extends AppCompatImageView { - Rect mClipBounds = null; - - public ImageViewClipBounds(Context context) { - this(context, null); - } - - public ImageViewClipBounds(Context context, AttributeSet attrs) { - this(context, attrs, 0); - } - - public ImageViewClipBounds(Context context, AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - - } - - @Override - protected void onDraw(Canvas canvas) { - if (mClipBounds != null) { - // clip bounds ignore scroll - canvas.clipRect(mClipBounds); - } - super.onDraw(canvas); - } - - public void setClip(Rect clipBounds) { - if (Objects.equals(clipBounds, mClipBounds)) { - return; - } - if (clipBounds != null) { - if (mClipBounds == null) { - mClipBounds = new Rect(clipBounds); - } else { - mClipBounds.set(clipBounds); - } - } else { - mClipBounds = null; - } - invalidate(); - } -} - diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/auto.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/auto.png deleted file mode 100644 index 4e284d9e32..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/auto.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/camera_unusual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/camera_unusual.png deleted file mode 100644 index 7ff9dda063..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/camera_unusual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/camera_usual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/camera_usual.png deleted file mode 100644 index aff0548ccc..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/camera_usual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_button.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_button.xml deleted file mode 100644 index 10feb4527f..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_button.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_chage_color.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_chage_color.xml deleted file mode 100644 index 1cf9ce798b..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_chage_color.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_detail.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_detail.xml deleted file mode 100644 index 47b5427829..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_detail.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_dialog_back.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_dialog_back.xml deleted file mode 100644 index 5933d02ccf..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_dialog_back.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_item_left_shape.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_item_left_shape.xml deleted file mode 100644 index a92f70693f..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_item_left_shape.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_list_item_back.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_list_item_back.xml deleted file mode 100644 index c9bb7eb22b..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_list_item_back.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_little_btn.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_little_btn.xml deleted file mode 100644 index b584257e2d..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_little_btn.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - //填充 - - //描边 - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_little_btn_green.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_little_btn_green.xml deleted file mode 100644 index da99e04d76..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_little_btn_green.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - //填充 - - //描边 - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_progress.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_progress.xml deleted file mode 100644 index 0b87954cb8..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_progress.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_recycler_shape.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_recycler_shape.xml deleted file mode 100644 index e175afcdb2..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_recycler_shape.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_right.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_right.png deleted file mode 100644 index 7fdd87a843..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_right.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_scan_first.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_scan_first.png deleted file mode 100644 index b5b5db831d..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_scan_first.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_scan_second.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_scan_second.png deleted file mode 100644 index 2e82c94f54..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_scan_second.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_scan_tips.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_scan_tips.png deleted file mode 100644 index 10b640481b..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_scan_tips.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_tip_image.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_tip_image.png deleted file mode 100644 index acea2ccf6e..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_tip_image.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_top_item_left_shape.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_top_item_left_shape.xml deleted file mode 100644 index 13e18e78f0..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_top_item_left_shape.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_top_item_no_line_shape.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_top_item_no_line_shape.xml deleted file mode 100644 index 19da5954b6..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_top_item_no_line_shape.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_top_item_shape.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_top_item_shape.xml deleted file mode 100644 index 451ca5250a..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_top_item_shape.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_wrong.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_wrong.png deleted file mode 100644 index b9e28642d6..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_wrong.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/dark_clore_close.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/dark_clore_close.png deleted file mode 100644 index ba03e033d8..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/dark_clore_close.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/jiaojiguang_usual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/jiaojiguang_usual.png deleted file mode 100644 index 54329fe739..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/jiaojiguang_usual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/luyouqi_unusual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/luyouqi_unusual.png deleted file mode 100644 index 0177872fdb..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/luyouqi_unusual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/luyouqi_usual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/luyouqi_usual.png deleted file mode 100644 index a4fb0c4188..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/luyouqi_usual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/obu_unusual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/obu_unusual.png deleted file mode 100644 index 1a616ac4e4..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/obu_unusual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/oub_usual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/oub_usual.png deleted file mode 100644 index ebe65505fe..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/oub_usual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/pad_unusual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/pad_unusual.png deleted file mode 100644 index 1615d021e4..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/pad_unusual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/rtk_unusual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/rtk_unusual.png deleted file mode 100644 index 0f8112ef85..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/rtk_unusual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/rtk_usual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/rtk_usual.png deleted file mode 100644 index c4c7983c16..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/rtk_usual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/scan_tip_line.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/scan_tip_line.png deleted file mode 100644 index 569f5f61dc..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/scan_tip_line.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/yingyan.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/yingyan.png deleted file mode 100644 index e9b13a2082..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/yingyan.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/zhujiguang_unusual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/zhujiguang_unusual.png deleted file mode 100644 index bc0460b8c6..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/zhujiguang_unusual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/zhujiguang_usual.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/zhujiguang_usual.png deleted file mode 100644 index 12bc7f3f0f..0000000000 Binary files a/core/function-impl/mogo-core-function-check/src/main/res/drawable/zhujiguang_usual.png and /dev/null differ diff --git a/core/function-impl/mogo-core-function-check/src/main/res/layout/activity_check.xml b/core/function-impl/mogo-core-function-check/src/main/res/layout/activity_check.xml deleted file mode 100644 index 104d96fab1..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/layout/activity_check.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_dialog.xml b/core/function-impl/mogo-core-function-check/src/main/res/layout/check_dialog.xml deleted file mode 100644 index 9eb448c879..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_dialog.xml +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_hardware.xml b/core/function-impl/mogo-core-function-check/src/main/res/layout/check_hardware.xml deleted file mode 100644 index be4393e839..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_hardware.xml +++ /dev/null @@ -1,314 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_adapter.xml b/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_adapter.xml deleted file mode 100644 index e69ee94dc5..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_adapter.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_list.xml b/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_list.xml deleted file mode 100644 index 216cf5055f..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_list.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_title_item.xml b/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_title_item.xml deleted file mode 100644 index 353f35599d..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_title_item.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_list.xml b/core/function-impl/mogo-core-function-check/src/main/res/layout/check_list.xml deleted file mode 100644 index 6e250e33d5..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_list.xml +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_recycler_footer.xml b/core/function-impl/mogo-core-function-check/src/main/res/layout/check_recycler_footer.xml deleted file mode 100644 index 3ee8f46ef4..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_recycler_footer.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_titel.xml b/core/function-impl/mogo-core-function-check/src/main/res/layout/check_titel.xml deleted file mode 100644 index fbece2cb31..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/layout/check_titel.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/values-xhdpi-2560x1440/dimens.xml b/core/function-impl/mogo-core-function-check/src/main/res/values-xhdpi-2560x1440/dimens.xml deleted file mode 100644 index 14885e0769..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/values-xhdpi-2560x1440/dimens.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - 1900dp - 730dp - 30dp - 38dp - 133dp - 50dp - 50dp - 1452dp - 715dp - 32dp - 1078dp - 1660dp - 1162dp - 570dp - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/values/colors.xml b/core/function-impl/mogo-core-function-check/src/main/res/values/colors.xml deleted file mode 100644 index 14ad4dd1e6..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/values/colors.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - #1A1F40 - #4192FF - #F03232 - #99FA1F21 - #FF1F1F - #997AFF87 - #7AFF87 - #242B59 - #EE3132 - #666DA5 - #767FCD - #1C2149 - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/values/dimens.xml b/core/function-impl/mogo-core-function-check/src/main/res/values/dimens.xml deleted file mode 100644 index e4f1efc9ca..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/values/dimens.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - 1900dp - 730dp - 30dp - 38dp - 133dp - 50dp - 50dp - 1452dp - 715dp - 32dp - 1078dp - 1660dp - 1162dp - 570dp - diff --git a/core/function-impl/mogo-core-function-check/src/main/res/values/strings.xml b/core/function-impl/mogo-core-function-check/src/main/res/values/strings.xml deleted file mode 100644 index 73862c416f..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/values/strings.xml +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/values/styles.xml b/core/function-impl/mogo-core-function-check/src/main/res/values/styles.xml deleted file mode 100644 index ded721c47e..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/values/styles.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt index 1f8dfe50b6..3ba041473e 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt @@ -17,6 +17,7 @@ import com.zhjt.mogo_core_function_devatools.funcconfig.FuncConfigImpl import com.zhjt.mogo_core_function_devatools.logcatch.MogoLogCatchManager import com.zhjt.mogo_core_function_devatools.mofang.MoFangManager import com.zhjt.mogo_core_function_devatools.monitor.MonitorManager +import com.zhjt.mogo_core_function_devatools.report.IPCReportManager import com.zhjt.mogo_core_function_devatools.scene.SceneManager.Companion.sceneManager import com.zhjt.mogo_core_function_devatools.status.* import com.zhjt.mogo_core_function_devatools.trace.TraceManager.Companion.traceManager @@ -42,6 +43,8 @@ class DevaToolsProvider : IDevaToolsProvider { traceManager.init(mContext!!) bizConfigCenter.init(mContext!!) FuncConfigImpl.init() + //开启工控机监控节点上报服务 + IPCReportManager.INSTANCE.initServer() MogoLogCatchManager.init(mContext!!) MoFangManager.INSTANCE.init(mContext!!) } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/ext/Extentions.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/Extentions.kt similarity index 100% rename from core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/ext/Extentions.kt rename to core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/Extentions.kt diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/IFeedbackPresenter.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/IFeedbackPresenter.kt deleted file mode 100644 index 31dfbea827..0000000000 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/IFeedbackPresenter.kt +++ /dev/null @@ -1,14 +0,0 @@ -package com.zhjt.mogo_core_function_devatools.feedback.biz - -import com.zhjt.mogo_core_function_devatools.badcase.repository.net.api.entity.UploadResult -import com.zhjt.mogo_core_function_devatools.feedback.biz.bean.Feedback - - -internal interface IFeedbackPresenter { - - suspend fun loadFeedBacks(): List - - suspend fun getBadCaseTaskId(): Int - - suspend fun upload(params: Map): UploadResult? -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/bean/Feedback.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/bean/Feedback.kt deleted file mode 100644 index 7ee31743d4..0000000000 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/bean/Feedback.kt +++ /dev/null @@ -1,28 +0,0 @@ -package com.zhjt.mogo_core_function_devatools.feedback.biz.bean - -import com.zhjt.mogo_core_function_devatools.badcase.repository.net.api.entity.BadCaseResponse.Reason - -internal sealed class Feedback { - - class BadCase(var remark: Remark, var reasons: List): Feedback() { - - override fun equals(other: Any?): Boolean { - if (this === other) return true - if (javaClass != other?.javaClass) return false - other as BadCase - if (reasons != other.reasons) return false - return true - } - - override fun hashCode(): Int { - return reasons.hashCode() - } - } -} - -/** - * 记录文本编辑框的状态 - * @param text: 文件编辑框中输入的文字 - * @param cursorPos: 光标位置 - */ -data class Remark(var text: CharSequence = "", var cursorPos: Int = 0) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/diff/FeedbackDiffCallback.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/diff/FeedbackDiffCallback.kt deleted file mode 100644 index 71da2796f2..0000000000 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/diff/FeedbackDiffCallback.kt +++ /dev/null @@ -1,25 +0,0 @@ -package com.zhjt.mogo_core_function_devatools.feedback.biz.diff - -import androidx.recyclerview.widget.DiffUtil -import com.zhjt.mogo_core_function_devatools.feedback.biz.bean.Feedback -import com.zhjt.mogo_core_function_devatools.feedback.biz.bean.Feedback.BadCase - -internal class FeedbackDiffCallback(private val oldData: List?, private val newData: List?): DiffUtil.Callback() { - - override fun getOldListSize(): Int { - return oldData?.size ?: 0 - } - - override fun getNewListSize(): Int = newData?.size ?: 0 - - override fun areItemsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean = oldData?.takeIf { it.size > oldItemPosition }?.equals(newData?.takeIf { it.size > newItemPosition }) ?: false - - override fun areContentsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean { - val oldItem = oldData?.get(oldItemPosition) - val newItem = newData?.get(newItemPosition) - if (oldItem == null || newItem == null) { - return false - } - return oldItem == newItem - } -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/impl/FeedbackPresenter.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/impl/FeedbackPresenter.kt deleted file mode 100644 index e6d89e9168..0000000000 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/biz/impl/FeedbackPresenter.kt +++ /dev/null @@ -1,28 +0,0 @@ -package com.zhjt.mogo_core_function_devatools.feedback.biz.impl - -import com.zhjt.mogo_core_function_devatools.badcase.biz.BadCasePresenter -import com.zhjt.mogo_core_function_devatools.badcase.repository.net.api.entity.UploadResult -import com.zhjt.mogo_core_function_devatools.feedback.biz.IFeedbackPresenter -import com.zhjt.mogo_core_function_devatools.feedback.biz.bean.Feedback -import com.zhjt.mogo_core_function_devatools.feedback.biz.bean.Feedback.BadCase -import com.zhjt.mogo_core_function_devatools.feedback.biz.bean.Remark - -internal class FeedbackPresenter: IFeedbackPresenter { - - private val badCase by lazy { - BadCasePresenter() - } - - override suspend fun loadFeedBacks(): List = mutableListOf().also { - //添加BadCase数据 - it += BadCase(Remark(), badCase.loadBadCases(false)) - } - - override suspend fun getBadCaseTaskId(): Int { - return badCase.getTaskId() - } - - override suspend fun upload(params: Map): UploadResult? { - return badCase.upload(params) - } -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/callback/IFeedbackCallback.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/callback/IFeedbackCallback.kt deleted file mode 100644 index f6d2d00b70..0000000000 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/callback/IFeedbackCallback.kt +++ /dev/null @@ -1,28 +0,0 @@ -package com.zhjt.mogo_core_function_devatools.feedback.callback - -import android.view.View -import android.widget.TextView -import com.zhjt.mogo_core_function_devatools.badcase.repository.net.api.entity.BadCaseResponse.Reason - -internal interface IFeedbackCallback { - - /** - * 点击关闭弹窗按钮时回调 - */ - fun onClose(v: View) - - /** - * BadCase某一条目被点击了 - */ - fun onBadCaseItemClicked(reason: Reason) - - /** - * 点击开始录制 - */ - fun onStartBadCaseRecord(record: TextView) - - /** - * 点击停止录制 - */ - fun onStopBadCaseRecord(record: TextView) -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/report/IPCReportManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/report/IPCReportManager.kt similarity index 99% rename from core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/report/IPCReportManager.kt rename to core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/report/IPCReportManager.kt index ec5ad32669..224a8627f5 100644 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/report/IPCReportManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/report/IPCReportManager.kt @@ -1,4 +1,4 @@ -package com.mogo.eagle.core.function.report +package com.zhjt.mogo_core_function_devatools.report import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.msgbox.MsgBoxBean diff --git a/core/function-impl/mogo-core-function-hmi/build.gradle b/core/function-impl/mogo-core-function-hmi/build.gradle index 07369f27d3..42cb9141f9 100644 --- a/core/function-impl/mogo-core-function-hmi/build.gradle +++ b/core/function-impl/mogo-core-function-hmi/build.gradle @@ -81,10 +81,8 @@ dependencies { if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { api rootProject.ext.dependencies.mogoaicloudservicesdk api rootProject.ext.dependencies.mogocommons - api rootProject.ext.dependencies.mogoservice api rootProject.ext.dependencies.mogomap api rootProject.ext.dependencies.crashreportupgrade -// api rootProject.ext.dependencies.crashreportbugly api rootProject.ext.dependencies.mogo_core_res api rootProject.ext.dependencies.mogo_core_data @@ -94,7 +92,6 @@ dependencies { api rootProject.ext.dependencies.mogo_core_function_notice api rootProject.ext.dependencies.mogo_core_function_bindingcar api rootProject.ext.dependencies.mogo_core_function_autopilot - api rootProject.ext.dependencies.mogo_core_function_check api rootProject.ext.dependencies.mogo_core_function_map api rootProject.ext.dependencies.mogo_core_function_v2x api rootProject.ext.dependencies.mogo_core_function_monitoring @@ -104,12 +101,10 @@ dependencies { api rootProject.ext.dependencies.mogo_core_function_msgbox implementation project(':libraries:map-usbcamera') - implementation project(':libraries:mogo-adas-other') } else { api project(':foudations:mogo-aicloud-services-sdk') api project(':foudations:mogo-commons') api project(':test:crashreport-upgrade') -// api project(':test:crashreport-bugly') api project(':test:crashreport-apmbyte') api project(':core:mogo-core-res') @@ -117,13 +112,11 @@ dependencies { api project(':core:mogo-core-utils') api project(':core:function-impl:mogo-core-function-obu-mogo') api project(':core:function-impl:mogo-core-function-autopilot') - api project(':core:function-impl:mogo-core-function-check') api project(':core:function-impl:mogo-core-function-map') api project(':core:function-impl:mogo-core-function-notice') api project(':core:function-impl:mogo-core-function-v2x') api project(':core:function-impl:mogo-core-function-monitoring') api project(':core:function-impl:mogo-core-function-devatools') - api project(':core:function-impl:mogo-core-function-carcorder') api project(':core:function-impl:mogo-core-function-dispatch') api project(':core:function-impl:mogo-core-function-chat') api project(':core:function-impl:mogo-core-function-bindingcar') diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt index 40e917caae..6e3fd483a0 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt @@ -58,7 +58,6 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager import com.mogo.eagle.core.function.call.bindingcar.CallerBindingcarManager -import com.mogo.eagle.core.function.call.check.CallerCheckManager import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.function.call.map.* @@ -504,12 +503,6 @@ class MoGoHmiFragment : MvpFragment(), if (toolsView == null) { toolsView = AutoPilotAndCheckView(it) toolsView!!.setClickListener(object : AutoPilotAndCheckView.ClickListener { - override fun go2CheckPage() { - // 启动检测页面 - CallerCheckManager.startCheckActivity(context) - dismissToolsFloatView() - } - override fun onClose(v: View) { dismissToolsFloatView() } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/AutoPilotAndCheckView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/AutoPilotAndCheckView.kt index cd1f71ef66..50332a5599 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/AutoPilotAndCheckView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/AutoPilotAndCheckView.kt @@ -22,7 +22,6 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarConfigListenerManager import com.mogo.eagle.core.function.call.hmi.CallerHmiManager -import com.mogo.eagle.core.function.call.hmi.CallerHmiManager.showTurnLight import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.function.hmi.ui.utils.KeyBoardUtil import com.mogo.eagle.core.function.msgbox.MsgBoxConfig @@ -100,9 +99,6 @@ class AutoPilotAndCheckView @JvmOverloads constructor( sopLayout.setOnClickListener { clickListener?.showSOPSettingView() } - viewCheckStatus.setOnClickListener { - clickListener?.go2CheckPage() - } ivDebugPanel.setOnClickListener { clickListener?.showDebugPanelView() @@ -221,7 +217,6 @@ class AutoPilotAndCheckView @JvmOverloads constructor( } interface ClickListener { - fun go2CheckPage() fun onClose(v: View) fun showDebugPanelView() fun showFeedbackView() diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/CheckStatusView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/CheckStatusView.kt deleted file mode 100644 index 740d3f9fb6..0000000000 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/CheckStatusView.kt +++ /dev/null @@ -1,63 +0,0 @@ -package com.mogo.eagle.core.function.hmi.ui.widget - -import android.content.Context -import android.util.AttributeSet -import android.view.LayoutInflater -import android.view.View -import androidx.constraintlayout.widget.ConstraintLayout -import com.mogo.eagle.core.function.api.check.IMogoCheckListener -import com.mogo.eagle.core.function.call.check.CallerCheckManager -import com.mogo.eagle.core.function.hmi.R -import kotlinx.android.synthetic.main.view_check_status.view.* - -/** - *@author xiaoyuzhou - *@date 2021/8/6 12:25 下午 - */ -class CheckStatusView @JvmOverloads constructor( - context: Context, - attrs: AttributeSet? = null, - defStyleAttr: Int = 0 -) : ConstraintLayout(context, attrs, defStyleAttr), IMogoCheckListener { - private val TAG = "CheckStatusView" - - init { - LayoutInflater.from(context).inflate(R.layout.view_check_status, this, true) - } - - private fun showErrorIcon() { - errorTipImage.visibility = View.VISIBLE - } - - private fun dismissErrorIcon() { - errorTipImage.visibility = View.GONE - } - - override fun updateMonitoringStatus(state: Int?) { - if (state == 1) { - dismissErrorIcon() - } else { - showErrorIcon() - } - } - - - override fun onAttachedToWindow() { - super.onAttachedToWindow() - //车辆监控 - if (isInEditMode) { - return - } - CallerCheckManager.registerVehicleMonitoringListener(TAG, this) - } - - override fun onDetachedFromWindow() { - super.onDetachedFromWindow() - //车辆监控 - if (isInEditMode) { - return - } - CallerCheckManager.unregisterListener(TAG) - } - -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java index 3ae36559da..3eb7aa981e 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java @@ -244,8 +244,6 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { MogoModulePaths.addBaseModule(new MogoModule(MogoServicePaths.PATH_AI_DISPATCH, "IDispatchProvider")); // V2X 模块 MogoModulePaths.addBaseModule(new MogoModule(MogoServicePaths.PATH_V2X_MODULE, "V2XProvider")); - // 自动驾驶系统检测模块 - MogoModulePaths.addBaseModule(new MogoModule(MogoServicePaths.PATH_CHECK, "CheckProvider")); // 绑定车辆 MogoModulePaths.addModuleFunctionServer(new MogoModule(MogoServicePaths.PATH_BINDING_CAR, "IMoGoBindingcarProvider")); diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_auto_pilot_check.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_auto_pilot_check.xml index e1b518dd22..ec1ceea5e6 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_auto_pilot_check.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_auto_pilot_check.xml @@ -47,29 +47,6 @@ app:layout_constraintStart_toStartOf="@+id/tv_check_title" app:layout_constraintTop_toBottomOf="@+id/v_second_group"> - - - - - - - - - - - - - - - - - - - - - - - * HMI 调用者管理,这里对外及其他模块提供功能的调用,用啥写啥,不要过度设计,不允许直接将Provider暴露出去 - */ -public class CallerCheckManager extends CallerBase { - - private static ICheckProvider getCheckProvider() { - return getApiInstance(ICheckProvider.class, MogoServicePaths.PATH_CHECK); - } - - - /** - * 注册车辆监控变化监听 - * - * @param module 监听模块 - * @param listener 回调监听对象 - */ - public static void registerVehicleMonitoringListener(String module, IMogoCheckListener listener) { - getCheckProvider().registerVehicleMonitoringListener(module, listener); - } - - /** - * 注销车辆监控变化监听 - * - * @param module - */ - public static void unregisterListener(String module) { - getCheckProvider().unregisterListener(module); - } - - /** - * 启动检测模块 - */ - public static void startCheckActivity(Context context) { - getCheckProvider().startCheckActivity(context); - } - - /** - * 根据监测指标修改主页检测按钮 - */ - public static void updateMonitoringStatus(String module, Integer state) { - getCheckProvider().updateMonitoringStatus(module, state); - } - - /** - * 指标监测 - */ - public static void checkMonitor(Context context) { - getCheckProvider().checkMonitor(context); - } -} diff --git a/gradle.properties b/gradle.properties index d44611a1f6..144daf8b34 100644 --- a/gradle.properties +++ b/gradle.properties @@ -98,7 +98,6 @@ versionName=2.13.0 ################# 新架构模块Maven版本管理 ################# MOGO_CORE_FUNCTION_AUTOPILOT_VERSION=0.0.58.10 -MOGO_CORE_FUNCTION_CHECK_VERSION=0.0.58.10 MOGO_CORE_FUNCTION_HMI_VERSION=0.0.58.10 MOGO_CORE_FUNCTION_MAIN_VERSION=0.0.58.10 MOGO_CORE_FUNCTION_MAP_VERSION=0.0.58.10 @@ -121,9 +120,6 @@ MOGO_COMMONS_VERSION=2.1.16.10 MAP_AMAP_VERSION=2.1.16.10 MOGO_MAP_VERSION=2.1.16.10 MOGO_MAP_API_VERSION=2.1.16.10 -MOGO_SERVICE_VERSION=2.1.16.10 -MOGO_SERVICE_API_VERSION=2.1.16.10 -MOGO_MODULE_COMMON_VERSION=2.1.16.10 MOGO_MODULE_MAP_VERSION=2.1.16.10 MOGO_MODULE_SERVICE_VERSION=2.1.16.10 MOGO_MODULE_V2X_VERSION=2.1.16.10 diff --git a/modules.txt b/modules.txt index 3abd5a1039..5626cd45be 100644 --- a/modules.txt +++ b/modules.txt @@ -19,7 +19,6 @@ :test:crashreport-noop :test:crashreport-upgrade :core:function-impl:mogo-core-function-obu-mogo -:core:function-impl:mogo-core-function-check :core:function-impl:mogo-core-function-autopilot :core:function-impl:mogo-core-function-hmi :core:function-impl:mogo-core-function-map diff --git a/settings.gradle b/settings.gradle index 099fd6337c..4d963cdb36 100644 --- a/settings.gradle +++ b/settings.gradle @@ -32,16 +32,12 @@ include ':core:function-impl:mogo-core-function-map' include ':core:function-impl:mogo-core-function-v2x' // 自研OBU业务 include ':core:function-impl:mogo-core-function-obu-mogo' -// 车辆及自动驾驶状态检测模块 -include ':core:function-impl:mogo-core-function-check' // 云公告相关的业务,UI写到HMI,这里只处理数据及功能逻辑 include ':core:function-impl:mogo-core-function-notice' // 自动驾驶相关能力,控制自动驾驶,获取自动驾驶识别信息,自车感知预警等 include ':core:function-impl:mogo-core-function-autopilot' // 行车超视距服务,路测摄像头、前车摄像头 include ':core:function-impl:mogo-core-function-monitoring' -// USB 行车记录仪 -include ':core:function-impl:mogo-core-function-carcorder' // 调度业务 include ':core:function-impl:mogo-core-function-dispatch' // 绑定车机