From 97904796620c68512e25aa7a0e21bba42a4e37d0 Mon Sep 17 00:00:00 2001 From: lianglihui Date: Mon, 27 Sep 2021 13:12:23 +0800 Subject: [PATCH 01/36] =?UTF-8?q?eagle=20=20=E5=B0=8F=E5=9C=B0=E5=9B=BE?= =?UTF-8?q?=E5=AF=BC=E8=88=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config.gradle | 9 ++++-- .../function/smp/SmallMapDirectionView.java | 28 +++++++++++++++++-- .../core/function/smp/SmallMapFragment.java | 21 +++++++++++++- 3 files changed, 52 insertions(+), 6 deletions(-) diff --git a/config.gradle b/config.gradle index d8da67cc7e..0bbc715145 100644 --- a/config.gradle +++ b/config.gradle @@ -34,9 +34,12 @@ ext { androidxjunit : "androidx.test.ext:junit:1.1.2", androidxespressocore : "androidx.test.espresso:espresso-core:3.3.0", // 地图 - amapnavi3dmap : "com.amap.api:navi-3dmap:8.0.1_3dmap8.0.1", - amapsearch : "com.amap.api:search:7.9.0", - amaplocation : "com.amap.api:location:5.5.0", +// amapnavi3dmap : "com.amap.api:navi-3dmap:8.0.1_3dmap8.0.1", +// amapsearch : "com.amap.api:search:7.9.0", +// amaplocation : "com.amap.api:location:5.5.0", + amapnavi3dmap : "com.amap.api:navi-3dmap:7.2.0_3dmap7.2.0", + amapsearch : "com.amap.api:search:7.1.0", + amaplocation : "com.amap.api:location:5.3.1", // json 转换 gson : "com.google.code.gson:gson:2.8.4", // 内存泄漏检测 diff --git a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapDirectionView.java b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapDirectionView.java index ddbc4248f4..cb8cdb1c3b 100644 --- a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapDirectionView.java +++ b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapDirectionView.java @@ -3,6 +3,7 @@ package com.mogo.eagle.core.function.smp; import android.content.Context; import android.graphics.Color; import android.location.Location; +import android.os.Bundle; import android.util.AttributeSet; import android.util.Log; import android.view.LayoutInflater; @@ -87,8 +88,8 @@ public class SmallMapDirectionView View smpView = LayoutInflater.from(context).inflate(R.layout.module_small_map_view, this); mAMapNaviView = (TextureMapView)smpView.findViewById(R.id.aMapNaviView); - rlSmallMapBorder = findViewById(R.id.rlSmallMapBorder); - rlSmallMapBorder.addView(mAMapNaviView); +// rlSmallMapBorder = findViewById(R.id.rlSmallMapBorder); +// rlSmallMapBorder.addView(mAMapNaviView); initAMapView(); @@ -280,4 +281,27 @@ public class SmallMapDirectionView } } + public void onCreateView(Bundle savedInstanceState) { + if(mAMapNaviView != null){ + mAMapNaviView.onCreate(savedInstanceState); + } + } + + public void onResume() { + if(mAMapNaviView != null){ + mAMapNaviView.onResume(); + } + } + + public void onPause() { + if(mAMapNaviView != null){ + mAMapNaviView.onPause(); + } + } + + public void onDestroy() { + if(mAMapNaviView != null){ + mAMapNaviView.onDestroy(); + } + } } diff --git a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java index ec91113186..9f0358aaec 100644 --- a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java +++ b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java @@ -11,7 +11,6 @@ import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; import com.mogo.eagle.core.data.map.MogoLatLng; -import com.mogo.eagle.core.function.smp.R; import java.util.List; @@ -34,6 +33,7 @@ public class SmallMapFragment extends Fragment { if (mRootView == null) { mRootView = inflater.inflate(R.layout.module_small_map_fragment, container, false); mSmallMapDirectionView = mRootView.findViewById(R.id.smallMapDirectionView); + mSmallMapDirectionView.onCreateView(savedInstanceState); } else { ViewGroup viewGroup = (ViewGroup) mRootView.getParent(); if (viewGroup != null) { @@ -55,4 +55,23 @@ public class SmallMapFragment extends Fragment { } } + @Override + public void onResume() { + super.onResume(); + mSmallMapDirectionView.onResume(); + } + + @Override + public void onPause() { + super.onPause(); + mSmallMapDirectionView.onPause(); + + } + + @Override + public void onDestroy() { + super.onDestroy(); + mSmallMapDirectionView.onDestroy(); + + } } From ed392c51d7a8537bf9b5eb63f661919b113d0150 Mon Sep 17 00:00:00 2001 From: lianglihui Date: Mon, 27 Sep 2021 15:05:08 +0800 Subject: [PATCH 02/36] =?UTF-8?q?eagle=20=20=E4=BF=AE=E5=A4=8D=E5=85=A8?= =?UTF-8?q?=E9=93=BE=E8=B7=AF=E7=9B=91=E6=8E=A7=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{values-xhdpi-2560x1600 => values-xhdpi-2560x1440}/dimens.xml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename core/function-impl/mogo-core-function-check/src/main/res/{values-xhdpi-2560x1600 => values-xhdpi-2560x1440}/dimens.xml (100%) diff --git a/core/function-impl/mogo-core-function-check/src/main/res/values-xhdpi-2560x1600/dimens.xml b/core/function-impl/mogo-core-function-check/src/main/res/values-xhdpi-2560x1440/dimens.xml similarity index 100% rename from core/function-impl/mogo-core-function-check/src/main/res/values-xhdpi-2560x1600/dimens.xml rename to core/function-impl/mogo-core-function-check/src/main/res/values-xhdpi-2560x1440/dimens.xml From 8be16fd0b6ca7680fc9b641e6c6669853346d8f1 Mon Sep 17 00:00:00 2001 From: lianglihui Date: Mon, 27 Sep 2021 15:17:06 +0800 Subject: [PATCH 03/36] =?UTF-8?q?eagle=20=20=E8=B0=83=E6=95=B4checkactivit?= =?UTF-8?q?y=20loadDetail=E8=B0=83=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/eagle/core/function/check/view/CheckActivity.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) 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 index ac5e8a79e8..f134d733f9 100644 --- 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 @@ -82,6 +82,12 @@ public class CheckActivity extends AppCompatActivity { initView(); } + @Override + protected void onStart() { + super.onStart(); + loadDetail(context); + } + /** * 列表View初始化 */ @@ -100,7 +106,6 @@ public class CheckActivity extends AppCompatActivity { finish(); }); animation(); - loadDetail(context); mRecyclerView = findViewById(R.id.check_list); CheckLinearLayout linearLayoutManager = new CheckLinearLayout(this, CheckLinearLayout.VERTICAL, false); From 9611eaeab59848e7a95ca7b2fa8da4301f5f45e4 Mon Sep 17 00:00:00 2001 From: lianglihui Date: Mon, 27 Sep 2021 16:30:50 +0800 Subject: [PATCH 04/36] =?UTF-8?q?eagle=20=20=E8=B0=83=E6=95=B4checkactivit?= =?UTF-8?q?y=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../check/VehicleMonitoringManager.java | 123 +++++++++++++-- .../function/check/net/CheckResultData.java | 7 +- .../function/check/view/CheckActivity.java | 146 ++++++++++-------- 3 files changed, 196 insertions(+), 80 deletions(-) diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java index 8fe80c047e..e79c382afa 100644 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java +++ b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java @@ -1,19 +1,38 @@ package com.mogo.eagle.core.function.check; import android.content.Context; +import android.content.Intent; +import android.content.pm.PackageInfo; +import android.content.pm.PackageManager; +import android.util.Log; import com.alibaba.android.arouter.facade.annotation.Route; +import com.elegant.network.ParamsBuilder; +import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.network.SubscribeImpl; +import com.mogo.eagle.core.function.call.check.CallerCheckManager; +import com.mogo.eagle.core.function.check.net.CheckApiServiceFactory; +import com.mogo.eagle.core.function.check.net.CheckResultData; +import com.mogo.eagle.core.function.check.view.CheckDialog; +import com.mogo.eagle.core.utilcode.util.ActivityUtils; +import com.mogo.eagle.core.utilcode.util.AppUtils; import com.mogo.eagle.core.utilcode.util.LogUtils; import com.mogo.eagle.core.function.api.check.IMogoCheckListener; import com.mogo.eagle.core.function.check.view.CheckActivity; +import com.mogo.eagle.core.utilcode.util.ThreadUtils; +import com.mogo.module.service.receiver.MogoReceiver; import com.mogo.service.MogoServicePaths; import com.mogo.eagle.core.function.api.check.ICheckProvider; +import com.mogo.utils.network.RequestOptions; import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.CopyOnWriteArrayList; +import io.reactivex.android.schedulers.AndroidSchedulers; +import io.reactivex.schedulers.Schedulers; + /** * 鹰眼系统、自动驾驶系统 检测模块 @@ -56,25 +75,111 @@ public class VehicleMonitoringManager implements ICheckProvider { @Override public void startCheckActivity(Context context) { - if (context != null) { - CheckActivity.start(context); - } +// if (context != null) { +// CheckActivity.start(context); +// } + Intent starter = new Intent(context, CheckActivity.class); + starter.putExtra("CheckResultData",checkResultData); + starter.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + context.startActivity(starter); } @Override public void showCheckDialog(Context context) { - if (context != null) { - CheckActivity.showDialog(context); - } +// if (context != null) { +// CheckActivity.showDialog(context); +// } + showDialog(context); } @Override public boolean checkMonitor(Context context) { - if (context != null) { - return CheckActivity.checkMonitor(context); - } +// if (context != null) { +// return CheckActivity.checkMonitor(context); +// } +// .append("sn", MoGoAiCloudClientConfig.getInstance().getSn()) + + final Map params = ParamsBuilder.of(false) + .append("sn", "QWE12E1211231R1212123") + .build(); + CheckApiServiceFactory.getDataApiService(context).loadMonitorDetail(params) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new SubscribeImpl(RequestOptions.create(context)) { + @Override + public void onSuccess(CheckResultData o) { + super.onSuccess(o); + Log.d("checkMonitor", "车辆自检结果是:" + o.toString()); + checkResultData = o; + if (((CheckResultData) o).getData().getVehicle().getState() == 1) { + CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); + } else { + CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); + showDialog(context); + } +// ThreadUtils.runOnUiThread(new Runnable() { +// @Override +// public void run() { +//// if (o != null && mCheckAdapter != null) { +//// mCheckAdapter.mCheckResultData = o; +//// mCheckAdapter.notifyDataSetChanged(); +//// } +// +// if (((CheckResultData) o).getData().getVehicle().getState() == 1) { +// CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); +// } else { +// CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); +// showDialog(context); +// } +// } +// }); + } + + @Override + public void onError(String message, int code) { + super.onError(message, code); +// Log.d(TAG, "车辆自检失败,请稍后重试" + "==" + message + String.valueOf(code)); + } + }); + return false; } + CheckResultData checkResultData; + + CheckDialog dialog; + /** + * 指标异常弹框 + */ + public void showDialog(Context context) { + try { + if (AppUtils.isAppRunning(getPackageName(context)) && + (ActivityUtils.getTopActivity() instanceof CheckActivity == false)) { + if (dialog != null) { + dialog.cancel(); + } + dialog = new CheckDialog(context, true); + dialog.show(); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + /** + * @param context + * @return 当前应用的版本名称 + */ + public static synchronized String getPackageName(Context context) { + try { + PackageManager packageManager = context.getPackageManager(); + PackageInfo packageInfo = packageManager.getPackageInfo( + context.getPackageName(), 0); +// Log.d(TAG, "包名:" + packageInfo.packageName); + return packageInfo.packageName; + } catch (Exception e) { + e.printStackTrace(); + } + return "com.mogo.launcher.f"; + } @Override public void updateMonitoringStatus(String module, boolean hasError) { 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 index 8ff75e0433..f2a6234a5a 100644 --- 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 @@ -2,6 +2,7 @@ package com.mogo.eagle.core.function.check.net; import com.mogo.commons.data.BaseData; +import java.io.Serializable; import java.util.ArrayList; import java.util.List; @@ -38,7 +39,7 @@ public class CheckResultData extends BaseData { '}'; } - public static class Data { + public static class Data implements Serializable{ private Vehicle vehicle; private List soft; private List devices; @@ -97,7 +98,7 @@ public class CheckResultData extends BaseData { } } - public static class Vehicle { + public static class Vehicle implements Serializable { private String id; private String sn; private String vin; @@ -236,7 +237,7 @@ public class CheckResultData extends BaseData { } } - public static class CheckListItem { + public static class CheckListItem implements Serializable{ private String name; private String stateValue; private List 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 index f134d733f9..de77632403 100644 --- 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 @@ -85,7 +85,17 @@ public class CheckActivity extends AppCompatActivity { @Override protected void onStart() { super.onStart(); - loadDetail(context); +// loadDetail(context); + Intent intent = getIntent(); + if (intent != null){ + CheckResultData checkResultData = (CheckResultData) intent.getSerializableExtra("CheckResultData"); + if (checkResultData != null&& mCheckAdapter != null){ + mCheckAdapter.mCheckResultData = checkResultData; + mCheckAdapter.notifyDataSetChanged(); + } + }else{ + + } } /** @@ -118,57 +128,57 @@ public class CheckActivity extends AppCompatActivity { /** * 自动驾驶状态下指标监测 */ - public static boolean checkMonitor(Context context) { - Log.d(TAG, "checkMonitor"); - loadDetail(context); - return true; - } +// public static boolean checkMonitor(Context context) { +// Log.d(TAG, "checkMonitor"); +// loadDetail(context); +// return true; +// } - //网络请求,获取自车检测结果(工控机上报云端) - public static void loadDetail(Context context) { - final Map params = ParamsBuilder.of(false) - .append("sn", MoGoAiCloudClientConfig.getInstance().getSn()) - .build(); - CheckApiServiceFactory.getDataApiService(context).loadMonitorDetail(params) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new SubscribeImpl(RequestOptions.create(context)) { - @Override - public void onSuccess(CheckResultData o) { - super.onSuccess(o); - Log.d(TAG, "车辆自检结果是:" + o.toString()); - ThreadUtils.runOnUiThread(new Runnable() { - @Override - public void run() { - if (o != null && mCheckAdapter != null) { - mCheckAdapter.mCheckResultData = o; - mCheckAdapter.notifyDataSetChanged(); - } - - if (((CheckResultData) o).getData().getVehicle().getState() == 1) { - CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); - } else { - CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); - showDialog(context); - } - } - }); - } - - @Override - public void onError(String message, int code) { - super.onError(message, code); - Log.d(TAG, "车辆自检失败,请稍后重试" + "==" + message + String.valueOf(code)); - } - }); - - } +// //网络请求,获取自车检测结果(工控机上报云端) +// public static void loadDetail(Context context) { +// final Map params = ParamsBuilder.of(false) +// .append("sn", MoGoAiCloudClientConfig.getInstance().getSn()) +// .build(); +// CheckApiServiceFactory.getDataApiService(context).loadMonitorDetail(params) +// .subscribeOn(Schedulers.io()) +// .observeOn(AndroidSchedulers.mainThread()) +// .subscribe(new SubscribeImpl(RequestOptions.create(context)) { +// @Override +// public void onSuccess(CheckResultData o) { +// super.onSuccess(o); +// Log.d(TAG, "车辆自检结果是:" + o.toString()); +// ThreadUtils.runOnUiThread(new Runnable() { +// @Override +// public void run() { +// if (o != null && mCheckAdapter != null) { +// mCheckAdapter.mCheckResultData = o; +// mCheckAdapter.notifyDataSetChanged(); +// } +// +// if (((CheckResultData) o).getData().getVehicle().getState() == 1) { +// CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); +// } else { +// CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); +// showDialog(context); +// } +// } +// }); +// } +// +// @Override +// public void onError(String message, int code) { +// super.onError(message, code); +// Log.d(TAG, "车辆自检失败,请稍后重试" + "==" + message + String.valueOf(code)); +// } +// }); +// +// } /** * @param context * @return 当前应用的版本名称 */ - public static synchronized String getPackageName(Context context) { + public synchronized String getPackageName(Context context) { try { PackageManager packageManager = context.getPackageManager(); PackageInfo packageInfo = packageManager.getPackageInfo( @@ -269,29 +279,29 @@ public class CheckActivity extends AppCompatActivity { } } - public static void start(Context context) { - Intent starter = new Intent(context, CheckActivity.class); - starter.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - context.startActivity(starter); - } +// public static void start(Context context) { +// Intent starter = new Intent(context, CheckActivity.class); +// starter.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); +// context.startActivity(starter); +// } - /** - * 指标异常弹框 - */ - public static void showDialog(Context context) { - try { - if (AppUtils.isAppRunning(getPackageName(context)) && - (ActivityUtils.getTopActivity() instanceof CheckActivity == false)) { - if (dialog != null) { - dialog.cancel(); - } - dialog = new CheckDialog(context, true); - dialog.show(); - } - } catch (Exception e) { - e.printStackTrace(); - } - } +// /** +// * 指标异常弹框 +// */ +// public static void showDialog(Context context) { +// try { +// if (AppUtils.isAppRunning(getPackageName(context)) && +// (ActivityUtils.getTopActivity() instanceof CheckActivity == false)) { +// if (dialog != null) { +// dialog.cancel(); +// } +// dialog = new CheckDialog(context, true); +// dialog.show(); +// } +// } catch (Exception e) { +// e.printStackTrace(); +// } +// } @Override protected void onDestroy() { From 3a0991b29bb218621d7a0e99fa3530818cc71cd9 Mon Sep 17 00:00:00 2001 From: liujing Date: Mon, 27 Sep 2021 19:54:37 +0800 Subject: [PATCH 05/36] =?UTF-8?q?=E5=90=8E=E5=8F=B0=E7=9B=91=E5=90=AC,?= =?UTF-8?q?=E5=BA=94=E7=94=A8=E5=90=8E=E5=8F=B0=E5=90=8E=E4=B8=8D=E5=81=9A?= =?UTF-8?q?=E5=BC=B9=E6=A1=86=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../check/VehicleMonitoringManager.java | 11 ++- .../mogo/utils/ActivityLifecycleManager.java | 83 ++++++++++++------- .../main/launcher/MainLauncherActivity.java | 3 + 3 files changed, 62 insertions(+), 35 deletions(-) diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java index e79c382afa..83996d1387 100644 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java +++ b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java @@ -23,6 +23,7 @@ import com.mogo.eagle.core.utilcode.util.ThreadUtils; import com.mogo.module.service.receiver.MogoReceiver; import com.mogo.service.MogoServicePaths; import com.mogo.eagle.core.function.api.check.ICheckProvider; +import com.mogo.utils.ActivityLifecycleManager; import com.mogo.utils.network.RequestOptions; import java.util.List; @@ -79,7 +80,7 @@ public class VehicleMonitoringManager implements ICheckProvider { // CheckActivity.start(context); // } Intent starter = new Intent(context, CheckActivity.class); - starter.putExtra("CheckResultData",checkResultData); + starter.putExtra("CheckResultData", checkResultData); starter.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(starter); } @@ -144,16 +145,19 @@ public class VehicleMonitoringManager implements ICheckProvider { return false; } + CheckResultData checkResultData; CheckDialog dialog; + /** * 指标异常弹框 */ public void showDialog(Context context) { try { - if (AppUtils.isAppRunning(getPackageName(context)) && - (ActivityUtils.getTopActivity() instanceof CheckActivity == false)) { + if (ActivityLifecycleManager.getInstance().isAppActive() == true && + AppUtils.isAppRunning(getPackageName(context)) && + ActivityUtils.getTopActivity() instanceof CheckActivity == false) { if (dialog != null) { dialog.cancel(); } @@ -164,6 +168,7 @@ public class VehicleMonitoringManager implements ICheckProvider { e.printStackTrace(); } } + /** * @param context * @return 当前应用的版本名称 diff --git a/foudations/mogo-utils/src/main/java/com/mogo/utils/ActivityLifecycleManager.java b/foudations/mogo-utils/src/main/java/com/mogo/utils/ActivityLifecycleManager.java index 5297a356e0..603c370191 100644 --- a/foudations/mogo-utils/src/main/java/com/mogo/utils/ActivityLifecycleManager.java +++ b/foudations/mogo-utils/src/main/java/com/mogo/utils/ActivityLifecycleManager.java @@ -17,14 +17,14 @@ public class ActivityLifecycleManager { /** * 当前出于 Start 状态的 Activity */ - private ArrayList< Activity > mStartedActivities = new ArrayList<>(); + private ArrayList mStartedActivities = new ArrayList<>(); private ArrayList mAppStateListeners = new ArrayList<>(); /** * 当前存活的 Activity */ - private HashMap< Activity, ActivityTrace> mAliveActivities = new HashMap<>(); + private HashMap mAliveActivities = new HashMap<>(); /** * App 是否出于前台 @@ -44,10 +44,10 @@ public class ActivityLifecycleManager { private DefActivityLifecycleCallbacks mInnerActivityListener = new DefActivityLifecycleCallbacks() { @Override - public void onActivityStarted( Activity activity) { + public void onActivityStarted(Activity activity) { if (mStartedActivities.isEmpty()) { mIsAppActive = true; - notifyAppStateChanged( AppStateListener.ACTIVE); + notifyAppStateChanged(AppStateListener.ACTIVE); } mStartedActivities.add(activity); @@ -58,11 +58,11 @@ public class ActivityLifecycleManager { } @Override - public void onActivityStopped( Activity activity) { + public void onActivityStopped(Activity activity) { mStartedActivities.remove(activity); if (mStartedActivities.isEmpty()) { mIsAppActive = false; - notifyAppStateChanged( AppStateListener.INACTIVE); + notifyAppStateChanged(AppStateListener.INACTIVE); } ActivityTrace trace = mAliveActivities.get(activity); @@ -72,7 +72,7 @@ public class ActivityLifecycleManager { } @Override - public void onActivityResumed( Activity activity) { + public void onActivityResumed(Activity activity) { mCurrentResumedActivity = activity; ActivityTrace trace = mAliveActivities.get(activity); if (trace != null) { @@ -81,7 +81,7 @@ public class ActivityLifecycleManager { } @Override - public void onActivityPaused( Activity activity) { + public void onActivityPaused(Activity activity) { ActivityTrace trace = mAliveActivities.get(activity); if (trace != null) { trace.pauseCnt++; @@ -89,33 +89,34 @@ public class ActivityLifecycleManager { } @Override - public void onActivityCreated( Activity activity, Bundle savedInstanceState) { + public void onActivityCreated(Activity activity, Bundle savedInstanceState) { mAliveActivities.put(activity, new ActivityTrace(activity)); } @Override - public void onActivityDestroyed( Activity activity) { + public void onActivityDestroyed(Activity activity) { mAliveActivities.remove(activity); } }; - private ActivityLifecycleManager() {} + private ActivityLifecycleManager() { + } public static ActivityLifecycleManager getInstance() { return SingletonHolder.INSTANCE; } - private static class SingletonHolder{ + private static class SingletonHolder { private static final ActivityLifecycleManager INSTANCE = new ActivityLifecycleManager(); } - public void start( Application application) { + public void start(Application application) { this.mApplication = application; registerInnerActivityListener(); registerHomeKeyEventReceiver(); } - public void stop(){ + public void stop() { unregisterActivityLifecycleCallbacks(mInnerActivityListener); unregisterHomeKeyEventReceiver(); } @@ -125,12 +126,12 @@ public class ActivityLifecycleManager { * * @param callbacks Activity 生命周期的回调 */ - public void registerActivityLifecycleCallbacks( Application.ActivityLifecycleCallbacks callbacks) { + public void registerActivityLifecycleCallbacks(Application.ActivityLifecycleCallbacks callbacks) { if (mApplication == null) { return; } - if ( Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) { + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) { return; } @@ -142,12 +143,12 @@ public class ActivityLifecycleManager { * * @param callbacks Activity 生命周期的回调 */ - public void unregisterActivityLifecycleCallbacks( Application.ActivityLifecycleCallbacks callbacks) { + public void unregisterActivityLifecycleCallbacks(Application.ActivityLifecycleCallbacks callbacks) { if (mApplication == null) { return; } - if ( Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) { + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) { return; } @@ -161,7 +162,11 @@ public class ActivityLifecycleManager { return mIsAppActive; } - public Activity getCurrentActivity(){ + public void setAppActive(boolean appActive) { + mIsAppActive = appActive; + } + + public Activity getCurrentActivity() { return mCurrentResumedActivity; } @@ -248,7 +253,7 @@ public class ActivityLifecycleManager { private void registerHomeKeyEventReceiver() { android.content.IntentFilter filter = new android.content.IntentFilter(); - filter.addAction( Intent.ACTION_CLOSE_SYSTEM_DIALOGS); + filter.addAction(Intent.ACTION_CLOSE_SYSTEM_DIALOGS); mHomeKeyEventReceiver = new HomeKeyEventReceiver(); mApplication.registerReceiver(mHomeKeyEventReceiver, filter); @@ -267,31 +272,45 @@ public class ActivityLifecycleManager { } } - @TargetApi( Build.VERSION_CODES.ICE_CREAM_SANDWICH) + @TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH) public static abstract class DefActivityLifecycleCallbacks implements Application.ActivityLifecycleCallbacks { @Override - public void onActivityCreated( Activity activity, Bundle savedInstanceState) {} + public void onActivityCreated(Activity activity, Bundle savedInstanceState) { + } + @Override - public void onActivityStarted( Activity activity) {} + public void onActivityStarted(Activity activity) { + } + @Override - public void onActivityResumed( Activity activity) {} + public void onActivityResumed(Activity activity) { + } + @Override - public void onActivityPaused( Activity activity) {} + public void onActivityPaused(Activity activity) { + } + @Override - public void onActivityStopped( Activity activity) {} + public void onActivityStopped(Activity activity) { + } + @Override - public void onActivitySaveInstanceState( Activity activity, Bundle outState) {} + public void onActivitySaveInstanceState(Activity activity, Bundle outState) { + } + @Override - public void onActivityDestroyed( Activity activity) {} + public void onActivityDestroyed(Activity activity) { + } } public interface AppStateListener { int INACTIVE = 0; int ACTIVE = 1; + /** * App 状态的回调 */ - void onStateChanged( int state ); + void onStateChanged(int state); } @@ -312,7 +331,7 @@ public class ActivityLifecycleManager { int startCnt; int stopCnt; - ActivityTrace( Activity activity) { + ActivityTrace(Activity activity) { this.activity = activity; } } @@ -322,9 +341,9 @@ public class ActivityLifecycleManager { private final String SYSTEM_DIALOG_REASON_HOME_KEY = "homekey"; @Override - public void onReceive( Context context, Intent intent) { + public void onReceive(Context context, Intent intent) { String action = intent.getAction(); - if ( Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(action)) { + if (Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(action)) { String reason = intent.getStringExtra(SYSTEM_DIALOG_REASON_KEY); if (reason != null && reason.equals(SYSTEM_DIALOG_REASON_HOME_KEY)) { onHomeKeyPressed(); diff --git a/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java b/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java index 30310154e1..cc4965c322 100644 --- a/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java +++ b/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java @@ -31,6 +31,7 @@ import com.mogo.service.intent.IMogoIntentListener; import com.mogo.eagle.core.function.api.map.smp.IMogoSmallMapProvider; import com.mogo.service.statusmanager.StatusDescriptor; import com.mogo.service.v2x.IV2XWarningListener; +import com.mogo.utils.ActivityLifecycleManager; import com.mogo.utils.logger.Logger; /** @@ -90,6 +91,7 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis protected void onStart() { super.onStart(); getApis().getIntentManagerApi().registerIntentListener(Intent.ACTION_CLOSE_SYSTEM_DIALOGS, this); + ActivityLifecycleManager.getInstance().setAppActive(true); } @Override @@ -102,6 +104,7 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis protected void onStop() { super.onStop(); getApis().getIntentManagerApi().unregisterIntentListener(Intent.ACTION_CLOSE_SYSTEM_DIALOGS, this); + ActivityLifecycleManager.getInstance().setAppActive(false); } @Override From b5b2cb4ae75848f272fb083a2a24126706ac4e52 Mon Sep 17 00:00:00 2001 From: liujing Date: Tue, 28 Sep 2021 09:06:33 +0800 Subject: [PATCH 06/36] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8F=96=E6=B6=88?= =?UTF-8?q?=E5=BC=B9=E6=A1=86=E7=9A=84=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/function/check/VehicleMonitoringManager.java | 2 +- .../mogo/eagle/core/function/check/view/CheckDialog.java | 8 ++++---- .../core/function/check/view/CheckInfoListDialog.java | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java index 83996d1387..5265d6111b 100644 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java +++ b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java @@ -159,7 +159,7 @@ public class VehicleMonitoringManager implements ICheckProvider { AppUtils.isAppRunning(getPackageName(context)) && ActivityUtils.getTopActivity() instanceof CheckActivity == false) { if (dialog != null) { - dialog.cancel(); + dialog.dismiss(); } dialog = new CheckDialog(context, true); dialog.show(); 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 index cb597417dd..0282509807 100644 --- 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 @@ -40,11 +40,11 @@ public class CheckDialog extends BaseFloatDialog { setContentView(R.layout.check_dialog); cancel = findViewById(R.id.cancel_button); cancel.setOnClickListener(v -> { - cancel(); + dismiss(); }); checkDetail = findViewById(R.id.check_detail); checkDetail.setOnClickListener(v -> { - cancel(); + dismiss(); if (mContext != null) { CallerCheckManager.startCheckActivity(mContext); } @@ -63,11 +63,11 @@ public class CheckDialog extends BaseFloatDialog { public void cancel() { - super.dismiss(); + } @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/CheckInfoListDialog.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoListDialog.java index c4a119bad9..219fdced51 100644 --- 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 @@ -71,7 +71,7 @@ public class CheckInfoListDialog extends BaseFloatDialog { mRecyclerView.setAdapter(new CheckInfoAdapter(mContext, mStyle, resultData)); //关闭按钮 findViewById(R.id.cancel_info_list_button).setOnClickListener(v -> { - cancel(); + dismiss(); }); } @@ -106,11 +106,11 @@ public class CheckInfoListDialog extends BaseFloatDialog { } public void cancel() { - super.dismiss(); + } @Override public void dismiss() { - + super.dismiss(); } } From 4a4522a92e2c0f8e4305d576de697e477d17a825 Mon Sep 17 00:00:00 2001 From: liujing Date: Tue, 28 Sep 2021 10:50:17 +0800 Subject: [PATCH 07/36] =?UTF-8?q?[add]=20=E5=88=A0=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E4=BB=A3=E7=A0=81;=E8=A7=A3=E5=86=B3=E4=BA=92?= =?UTF-8?q?=E7=9B=B8=E5=BC=95=E7=94=A8=E5=BC=95=E8=B5=B7=E7=9A=84=E5=86=85?= =?UTF-8?q?=E5=AD=98=E6=B3=84=E9=9C=B2;=E8=A7=A3=E5=86=B3=E5=BC=B9?= =?UTF-8?q?=E6=A1=86=E9=87=8D=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../check/VehicleMonitoringManager.java | 74 ++------- .../function/check/api/ICheckListener.java | 19 --- .../check/api/ICheckResultCallBack.java | 12 ++ .../core/function/check/api/SoftCheckApi.java | 23 --- .../function/check/view/CheckActivity.java | 155 ++++++------------ .../function/api/check/ICheckProvider.java | 2 +- .../call/check/CallerCheckManager.java | 6 +- .../main/monitoring/VehicleMonitoring.java | 4 +- 8 files changed, 86 insertions(+), 209 deletions(-) delete mode 100644 core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/ICheckListener.java create mode 100644 core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/ICheckResultCallBack.java delete mode 100644 core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/SoftCheckApi.java diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java index 5265d6111b..288af9b4c9 100644 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java +++ b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java @@ -11,6 +11,7 @@ import com.elegant.network.ParamsBuilder; import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.commons.network.SubscribeImpl; import com.mogo.eagle.core.function.call.check.CallerCheckManager; +import com.mogo.eagle.core.function.check.api.ICheckResultCallBack; import com.mogo.eagle.core.function.check.net.CheckApiServiceFactory; import com.mogo.eagle.core.function.check.net.CheckResultData; import com.mogo.eagle.core.function.check.view.CheckDialog; @@ -76,79 +77,35 @@ public class VehicleMonitoringManager implements ICheckProvider { @Override public void startCheckActivity(Context context) { -// if (context != null) { -// CheckActivity.start(context); -// } Intent starter = new Intent(context, CheckActivity.class); - starter.putExtra("CheckResultData", checkResultData); starter.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(starter); } @Override public void showCheckDialog(Context context) { -// if (context != null) { -// CheckActivity.showDialog(context); -// } showDialog(context); } @Override - public boolean checkMonitor(Context context) { -// if (context != null) { -// return CheckActivity.checkMonitor(context); -// } -// .append("sn", MoGoAiCloudClientConfig.getInstance().getSn()) - - final Map params = ParamsBuilder.of(false) - .append("sn", "QWE12E1211231R1212123") - .build(); - CheckApiServiceFactory.getDataApiService(context).loadMonitorDetail(params) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new SubscribeImpl(RequestOptions.create(context)) { - @Override - public void onSuccess(CheckResultData o) { - super.onSuccess(o); - Log.d("checkMonitor", "车辆自检结果是:" + o.toString()); - checkResultData = o; - if (((CheckResultData) o).getData().getVehicle().getState() == 1) { - CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); - } else { - CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); - showDialog(context); - } -// ThreadUtils.runOnUiThread(new Runnable() { -// @Override -// public void run() { -//// if (o != null && mCheckAdapter != null) { -//// mCheckAdapter.mCheckResultData = o; -//// mCheckAdapter.notifyDataSetChanged(); -//// } -// -// if (((CheckResultData) o).getData().getVehicle().getState() == 1) { -// CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); -// } else { -// CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); -// showDialog(context); -// } -// } -// }); + public void checkMonitor(Context context) { + if (context != null) { + CheckActivity.checkMonitor(context, new ICheckResultCallBack() { + @Override + public void callBackWithErrorState(Integer hasError) { + if (hasError == 1) { + updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); + } else { + updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); + showDialog(context); } - - @Override - public void onError(String message, int code) { - super.onError(message, code); -// Log.d(TAG, "车辆自检失败,请稍后重试" + "==" + message + String.valueOf(code)); - } - }); - - return false; + } + }); + } } - CheckResultData checkResultData; - CheckDialog dialog; + static CheckDialog dialog; /** * 指标异常弹框 @@ -178,7 +135,6 @@ public class VehicleMonitoringManager implements ICheckProvider { PackageManager packageManager = context.getPackageManager(); PackageInfo packageInfo = packageManager.getPackageInfo( context.getPackageName(), 0); -// Log.d(TAG, "包名:" + packageInfo.packageName); return packageInfo.packageName; } catch (Exception e) { e.printStackTrace(); diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/ICheckListener.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/ICheckListener.java deleted file mode 100644 index 8c53a375c0..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/ICheckListener.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.mogo.eagle.core.function.check.api; - -/** - * @author liujing - * @description 描述 - * @since: 8/6/21 - */ -public interface ICheckListener { - - /** - * 工控机->鹰眼定位数据延时 - */ - void getAutoLocationTimeCallbackDelayed(long time); - - /** - * 工控机->鹰眼识别数据延时 - */ - void getAutoDataCallbackDelayed(long time); -} 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 new file mode 100644 index 0000000000..1d2272742c --- /dev/null +++ b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/ICheckResultCallBack.java @@ -0,0 +1,12 @@ +package com.mogo.eagle.core.function.check.api; + +import com.mogo.service.adas.IMogoAdasDataCallback; + +/** + * @author liujing + * @description 自车检测结果回调 + * @since: 9/28/21 + */ +public interface ICheckResultCallBack { + void callBackWithErrorState(Integer hasError); +} diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/SoftCheckApi.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/SoftCheckApi.java deleted file mode 100644 index 59b34258b0..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/api/SoftCheckApi.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.mogo.eagle.core.function.check.api; - -/** - * @author xiaoyuzhou - * @date 2021/7/5 2:54 下午 - *

- * 软件环境检测 - * -----> 自动驾驶版本 - * -----> 鹰眼版本 - */ -public interface SoftCheckApi { - - /** - * 检测「自动驾驶」版本 - */ - void checkAutoPilotSoftVersion(); - - /** - * 检测「鹰眼」版本 - */ - void checkEagleEyeSoftVersion(); - -} 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 index de77632403..b909c22cdd 100644 --- 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 @@ -25,6 +25,7 @@ import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.commons.network.SubscribeImpl; import com.mogo.eagle.core.function.call.check.CallerCheckManager; 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.CheckApiServiceFactory; import com.mogo.eagle.core.function.check.net.CheckResultData; import com.mogo.eagle.core.utilcode.util.ActivityUtils; @@ -55,7 +56,6 @@ public class CheckActivity extends AppCompatActivity { private static Context context; private static NetworkStatusUtil.NetWorkStatus sNetWorkStatus; private ImageView mImageView; - private static String packageName = "com.mogo.launcher.f"; //车模 private ImageView scanBottomCarImage; //扫描束 @@ -73,7 +73,6 @@ public class CheckActivity extends AppCompatActivity { private final static long DURATION_TIME = 1000; private static CheckAdapter mCheckAdapter; private static boolean isFront = false; - private static CheckDialog dialog; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { @@ -85,19 +84,9 @@ public class CheckActivity extends AppCompatActivity { @Override protected void onStart() { super.onStart(); -// loadDetail(context); - Intent intent = getIntent(); - if (intent != null){ - CheckResultData checkResultData = (CheckResultData) intent.getSerializableExtra("CheckResultData"); - if (checkResultData != null&& mCheckAdapter != null){ - mCheckAdapter.mCheckResultData = checkResultData; - mCheckAdapter.notifyDataSetChanged(); - } - }else{ - - } + animation(); + loadDetail(context, null); } - /** * 列表View初始化 */ @@ -111,11 +100,10 @@ public class CheckActivity extends AppCompatActivity { tipsImageView = findViewById(R.id.scan_car_tips); mProgressBar = findViewById(R.id.check_progress); context = mImageView.getContext(); - packageName = getPackageName(context); mImageView.setOnClickListener(v -> { finish(); }); - animation(); + mRecyclerView = findViewById(R.id.check_list); CheckLinearLayout linearLayoutManager = new CheckLinearLayout(this, CheckLinearLayout.VERTICAL, false); @@ -128,67 +116,44 @@ public class CheckActivity extends AppCompatActivity { /** * 自动驾驶状态下指标监测 */ -// public static boolean checkMonitor(Context context) { -// Log.d(TAG, "checkMonitor"); -// loadDetail(context); -// return true; -// } + public static void checkMonitor(Context context, ICheckResultCallBack checkResultCallBack) { + Log.d(TAG, "checkMonitor"); + loadDetail(context, checkResultCallBack); + } -// //网络请求,获取自车检测结果(工控机上报云端) -// public static void loadDetail(Context context) { -// final Map params = ParamsBuilder.of(false) -// .append("sn", MoGoAiCloudClientConfig.getInstance().getSn()) -// .build(); -// CheckApiServiceFactory.getDataApiService(context).loadMonitorDetail(params) -// .subscribeOn(Schedulers.io()) -// .observeOn(AndroidSchedulers.mainThread()) -// .subscribe(new SubscribeImpl(RequestOptions.create(context)) { -// @Override -// public void onSuccess(CheckResultData o) { -// super.onSuccess(o); -// Log.d(TAG, "车辆自检结果是:" + o.toString()); -// ThreadUtils.runOnUiThread(new Runnable() { -// @Override -// public void run() { -// if (o != null && mCheckAdapter != null) { -// mCheckAdapter.mCheckResultData = o; -// mCheckAdapter.notifyDataSetChanged(); -// } -// -// if (((CheckResultData) o).getData().getVehicle().getState() == 1) { -// CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); -// } else { -// CallerCheckManager.updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); -// showDialog(context); -// } -// } -// }); -// } -// -// @Override -// public void onError(String message, int code) { -// super.onError(message, code); -// Log.d(TAG, "车辆自检失败,请稍后重试" + "==" + message + String.valueOf(code)); -// } -// }); -// -// } + //网络请求,获取自车检测结果(工控机上报云端) + public static void loadDetail(Context context, ICheckResultCallBack checkResultCallBack) { + final Map params = ParamsBuilder.of(false) + .append("sn", MoGoAiCloudClientConfig.getInstance().getSn()) + .build(); + CheckApiServiceFactory.getDataApiService(context).loadMonitorDetail(params) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new SubscribeImpl(RequestOptions.create(context)) { + @Override + public void onSuccess(CheckResultData o) { + super.onSuccess(o); + Log.d(TAG, "车辆自检结果是:" + o.toString()); + ThreadUtils.runOnUiThread(new Runnable() { + @Override + public void run() { + if (o != null && mCheckAdapter != null) { + mCheckAdapter.mCheckResultData = o; + mCheckAdapter.notifyDataSetChanged(); + } + if (checkResultCallBack != null) { + checkResultCallBack.callBackWithErrorState(o.getData().getVehicle().getState()); + } + } + }); + } + + @Override + public void onError(String message, int code) { + super.onError(message, code); + } + }); - /** - * @param context - * @return 当前应用的版本名称 - */ - public synchronized String getPackageName(Context context) { - try { - PackageManager packageManager = context.getPackageManager(); - PackageInfo packageInfo = packageManager.getPackageInfo( - context.getPackageName(), 0); - Log.d(TAG, "包名:" + packageInfo.packageName); - return packageInfo.packageName; - } catch (Exception e) { - e.printStackTrace(); - } - return "com.mogo.launcher.f"; } /** @@ -279,29 +244,20 @@ public class CheckActivity extends AppCompatActivity { } } -// public static void start(Context context) { -// Intent starter = new Intent(context, CheckActivity.class); -// starter.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); -// context.startActivity(starter); -// } + @Override + protected void onPause() { + super.onPause(); + } -// /** -// * 指标异常弹框 -// */ -// public static void showDialog(Context context) { -// try { -// if (AppUtils.isAppRunning(getPackageName(context)) && -// (ActivityUtils.getTopActivity() instanceof CheckActivity == false)) { -// if (dialog != null) { -// dialog.cancel(); -// } -// dialog = new CheckDialog(context, true); -// dialog.show(); -// } -// } catch (Exception e) { -// e.printStackTrace(); -// } -// } + @Override + protected void onStop() { + super.onStop(); + } + + @Override + protected void onRestart() { + super.onRestart(); + } @Override protected void onDestroy() { @@ -309,9 +265,4 @@ public class CheckActivity extends AppCompatActivity { isFront = false; } - @Override - protected void onPause() { - super.onPause(); - } - } diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/ICheckProvider.java b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/ICheckProvider.java index 63fb9248ea..b948deeb57 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/ICheckProvider.java +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/ICheckProvider.java @@ -36,7 +36,7 @@ public interface ICheckProvider extends IProvider { /** * 指标监测 */ - boolean checkMonitor(Context context); + void checkMonitor(Context context); /** * 根据监测指标修改主页检测按钮 diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/check/CallerCheckManager.java b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/check/CallerCheckManager.java index 6069a9c8f8..8f42974014 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/check/CallerCheckManager.java +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/check/CallerCheckManager.java @@ -10,7 +10,7 @@ import com.mogo.eagle.core.function.call.base.CallerBase; /** * @author xiaoyuzhou * @date 2021/9/17 8:26 下午 - * + *

* HMI 调用者管理,这里对外及其他模块提供功能的调用,用啥写啥,不要过度设计,不允许直接将Provider暴露出去 */ public class CallerCheckManager extends CallerBase { @@ -56,7 +56,7 @@ public class CallerCheckManager extends CallerBase { /** * 指标监测 */ - public static boolean checkMonitor(Context context) { - return getCheckProvider().checkMonitor(context); + public static void checkMonitor(Context context) { + getCheckProvider().checkMonitor(context); } } diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/monitoring/VehicleMonitoring.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/monitoring/VehicleMonitoring.java index d71cec30b7..d008aa67c6 100644 --- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/monitoring/VehicleMonitoring.java +++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/monitoring/VehicleMonitoring.java @@ -60,9 +60,9 @@ public class VehicleMonitoring implements Handler.Callback { return false; } - public boolean vehicleMonitor() { + public void vehicleMonitor() { Log.d(TAG, "vehicleMonitor"); - return CallerCheckManager.checkMonitor(mContext); + CallerCheckManager.checkMonitor(mContext); } } From 9c43c6cacc1e649c34ba5d6b4f7ce43182397796 Mon Sep 17 00:00:00 2001 From: liujing Date: Tue, 28 Sep 2021 11:08:07 +0800 Subject: [PATCH 08/36] =?UTF-8?q?=E5=BC=B9=E6=A1=86=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E4=BF=AE=E6=94=B9:=20=E5=8F=B3=E4=B8=8B=E8=A7=92=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E9=A2=84=E8=AD=A6=E5=9B=BE=E7=89=87=EF=BC=8C=E5=BC=B9?= =?UTF-8?q?=E6=A1=86=E5=81=9A=E5=BC=B9=E5=87=BA=20=E8=AF=81=E5=87=BA?= =?UTF-8?q?=E7=8E=B0=E9=97=AE=E9=A2=98=E7=9A=84=E6=97=B6=E5=80=99=E6=8F=90?= =?UTF-8?q?=E9=86=92=E6=AF=94=E8=BE=83=E9=86=92=E7=9B=AE=EF=BC=8C=E8=80=8C?= =?UTF-8?q?=E4=B8=94=E5=90=8C=E6=A0=B7=E7=9A=84=E9=94=99=E8=AF=AF=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E8=A7=A3=E5=86=B3=E4=B8=8D=E4=BC=9A=E9=A2=91=E7=B9=81?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=20=E5=B7=B2=E5=90=8C=E6=AD=A5=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E4=BF=AE=E6=94=B9=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/function/check/VehicleMonitoringManager.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java index 288af9b4c9..ea03d0d861 100644 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java +++ b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java @@ -48,6 +48,7 @@ public class VehicleMonitoringManager implements ICheckProvider { private static final String TAG = "VehicleMonitoringManager"; private Context mContext; private final Map mListeners = new ConcurrentHashMap<>(); + private boolean hasTipShow = false;//是否已经弹框提示 @Override public void init(Context context) { @@ -95,9 +96,13 @@ public class VehicleMonitoringManager implements ICheckProvider { public void callBackWithErrorState(Integer hasError) { if (hasError == 1) { updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); + hasTipShow = false; } else { updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); - showDialog(context); + if (hasTipShow == false) { + showDialog(context); + hasTipShow = true;//已弹框 + } } } }); From 3ae2e256fcc33c93779b7fbffda838b382882646 Mon Sep 17 00:00:00 2001 From: liujing Date: Tue, 28 Sep 2021 11:27:17 +0800 Subject: [PATCH 09/36] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/function/check/VehicleMonitoringManager.java | 11 +++++------ .../core/function/check/api/ICheckResultCallBack.java | 2 +- .../eagle/core/function/api/check/ICheckProvider.java | 2 +- .../core/function/api/check/IMogoCheckListener.java | 2 +- .../core/function/call/check/CallerCheckManager.java | 4 ++-- .../module/extensions/entrance/EntranceFragment.java | 8 ++++---- 6 files changed, 14 insertions(+), 15 deletions(-) diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java index ea03d0d861..c217d85180 100644 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java +++ b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java @@ -93,12 +93,11 @@ public class VehicleMonitoringManager implements ICheckProvider { if (context != null) { CheckActivity.checkMonitor(context, new ICheckResultCallBack() { @Override - public void callBackWithErrorState(Integer hasError) { - if (hasError == 1) { - updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, false); + public void callBackWithErrorState(Integer state) { + updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, state); + if (state == 1) { hasTipShow = false; } else { - updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, true); if (hasTipShow == false) { showDialog(context); hasTipShow = true;//已弹框 @@ -148,12 +147,12 @@ public class VehicleMonitoringManager implements ICheckProvider { } @Override - public void updateMonitoringStatus(String module, boolean hasError) { + public void updateMonitoringStatus(String module, Integer state) { List listeners = mListeners.get(module); if (listeners != null && !listeners.isEmpty()) { for (IMogoCheckListener listener : listeners) { if (listener != null) { - listener.updateMonitoringStatus(hasError); + listener.updateMonitoringStatus(state); } } } 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 index 1d2272742c..709f409f11 100644 --- 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 @@ -8,5 +8,5 @@ import com.mogo.service.adas.IMogoAdasDataCallback; * @since: 9/28/21 */ public interface ICheckResultCallBack { - void callBackWithErrorState(Integer hasError); + void callBackWithErrorState(Integer state); } diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/ICheckProvider.java b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/ICheckProvider.java index b948deeb57..57c6d5ef6f 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/ICheckProvider.java +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/ICheckProvider.java @@ -41,6 +41,6 @@ public interface ICheckProvider extends IProvider { /** * 根据监测指标修改主页检测按钮 */ - void updateMonitoringStatus(String module, boolean hasError); + void updateMonitoringStatus(String module, Integer state); } diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/IMogoCheckListener.java b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/IMogoCheckListener.java index dd5396cbd6..ad14740e66 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/IMogoCheckListener.java +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/check/IMogoCheckListener.java @@ -6,5 +6,5 @@ package com.mogo.eagle.core.function.api.check; * @since: 8/26/21 */ public interface IMogoCheckListener { - void updateMonitoringStatus(boolean hasError); + void updateMonitoringStatus(Integer state); } diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/check/CallerCheckManager.java b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/check/CallerCheckManager.java index 8f42974014..fd9d82f317 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/check/CallerCheckManager.java +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/check/CallerCheckManager.java @@ -49,8 +49,8 @@ public class CallerCheckManager extends CallerBase { /** * 根据监测指标修改主页检测按钮 */ - public static void updateMonitoringStatus(String module, boolean hasError) { - getCheckProvider().updateMonitoringStatus(module, hasError); + public static void updateMonitoringStatus(String module, Integer state) { + getCheckProvider().updateMonitoringStatus(module, state); } /** diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java index e786a39c67..a6d8f3a39c 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java @@ -1402,12 +1402,12 @@ public class EntranceFragment extends MvpFragment Date: Mon, 27 Sep 2021 14:03:31 +0800 Subject: [PATCH 10/36] no message --- .../mogo-core-function-check/src/main/res/layout/check_titel.xml | 1 + 1 file changed, 1 insertion(+) 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 index 89aa819e03..319a782394 100644 --- 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 @@ -14,6 +14,7 @@ android:layout_height="@dimen/dp_140" android:layout_marginStart="@dimen/dp_856" android:layout_marginTop="@dimen/dp_200" + android:src="@drawable/check_wrong" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" /> From c04b5798d0eed3c3958883b4e27445b93c3f0a1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Mon, 27 Sep 2021 11:50:01 +0800 Subject: [PATCH 11/36] =?UTF-8?q?=E9=AA=8C=E8=AF=81OBU=E4=B8=8ERSU?= =?UTF-8?q?=E9=80=9A=E8=AE=AF=E9=93=BE=E8=B7=AF=E6=95=B0=E6=8D=AE=E9=80=9A?= =?UTF-8?q?=E8=BF=87=EF=BC=8C=E7=BB=86=E8=8A=82=E9=9C=80=E8=A6=81=E6=AF=8F?= =?UTF-8?q?=E4=B8=AA=E9=A2=84=E8=AD=A6=E5=8D=95=E7=8B=AC=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 董宏宇 --- README.md | 1 + .../obu/mogo/MogoPrivateObuManager.kt | 120 ++++---- .../core/utilcode/mogo/logger/LogLevel.java | 24 ++ .../core/utilcode/mogo/logger/Logger.java | 57 ++++ .../utilcode/mogo/logger/LoggerPrinter.java | 261 ++++++++++++++++++ .../core/utilcode/mogo/logger/Printer.java | 26 ++ .../core/utilcode/mogo/logger/Settings.java | 52 ++++ .../mogo/module/common/enums/EventTypeEnum.kt | 14 +- 8 files changed, 481 insertions(+), 74 deletions(-) create mode 100644 core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/LogLevel.java create mode 100644 core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Logger.java create mode 100644 core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/LoggerPrinter.java create mode 100644 core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Printer.java create mode 100644 core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Settings.java diff --git a/README.md b/README.md index 456e12867b..e230e91c6c 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,7 @@ adb remount adb shell adb 过滤日志 +adb logcat -v time > /tmp/padlog/0915obu.txt adb -s 192.168.1.37:5555 logcat -v time > /tmp/padlog/0915obu.txt adb -s 192.168.1.37:5555 logcat -v time | grep "com.mogo.launcher.f" diff --git a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt index 7b126c75d5..ad1f24323f 100644 --- a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt +++ b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt @@ -6,6 +6,7 @@ import com.mogo.eagle.core.data.enums.WarningDirectionEnum import com.mogo.eagle.core.function.api.hmi.warning.WarningStatusListener import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.function.obu.mogo.utils.TrafficDataConvertUtils +import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.eagle.core.utilcode.util.LogUtils import com.mogo.module.common.datacenter.SnapshotLocationDataCenter import com.mogo.module.common.drawer.TrafficMarkerDrawer @@ -39,27 +40,27 @@ class MogoPrivateObuManager private constructor() { private var mContext: Context? = null fun init(context: Context?) { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "obuManager初始化--") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "obuManager初始化--") mMogoServiceApis = ARouter.getInstance().build(MogoServicePaths.PATH_SERVICE_APIS) .navigation(context) as IMogoServiceApis mContext = context mIMogoMapService = mMogoServiceApis!!.mapServiceApi //自研obu - MogoObuManager.getInstance().connect(context, "192.168.1.199") + MogoObuManager.getInstance().connect(context, "192.168.20.199") MogoObuManager.getInstance().registerListener(mogoObuListener) } private val mogoObuListener: OnMogoObuListener = object : OnMogoObuListener() { // OBU连接成功 override fun onConnected() { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onConnected ------> ") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onConnected ------> ") mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean("OBU", true) } } // OBU连接失败 override fun onConnectFail(isNeedReconnect: Boolean) { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onConnectFail ------> ") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onConnectFail ------> ") mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean("OBU", false) } mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean("OBU_HV", false) } mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean("OBU_RV", false) } @@ -67,7 +68,7 @@ class MogoPrivateObuManager private constructor() { // OBU断开连接 override fun onDisconnect() { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onDisconnect ------> ") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onDisconnect ------> ") mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean("OBU", false) } mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean("OBU_HV", false) } mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean("OBU_RV", false) } @@ -76,26 +77,26 @@ class MogoPrivateObuManager private constructor() { // 接收到的原始数据 override fun onReceiveOriginData(data: String) { super.onReceiveOriginData(data) - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onReceiveOriginData ------> data = $data") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onReceiveOriginData ------> data = $data") } // 发送的数据 override fun onSendData(bytes: ByteArray) { super.onSendData(bytes) - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onSendData ------> ") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onSendData ------> ") } // CV2X系统信息 override fun onCvxAppInitIndInfo(info: CvxAppInitIndInfo) { super.onCvxAppInitIndInfo(info) - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onCvxAppInitIndInfo ------> $info") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onCvxAppInitIndInfo ------> $info") } // (2) 车辆信息:CVX_HV_INFO_IND override fun onCvxHvInfoIndInfo(info: CvxHvInfoIndInfo?) { mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean("OBU_HV", true) } - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onCvxHvInfoIndInfo ------> $info") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onCvxHvInfoIndInfo ------> $info") if (info != null && info.basic_info != null && info.basic_info.position != null) { val movingObjectInfo = info.basic_info val position = movingObjectInfo.position @@ -142,7 +143,7 @@ class MogoPrivateObuManager private constructor() { // (3) 远车信息:CVX_RV_INFO_IND override fun onCvxRvInfoIndInfo(info: CvxRvInfoIndInfo) { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onCvxRvInfoIndInfo ------> $info") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onCvxRvInfoIndInfo ------> $info") mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean("OBU_RV", true) } // 更新数据 TrafficDataConvertUtils.cvxRvInfoIndInfo2TrafficData(info)?.let { @@ -152,7 +153,7 @@ class MogoPrivateObuManager private constructor() { // (3) 道路事件预警信息:CVX_RTI_THREAT_IND override fun onCvxRtiThreatIndInfo(info: CvxRtiThreatIndInfo?) { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onCvxRtiThreatIndInfo ------> $info") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onCvxRtiThreatIndInfo ------> $info") if (info != null && info.threat_info != null && info.ext_info != null) { var alertContent = "" @@ -162,13 +163,15 @@ class MogoPrivateObuManager private constructor() { val level = info.threat_info.threat_level val direction = getMessageDirection(if (info.ext_info != null) info.ext_info.pos_classification else -1) + Logger.d( + MogoObuConst.TAG_MOGO_OBU, + "onCvxRtiThreatIndInfo appId = $appId --status = $status --level = $level -- handleDirection = $direction --rtiType = ${info.ext_info.rti_type}" + ) when (appId) { // 道路危险情况预警 - EventTypeEnum.TYPE_USECASE_ID_HLW.poiType -> { - LogUtils.dTag( - MogoObuConst.TAG_MOGO_OBU, - "onCvxRtiThreatIndInfo appId = $appId --status = $status --level = $level -- handleDirection = $direction --rtiType = ${info.ext_info.rti_type}" - ) + EventTypeEnum.TYPE_USECASE_ID_HLW.poiType, + EventTypeEnum.TYPE_USECASE_ID_IVS.poiType + -> { when (info.ext_info.rti_type) { //急转弯 0x2 -> { @@ -190,7 +193,7 @@ class MogoPrivateObuManager private constructor() { } //施工 0x7 -> { - appId = EventTypeEnum.TYPE_USECASE_ID_IVS.poiType + appId = EventTypeEnum.FOURS_ROAD_WORK.poiType } //限速 0xA -> { @@ -227,11 +230,6 @@ class MogoPrivateObuManager private constructor() { alertContent = EventTypeEnum.getWarningContent(appId) ttsContent = EventTypeEnum.getWarningTts(appId) } - // 车内标牌 - EventTypeEnum.TYPE_USECASE_ID_IVS.poiType -> { - alertContent = EventTypeEnum.getWarningContent(appId) - ttsContent = EventTypeEnum.getWarningTts(appId) - } // 前方拥堵提醒 EventTypeEnum.TYPE_USECASE_ID_TJW.poiType -> { alertContent = EventTypeEnum.getWarningContent(appId) @@ -247,23 +245,21 @@ class MogoPrivateObuManager private constructor() { ObuConstants.STATUS.ADD, ObuConstants.STATUS.UPDATE// 更新 -> { - if (level == 2 || level == 3) { - //显示警告红边 - CallerHmiManager.showWarning(direction) - //显示弹框,语音提示 - CallerHmiManager.showWarningV2X( - appId.toInt(), - alertContent, - ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 - (appId + direction.direction).toString(),//使用当前事件类型+方向记录tag,当发生变化的时候关闭当前弹出新的 - object : WarningStatusListener { - override fun onDismiss() { - // 关闭警告红边 - CallerHmiManager.showWarning(WarningDirectionEnum.ALERT_WARNING_NON) - } + //显示警告红边 + CallerHmiManager.showWarning(direction) + //显示弹框,语音提示 + CallerHmiManager.showWarningV2X( + appId.toInt(), + alertContent, + ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 + (appId + direction.direction).toString(),//使用当前事件类型+方向记录tag,当发生变化的时候关闭当前弹出新的 + object : WarningStatusListener { + override fun onDismiss() { + // 关闭警告红边 + CallerHmiManager.showWarning(WarningDirectionEnum.ALERT_WARNING_NON) } - ) - } + } + ) // 更新数据 TrafficDataConvertUtils.cvxRtiThreatIndInfo2TrafficData(info)?.let { TrafficMarkerDrawer.updateITrafficThreatLevelInfo(it) @@ -289,7 +285,7 @@ class MogoPrivateObuManager private constructor() { // (4) V2I预警信息:CVX_IVP_THREAT_IND override fun onCvxIvpThreatIndInfo(info: CvxIvpThreatIndInfo?) { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "CvxIvpThreatIndInfo ------> $info") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "CvxIvpThreatIndInfo ------> $info") if (info != null && info.ext_info != null && info.threat_info != null && info.ext_info.lights != null && info.ext_info.lights.isNotEmpty()) { handlerTrafficLight( info.threat_info.app_id, @@ -300,24 +296,11 @@ class MogoPrivateObuManager private constructor() { } } - // (6) 地图红绿灯信息:CVX_MAP_SPAT_INFO_IND - override fun onCvxMapSpatInfoIndInfo(info: CvxMapSpatInfoIndInfo?) { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onCvxMapSpatInfoIndInfo ------> $info") - if (info != null && info.ivp_threat_ext != null && info.ivp_threat_ext.lights != null && info.ivp_threat_ext.lights.isNotEmpty()) { - handlerTrafficLight( - info.ivp_threat_info.app_id, - info.status, - info.ivp_threat_ext.lights, - info.ivp_threat_ext.indicator - ) - } - } - // (2) 弱势交通参与者预警信息:CVX_PTC_THREAT_IND override fun onCvxPtcThreatIndInfo(info: CvxPtcThreatIndInfo?) { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onCvxPtcInfoIndInfo ------> $info") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onCvxPtcInfoIndInfo ------> $info") if (info != null) { - LogUtils.dTag( + Logger.d( MogoObuConst.TAG_MOGO_OBU, "onCvxPtcInfoIndInfo ---status---> ${info.status}" ) @@ -379,7 +362,7 @@ class MogoPrivateObuManager private constructor() { // (5) 限速预警信息:CVX_SLW_THREAT_IND override fun onCvxSlwThreatIndInfo(info: CvxSlwThreatIndInfo?) { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onCvxSlwThreatIndInfo ------> $info") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onCvxSlwThreatIndInfo ------> $info") if (info != null) { when (info.status) { // 添加 @@ -387,7 +370,8 @@ class MogoPrivateObuManager private constructor() { ObuConstants.STATUS.UPDATE -> { if (info.ext_info != null) { - CallerHmiManager.showLimitingVelocity(info.ext_info.speed_limit_max.toInt()) + // 计算为千米每小时 TODO 这里需要做一下向上取整数,40,60,80,120等 + CallerHmiManager.showLimitingVelocity((info.ext_info.speed_limit_max.toInt() * 60 * 60) / 1000) } } // 删除 @@ -401,7 +385,7 @@ class MogoPrivateObuManager private constructor() { // (1) V2V预警信息:CVX_V2V_THREAT_IND override fun onCvxV2vThreatIndInfo(info: CvxV2vThreatIndInfo?) { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "onCvxV2vThreatIndInfo ------> $info") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "onCvxV2vThreatIndInfo ------> $info") info?.let { //预警信息,预警类型 threat_level 2、3 info.threat_info?.let { @@ -411,7 +395,7 @@ class MogoPrivateObuManager private constructor() { val appId = info.threat_info.app_id val level = info.threat_info.threat_level val status = info.status - LogUtils.dTag( + Logger.d( MogoObuConst.TAG_MOGO_OBU, "onCvxV2vThreatIndInfo target_classification = ${ getMessageDirection(info.ext_info.target_classification) @@ -434,7 +418,7 @@ class MogoPrivateObuManager private constructor() { * 获取消息的方位 车辆相关 */ private fun getMessageDirection(targetClassification: Int): WarningDirectionEnum { - LogUtils.dTag(MogoObuConst.TAG_MOGO_OBU, "预警红边:预警方向->$targetClassification") + Logger.d(MogoObuConst.TAG_MOGO_OBU, "预警红边:预警方向->$targetClassification") return when (targetClassification) { ObuConstants.TARGET_CLASSIFICATION.TC_ONCOMING_IN_LANE, ObuConstants.TARGET_CLASSIFICATION.TC_AHEAD_IN_LANE, @@ -478,7 +462,7 @@ class MogoPrivateObuManager private constructor() { * 处理红绿灯 */ private fun handlerTrafficLight(appId: Int, status: Int, lights: List, index: Int) { - LogUtils.dTag( + Logger.d( MogoObuConst.TAG_MOGO_OBU, "handlerTrafficLight appId = $appId --- status = $status ---index = $index ---lights.size = ${lights.size} ---lights = $lights " ) @@ -514,7 +498,7 @@ class MogoPrivateObuManager private constructor() { //这里需要根据真实数据确定 index 取值方式 if (index != -1 && lights.size >= index) { val currentLight = lights[index] - LogUtils.dTag( + Logger.d( MogoObuConst.TAG_MOGO_OBU, "currentLight = $currentLight ---currentLight.phase = ${currentLight.phase} --- index = $index ---appId = $appId" ) @@ -531,7 +515,7 @@ class MogoPrivateObuManager private constructor() { } isGreenLight = false CallerHmiManager.showWarningTrafficLight(1) - var red = currentLight.count_down.toInt() + 1 + val red = currentLight.count_down.toInt() + 1 CallerHmiManager.changeCountdownRed(if (red >= 0) red else 0) ttsContent = EventTypeEnum.getWarningTts(appId.toString()) alertContent = EventTypeEnum.getWarningContent(appId.toString()) @@ -554,13 +538,13 @@ class MogoPrivateObuManager private constructor() { } isRedLight = false CallerHmiManager.showWarningTrafficLight(3) - var green = currentLight.count_down.toInt() + 1 + val green = currentLight.count_down.toInt() + 1 CallerHmiManager.changeCountdownGreen(if (green >= 0) green else 0) //防止数据出现问题的容错 CallerHmiManager.changeCountdownRed(0) CallerHmiManager.changeCountdownYellow(0) // 拼接建议速度 - LogUtils.dTag( + Logger.d( MogoObuConst.TAG_MOGO_OBU, "speed_min = ${currentLight.glosa_suggested_speed_min} --speed_max = ${currentLight.glosa_suggested_speed_max.toInt()}" ) @@ -582,7 +566,7 @@ class MogoPrivateObuManager private constructor() { adviceSpeed ) - var maxSpeed = currentLight.glosa_suggested_speed_max.toInt() + val maxSpeed = currentLight.glosa_suggested_speed_max.toInt() if (maxSpeed > 0) { CallerHmiManager.showWarningV2X( EventTypeEnum.TYPE_USECASE_ID_IVP_GREEN.poiType.toInt(), @@ -597,7 +581,7 @@ class MogoPrivateObuManager private constructor() { 0x3 -> { CallerHmiManager.disableWarningV2X(appId.toString()) CallerHmiManager.showWarningTrafficLight(2) - var yellow = currentLight.count_down.toInt() + 1 + val yellow = currentLight.count_down.toInt() + 1 CallerHmiManager.changeCountdownYellow(if (yellow >= 0) yellow else 0) CallerHmiManager.changeCountdownGreen(0) CallerHmiManager.changeCountdownRed(0) @@ -623,7 +607,7 @@ class MogoPrivateObuManager private constructor() { info: CvxV2vThreatIndInfo ) { // 这里排除需要特殊定制的语音及文案外,其余的都可以使用 EventTypeEnum 提供的 - LogUtils.dTag( + Logger.d( MogoObuConst.TAG_MOGO_OBU, "handleSdkObu appId = $appId --- handleDirection = $direction ---level = $level ---status = $status" ) @@ -719,7 +703,7 @@ class MogoPrivateObuManager private constructor() { // 添加,更新 add的时候,可能级别是2, ObuConstants.STATUS.ADD, ObuConstants.STATUS.UPDATE -> { - LogUtils.dTag( + Logger.d( MogoObuConst.TAG_MOGO_OBU, "appId2 = $appId --- level = $level ---ttsContent = $ttsContent --- alertContent = $alertContent --- direction = $direction" ) diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/LogLevel.java b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/LogLevel.java new file mode 100644 index 0000000000..897dbb7a4d --- /dev/null +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/LogLevel.java @@ -0,0 +1,24 @@ + +package com.mogo.eagle.core.utilcode.mogo.logger; + +public enum LogLevel { + + OFF( Integer.MAX_VALUE), + + VERBOSE(1), + + DEBUG(2), + + INFO(3), + + WARN(4), + + ERROR(5); + + public final int level; + + private LogLevel(final int level) { + this.level = level; + } + +} diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Logger.java b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Logger.java new file mode 100644 index 0000000000..dabc026b82 --- /dev/null +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Logger.java @@ -0,0 +1,57 @@ + +package com.mogo.eagle.core.utilcode.mogo.logger; + +public final class Logger { + private static final Printer sPrinter = new LoggerPrinter(); + + private Logger() { + } + + public static Settings init() { + return sPrinter.init(LogLevel.DEBUG); + } + + public static Settings init(LogLevel logLevel) { + return sPrinter.init(logLevel); + } + + public static void d( String tag, String message, Object... args) { + if(isLoggable(LogLevel.DEBUG)) sPrinter.d(tag, message, args); + } + + public static void e( String tag, String message, Object... args) { + if(isLoggable(LogLevel.ERROR)) sPrinter.e(tag, null, message, args); + } + + public static void e( String tag, Throwable throwable, String message, Object... args) { + if(isLoggable(LogLevel.ERROR)) sPrinter.e(tag, throwable, message, args); + } + + public static void i( String tag, String message, Object... args) { + if(isLoggable(LogLevel.INFO)) sPrinter.i(tag, message, args); + } + + public static void v( String tag, String message, Object... args) { + if(isLoggable(LogLevel.VERBOSE)) sPrinter.v(tag, message, args); + } + + public static void w( String tag, String message, Object... args) { + if(isLoggable(LogLevel.WARN)) sPrinter.w(tag, message, args); + } + + public static void easyLog( String tag, String message) { + if(isLoggable(LogLevel.DEBUG)) sPrinter.d(tag, message); + } + + public static void json( String tag, String json) { + if(isLoggable(LogLevel.DEBUG)) sPrinter.json(tag, json); + } + + public static void xml( String tag, String xml) { + if(isLoggable(LogLevel.DEBUG)) sPrinter.xml(tag, xml); + } + + private static boolean isLoggable(LogLevel logLevel){ + return sPrinter.getSettings().getLogLevel().level <= logLevel.level; + } +} diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/LoggerPrinter.java b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/LoggerPrinter.java new file mode 100644 index 0000000000..ce7fde2c02 --- /dev/null +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/LoggerPrinter.java @@ -0,0 +1,261 @@ + +package com.mogo.eagle.core.utilcode.mogo.logger; + +import android.text.TextUtils; +import android.util.Log; + +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import java.io.StringReader; +import java.io.StringWriter; + +import javax.xml.transform.Transformer; +import javax.xml.transform.TransformerException; +import javax.xml.transform.TransformerFactory; +import javax.xml.transform.stream.StreamResult; +import javax.xml.transform.stream.StreamSource; + +final class LoggerPrinter implements Printer { + private static final String TAG = "LoggerPrinter"; + + private static final int CHUNK_SIZE = 4000; + private static final int JSON_INDENT = 4; + private static final int MIN_STACK_OFFSET = 3; + private static final char TOP_LEFT_CORNER = '╔'; + private static final char BOTTOM_LEFT_CORNER = '╚'; + private static final char MIDDLE_CORNER = '╟'; + private static final char HORIZONTAL_DOUBLE_LINE = '║'; + private static final String DOUBLE_DIVIDER = "════════════════════════════════════════════"; + private static final String SINGLE_DIVIDER = "────────────────────────────────────────────"; + private static final String TOP_BORDER = "╔════════════════════════════════════════════════════════════════════════════════════════"; + private static final String BOTTOM_BORDER = "╚════════════════════════════════════════════════════════════════════════════════════════"; + private static final String MIDDLE_BORDER = "╟────────────────────────────────────────────────────────────────────────────────────────"; + + private final Settings mSettings = new Settings(); + + LoggerPrinter() { + } + + public Settings init(LogLevel logLevel) { + return mSettings.setLogLevel(logLevel); + } + + public Settings getSettings() { + return mSettings; + } + + public void d( String tag, String message, Object... args) { + this.log(tag, LogLevel.DEBUG, message, args); + } + + public void e( String tag, String message, Object... args) { + this.e(tag, null, message, args); + } + + public void e( String tag, Throwable throwable, String message, Object... args) { + if (throwable != null && message != null) { + message = message + " : " + Log.getStackTraceString( throwable); + } + + if (throwable != null && message == null) { + message = throwable.toString(); + } + + if (message == null) { + message = "No message/exception is set"; + } + + this.log(tag, LogLevel.ERROR, message, args); + } + + public void w( String tag, String message, Object... args) { + this.log(tag, LogLevel.WARN, message, args); + } + + public void i( String tag, String message, Object... args) { + this.log(tag, LogLevel.INFO, message, args); + } + + public void v( String tag, String message, Object... args) { + this.log(tag, LogLevel.VERBOSE, message, args); + } + + public void json( String tag, String json) { + if ( TextUtils.isEmpty(json)) { + this.d(tag, "Empty/Null json content"); + } else { + try { + String message; + if (json.startsWith("{")) { + JSONObject e1 = new JSONObject(json); + message = e1.toString(4); + this.d(tag, message); + return; + } + + if (json.startsWith("[")) { + JSONArray e = new JSONArray(json); + message = e.toString(4); + this.d(tag, message); + } + } catch ( JSONException var4) { + this.e(tag, var4.getCause().getMessage() + "\n" + json); + } + + } + } + + public void xml( String tag, String xml) { + if ( TextUtils.isEmpty(xml)) { + this.d(tag, "Empty/Null xml content"); + } else { + try { + StreamSource e = new StreamSource(new StringReader(xml)); + StreamResult xmlOutput = new StreamResult(new StringWriter()); + Transformer transformer = TransformerFactory.newInstance().newTransformer(); + transformer.setOutputProperty("indent", "yes"); + transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); + transformer.transform(e, xmlOutput); + this.d(tag, xmlOutput.getWriter().toString().replaceFirst(">", ">\n")); + } catch ( TransformerException var5) { + this.e(tag, var5.getCause().getMessage() + "\n" + xml); + } + + } + } + + public void normalLog( String tag, String message) { + if (!TextUtils.isEmpty(message)) { + this.logChunk(LogLevel.DEBUG, tag, message); + } + } + + private synchronized void log( String tag, LogLevel logLevel, String msg, Object... args) { + String message = this.createMessage(msg, args); + int methodCount = this.getMethodCount(); + this.logTopBorder(logLevel, tag); + this.logHeaderContent(logLevel, tag, methodCount); + byte[] bytes = message.getBytes(); + int length = bytes.length; + if (length <= 4000) { + if (methodCount > 0) { + this.logDivider(logLevel, tag); + } + + this.logContent(logLevel, tag, message); + this.logBottomBorder(logLevel, tag); + } else { + if (methodCount > 0) { + this.logDivider(logLevel, tag); + } + + for (int i = 0; i < length; i += 4000) { + int count = Math.min(length - i, 4000); + this.logContent(logLevel, tag, new String(bytes, i, count)); + } + + this.logBottomBorder(logLevel, tag); + } + } + + private void logTopBorder(LogLevel logLevel, String tag) { + this.logChunk(logLevel, tag, "╔════════════════════════════════════════════════════════════════════════════════════════"); + } + + private void logHeaderContent( LogLevel logLevel, String tag, int methodCount) { + StackTraceElement[] trace = Thread.currentThread().getStackTrace(); + if (mSettings.isShowThreadInfo()) { + this.logChunk(logLevel, tag, "║ Thread: " + Thread.currentThread().getName()); + this.logDivider(logLevel, tag); + } + + String level = ""; + int stackOffset = this.getStackOffset(trace) + mSettings.getMethodOffset(); + if (methodCount + stackOffset > trace.length) { + methodCount = trace.length - stackOffset - 1; + } + + for (int i = methodCount; i > 0; --i) { + int stackIndex = i + stackOffset; + if (stackIndex < trace.length) { + StringBuilder builder = new StringBuilder(); + builder.append("║ ").append(level).append(this.getSimpleClassName(trace[stackIndex].getClassName())).append(".").append(trace[stackIndex].getMethodName()).append(" ").append(" (").append(trace[stackIndex].getFileName()).append(":").append(trace[stackIndex].getLineNumber()).append(")"); + level = level + " "; + this.logChunk(logLevel, tag, builder.toString()); + } + } + + } + + private void logBottomBorder(LogLevel logLevel, String tag) { + this.logChunk(logLevel, tag, "╚════════════════════════════════════════════════════════════════════════════════════════"); + } + + private void logDivider(LogLevel logLevel, String tag) { + this.logChunk(logLevel, tag, "╟────────────────────────────────────────────────────────────────────────────────────────"); + } + + private void logContent( LogLevel logLevel, String tag, String chunk) { + String[] lines = chunk.split( System.getProperty("line.separator")); + + for ( String line : lines) { + this.logChunk(logLevel, tag, "║ " + line); + } + } + + private void logChunk( LogLevel logLevel, String tag, String chunk) { + String finalTag = this.checkTag(tag); + switch (logLevel) { + case VERBOSE: + Log.v(finalTag, chunk); + break; + case INFO: + Log.i(finalTag, chunk); + break; + case DEBUG: + Log.d(finalTag, chunk); + break; + case WARN: + Log.w(finalTag, chunk); + break; + case ERROR: + Log.e(finalTag, chunk); + break; + case OFF: + break; + } + + } + + private String getSimpleClassName( String name) { + int lastIndex = name.lastIndexOf("."); + return name.substring(lastIndex + 1); + } + + private String checkTag( String tag) { + return TextUtils.isEmpty(tag) ? TAG : tag; + } + + private String createMessage( String message, Object... args) { + return (args == null || args.length == 0) ? message : String.format(message, args); + } + + private int getMethodCount() { + return mSettings.getMethodCount(); + } + + private int getStackOffset( StackTraceElement[] trace) { + for (int i = 3; i < trace.length; ++i) { + StackTraceElement e = trace[i]; + String name = e.getClassName(); + if (!name.equals(LoggerPrinter.class.getName()) && !name.equals(Logger.class.getName())) { + --i; + return i; + } + } + + return -1; + } +} diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Printer.java b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Printer.java new file mode 100644 index 0000000000..1f9daffacd --- /dev/null +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Printer.java @@ -0,0 +1,26 @@ + +package com.mogo.eagle.core.utilcode.mogo.logger; + +public interface Printer { + Settings init( LogLevel logLevel ); + + Settings getSettings(); + + void d( String tag, String message, Object... args ); + + void e( String tag, String message, Object... args ); + + void e( String tag, Throwable throwable, String message, Object... args ); + + void w( String tag, String message, Object... args ); + + void i( String tag, String message, Object... args ); + + void v( String tag, String message, Object... args ); + + void json( String tag, String json ); + + void xml( String tag, String xml ); + + void normalLog( String tag, String message ); +} diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Settings.java b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Settings.java new file mode 100644 index 0000000000..b503568088 --- /dev/null +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/logger/Settings.java @@ -0,0 +1,52 @@ + +package com.mogo.eagle.core.utilcode.mogo.logger; + +public final class Settings { + private int methodCount = 2; + private boolean showThreadInfo = true; + private int methodOffset = 0; + private LogLevel logLevel = LogLevel.DEBUG; + + public Settings() { + } + + public Settings hideThreadInfo() { + this.showThreadInfo = false; + return this; + } + + public Settings setMethodCount(int methodCount) { + if(methodCount < 0) { + methodCount = 0; + } + + this.methodCount = methodCount; + return this; + } + + public Settings setLogLevel(LogLevel logLevel) { + this.logLevel = logLevel; + return this; + } + + public Settings setMethodOffset(int offset) { + this.methodOffset = offset; + return this; + } + + public int getMethodCount() { + return this.methodCount; + } + + public boolean isShowThreadInfo() { + return this.showThreadInfo; + } + + public LogLevel getLogLevel() { + return this.logLevel; + } + + public int getMethodOffset() { + return this.methodOffset; + } +} diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt b/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt index 7da7b86751..1a89110efa 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt @@ -222,8 +222,8 @@ enum class EventTypeEnum( ObuConstants.USE_CASE_ID.IVS.toString(), "车内标牌", poiTypeSrcVr=R.drawable.icon_warning_v2x_road_construction, - content="前方施工", - tts="前方施工" + content="车内标牌", + tts="车内标牌" ), TYPE_USECASE_ID_TJW( ObuConstants.USE_CASE_ID.TJW.toString(), @@ -286,7 +286,7 @@ enum class EventTypeEnum( "学校", poiTypeSrcVr=R.drawable.icon_warning_v2x_school, content="前方学校,减速慢行", - tts="前方人行横道,请减速慢行" + tts="前方学校,减速慢行" ), TYPE_USECASE_ID_ROAD_COLLISION_WARNING( 0x2C06.toString(), @@ -769,7 +769,7 @@ enum class EventTypeEnum( TYPE_USECASE_ID_ROAD_NO_PARKING.poiType -> TYPE_USECASE_ID_ROAD_NO_PARKING.poiTypeSrcVr TYPE_USECASE_ID_ROAD_GIVE_WAY.poiType -> TYPE_USECASE_ID_ROAD_GIVE_WAY.poiTypeSrcVr TYPE_ERROR.poiType -> TYPE_ERROR.poiTypeSrcVr - else -> TYPE_USECASE_ID_AVW.poiTypeSrcVr + else -> TYPE_ERROR.poiTypeSrcVr } } @@ -806,8 +806,9 @@ enum class EventTypeEnum( TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.poiType -> TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.content TYPE_USECASE_ID_ROAD_NO_PARKING.poiType -> TYPE_USECASE_ID_ROAD_NO_PARKING.content TYPE_USECASE_ID_ROAD_GIVE_WAY.poiType -> TYPE_USECASE_ID_ROAD_GIVE_WAY.content + FOURS_ROAD_WORK.poiType -> FOURS_ROAD_WORK.content TYPE_ERROR.poiType -> TYPE_ERROR.content - else -> TYPE_USECASE_ID_AVW.content + else -> TYPE_ERROR.content } } @@ -844,8 +845,9 @@ enum class EventTypeEnum( TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.poiType -> TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.tts TYPE_USECASE_ID_ROAD_NO_PARKING.poiType -> TYPE_USECASE_ID_ROAD_NO_PARKING.tts TYPE_USECASE_ID_ROAD_GIVE_WAY.poiType -> TYPE_USECASE_ID_ROAD_GIVE_WAY.tts + FOURS_ROAD_WORK.poiType -> FOURS_ROAD_WORK.tts TYPE_ERROR.poiType -> TYPE_ERROR.tts - else -> TYPE_USECASE_ID_AVW.tts + else -> TYPE_ERROR.tts } } } From ae5c2878c71a7eb54e929a952e975ae5e07a7365 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Mon, 27 Sep 2021 12:00:22 +0800 Subject: [PATCH 12/36] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=BA=A2=E7=BB=BF?= =?UTF-8?q?=E7=81=AFUI=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 董宏宇 --- .idea/misc.xml | 24 ++----------------- .../main/res/layout/view_traffic_light_vr.xml | 1 - 2 files changed, 2 insertions(+), 23 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index af014f4e05..96c713cf28 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -13,28 +13,13 @@ - - - - - - + + - - - - - - - - - - - @@ -42,14 +27,9 @@ - - - - - diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_traffic_light_vr.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_traffic_light_vr.xml index d181b84b9f..e2e4038ef9 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_traffic_light_vr.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_traffic_light_vr.xml @@ -22,7 +22,6 @@ android:textColor="#FFFFFF" android:textSize="38px" app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toStartOf="@+id/ctvYellowTrafficLight" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" tools:checked="true" From f132b7d3fc574e7b813b75481ed2d750c78c7c56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Mon, 27 Sep 2021 12:04:48 +0800 Subject: [PATCH 13/36] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=BA=A2=E7=BB=BF?= =?UTF-8?q?=E7=81=AF=E5=80=92=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 董宏宇 --- .../core/function/obu/mogo/MogoPrivateObuManager.kt | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt index ad1f24323f..a7e7b5d483 100644 --- a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt +++ b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt @@ -7,7 +7,6 @@ import com.mogo.eagle.core.function.api.hmi.warning.WarningStatusListener import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.function.obu.mogo.utils.TrafficDataConvertUtils import com.mogo.eagle.core.utilcode.mogo.logger.Logger -import com.mogo.eagle.core.utilcode.util.LogUtils import com.mogo.module.common.datacenter.SnapshotLocationDataCenter import com.mogo.module.common.drawer.TrafficMarkerDrawer import com.mogo.module.common.enums.EventTypeEnum @@ -515,8 +514,8 @@ class MogoPrivateObuManager private constructor() { } isGreenLight = false CallerHmiManager.showWarningTrafficLight(1) - val red = currentLight.count_down.toInt() + 1 - CallerHmiManager.changeCountdownRed(if (red >= 0) red else 0) + val red = currentLight.count_down.toInt() + CallerHmiManager.changeCountdownRed(red) ttsContent = EventTypeEnum.getWarningTts(appId.toString()) alertContent = EventTypeEnum.getWarningContent(appId.toString()) CallerHmiManager.changeCountdownGreen(0) @@ -538,8 +537,8 @@ class MogoPrivateObuManager private constructor() { } isRedLight = false CallerHmiManager.showWarningTrafficLight(3) - val green = currentLight.count_down.toInt() + 1 - CallerHmiManager.changeCountdownGreen(if (green >= 0) green else 0) + val green = currentLight.count_down.toInt() + CallerHmiManager.changeCountdownGreen(green) //防止数据出现问题的容错 CallerHmiManager.changeCountdownRed(0) CallerHmiManager.changeCountdownYellow(0) @@ -581,8 +580,8 @@ class MogoPrivateObuManager private constructor() { 0x3 -> { CallerHmiManager.disableWarningV2X(appId.toString()) CallerHmiManager.showWarningTrafficLight(2) - val yellow = currentLight.count_down.toInt() + 1 - CallerHmiManager.changeCountdownYellow(if (yellow >= 0) yellow else 0) + val yellow = currentLight.count_down.toInt() + CallerHmiManager.changeCountdownYellow(yellow) CallerHmiManager.changeCountdownGreen(0) CallerHmiManager.changeCountdownRed(0) } From e0b013bfd8fb48c94d195b4f0596fcc0adb56af2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Mon, 27 Sep 2021 14:52:00 +0800 Subject: [PATCH 14/36] =?UTF-8?q?=E5=AE=8C=E6=88=90=20=E5=B7=A6=E4=BE=A7?= =?UTF-8?q?=E8=BE=85=E5=8A=A9=20=E9=97=AF=E7=BA=A2=E7=81=AF=E9=A2=84?= =?UTF-8?q?=E8=AD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 董宏宇 --- .../core/function/hmi/ui/MoGoHmiFragment.kt | 1 + .../obu/mogo/MogoPrivateObuManager.kt | 56 ++++++++++--------- .../mogo/module/common/enums/EventTypeEnum.kt | 2 +- 3 files changed, 33 insertions(+), 26 deletions(-) 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 098ff1099c..a142edc84e 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 @@ -49,6 +49,7 @@ class MoGoHmiFragment : MvpFragment * @param ttsContent tts语音播报消息 * @param tag tag绑定弹窗的标志 */ + @Synchronized override fun showWarningV2X( v2xType: Int, alertContent: String?, diff --git a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt index a7e7b5d483..94cc956107 100644 --- a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt +++ b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt @@ -282,10 +282,14 @@ class MogoPrivateObuManager private constructor() { } - // (4) V2I预警信息:CVX_IVP_THREAT_IND + // (4) V2I预警信息:CVX_IVP_THREAT_IND,红绿灯 override fun onCvxIvpThreatIndInfo(info: CvxIvpThreatIndInfo?) { Logger.d(MogoObuConst.TAG_MOGO_OBU, "CvxIvpThreatIndInfo ------> $info") - if (info != null && info.ext_info != null && info.threat_info != null && info.ext_info.lights != null && info.ext_info.lights.isNotEmpty()) { + if (info != null && info.ext_info != null + && info.threat_info != null + && info.ext_info.lights != null + && info.ext_info.lights.isNotEmpty() + ) { handlerTrafficLight( info.threat_info.app_id, info.status, @@ -487,6 +491,7 @@ class MogoPrivateObuManager private constructor() { /** * 修改红绿灯 */ + @Synchronized private fun changeTrafficLightStatus( appId: Int, lights: List, @@ -499,8 +504,30 @@ class MogoPrivateObuManager private constructor() { val currentLight = lights[index] Logger.d( MogoObuConst.TAG_MOGO_OBU, - "currentLight = $currentLight ---currentLight.phase = ${currentLight.phase} --- index = $index ---appId = $appId" + "currentLight = $currentLight ---currentLight.phase = ${currentLight.phase} ---rlvw_violation_type = ${currentLight.rlvw_violation_type} --- index = $index ---appId = $appId ---appId = $appId" ) + // 闯红灯预警 + when (currentLight.rlvw_violation_type) { + 0x0 -> {//不可用 V2I_RLVW_VIOLATION_TYPE_UNAVAILABLE + } + 0x1 -> {//无违规 V2I_RLVW_VIOLATION_TYPE_NO_VIOLATION + CallerHmiManager.disableWarningV2X(appId.toString()) + } + 0x2 -> {//闯红灯 V2I_RLVW_VIOLATION_TYPE_RUNNING_RED_LIGHT + ttsContent = EventTypeEnum.getWarningTts(appId.toString()) + alertContent = EventTypeEnum.getWarningContent(appId.toString()) + CallerHmiManager.showWarningV2X( + appId, + alertContent, + ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 + appId.toString(), + null + ) + } + 0x3 -> {//闯黄灯 V2I_RLVW_VIOLATION_TYPE_RUNNING_YELLOW_LIGHT + } + } + when (currentLight.phase) { // 灯光不可用 0x0 -> { @@ -514,20 +541,12 @@ class MogoPrivateObuManager private constructor() { } isGreenLight = false CallerHmiManager.showWarningTrafficLight(1) + val red = currentLight.count_down.toInt() CallerHmiManager.changeCountdownRed(red) - ttsContent = EventTypeEnum.getWarningTts(appId.toString()) - alertContent = EventTypeEnum.getWarningContent(appId.toString()) CallerHmiManager.changeCountdownGreen(0) CallerHmiManager.changeCountdownYellow(0) - CallerHmiManager.showWarningV2X( - appId, - alertContent, - ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 - appId.toString(), - null - ) } // 绿灯 0x2 -> { @@ -647,19 +666,6 @@ class MogoPrivateObuManager private constructor() { EventTypeEnum.TYPE_USECASE_ID_LTA.poiType -> { alertContent = EventTypeEnum.getWarningContent(appId.toString()) ttsContent = EventTypeEnum.getWarningTts(appId.toString()) - if ( - direction == WarningDirectionEnum.ALERT_WARNING_LEFT || - direction == WarningDirectionEnum.ALERT_WARNING_TOP_LEFT || - direction == WarningDirectionEnum.ALERT_WARNING_BOTTOM_LEFT - ) { - ttsContent = String.format(ttsContent, "左") - } else if ( - direction == WarningDirectionEnum.ALERT_WARNING_RIGHT || - direction == WarningDirectionEnum.ALERT_WARNING_TOP_RIGHT || - direction == WarningDirectionEnum.ALERT_WARNING_BOTTOM_RIGHT - ) { - ttsContent = String.format(ttsContent, "右") - } } //异常车辆提醒 diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt b/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt index 1a89110efa..8fe7e747ca 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt @@ -209,7 +209,7 @@ enum class EventTypeEnum( "左转辅助", poiTypeSrcVr=R.drawable.icon_warning_v2x_collision_warning, content="左转碰撞预警", - tts="注意%s后车辆" + tts="注意路口对向来车" ), TYPE_USECASE_ID_HLW( ObuConstants.USE_CASE_ID.HLW.toString(), From cd230ac42665a155fbdddd779d2e31082cffbee0 Mon Sep 17 00:00:00 2001 From: liujing Date: Tue, 28 Sep 2021 11:49:12 +0800 Subject: [PATCH 15/36] no message --- .../eagle/core/function/check/VehicleMonitoringManager.java | 4 +--- .../com/mogo/eagle/core/function/check/view/CheckAdapter.java | 2 +- .../mogo/eagle/core/function/check/view/CheckInfoAdapter.java | 1 - 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java index c217d85180..ed60b68332 100644 --- a/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java +++ b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/VehicleMonitoringManager.java @@ -49,6 +49,7 @@ public class VehicleMonitoringManager implements ICheckProvider { private Context mContext; private final Map mListeners = new ConcurrentHashMap<>(); private boolean hasTipShow = false;//是否已经弹框提示 + CheckDialog dialog; @Override public void init(Context context) { @@ -108,9 +109,6 @@ public class VehicleMonitoringManager implements ICheckProvider { } } - - static CheckDialog dialog; - /** * 指标异常弹框 */ 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 index 7a0d5ef96f..ff9029336c 100644 --- 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 @@ -30,7 +30,7 @@ public class CheckAdapter extends RecyclerView.Adapter LayoutInflater mLayoutInflater; CheckResultData mCheckResultData; private Context mContext; - private static CheckInfoListDialog mCheckInfoListDialog; + CheckInfoListDialog mCheckInfoListDialog; public CheckAdapter(@NonNull Context context, @NonNull CheckResultData checkResult) { mContext = context; 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 index b2e2f90ce2..8b73773860 100644 --- 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 @@ -23,7 +23,6 @@ import java.util.List; * @since: 9/23/21 */ public class CheckInfoAdapter extends RecyclerView.Adapter { - private static final String TAG = "CheckInfoAdapter"; LayoutInflater mLayoutInflater; private Context mContext; private String mStyle; From 7a3713dedede1ce9bddded9795251bd1fb373954 Mon Sep 17 00:00:00 2001 From: liujing Date: Tue, 28 Sep 2021 13:31:40 +0800 Subject: [PATCH 16/36] no message --- .../core/function/check/view/CheckActivity.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) 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 index b909c22cdd..3d4ce0dfc6 100644 --- 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 @@ -53,7 +53,7 @@ public class CheckActivity extends AppCompatActivity { private static final String TAG = "CheckActivity"; private static RecyclerView mRecyclerView; private static CheckResultData sCheckResultData; - private static Context context; + private static Context mContext; private static NetworkStatusUtil.NetWorkStatus sNetWorkStatus; private ImageView mImageView; //车模 @@ -85,7 +85,7 @@ public class CheckActivity extends AppCompatActivity { protected void onStart() { super.onStart(); animation(); - loadDetail(context, null); + loadDetail(mContext, null); } /** * 列表View初始化 @@ -99,7 +99,7 @@ public class CheckActivity extends AppCompatActivity { scanTopImageView = findViewById(R.id.scan_car_top_image); tipsImageView = findViewById(R.id.scan_car_tips); mProgressBar = findViewById(R.id.check_progress); - context = mImageView.getContext(); + mContext = mImageView.getContext(); mImageView.setOnClickListener(v -> { finish(); }); @@ -109,7 +109,7 @@ public class CheckActivity extends AppCompatActivity { 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(context, sCheckResultData); + mCheckAdapter = new CheckAdapter(mContext, sCheckResultData); mRecyclerView.setAdapter(mCheckAdapter); } @@ -118,18 +118,20 @@ public class CheckActivity extends AppCompatActivity { */ public static void checkMonitor(Context context, ICheckResultCallBack checkResultCallBack) { Log.d(TAG, "checkMonitor"); - loadDetail(context, checkResultCallBack); + mContext = context; + loadDetail(mContext, checkResultCallBack); } //网络请求,获取自车检测结果(工控机上报云端) public static void loadDetail(Context context, ICheckResultCallBack checkResultCallBack) { + mContext = context; final Map params = ParamsBuilder.of(false) .append("sn", MoGoAiCloudClientConfig.getInstance().getSn()) .build(); CheckApiServiceFactory.getDataApiService(context).loadMonitorDetail(params) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new SubscribeImpl(RequestOptions.create(context)) { + .subscribe(new SubscribeImpl(RequestOptions.create(mContext)) { @Override public void onSuccess(CheckResultData o) { super.onSuccess(o); From 919a6421951d8d3819ed38b0decde465d75b3a11 Mon Sep 17 00:00:00 2001 From: liujing Date: Tue, 28 Sep 2021 17:34:16 +0800 Subject: [PATCH 17/36] =?UTF-8?q?[add]=20=E5=9B=BE=E7=89=87=E8=B5=84?= =?UTF-8?q?=E6=BA=90=E6=9B=BF=E6=8D=A2,UI=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/res/drawable/check_close.png | Bin 0 -> 4305 bytes .../src/main/res/layout/activity_check.xml | 2 +- .../src/main/res/layout/check_dialog.xml | 2 +- .../main/res/layout/check_info_adapter.xml | 21 +++++++++++------- .../src/main/res/layout/check_info_list.xml | 2 +- 5 files changed, 16 insertions(+), 11 deletions(-) create mode 100644 core/function-impl/mogo-core-function-check/src/main/res/drawable/check_close.png diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_close.png b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_close.png new file mode 100644 index 0000000000000000000000000000000000000000..ba03e033d8aeaa1d4a410b37b63b081a0084165b GIT binary patch literal 4305 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 literal 0 HcmV?d00001 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 index b9ae3f9dcd..9d81fab132 100644 --- 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 @@ -22,7 +22,7 @@ android:layout_height="@dimen/dp_106" android:layout_marginLeft="@dimen/dp_50" android:layout_marginTop="@dimen/dp_50" - android:src="@drawable/module_common_icon_close" + android:src="@drawable/check_close" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" /> 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 index 0df7874ad0..b7f215582e 100644 --- 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 @@ -13,7 +13,7 @@ android:layout_height="@dimen/dp_106" android:layout_marginLeft="@dimen/dp_30" android:layout_marginTop="@dimen/dp_30" - android:src="@drawable/module_common_icon_close" + android:src="@drawable/check_close" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" /> 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 index 0cc4eecef8..040a9beb64 100644 --- 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 @@ -2,34 +2,39 @@ + android:layout_height="@dimen/dp_127" + android:layout_gravity="left" + android:layout_marginLeft="@dimen/dp_34"> 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 index 2bb0fae42d..01d064eb5a 100644 --- 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 @@ -12,7 +12,7 @@ android:layout_height="@dimen/dp_106" android:layout_marginLeft="@dimen/dp_30" android:layout_marginTop="@dimen/dp_30" - android:src="@drawable/module_common_icon_close" + android:src="@drawable/check_close" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" /> From 1cade0f60223f3d157fcd21763e1fdadce78ab29 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 28 Sep 2021 16:47:23 +0800 Subject: [PATCH 18/36] fix ui problem and dispatch problem --- .../com/mogo/module/adas/AdasProvider.java | 2 +- .../module_push_dialog_close.png | Bin 2962 -> 4305 bytes 2 files changed, 1 insertion(+), 1 deletion(-) 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 index 7f1837a0b1..ff71c69a5e 100644 --- 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 @@ -29,7 +29,7 @@ public class AdasProvider implements IProvider { Logger.d(TAG, "初始化 AdasProvider 模块"); adasEventManager = AdasEventManager.getInstance(); initAdas(context, adasEventManager); - initAutoPilotBusiness(context); +// initAutoPilotBusiness(context); addAdasStatusListener(new IAdasStatusListener() { @Override diff --git a/modules/mogo-module-push/src/main/res/drawable-xhdpi/module_push_dialog_close.png b/modules/mogo-module-push/src/main/res/drawable-xhdpi/module_push_dialog_close.png index 95a08f52f4b5f8a91653404d9ed62e438d7084c1..ba03e033d8aeaa1d4a410b37b63b081a0084165b 100644 GIT binary patch delta 4275 zcmV;k5KQlq7ttXhiBL{Q4GJ0x0000DNk~Le0001L0001N2nGNE0D^cYijg5me`=ru z00aO4009610BisN003U^Z599k5IadkK~#7F?Oh3Q6;&1`3tQM^4}zEkk!4sy683!) z6og_GhDBut846G)RB4q6%bo(=G1daa5l-zB<-m$C{j#j^xl2rjC4^8F6jFUZP3)rJIHfm>HFLDHLwQQ=i^ zb_L(ky8*rGvl>wKF|en>PlB84HAoNY;VjDpUj*lS@SWjBtpF6)ln5{Ze|p^T5vy+? z7extJD%j^L(w9JmKmgsqoxqN33w~OP9-udA;Im-PIG>O&fU1X)b_WxnAfJp{d!rIy zrmICWfudy=1MUnC)GjMae3_13`~apgVhWiB)KeHuUvOPhMrBSTH2=?l&x5HR4JD(2 z;(liUm?rk4N>qb~!Pku(f1r^-aSiGR_P2FNtGv(Q!_#0xW|t8{q`5s9+ym_IYY~Q^ znnF>M8}ut+dPH<3y@8_lU<~+CR&^o(=+bHr<{s>(sGz5LdIHr3jgJM>{I1T#Jt4v3 zCiz#r1fdsD^el`7>s6m#IOCAA+yx(Fr{SOQT^Z*hs@fe~+>Hq7J&m=v?Ny z>I>}*n&KnrAX?YgX7#C?u8Ky^g*{oOZVmw*JCf;qFYv`RxOP}IM}z_z+m zFL}-^dNVX_jI{v821kRne2dSjHPJHW3A4veT~CEwAB{W@ri0ZcZ4%(2C@n#c9J-!( z4p??LxDMDR?Gm6If4OXUBu7tXR8Le+FSt$KOMn`wF*sFiRce8vZXKw$QoEcg3Gig$ zE;vU`X*H^kQV8cA+lfCiAG6)STG<}mgIoq+7u~U+D%j=V5$-n=j=-B-_$kdVNyzWQqL*|TR~`u_Xx#}6DhkZ~Yp5!b0M za*fH^?-Nn5f0x3`(6zV4Govt zEh{U#{o;!+F8%uJud}5zgP*0S|DRx|NT#YYio0Y}K$<#rYAb*=qROBHCr_R{b>qg3 z!>Xhk{e*-kr!+!hu|F^0@(TFgGo_XdO z{?*FO=o&A8sD4c82pWlqh^Tw$(4oaGTejp8gbTH4)24EUxnvrX;DUoAP!yVJ-tj9} zuJ8a&k!H-8F@5dYwT3%_+qP|68|x$0U6@j5N=izEeO3C-i*&|CI$7P0Krv#*DbtIF z+W(g$z^HCwAcO-MbGjUc8t*Zrr$NtOE@EkfVU8sHkobWIlv-MXrF>G|Zq{Cr+GL z1h8DxjANa!{*FEO+;jhZ_>dubrV`EcWT{0*f1v2s6Z)H^kMw#bCnuKxtP2DyI5=1l zteBXXZY^50`1QN*z7x$r)!k~|ym`%&Cr>Vf+Up?tC?O%?hhDvUt-E*co~W2nd5k!| z0KU%#B%ru&;*2t#5)%`P)6>&`8Z%}L!BYA|2>@7;jT<+{yWjf_~SVf9UZ-f>RD9IguL5mBa7`wK+(t4 zgbBW)`1tr6+1c4i&p!KXOi)lzO}Tymf2%-%)dSvx>^*z-{32IIDXmeXMnMFrUAuN& zmC7(3>i8^X@89m+x#Me)*d5}NB)#xS%SuV@Fy9n9ckWzKPEJnps8OSYVD;C>lQ!KRiW*ouVpG9DnUhBNxO9eTJ_B0n&Yh!0gQGD6kp5a&e^_WWkl1ai_&fr|jjq`)5;Q3$>~RX9g3^W$A07j+ z*iRS2%nE|PFbbAg2D}Tojs>tc3jpAAx_0f#;2cG|bm>wOKw5!W>=PSYv17kw&?}Nn z0dQB&yQh|;fXIOe`668DKj(k zXMps1Zf>qsL1N!|b1{vB?+k7Xwj>=rdNdCk&J2K|II{@W(4j-4Z``<%0#%of&Ft*R z$Vj2<3BJaZK7IOpcK!Nwr{e?*3W3&VB7x#TmEu{w6*_+S@ZnsjxyxLWsP5$Y1h9gk zCZplZ4e!#Wi_kd2HXyBUf8V~#@hp|A%VKHt$HsHe-29p5jMXZHg9i`(ip_8qPFx8V zJMTiY65)9Wb;)o@xOVMY1}w%;q4pR~><`4T{z#y>w@~u4S!y6S*vqL?r_L1!I$8-V zQHP=CE)k@Rj1201e<6C(&k-o@FJwIdRvgLRy?d`?1A7&l-X5NSe+7^-VIlq{H8quP z8GoY-1S$qBt4gdo8U&sE0+-M)Fa`(~|KfxMt1b)1NF3Zlw}b_)o0&*}2$tVbY;5eA zl$4ZscOAz$(*5_}e}7|AQj))d#32StYn0!Ch2xIr;h-Jt4k)Te%%-lGP3HktvAgmX z%}*deG|&BJjiMlNf7&|+UUuFkRz*CN96NSw6pk+vcvz|GBWo2pOVwxf4WE<9wr<@z z8i$PIoDx<1fOEDHBAa6IEw2*!8C;4=DlRTAK)m`V*bJ9@&l$T8AU2D>LF`4dZQHgj!N%FlO8}xS zDdm;pL!gS3e@gf|{fjTY7%*$rtly&_ikn)TSrty3HtmyLyLLI9M@^bEX*YoQk7x|o zG&e^GS}a1s_)iH~mCEt4EKsXgukJf%&YYQ$o+3!MZrv)HIdkSRtV^;dyf8d=x?8gV zR?8hbcElp;sDVY1vMx|7R;=hfckbNTB9L%Ucw_eLf7#1mt_uTPxMpFtZ5M&iq)C%d zgrLRZpwWuQJ(a4DR>cj`K+McrzI=Jl`Sa($gf=UHw z$fJnae-R@_Y(>PUNjHEY%yA!v(vp-oiI#5}6>O7ooUdNgPwI{NX)A4e`;y!a0y zkPyUDg6pGk@Gxk)Fo5IwEjTUSBkDiEdIINOf9AzDQ8|VV!`DC4X z@4ffByz#~x^OT~DC=A}CeeJc^KE++B%X$b0r@R{x0CP}O7caK)f*UWoiOLz6N7qs1 z8Y}_D_PqK_)zaZN-+Z&<+i$=9CkCb{eUAvFJD6?DSFKu=p;SgoIySl+5V3Sb^er#A ze_{5$${Qe}at7tmnyqx0I|7wzP=m77at(Ovt+(a?B*h~ZfOPlu*I)k(lrCF|7m4@p z->-oa;xBPg?Wm}l)~#DV1>c~@-g;4;D)XH1a0H47nx_6>xpm~xgHopfQYmKK=eR=Z z)M2IaTG9y?4j;e7O_Co(-y=v<7=9-De^z52)t=KIrz23T(=ee_?J$lUYE?~>enWs| z@4WNQils}JUX;>|dSd;12(Z@Tj@C(~HV}EM*jJ@*yiCu;_fFw#Re?(JvH{hfL!G1$ zkg6Xb=)dgUci&z4(MKO8SIsl(H!rN=y3OBtflaOr#Af^?mu_I13l3F*qF<@ff6_3p zBQ>!3%!jGH5y0G&+JV4|VFj*4FiN77X4aEnLB*}%e2$wO(+qxRI2&h_ z6UjL|+oHs1r&0#~fG@5Eyx*N}-@aY8a^=eN5Y$Zrn^RTwqD6}$1`HSwj`;Kf{Lv&7 z6ckkcF{!G+yFw@Md3@C>>L_o0|O;zraZ8BB@l(W#XR6JIw=ohCVeQ}``zwL+q639fAf3h2G$EMuP zD3<*ZY#SDiQq%99o*AbNwo=t)vzgRLDQdBVejLf5XUVprnqs!plJLV^YE+@MNGQXAxDs;baz290=E~Zs6`bOLt; zTj?gc)IaITTNO!Q0z`+jPso=*NdsmdxQ2BAhl8zPCDL-ue+2UsmQO=0In=9~tN@f_ zXQ>tmRv7qka4oP|L@;=KLttni&{(hxSq&&h!LV=iauBfA74Lci$2ErzWt!Jy`YU}t zbI=D_vNBL|9S%VvO?-*Dwh=teL^9v0Itc>3BxG7?k&PDHLkV1ka`|8oEU delta 2921 zcmV-v3zqcJA(9s%iBL{Q4GJ0x0000DNk~Le0001M0001M2nGNE0C2y243Qy7e`}xv z00aO4009610BZmM003)gdPM*L3j9e#K~#7F?Ok1L6-5+oOQBQ{T2g@uN+~5m1rab5 zUqC?03rf+54<>*lq{bIRNQ@6ACMb~yA9%vxg9W1es4>;}^HxkHgrGufLNx+Kl+xM~ zMT`_$1i$Zc=dxUO_wMeUnVq@pe@VX1-kI5R&YZ6^J3F&`Z*h@bau3{{3`|Oc#}z<% z7KY>V6=1-D%Q)@_&H>$N^dP+kSRuuRdpREd%>f<(W&u@zOt}tazXBa;oIpxajTFdypzE9z(L>-z!))wEDmc+(qL~gMcC6w+9BZIxSfidf2_w4faiev zxC4>H{t(K)0X_lF1F=XPWR;+$j{|Ff+E`j0-6)4i_Og$Fv(eQ=J5x7V3*qKEfU`K; z

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 T;3E0-00000NkvXXu0mjfWe#Jf From 33108699d6fc9135c8c6c94b9ef2c8890bfa72d6 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 28 Sep 2021 18:11:08 +0800 Subject: [PATCH 19/36] fix ui problem --- .idea/misc.xml | 4 ++++ .../src/main/res/drawable/module_service_left_corner_bg.xml | 6 ++++++ .../main/res/drawable/module_service_right_corner_bg.xml | 6 ++++++ .../main/res/layout/module_dialog_adas_dispatch_cars.xml | 2 ++ .../src/main/res/values-xhdpi-2560x1600/dimens.xml | 2 +- .../src/main/res/values-xhdpi/dimens.xml | 2 +- modules/mogo-module-service/src/main/res/values/colors.xml | 1 + modules/mogo-module-service/src/main/res/values/dimens.xml | 2 +- 8 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 modules/mogo-module-service/src/main/res/drawable/module_service_left_corner_bg.xml create mode 100644 modules/mogo-module-service/src/main/res/drawable/module_service_right_corner_bg.xml diff --git a/.idea/misc.xml b/.idea/misc.xml index 96c713cf28..5e334d0770 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -15,6 +15,8 @@ + + @@ -23,10 +25,12 @@ + + diff --git a/modules/mogo-module-service/src/main/res/drawable/module_service_left_corner_bg.xml b/modules/mogo-module-service/src/main/res/drawable/module_service_left_corner_bg.xml new file mode 100644 index 0000000000..0a45157a77 --- /dev/null +++ b/modules/mogo-module-service/src/main/res/drawable/module_service_left_corner_bg.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/modules/mogo-module-service/src/main/res/drawable/module_service_right_corner_bg.xml b/modules/mogo-module-service/src/main/res/drawable/module_service_right_corner_bg.xml new file mode 100644 index 0000000000..8740ce4329 --- /dev/null +++ b/modules/mogo-module-service/src/main/res/drawable/module_service_right_corner_bg.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/modules/mogo-module-service/src/main/res/layout/module_dialog_adas_dispatch_cars.xml b/modules/mogo-module-service/src/main/res/layout/module_dialog_adas_dispatch_cars.xml index d2c52b9b1a..150d8f08f4 100644 --- a/modules/mogo-module-service/src/main/res/layout/module_dialog_adas_dispatch_cars.xml +++ b/modules/mogo-module-service/src/main/res/layout/module_dialog_adas_dispatch_cars.xml @@ -67,6 +67,7 @@ android:layout_width="@dimen/module_services_dispatch_cars_dialog_btn_width" android:layout_height="@dimen/module_services_dispatch_cars_dialog_line_margin_bottom" android:gravity="center" + android:background="@drawable/module_service_left_corner_bg" android:text="@string/module_services_dispatch_cars_affirm" android:textColor="@color/module_services_dispatch_cars_text_loc" android:textSize="@dimen/module_services_dispatch_cars_dialog_title_size" @@ -88,6 +89,7 @@ android:gravity="center" android:text="@string/module_services_dispatch_cars_cancel" android:textColor="@color/module_services_dispatch_cars_cancel" + android:background="@drawable/module_service_right_corner_bg" android:textSize="@dimen/module_services_dispatch_cars_dialog_title_size" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" /> diff --git a/modules/mogo-module-service/src/main/res/values-xhdpi-2560x1600/dimens.xml b/modules/mogo-module-service/src/main/res/values-xhdpi-2560x1600/dimens.xml index 26344ed81f..5a9f85d1d2 100644 --- a/modules/mogo-module-service/src/main/res/values-xhdpi-2560x1600/dimens.xml +++ b/modules/mogo-module-service/src/main/res/values-xhdpi-2560x1600/dimens.xml @@ -30,7 +30,7 @@ 55px 38px 179px - 56px + 54px 251px 152px 474.5px diff --git a/modules/mogo-module-service/src/main/res/values-xhdpi/dimens.xml b/modules/mogo-module-service/src/main/res/values-xhdpi/dimens.xml index e7e1de4a3a..675be3d1b9 100644 --- a/modules/mogo-module-service/src/main/res/values-xhdpi/dimens.xml +++ b/modules/mogo-module-service/src/main/res/values-xhdpi/dimens.xml @@ -89,7 +89,7 @@ 41px 28px 134px - 42px + 40px 188px 114px 355px diff --git a/modules/mogo-module-service/src/main/res/values/colors.xml b/modules/mogo-module-service/src/main/res/values/colors.xml index b6f13971a1..7f60162e16 100644 --- a/modules/mogo-module-service/src/main/res/values/colors.xml +++ b/modules/mogo-module-service/src/main/res/values/colors.xml @@ -18,4 +18,5 @@ #4D000000 #66B8BFE8 #AFB3C7 + #E63B4577 \ No newline at end of file diff --git a/modules/mogo-module-service/src/main/res/values/dimens.xml b/modules/mogo-module-service/src/main/res/values/dimens.xml index 5bcda01004..82f1e32a7c 100644 --- a/modules/mogo-module-service/src/main/res/values/dimens.xml +++ b/modules/mogo-module-service/src/main/res/values/dimens.xml @@ -88,7 +88,7 @@ 55px 38px 179px - 56px + 54px 251px 152px 474.5px From 47e814a8222d219422c1f26950104bb312ea3c65 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 28 Sep 2021 18:36:31 +0800 Subject: [PATCH 20/36] fix ui problem of line --- .../src/main/res/layout/module_dialog_adas_dispatch_cars.xml | 2 +- .../src/main/res/values-xhdpi-2560x1600/dimens.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/mogo-module-service/src/main/res/layout/module_dialog_adas_dispatch_cars.xml b/modules/mogo-module-service/src/main/res/layout/module_dialog_adas_dispatch_cars.xml index 150d8f08f4..d2ae296977 100644 --- a/modules/mogo-module-service/src/main/res/layout/module_dialog_adas_dispatch_cars.xml +++ b/modules/mogo-module-service/src/main/res/layout/module_dialog_adas_dispatch_cars.xml @@ -75,7 +75,7 @@ app:layout_constraintLeft_toLeftOf="parent" /> 54px 251px 152px - 474.5px + 474px 20px 46px 24px From a75b67149b15fa3f86a68a532d9518f1bbc956b4 Mon Sep 17 00:00:00 2001 From: liujing Date: Tue, 28 Sep 2021 20:38:01 +0800 Subject: [PATCH 21/36] =?UTF-8?q?UI-=E8=87=AA=E6=A3=80=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E7=AC=AC=E4=B8=80=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../function/check/view/CheckInfoAdapter.java | 11 +++++++++++ .../src/main/res/drawable/check_driver.xml | 4 ++-- .../src/main/res/layout/check_info_adapter.xml | 17 +++++++++++++---- 3 files changed, 26 insertions(+), 6 deletions(-) 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 index 8b73773860..03138ae53d 100644 --- 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 @@ -1,6 +1,7 @@ package com.mogo.eagle.core.function.check.view; import android.content.Context; +import android.text.TextPaint; import android.util.Log; import android.view.LayoutInflater; import android.view.View; @@ -50,10 +51,18 @@ public class CheckInfoAdapter extends RecyclerView.Adapter { if (position == 0 || position == 2) { ((CheckInfoViewHolder) holder).checkIcon.setVisibility(View.GONE); ((CheckInfoViewHolder) holder).mTextView.setText("模块名称"); + TextPaint tp = ((CheckInfoViewHolder) holder).mTextView.getPaint(); + tp.setFakeBoldText(true); + ((CheckInfoViewHolder) holder).backImage.setVisibility(View.VISIBLE); + } else if (position == 1 || position == 3) { ((CheckInfoViewHolder) holder).checkIcon.setVisibility(View.GONE); ((CheckInfoViewHolder) holder).mTextView.setText("运行状态"); + TextPaint tp = ((CheckInfoViewHolder) holder).mTextView.getPaint(); + tp.setFakeBoldText(true); + ((CheckInfoViewHolder) holder).backImage.setVisibility(View.VISIBLE); } else { + ((CheckInfoViewHolder) holder).backImage.setVisibility(View.INVISIBLE); try { if ((position - 4) < showData.size() * 2) { int index = (position - 4) / 2; @@ -99,11 +108,13 @@ public class CheckInfoAdapter extends RecyclerView.Adapter { public class CheckInfoViewHolder extends RecyclerView.ViewHolder { private ImageView checkIcon; private TextView mTextView; + private View backImage; public CheckInfoViewHolder(View v) { super(v); checkIcon = v.findViewById(R.id.info_check_icon); mTextView = v.findViewById(R.id.info_result_tx); + backImage = v.findViewById(R.id.backImage); } } } diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_driver.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_driver.xml index 04aae14090..f0547c73db 100644 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_driver.xml +++ b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_driver.xml @@ -1,5 +1,5 @@ - - + + \ 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 index 040a9beb64..28c98605cf 100644 --- 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 @@ -3,16 +3,25 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="@dimen/dp_405" android:layout_height="@dimen/dp_127" - android:layout_gravity="left" - android:layout_marginLeft="@dimen/dp_34"> + android:layout_gravity="left"> + + From 3ec9b359edaaf68c2ccb510f26213af50361211a Mon Sep 17 00:00:00 2001 From: lianglihui Date: Tue, 28 Sep 2021 20:28:13 +0800 Subject: [PATCH 22/36] =?UTF-8?q?eagle930=20=E8=B7=AF=E6=B5=8B=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/function/smp/SmallMapProvider.java | 1 + .../dispatch/DispatchAutoPilotManager.java | 6 +++-- .../routeoverlay/RouteOverlayDrawer.java | 24 +++++++++++++------ 3 files changed, 22 insertions(+), 9 deletions(-) diff --git a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapProvider.java b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapProvider.java index cc32402ad7..8f1388a0c2 100644 --- a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapProvider.java +++ b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapProvider.java @@ -63,6 +63,7 @@ public class SmallMapProvider implements IMogoSmallMapProvider, IMogoStatusChang MogoServicePaths.PATH_SMALL_MAP, StatusDescriptor.MAIN_PAGE_RESUME, this); + MogoApisHandler.getInstance().getApis().getAdasControllerApi().addAdasAutopilotRouteCallBack(this); if (MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode()) { showPanel(); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/dispatch/DispatchAutoPilotManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/dispatch/DispatchAutoPilotManager.java index 09f4e7182a..f161bfe54a 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/dispatch/DispatchAutoPilotManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/dispatch/DispatchAutoPilotManager.java @@ -140,8 +140,10 @@ public class DispatchAutoPilotManager implements IMogoOnMessageListener wayLatLon = new ArrayList<>(); - for (MogoLatLng mogoLatLng : receiverBean.getStopsList()) { - wayLatLon.add(new RemoteControlAutoPilotParameters.AutoPilotLonLat(mogoLatLng.lat, mogoLatLng.lon)); + if (receiverBean!=null && receiverBean.getStopsList()!= null){ + for (MogoLatLng mogoLatLng : receiverBean.getStopsList()) { + wayLatLon.add(new RemoteControlAutoPilotParameters.AutoPilotLonLat(mogoLatLng.lat, mogoLatLng.lon)); + } } currentAutopilot.wayLatLons = wayLatLon; currentAutopilot.startLatLon = new RemoteControlAutoPilotParameters.AutoPilotLonLat(receiverBean.getStartLat(), receiverBean.getStartLon()); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java index a04e023e0f..c2664860ef 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java @@ -79,16 +79,26 @@ public class RouteOverlayDrawer { public IMogoPolyline draw(MogoLocation carLocal, List routelist) { clearMogoRouteOverlay(); if (routelist != null) { - - // 将当前车辆位置放进去 - mPolylinePointList.add(new MogoLatLng(carLocal.getLatitude(), carLocal.getLongitude())); - // 过滤后台推送的推荐路线集合 - for (MogoLatLng polyline : routelist) { - //需要剔除已经行驶过的经纬度,这里需要比对推荐路线集合中的点是否在当前车辆行驶方向前面如果不在则抛弃 - if (LocationUtils.isPointOnCarFront(carLocal, polyline)) { + if (carLocal == null){ + for (MogoLatLng polyline : routelist) { +// Log.e("IMogoPolyline",polyline.getLat()+":"+polyline.lon); + //需要剔除已经行驶过的经纬度,这里需要比对推荐路线集合中的点是否在当前车辆行驶方向前面如果不在则抛弃 mPolylinePointList.add(polyline); } + }else { + // 将当前车辆位置放进去 + mPolylinePointList.add(new MogoLatLng(carLocal.getLatitude(), carLocal.getLongitude())); + for (MogoLatLng polyline : routelist) { +// Log.e("IMogoPolyline",polyline.getLat()+":"+polyline.lon); + //需要剔除已经行驶过的经纬度,这里需要比对推荐路线集合中的点是否在当前车辆行驶方向前面如果不在则抛弃 + if (LocationUtils.isPointOnCarFront(carLocal, polyline)) { + mPolylinePointList.add(polyline); + } + } } + + // 过滤后台推送的推荐路线集合 + mPolylineColors.addAll(ColorUtils.getGradientAlpha("#002965ED", "#FF2965ED", "#002965ED", mPolylinePointList.size())); // 替换路径集合 mPolylineOptions.points(mPolylinePointList); From fd1c3f8f7a1921eb70dddda77aab571846fd329f Mon Sep 17 00:00:00 2001 From: lianglihui Date: Tue, 28 Sep 2021 21:18:47 +0800 Subject: [PATCH 23/36] =?UTF-8?q?eagle930=20=E4=BF=AE=E5=A4=8D=E8=BD=A6?= =?UTF-8?q?=E5=A4=B4=E6=9C=AA=E5=90=91=E4=B8=8A=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/eagle/core/function/smp/SmallMapDirectionView.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapDirectionView.java b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapDirectionView.java index cb8cdb1c3b..0148140f80 100644 --- a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapDirectionView.java +++ b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapDirectionView.java @@ -19,6 +19,7 @@ import com.amap.api.maps.CameraUpdateFactory; import com.amap.api.maps.TextureMapView; import com.amap.api.maps.UiSettings; import com.amap.api.maps.model.BitmapDescriptorFactory; +import com.amap.api.maps.model.CameraPosition; import com.amap.api.maps.model.CustomMapStyleOptions; import com.amap.api.maps.model.LatLng; import com.amap.api.maps.model.LatLngBounds; @@ -130,7 +131,6 @@ public class SmallMapDirectionView mAMap.setMapType(AMap.MAP_TYPE_NIGHT); // 关闭显示实时路况图层,aMap是地图控制器对象。 mAMap.setTrafficEnabled(false); - // 设置 锚点 图标 mCarMarker = mAMap.addMarker(new MarkerOptions() .icon(BitmapDescriptorFactory.fromResource(R.drawable.module_small_map_view_my_location_logo)) @@ -183,7 +183,7 @@ public class SmallMapDirectionView LatLng currentLatLng = new LatLng(latLng.getLatitude(), latLng.getLongitude()); if (mCarMarker != null) { - mCarMarker.setRotateAngle(360 - latLng.getBearing()); +// mCarMarker.setRotateAngle(360 - latLng.getBearing()); mCarMarker.setPosition(currentLatLng); mCarMarker.setToTop(); } @@ -219,6 +219,8 @@ public class SmallMapDirectionView //设置希望展示的地图缩放级别 mAMap.moveCamera(CameraUpdateFactory.newLatLngZoom(currentLatLng, zoomLevel)); } + CameraPosition cameraPosition = new CameraPosition.Builder().target(mCarMarker.getPosition()).bearing(latLng.getBearing()).tilt(0).zoom(zoomLevel).build(); + mAMap.moveCamera(CameraUpdateFactory.newCameraPosition(cameraPosition)); } @Override From 6a05f9c0149d0696f398b3da16b01357fae79c25 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Wed, 29 Sep 2021 11:41:17 +0800 Subject: [PATCH 24/36] update callchat version to finish eagle_eye version of 2.0.0 --- gradle.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle.properties b/gradle.properties index 0511e7b9b1..12db46f20e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -141,9 +141,9 @@ MOGO_OCH_TAXI_VERSION=2.0.58 MOGO_AICLOUD_SERVICES_SDK_VERSION=2.0.58 ######## 外部依赖引用 # 车聊聊 -CARCHATTING_VERSION=2.2.337 +CARCHATTING_VERSION=2.3.2 # 车聊聊接口 -CARCHATTINGPROVIDER_VERSION=1.1.16 +CARCHATTINGPROVIDER_VERSION=1.1.20 # websocket WEBSOCKET_VERSION=1.1.7 # loglib From 372b0015cac8d2f41a612a83c23c6b508c891680 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Wed, 29 Sep 2021 11:54:26 +0800 Subject: [PATCH 25/36] update callchat --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 12db46f20e..6347b55d01 100644 --- a/gradle.properties +++ b/gradle.properties @@ -141,7 +141,7 @@ MOGO_OCH_TAXI_VERSION=2.0.58 MOGO_AICLOUD_SERVICES_SDK_VERSION=2.0.58 ######## 外部依赖引用 # 车聊聊 -CARCHATTING_VERSION=2.3.2 +CARCHATTING_VERSION=2.3.3 # 车聊聊接口 CARCHATTINGPROVIDER_VERSION=1.1.20 # websocket From 2caf741f10aa19374c0e4a8063292052cce14194 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Wed, 29 Sep 2021 12:16:55 +0800 Subject: [PATCH 26/36] .. --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 6347b55d01..2c0d78e2c9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -141,7 +141,7 @@ MOGO_OCH_TAXI_VERSION=2.0.58 MOGO_AICLOUD_SERVICES_SDK_VERSION=2.0.58 ######## 外部依赖引用 # 车聊聊 -CARCHATTING_VERSION=2.3.3 +CARCHATTING_VERSION=2.3.3 # 车聊聊接口 CARCHATTINGPROVIDER_VERSION=1.1.20 # websocket From 989b0e1db1ee4ed16679fbdeb3861b73cf5b6a16 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Wed, 29 Sep 2021 12:17:22 +0800 Subject: [PATCH 27/36] .. --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 2c0d78e2c9..6347b55d01 100644 --- a/gradle.properties +++ b/gradle.properties @@ -141,7 +141,7 @@ MOGO_OCH_TAXI_VERSION=2.0.58 MOGO_AICLOUD_SERVICES_SDK_VERSION=2.0.58 ######## 外部依赖引用 # 车聊聊 -CARCHATTING_VERSION=2.3.3 +CARCHATTING_VERSION=2.3.3 # 车聊聊接口 CARCHATTINGPROVIDER_VERSION=1.1.20 # websocket From 32853b5a447e144b9c6c95795c93a450ef54221c Mon Sep 17 00:00:00 2001 From: liujing Date: Wed, 29 Sep 2021 18:05:45 +0800 Subject: [PATCH 28/36] =?UTF-8?q?[add]=20=E8=87=AA=E6=A3=80=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E5=88=97=E8=A1=A8UI=E8=B0=83=E6=95=B4,=E9=AB=98?= =?UTF-8?q?=E5=BA=A6=E8=87=AA=E9=80=82=E5=BA=94+=E9=99=90=E9=AB=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../check/view/CheckInfoListDialog.java | 13 +++-- .../check/view/CheckInfoRecyclerView.java | 48 +++++++++++++++++++ .../src/main/res/layout/check_info_list.xml | 13 ++--- .../src/main/res/values/dimens.xml | 5 ++ 4 files changed, 70 insertions(+), 9 deletions(-) create mode 100644 core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoRecyclerView.java create mode 100644 core/function-impl/mogo-core-function-check/src/main/res/values/dimens.xml 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 index 219fdced51..db349b0673 100644 --- 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 @@ -2,10 +2,12 @@ package com.mogo.eagle.core.function.check.view; import android.content.Context; import android.graphics.Color; +import android.util.AttributeSet; import android.util.Log; import android.widget.TextView; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.recyclerview.widget.GridLayoutManager; import androidx.recyclerview.widget.RecyclerView; @@ -25,7 +27,7 @@ import java.util.List; public class CheckInfoListDialog extends BaseFloatDialog { private static final String TAG = "CheckInfoListDialog"; - private RecyclerView mRecyclerView; + private CheckInfoRecyclerView mRecyclerView; private Context mContext; private TextView titleView; private int span; @@ -33,7 +35,6 @@ public class CheckInfoListDialog extends BaseFloatDialog { private CheckResultData mCheckResultData; private List result = new ArrayList<>(); - public CheckInfoListDialog(@NonNull Context context, String style, CheckResultData checkResultData) { super(context); mContext = context; @@ -76,6 +77,9 @@ public class CheckInfoListDialog extends BaseFloatDialog { } public List showInfoResult() { + +// List test = new ArrayList();//测试数据 + if (result.size() > 0) { result.clear(); } @@ -98,10 +102,12 @@ public class CheckInfoListDialog extends BaseFloatDialog { } catch (Exception e) { e.printStackTrace(); } - Log.d(TAG, "检测指标结果值===" + result.toString()); } catch (Exception e) { } +// test.addAll(result); +// test.addAll(result); +// test.addAll(result); return result; } @@ -113,4 +119,5 @@ public class CheckInfoListDialog extends BaseFloatDialog { 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 new file mode 100644 index 0000000000..b3cfa3c41e --- /dev/null +++ b/core/function-impl/mogo-core-function-check/src/main/java/com/mogo/eagle/core/function/check/view/CheckInfoRecyclerView.java @@ -0,0 +1,48 @@ +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 int maxHeight = (int) getContext().getResources().getDimension(R.dimen.check_height); + private 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); + boolean needLimit = false; + if (maxHeight >= 0) { + needLimit = true; + } + if (needLimit) { + int limitHeight = getMeasuredHeight(); + if (getMeasuredHeight() > maxHeight) { + limitHeight = maxHeight; + } + setMeasuredDimension(maxWeight, maxHeight); + } + } +} 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 index 01d064eb5a..f783b37b5b 100644 --- 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 @@ -20,7 +20,7 @@ android:id="@+id/check_info_title" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginTop="@dimen/dp_69" + android:layout_marginTop="@dimen/dp_70" android:gravity="center" android:text="自检结果" android:textColor="#fff" @@ -29,17 +29,18 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> - + app:layout_constraintTop_toBottomOf="@+id/check_info_title" /> + + \ 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 new file mode 100644 index 0000000000..be32d366f2 --- /dev/null +++ b/core/function-impl/mogo-core-function-check/src/main/res/values/dimens.xml @@ -0,0 +1,5 @@ + + + 1900px + 876px + From 24c290392038e8f0734e81505d8383b5bc6fa2d8 Mon Sep 17 00:00:00 2001 From: liujing Date: Wed, 29 Sep 2021 18:39:37 +0800 Subject: [PATCH 29/36] =?UTF-8?q?=E9=AB=98=E5=BA=A6=E8=87=AA=E9=80=82?= =?UTF-8?q?=E5=BA=94=E5=92=8C=E9=99=90=E9=AB=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../function/check/view/CheckInfoRecyclerView.java | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) 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 index b3cfa3c41e..c00ff7859d 100644 --- 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 @@ -33,16 +33,10 @@ public class CheckInfoRecyclerView extends RecyclerView { @Override protected void onMeasure(int widthSpec, int heightSpec) { super.onMeasure(widthSpec, heightSpec); - boolean needLimit = false; - if (maxHeight >= 0) { - needLimit = true; - } - if (needLimit) { - int limitHeight = getMeasuredHeight(); - if (getMeasuredHeight() > maxHeight) { - limitHeight = maxHeight; - } - setMeasuredDimension(maxWeight, maxHeight); + int limitHeight = getMeasuredHeight(); + if (getMeasuredHeight() > maxHeight) { + limitHeight = maxHeight; } + setMeasuredDimension(maxWeight, limitHeight); } } From 09508ef72818f5f557fc8bed96313ebc99319e32 Mon Sep 17 00:00:00 2001 From: liujing Date: Wed, 29 Sep 2021 20:06:09 +0800 Subject: [PATCH 30/36] =?UTF-8?q?[add]=20HeaderView=E4=B8=8D=E9=9A=8Flist?= =?UTF-8?q?=E6=BB=91=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../function/check/view/CheckInfoAdapter.java | 61 +++++++------------ .../check/view/CheckInfoListDialog.java | 3 +- .../check/view/CheckInfoRecyclerView.java | 2 +- .../main/res/layout/check_info_adapter.xml | 10 --- .../src/main/res/layout/check_info_list.xml | 16 ++++- .../main/res/layout/check_info_title_item.xml | 61 +++++++++++++++++++ .../src/main/res/values/dimens.xml | 2 +- 7 files changed, 101 insertions(+), 54 deletions(-) create mode 100644 core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_title_item.xml 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 index 03138ae53d..5d4a1971fd 100644 --- 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 @@ -48,45 +48,29 @@ public class CheckInfoAdapter extends RecyclerView.Adapter { @Override public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { - if (position == 0 || position == 2) { - ((CheckInfoViewHolder) holder).checkIcon.setVisibility(View.GONE); - ((CheckInfoViewHolder) holder).mTextView.setText("模块名称"); - TextPaint tp = ((CheckInfoViewHolder) holder).mTextView.getPaint(); - tp.setFakeBoldText(true); - ((CheckInfoViewHolder) holder).backImage.setVisibility(View.VISIBLE); - - } else if (position == 1 || position == 3) { - ((CheckInfoViewHolder) holder).checkIcon.setVisibility(View.GONE); - ((CheckInfoViewHolder) holder).mTextView.setText("运行状态"); - TextPaint tp = ((CheckInfoViewHolder) holder).mTextView.getPaint(); - tp.setFakeBoldText(true); - ((CheckInfoViewHolder) holder).backImage.setVisibility(View.VISIBLE); - } else { - ((CheckInfoViewHolder) holder).backImage.setVisibility(View.INVISIBLE); - try { - if ((position - 4) < showData.size() * 2) { - int index = (position - 4) / 2; - CheckResultData.CheckListItem positionItem = showData.get(index); - if (isEven(position) == true) {//偶数隐藏图片显示检测指标 - ((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); - } + try { + if (position < showData.size() * 2) { + int index = position / 2; + CheckResultData.CheckListItem positionItem = showData.get(index); + if (isEven(position) == true) {//偶数隐藏图片显示检测指标 + ((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(); } + } catch (Exception e) { + e.printStackTrace(); } } @@ -102,19 +86,18 @@ public class CheckInfoAdapter extends RecyclerView.Adapter { @Override public int getItemCount() { - return showData.size() * 2 + 4; + return showData.size() * 2; } public class CheckInfoViewHolder extends RecyclerView.ViewHolder { private ImageView checkIcon; private TextView mTextView; - private View backImage; public CheckInfoViewHolder(View v) { super(v); checkIcon = v.findViewById(R.id.info_check_icon); mTextView = v.findViewById(R.id.info_result_tx); - backImage = v.findViewById(R.id.backImage); } } + } 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 index db349b0673..5da4a5d2f5 100644 --- 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 @@ -69,7 +69,8 @@ public class CheckInfoListDialog extends BaseFloatDialog { e.printStackTrace(); } List resultData = showInfoResult(); - mRecyclerView.setAdapter(new CheckInfoAdapter(mContext, mStyle, resultData)); + CheckInfoAdapter adapter = new CheckInfoAdapter(mContext, mStyle, resultData); + mRecyclerView.setAdapter(adapter); //关闭按钮 findViewById(R.id.cancel_info_list_button).setOnClickListener(v -> { 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 index c00ff7859d..53b44b14bc 100644 --- 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 @@ -11,7 +11,7 @@ import com.mogo.eagle.core.function.check.R; /** * @author liujing - * @description 描述 + * @description 列表自适应高+限高 * @since: 9/29/21 */ public class CheckInfoRecyclerView extends RecyclerView { 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 index 28c98605cf..39c5a5a9fe 100644 --- 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 @@ -5,16 +5,6 @@ android:layout_height="@dimen/dp_127" android:layout_gravity="left"> - - + + + app:layout_constraintTop_toBottomOf="@+id/check_title_item" /> \ 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 new file mode 100644 index 0000000000..2923d4a513 --- /dev/null +++ b/core/function-impl/mogo-core-function-check/src/main/res/layout/check_info_title_item.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + \ 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 index be32d366f2..883f2e5611 100644 --- 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 @@ -1,5 +1,5 @@ 1900px - 876px + 770px From a1c4a5df39f1bb06fed481d4cc71b70f49c3b4dc Mon Sep 17 00:00:00 2001 From: liujing Date: Wed, 29 Sep 2021 20:19:51 +0800 Subject: [PATCH 31/36] =?UTF-8?q?=E4=B8=89=E8=BE=B9=E8=89=B2=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/res/drawable/check_driver.xml | 5 ----- .../res/drawable/check_title_item_shape.xml | 17 +++++++++++++++++ .../main/res/layout/check_info_title_item.xml | 2 +- .../src/main/res/values/colors.xml | 1 + .../src/main/res/values/styles.xml | 2 +- 5 files changed, 20 insertions(+), 7 deletions(-) delete mode 100644 core/function-impl/mogo-core-function-check/src/main/res/drawable/check_driver.xml create mode 100644 core/function-impl/mogo-core-function-check/src/main/res/drawable/check_title_item_shape.xml diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_driver.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_driver.xml deleted file mode 100644 index f0547c73db..0000000000 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_driver.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_title_item_shape.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_title_item_shape.xml new file mode 100644 index 0000000000..51beff11e5 --- /dev/null +++ b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_title_item_shape.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + \ 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 index 2923d4a513..c987013736 100644 --- 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 @@ -3,7 +3,7 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="@dimen/check_width" android:layout_height="@dimen/dp_127" - android:background="@drawable/check_driver" + android:background="@drawable/check_title_item_shape" android:orientation="horizontal"> #EE3132 #666DA5 #767FCD + #151738 \ 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 index a75b06b449..3ec9ae2d58 100644 --- 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 @@ -6,6 +6,6 @@ @android:drawable/progress_indeterminate_horizontal @drawable/check_progress - @drawable/check_driver + @drawable/check_title_item_shape \ No newline at end of file From a7d9040e4edad9ca108d3cea0e5ff8a72bc16787 Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Tue, 28 Sep 2021 18:09:51 +0800 Subject: [PATCH 32/36] =?UTF-8?q?=E8=A1=8C=E4=BA=BA=E9=80=86=E8=A1=8C?= =?UTF-8?q?=E3=80=81=E7=9B=B2=E5=8C=BA=E3=80=81=E4=BA=A4=E5=8F=89=E8=B7=AF?= =?UTF-8?q?=E5=8F=A3=E7=A2=B0=E6=92=9E=E9=A2=84=E8=AD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chenfufeng --- .../eagle/core/data/enums/TrafficTypeEnum.kt | 6 + .../eagle/core/data/v2x/AdvanceWarningBean.kt | 22 ++-- .../listener/V2XMessageListener_404000.java | 26 ---- .../v2x/listener/V2XMessageListener_404000.kt | 117 ++++++++++++++++++ 4 files changed, 135 insertions(+), 36 deletions(-) delete mode 100644 modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/V2XMessageListener_404000.java create mode 100644 modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/V2XMessageListener_404000.kt diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/TrafficTypeEnum.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/TrafficTypeEnum.kt index 812d6e42b3..6a3a50eb7f 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/TrafficTypeEnum.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/TrafficTypeEnum.kt @@ -57,6 +57,12 @@ enum class TrafficTypeEnum( R.raw.daba, R.raw.daba ), + TYPE_TRAFFIC_ID_CAMERA( + 9, + "摄像头", + R.raw.shexiangtou, + R.raw.shexiangtou + ), TYPE_TRAFFIC_ID_SPECIAL_VEHICLE( 11, "特殊车辆", diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/v2x/AdvanceWarningBean.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/v2x/AdvanceWarningBean.kt index f64ea6cd66..f82ea8fbfe 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/v2x/AdvanceWarningBean.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/v2x/AdvanceWarningBean.kt @@ -7,20 +7,22 @@ import androidx.annotation.Keep */ @Keep data class AdvanceWarningBean( - var objectId: String, - var status: Int, - var typeId: Int, + var objectId: String,// 物体唯一标识 + var objectType: Int,// 物体类型 1-人 2-自行车 3-小轿车 4-摩托车 5-红绿灯 6-bus 8-truck 9-路边摄像头 + var status: Int,// 1.add 2.update 3.delete + var typeId: Int,// 首位大类标识 1预警 2规划 3拥堵 4事故 var time: Long, - var level: Int, + var level: Int,// 预警等级 + var threatLevel: Int,// 危险等级:0保留,1模型原始颜色,2通知--黄,3警告--红 var position: Position, - var heading: Int, + var heading: Double, var speed: Double, var distance: Double, - var roadId: String, - var laneId: String, - var laneNum: Int, - var gdLocusList: List, - var locusList: List + var roadId: String,// 道路id + var laneId: String,// 车道id + var laneNum: Int,// 车道号:中心线编号为0, 中心线右侧编号为负数,3车道通行Road的车道编号,0,-1,-2,-3 + var gdLocusList: List,// 线性经纬度轨迹列表(高德) + var locusList: List// 轨迹列表(Wgs84坐标系) ) @Keep diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/V2XMessageListener_404000.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/V2XMessageListener_404000.java deleted file mode 100644 index 9597b62f40..0000000000 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/V2XMessageListener_404000.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.mogo.module.v2x.listener; - -import static com.mogo.module.v2x.V2XConst.MODULE_NAME; - -import com.mogo.eagle.core.data.v2x.AdvanceWarningBean; -import com.mogo.service.cloud.socket.IMogoOnMessageListener; -import com.mogo.utils.logger.Logger; -import com.mogo.utils.network.utils.GsonUtil; - -/** - * @author chenfufeng - * @description 路口碰撞预警、盲区预警等 - * @since: 2021/9/23 - */ -public class V2XMessageListener_404000 implements IMogoOnMessageListener { - @Override - public Class target() { - return AdvanceWarningBean.class; - } - - @Override - public void onMsgReceived(AdvanceWarningBean message) { - // 将接收到的数据转换成最优车道推荐的场景数据 - Logger.i(MODULE_NAME, "V2XMessageListener_404000:" + GsonUtil.jsonFromObject(message)); - } -} diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/V2XMessageListener_404000.kt b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/V2XMessageListener_404000.kt new file mode 100644 index 0000000000..40f54df0bb --- /dev/null +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/V2XMessageListener_404000.kt @@ -0,0 +1,117 @@ +package com.mogo.module.v2x.listener + +import com.mogo.eagle.core.data.enums.TrafficTypeEnum +import com.mogo.eagle.core.data.traffic.TrafficData +import com.mogo.service.cloud.socket.IMogoOnMessageListener +import com.mogo.eagle.core.data.v2x.AdvanceWarningBean +import com.mogo.module.v2x.V2XConst +import com.mogo.eagle.core.function.call.hmi.CallerHmiManager +import com.mogo.eagle.core.function.api.hmi.warning.WarningStatusListener +import com.mogo.module.common.drawer.TrafficMarkerDrawer +import com.mogo.module.common.enums.EventTypeEnum +import com.mogo.module.v2x.utils.V2XUtils +import com.mogo.utils.logger.Logger + +/** + * @author chenfufeng + * @description 路口碰撞预警、盲区预警等 + * @since: 2021/9/23 + */ +class V2XMessageListener_404000 : IMogoOnMessageListener { + override fun target(): Class { + return AdvanceWarningBean::class.java + } + + override fun onMsgReceived(message: AdvanceWarningBean?) { + if (message == null) { + Logger.i(V2XConst.MODULE_NAME, "V2XMessageListener_404000:message is null!") + return + } + Logger.i( + V2XConst.MODULE_NAME, + "V2XMessageListener_404000:" + com.mogo.utils.network.utils.GsonUtil.jsonFromObject( + message + ) + ) + V2XUtils.runOnUiThread { + var trafficData = buildTrafficData(message) + when (message.status) { + 1 -> { + var tts = "" + var content = "" + var appId = 0 + when (message.typeId) { + // 弱势交通碰撞预警 + 1001 -> { + appId = EventTypeEnum.TYPE_USECASE_ID_VRUCW_PERSON.poiType.toInt() + tts = EventTypeEnum.TYPE_USECASE_ID_VRUCW_PERSON.tts + content = EventTypeEnum.TYPE_USECASE_ID_VRUCW_PERSON.content + } + // 弱势交通逆行预警 + 1002 -> { + appId = EventTypeEnum.TYPE_USECASE_ID_VRUCW_PERSON.poiType.toInt() + tts = "行人逆行预警" + content = "行人逆行预警" + } + // 交叉路口碰撞预警 + 1003 -> { + appId = EventTypeEnum.TYPE_USECASE_ID_ICW.poiType.toInt() + tts = EventTypeEnum.TYPE_USECASE_ID_ICW.tts + content = EventTypeEnum.TYPE_USECASE_ID_ICW.content + } + // 盲区预警 + 1004 -> { + appId = EventTypeEnum.TYPE_USECASE_ID_BSW.poiType.toInt() + tts = String.format(EventTypeEnum.TYPE_USECASE_ID_BSW.tts, getWarningDirection()) + content = EventTypeEnum.TYPE_USECASE_ID_BSW.content + } + // 逆向超车预警 + 1005 -> { + appId = EventTypeEnum.TYPE_USECASE_ID_DNPW.poiType.toInt() + tts = EventTypeEnum.TYPE_USECASE_ID_DNPW.tts + content = EventTypeEnum.TYPE_USECASE_ID_DNPW.content + } + } + // 显示弹框,语音提示 + CallerHmiManager.showWarningV2X(appId, content, tts, + "$appId", object : WarningStatusListener { + override fun onShow() {} + override fun onDismiss() { + } + }) + TrafficMarkerDrawer.updateITrafficInfo(trafficData) + } + 2 -> { + TrafficMarkerDrawer.updateITrafficInfo(trafficData) + } + 3 -> { + TrafficMarkerDrawer.removeCvxRvInfoIndInfo(trafficData.uuid) + } + } + } + } + + private fun buildTrafficData(message: AdvanceWarningBean): TrafficData { + return TrafficData().apply { + type = when (message.objectType) { + 1 -> TrafficTypeEnum.TYPE_TRAFFIC_ID_PEOPLE + 2 -> TrafficTypeEnum.TYPE_TRAFFIC_ID_BICYCLE + 3 -> TrafficTypeEnum.TYPE_TRAFFIC_ID_TA_CHE + 4 -> TrafficTypeEnum.TYPE_TRAFFIC_ID_MOTO + 6 -> TrafficTypeEnum.TYPE_TRAFFIC_ID_BUS + 8 -> TrafficTypeEnum.TYPE_TRAFFIC_ID_TRUCK + 9 -> TrafficTypeEnum.TYPE_TRAFFIC_ID_CAMERA + else -> TrafficTypeEnum.TYPE_TRAFFIC_ID_WEI_ZHI + } + uuid = message.objectId + lat = message.position.lat + lon = message.position.lon + heading = message.heading + threatLevel = message.threatLevel + } + } + + private fun getWarningDirection(): String { + return "右" + } +} \ No newline at end of file From 5805f8018692630181e8143ee91a3e13c631427f Mon Sep 17 00:00:00 2001 From: liujing Date: Wed, 29 Sep 2021 20:27:44 +0800 Subject: [PATCH 33/36] =?UTF-8?q?=E5=88=97=E8=A1=A8=E9=99=90=E9=AB=98?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo-core-function-check/src/main/res/values/dimens.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 index 883f2e5611..b74d43a0a7 100644 --- 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 @@ -1,5 +1,5 @@ 1900px - 770px + 730px From 93503c342bc8ba2e97870beb0293fa86047dbcee Mon Sep 17 00:00:00 2001 From: lianglihui Date: Thu, 30 Sep 2021 10:18:35 +0800 Subject: [PATCH 34/36] =?UTF-8?q?eagle=20=E6=8E=A5=E5=85=A5=E5=AD=97?= =?UTF-8?q?=E8=8A=82apm=E6=80=A7=E8=83=BD=E7=9B=91=E6=8E=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/function/check/view/CheckActivity.java | 16 ++++++++-------- .../core/function/smp/SmallMapProvider.java | 1 + gradle.properties | 2 +- 3 files changed, 10 insertions(+), 9 deletions(-) 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 index 3d4ce0dfc6..a7ab0a0b4e 100644 --- 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 @@ -53,7 +53,7 @@ public class CheckActivity extends AppCompatActivity { private static final String TAG = "CheckActivity"; private static RecyclerView mRecyclerView; private static CheckResultData sCheckResultData; - private static Context mContext; +// private static Context mContext; private static NetworkStatusUtil.NetWorkStatus sNetWorkStatus; private ImageView mImageView; //车模 @@ -85,7 +85,7 @@ public class CheckActivity extends AppCompatActivity { protected void onStart() { super.onStart(); animation(); - loadDetail(mContext, null); + loadDetail(this.getApplicationContext(), null); } /** * 列表View初始化 @@ -99,7 +99,7 @@ public class CheckActivity extends AppCompatActivity { scanTopImageView = findViewById(R.id.scan_car_top_image); tipsImageView = findViewById(R.id.scan_car_tips); mProgressBar = findViewById(R.id.check_progress); - mContext = mImageView.getContext(); +// mContext = mImageView.getContext(); mImageView.setOnClickListener(v -> { finish(); }); @@ -109,7 +109,7 @@ public class CheckActivity extends AppCompatActivity { 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(mContext, sCheckResultData); + mCheckAdapter = new CheckAdapter(this, sCheckResultData); mRecyclerView.setAdapter(mCheckAdapter); } @@ -118,20 +118,20 @@ public class CheckActivity extends AppCompatActivity { */ public static void checkMonitor(Context context, ICheckResultCallBack checkResultCallBack) { Log.d(TAG, "checkMonitor"); - mContext = context; - loadDetail(mContext, checkResultCallBack); +// mContext = context; + loadDetail(context.getApplicationContext(), checkResultCallBack); } //网络请求,获取自车检测结果(工控机上报云端) public static void loadDetail(Context context, ICheckResultCallBack checkResultCallBack) { - mContext = context; +// mContext = context; final Map params = ParamsBuilder.of(false) .append("sn", MoGoAiCloudClientConfig.getInstance().getSn()) .build(); CheckApiServiceFactory.getDataApiService(context).loadMonitorDetail(params) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new SubscribeImpl(RequestOptions.create(mContext)) { + .subscribe(new SubscribeImpl(RequestOptions.create(context)) { @Override public void onSuccess(CheckResultData o) { super.onSuccess(o); diff --git a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapProvider.java b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapProvider.java index 8f1388a0c2..92e582064d 100644 --- a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapProvider.java +++ b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapProvider.java @@ -85,6 +85,7 @@ public class SmallMapProvider implements IMogoSmallMapProvider, IMogoStatusChang Log.d(TAG, "准备show fragment"); mActivity.getSupportFragmentManager().beginTransaction().show(mSmallMapFragment).commitAllowingStateLoss(); } catch (Exception e) { + Log.d(TAG, "add fragment 失败 ======"+e.getMessage()); e.printStackTrace(); } } diff --git a/gradle.properties b/gradle.properties index 6347b55d01..af0976c3e3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -166,7 +166,7 @@ MOGO_TRAFFICLIVE_VERSION=1.1.46 # 定位服务 MOGO_LOCATION_VERSION=1.1.46 # 自研地图 -MAP_SDK_VERSION=1.0.1-vr-1.0.9 +MAP_SDK_VERSION=1.0.1-vr-1.1.2 #################架构升级新的版本号 MOGO_CORE_FUNCTION_HMI_VERSION=1.0.0 ## 产品库必备配置,产品库自动对versionCode和versionName版本进行升级 From 1b9d1e409bde6c8efd1365a9427cfde43067df0e Mon Sep 17 00:00:00 2001 From: zhongchao Date: Thu, 30 Sep 2021 10:38:45 +0800 Subject: [PATCH 35/36] update callchat version --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index af0976c3e3..3c055bd598 100644 --- a/gradle.properties +++ b/gradle.properties @@ -141,7 +141,7 @@ MOGO_OCH_TAXI_VERSION=2.0.58 MOGO_AICLOUD_SERVICES_SDK_VERSION=2.0.58 ######## 外部依赖引用 # 车聊聊 -CARCHATTING_VERSION=2.3.3 +CARCHATTING_VERSION=2.3.5 # 车聊聊接口 CARCHATTINGPROVIDER_VERSION=1.1.20 # websocket From 19d2fd45a65a0a492ef49beac75bff74e640d8be Mon Sep 17 00:00:00 2001 From: liujing Date: Thu, 30 Sep 2021 20:52:44 +0800 Subject: [PATCH 36/36] =?UTF-8?q?[add]=20=E9=A1=B6=E9=83=A8=E6=A0=87?= =?UTF-8?q?=E9=A2=98=E6=A0=8FUI=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../res/drawable/check_item_left_shape.xml | 18 ++++++++++++++++++ ...em_shape.xml => check_item_right_shape.xml} | 3 ++- .../main/res/drawable/check_recycler_shape.xml | 2 +- .../main/res/layout/check_info_title_item.xml | 7 +++++-- .../src/main/res/values/styles.xml | 2 +- 5 files changed, 27 insertions(+), 5 deletions(-) create mode 100644 core/function-impl/mogo-core-function-check/src/main/res/drawable/check_item_left_shape.xml rename core/function-impl/mogo-core-function-check/src/main/res/drawable/{check_title_item_shape.xml => check_item_right_shape.xml} (84%) 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 new file mode 100644 index 0000000000..6f9ebf6133 --- /dev/null +++ b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_item_left_shape.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_title_item_shape.xml b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_item_right_shape.xml similarity index 84% rename from core/function-impl/mogo-core-function-check/src/main/res/drawable/check_title_item_shape.xml rename to core/function-impl/mogo-core-function-check/src/main/res/drawable/check_item_right_shape.xml index 51beff11e5..0fb8e28c84 100644 --- a/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_title_item_shape.xml +++ b/core/function-impl/mogo-core-function-check/src/main/res/drawable/check_item_right_shape.xml @@ -8,7 +8,8 @@ + android:top="@dimen/dp_3" + android:bottom="@dimen/dp_1"> 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 index b46d99a0b8..5cc105603d 100644 --- 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 @@ -7,5 +7,5 @@ android:bottom="2px" android:left="2px" android:right="2px" - android:top="2px" /> + android:top="0px" /> \ 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 index c987013736..eb90a08022 100644 --- 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 @@ -3,13 +3,13 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="@dimen/check_width" android:layout_height="@dimen/dp_127" - android:background="@drawable/check_title_item_shape" android:orientation="horizontal"> @drawable/check_progress - @drawable/check_title_item_shape + @drawable/check_item_left_shape \ No newline at end of file