diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index c57ee88c6d..7f9f262a61 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -22,6 +22,7 @@
+
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 0acef90ee0..a8f4a9ee57 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -33,6 +33,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 5fbe086d08..ac01eaba74 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -223,6 +223,7 @@ dependencies {
implementation project(':core:function-impl:mogo-core-function-map')
implementation project(':core:function-impl:mogo-core-function-notice')
implementation project(':core:function-impl:mogo-core-function-v2x')
+ implementation project(':core:function-impl:mogo-core-function-monitoring')
}
diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java
index 842bb5d61d..a45eb1ee0a 100644
--- a/app/src/main/java/com/mogo/launcher/MogoApplication.java
+++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java
@@ -292,6 +292,8 @@ public class MogoApplication extends AbsMogoApplication {
MogoModulePaths.addModuleFunctionServer(new MogoModule(MogoServicePaths.PATH_AUTO_PILOT, "IMoGoAutoPilotProvider"));
// OBU 模块
MogoModulePaths.addModuleFunctionServer(new MogoModule(MogoServicePaths.PATH_V2X_OBU_MOGO, "IMoGoObuProvider"));
+ // 超视距,路测、行车记录仪监控
+ MogoModulePaths.addModuleFunctionServer(new MogoModule(MogoServicePaths.PATH_AI_MONITORING, "IMoGoMonitoringProvider"));
// 小地图模块
MogoModulePaths.addModuleFunction(new MogoModule(MogoServicePaths.PATH_SMALL_MAP, "IMogoSmallMapProvider"));
// widgets 模块
diff --git a/core/function-impl/mogo-core-function-monitoring/.gitignore b/core/function-impl/mogo-core-function-monitoring/.gitignore
new file mode 100644
index 0000000000..42afabfd2a
--- /dev/null
+++ b/core/function-impl/mogo-core-function-monitoring/.gitignore
@@ -0,0 +1 @@
+/build
\ No newline at end of file
diff --git a/core/function-impl/mogo-core-function-monitoring/build.gradle b/core/function-impl/mogo-core-function-monitoring/build.gradle
new file mode 100644
index 0000000000..ffe487bcb3
--- /dev/null
+++ b/core/function-impl/mogo-core-function-monitoring/build.gradle
@@ -0,0 +1,65 @@
+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.androidxccorektx
+ implementation rootProject.ext.dependencies.androidxappcompat
+ implementation rootProject.ext.dependencies.androidxconstraintlayout
+ implementation rootProject.ext.dependencies.arouter
+ implementation rootProject.ext.dependencies.rxandroid
+
+ kapt rootProject.ext.dependencies.aroutercompiler
+
+ if (Boolean.valueOf(RELEASE)) {
+
+ } else {
+
+ implementation project(':core:mogo-core-utils')
+ implementation project(':core:mogo-core-function-api')
+ implementation project(':core:mogo-core-res')
+ implementation project(':core:mogo-core-data')
+ }
+}
+
+apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString()
diff --git a/core/function-impl/mogo-core-function-monitoring/consumer-rules.pro b/core/function-impl/mogo-core-function-monitoring/consumer-rules.pro
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/core/function-impl/mogo-core-function-monitoring/gradle.properties b/core/function-impl/mogo-core-function-monitoring/gradle.properties
new file mode 100644
index 0000000000..de3e7b3fbe
--- /dev/null
+++ b/core/function-impl/mogo-core-function-monitoring/gradle.properties
@@ -0,0 +1,3 @@
+GROUP=com.mogo.eagle.core
+POM_ARTIFACT_ID=function-notice
+VERSION_CODE=1
diff --git a/core/function-impl/mogo-core-function-monitoring/proguard-rules.pro b/core/function-impl/mogo-core-function-monitoring/proguard-rules.pro
new file mode 100644
index 0000000000..481bb43481
--- /dev/null
+++ b/core/function-impl/mogo-core-function-monitoring/proguard-rules.pro
@@ -0,0 +1,21 @@
+# 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-monitoring/src/main/AndroidManifest.xml b/core/function-impl/mogo-core-function-monitoring/src/main/AndroidManifest.xml
new file mode 100644
index 0000000000..0352a7c214
--- /dev/null
+++ b/core/function-impl/mogo-core-function-monitoring/src/main/AndroidManifest.xml
@@ -0,0 +1,5 @@
+
+
+
+
\ No newline at end of file
diff --git a/core/function-impl/mogo-core-function-monitoring/src/main/java/com/mogo/eagle/core/function/monitoring/MoGoMonitoringProvider.java b/core/function-impl/mogo-core-function-monitoring/src/main/java/com/mogo/eagle/core/function/monitoring/MoGoMonitoringProvider.java
new file mode 100644
index 0000000000..3b1e2d4fa0
--- /dev/null
+++ b/core/function-impl/mogo-core-function-monitoring/src/main/java/com/mogo/eagle/core/function/monitoring/MoGoMonitoringProvider.java
@@ -0,0 +1,36 @@
+package com.mogo.eagle.core.function.monitoring;
+
+import android.content.Context;
+
+import androidx.annotation.NonNull;
+
+import com.alibaba.android.arouter.facade.annotation.Route;
+import com.mogo.eagle.core.data.constants.MogoServicePaths;
+import com.mogo.eagle.core.function.api.monitoring.IMoGoMonitoringProvider;
+import com.mogo.eagle.core.utilcode.mogo.logger.Logger;
+
+/**
+ * @author xiaoyuzhou
+ * @date 2021/10/29 11:09 上午
+ */
+@Route(path = MogoServicePaths.PATH_AI_MONITORING)
+public class MoGoMonitoringProvider implements IMoGoMonitoringProvider {
+ public String TAG = "MoGoMonitoringProvider";
+
+ @NonNull
+ @Override
+ public String getFunctionName() {
+ return TAG;
+ }
+
+ @Override
+ public void init(Context context) {
+ Logger.d(TAG, "初始化……");
+ }
+
+ @Override
+ public void onDestroy() {
+
+ }
+
+}
diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/constants/MogoServicePaths.java b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/constants/MogoServicePaths.java
index c44ef7d437..6139a3b512 100644
--- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/constants/MogoServicePaths.java
+++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/constants/MogoServicePaths.java
@@ -367,5 +367,12 @@ public class MogoServicePaths {
*/
@Keep
@Deprecated
- public static final String PATH_AI_NOTICE = "/ai/notice";
+ public static final String PATH_AI_NOTICE = "/notice/api";
+
+ /**
+ * 云公告 模块
+ */
+ @Keep
+ @Deprecated
+ public static final String PATH_AI_MONITORING = "/monitoring/api";
}
diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/monitoring/IMoGoMonitoringProvider.java b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/monitoring/IMoGoMonitoringProvider.java
new file mode 100644
index 0000000000..b2269157a7
--- /dev/null
+++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/monitoring/IMoGoMonitoringProvider.java
@@ -0,0 +1,12 @@
+package com.mogo.eagle.core.function.api.monitoring;
+
+import com.mogo.eagle.core.function.api.base.IMoGoFunctionServerProvider;
+
+/**
+ * @author xiaoyuzhou
+ * @date 2021/10/29 10:35 上午
+ * 超视距功能,路测摄像头,前车摄像头监控
+ */
+public interface IMoGoMonitoringProvider extends IMoGoFunctionServerProvider {
+
+}
diff --git a/settings.gradle b/settings.gradle
index e1f3f13472..4f28ea579d 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -33,6 +33,8 @@ include ':core:function-impl:mogo-core-function-check'
include ':core:function-impl:mogo-core-function-notice'
// 自动驾驶相关能力,控制自动驾驶,获取自动驾驶识别信息,自车感知预警等
include ':core:function-impl:mogo-core-function-autopilot'
+// 行车超视距服务,路测摄像头、前车摄像头
+include ':core:function-impl:mogo-core-function-monitoring'
// 服务