diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index b3a159f443..9e8bf0c826 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -41,6 +41,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index a38e3c40c6..bf748dadb0 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -612,6 +612,7 @@ dependencies {
implementation project(':modules:mogo-module-extensions')
implementation project(':modules:mogo-module-map')
implementation project(':modules:mogo-module-smp')
+ implementation project(':modules:mogo-module-adas')
implementation project(':foudations:httpdns-mogo')
}
diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java
index dd46fdd897..9eca1700a2 100644
--- a/app/src/main/java/com/mogo/launcher/MogoApplication.java
+++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java
@@ -102,6 +102,8 @@ public class MogoApplication extends AbsMogoApplication {
// 小地图模块
MogoModulePaths.addModule(new MogoModule(MogoServicePaths.PATH_SMALL_MAP, "IMogoSmallMapProvider"));
+ // ADAS模块
+ MogoModulePaths.addModule(new MogoModule(MogoServicePaths.PATH_ADAS, "AdasProvider"));
//前方碰撞预警
MogoModulePaths.addModule(new MogoModule(MogoServicePaths.PATH_V2X_FRONT_CRASH_WARNING, "IV2XManagerProvider"));
diff --git a/config.gradle b/config.gradle
index 52674386cc..6a81146063 100644
--- a/config.gradle
+++ b/config.gradle
@@ -113,6 +113,7 @@ ext {
// V2X
moduleV2x : "com.mogo.module:module-v2x:${MOGO_MODULE_V2X_VERSION}",
moduleSmallMap : "com.mogo.module:module-small-map:${MOGO_MODULES_SMALL_MAP}",
+ moduleADAS : "com.mogo.module:mogo-module-adas:${MOGO_MODULES_ADAS}",
modulemedia : "com.mogo.module:module-media:${MOGO_MODULE_MEDIA_VERSION}",
modulesearch : "com.mogo.module:module-search:${MOGO_MODULE_SEARCH_VERSION}",
// push
diff --git a/gradle.properties b/gradle.properties
index c263dde2c6..be6fdf2923 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -131,6 +131,7 @@ TTS_NOOP_VERSION=2.0.12
MAP_CUSTOM_VERSION=2.0.12
#MOGO_MODULES_MVISION_VERSION=2.0.12
MOGO_MODULES_SMALL_MAP=1.0.0
+MOGO_MODULES_ADAS=1.0.0
# httpdns
HTTPDNS_TENCENT_VERSION = 2.0.12
HTTPDNS_MOGO_VERSION=2.0.12
diff --git a/modules/mogo-module-adas/.gitignore b/modules/mogo-module-adas/.gitignore
new file mode 100644
index 0000000000..42afabfd2a
--- /dev/null
+++ b/modules/mogo-module-adas/.gitignore
@@ -0,0 +1 @@
+/build
\ No newline at end of file
diff --git a/modules/mogo-module-adas/build.gradle b/modules/mogo-module-adas/build.gradle
new file mode 100644
index 0000000000..79248e29cd
--- /dev/null
+++ b/modules/mogo-module-adas/build.gradle
@@ -0,0 +1,62 @@
+apply plugin: 'com.android.library'
+apply plugin: '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")
+
+ javaCompileOptions {
+ annotationProcessorOptions {
+ arguments = [AROUTER_MODULE_NAME: project.getName()]
+ }
+ }
+
+ testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
+ consumerProguardFiles 'consumer-rules.pro'
+ }
+
+ 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 rootProject.ext.dependencies.androidxappcompat
+ implementation rootProject.ext.dependencies.androidxconstraintlayout
+ implementation rootProject.ext.dependencies.arouter
+
+
+ annotationProcessor rootProject.ext.dependencies.aroutercompiler
+
+ // 现有的ADAS的通讯SDK,需要将里面的东西融合到我们项目中
+ compileOnly rootProject.ext.dependencies.adasapi
+
+ annotationProcessor rootProject.ext.dependencies.aroutercompiler
+ if (Boolean.valueOf(RELEASE)) {
+ api rootProject.ext.dependencies.mogoutils
+ api rootProject.ext.dependencies.mogocommons
+ api rootProject.ext.dependencies.mogoserviceapi
+ implementation rootProject.ext.dependencies.modulecommon
+ } else {
+ api project(":foudations:mogo-utils")
+ api project(":foudations:mogo-commons")
+ api project(':services:mogo-service-api')
+ implementation project(':modules:mogo-module-common')
+ }
+}
+
+apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString()
\ No newline at end of file
diff --git a/modules/mogo-module-adas/consumer-rules.pro b/modules/mogo-module-adas/consumer-rules.pro
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/modules/mogo-module-adas/gradle.properties b/modules/mogo-module-adas/gradle.properties
new file mode 100644
index 0000000000..1c2efc6a15
--- /dev/null
+++ b/modules/mogo-module-adas/gradle.properties
@@ -0,0 +1,3 @@
+GROUP=com.mogo.module
+POM_ARTIFACT_ID=mogo-module-adas
+VERSION_CODE=1
diff --git a/modules/mogo-module-adas/proguard-rules.pro b/modules/mogo-module-adas/proguard-rules.pro
new file mode 100644
index 0000000000..481bb43481
--- /dev/null
+++ b/modules/mogo-module-adas/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/modules/mogo-module-adas/src/androidTest/java/com/amap/navi/mogo_module_adas/ExampleInstrumentedTest.java b/modules/mogo-module-adas/src/androidTest/java/com/amap/navi/mogo_module_adas/ExampleInstrumentedTest.java
new file mode 100644
index 0000000000..b6f9063bd3
--- /dev/null
+++ b/modules/mogo-module-adas/src/androidTest/java/com/amap/navi/mogo_module_adas/ExampleInstrumentedTest.java
@@ -0,0 +1,26 @@
+package com.amap.navi.mogo_module_adas;
+
+import android.content.Context;
+
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import static org.junit.Assert.*;
+
+/**
+ * Instrumented test, which will execute on an Android device.
+ *
+ * @see Testing documentation
+ */
+@RunWith(AndroidJUnit4.class)
+public class ExampleInstrumentedTest {
+ @Test
+ public void useAppContext() {
+ // Context of the app under test.
+ Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
+ assertEquals("com.amap.navi.mogo_module_adas.test", appContext.getPackageName());
+ }
+}
\ No newline at end of file
diff --git a/modules/mogo-module-adas/src/main/AndroidManifest.xml b/modules/mogo-module-adas/src/main/AndroidManifest.xml
new file mode 100644
index 0000000000..592a5f5be0
--- /dev/null
+++ b/modules/mogo-module-adas/src/main/AndroidManifest.xml
@@ -0,0 +1,5 @@
+
+
+
+
\ No newline at end of file
diff --git a/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasProvider.java b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasProvider.java
new file mode 100644
index 0000000000..dc3c629b41
--- /dev/null
+++ b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasProvider.java
@@ -0,0 +1,25 @@
+package com.mogo.module.adas;
+
+import android.content.Context;
+import android.util.Log;
+
+import com.alibaba.android.arouter.facade.annotation.Route;
+import com.alibaba.android.arouter.facade.template.IProvider;
+import com.mogo.service.MogoServicePaths;
+
+/**
+ * ADAS 模块
+ *
+ * @author
+ * @date 4/21/21 3:39 PM
+ */
+@Route(path = MogoServicePaths.PATH_ADAS)
+public class AdasProvider implements IProvider {
+ private final String TAG = "AdasProvider";
+
+ @Override
+ public void init(Context context) {
+ Log.d(TAG, "初始化 ADAS 模块");
+
+ }
+}
diff --git a/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/占位文件可删除.java b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/占位文件可删除.java
new file mode 100644
index 0000000000..5d869e103a
--- /dev/null
+++ b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/占位文件可删除.java
@@ -0,0 +1,30 @@
+package com.mogo.module.adas;
+
+/**
+ * @author donghongyu
+ * @date 4/21/21 2:52 PM
+ */
+public class 占位文件可删除 {
+ /** TODO 本模块提供能力范围
+ * 1、与工控机数据交互,具体能力与 @宋克难 沟通
+ * a、建立车机与工控机的数据通路
+ * b、保证数据通路的稳定性
+ *
+ * 2、暴露API接口共上层业务使用
+ * a、上层业务可主动订阅、取消订阅数据
+ * b、自动驾驶控制下发
+ * b、自动驾驶状态获取
+ * c、自动驾驶规划路径下发
+ * e、ADAS识别报警
+ *
+ * 3、项目中已经使用到的ADAS数据的业务如下,可参考下面业务层使用情况来封装本模块的API
+ * AdasControlCommandParameter
+ * AdasLogWriter
+ * AdasObjectUtils
+ * CarModelInfoNetApiServices
+ * LogWriter
+ * MogoADASController
+ * OnAdasListenerAdapter
+ */
+
+}
diff --git a/modules/mogo-module-adas/src/test/java/com/amap/navi/mogo_module_adas/ExampleUnitTest.java b/modules/mogo-module-adas/src/test/java/com/amap/navi/mogo_module_adas/ExampleUnitTest.java
new file mode 100644
index 0000000000..9cf84459a3
--- /dev/null
+++ b/modules/mogo-module-adas/src/test/java/com/amap/navi/mogo_module_adas/ExampleUnitTest.java
@@ -0,0 +1,17 @@
+package com.amap.navi.mogo_module_adas;
+
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+/**
+ * Example local unit test, which will execute on the development machine (host).
+ *
+ * @see Testing documentation
+ */
+public class ExampleUnitTest {
+ @Test
+ public void addition_isCorrect() {
+ assertEquals(4, 2 + 2);
+ }
+}
\ No newline at end of file
diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java b/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java
index 3bb2845be5..70ddff1453 100644
--- a/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java
+++ b/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java
@@ -311,6 +311,11 @@ public class MogoServicePaths {
*/
public static final String PATH_SMALL_MAP = "/small_map/api";
+ /**
+ * ADAS 模块
+ */
+ public static final String PATH_ADAS = "/adas/api";
+
/*
*前方碰撞预警 未碰撞
* */
diff --git a/settings.gradle b/settings.gradle
index 15dea58ada..5de8179d63 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1,3 +1,4 @@
+include ':modules:mogo-module-adas'
include ':foudations:mogo-aicloud-services-sdk'
include ':foudations:mogo-aicloud-services-apk'
include ':foudations:httpdns-mogo'