Merge branch 'dev_arch_opt_3.0' of gitlab.zhidaoauto.com:zhjt/AndroidApp/MoGoEagleEye into dev_arch_opt_3.0

This commit is contained in:
lixiaopeng
2023-02-09 16:27:27 +08:00
14 changed files with 120 additions and 30 deletions

View File

@@ -4,7 +4,7 @@ project.android.productFlavors {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "armeabi-v7a", "arm64-v8a"
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo
@@ -18,7 +18,12 @@ project.android.productFlavors {
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
//高德地图鉴权信息
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchBus",ACTIVITY_ROOT:true]
manifestPlaceholders = [
AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue,
CHANNEL_VALUE : "fPadLenovoOchBus",
ACTIVITY_ROOT : true,
SCREEN_ORIENTATION: "landscape"
]
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'

View File

@@ -4,7 +4,7 @@ project.android.productFlavors {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "armeabi-v7a", "arm64-v8a"
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo
@@ -17,8 +17,18 @@ project.android.productFlavors {
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
//高德地图鉴权信息
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchTaxi",ACTIVITY_ROOT:true]
// 配置AndroidManifest.xml中用到的参数
manifestPlaceholders = [
// 高德地图鉴权信息
AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue,
// BUGLY_APP_CHANNEL
CHANNEL_VALUE : "fPadLenovoOchTaxi",
// 在启动的时候把Task给清空
ACTIVITY_ROOT : true,
// Activity的朝向
SCREEN_ORIENTATION: "landscape"
]
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'

View File

@@ -4,7 +4,7 @@ project.android.productFlavors {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "armeabi-v7a", "arm64-v8a"
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo
@@ -15,8 +15,17 @@ project.android.productFlavors {
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
// 高德地图鉴权信息
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovo",ACTIVITY_ROOT:true]
// 配置AndroidManifest.xml中用到的参数
manifestPlaceholders = [
// 高德地图鉴权信息
AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue,
// BUGLY_APP_CHANNEL
CHANNEL_VALUE : "fPadLenovo",
// 在启动的时候把Task给清空
ACTIVITY_ROOT : true,
// Activity的朝向
SCREEN_ORIENTATION: "landscape"
]
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'

View File

@@ -4,7 +4,7 @@ project.android.productFlavors {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "armeabi-v7a", "arm64-v8a"
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo
@@ -17,8 +17,18 @@ project.android.productFlavors {
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
//高德地图鉴权信息
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchBus",ACTIVITY_ROOT:true]
// 配置AndroidManifest.xml中用到的参数
manifestPlaceholders = [
// 高德地图鉴权信息
AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue,
// BUGLY_APP_CHANNEL
CHANNEL_VALUE : "fPadLenovoOchBus",
// 在启动的时候把Task给清空
ACTIVITY_ROOT : true,
// Activity的朝向
SCREEN_ORIENTATION: "landscape"
]
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'

View File

@@ -4,7 +4,7 @@ project.android.productFlavors {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "armeabi-v7a", "arm64-v8a"
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo
@@ -15,8 +15,18 @@ project.android.productFlavors {
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
//高德地图鉴权信息
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchBusPassenger",ACTIVITY_ROOT:true]
// 配置AndroidManifest.xml中用到的参数
manifestPlaceholders = [
// 高德地图鉴权信息
AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue,
// BUGLY_APP_CHANNEL
CHANNEL_VALUE : "fPadLenovoOchBusPassenger",
// 在启动的时候把Task给清空
ACTIVITY_ROOT : true,
// Activity的朝向
SCREEN_ORIENTATION: "landscape"
]
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'

View File

@@ -4,7 +4,7 @@ project.android.productFlavors {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "armeabi-v7a", "arm64-v8a"
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo
@@ -17,8 +17,18 @@ project.android.productFlavors {
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
//高德地图鉴权信息
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchSweeper",ACTIVITY_ROOT:true]
// 配置AndroidManifest.xml中用到的参数
manifestPlaceholders = [
// 高德地图鉴权信息
AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue,
// BUGLY_APP_CHANNEL
CHANNEL_VALUE : "fPadLenovoOchSweeper",
// 在启动的时候把Task给清空
ACTIVITY_ROOT : true,
// Activity的朝向
SCREEN_ORIENTATION: "landscape"
]
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'

View File

@@ -5,7 +5,7 @@ project.android.productFlavors {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "armeabi-v7a", "arm64-v8a"
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo
@@ -18,8 +18,18 @@ project.android.productFlavors {
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
//高德地图鉴权信息
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchTaxi",ACTIVITY_ROOT:true]
// 配置AndroidManifest.xml中用到的参数
manifestPlaceholders = [
// 高德地图鉴权信息
AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue,
// BUGLY_APP_CHANNEL
CHANNEL_VALUE : "fPadLenovoOchTaxi",
// 在启动的时候把Task给清空
ACTIVITY_ROOT : true,
// Activity的朝向
SCREEN_ORIENTATION: "landscape"
]
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'

View File

@@ -4,7 +4,7 @@ project.android.productFlavors {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "armeabi-v7a", "arm64-v8a"
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo
@@ -17,8 +17,18 @@ project.android.productFlavors {
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
//高德地图鉴权信息
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchTaxiPassenger",ACTIVITY_ROOT:false]
// 配置AndroidManifest.xml中用到的参数
manifestPlaceholders = [
// 高德地图鉴权信息
AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue,
// BUGLY_APP_CHANNEL
CHANNEL_VALUE : "fPadLenovoOchTaxiPassenger",
// 在启动的时候把Task给清空
ACTIVITY_ROOT : false,
// Activity的朝向
SCREEN_ORIENTATION: "landscape"
]
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'

View File

@@ -24,3 +24,4 @@
- mogo-core-res程序中涉及到的图片及布局资源同一管理并通过设置不同的目录指定是那个模块的资源这里只存放公共资源图片布局动画等
- mogo-core-utils基于成熟的工具类开源框架下沉的这里可以增添针对我们业务上的一些工具类
- MultiDisplayUtils :多屏幕管理工具

View File

@@ -0,0 +1,16 @@
## 多屏幕场景
```java
// 在第二个屏幕启动页面
MultiDisplayUtils.INSTANCE.startActWithSecond(
context,
VideoAdAtc.class);
```
```java
// 在指定屏幕启动页面
MultiDisplayUtils.INSTANCE.startActWithProcess(
1,
context,
VideoAdAtc.class);
```

View File

@@ -42,7 +42,7 @@
android:launchMode="singleTop"
android:resizeableActivity="false"
android:resumeWhilePausing="true"
android:screenOrientation="landscape"
android:screenOrientation="${SCREEN_ORIENTATION}"
android:stateNotNeeded="true"
android:theme="@style/Main"
android:windowSoftInputMode="adjustPan|stateHidden">
@@ -67,7 +67,6 @@
<activity
android:name="com.mogo.eagle.core.function.main.PassengerLauncherActivity"
android:clearTaskOnLaunch="${ACTIVITY_ROOT}"
android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation|screenSize|smallestScreenSize"
android:enabled="true"
android:exported="true"
@@ -99,7 +98,6 @@
<activity
android:name="com.mogo.eagle.core.function.main.VideoAdAtc"
android:clearTaskOnLaunch="${ACTIVITY_ROOT}"
android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation|screenSize|smallestScreenSize"
android:enabled="true"
android:exported="true"

View File

@@ -45,7 +45,7 @@ import java.util.Timer;
import java.util.TimerTask;
/**
* 针对作为Launcher的情况做个性化操作
* 针对作为Launcher的情况做个性化操作 TODO 测试用的,可删除
*
* @author tongchenfei
*/

View File

@@ -7,7 +7,7 @@ import com.mogo.eagle.core.utilcode.util.BarUtils
import com.mogo.eagle.core.widget.TextureVideoView
/**
* 视频广告
* 视频广告 TODO 测试用的,可删除
*/
class VideoAdAtc : AppCompatActivity() {

View File

@@ -27,14 +27,14 @@ object MultiDisplayUtils {
fun getMultiDisplay(context: Context): Array<out Display> {
// 多次创建副屏 则副屏的id都是增加的所以不一定是1这里还是获取一下
val displayManager =
context.getSystemService(AppCompatActivity.DISPLAY_SERVICE) as DisplayManager
context.getSystemService(AppCompatActivity.DISPLAY_SERVICE) as DisplayManager
return displayManager.displays
}
/**
* 在指定ID的屏幕打开Activity当前应用的当前进程
* @param context
* @param launchDisplayId 指定屏幕ID
* @param activity 要在第二个屏幕启动的页面
*/
fun startActWithSecond(context: Context, activity: Class<*>) {
val launchDisplayId: Int
@@ -60,6 +60,7 @@ object MultiDisplayUtils {
* 在指定ID的屏幕打开Activity当前应用的当前进程
* @param context
* @param launchDisplayId 指定屏幕ID
* @param activity 要在副屏幕启动的页面
*/
fun startActWithProcess(context: Context, launchDisplayId: Int, activity: Class<*>) {
// 要加上Intent.FLAG_ACTIVITY_NEW_TASK