diff --git a/OCH/bus/driver/build.gradle b/OCH/bus/driver/build.gradle index d861cf0864..333947fc29 100644 --- a/OCH/bus/driver/build.gradle +++ b/OCH/bus/driver/build.gradle @@ -45,11 +45,16 @@ android { flavorDimensions "vehicle" productFlavors { - + // 车型:金旅星辰、开沃 小巴业务 jinlvvan { dimension "vehicle" buildConfigField 'int', 'NEW_TEST', '0' } + // 车型:金旅m2 小巴业务 + m2 { + dimension "vehicle" + buildConfigField 'int', 'NEW_TEST', '1' + } } } @@ -68,7 +73,7 @@ dependencies { implementation rootProject.ext.dependencies.androidxrecyclerview compileOnly rootProject.ext.dependencies.recyclerviewadapterhelper - implementation project(":OCH:mogo-och-common-module") + implementation project(":OCH:common:common") compileOnly project(":libraries:mogo-map") } diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusCloseTaskRequest.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusCloseTaskRequest.java index d8a11924af..38fcd59b86 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusCloseTaskRequest.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusCloseTaskRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; /** * 中止/结束任务请求 @@ -10,7 +10,7 @@ public class BusCloseTaskRequest { private String sn; private int taskId; public BusCloseTaskRequest(int taskId) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.taskId = taskId; } diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java index 96d4435ef4..11b865f15c 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; public /** @@ -15,7 +15,7 @@ class BusOperationStatusRequest { private double lat; private double lon; public BusOperationStatusRequest(double lon, double lat) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.lat = lat; this.lon = lon; } diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/bean/BusOrdersResponse.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusOrdersResponse.java similarity index 100% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/bean/BusOrdersResponse.java rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusOrdersResponse.java diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java index adf7878ec5..f6c9828873 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; /** * @author congtaowang @@ -12,6 +12,6 @@ public class BusQueryLineStationsRequest { private String sn; public BusQueryLineStationsRequest() { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); } } diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java index 7de15dae2c..5edd0e8574 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; /** * @author: wangmingjun @@ -11,7 +11,7 @@ public class BusResetDrivingLineRequest { public int taskId; //切换到的线路id public BusResetDrivingLineRequest(int taskId) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.taskId = taskId; } } diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusResetLineStatusRequest.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusResetLineStatusRequest.java index 595ceafce3..e3642a892e 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusResetLineStatusRequest.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusResetLineStatusRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; public /** @@ -13,7 +13,7 @@ class BusResetLineStatusRequest { private String sn; public BusResetLineStatusRequest() { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); } public String getSn() { diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/bean/BusRoutesResponse.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusRoutesResponse.java similarity index 100% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/bean/BusRoutesResponse.java rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusRoutesResponse.java diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/bean/BusStationBean.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusStationBean.java similarity index 100% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/bean/BusStationBean.java rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusStationBean.java diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java index 93ff4b5457..e513b18f3c 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; /** * @author congtaowang @@ -16,7 +16,7 @@ public class BusUpdateSiteStatusRequest { public int siteId;//站点id public BusUpdateSiteStatusRequest(int taskId,int siteId,int seq) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.seq = seq; this.siteId = siteId; this.taskId = taskId; diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusWriteOffPassengersQueryRequest.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusWriteOffPassengersQueryRequest.java index 708819e436..da4e012782 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusWriteOffPassengersQueryRequest.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/BusWriteOffPassengersQueryRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.data.BaseData; import java.util.List; @@ -15,7 +15,7 @@ public class BusWriteOffPassengersQueryRequest { private int siteId; private long verificationTime; public BusWriteOffPassengersQueryRequest(int taskId, int siteId,long prePassengerTime) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.taskId = taskId; this.siteId = siteId; this.verificationTime = prePassengerTime; diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/QueryLeaveAwayPassengersRequest.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/QueryLeaveAwayPassengersRequest.java index 443fd76211..72e5a3a68f 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/QueryLeaveAwayPassengersRequest.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/bean/QueryLeaveAwayPassengersRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; /** * 查询下车乘客请求参数 @@ -13,7 +13,7 @@ public class QueryLeaveAwayPassengersRequest { private int siteId; //站点id public QueryLeaveAwayPassengersRequest(int seq, int siteId) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.seq = seq; this.siteId = siteId; } diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/constant/BusConst.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/constant/BusConst.kt index 711fe90a39..84ea0cf753 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/constant/BusConst.kt +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/constant/BusConst.kt @@ -47,6 +47,8 @@ class BusConst { const val EVENT_PARAM_START_NAME = "start_name" const val EVENT_PARAM_END_NAME = "end_name" const val EVENT_PARAM_LINE_ID = "line_id" + const val EVENT_PARAM_MAP_ORIGINAL_DATA = "map_original_data" // 域控原始状态信息 + const val EVENT_PARAM_AUTOPILOT_STATE = "autopilot_state" //原始的自动驾驶状态 const val EVENT_PARAM_START_RESULT = "start_autopilot" // true/false const val EVENT_PARAM_START_FAILURE_CODE = "start_autopilot_failure_code" // 启动自驾失败code const val EVENT_PARAM_START_FAILURE_MSG = "start_autopilot_failure_msg" // 启动自驾失败原因 diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java index bedb5d6436..7c570bd3f3 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java @@ -43,6 +43,7 @@ import com.mogo.och.bus.R; import com.mogo.och.bus.bean.BusRoutesResult; import com.mogo.och.bus.model.OrderModel; import com.mogo.och.bus.util.BDRouteDataTestUtils; +import com.mogo.och.bus.view.BizMapView; import com.mogo.och.bus.view.SlidePanelView; import com.mogo.och.common.module.utils.SoundPoolHelper; @@ -71,7 +72,7 @@ public abstract class BaseBusTabFragment protected RelativeLayout mSettingBtn; protected RelativeLayout mBadcaseBtn; private FrameLayout flStationPanelContainer; - private MapBizView mapBizView; + private BizMapView mapBizView; private Group groupTestPanel; private TrafficDataView mTrafficDataView; // private BusTrafficLightView mTrafficLightView; diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java index 4681a95981..081d51b701 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java @@ -16,7 +16,7 @@ import androidx.constraintlayout.widget.ConstraintLayout; import androidx.constraintlayout.widget.Group; import com.alibaba.android.arouter.launcher.ARouter; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.temp.EventLogout; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; @@ -132,7 +132,7 @@ public class BusFragment extends BaseBusTabFragment }else if (eventLogout.getMessgae() == EventLogout.SHOW_QR_TYPE){ //显示二维码 CallerLogger.d(M_BUS + TAG,"changeOverview Event qrcode"); String qrUrl = String.format(FunctionBuildConfig.urlJson.getBindDriverQRUrl(), - MoGoAiCloudClientConfig.getInstance().getSn()); + SharedPrefsMgr.getInstance().getSn()); Bitmap bmQr = QRUtilsKt.createQRCodeWithPicture( BitmapFactory.decodeResource(getResources(), R.drawable.icon_qr_center_logo) ,qrUrl, AutoSizeUtils.dp2px(getContext(),340f), diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/BusLineModel.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/BusLineModel.java index f863019acf..e7418f4d37 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/BusLineModel.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/BusLineModel.java @@ -3,7 +3,7 @@ package com.mogo.och.bus.model; import android.content.Context; import com.mogo.commons.AbsMogoApplication; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.util.NetworkUtils; import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.och.bus.R; @@ -121,7 +121,7 @@ public class BusLineModel { OrderServiceManager.switchLine(mContext,taskId, new OchCommonServiceCallback() { @Override public void onSuccess(BusRoutesResponse o) { - SharedPrefsMgr.getInstance(mContext).putInt(BusSwitchLineActivity.LASTCOMMITLINEID,lineId); + SharedPrefsMgr.getInstance().putInt(BusSwitchLineActivity.LASTCOMMITLINEID,lineId); if (mBusLinesCallback != null){ mBusLinesCallback.onChangeLineIdSuccess(); } diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/model/OrderModel.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java similarity index 100% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/model/OrderModel.java rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/IBascApiService.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/IBascApiService.java similarity index 100% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/IBascApiService.java rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/net/IBascApiService.java diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/ISAASApiService.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/ISAASApiService.java similarity index 100% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/ISAASApiService.java rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/net/ISAASApiService.java diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/OrderServiceManager.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/OrderServiceManager.kt similarity index 85% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/OrderServiceManager.kt rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/net/OrderServiceManager.kt index 884d342eac..bc6fc62a01 100644 --- a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/OrderServiceManager.kt +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/OrderServiceManager.kt @@ -5,6 +5,7 @@ import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.debug.DebugConfig import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.bus.bean.* import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.biz.network.OchCommonServiceCallback @@ -36,8 +37,8 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.queryBusRoutes( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryBusRoutes")) @@ -45,7 +46,7 @@ object OrderServiceManager { }else{ M_SERVICE.queryBusRoutes( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusQueryLineStationsRequest() ) .transformTry() @@ -70,7 +71,7 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.switchLine( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusResetDrivingLineRequest(taskId) ) .transformTry() @@ -78,7 +79,7 @@ object OrderServiceManager { }else{ M_SERVICE.switchLine( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusResetDrivingLineRequest(taskId) ) .transformTry() @@ -98,7 +99,7 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.abortTask( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusCloseTaskRequest(taskId) ) .transformTry() @@ -106,7 +107,7 @@ object OrderServiceManager { }else{ M_SERVICE.abortTask( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusCloseTaskRequest(taskId) ) .transformTry() @@ -125,7 +126,7 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.endTask( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusCloseTaskRequest(taskId) ) .transformTry() @@ -133,7 +134,7 @@ object OrderServiceManager { }else{ M_SERVICE.endTask( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusCloseTaskRequest(taskId) ) .transformTry() @@ -160,7 +161,7 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.leaveStation( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusUpdateSiteStatusRequest(taskId, siteId, seq) ) .transformTry() @@ -168,7 +169,7 @@ object OrderServiceManager { }else{ M_SERVICE.leaveStation( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusUpdateSiteStatusRequest(taskId, siteId, seq) ) .transformTry() @@ -191,7 +192,7 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.arriveSiteStation( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusUpdateSiteStatusRequest(taskId, siteId, seq) ) .transformTry() @@ -199,7 +200,7 @@ object OrderServiceManager { }else{ M_SERVICE.arriveSiteStation( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusUpdateSiteStatusRequest(taskId, siteId, seq) ) .transformTry() @@ -223,7 +224,7 @@ object OrderServiceManager { ) { M_SERVICE.queryStationLeaveAwayPassengers( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, QueryLeaveAwayPassengersRequest(seq, siteId) ) .transformTry() @@ -246,7 +247,7 @@ object OrderServiceManager { ) { M_SERVICE.queryWriteOffPassengers( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusWriteOffPassengersQueryRequest(taskId, siteId, prePassengerTime) ) .transformTry() @@ -263,16 +264,16 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.queryBusOrders( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryBusOrders")) }else{ M_SERVICE.queryBusOrders( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryBusOrders")) @@ -283,16 +284,16 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.queryBusLines( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryBusLines")) }else{ M_SERVICE.queryBusLines( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryBusLines")) @@ -308,7 +309,7 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.queryBusTaskByLineId( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, lineId ) .transformTry() @@ -316,7 +317,7 @@ object OrderServiceManager { }else{ M_SERVICE.queryBusTaskByLineId( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, lineId ) .transformTry() @@ -335,9 +336,9 @@ object OrderServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ M_SAAS_SERVICE.updateOrderRoute( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusRoutePlanningUpdateReqBean( - MoGoAiCloudClientConfig.getInstance().sn, lineId, startSiteId, endSiteId, points + SharedPrefsMgr.getInstance().sn, lineId, startSiteId, endSiteId, points ) ) .transformTry() @@ -345,9 +346,9 @@ object OrderServiceManager { }else{ M_SERVICE.updateOrderRoute( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusRoutePlanningUpdateReqBean( - MoGoAiCloudClientConfig.getInstance().sn, lineId, startSiteId, endSiteId, points + SharedPrefsMgr.getInstance().sn, lineId, startSiteId, endSiteId, points ) ) .transformTry() @@ -372,9 +373,9 @@ object OrderServiceManager { }else{ M_SERVICE.runCarHeartbeat( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, CarHeartbeatReqBean( - MoGoAiCloudClientConfig.getInstance().sn, lon, lat + SharedPrefsMgr.getInstance().sn, lon, lat ) ) .transformTry() diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt similarity index 84% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt index 6a52618adb..55e1c742a0 100644 --- a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt @@ -12,6 +12,7 @@ import com.mogo.cloud.passport.MoGoAiCloudClient import com.mogo.commons.debug.DebugConfig import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.biz.network.interceptor.transformTry @@ -46,14 +47,14 @@ object OchCommonServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ mLoginSaasServiceApi.getPhoneCode( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginSmsReqBean(phone) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) }else{ mLoginServiceApi.getPhoneCode( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginSmsReqBean(phone) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) @@ -71,18 +72,18 @@ object OchCommonServiceManager { location4Login: TaxiLoginReqBean.Location4Login?, callback: OchCommonServiceCallback? ) { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn if (DebugConfig.getProjectFlavor().contains("saas")){ mLoginSaasServiceApi.gotoLoginBycode4Bus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginReqBean(phone, code, sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) }else{ mLoginServiceApi.gotoLoginBycode4Bus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginReqBean(phone, code, sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) } @@ -100,14 +101,14 @@ object OchCommonServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ mLoginSaasServiceApi.logout4Bus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - TaxiLogoutReqBean(MoGoAiCloudClientConfig.getInstance().sn, location4Login) + SharedPrefsMgr.getInstance().token, + TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) }else{ mLoginServiceApi.logout4Bus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - TaxiLogoutReqBean(MoGoAiCloudClientConfig.getInstance().sn, location4Login) + SharedPrefsMgr.getInstance().token, + TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) } } @@ -123,7 +124,7 @@ object OchCommonServiceManager { context: Context, callback: OchCommonServiceCallback? ) { - if (MoGoAiCloudClientConfig.getInstance().token.isEmpty()) { + if (SharedPrefsMgr.getInstance().token.isEmpty()) { callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") MoGoAiCloudClient.getInstance().refreshToken() return @@ -131,15 +132,15 @@ object OchCommonServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ mLoginSaasServiceApi.queryDriverServiceStatusAndLoginStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) }else{ mLoginServiceApi.queryDriverServiceStatusAndLoginStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) } diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java similarity index 100% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java diff --git a/OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/login/OchSAASLoginServiceApi.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchSAASLoginServiceApi.java similarity index 100% rename from OCH/bus/driver/src/jinlvvan/java/com/mogo/och/bus/net/login/OchSAASLoginServiceApi.java rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchSAASLoginServiceApi.java diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt index eff63dd20b..412574bdc4 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt @@ -12,7 +12,7 @@ import androidx.constraintlayout.widget.ConstraintLayout import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import com.mogo.commons.mvp.MvpActivity -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.bus.presenter.BusLinePresenter import com.mogo.och.bus.ui.adapter.SwitchLineAdapter import com.mogo.och.bus.bean.BusQueryLinesResponse @@ -118,7 +118,7 @@ class BusSwitchLineActivity : MvpActivity showNoData(true) return } - val lastCommitLineid = SharedPrefsMgr.getInstance(this).getInt(LASTCOMMITLINEID, -1) + val lastCommitLineid = SharedPrefsMgr.getInstance().getInt(LASTCOMMITLINEID, -1) if (data.data != null && data.data.size > 0) { showNoData(false) mData.clear() diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.kt index d43c83be61..8a43a1137e 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.kt +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.kt @@ -1,8 +1,8 @@ package com.mogo.och.bus.util import android.text.TextUtils -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.debug.DebugConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.utils.MogoAnalyticUtils import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener @@ -11,6 +11,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.DateTimeUtils import com.mogo.och.bus.constant.BusConst +import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager import com.mogo.och.common.module.utils.RxUtils import io.reactivex.disposables.Disposable @@ -42,8 +43,14 @@ object BusAnalyticsManager { mStartAutopilotParams[BusConst.EVENT_PARAM_START_FAILURE_CODE] = failCode mStartAutopilotParams[BusConst.EVENT_PARAM_START_FAILURE_MSG] = failMsg } + + mStartAutopilotParams[BusConst.EVENT_PARAM_MAP_ORIGINAL_DATA] = + OCHAdasAbilityManager.getInstance().originalData + mStartAutopilotParams[BusConst.EVENT_PARAM_AUTOPILOT_STATE] = + CallerAutoPilotStatusListenerManager.getState() mStartAutopilotParams[BusConst.EVENT_PARAM_START_RESULT] = CallerAutoPilotStatusListenerManager.getState() == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING + MogoAnalyticUtils.track(mStartAutopilotKey, mStartAutopilotParams) clearStartAutopilotParams() //清空参数数据,防止误传 } @@ -69,7 +76,7 @@ object BusAnalyticsManager { clearStartAutopilotParams() //清空参数数据,防止误传 } else { val plateNum = AppConfigInfo.plateNumber - mStartAutopilotParams[BusConst.EVENT_PARAM_SN] = MoGoAiCloudClientConfig.getInstance().sn + mStartAutopilotParams[BusConst.EVENT_PARAM_SN] = SharedPrefsMgr.getInstance().sn mStartAutopilotParams[BusConst.EVENT_PARAM_PLATE_NUM] = if (TextUtils.isEmpty(plateNum)) "" else plateNum mStartAutopilotParams[BusConst.EVENT_PARAM_ENV_ONLINE] = DebugConfig.getNetMode() == DebugConfig.NET_MODE_RELEASE mStartAutopilotParams[BusConst.EVENT_PARAM_TIME] = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd_HH_mm_ss) @@ -95,7 +102,7 @@ object BusAnalyticsManager { ) { val plateNum = AppConfigInfo.plateNumber val params = HashMap() - params[BusConst.EVENT_PARAM_SN] = MoGoAiCloudClientConfig.getInstance().sn + params[BusConst.EVENT_PARAM_SN] = SharedPrefsMgr.getInstance().sn params[BusConst.EVENT_PARAM_PLATE_NUM] = if (TextUtils.isEmpty(plateNum)) "" else plateNum params[BusConst.EVENT_PARAM_ENV_ONLINE] = DebugConfig.getNetMode() == DebugConfig.NET_MODE_RELEASE params[BusConst.EVENT_PARAM_TIME] = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd_HH_mm_ss) diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/view/BizMapView.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/view/BizMapView.kt new file mode 100644 index 0000000000..47a515da4b --- /dev/null +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/view/BizMapView.kt @@ -0,0 +1,59 @@ +package com.mogo.och.bus.view + +import android.content.Context +import android.os.Bundle +import android.util.AttributeSet +import android.view.LayoutInflater +import android.widget.FrameLayout +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.function.view.MapBizView +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.map.uicontroller.IMogoMapUIController +import com.mogo.och.bus.R + +class BizMapView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : FrameLayout(context, attrs, defStyleAttr) { + + private lateinit var mapBizView: MapBizView + + init { + if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) { + LayoutInflater.from(context).inflate(R.layout.bus_m2_bizmap_map, this, true) + }else if(AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)){ + LayoutInflater.from(context).inflate(R.layout.bus_jl_bizmap_map, this, true) + }else{ + LayoutInflater.from(context).inflate(R.layout.bus_jl_bizmap_map, this, true) + } + mapBizView = findViewById(R.id.bizMapView) + } + + fun getUI(): IMogoMapUIController? { + return mapBizView.getUI() + } + + fun onCreate(bundle: Bundle?) { + mapBizView.onCreate(bundle) + } + fun onResume() { + mapBizView.onResume() + } + + fun onSaveInstanceState(outState: Bundle){ + mapBizView.onSaveInstanceState(outState) + } + + fun onLowMemory() { + mapBizView.onLowMemory() + } + + fun onPause() { + mapBizView.onPause() + } + + fun onDestroy() { + mapBizView.onDestroy() + } +} \ No newline at end of file diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/view/SlidePanelView.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/view/SlidePanelView.java index 0a80b20be0..b603c90458 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/view/SlidePanelView.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/view/SlidePanelView.java @@ -22,6 +22,8 @@ import android.view.animation.DecelerateInterpolator; import androidx.annotation.Nullable; import com.mogo.commons.AbsMogoApplication; +import com.mogo.eagle.core.utilcode.util.ThreadUtils; +import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.och.bus.R; import me.jessyan.autosize.AutoSizeConfig; @@ -128,12 +130,15 @@ public class SlidePanelView extends View { textGradient.setLocalMatrix(gradientMatrix); textPaint.setShader(textGradient); textPaint.getFontMetrics(blockTextMetrics); - int size = AutoSizeUtils.dp2px(getContext(), 120); - BitmapFactory.Options opts = new BitmapFactory.Options(); //todo yakun 优化 - opts.inDensity = (int) AutoSizeConfig.getInstance().getInitDensity(); - bmBlock = BitmapFactory.decodeResource(getResources(), R.drawable.bus_base_slide_block,opts); - bmBlock = Bitmap.createScaledBitmap(bmBlock, size, size, true); - blockWidth = bmBlock.getWidth(); + ThreadUtils.getCpuPool().execute(() -> { + int size = AutoSizeUtils.dp2px(getContext(), 120); + BitmapFactory.Options opts = new BitmapFactory.Options(); //todo yakun 优化 + opts.inDensity = (int) AutoSizeConfig.getInstance().getInitDensity(); + bmBlock = BitmapFactory.decodeResource(getResources(), R.drawable.bus_base_slide_block,opts); + bmBlock = Bitmap.createScaledBitmap(bmBlock, size, size, true); + blockWidth = bmBlock.getWidth(); + UiThreadHandler.post(this::requestLayout,UiThreadHandler.MODE.QUEUE); + }); } @Override @@ -151,14 +156,16 @@ public class SlidePanelView extends View { textMarginRight = NORMAL_TEXT_MARGIN_RIGHT; } - if (widthMode == MeasureSpec.AT_MOST) { - // 宽度根据图片大小,字符串长度,各种间隔确定 - // 高度根据图片大小和上下间隔确定 - textPaint.getTextBounds(blockText, 0, blockText.length(), textRect); - widthSize = BLOCK_START_X * 2 + bmBlock.getWidth() + textMarginLeft + textMarginRight + textRect.width(); - heightSize = BLOCK_START_Y * 2 + bmBlock.getHeight(); - widthMeasureSpec = MeasureSpec.makeMeasureSpec(widthSize, widthMode); - heightMeasureSpec = MeasureSpec.makeMeasureSpec(heightSize, heightMode); + if(bmBlock!=null) { + if (widthMode == MeasureSpec.AT_MOST) { + // 宽度根据图片大小,字符串长度,各种间隔确定 + // 高度根据图片大小和上下间隔确定 + textPaint.getTextBounds(blockText, 0, blockText.length(), textRect); + widthSize = BLOCK_START_X * 2 + bmBlock.getWidth() + textMarginLeft + textMarginRight + textRect.width(); + heightSize = BLOCK_START_Y * 2 + bmBlock.getHeight(); + widthMeasureSpec = MeasureSpec.makeMeasureSpec(widthSize, widthMode); + heightMeasureSpec = MeasureSpec.makeMeasureSpec(heightSize, heightMode); + } } super.onMeasure(widthMeasureSpec, heightMeasureSpec); @@ -262,11 +269,13 @@ public class SlidePanelView extends View { // 画文字 gradientMatrix.setTranslate(matrixTranslate, 0); textGradient.setLocalMatrix(gradientMatrix); + if(bmBlock!=null) { canvas.save(); canvas.drawText(blockText, (float) (blockWidth + BLOCK_START_X + textMarginLeft), (float) textOffset, textPaint); canvas.restore(); - // 画滑块 - canvas.drawBitmap(bmBlock, (float) (BLOCK_START_X + blockOffset), (float) BLOCK_START_Y, blockPaint); + // 画滑块 + canvas.drawBitmap(bmBlock, (float) (BLOCK_START_X + blockOffset), (float) BLOCK_START_Y, blockPaint); + } } public interface OnSlidePanelMoveToEndListener { diff --git a/OCH/bus/driver/src/main/res/layout/bus_base_fragment.xml b/OCH/bus/driver/src/main/res/layout/bus_base_fragment.xml index 5436ac42db..2f1f084ed3 100644 --- a/OCH/bus/driver/src/main/res/layout/bus_base_fragment.xml +++ b/OCH/bus/driver/src/main/res/layout/bus_base_fragment.xml @@ -6,10 +6,8 @@ android:layout_height="match_parent" android:layout_marginTop="@dimen/dp_72"> - diff --git a/OCH/bus/driver/src/main/res/layout/bus_jl_bizmap_map.xml b/OCH/bus/driver/src/main/res/layout/bus_jl_bizmap_map.xml new file mode 100644 index 0000000000..ffb955a311 --- /dev/null +++ b/OCH/bus/driver/src/main/res/layout/bus_jl_bizmap_map.xml @@ -0,0 +1,14 @@ + + + + \ No newline at end of file diff --git a/OCH/bus/driver/src/main/res/layout/bus_m2_bizmap_map.xml b/OCH/bus/driver/src/main/res/layout/bus_m2_bizmap_map.xml new file mode 100644 index 0000000000..625b786557 --- /dev/null +++ b/OCH/bus/driver/src/main/res/layout/bus_m2_bizmap_map.xml @@ -0,0 +1,14 @@ + + + + \ No newline at end of file diff --git a/OCH/bus/passenger/build.gradle b/OCH/bus/passenger/build.gradle index 391d65936f..2c836f13b4 100644 --- a/OCH/bus/passenger/build.gradle +++ b/OCH/bus/passenger/build.gradle @@ -44,6 +44,21 @@ android { } } + sourceSets { + main { + res.srcDirs = [ + 'src/main/res', + 'src/main/res/m2', + 'src/main/res/jinlv', + ] + java.srcDirs = [ + 'src/main/java', + 'src/main/java/m2', + 'src/main/java/jinlv', + ] + } + } + flavorDimensions "vehicle" productFlavors { // 车型:金旅星辰、开沃 小巴业务 @@ -51,6 +66,11 @@ android { dimension "vehicle" buildConfigField 'int', 'NEW_TEST', '0' } + // 车型:金旅m1 小巴业务 + m2 { + dimension "vehicle" + buildConfigField 'int', 'NEW_TEST', '1' + } } } @@ -65,7 +85,7 @@ dependencies { implementation rootProject.ext.dependencies.rxandroid implementation rootProject.ext.dependencies.androidxconstraintlayout implementation rootProject.ext.dependencies.amapnavi3dmap - implementation project(":OCH:mogo-och-common-module") + implementation project(":OCH:common:common") compileOnly project(":libraries:mogo-map") implementation project(':core:mogo-core-res') diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java b/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java deleted file mode 100644 index bd4d139df7..0000000000 --- a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java +++ /dev/null @@ -1,107 +0,0 @@ -package com.mogo.och.bus.passenger; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS_P; - -import android.content.Context; - -import androidx.fragment.app.Fragment; -import androidx.fragment.app.FragmentActivity; -import androidx.fragment.app.FragmentManager; - -import com.alibaba.android.arouter.facade.annotation.Route; -import com.mogo.eagle.core.data.config.FunctionBuildConfig; -import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager; -import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.MultiDisplayUtils; -import com.mogo.och.bus.passenger.constant.BusPassengerConst; -import com.mogo.och.bus.passenger.ui.BusPassengerRouteFragment; -import com.mogo.och.common.module.wigets.media.MediaPlayerActivity; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -/** - * 网约车-Bus-乘客端 - * - * Created on 2022/3/29 - */ -@Route(path = BusPassengerConst.PATH) -public class MogoOCHBusPassenger implements IMogoOCH { - private static final String TAG = MogoOCHBusPassenger.class.getSimpleName(); - - private FragmentActivity mActivity; - private int mContainerId; - private BusPassengerRouteFragment mPassengerFragment; - - @Override - public void createCoverage(FragmentActivity activity, int containerId) { - - } - - @Nullable - @Override - public Fragment createCoverage(@Nullable FragmentActivity activity, @Nullable Integer containerId) { - this.mActivity = activity; - this.mContainerId = containerId; - showFragment(); - - if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode) && activity != null) { - MultiDisplayUtils.INSTANCE.startActWithSecond(activity, MediaPlayerActivity.class); - } - - return null; - } - - @NotNull - @Override - public String getFunctionName() { - return TAG; - } - - @Override - public void onDestroy() { - // 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠 - if (mActivity == null) return; - mActivity.finish(); - } - - @Override - public void init(Context context) { - } - - /** - * 进入鹰眼模式,设置手势缩放地图失效 - */ - private void stepIntoVrMode() { - CallerLogger.d( M_BUS_P + TAG, "进入vr模式" ); - CallerMoGoUiSettingManager.INSTANCE.stepInDayMode();//白天模式 状态栏字体颜色变黑 - } - - private void showFragment() { - FragmentManager supportFragmentManager = mActivity.getSupportFragmentManager(); - if(mPassengerFragment == null){ - CallerLogger.d(M_BUS_P + TAG, "准备add fragment======"); - Fragment fragmentByTag = supportFragmentManager.findFragmentByTag(BusPassengerRouteFragment.TAG); - if (fragmentByTag instanceof BusPassengerRouteFragment){ - mPassengerFragment = (BusPassengerRouteFragment)fragmentByTag; - }else { - mPassengerFragment = new BusPassengerRouteFragment(); - } - if (!mPassengerFragment.isAdded()){ - supportFragmentManager.beginTransaction().add(mContainerId, mPassengerFragment,BusPassengerRouteFragment.TAG).commitAllowingStateLoss(); - } - return; - } - - CallerLogger.d(M_BUS_P + TAG, "准备show fragment"); - supportFragmentManager.beginTransaction().show(mPassengerFragment).commitAllowingStateLoss(); - } - - private void hideFragment(){ - if (mPassengerFragment != null){ - mActivity.getSupportFragmentManager().beginTransaction().hide(mPassengerFragment).commitAllowingStateLoss(); - } - } - -} diff --git a/OCH/bus/passenger/src/m2/AndroidManifest.xml b/OCH/bus/passenger/src/m2/AndroidManifest.xml new file mode 100644 index 0000000000..ef86a3875d --- /dev/null +++ b/OCH/bus/passenger/src/m2/AndroidManifest.xml @@ -0,0 +1,12 @@ + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/BusPassengerM2.kt b/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt similarity index 67% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/BusPassengerM2.kt rename to OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt index 3e015512bd..12a869c9aa 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/BusPassengerM2.kt +++ b/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt @@ -5,15 +5,17 @@ import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentActivity import androidx.fragment.app.FragmentManager import com.alibaba.android.arouter.facade.annotation.Route -import com.mogo.commons.module.status.IMogoStatusChangedListener -import com.mogo.commons.module.status.MogoStatusManager -import com.mogo.commons.module.status.StatusDescriptor -import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager.getMapUIController +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager.stepInDayMode +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.eagle.core.utilcode.util.MultiDisplayUtils import com.mogo.och.bus.passenger.constant.BusPassengerConst -import com.mogo.och.bus.passenger.ui.PM2BaseFragment +import com.mogo.och.bus.passenger.ui.BusPassengerRouteFragment +import com.mogo.och.bus.passenger.passenger.ui.PM2BaseFragment +import com.mogo.och.common.module.wigets.media.MediaPlayerActivity /** * 网约车-Bus-乘客端 @@ -21,20 +23,20 @@ import com.mogo.och.bus.passenger.ui.PM2BaseFragment * Created on 2022/3/29 */ @Route(path = BusPassengerConst.PATH) -class MogoOCHBusPassenger : IMogoOCH, IMogoStatusChangedListener { +class MogoOCHBusPassenger : IMoGoFunctionProvider { private var mActivity: FragmentActivity? = null private var mContainerId = 0 - private var mPM2Fragment: PM2BaseFragment? = null - override fun createCoverage(activity: FragmentActivity, containerId: Int) {} + private var mPM2Fragment: Fragment? = null + override fun createCoverage(activity: FragmentActivity?, containerId: Int?): Fragment? { mActivity = activity mContainerId = containerId!! -// if (MogoStatusManager.getInstance().isScreenCoverDismiss){ - showFragment() -// }else{ -// MogoStatusManager.getInstance() -// .registerStatusChangedListener("ochM2Passenger", StatusDescriptor.SCREEN_COVER, this) -// } + showFragment() + if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) { + mActivity?.let { + MultiDisplayUtils.startActWithSecond(it, MediaPlayerActivity::class.java) + } + } return null } @@ -63,12 +65,19 @@ class MogoOCHBusPassenger : IMogoOCH, IMogoStatusChangedListener { d(SceneConstant.M_TAXI_P + TAG, "准备add fragment======") - var fragmentByTag: Fragment? = supportFragmentManager?.findFragmentByTag(PM2BaseFragment.TAG) + val fragmentByTag: Fragment? = supportFragmentManager?.findFragmentByTag(PM2BaseFragment.TAG) - mPM2Fragment = if (fragmentByTag is PM2BaseFragment){ + mPM2Fragment = if (fragmentByTag is Fragment){ fragmentByTag }else{ - PM2BaseFragment() + if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) { + PM2BaseFragment() + }else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) { + BusPassengerRouteFragment() + }else{ + BusPassengerRouteFragment() + } + } if (!mPM2Fragment?.isAdded!!){ @@ -93,13 +102,4 @@ class MogoOCHBusPassenger : IMogoOCH, IMogoStatusChangedListener { private val TAG = MogoOCHBusPassenger::class.java.simpleName } - override fun onStatusChanged(descriptor: StatusDescriptor?, isTrue: Boolean) { - if (descriptor == StatusDescriptor.SCREEN_COVER){ - if (isTrue){ - showFragment() - }else{ - hideFragment() - } - } - } } \ No newline at end of file diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerOperationStatusResponse.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerOperationStatusResponse.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerOperationStatusResponse.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerOperationStatusResponse.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerQueryLineRequest.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerQueryLineRequest.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerQueryLineRequest.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerQueryLineRequest.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerRoutesResponse.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerRoutesResponse.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerRoutesResponse.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerRoutesResponse.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerRoutesResult.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerRoutesResult.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerRoutesResult.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerRoutesResult.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerStation.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerStation.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/bean/BusPassengerStation.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/bean/BusPassengerStation.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassegerDriverStatusCallback.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassegerDriverStatusCallback.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassegerDriverStatusCallback.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassegerDriverStatusCallback.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerADASStatusCallback.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerADASStatusCallback.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerADASStatusCallback.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerADASStatusCallback.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerAutopilotPlanningCallback.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerAutopilotPlanningCallback.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerAutopilotPlanningCallback.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerAutopilotPlanningCallback.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerMapViewCallback.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerMapViewCallback.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerMapViewCallback.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerMapViewCallback.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerRouteLineInfoCallback.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerRouteLineInfoCallback.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/callback/IBusPassengerRouteLineInfoCallback.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/callback/IBusPassengerRouteLineInfoCallback.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.kt b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/model/BusPassengerModel.kt similarity index 99% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.kt rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/model/BusPassengerModel.kt index 2dc3afbc48..1e8c2ea0fa 100644 --- a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.kt +++ b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/model/BusPassengerModel.kt @@ -32,7 +32,7 @@ import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isPassenger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.NetworkUtils import com.mogo.eagle.core.utilcode.util.ToastUtils @@ -69,8 +69,6 @@ import com.mogo.och.common.module.utils.PinYinUtil import mogo.telematics.pad.MessagePad import mogo.telematics.pad.MessagePad.ArrivalNotification import mogo.telematics.pad.MessagePad.GlobalPathResp -import system_master.SsmInfo -import system_master.SystemStatusInfo import java.util.concurrent.ConcurrentHashMap /** @@ -576,7 +574,7 @@ object BusPassengerModel { } if (mTwoStationsRouts.size > 0) { val sumLength = calculateRouteSumLength(mTwoStationsRouts) - SharedPrefsMgr.getInstance(mContext!!) + SharedPrefsMgr.getInstance() .putInt(BusPassengerConst.BUS_SP_KEY_ORDER_SUM_DIS, sumLength.toInt()) mAutopilotPlanningCallback?.updateTotalDistance() } diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/network/BusPassengerModelLoopManager.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/network/BusPassengerModelLoopManager.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/network/BusPassengerModelLoopManager.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/network/BusPassengerModelLoopManager.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/network/BusPassengerServiceManager.kt b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/network/BusPassengerServiceManager.kt similarity index 93% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/network/BusPassengerServiceManager.kt rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/network/BusPassengerServiceManager.kt index 94ab982151..8d92a70a56 100644 --- a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/network/BusPassengerServiceManager.kt +++ b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/network/BusPassengerServiceManager.kt @@ -8,6 +8,7 @@ import com.mogo.commons.debug.DebugConfig import com.mogo.och.bus.passenger.bean.BusPassengerQueryLineRequest import com.mogo.och.bus.passenger.bean.BusPassengerOperationStatusResponse import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl @@ -51,14 +52,14 @@ object BusPassengerServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ mBusPassengerSaasServiceApi.queryDriverSiteByCoordinate( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, driverAppSn ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverSiteByCoordinate")) }else{ mBusPassengerServiceApi.queryDriverSiteByCoordinate( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusPassengerQueryLineRequest( driverAppSn ) @@ -81,7 +82,7 @@ object BusPassengerServiceManager { if (DebugConfig.getProjectFlavor().contains("saas")){ mBusPassengerSaasServiceApi.queryDriverOperationStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, driverAppSn ) .transformTry() @@ -89,7 +90,7 @@ object BusPassengerServiceManager { }else{ mBusPassengerServiceApi.queryDriverOperationStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, driverAppSn ) .transformTry() diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/network/PassengerSAASServiceApi.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/network/PassengerSAASServiceApi.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/network/PassengerSAASServiceApi.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/network/PassengerSAASServiceApi.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/network/PassengerServiceApi.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/network/PassengerServiceApi.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/network/PassengerServiceApi.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/network/PassengerServiceApi.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/presenter/BaseBusPassengerPresenter.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/presenter/BaseBusPassengerPresenter.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/presenter/BaseBusPassengerPresenter.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/presenter/BaseBusPassengerPresenter.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/provider/BusPStatusViewManager.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/provider/BusPStatusViewManager.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/provider/BusPStatusViewManager.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/provider/BusPStatusViewManager.java diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPBlueToothView.kt b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPBlueToothView.kt similarity index 93% rename from OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPBlueToothView.kt rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPBlueToothView.kt index ac8504e5dd..8e4fef8281 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPBlueToothView.kt +++ b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPBlueToothView.kt @@ -7,7 +7,7 @@ import com.mogo.eagle.core.function.api.devatools.IMoGoDevaToolsListener import com.mogo.eagle.core.function.hmi.ui.widget.BlueToothView import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.och.bus.passenger.R -import kotlinx.android.synthetic.jinlvvan.p_bus_view_blue_tooth.view.* +import kotlinx.android.synthetic.main.p_bus_view_blue_tooth.view.blueView /** * 魔戒蓝牙控件 diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPStatusBarView.kt b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPStatusBarView.kt similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPStatusBarView.kt rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPStatusBarView.kt diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.kt b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.kt similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.kt rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.kt diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java similarity index 99% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java index b1a51e6a45..e576d70bc2 100644 --- a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java +++ b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java @@ -20,7 +20,7 @@ import com.mogo.commons.debug.DebugConfig; import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.hmi.ui.widget.DriverMonitorView; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.och.bus.passenger.R; import com.mogo.och.bus.passenger.adapter.BusPassengerLineStationsAdapter; import com.mogo.och.bus.passenger.bean.BusPassengerStation; @@ -335,7 +335,7 @@ public class BusPassengerRouteFragment extends } if (currentStationIndex == 0 && isArrived){ //到达始发站且并未出发, 恢复站点marker 清楚路径 清空路径点 - SharedPrefsMgr.getInstance(getContext()) + SharedPrefsMgr.getInstance() .remove(BusPassengerConst.BUS_SP_KEY_ORDER_SUM_DIS); clearMapView(); } diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.kt b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.kt similarity index 95% rename from OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.kt rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.kt index 67fbc4b554..13f3a349df 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.kt +++ b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.kt @@ -10,7 +10,9 @@ import com.mogo.eagle.core.function.api.datacenter.union.IMoGoTrafficLightListen import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.bus.passenger.R -import kotlinx.android.synthetic.jinlvvan.bus_p_traffic_light_view.view.* +import kotlinx.android.synthetic.main.bus_p_traffic_light_view.view.bus_p_traffic_light_bg +import kotlinx.android.synthetic.main.bus_p_traffic_light_view.view.bus_p_traffic_light_iv +import kotlinx.android.synthetic.main.bus_p_traffic_light_view.view.bus_p_traffic_light_time_tv /** * bus乘客端:红绿灯view diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/IBusPassengerMapDirectionView.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/IBusPassengerMapDirectionView.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/IBusPassengerMapDirectionView.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/IBusPassengerMapDirectionView.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/MapAndLiveVideoView.kt b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/MapAndLiveVideoView.kt similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/MapAndLiveVideoView.kt rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/MapAndLiveVideoView.kt diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/layoutmanager/CenterLayoutManager.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/layoutmanager/CenterLayoutManager.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/layoutmanager/CenterLayoutManager.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/layoutmanager/CenterLayoutManager.java diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/widget/BusPTurnLightView.kt b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/widget/BusPTurnLightView.kt similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/widget/BusPTurnLightView.kt rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/ui/widget/BusPTurnLightView.kt diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/utils/BPRouteDataTestUtils.java b/OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/utils/BPRouteDataTestUtils.java similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/utils/BPRouteDataTestUtils.java rename to OCH/bus/passenger/src/main/java/jinlv/com/mogo/och/bus/passenger/utils/BPRouteDataTestUtils.java diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2OperationStatusResponse.java b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2OperationStatusResponse.java new file mode 100644 index 0000000000..315ca0568e --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2OperationStatusResponse.java @@ -0,0 +1,21 @@ +package com.mogo.och.bus.passenger.passenger.bean; + +import com.mogo.eagle.core.data.BaseData; + +/** + * @author congtaowang + * @since 2021/3/22 + * + * 小巴车运营状态返回参数 + */ +public class PM2OperationStatusResponse extends BaseData { + + public Result data; + + public static class Result { + private String sn; //司机屏sn + private String phone; //司机手机号 + public String plateNumber; //车牌号 + public int driverStatus;//0:已收车,1:已出车 + } +} diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2QueryLineRequest.java b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2QueryLineRequest.java new file mode 100644 index 0000000000..ed7d4835c6 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2QueryLineRequest.java @@ -0,0 +1,16 @@ +package com.mogo.och.bus.passenger.passenger.bean; + +public +/** + * @author congtaowang + * @since 2021/3/22 + * + * 根据车机行驶线路站点信息 + */ +class PM2QueryLineRequest { + + private String sn; + public PM2QueryLineRequest(String sn) { + this.sn = sn; + } +} diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2RoutesResponse.java b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2RoutesResponse.java new file mode 100644 index 0000000000..06d25677a8 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2RoutesResponse.java @@ -0,0 +1,29 @@ +package com.mogo.och.bus.passenger.passenger.bean; + +import com.mogo.eagle.core.data.BaseData; +import com.mogo.och.data.bean.BusRoutesResult; + +/** + * 网约车小巴路线接口请求响应结果 返回的是对应司机屏的线路信息 + * + * @author tongchenfei + */ +public class PM2RoutesResponse extends BaseData { + private BusRoutesResult data; + + public BusRoutesResult getResult() { + return data; + } + + public void setResult(BusRoutesResult data) { + this.data = data; + } + + @Override + public String toString() { + return "OchBusRoutesResponse{" + + "data=" + data + + '}'; + } + +} diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2RoutesResult.java b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2RoutesResult.java new file mode 100644 index 0000000000..89e77ee2f1 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2RoutesResult.java @@ -0,0 +1,79 @@ +package com.mogo.och.bus.passenger.passenger.bean; + +import java.util.List; +import java.util.Objects; + +/** + * 网约车小巴路线接口返回接口数据封装 + * + * @author tongchenfei + */ +public class PM2RoutesResult { + private List sites; + private int lineId; + private String name; //线路名称 + private int lineType; //线路类型,0:环形 + private String description; + private int status; + private String runningDur; //运营时间 + private long taskTime; //线路时间班次 + + public List getSites() { + return sites; + } + + public int getLineId() { + return lineId; + } + + public String getName() { + return name; + } + + public int getLineType() { + return lineType; + } + + public String getDescription() { + return description; + } + + public int getStatus() { + return status; + } + + public String getRunningDur() { + return runningDur; + } + + @Override + public String toString() { + return "BusPassengerRoutesResult{" + + "sites=" + sites + + ", lineId=" + lineId + + ", name='" + name + '\'' + + ", lineType=" + lineType + + ", description='" + description + '\'' + + ", status=" + status + + ", runningDur='" + runningDur + '\'' + + '}'; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + PM2RoutesResult that = (PM2RoutesResult) o; + return lineId == that.lineId + && lineType == that.lineType + && status == that.status + && sites.equals(that.sites) + && name.equals(that.name) + && runningDur.equals(that.runningDur); + } + + @Override + public int hashCode() { + return Objects.hash(sites, lineId, name, lineType, description, status, runningDur); + } +} diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2Station.java b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2Station.java new file mode 100644 index 0000000000..78881be174 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/bean/PM2Station.java @@ -0,0 +1,173 @@ +package com.mogo.och.bus.passenger.passenger.bean; + +import java.util.Objects; + +/** + * 单个网约车小巴车站信息 + * + * @author wangmingjun + */ +public class PM2Station { + + private String name; + private String description; + private String cityCode; + private double lon; //高精坐标 + private double lat; //高精坐标 + private double gcjLon; //高德坐标 + private double gcjLat; //高德坐标 + private int businessType; //站点类型,9:taxi,10:bus + private int status; + private int siteId; + private int seq; + private int drivingStatus;//行驶信息,0初始值;1已经过;2当前站;3未到站 + private int ifStop = 1; // 是否需要停靠、1需要、0不需要 // TODO: 2021/10/19 原来站点里有设计是否需要停靠字段,现设计暂无,默认都需要停靠 + private boolean leaving; + + public void setName(String name) { + this.name = name; + } + + public void setDescription(String description) { + this.description = description; + } + + public void setCityCode(String cityCode) { + this.cityCode = cityCode; + } + + public void setLon(double lon) { + this.lon = lon; + } + + public void setLat(double lat) { + this.lat = lat; + } + + public void setBusinessType(int businessType) { + this.businessType = businessType; + } + + public void setStatus(int status) { + this.status = status; + } + + public void setSiteId(int siteId) { + this.siteId = siteId; + } + + public void setSeq(int seq) { + this.seq = seq; + } + + public void setDrivingStatus(int drivingStatus) { + this.drivingStatus = drivingStatus; + } + + public String getName() { + return name; + } + + public String getDescription() { + return description; + } + + public String getCityCode() { + return cityCode; + } + + public double getGcjLon() { + return gcjLon; + } + + public double getGcjLat() { + return gcjLat; + } + + public int getBusinessType() { + return businessType; + } + + public int getStatus() { + return status; + } + + public int getSiteId() { + return siteId; + } + + public int getSeq() { + return seq; + } + + public int getDrivingStatus() { + return drivingStatus; + } + + public double getLon() { + return lon; + } + + public double getLat() { + return lat; + } + + public void setIfStop(int ifStop) { + this.ifStop = ifStop; + } + + public int getIfStop() { + return ifStop; + } + + public void setLeaving(boolean leaving) { + this.leaving = leaving; + } + + public boolean isLeaving() { + return leaving; + } + + @Override + public String toString() { + return "OchBusStation{" + + "name='" + name + '\'' + + ", description='" + description + '\'' + + ", cityCode='" + cityCode + '\'' + + ", lon=" + lon + + ", lat=" + lat + + ", businessType=" + businessType + + ", status=" + status + + ", siteId=" + siteId + + ", seq=" + seq + + ", drivingStatus=" + drivingStatus + + ", ifStop=" + ifStop + + ", leaving=" + leaving + + '}'; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + PM2Station that = (PM2Station) o; + return Double.compare(that.lon, lon) == 0 + && Double.compare(that.lat, lat) == 0 + && Double.compare(that.gcjLon, gcjLon) == 0 + && Double.compare(that.gcjLat, gcjLat) == 0 + && businessType == that.businessType + && status == that.status + && siteId == that.siteId + && seq == that.seq + && drivingStatus == that.drivingStatus + && ifStop == that.ifStop + && leaving == that.leaving + && Objects.equals(name, that.name) + && Objects.equals(cityCode, that.cityCode); + } + + @Override + public int hashCode() { + return Objects.hash(name, description, cityCode, lon, lat, gcjLon, gcjLat, businessType, status, siteId, seq, drivingStatus, ifStop, leaving); + } +} diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/callback/ADASCallback.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/callback/ADASCallback.kt new file mode 100644 index 0000000000..02c13b7666 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/callback/ADASCallback.kt @@ -0,0 +1,10 @@ +package com.mogo.och.bus.passenger.passenger.callback + +/** + * @author: wangmingjun + * @date: 2023/2/15 + */ +interface ADASCallback { + fun updateHDMapStations(stations: MutableList>) + fun removeHDMapStations() +} \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/callback/AutoPilotStatusCallback.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/callback/AutoPilotStatusCallback.kt new file mode 100644 index 0000000000..87d222acb9 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/callback/AutoPilotStatusCallback.kt @@ -0,0 +1,14 @@ +package com.mogo.och.bus.passenger.passenger.callback + +/** + * @author: wangmingjun + * @date: 2023/2/13 + */ +interface AutoPilotStatusCallback { + /** + * false: 未开启自驾, true : 开启自驾 + */ + fun updateAutoStatus(isOpen: Boolean) + + fun updateAutoStatus(status: Int) +} \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/callback/DrivingInfoCallback.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/callback/DrivingInfoCallback.kt new file mode 100644 index 0000000000..c971fb942a --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/callback/DrivingInfoCallback.kt @@ -0,0 +1,19 @@ +package com.mogo.och.bus.passenger.passenger.callback + +import com.mogo.och.data.bean.BusStationBean + +/** + * @author: wangmingjun + * @date: 2023/2/2 + */ +interface DrivingInfoCallback { + fun updateSpeed(speed: Int) + fun updatePlateNumber(carNum: String) + fun updateLine(lineName: String, lineDuring: String) + fun updateRemainMT(meters : Long, timeInSecond : Long) // 米,秒 + fun changeOperationStatus(loginStatus : Boolean) + fun showNoTaskView(isTrue : Boolean) + fun updateLineStations(stations: MutableList) + fun updateStationsInfo(stations: MutableList, i: Int, isArrived: Boolean) + fun clearCustomPolyline() +} \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/constant/M2Const.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/constant/M2Const.kt new file mode 100644 index 0000000000..102a792310 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/constant/M2Const.kt @@ -0,0 +1,16 @@ +package com.mogo.och.bus.passenger.passenger.constant + +/** + * Created on 2021/12/6 + */ +class M2Const { + companion object { + //站点UUID + const val M2_MAP_STATION_MAKER = "m2_map_station_maker" + + /** + * Marker类型 + */ + const val TYPE_MARKER_M2_LINE = "TYPE_MARKER_M2_LINE" + } +} \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/model/PM2ADASModel.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/model/PM2ADASModel.kt new file mode 100644 index 0000000000..92f2916c6f --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/model/PM2ADASModel.kt @@ -0,0 +1,45 @@ +package com.mogo.och.bus.passenger.passenger.model + +import android.content.Context +import com.mogo.och.bus.passenger.passenger.callback.ADASCallback +import com.mogo.och.data.bean.BusStationBean + +/** + * @author: wangmingjun + * @date: 2023/2/2 + */ +class PM2ADASModel private constructor() { + + private var mContext: Context? = null + private var mAdasCallback: ADASCallback? = null + + companion object { + val TAG = PM2ADASModel::class.java.simpleName + val INSTANCE: PM2ADASModel by lazy(mode = LazyThreadSafetyMode.SYNCHRONIZED) { + PM2ADASModel() + } + } + + fun init(context : Context){ + this.mContext = context + } + + fun setAdasCallback(adasCallback: ADASCallback?){ + this.mAdasCallback = adasCallback + } + + fun updateHDMapStations(stations: MutableList){ + var stationsList = mutableListOf>() + for (i in stations.indices){ + var listLatLng = mutableListOf() // 0: long 1:lat + listLatLng.add(stations[i].lon) + listLatLng.add(stations[i].lat) + stationsList.add(listLatLng) + } + mAdasCallback?.updateHDMapStations(stationsList) + } + + fun removeHDMapStations(){ + mAdasCallback?.removeHDMapStations() + } +} \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/model/PM2DrivingModel.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/model/PM2DrivingModel.kt new file mode 100644 index 0000000000..3eff2a3f93 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/model/PM2DrivingModel.kt @@ -0,0 +1,638 @@ +package com.mogo.och.bus.passenger.passenger.model + +import android.content.Context +import android.media.AudioAttributes +import android.media.AudioFocusRequest +import android.media.AudioManager +import android.net.ConnectivityManager +import android.os.Build +import android.os.Handler +import androidx.annotation.RequiresApi +import com.mogo.commons.module.intent.IMogoIntentListener +import com.mogo.commons.module.intent.IntentManager +import com.mogo.commons.voice.AIAssist +import com.mogo.commons.voice.IMogoVoiceCmdCallBack +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.data.map.MogoLocation +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener +import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener +import com.mogo.eagle.core.function.api.autopilot.IMoGoPlanningRottingListener +import com.mogo.eagle.core.function.api.telematic.IReceivedMsgListener +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerPlanningRottingListenerManager +import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager +import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager.sendMsgToServer +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.Logger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.eagle.core.utilcode.util.CoordinateUtils +import com.mogo.eagle.core.utilcode.util.GsonUtils +import com.mogo.eagle.core.utilcode.util.NetworkUtils +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.bus.passenger.R +import com.mogo.och.bus.passenger.constant.BusPassengerConst +import com.mogo.och.bus.passenger.passenger.callback.AutoPilotStatusCallback +import com.mogo.och.bus.passenger.passenger.callback.DrivingInfoCallback +import com.mogo.och.bus.passenger.passenger.model.PM2ServiceManager.driverAppSn +import com.mogo.och.bus.passenger.passenger.network.PM2ModelLoopManager +import com.mogo.och.common.module.bean.dpmsg.* +import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager.pushAppOperationalMsgBox +import com.mogo.och.common.module.biz.constant.OchCommonConst +import com.mogo.och.common.module.biz.network.OchCommonServiceCallback +import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil +import com.mogo.och.common.module.utils.DateTimeUtil +import com.mogo.och.common.module.utils.RxUtils +import com.mogo.och.data.bean.BusRoutesResult +import com.mogo.och.data.bean.BusStationBean +import com.mogo.och.data.bean.BusTransferData +import io.reactivex.disposables.Disposable +import mogo.telematics.pad.MessagePad +import com.mogo.och.bus.passenger.passenger.bean.PM2OperationStatusResponse +import com.mogo.och.bus.passenger.passenger.bean.PM2RoutesResponse +import kotlin.math.abs + +/** + * @author: wangmingjun + * @date: 2023/1/31 + */ +class PM2DrivingModel private constructor() { + + private var mContext: Context? = null + private var mLocation: MogoLocation? = null + + private var mRoutePoints = mutableListOf() + private var routesResult: BusRoutesResult? = null + + private var mCurrentAutoStatus = -1 + + var mStations = mutableListOf() + private var mNextStationIndex = 0 // A-B要到达站的index + private var isGoingToNextStation = false //是否前往下一站过程中 + + private var mTwoStationsRouts = mutableListOf() + private var mPreRouteIndex = 0 + private var mWipePreIndex = 0 + + private var mDrivingInfoCallback: DrivingInfoCallback? = null //行程信息 + private var mAutoStatusCallback: AutoPilotStatusCallback? = null //自动驾驶状态 + + private var operationStatus: PM2OperationStatusResponse.Result? = null + + @Volatile + private var globalPathTruncation: Disposable? = null + + private val handler = Handler(Handler.Callback { msg -> + if (msg.what == MSG_QUERY_BUS_P_STATION) { + queryDriverOperationStatus() + return@Callback true + } + false + }) + + companion object { + val TAG = PM2DrivingModel::class.java.simpleName + const val MSG_QUERY_BUS_P_STATION = 1001 + val INSTANCE: PM2DrivingModel by lazy(mode = LazyThreadSafetyMode.SYNCHRONIZED) { + PM2DrivingModel() + } + } + + fun init(context : Context){ + mContext = context + initListener() + queryDriverByLocalDriver() + queryDriverOperationStatus() + startOrStopOrderLoop(true) + } + + private fun queryDriverByLocalDriver() { + //本地去请求司机端 + val msg = TaskDetailsMsg("task") + sendMsgToServer(GsonUtils.toJson(msg)) + } + + private fun initListener() { + //自动驾驶状态监听 + CallerAutoPilotStatusListenerManager.addListener(TAG, mAutoPilotStatusListener) + + // 定位监听 + CallerChassisLocationGCJ02ListenerManager.addListener(TAG, 10,mMapLocationListener) + + //司乘屏通信监听 + CallerTelematicListenerManager.addListener(TAG,mReceivedMsgListener) + + //自动驾驶轨迹监听 + CallerPlanningRottingListenerManager.addListener(TAG, moGoAutopilotPlanningListener) + + //网络监听 + IntentManager.getInstance().registerIntentListener(ConnectivityManager.CONNECTIVITY_ACTION, mNetWorkIntentListener) + + } + + private fun sendMsgToServer(msg: String) { + sendMsgToServer( + OchCommonConst.BUSINESS_STRING, + GsonUtils.toJson(msg).toByteArray() + ) + } + + fun releaseListener(){ + //自动驾驶状态监听 + CallerAutoPilotStatusListenerManager.removeListener(TAG) + + // 定位监听 + CallerChassisLocationGCJ02ListenerManager.removeListener(TAG) + + CallerTelematicListenerManager.removeListener(TAG) + + //自动驾驶轨迹监听 + CallerPlanningRottingListenerManager.removeListener(TAG) + } + + fun setDrivingInfoCallback(drivingInfoCallback : DrivingInfoCallback?){ + mDrivingInfoCallback = drivingInfoCallback + } + + fun setAutoStatusCallback(autoPilotStatusCallback: AutoPilotStatusCallback?){ + mAutoStatusCallback = autoPilotStatusCallback + } + + private val mNetWorkIntentListener = IMogoIntentListener { intentStr, _ -> + if (ConnectivityManager.CONNECTIVITY_ACTION == intentStr) { + if (NetworkUtils.isConnected(mContext)) { + queryDriverOperationStatus() + } + } + } + + private val mReceivedMsgListener: IReceivedMsgListener = + object : IReceivedMsgListener{ + @RequiresApi(Build.VERSION_CODES.O) + override fun onReceivedMsg(type: Int, byteArray: ByteArray) {//接收司机端发来的信息 + if (OchCommonConst.BUSINESS_STRING == type){ + val baseMsg = GsonUtils.fromJson(String(byteArray), BaseDPMsg::class.java) + Logger.d( + SceneConstant.M_BUS_P + TAG, "onReceivedMsg = " + GsonUtils.toJson(baseMsg) + ) + + if (baseMsg != null && baseMsg.type == DPMsgType.TYPE_COMMON.type) { + val msg = GsonUtils.fromJson(String(byteArray), AppConnectMsg::class.java) + + if (msg != null && msg.isPlay){ //播报 + speakTTS(msg.msg) + } + + if (msg != null && msg.isViewShow) { //消息盒子显示内容 + pushAppOperationalMsgBox( + DateTimeUtil.getCurrentTimeStamp(),msg.msg) + } + }else if (baseMsg != null && baseMsg.type == DPMsgType.TYPE_TASK_DETAILS.type) { + val msg = GsonUtils.fromJson(String(byteArray), TaskDetailsMsg::class.java) + Logger.d( + SceneConstant.M_BUS_P + TAG, "onReceivedMsg = " + GsonUtils.toJson(msg) + ) + if (msg == null || msg.msg?.isEmpty() == true) { + updateLocalOrder() + return + } + val result = GsonUtils.fromJson(msg.msg, BusTransferData::class.java) + mDrivingInfoCallback?.changeOperationStatus(result.loginStatus == 1) + if (result != null && result.routesResult == null){ + updateLocalOrder() + } + + if (routesResult == null || + (result != null && result.routesResult?.writeVersion!! > routesResult!!.writeVersion)) { + routesResult = result.routesResult + updatePassengerRouteInfo(routesResult!!) + } + + } + } + } + } + + @RequiresApi(Build.VERSION_CODES.O) + private fun speakTTS(msg: String) { + + var mAudioManager = mContext?.getSystemService(Context.AUDIO_SERVICE) as AudioManager + var mAudioAttributes = AudioAttributes.Builder() + .setUsage(AudioAttributes.USAGE_MEDIA) //设置声音的用途 + .setContentType(AudioAttributes.CONTENT_TYPE_MUSIC) //设置声音的类型 + .build() + var mAudioFocusRequest = AudioFocusRequest.Builder(AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK) //设置焦点类型 + .setAudioAttributes(mAudioAttributes) //设置声音属性 + .setAcceptsDelayedFocusGain(false) //设置接受延迟获取焦点,需要设置OnAudioFocusChangeListener来监听焦点的获取 + .build() + mAudioManager.requestAudioFocus(mAudioFocusRequest) //抢占焦点 + + AIAssist.getInstance(mContext).speakTTSVoiceWithLevel(msg,AIAssist.LEVEL0,object : IMogoVoiceCmdCallBack{ + override fun onSpeakEnd(speakText: String?) { + mAudioManager.abandonAudioFocusRequest(mAudioFocusRequest) + } + + override fun onSpeakError(speakText: String?, errorMsg: String?) { + mAudioManager.abandonAudioFocusRequest(mAudioFocusRequest) + } + + override fun onSpeakSelectTimeOut(speakText: String?) { + mAudioManager.abandonAudioFocusRequest(mAudioFocusRequest) + } + }) + } + + private val mMapLocationListener: IMoGoChassisLocationGCJ02Listener = + object : IMoGoChassisLocationGCJ02Listener{ + override fun onChassisLocationGCJ02(mogoLocation: MogoLocation?) { + if (null == mogoLocation) return + mLocation = mogoLocation + updateSpeed(mogoLocation) + } + } + + private val moGoAutopilotPlanningListener = object : IMoGoPlanningRottingListener{ + + @Synchronized + override fun onAutopilotRotting(globalPathResp: MessagePad.GlobalPathResp?) { + d(SceneConstant.M_BUS_P + TAG, "och-rotting==globalPathResp = " + GsonUtils.toJson(globalPathResp)) + globalPathResp?.let { + d(SceneConstant.M_BUS_P + TAG, "och-rotting==wayPointsSize = " + it.wayPointsList.size) + + if (globalPathTruncation != null && !globalPathTruncation!!.isDisposed) { + d(SceneConstant.M_BUS_P + TAG, "1s内不可以接受轨迹") + return@let + } + + globalPathTruncation = RxUtils.createSubscribe(1_000) { + d(SceneConstant.M_BUS_P + TAG, "可以接受轨迹") + } + d(SceneConstant.M_BUS_P + TAG, "接受轨迹中") + it.wayPointsList?.let {list-> + updateRoutePoints(list) + } + } + } + + } + + @Synchronized + fun updateRoutePoints(routePoints: List) { + mRoutePoints.clear() + val latLngModels = CoordinateCalculateRouteUtil + .coordinateConverterWgsToGcjLocations(mContext, routePoints) + d(SceneConstant.M_BUS_P + TAG, "och-rotting==latLngModels = " + latLngModels.size) + mRoutePoints.addAll(latLngModels) + + if (isGoingToNextStation){ + mTwoStationsRouts.clear() + startRemainRouteInfo() + } + } + + private fun updateSpeed(mogoLocation: MogoLocation) { + // km/h + val speedKM = (abs(mogoLocation.gnssSpeed) * 3.6f).toInt() + + mDrivingInfoCallback?.updateSpeed(speedKM) + } + + private val mAutoPilotStatusListener: IMoGoAutopilotStatusListener = + object : IMoGoAutopilotStatusListener { + + override fun onAutopilotStatusResponse(state: Int) { + super.onAutopilotStatusResponse(state) + d(SceneConstant.M_BUS_P+ TAG, "onAutopilotStatusResponse ===== $state") + if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING != state){ + //美化模式下且行程中 + if (FunctionBuildConfig.isDemoMode && + mNextStationIndex>= 0 && mNextStationIndex <= mStations.size - 1 + && isGoingToNextStation){ + mAutoStatusCallback?.updateAutoStatus(true) + }else{//非美化模式下 + mAutoStatusCallback?.updateAutoStatus(false) + } + }else{//自驾状态 2 + mAutoStatusCallback?.updateAutoStatus(true) + } + } + + } + + private fun queryDriverOperationDelay() { + handler.sendEmptyMessageDelayed( + MSG_QUERY_BUS_P_STATION, + BusPassengerConst.QUERY_BUS_P_STATION_DELAY + ) + } + + private fun queryDriverOperationStatus() { + mContext?.let { + PM2ServiceManager.queryDriverOperationStatus( + it, + object : OchCommonServiceCallback { + override fun onSuccess(data: PM2OperationStatusResponse?) { + if (data?.data == null) return + if (data.data.driverStatus != operationStatus?.driverStatus + || data.data.plateNumber != operationStatus?.plateNumber + ) { + d( + SceneConstant.M_BUS_P + TAG, + "queryDriverOperationStatus ===== 车牌或者登陆状态有变更" + ) + mDrivingInfoCallback?.changeOperationStatus(data.data.driverStatus == 1) + } + operationStatus = data.data as PM2OperationStatusResponse.Result +// mDrivingInfoCallback?.updatePlateNumber(data.data.plateNumber) + } + + override fun onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext!!.getString(R.string.network_error_tip)) + } else { + ToastUtils.showShort(mContext!!.getString(R.string.request_error_tip)) + } +// queryDriverOperationDelay() + queryDriverByLocalDriver() + } + + override fun onFail(code: Int, msg: String) { + //延迟3s再次查询 + queryDriverOperationDelay() + } + }) + } + } + + fun queryDriverSiteByCoordinate(){ + mContext?.let { + PM2ServiceManager.queryDriverSiteByCoordinate(it, + object : OchCommonServiceCallback { + override fun onSuccess(data: PM2RoutesResponse?) { + + if (data == null || data.result == null) { + if (routesResult != null) { + routesResult = null + updateLocalOrder() + d( + SceneConstant.M_BUS_P + TAG, + "queryDriverSiteByCoordinate= result is null" + ) + return + } + return + } + if (data.result != null && data.result.equals(routesResult)) { + d( + SceneConstant.M_BUS_P + TAG, + "queryDriverSiteByCoordinate= not update" + ) + return + } + + if (routesResult != null && + routesResult!!.writeVersion < data.result.writeVersion + ) { + routesResult = data.result + } + + if (routesResult == null) { + routesResult = data.result + } + updatePassengerRouteInfo(data.result) + } + + override fun onError() { + d( + SceneConstant.M_BUS_P + TAG, + "queryDriverSiteByCoordinate = onError =" + + ", sn = " + driverAppSn + ) + queryDriverByLocalDriver() + } + + override fun onFail(code: Int, msg: String?) { + d(SceneConstant.M_BUS_P + TAG, "queryDriverSiteByCoordinate = %s", msg) + if (code == 1003) { + queryDriverOperationDelay() + } + if (driverAppSn.isEmpty()) { + return + } + if (code == 1003) { + routesResult = null + isGoingToNextStation = false + startOrStopCalculateRouteInfo(false) + return + } + } + + }) + } + } + + private fun updateLocalOrder(){ + mRoutePoints.clear() + routesResult = null + mNextStationIndex = 0 + isGoingToNextStation = false + startOrStopCalculateRouteInfo(false) + mDrivingInfoCallback?.showNoTaskView(true) + } + + private fun updatePassengerRouteInfo(result: BusRoutesResult) { + + if (result == null) { + updateLocalOrder() + return + } + + if (routesResult != null && routesResult!!.lineId != result.lineId){ + d(SceneConstant.M_BUS_P+ TAG, "lineId change= clearCustomPolyline") + mDrivingInfoCallback?.clearCustomPolyline() + } + + d(SceneConstant.M_BUS_P+ TAG, "queryDriverSiteByCoordinate= update") + routesResult = result + + mDrivingInfoCallback?.updateLine(result.name, result.runningDur) + if (result.sites != null) { + mDrivingInfoCallback?.showNoTaskView(false) + val stations: List = result.sites + mStations.clear() + mStations.addAll(stations) + mDrivingInfoCallback?.updateLineStations(mStations) + for (i in stations.indices) { + val station: BusStationBean = stations[i] + if (station.drivingStatus == BusPassengerConst.STATION_STATUS_STOPPED + && station.isLeaving && i + 1 < stations.size) { + mDrivingInfoCallback?.updateStationsInfo(stations as MutableList, i + 1, false) + d(SceneConstant.M_BUS_P+ TAG,"och-rotting--mNextStationIndex = $mNextStationIndex , i = $i") +// if (mNextStationIndex != i + 1) { + d(SceneConstant.M_BUS_P+ TAG,"och-rotting--start ") + mTwoStationsRouts.clear() + startRemainRouteInfo() +// } + isGoingToNextStation = true + mNextStationIndex = i + 1 + return + } else if (station.drivingStatus == BusPassengerConst.STATION_STATUS_STOPPED && !station.isLeaving) { + d(SceneConstant.M_BUS_P+ TAG,"och-rotting--mNextStationIndex = $mNextStationIndex , i = $i") + d(SceneConstant.M_BUS_P+ TAG,"och-rotting--arrived ") + mPreRouteIndex = 0 + isGoingToNextStation = false + startOrStopCalculateRouteInfo(false) + mDrivingInfoCallback?.updateStationsInfo(stations as MutableList, i, true) + return + }else{ +// d(SceneConstant.M_BUS_P+TAG,"och-rotting--BusStationBean = " + GsonUtils.toJson(station)) + } + } + } + + } + + fun loopRouteAndWipe(){ + if (mRoutePoints != null && mRoutePoints.size > 0 && mLocation != null) { + val haveArrivedIndex = CoordinateCalculateRouteUtil + .getArrivedPointIndexNew( + mWipePreIndex, + mRoutePoints, + mLocation!! + ) + mWipePreIndex = haveArrivedIndex + d(SceneConstant.M_BUS_P + TAG, + "thread = " + Thread.currentThread().name + " haveArrivedIndex== " + haveArrivedIndex + ) +// if (mAutopilotPlanningCallback != null) { +// val routePoints = CoordinateCalculateRouteUtil +// .coordinateConverterLocationToLatLng(mContext, mRoutePoints) +// mAutopilotPlanningCallback.routeResult(routePoints, haveArrivedIndex) +// } + } + } + + private fun startRemainRouteInfo() { + //开启实时计算剩余距离,剩余时间,预计时间 + startOrStopCalculateRouteInfo(true) + } + + fun dynamicCalculateRouteInfo(){ + //计算当前位置和下一站的剩余点集合 + //计算剩余点总里程和时间 + d(SceneConstant.M_BUS_P + TAG, "och-rotting==mTwoStationsRouts.size() = " + mTwoStationsRouts.size) + //计算当前位置和下一站的剩余点集合 + //计算剩余点总里程和时间 + if (mTwoStationsRouts.size == 0) { + calculateTwoStationsRoute() + } + + if (mTwoStationsRouts.size > 0 && mLocation != null) { + val lastPointsMap = CoordinateCalculateRouteUtil + .getRemainPointListByCompareNew(mPreRouteIndex, mTwoStationsRouts, mLocation!!) + for (index in lastPointsMap.keys) { + mPreRouteIndex = index + break + } + for (lastPoints in lastPointsMap.values) { + d(SceneConstant.M_BUS_P + TAG, "och-rotting==lastPoints.size() = " + lastPoints.size) + var lastSumLength = 0f + lastSumLength = if (lastPoints.size == 1) { //只是最后一个点,计算当前位置和最后一个点的距离 + if (mNextStationIndex <= mStations.size - 1 && mNextStationIndex >= 0) { + val stationNext: BusStationBean = mStations[mNextStationIndex] + CoordinateUtils.calculateLineDistance( + stationNext.gcjLon, stationNext.gcjLat, + mLocation!!.longitude, mLocation!!.latitude + ) + } else { + CoordinateUtils.calculateLineDistance( + lastPoints[0].longitude, lastPoints[0].latitude, + mLocation!!.longitude, mLocation!!.latitude + ) + } + } else { + CoordinateCalculateRouteUtil.calculateRouteSumLength(lastPoints) + } + val lastTime = lastSumLength / BusPassengerConst.SHUTTLE_AVERAGE_SPEED * 3.6 //秒 + d(SceneConstant.M_BUS_P + TAG, "och-rotting==lastSumLength = $lastSumLength") + mDrivingInfoCallback?.updateRemainMT( + lastSumLength.toLong(), + lastTime.toLong() + ) + } + } + } + + private fun calculateTwoStationsRoute() { + //找出前往站对应的轨迹点,拿出两站点的集合 + d(SceneConstant.M_BUS_P + TAG, "mRoutePoints.size() = " + mRoutePoints.size) + if (mRoutePoints.size > 0) { + if (mStations.size > 1) { //两个站点及以上要计算两个站点间的轨迹路线 + if (mNextStationIndex <= mStations.size - 1 && mNextStationIndex - 1 >= 0) { + mTwoStationsRouts.clear() + val stationNext: BusStationBean = mStations[mNextStationIndex] + val stationCur: BusStationBean = mStations[mNextStationIndex - 1] + //当前站在轨迹中对应的点 + val currentRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndexNew( + 0, mRoutePoints, stationCur.gcjLon, stationCur.gcjLat + ) + //要前往的站在轨迹中对应的点 + val nextRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndexNew( + currentRouteIndex, + mRoutePoints, + stationNext.gcjLon, + stationNext.gcjLat + ) + + d(SceneConstant.M_BUS_P + TAG, "och-rotting==currentRouteIndex = " + currentRouteIndex + + ", nextRouteIndex = " + nextRouteIndex) + + if (currentRouteIndex < nextRouteIndex) { //如果找到的next在起点的轨迹前面,直接舍弃这个轨迹,不显示 + mTwoStationsRouts.addAll( + mRoutePoints.subList( + currentRouteIndex, + nextRouteIndex + 1 + ) + ) + } + } + } + } + } + + /** + * 开始轮询计算剩余里程和时间 + * @param isStart + */ + fun startOrStopCalculateRouteInfo(isStart: Boolean) { + d(SceneConstant.M_BUS_P+ TAG, "startOrStopCalculateRouteInfo() $isStart") + if (isStart) { + PM2ModelLoopManager.startCalculateRouteInfoLoop() + } else { + mTwoStationsRouts.clear() + PM2ModelLoopManager.stopCalculateRouteInfLoop() + } + } + + /** + * 实时轨迹擦除 + * @param isStart + */ + private fun startOrStopRouteAndWipe(isStart: Boolean) { + if (isStart) { + PM2ModelLoopManager.startOrStopRouteAndWipe() + } else { + mWipePreIndex = 0 + PM2ModelLoopManager.stopOrStopRouteAndWipe() + } + } + + private fun startOrStopOrderLoop(start: Boolean) { + d(SceneConstant.M_BUS_P + TAG, "startOrStopOrderLoop() $start") + if (start) { + PM2ModelLoopManager.startQueryDriverLineLoop() + } else { + PM2ModelLoopManager.stopQueryDriverLineLoop() + } + } +} \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/model/PM2ServiceManager.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/model/PM2ServiceManager.kt new file mode 100644 index 0000000000..1288b4a06e --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/model/PM2ServiceManager.kt @@ -0,0 +1,108 @@ +package com.mogo.och.bus.passenger.passenger.model + +import android.content.Context +import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager.getServerToken +import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.debug.DebugConfig +import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.commons.storage.SharedPrefsMgr +import com.mogo.och.bus.passenger.bean.BusPassengerQueryLineRequest +import com.mogo.och.bus.passenger.passenger.bean.PM2OperationStatusResponse +import com.mogo.och.bus.passenger.passenger.bean.PM2RoutesResponse +import com.mogo.och.bus.passenger.passenger.network.PassengerSAASServiceApi +import com.mogo.och.bus.passenger.passenger.network.PassengerServiceApi +import com.mogo.och.common.module.biz.constant.OchCommonConst +import com.mogo.och.common.module.biz.network.OchCommonServiceCallback +import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl +import com.mogo.och.common.module.biz.network.interceptor.transformTry + +/** + * Created on 2022/3/31 + */ +object PM2ServiceManager { + + private var mBusPassengerSaasServiceApi = + MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create(PassengerSAASServiceApi::class.java) + + private var mBusPassengerServiceApi = + MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create(PassengerServiceApi::class.java) + + + private var driverSnCache = "" + /** + * 获取Bus司机端的sn + * @return + */ + public val driverAppSn: String + get(){ + val serverToken = getServerToken() + if (serverToken != driverSnCache && serverToken.isNotEmpty()) { + driverSnCache = serverToken + } + return driverSnCache + } + + /** + * 查询绑定行驶的小巴车路线 + * @param context + * @param callback + */ + @JvmStatic + fun queryDriverSiteByCoordinate( + context: Context, callback: OchCommonServiceCallback? + ) { + if (DebugConfig.getProjectFlavor().contains("saas")){ + mBusPassengerSaasServiceApi.queryDriverSiteByCoordinate( + MoGoAiCloudClientConfig.getInstance().serviceAppId, + SharedPrefsMgr.getInstance().token, + driverAppSn + ).transformTry() + .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverSiteByCoordinate")) + }else{ + mBusPassengerServiceApi.queryDriverSiteByCoordinate( + MoGoAiCloudClientConfig.getInstance().serviceAppId, + SharedPrefsMgr.getInstance().token, + BusPassengerQueryLineRequest( + driverAppSn + ) + ).transformTry() + .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverSiteByCoordinate")) + } + }//2023-12-07 10:13:32 + + /** + * 查询司机端出车收车状态,以及车牌号 + * @param context + * @param callback + */ + @JvmStatic + fun queryDriverOperationStatus( + context: Context, + callback: OchCommonServiceCallback? + ) { + mBusPassengerServiceApi.queryDriverOperationStatus( + MoGoAiCloudClientConfig.getInstance().serviceAppId, + SharedPrefsMgr.getInstance().token, + driverAppSn + ) + .transformTry() + .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverOperationStatus=sn =$driverAppSn")) + if (DebugConfig.getProjectFlavor().contains("saas")){ + mBusPassengerSaasServiceApi.queryDriverOperationStatus( + MoGoAiCloudClientConfig.getInstance().serviceAppId, + SharedPrefsMgr.getInstance().token, + driverAppSn + ) + .transformTry() + .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverOperationStatus")) + }else{ + mBusPassengerServiceApi.queryDriverOperationStatus( + MoGoAiCloudClientConfig.getInstance().serviceAppId, + SharedPrefsMgr.getInstance().token, + driverAppSn + ) + .transformTry() + .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverOperationStatus")) + } + } +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ModelLoopManager.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PM2ModelLoopManager.kt similarity index 97% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ModelLoopManager.kt rename to OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PM2ModelLoopManager.kt index b430a966a1..adede242a0 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ModelLoopManager.kt +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PM2ModelLoopManager.kt @@ -1,9 +1,9 @@ -package com.mogo.och.bus.passenger.network +package com.mogo.och.bus.passenger.passenger.network import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.i import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.och.bus.passenger.constant.BusPassengerConst -import com.mogo.och.bus.passenger.model.PM2DrivingModel +import com.mogo.och.bus.passenger.passenger.model.PM2DrivingModel import io.reactivex.Observable import io.reactivex.ObservableOnSubscribe import io.reactivex.android.schedulers.AndroidSchedulers diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PM2ServiceApi.java b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PM2ServiceApi.java new file mode 100644 index 0000000000..1b2b778829 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PM2ServiceApi.java @@ -0,0 +1,40 @@ +package com.mogo.och.bus.passenger.passenger.network; + +import com.mogo.och.bus.passenger.passenger.bean.PM2OperationStatusResponse; +import com.mogo.och.bus.passenger.passenger.bean.PM2QueryLineRequest; +import com.mogo.och.bus.passenger.passenger.bean.PM2RoutesResponse; + +import io.reactivex.Observable; +import retrofit2.http.Body; +import retrofit2.http.GET; +import retrofit2.http.Header; +import retrofit2.http.Headers; +import retrofit2.http.POST; +import retrofit2.http.Query; + +/** + * Created on 2022/3/31 + * + * Bus乘客端接口定义 + */ +public interface PM2ServiceApi { + /** + * 查询bus司机端绑定路线 + * @return 接口返回数据 + */ + @Headers( {"Content-Type:application/json;charset=UTF-8"} ) + @POST( "/och-shuttle-cabin/api/business/v1/passenger/lineDataWithDriver/query" ) + Observable queryDriverSiteByCoordinate(@Header("appId") String appId, @Header("ticket") String ticket, @Body PM2QueryLineRequest request); + + /** + * 查询司机端的登陆状态 + * @param sn + * @return + */ + @Headers({"Content-type:application/json;charset=UTF-8"}) +// @GET("/autopilot-car-hailing/car/v2/driver/bus/passenger/takeOrderStatus/query") + @GET("/och-shuttle-cabin/api/business/v1/passenger/loginStatus") + Observable queryDriverOperationStatus(@Header ("appId") String appId, @Header("ticket") String ticket, @Query("sn") String sn); + + +} diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PassengerSAASServiceApi.java b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PassengerSAASServiceApi.java new file mode 100644 index 0000000000..b19cb287f2 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PassengerSAASServiceApi.java @@ -0,0 +1,38 @@ +package com.mogo.och.bus.passenger.passenger.network; + +import com.mogo.och.bus.passenger.passenger.bean.PM2OperationStatusResponse; +import com.mogo.och.bus.passenger.passenger.bean.PM2RoutesResponse; + +import io.reactivex.Observable; +import retrofit2.http.GET; +import retrofit2.http.Header; +import retrofit2.http.Headers; +import retrofit2.http.Query; + +/** + * Created on 2022/3/31 + * + * Bus乘客端接口定义 + */ +public interface PassengerSAASServiceApi { + /** + * 查询bus司机端绑定路线 + * @return 接口返回数据 + */ + @Headers( {"Content-Type:application/json;charset=UTF-8"} ) +// @POST( "/autopilot-car-hailing/line/v2/driver/bus/passenger/lineDataWithDriver/query" ) + @GET( "/och-bus-cabin/api/business/v1/driver/bus/lineDataWithDriver/query" ) + Observable queryDriverSiteByCoordinate(@Header("appId") String appId, @Header("ticket") String ticket, @Query("sn") String sn); + + /** + * 查询司机端的登陆状态 + * @param sn + * @return + */ + @Headers({"Content-type:application/json;charset=UTF-8"}) +// @GET("/autopilot-car-hailing/operation/v1/driver/bus/passenger/loginStatus") + @GET("/och-bus-cabin/api/business/v1/loginStatus") + Observable queryDriverOperationStatus(@Header ("appId") String appId, @Header("ticket") String ticket, @Query("sn") String sn); + + +} diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PassengerServiceApi.java b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PassengerServiceApi.java new file mode 100644 index 0000000000..836f4fd22f --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/network/PassengerServiceApi.java @@ -0,0 +1,40 @@ +package com.mogo.och.bus.passenger.passenger.network; + +import com.mogo.och.bus.passenger.bean.BusPassengerQueryLineRequest; +import com.mogo.och.bus.passenger.passenger.bean.PM2OperationStatusResponse; +import com.mogo.och.bus.passenger.passenger.bean.PM2RoutesResponse; + +import io.reactivex.Observable; +import retrofit2.http.Body; +import retrofit2.http.GET; +import retrofit2.http.Header; +import retrofit2.http.Headers; +import retrofit2.http.POST; +import retrofit2.http.Query; + +/** + * Created on 2022/3/31 + * + * Bus乘客端接口定义 + */ +public interface PassengerServiceApi { + /** + * 查询bus司机端绑定路线 + * @return 接口返回数据 + */ + @Headers( {"Content-Type:application/json;charset=UTF-8"} ) + @POST( "/autopilot-car-hailing/line/v2/driver/bus/passenger/lineDataWithDriver/query" ) + Observable queryDriverSiteByCoordinate(@Header("appId") String appId, @Header("ticket") String ticket, @Body BusPassengerQueryLineRequest request); + + /** + * 查询司机端的登陆状态 + * @param sn + * @return + */ + @Headers({"Content-type:application/json;charset=UTF-8"}) +// @GET("/autopilot-car-hailing/car/v2/driver/bus/passenger/takeOrderStatus/query") + @GET("/autopilot-car-hailing/operation/v1/driver/bus/passenger/loginStatus") + Observable queryDriverOperationStatus(@Header ("appId") String appId, @Header("ticket") String ticket, @Query("sn") String sn); + + +} diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/presenter/PM2ADASPresenter.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/presenter/PM2ADASPresenter.kt new file mode 100644 index 0000000000..92ab97f630 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/presenter/PM2ADASPresenter.kt @@ -0,0 +1,41 @@ +package com.mogo.och.bus.passenger.passenger.presenter + +import androidx.lifecycle.LifecycleOwner +import com.mogo.commons.mvp.Presenter +import com.mogo.och.bus.passenger.passenger.callback.ADASCallback +import com.mogo.och.bus.passenger.passenger.constant.M2Const.Companion.M2_MAP_STATION_MAKER +import com.mogo.och.bus.passenger.passenger.model.PM2ADASModel +import com.mogo.och.bus.passenger.passenger.ui.PM2HPMapFragment + +class PM2ADASPresenter(view: PM2HPMapFragment?) : + Presenter(view), ADASCallback { + + init { + PM2ADASModel.INSTANCE.init(context) + initListener() + } + + private fun initListener() { + PM2ADASModel.INSTANCE.setAdasCallback(this) + } + + private fun removeListener() { + PM2ADASModel.INSTANCE.setAdasCallback(null) + } + + override fun onDestroy(owner: LifecycleOwner) { + super.onDestroy(owner) + removeListener() + } + + override fun updateHDMapStations(stations: MutableList>) { + for (i in stations.indices){ + mView?.setMapMaker(M2_MAP_STATION_MAKER+i,stations[i]) + } + + } + + override fun removeHDMapStations() { + mView?.removeMapMaker(M2_MAP_STATION_MAKER) + } +} \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/presenter/PM2DrivingPresenter.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/presenter/PM2DrivingPresenter.kt new file mode 100644 index 0000000000..3a2cfe3107 --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/presenter/PM2DrivingPresenter.kt @@ -0,0 +1,143 @@ +package com.mogo.och.bus.passenger.passenger.presenter + +import androidx.lifecycle.LifecycleOwner +import com.amap.api.maps.model.LatLng +import com.mogo.commons.mvp.Presenter +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import com.mogo.och.bus.passenger.passenger.callback.AutoPilotStatusCallback +import com.mogo.och.bus.passenger.passenger.callback.DrivingInfoCallback +import com.mogo.och.bus.passenger.passenger.model.PM2ADASModel +import com.mogo.och.bus.passenger.passenger.model.PM2DrivingModel +import com.mogo.och.bus.passenger.passenger.ui.PM2DrivingInfoFragment +import com.mogo.och.data.bean.BusStationBean + +class PM2DrivingPresenter(view: PM2DrivingInfoFragment?) : + Presenter(view), DrivingInfoCallback, AutoPilotStatusCallback { + + init { + PM2DrivingModel.INSTANCE.init(context) + PM2ADASModel.INSTANCE.init(context) + initListener() + } + + override fun onDestroy(owner: LifecycleOwner) { + super.onDestroy(owner) + destroyListener() + PM2DrivingModel.INSTANCE.releaseListener() + } + + private fun initListener(){ + PM2DrivingModel.INSTANCE.setDrivingInfoCallback(this) + PM2DrivingModel.INSTANCE.setAutoStatusCallback(this) + } + + private fun destroyListener(){ + PM2DrivingModel.INSTANCE.setDrivingInfoCallback(null) + PM2DrivingModel.INSTANCE.setAutoStatusCallback(null) + } + + override fun updateSpeed(speed: Int) { +// CallerLogger.d( +// SceneConstant.M_BUS_P + "speed = ",speed.toString() +// ) + ThreadUtils.runOnUiThread { + mView?.updateSpeed(speed) + } + } + + override fun updatePlateNumber(carNum: String) { + ThreadUtils.runOnUiThread { + mView?.updateCarPlateNum(carNum) + } + } + + override fun updateLine(lineName: String, lineDuring: String) { + ThreadUtils.runOnUiThread { + mView?.updateTaskName(lineName) + mView?.updateTaskDuringTime(lineDuring) + } + } + + override fun updateRemainMT(meters: Long, timeInSecond: Long) { + ThreadUtils.runOnUiThread { + mView?.updateRemainMT(meters, timeInSecond) //米,秒 + } + } + + override fun changeOperationStatus(loginStatus: Boolean) { + ThreadUtils.runOnUiThread { + mView?.changeOperationStatus(loginStatus) + } + } + + override fun showNoTaskView(isTrue: Boolean) { + ThreadUtils.runOnUiThread { + mView?.showNoTaskView(!isTrue) + } + if (isTrue){ + PM2ADASModel.INSTANCE.removeHDMapStations() + } + } + + override fun updateLineStations(stations: MutableList) { + + val stationsList = mutableListOf() + val stationsListPass = mutableListOf() + var startStation: LatLng? = null + var endStation: LatLng? = null + + for (i in stations.indices){ + val station = stations[i] + val latLng = LatLng(station.gcjLat,station.gcjLon) + if(i==0){ + startStation = latLng + continue + } + if(i==stations.size-1){ + endStation = latLng + continue + } + if(station.drivingStatus==1){//行驶信息,0初始值;1已经过;2当前站;3未到站 + stationsListPass.add(latLng) + }else if(station.drivingStatus==2){ + if(station.isLeaving){ + stationsListPass.add(latLng) + }else{ + stationsList.add(latLng) + } + }else{ + stationsList.add(latLng) + } + + } + + ThreadUtils.runOnUiThread { + mView?.updateLineStations(stationsList,stationsListPass,startStation,endStation) + } + PM2ADASModel.INSTANCE.updateHDMapStations(stations) + } + + override fun updateStationsInfo(stations: MutableList, i: Int, isArrived: Boolean) { + ThreadUtils.runOnUiThread { + mView?.updateStationsInfo(stations,i,isArrived) + } + } + + override fun clearCustomPolyline() { + ThreadUtils.runOnUiThread { + mView?.clearCustomPolyline() + } + } + + override fun updateAutoStatus(isOpen: Boolean) { + ThreadUtils.runOnUiThread { + mView?.updateAutoStatus(isOpen) + } + } + + override fun updateAutoStatus(status: Int) { + + } + + +} \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/presenter/PM2Presenter.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/presenter/PM2Presenter.kt new file mode 100644 index 0000000000..b614c3458b --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/presenter/PM2Presenter.kt @@ -0,0 +1,7 @@ +package com.mogo.och.bus.passenger.passenger.presenter + +import com.mogo.commons.mvp.Presenter +import com.mogo.och.bus.passenger.passenger.ui.PM2BaseFragment + +class PM2Presenter(view: PM2BaseFragment?) : + Presenter(view) \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/provider/M2StatusViewManager.java b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/provider/M2StatusViewManager.java new file mode 100644 index 0000000000..3c79925efa --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/provider/M2StatusViewManager.java @@ -0,0 +1,33 @@ +package com.mogo.och.bus.passenger.passenger.provider; + +import android.content.Context; +import android.view.View; + +import com.mogo.och.bus.passenger.passenger.ui.widget.M2StatusBarView; +import androidx.annotation.NonNull; + +import com.alibaba.android.arouter.facade.annotation.Route; +import com.mogo.eagle.core.data.constants.MogoServicePaths; +import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout; + +/** + * @author congtaowang + * @since 2020-01-06 + *

+ * 根据优先级控制显示 window view. + */ +@Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER ) +public class M2StatusViewManager implements IStatusViewLayout { + + + @NonNull + @Override + public View getStatusView(Context context) { + return new M2StatusBarView(context); + } + + @Override + public void init(Context context) { + + } +} diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2BaseFragment.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/PM2BaseFragment.kt similarity index 92% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2BaseFragment.kt rename to OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/PM2BaseFragment.kt index a214921f5f..8a0a0d62c9 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2BaseFragment.kt +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/PM2BaseFragment.kt @@ -1,8 +1,8 @@ -package com.mogo.och.bus.passenger.ui +package com.mogo.och.bus.passenger.passenger.ui import com.mogo.commons.mvp.MvpFragment import com.mogo.och.bus.passenger.R -import com.mogo.och.bus.passenger.presenter.PM2Presenter +import com.mogo.och.bus.passenger.passenger.presenter.PM2Presenter import com.mogo.och.common.module.wigets.media.MediaPlayerFragment /** @@ -17,7 +17,7 @@ class PM2BaseFragment : private var mediaFragment : MediaPlayerFragment? = null override fun getLayoutId(): Int { - return R.layout.p_m2_fragment + return R.layout.bus_p_m2_fragment } override fun getTagName(): String { diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/PM2DrivingInfoFragment.kt similarity index 75% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt rename to OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/PM2DrivingInfoFragment.kt index cac0e2f22a..a573be4e8d 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/PM2DrivingInfoFragment.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.ui +package com.mogo.och.bus.passenger.passenger.ui import android.graphics.BitmapFactory import android.graphics.drawable.AnimationDrawable @@ -12,11 +12,25 @@ import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView import com.mogo.eagle.core.function.view.SiteMarkerBean import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider import com.mogo.och.bus.passenger.R -import com.mogo.och.bus.passenger.presenter.PM2DrivingPresenter +import com.mogo.och.bus.passenger.passenger.presenter.PM2DrivingPresenter import com.mogo.och.common.module.utils.DateTimeUtil.* import com.mogo.och.common.module.utils.NumberFormatUtil import com.mogo.och.data.bean.BusStationBean -import kotlinx.android.synthetic.m2.p_m2_driving_info_fragment.* +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.auto_tv +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.clg_distance_left_time +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.group_not_select_line +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.group_stationinfo +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.iv_animal_list +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.line_during_tv +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.line_name_tv +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.overMapView +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.speed_tv +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.station_name_tv +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.tv_arrived_notice +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.tv_distance +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.tv_left_time +import kotlinx.android.synthetic.main.bus_p_m2_driving_info_fragment.tv_next_station_title + import me.jessyan.autosize.utils.AutoSizeUtils import kotlin.math.ceil import kotlin.math.roundToInt @@ -28,10 +42,10 @@ import kotlin.math.roundToInt class PM2DrivingInfoFragment : MvpFragment() { - val stationIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.m2_map_staton_icon) - val stationPassIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.m2_map_staton_arrived_icon) - val startStationIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.m2_map_start_icon) - val endStationIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.m2_map_end_icon) + val stationIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.bus_p_m2_map_staton_icon) + val stationPassIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.bus_p_m2_map_staton_arrived_icon) + val startStationIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.bus_p_m2_map_start_icon) + val endStationIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.bus_p_m2_map_end_icon) /** * 改变自动驾驶状态 @@ -39,7 +53,7 @@ class PM2DrivingInfoFragment : * @param status 2 - running 1 - enable 2 - disable */ override fun getLayoutId(): Int { - return R.layout.p_m2_driving_info_fragment + return R.layout.bus_p_m2_driving_info_fragment } override fun getTagName(): String { @@ -52,12 +66,12 @@ class PM2DrivingInfoFragment : true } - line_name_tv.setTextColor(resources.getColor(R.color.m2_line_name_tv_color)) - station_name_tv.setTextColor(resources.getColor(R.color.m2_line_name_tv_color)) + line_name_tv.setTextColor(resources.getColor(R.color.bus_p_m2_line_name_tv_color)) + station_name_tv.setTextColor(resources.getColor(R.color.bus_p_m2_line_name_tv_color)) speed_tv.setVertrial(true) val intArrayOf = intArrayOf( - requireContext().resources.getColor(R.color.shuttle_color_43cefe), - requireContext().resources.getColor(R.color.shuttle_color_1466fb) + requireContext().resources.getColor(R.color.bus_p_m2_color_43cefe), + requireContext().resources.getColor(R.color.bus_p_m2_color_1466fb) ) speed_tv.setmColorList(intArrayOf) @@ -150,7 +164,7 @@ class PM2DrivingInfoFragment : } private fun updateNoOrderUI() { - line_name_tv.text = resources.getString(R.string.m2_p_not_select_line_content) + line_name_tv.text = resources.getString(R.string.bus_p_m2_not_select_line_content) updateNoStationView() overMapView?.let { it.clearSiteMarkers() @@ -164,10 +178,10 @@ class PM2DrivingInfoFragment : } } private fun updateNoStationView(){ - station_name_tv.setTextColor(resources.getColor(R.color.m2_next_tv_color)) - station_name_tv.text = resources.getString(R.string.m2_p_empty_tv) - tv_distance.text = resources.getString(R.string.m2_p_empty_remain_km) - tv_left_time.text = resources.getString(R.string.m2_p_empty_remain_minute) + station_name_tv.setTextColor(resources.getColor(R.color.bus_p_m2_next_tv_color)) + station_name_tv.text = resources.getString(R.string.bus_p_m2_empty_tv) + tv_distance.text = resources.getString(R.string.bus_p_m2_empty_remain_km) + tv_left_time.text = resources.getString(R.string.bus_p_m2_empty_remain_minute) noLineShow() } @@ -177,11 +191,11 @@ class PM2DrivingInfoFragment : fun updateAutoStatus(isAutoPilot: Boolean) { if (isAutoPilot){ - context?.let { auto_tv.setTextColor(ContextCompat.getColor(it,R.color.m2_p_white_color)) } - context?.let { auto_tv.background = ContextCompat.getDrawable(it,R.drawable.auto_button_bg) } + context?.let { auto_tv.setTextColor(ContextCompat.getColor(it,R.color.bus_p_m2_white_color)) } + context?.let { auto_tv.background = ContextCompat.getDrawable(it,R.drawable.bus_p_m2_auto_button_bg) } }else{ - context?.let { auto_tv.setTextColor(ContextCompat.getColor(it,R.color.shuttle_color_7094ad)) } - context?.let { auto_tv.background = ContextCompat.getDrawable(it,R.drawable.bg_p_m2_auto) } + context?.let { auto_tv.setTextColor(ContextCompat.getColor(it,R.color.bus_p_m2_color_7094ad)) } + context?.let { auto_tv.background = ContextCompat.getDrawable(it,R.drawable.bus_p_m2_bg_p_m2_auto) } } } @@ -212,16 +226,16 @@ class PM2DrivingInfoFragment : fun updateStationsInfo(stations: MutableList, i: Int, isArrived: Boolean){ if (stations.size == 0) return if (0<= i && i { - m2_p_traffic_light_iv.setBackgroundResource(R.drawable.m2_light_red_nor) + m2_p_traffic_light_iv.setBackgroundResource(R.drawable.bus_p_m2_light_red_nor) this@M2PTrafficLightView.visibility = VISIBLE } TrafficLightEnum.YELLOW -> { - m2_p_traffic_light_iv.setBackgroundResource(R.drawable.m2_light_yellow_nor) + m2_p_traffic_light_iv.setBackgroundResource(R.drawable.bus_p_m2_light_yellow_nor) this@M2PTrafficLightView.visibility = VISIBLE } TrafficLightEnum.GREEN -> { - m2_p_traffic_light_iv.setBackgroundResource(R.drawable.m2_light_green_nor) + m2_p_traffic_light_iv.setBackgroundResource(R.drawable.bus_p_m2_light_green_nor) this@M2PTrafficLightView.visibility = VISIBLE } else -> this@M2PTrafficLightView.visibility = GONE @@ -169,11 +171,11 @@ class M2PTrafficLightView @JvmOverloads constructor( val layoutParams = layoutParams if (layoutParams is MarginLayoutParams) { val lp = layoutParams - lp.width = resources.getDimension(R.dimen.m2_p_light_width).toInt() + lp.width = resources.getDimension(R.dimen.dp_60).toInt() setLayoutParams(lp) m2_p_traffic_light_time_tv.visibility = VISIBLE m2_p_traffic_light_bg.layoutParams.width = - resources.getDimension(R.dimen.m2_p_light_width).toInt() + resources.getDimension(R.dimen.dp_60).toInt() } } } \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/M2StatusBarView.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2StatusBarView.kt similarity index 92% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/M2StatusBarView.kt rename to OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2StatusBarView.kt index 932bd2f659..4455fbd417 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/M2StatusBarView.kt +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2StatusBarView.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.ui.widget +package com.mogo.och.bus.passenger.passenger.ui.widget import android.annotation.* import android.content.Context @@ -18,7 +18,8 @@ import com.mogo.eagle.core.function.call.setting.CallerSkinModeListenerManager import com.mogo.eagle.core.utilcode.kotlin.* import com.mogo.eagle.core.utilcode.util.ClickUtils import com.mogo.och.bus.passenger.R -import kotlinx.android.synthetic.m2.p_m2_view_status_bar.view.* +import kotlinx.android.synthetic.main.bus_p_m2_view_status_bar.view.progress +import kotlinx.android.synthetic.main.bus_p_m2_view_status_bar.view.tv_power_cos import kotlinx.coroutines.* import me.jessyan.autosize.utils.AutoSizeUtils @@ -39,7 +40,7 @@ class M2StatusBarView @JvmOverloads constructor( private var oldBmsSoc: Float = -1.0f init { - LayoutInflater.from(context).inflate(R.layout.p_m2_view_status_bar, this, true) + LayoutInflater.from(context).inflate(R.layout.bus_p_m2_view_status_bar, this, true) setBackgroundColor(Color.parseColor("#80FFFFFF")) isClickable = true isFocusable = true diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2TurnLightView.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2TurnLightView.kt new file mode 100644 index 0000000000..f280b6eb1f --- /dev/null +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2TurnLightView.kt @@ -0,0 +1,199 @@ +package com.mogo.och.bus.passenger.passenger.ui.widget + +import android.animation.AnimatorSet +import android.animation.ObjectAnimator +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.View +import android.view.animation.AlphaAnimation +import android.view.animation.Animation +import android.widget.ImageView +import androidx.constraintlayout.widget.ConstraintLayout +import com.mogo.eagle.core.function.api.datacenter.union.IMoGoTurnLightListener +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLamplightListenerManager +import com.mogo.eagle.core.function.call.v2x.CallerTurnLightListenerManager +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import com.mogo.och.bus.passenger.R +import com.mogo.och.common.module.manager.lightmanager.TurnLightManager +import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.left_nor_image +import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.left_select_image +import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.right_nor_image +import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.right_select_image +import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.turn_light_layout + +/** + * @author: wangmingjun + * @date: 2023/2/13 + */ +class M2TurnLightView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : ConstraintLayout(context, attrs, defStyleAttr), + IMoGoTurnLightListener, TurnLightManager.TurnLightListener { + + + companion object { + private const val TAG = "TurnLightViewStatus" + } + + private var isLeftLight: Boolean = false + private var isRightLight: Boolean = false + private var isDisappear: Boolean = false + + init { + LayoutInflater.from(context) + .inflate(R.layout.bus_p_m2_turn_light_status, this, true) + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + CallerTurnLightListenerManager.addListener(TAG,this) + + TurnLightManager.addTurnLightStatusChangeListener(TAG,this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + CallerChassisLamplightListenerManager.removeListener(TAG) + CallerTurnLightListenerManager.removeListener(TAG) + } + + override fun hideTurnLightView() { + ThreadUtils.runOnUiThread{ + if (!isDisappear) { + isDisappear = true + isLeftLight = false + isRightLight = false + animationDisappear() + } + } + } + + override fun statusChange(newStatus: TurnLightManager.TurnLightStatus) { + ThreadUtils.runOnUiThread { + setTurnLight(newStatus) + } + } + + /** + * 转向灯动画 + */ + private fun setTurnLight(directionLight: TurnLightManager.TurnLightStatus) { + if (!isAttachedToWindow) { + return + } + //根据左右进行显示和隐藏,实际要判断每个来的时间和频度 + when (directionLight) { + TurnLightManager.TurnLightStatus.TURN_LIGHT_LEFT -> { //左转向 + if (!isLeftLight) { + isLeftLight = true + isRightLight = false + isDisappear = false + showNormalAnimation() + left_select_image.visibility = View.VISIBLE + right_select_image.visibility = View.GONE + right_select_image.clearAnimation() + setAnimation(left_select_image) + } + } + TurnLightManager.TurnLightStatus.TURN_LIGHT_RIGHT -> { //右转向 + if (!isRightLight) { + isRightLight = true + isLeftLight = false + isDisappear = false + showNormalAnimation() + left_select_image.visibility = View.GONE + right_select_image.visibility = View.VISIBLE + left_select_image.clearAnimation() + setAnimation(right_select_image) + } + } + TurnLightManager.TurnLightStatus.TURN_LIGHT_NONE -> { //消失 + if (!isDisappear) { + isDisappear = true + isLeftLight = false + isRightLight = false + animationDisappear() + } + } + } + } + + //显示背景 + private fun showNormalAnimation() { + val appearAnimation = AlphaAnimation(0f, 1.0f) + appearAnimation.duration = 300 + val appearAnimationImage = AlphaAnimation(0f, 1.0f) + appearAnimation.duration = 500 + turn_light_layout.startAnimation(appearAnimation) + left_nor_image.startAnimation(appearAnimationImage) + right_nor_image.startAnimation(appearAnimationImage) + + turn_light_layout.visibility = View.VISIBLE + left_nor_image.visibility = View.VISIBLE + right_nor_image.visibility = View.VISIBLE + } + + //消失动画,当转向等数据为空时候 + private fun animationDisappear() { + left_select_image.visibility = View.GONE + right_select_image.visibility = View.GONE + left_select_image.clearAnimation() + right_select_image.clearAnimation() + + left_nor_image.clearAnimation() + right_nor_image.clearAnimation() + turn_light_layout.clearAnimation() + + val disappearAnimationLeft = AlphaAnimation(1.0f, 0f) + disappearAnimationLeft.duration = 300 + + val disappearAnimationBg = AlphaAnimation(1.0f, 0f) + disappearAnimationBg.duration = 500 + + left_nor_image.startAnimation(disappearAnimationLeft) + right_nor_image.startAnimation(disappearAnimationLeft) + turn_light_layout.startAnimation(disappearAnimationBg) + + disappearAnimationLeft.setAnimationListener(object : Animation.AnimationListener { + override fun onAnimationRepeat(p0: Animation?) { + } + + override fun onAnimationStart(p0: Animation?) { + } + + override fun onAnimationEnd(p0: Animation?) { + left_nor_image.visibility = View.GONE + right_nor_image.visibility = View.GONE + } + }) + + disappearAnimationBg.setAnimationListener(object : Animation.AnimationListener { + override fun onAnimationRepeat(p0: Animation?) { + } + + override fun onAnimationStart(p0: Animation?) { + } + + override fun onAnimationEnd(p0: Animation?) { + turn_light_layout.visibility = View.GONE + } + }) + } + + //实现图片闪烁效果 + private fun setAnimation(imageView: ImageView) { + val animationSet = AnimatorSet() + val valueAnimator = ObjectAnimator.ofFloat(imageView, "alpha", 0f, 1.0f) + val valueAnimatorDisappear = ObjectAnimator.ofFloat(imageView, "alpha", 1.0f, 0f) + valueAnimator.duration = 1000 + valueAnimatorDisappear.duration = 800 + valueAnimator.repeatCount = -1 + valueAnimatorDisappear.repeatCount = -1 + animationSet.playTogether(valueAnimatorDisappear, valueAnimator) + animationSet.start() + } + +} \ No newline at end of file diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/auto_close.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/auto_close.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/auto_close.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/auto_close.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/auto_open.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/auto_open.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/auto_open.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/auto_open.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_arrived_station.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bg_bus_p_arrived_station.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_arrived_station.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bg_bus_p_arrived_station.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_end_tag_bg.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bg_bus_p_end_tag_bg.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_end_tag_bg.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bg_bus_p_end_tag_bg.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_start_tag_bg.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bg_bus_p_start_tag_bg.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_start_tag_bg.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bg_bus_p_start_tag_bg.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_line_logo.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_line_logo.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_line_logo.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_line_logo.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrive_line_blue.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_arrive_line_blue.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrive_line_blue.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_arrive_line_blue.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrive_line_green.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_arrive_line_green.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrive_line_green.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_arrive_line_green.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrow_nor.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_arrow_nor.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrow_nor.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_arrow_nor.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_auto_nor.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_auto_nor.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_auto_nor.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_auto_nor.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_blue_tooth_close.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_blue_tooth_close.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_blue_tooth_close.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_blue_tooth_close.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_blue_tooth_open.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_blue_tooth_open.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_blue_tooth_open.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_blue_tooth_open.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_green_nor.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_light_green_nor.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_green_nor.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_light_green_nor.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_red_nor.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_light_red_nor.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_red_nor.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_light_red_nor.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_yellow_nor.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_light_yellow_nor.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_yellow_nor.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_light_yellow_nor.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_blue.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_line_blue.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_blue.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_line_blue.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_green.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_line_green.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_green.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_line_green.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_grey.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_line_grey.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_grey.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_line_grey.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrived_point.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_arrived_point.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrived_point.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_arrived_point.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrow_arrived.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_arrow_arrived.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrow_arrived.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_arrow_arrived.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrow_un_arrive.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_arrow_un_arrive.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrow_un_arrive.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_arrow_un_arrive.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_car.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_car.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_car.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_car.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_end_point.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_end_point.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_end_point.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_end_point.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_start_point.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_start_point.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_start_point.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_start_point.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_unarrived_point.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_unarrived_point.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_unarrived_point.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_map_unarrived_point.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_mogo_nor.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_mogo_nor.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_mogo_nor.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_mogo_nor.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_no_order_data.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_no_order_data.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_no_order_data.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_no_order_data.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_blue.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_point_blue.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_blue.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_point_blue.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_gray.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_point_gray.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_gray.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_point_gray.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_green.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_point_green.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_green.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_point_green.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_right_route_bg.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_right_route_bg.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_right_route_bg.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_right_route_bg.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_route_bg.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_route_bg.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_route_bg.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_route_bg.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_status_bar_logo.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_status_bar_logo.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_status_bar_logo.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_status_bar_logo.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_un_auto_nor.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_un_auto_nor.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_un_auto_nor.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_un_auto_nor.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_youzhuan_open.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_youzhuan_open.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_youzhuan_open.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_youzhuan_open.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_youzhuan_un_open.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_youzhuan_un_open.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_youzhuan_un_open.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_youzhuan_un_open.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_zuozhuan_open.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_zuozhuan_open.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_zuozhuan_open.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_zuozhuan_open.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_zuozhuan_un_open.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_zuozhuan_un_open.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_zuozhuan_un_open.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/bus_p_zuozhuan_un_open.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/card_split_line_bg.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/card_split_line_bg.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/card_split_line_bg.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/card_split_line_bg.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/cur_station_arrived_bg.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/cur_station_arrived_bg.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/cur_station_arrived_bg.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/cur_station_arrived_bg.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/cur_station_un_arrived_bg.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/cur_station_un_arrived_bg.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/cur_station_un_arrived_bg.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/cur_station_un_arrived_bg.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/icon_video_close.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/icon_video_close.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/icon_video_close.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/icon_video_close.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/icon_video_open.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/icon_video_open.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/icon_video_open.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/icon_video_open.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/live_view_loading_bg.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/live_view_loading_bg.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/live_view_loading_bg.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/live_view_loading_bg.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/m2_blue_tooth_open.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/m2_blue_tooth_open.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/m2_blue_tooth_open.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/m2_blue_tooth_open.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/route_line_name_bg.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/route_line_name_bg.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/route_line_name_bg.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/route_line_name_bg.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_0.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/speak_arrived_icon_0.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_0.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/speak_arrived_icon_0.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_1.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/speak_arrived_icon_1.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_1.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/speak_arrived_icon_1.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_2.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/speak_arrived_icon_2.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_2.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/speak_arrived_icon_2.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/station_arrow.png b/OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/station_arrow.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable-nodpi/station_arrow.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable-nodpi/station_arrow.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bg_bus_p_end_station_circle.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bg_bus_p_end_station_circle.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bg_bus_p_end_station_circle.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bg_bus_p_end_station_circle.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bg_bus_p_middle_station_circle.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bg_bus_p_middle_station_circle.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bg_bus_p_middle_station_circle.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bg_bus_p_middle_station_circle.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bg_bus_p_start_station_circle.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bg_bus_p_start_station_circle.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bg_bus_p_start_station_circle.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bg_bus_p_start_station_circle.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bg_bus_p_traffic_light_background.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bg_bus_p_traffic_light_background.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bg_bus_p_traffic_light_background.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bg_bus_p_traffic_light_background.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bg_p_speak_icon_arrived.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bg_p_speak_icon_arrived.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bg_p_speak_icon_arrived.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bg_p_speak_icon_arrived.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bg_status_bar.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bg_status_bar.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bg_status_bar.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bg_status_bar.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bottom_radius_bg.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bottom_radius_bg.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bottom_radius_bg.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bottom_radius_bg.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/brakelight_background_daytime.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/brakelight_background_daytime.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/brakelight_background_daytime.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/brakelight_background_daytime.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bus_p_dividing_line_bg.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bus_p_dividing_line_bg.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bus_p_dividing_line_bg.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bus_p_dividing_line_bg.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bus_p_panel_cur_station_panel.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bus_p_panel_cur_station_panel.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bus_p_panel_cur_station_panel.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bus_p_panel_cur_station_panel.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bus_p_roma_checked.png b/OCH/bus/passenger/src/main/res/jinlv/drawable/bus_p_roma_checked.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bus_p_roma_checked.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bus_p_roma_checked.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bus_p_roma_normal.png b/OCH/bus/passenger/src/main/res/jinlv/drawable/bus_p_roma_normal.png similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bus_p_roma_normal.png rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bus_p_roma_normal.png diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/bus_progress_bar_bg.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/bus_progress_bar_bg.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/bus_progress_bar_bg.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/bus_progress_bar_bg.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/indicator_select.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/indicator_select.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/indicator_select.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/indicator_select.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/indicator_unselect.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/indicator_unselect.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/indicator_unselect.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/indicator_unselect.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/progress_item_round.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/progress_item_round.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/progress_item_round.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/progress_item_round.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/roma_bus_p_bg_selector.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/roma_bus_p_bg_selector.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/roma_bus_p_bg_selector.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/roma_bus_p_bg_selector.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/drawable/video_btn_selector.xml b/OCH/bus/passenger/src/main/res/jinlv/drawable/video_btn_selector.xml similarity index 100% rename from OCH/bus/passenger/src/jinlvvan/res/drawable/video_btn_selector.xml rename to OCH/bus/passenger/src/main/res/jinlv/drawable/video_btn_selector.xml diff --git a/OCH/bus/passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml b/OCH/bus/passenger/src/main/res/jinlv/layout/bus_p_base_fragment.xml similarity index 98% rename from OCH/bus/passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml rename to OCH/bus/passenger/src/main/res/jinlv/layout/bus_p_base_fragment.xml index 82ea072da1..455d781077 100644 --- a/OCH/bus/passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml +++ b/OCH/bus/passenger/src/main/res/jinlv/layout/bus_p_base_fragment.xml @@ -57,7 +57,7 @@ android:layout_height="@dimen/dp_100" android:layout_marginBottom="@dimen/dp_110" app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintEnd_toEndOf="@+id/mapBizView" app:layout_constraintStart_toStartOf="parent" /> - + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bg_driving_distance_lefttime.xml b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_driving_distance_lefttime.xml similarity index 76% rename from OCH/shuttle/passenger/src/m2/res/drawable/bg_driving_distance_lefttime.xml rename to OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_driving_distance_lefttime.xml index a7412494a3..75670794d2 100644 --- a/OCH/shuttle/passenger/src/m2/res/drawable/bg_driving_distance_lefttime.xml +++ b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_driving_distance_lefttime.xml @@ -2,5 +2,5 @@ - + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bg_driving_info.xml b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_driving_info.xml similarity index 85% rename from OCH/shuttle/passenger/src/m2/res/drawable/bg_driving_info.xml rename to OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_driving_info.xml index 61904389a3..b99cfe6efd 100644 --- a/OCH/shuttle/passenger/src/m2/res/drawable/bg_driving_info.xml +++ b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_driving_info.xml @@ -4,7 +4,7 @@ \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bg_driving_selector.xml b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_driving_selector.xml similarity index 100% rename from OCH/shuttle/passenger/src/m2/res/drawable/bg_driving_selector.xml rename to OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_driving_selector.xml diff --git a/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_p_m2_arrived_station.xml b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_p_m2_arrived_station.xml new file mode 100644 index 0000000000..1824c74bbf --- /dev/null +++ b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_p_m2_arrived_station.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bg_p_m2_auto.xml b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_p_m2_auto.xml similarity index 79% rename from OCH/shuttle/passenger/src/m2/res/drawable/bg_p_m2_auto.xml rename to OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_p_m2_auto.xml index 0497ff212e..0c40c7ee4b 100644 --- a/OCH/shuttle/passenger/src/m2/res/drawable/bg_p_m2_auto.xml +++ b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_p_m2_auto.xml @@ -2,6 +2,6 @@ - + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bg_p_m2_traffic_light.xml b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_p_m2_traffic_light.xml similarity index 100% rename from OCH/shuttle/passenger/src/m2/res/drawable/bg_p_m2_traffic_light.xml rename to OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_p_m2_traffic_light.xml diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bg_pnc.xml b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_pnc.xml similarity index 68% rename from OCH/shuttle/passenger/src/m2/res/drawable/bg_pnc.xml rename to OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_pnc.xml index 0357ebb192..cf40e4a77b 100644 --- a/OCH/shuttle/passenger/src/m2/res/drawable/bg_pnc.xml +++ b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_bg_pnc.xml @@ -1,5 +1,5 @@ - + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/brakelight_background_daytime.xml b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_brakelight_background_daytime.xml similarity index 69% rename from OCH/shuttle/passenger/src/m2/res/drawable/brakelight_background_daytime.xml rename to OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_brakelight_background_daytime.xml index 1fe46ae5ff..42320a2531 100644 --- a/OCH/shuttle/passenger/src/m2/res/drawable/brakelight_background_daytime.xml +++ b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_brakelight_background_daytime.xml @@ -1,5 +1,5 @@ - + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/m2_power_seekbar_style.xml b/OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_power_seekbar_style.xml similarity index 100% rename from OCH/shuttle/passenger/src/m2/res/drawable/m2_power_seekbar_style.xml rename to OCH/bus/passenger/src/main/res/m2/drawable/bus_p_m2_power_seekbar_style.xml diff --git a/OCH/shuttle/passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_driving_info_fragment.xml similarity index 86% rename from OCH/shuttle/passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml rename to OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_driving_info_fragment.xml index 846769ef18..a290ef869b 100644 --- a/OCH/shuttle/passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml +++ b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_driving_info_fragment.xml @@ -10,17 +10,17 @@ android:id="@+id/overMapView" android:layout_width="0dp" android:layout_height="match_parent" - app:carDrawable="@drawable/m2_map_car_icon" + app:carDrawable="@drawable/bus_p_m2_map_car_icon" app:isClearArrived="false" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintWidth_percent="0.6" - app:mapStyleExtraPath="@string/m2_over_map_style_extra_path" - app:mapStylePath="@string/m2_over_map_style_path" + app:mapStyleExtraPath="@string/bus_p_m2_over_map_style_extra_path" + app:mapStylePath="@string/bus_p_m2_over_map_style_path" app:resetDrawableMarginBottom="@dimen/dp_54" app:resetDrawableMarginRight="@dimen/dp_34" - app:compassDrawable="@drawable/amap_custom_corner_m2" - app:arrivedDrawable="@drawable/m2_amap_arrived_road" - app:unArrivedDrawable="@drawable/m2_amap_arriving_road" + app:compassDrawable="@drawable/bus_p_m2_amap_custom_corner" + app:arrivedDrawable="@drawable/bus_p_m2_amap_arrived_road" + app:unArrivedDrawable="@drawable/bus_p_m2_amap_arriving_road" app:mapTilt="0" app:leftPadding="200" app:topPadding="150" @@ -31,7 +31,7 @@ android:layout_width="0dp" android:scaleType="fitXY" android:layout_height="match_parent" - android:src="@drawable/bg_driving_info_image" + android:src="@drawable/bus_p_m2_bg_driving_info_image" app:layout_constraintStart_toStartOf="parent" app:layout_constraintWidth_percent="0.516"/> @@ -46,7 +46,7 @@ android:id="@+id/iv_line_name_container" android:layout_width="@dimen/dp_661" android:layout_height="@dimen/dp_92" - android:src="@drawable/shuttle_p_line_name" + android:src="@drawable/bus_p_m2_line_name" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -56,7 +56,7 @@ android:layout_width="@dimen/dp_32" android:layout_height="@dimen/dp_32" android:layout_marginEnd="@dimen/dp_14" - android:src="@drawable/shuttle_p_line_tile" + android:src="@drawable/bus_p_m2_line_tile" app:layout_constraintBottom_toBottomOf="@+id/line_name_tv" app:layout_constraintEnd_toStartOf="@+id/line_name_tv" app:layout_constraintHorizontal_chainStyle="packed" @@ -72,7 +72,7 @@ android:marqueeRepeatLimit="marquee_forever" android:maxWidth="@dimen/dp_600" android:singleLine="true" - android:textColor="@color/m2_line_name_tv_color" + android:textColor="@color/bus_p_m2_line_name_tv_color" android:textSize="@dimen/dp_36" android:textStyle="bold" app:customGap="0.2" @@ -97,14 +97,14 @@ app:layout_constraintEnd_toEndOf="@+id/m2_p_not_select_line_content" app:layout_constraintBottom_toTopOf="@+id/m2_p_not_select_line_content" android:layout_marginBottom="@dimen/dp_14" - android:src="@drawable/shuttle_p_line_noselect" /> + android:src="@drawable/bus_p_m2_line_noselect" /> @@ -139,7 +139,7 @@ android:id="@+id/iv_animal_list" android:layout_width="@dimen/dp_18" android:layout_height="@dimen/dp_32" - android:src="@drawable/bg_p_m2_arrived_station" + android:src="@drawable/bus_p_m2_bg_p_m2_arrived_station" android:visibility="gone" android:layout_marginStart="@dimen/dp_7" /> @@ -152,8 +152,8 @@ android:marqueeRepeatLimit="marquee_forever" android:gravity="left" android:singleLine="true" - android:text="@string/m2_p_empty_tv" - android:textColor="@color/shuttle_color_17417B" + android:text="@string/bus_p_m2_empty_tv" + android:textColor="@color/bus_p_m2_color_17417B" android:textSize="@dimen/dp_56" android:textStyle="bold" app:customGap="0.2" @@ -175,7 +175,7 @@ android:layout_width="@dimen/dp_200" android:layout_height="@dimen/dp_48" android:layout_marginTop="@dimen/dp_8" - android:background="@drawable/bg_driving_distance_lefttime" + android:background="@drawable/bus_p_m2_bg_driving_distance_lefttime" app:layout_constraintStart_toStartOf="@+id/tv_next_station_title" app:layout_constraintTop_toBottomOf="@+id/station_name_tv" /> @@ -183,7 +183,7 @@ android:id="@+id/bg_distance_lefttime_split" android:layout_width="@dimen/dp_1" android:layout_height="@dimen/dp_23" - android:background="@color/shuttle_color_6617417B" + android:background="@color/bus_p_m2_color_6617417B" app:layout_constraintBottom_toBottomOf="@+id/bg_distance_lefttime" app:layout_constraintEnd_toEndOf="@+id/bg_distance_lefttime" app:layout_constraintStart_toStartOf="@+id/bg_distance_lefttime" @@ -194,7 +194,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="--" - android:textColor="@color/shuttle_color_2d3e5f" + android:textColor="@color/bus_p_m2_color_2d3e5f" android:textSize="@dimen/dp_26" app:layout_constraintBottom_toBottomOf="@+id/bg_distance_lefttime" app:layout_constraintEnd_toStartOf="@+id/bg_distance_lefttime_split" @@ -206,7 +206,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="--" - android:textColor="@color/shuttle_color_2d3e5f" + android:textColor="@color/bus_p_m2_color_2d3e5f" android:textSize="@dimen/dp_26" app:layout_constraintBottom_toBottomOf="@+id/bg_distance_lefttime" app:layout_constraintEnd_toEndOf="@+id/bg_distance_lefttime" @@ -219,10 +219,10 @@ android:id="@+id/tv_arrived_notice" android:layout_width="@dimen/dp_200" android:layout_height="@dimen/dp_48" - android:background="@drawable/bg_driving_arrived_notice" + android:background="@drawable/bus_p_m2_bg_driving_arrived_notice" android:gravity="center" - android:text="@string/m2_p_arrived_station_title" - android:textColor="@color/shuttle_color_34A61F" + android:text="@string/bus_p_m2_arrived_station_title" + android:textColor="@color/bus_p_m2_color_34A61F" android:textStyle="bold" android:layout_marginTop="@dimen/dp_8" android:textSize="@dimen/dp_26" @@ -238,7 +238,7 @@ android:layout_width="0dp" android:layout_height="@dimen/dp_181" android:scaleType="fitXY" - android:src="@drawable/shuttle_p_card_split" + android:src="@drawable/bus_p_m2_card_split" app:layout_constraintEnd_toEndOf="@+id/cl_left_container" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" /> @@ -251,7 +251,7 @@ android:layout_height="wrap_content" android:layout_marginStart="@dimen/dp_50" android:text="0" - android:textColor="@color/m2_p_speed_tv_color" + android:textColor="@color/bus_p_m2_speed_tv_color" android:textSize="@dimen/dp_70" android:textStyle="bold" app:layout_constraintStart_toStartOf="@+id/aciv_speed_time_bg" @@ -263,9 +263,9 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/dp_8" - android:text="@string/m2_p_speed_unit_txt" + android:text="@string/bus_p_m2_speed_unit_txt" app:layout_constraintBaseline_toBaselineOf="@+id/speed_tv" - android:textColor="@color/m2_line_during_tv_color" + android:textColor="@color/bus_p_m2_line_during_tv_color" app:layout_constraintBottom_toBottomOf="@+id/speed_tv" android:textSize="@dimen/dp_18" app:layout_constraintStart_toEndOf="@+id/speed_tv" /> @@ -275,17 +275,17 @@ android:layout_width="@dimen/dp_83" android:layout_height="@dimen/dp_48" android:layout_marginTop="@dimen/dp_21" - android:background="@drawable/bg_p_m2_auto" + android:background="@drawable/bus_p_m2_bg_p_m2_auto" android:gravity="center" - android:text="@string/m2_p_auto_tv" - android:textColor="@color/shuttle_color_7094ad" + android:text="@string/bus_p_m2_auto_tv" + android:textColor="@color/bus_p_m2_color_7094ad" android:layout_marginBottom="@dimen/dp_34" android:textSize="@dimen/dp_24" app:layout_constraintLeft_toLeftOf="@+id/speed_tv" app:layout_constraintBottom_toBottomOf="parent" /> - @@ -340,7 +340,7 @@ app:layout_constraintTop_toTopOf="@+id/aciv_speed_time_bg" app:layout_constraintStart_toEndOf="@+id/view_split" android:layout_marginEnd="@dimen/dp_90" - android:textColor="@color/shuttle_color_17417B" + android:textColor="@color/bus_p_m2_color_17417B" android:includeFontPadding="false" android:textSize="@dimen/dp_52" /> @@ -355,7 +355,7 @@ android:layout_marginBottom="-3dp" app:layout_constraintBottom_toTopOf="@+id/viewTextClockWeek" app:layout_constraintStart_toEndOf="@+id/view_split" - android:textColor="@color/shuttle_color_17417B" + android:textColor="@color/bus_p_m2_color_17417B" android:includeFontPadding="false" android:textSize="@dimen/dp_26" /> @@ -371,7 +371,7 @@ app:layout_constraintBottom_toBottomOf="@+id/view_split" app:layout_constraintStart_toEndOf="@+id/view_split" android:layout_marginEnd="@dimen/dp_90" - android:textColor="@color/shuttle_color_17417B" + android:textColor="@color/bus_p_m2_color_17417B" android:includeFontPadding="false" android:textSize="@dimen/dp_26" /> diff --git a/OCH/shuttle/passenger/src/m2/res/layout/p_m2_fragment.xml b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_fragment.xml similarity index 93% rename from OCH/shuttle/passenger/src/m2/res/layout/p_m2_fragment.xml rename to OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_fragment.xml index 54c8669265..2944a93384 100644 --- a/OCH/shuttle/passenger/src/m2/res/layout/p_m2_fragment.xml +++ b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_fragment.xml @@ -15,7 +15,7 @@ app:layout_constraintLeft_toLeftOf="parent"/> + app:background_resource="@drawable/bus_p_m2_bg_pnc" /> @@ -109,28 +109,28 @@ app:layout_constraintLeft_toLeftOf="parent"/> @@ -28,7 +28,7 @@ android:layout_height="match_parent" android:textSize="@dimen/dp_22" android:textStyle="bold" - android:textColor="@color/m2_light_tv_color" + android:textColor="@color/bus_p_m2_color_2d3e5f" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" android:gravity="center" /> diff --git a/OCH/shuttle/passenger/src/m2/res/layout/view_turn_light_status_daytime.xml b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_turn_light_status.xml similarity index 85% rename from OCH/shuttle/passenger/src/m2/res/layout/view_turn_light_status_daytime.xml rename to OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_turn_light_status.xml index b782ef1f60..ec5a62ef4d 100644 --- a/OCH/shuttle/passenger/src/m2/res/layout/view_turn_light_status_daytime.xml +++ b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_turn_light_status.xml @@ -10,7 +10,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="gone" - android:background="@drawable/brakelight_background_daytime" + android:background="@drawable/bus_p_m2_brakelight_background_daytime" android:layout_gravity="top|center_horizontal" app:layout_constraintTop_toTopOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -22,7 +22,7 @@ android:layout_height="@dimen/dp_30" android:layout_gravity="left|center_vertical" android:layout_marginLeft="@dimen/dp_12" - android:src="@drawable/m2_zuozhuan_un_open" /> + android:src="@drawable/bus_p_m2_zuozhuan_un_open" /> + android:src="@drawable/bus_p_m2_youzhuan_un_open" /> \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/layout/p_m2_view_blue_tooth.xml b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_view_blue_tooth.xml similarity index 89% rename from OCH/shuttle/passenger/src/m2/res/layout/p_m2_view_blue_tooth.xml rename to OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_view_blue_tooth.xml index 69ae14c394..6f8a5129f0 100644 --- a/OCH/shuttle/passenger/src/m2/res/layout/p_m2_view_blue_tooth.xml +++ b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_view_blue_tooth.xml @@ -9,7 +9,7 @@ android:layout_width="@dimen/dp_18" android:layout_height="@dimen/dp_26" android:scaleType="fitXY" - android:src="@drawable/m2_blue_tooth_open" + android:src="@drawable/bus_p_m2_blue_tooth_open" tools:ignore="ContentDescription" /> \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/layout/p_m2_view_status_bar.xml b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_view_status_bar.xml similarity index 91% rename from OCH/shuttle/passenger/src/m2/res/layout/p_m2_view_status_bar.xml rename to OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_view_status_bar.xml index dc4f1090d5..163bee4257 100644 --- a/OCH/shuttle/passenger/src/m2/res/layout/p_m2_view_status_bar.xml +++ b/OCH/bus/passenger/src/main/res/m2/layout/bus_p_m2_view_status_bar.xml @@ -26,7 +26,7 @@ app:layout_constraintStart_toEndOf="@+id/wifiStateView" android:layout_width="@dimen/dp_15" android:layout_height="@dimen/dp_22" - android:src="@drawable/m2_blue_tooth_open" + android:src="@drawable/bus_p_m2_blue_tooth_open" android:layout_gravity="center" android:layout_marginStart="@dimen/dp_32" /> @@ -44,7 +44,7 @@ android:minHeight="@dimen/dp_8" android:layout_marginRight="4dp" android:background="@null" - android:progressDrawable="@drawable/m2_power_seekbar_style" /> + android:progressDrawable="@drawable/bus_p_m2_power_seekbar_style" /> @@ -62,7 +62,7 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" - android:src="@drawable/m2_status_bar_logo" + android:src="@drawable/bus_p_m2_status_bar_logo" android:scaleType="fitXY" android:layout_width="@dimen/dp_94" android:layout_height="@dimen/dp_25"/> diff --git a/OCH/shuttle/passenger/src/m2/res/raw/star_marker.nt3d b/OCH/bus/passenger/src/main/res/m2/raw/star_marker.nt3d similarity index 100% rename from OCH/shuttle/passenger/src/m2/res/raw/star_marker.nt3d rename to OCH/bus/passenger/src/main/res/m2/raw/star_marker.nt3d diff --git a/OCH/shuttle/passenger/src/m2/res/raw/station_marker.nt3d b/OCH/bus/passenger/src/main/res/m2/raw/station_marker.nt3d similarity index 100% rename from OCH/shuttle/passenger/src/m2/res/raw/station_marker.nt3d rename to OCH/bus/passenger/src/main/res/m2/raw/station_marker.nt3d diff --git a/OCH/bus/passenger/src/main/res/m2/values/colors.xml b/OCH/bus/passenger/src/main/res/m2/values/colors.xml new file mode 100644 index 0000000000..3c583e6cd4 --- /dev/null +++ b/OCH/bus/passenger/src/main/res/m2/values/colors.xml @@ -0,0 +1,26 @@ + + + #FFFFFF + #0B1E38 + #BBDAFB + #0B1E38 + #5D7199 + #A5D8FF + #1B2546 + #23355D + #8895B7 + + + #C8EFFF + #203555 + #17417B + #2D3E5F + #34A61F + #AEEDB8 + #43CEFE + #1466FB + #7094AD + + #99AFC9E7 + #6617417B + \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/res/m2/values/dimens.xml b/OCH/bus/passenger/src/main/res/m2/values/dimens.xml new file mode 100644 index 0000000000..55344e5192 --- /dev/null +++ b/OCH/bus/passenger/src/main/res/m2/values/dimens.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/res/m2/values/strings.xml b/OCH/bus/passenger/src/main/res/m2/values/strings.xml new file mode 100644 index 0000000000..7ee723e068 --- /dev/null +++ b/OCH/bus/passenger/src/main/res/m2/values/strings.xml @@ -0,0 +1,14 @@ + + + KM/H + m2_map_style.data + m2_map_style_extra.data + AUTO + 已到站 + 暂无站点 + 前方到站 + —公里 + —分钟 + 请按秩序下车 + 暂无路线 + \ No newline at end of file diff --git a/OCH/charter/driver/build.gradle b/OCH/charter/driver/build.gradle index f28ba4dcbd..ba54bb07a1 100644 --- a/OCH/charter/driver/build.gradle +++ b/OCH/charter/driver/build.gradle @@ -61,7 +61,7 @@ dependencies { implementation rootProject.ext.dependencies.androidxrecyclerview compileOnly rootProject.ext.dependencies.recyclerviewadapterhelper - implementation project(":OCH:mogo-och-common-module") + implementation project(":OCH:common:common") compileOnly project(":libraries:mogo-map") androidTestImplementation rootProject.ext.dependencies.androidxjunit diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/constant/CharterConst.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/constant/CharterConst.kt index 09cabd4b95..ea0f7f3ac4 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/constant/CharterConst.kt +++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/constant/CharterConst.kt @@ -30,6 +30,8 @@ class CharterConst { const val EVENT_PARAM_START_NAME = "start_name" const val EVENT_PARAM_END_NAME = "end_name" const val EVENT_PARAM_LINE_ID = "line_id" + const val EVENT_PARAM_MAP_ORIGINAL_DATA = "map_original_data" // 域控原始状态信息 + const val EVENT_PARAM_AUTOPILOT_STATE = "autopilot_state" //原始的自动驾驶状态 const val EVENT_PARAM_START_RESULT = "start_autopilot" // true/false const val EVENT_PARAM_START_FAILURE_CODE = "start_autopilot_failure_code" // 启动自驾失败code const val EVENT_PARAM_START_FAILURE_MSG = "start_autopilot_failure_msg" // 启动自驾失败原因 diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/fragment/DriverM1Fragment.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/fragment/DriverM1Fragment.kt index c670bad905..350aa1d261 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/fragment/DriverM1Fragment.kt +++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/fragment/DriverM1Fragment.kt @@ -14,7 +14,7 @@ import com.magic.mogo.och.charter.constant.CharterConst.Companion.LOOP_PERIOD_60 import com.magic.mogo.och.charter.net.login.LoginDriverM1Impl import com.magic.mogo.och.charter.presenter.DriverM1Presenter import com.magic.mogo.och.charter.view.SlidePanelView -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.temp.EventLogout import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d @@ -131,9 +131,9 @@ class DriverM1Fragment : CharterBaseFragment?){ mDriverM1ServiceApi.queryBusinessStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn )?.transformTry() ?.subscribe(OchCommonSubscribeImpl(context!!, callback, "queryCurrentServiceStatus")) } @@ -56,8 +56,8 @@ object DriverM1ServiceManager { fun queryCurrentOrder(context: Context?, callback: OchCommonServiceCallback?){ mDriverM1ServiceApi.queryCurrentOrder(MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn )?.transformTry() ?.subscribe(OchCommonSubscribeImpl(context!!, callback, "queryCurrentOrder")) } @@ -65,8 +65,8 @@ object DriverM1ServiceManager { fun checkOrderCountDown(context: Context?, callback: OchCommonServiceCallback?){ mDriverM1ServiceApi.checkOrderCountDown(MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn )?.transformTry() ?.subscribe(OchCommonSubscribeImpl(context!!, callback, "checkOrderCountDown")) } @@ -74,8 +74,8 @@ object DriverM1ServiceManager { fun changeDest(context: Context?,lineId: Int,startSiteId: Int,siteId: Int,writeVersion: Long, callback: OchCommonServiceCallback?){ mDriverM1ServiceApi.changeDest(MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - RequestChangeDest(MoGoAiCloudClientConfig.getInstance().sn,lineId,startSiteId,siteId, + SharedPrefsMgr.getInstance().token, + RequestChangeDest(SharedPrefsMgr.getInstance().sn,lineId,startSiteId,siteId, writeVersion) )?.transformTry() ?.subscribe(OchCommonSubscribeImpl(context!!, callback, "changeDest")) @@ -84,17 +84,17 @@ object DriverM1ServiceManager { fun arriveDest(context: Context,lindId: Long ,writeVersion:Long ,callback: OchCommonServiceCallback?){ mDriverM1ServiceApi.arriveDest(MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - ArriveDestRequest(MoGoAiCloudClientConfig.getInstance().sn,lindId,writeVersion) + SharedPrefsMgr.getInstance().token, + ArriveDestRequest(SharedPrefsMgr.getInstance().sn,lindId,writeVersion) ).transformTry() - .subscribe(OchCommonSubscribeImpl(context!!, callback, "arriveDest")) + .subscribe(OchCommonSubscribeImpl(context, callback, "arriveDest")) } fun checkoutContrail(context: Context?,lineId: Int, callback: OchCommonServiceCallback?){ mDriverM1ServiceApi.checkoutContrail(MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn, + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn, lineId )?.transformTry() ?.subscribe(OchCommonSubscribeImpl(context!!, callback, "checkOrderCountDown")) diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchCommonServiceManager.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchCommonServiceManager.kt index f18a23fb7b..68412ada11 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchCommonServiceManager.kt +++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchCommonServiceManager.kt @@ -11,6 +11,7 @@ import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.cloud.passport.MoGoAiCloudClient import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.biz.network.interceptor.transformTry @@ -39,7 +40,7 @@ object OchCommonServiceManager { ) { mLoginServiceApi.getPhoneCode( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginSmsReqBean(phone) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) @@ -56,10 +57,10 @@ object OchCommonServiceManager { location4Login: TaxiLoginReqBean.Location4Login?, callback: OchCommonServiceCallback? ) { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn mLoginServiceApi.gotoLoginBycode4Bus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginReqBean(phone, code, sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) } @@ -75,8 +76,8 @@ object OchCommonServiceManager { ) { mLoginServiceApi.logout4Bus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - TaxiLogoutReqBean(MoGoAiCloudClientConfig.getInstance().sn, location4Login) + SharedPrefsMgr.getInstance().token, + TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) } @@ -91,15 +92,15 @@ object OchCommonServiceManager { context: Context, callback: OchCommonServiceCallback? ) { - if (MoGoAiCloudClientConfig.getInstance().token.isEmpty()) { + if (SharedPrefsMgr.getInstance().token.isEmpty()) { callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") MoGoAiCloudClient.getInstance().refreshToken() return } mLoginServiceApi.queryDriverServiceStatusAndLoginStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) } diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/view/SlidePanelView.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/view/SlidePanelView.kt index 74c639ca82..8800dd29b6 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/view/SlidePanelView.kt +++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/view/SlidePanelView.kt @@ -3,13 +3,24 @@ package com.magic.mogo.och.charter.view import android.animation.ObjectAnimator import android.animation.ValueAnimator import android.content.Context -import android.graphics.* +import android.graphics.Bitmap +import android.graphics.BitmapFactory +import android.graphics.Canvas +import android.graphics.Color +import android.graphics.LinearGradient +import android.graphics.Matrix +import android.graphics.Paint +import android.graphics.Rect +import android.graphics.RectF +import android.graphics.Shader import android.util.AttributeSet import android.view.MotionEvent import android.view.View import android.view.animation.DecelerateInterpolator import com.magic.mogo.och.charter.R import com.mogo.commons.AbsMogoApplication +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import com.mogo.eagle.core.utilcode.util.UiThreadHandler import me.jessyan.autosize.AutoSizeConfig import me.jessyan.autosize.utils.AutoSizeUtils @@ -82,12 +93,15 @@ class SlidePanelView @JvmOverloads constructor( textGradient!!.setLocalMatrix(gradientMatrix) textPaint.shader = textGradient textPaint.getFontMetrics(blockTextMetrics) - val size = AutoSizeUtils.dp2px(context, 120f) - val opts = BitmapFactory.Options() - opts.inDensity = AutoSizeConfig.getInstance().initDensity.toInt() - bmBlock = BitmapFactory.decodeResource(resources, R.drawable.charter_base_slide_block, opts) - bmBlock = Bitmap.createScaledBitmap(bmBlock!!, size, size, true) - blockWidth = bmBlock!!.getWidth() + ThreadUtils.getIoPool().execute { + val size = AutoSizeUtils.dp2px(context, 120f) + val opts = BitmapFactory.Options() + opts.inDensity = AutoSizeConfig.getInstance().initDensity.toInt() + bmBlock = BitmapFactory.decodeResource(resources, R.drawable.charter_base_slide_block, opts) + bmBlock = Bitmap.createScaledBitmap(bmBlock!!, size, size, true) + blockWidth = bmBlock!!.getWidth() + UiThreadHandler.post({ requestLayout() }, UiThreadHandler.MODE.QUEUE) + } } override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) { @@ -104,15 +118,17 @@ class SlidePanelView @JvmOverloads constructor( textMarginLeft = NORMAL_TEXT_MARGIN_LEFT textMarginRight = NORMAL_TEXT_MARGIN_RIGHT } - if (widthMode == MeasureSpec.AT_MOST) { - // 宽度根据图片大小,字符串长度,各种间隔确定 - // 高度根据图片大小和上下间隔确定 - textPaint.getTextBounds(blockText, 0, blockText.length, textRect) - widthSize = - BLOCK_START_X * 2 + bmBlock!!.width + textMarginLeft + textMarginRight + textRect.width() - heightSize = BLOCK_START_Y * 2 + bmBlock!!.height - widthMeasureSpec = MeasureSpec.makeMeasureSpec(widthSize, widthMode) - heightMeasureSpec = MeasureSpec.makeMeasureSpec(heightSize, heightMode) + if(bmBlock!=null) { + if (widthMode == MeasureSpec.AT_MOST) { + // 宽度根据图片大小,字符串长度,各种间隔确定 + // 高度根据图片大小和上下间隔确定 + textPaint.getTextBounds(blockText, 0, blockText.length, textRect) + widthSize = + BLOCK_START_X * 2 + bmBlock!!.width + textMarginLeft + textMarginRight + textRect.width() + heightSize = BLOCK_START_Y * 2 + bmBlock!!.height + widthMeasureSpec = MeasureSpec.makeMeasureSpec(widthSize, widthMode) + heightMeasureSpec = MeasureSpec.makeMeasureSpec(heightSize, heightMode) + } } super.onMeasure(widthMeasureSpec, heightMeasureSpec) } @@ -201,22 +217,24 @@ class SlidePanelView @JvmOverloads constructor( // 画文字 gradientMatrix.setTranslate(matrixTranslate, 0f) textGradient!!.setLocalMatrix(gradientMatrix) - canvas.save() - canvas.drawText( - blockText, - (blockWidth + BLOCK_START_X + textMarginLeft).toFloat(), - textOffset, - textPaint - ) - canvas.restore() - // 画滑块 + if(bmBlock!=null) { + canvas.save() + canvas.drawText( + blockText, + (blockWidth + BLOCK_START_X + textMarginLeft).toFloat(), + textOffset, + textPaint + ) + canvas.restore() + // 画滑块 - canvas.drawBitmap( - bmBlock!!, - (BLOCK_START_X + blockOffset).toFloat(), - BLOCK_START_Y.toFloat(), - blockPaint - ) + canvas.drawBitmap( + bmBlock!!, + (BLOCK_START_X + blockOffset).toFloat(), + BLOCK_START_Y.toFloat(), + blockPaint + ) + } } interface OnSlidePanelMoveToEndListener { diff --git a/OCH/charter/passenger/build.gradle b/OCH/charter/passenger/build.gradle index e84da8b7da..ef7833ad2b 100644 --- a/OCH/charter/passenger/build.gradle +++ b/OCH/charter/passenger/build.gradle @@ -59,7 +59,7 @@ dependencies { implementation rootProject.ext.dependencies.rxandroid implementation rootProject.ext.dependencies.androidxconstraintlayout implementation rootProject.ext.dependencies.amapnavi3dmap - implementation project(":OCH:mogo-och-common-module") + implementation project(":OCH:common:common") compileOnly project(":libraries:mogo-map") implementation project(':core:mogo-core-res') diff --git a/OCH/charter/passenger/src/androidTest/java/com/mogo/och/bus/passenger/ExampleInstrumentedTest.java b/OCH/charter/passenger/src/androidTest/java/passenger/ExampleInstrumentedTest.java similarity index 100% rename from OCH/charter/passenger/src/androidTest/java/com/mogo/och/bus/passenger/ExampleInstrumentedTest.java rename to OCH/charter/passenger/src/androidTest/java/passenger/ExampleInstrumentedTest.java diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/model/CharterPassengerModel.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/model/CharterPassengerModel.kt index cebda9766f..db603f25a4 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/model/CharterPassengerModel.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/model/CharterPassengerModel.kt @@ -22,7 +22,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.* import com.mogo.och.charter.passenger.R import com.mogo.och.common.module.manager.loopmanager.LoopInfo @@ -387,7 +387,7 @@ object CharterPassengerModel { this.orderInfo?.orderNo?.let { if (it != orderData.orderNo) { // orderNo 变后清理 - SharedPrefsMgr.getInstance(mContext).remove("${it}$min5Speak") + SharedPrefsMgr.getInstance().remove("${it}$min5Speak") } } if (order.lineId == null || order.lineId == 0L || order.siteId == null || order.siteId == 0L) { @@ -563,7 +563,7 @@ object CharterPassengerModel { .subscribe { millisUntilFinished -> if (millisUntilFinished <= 900L) { orderInfo?.let { - val isPlayed = SharedPrefsMgr.getInstance(mContext) + val isPlayed = SharedPrefsMgr.getInstance() .getBoolean("${it.orderNo}$min5Speak", false) if (!isPlayed) { //发送 通知 @@ -574,7 +574,7 @@ object CharterPassengerModel { ) VoiceManager.surplus15min(VoiceFocusManager.getVoiceCmdCallBack()) d(M_BUS_P + TAG, "倒计时15分钟${it.orderNo}") - SharedPrefsMgr.getInstance(mContext) + SharedPrefsMgr.getInstance() .putBoolean("${it.orderNo}$min5Speak", true) } } diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/net/PassengerServiceApi.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/net/PassengerServiceApi.kt index e0d4dd686d..be3a411eb5 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/net/PassengerServiceApi.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/net/PassengerServiceApi.kt @@ -1,8 +1,8 @@ package com.mogo.och.charter.passenger.net import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseData -import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager import com.mogo.och.charter.passenger.bean.request.ArriveDestRequest import com.mogo.och.charter.passenger.bean.request.EndOrderRequest import com.mogo.och.charter.passenger.bean.response.* @@ -19,7 +19,7 @@ internal interface PassengerServiceApi { @GET("/och-rental-cabin/api/business/v1/driver/loginStatus") fun queryDriverOperationStatus( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String= SharedPrefsMgr.getInstance().token, @Query("sn") sn: String = BusPassengerServiceManager.draiverSn ): Observable @@ -29,7 +29,7 @@ internal interface PassengerServiceApi { @GET("/och-rental-cabin/api/business/v1/driver/order") fun queryOrderInfo( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("sn") sn: String = BusPassengerServiceManager.draiverSn ): Observable @@ -39,7 +39,7 @@ internal interface PassengerServiceApi { @GET("/och-rental-cabin/api/business/v1/driver/lineList") fun queryLineList( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("sn") sn: String = BusPassengerServiceManager.draiverSn ): Observable @@ -49,7 +49,7 @@ internal interface PassengerServiceApi { @GET("/och-rental-cabin/api/business/v1/driver/siteList") fun queryLineSiteList( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("sn") sn: String = BusPassengerServiceManager.draiverSn, @Query("lineId") lineId: String? ): Observable @@ -61,7 +61,7 @@ internal interface PassengerServiceApi { @GET("/och-rental-cabin/api/business/v1/driver/businessStatus") fun queryBusinessStatus( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("sn") sn: String = BusPassengerServiceManager.draiverSn ): Observable @@ -71,7 +71,7 @@ internal interface PassengerServiceApi { @POST("/och-rental-cabin/api/flow/v1/driver/serviceEnd") fun endOrder( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Body request: EndOrderRequest ): Observable @@ -81,7 +81,7 @@ internal interface PassengerServiceApi { @POST("/och-rental-cabin/api/flow/v1/driver/arriveDest") fun arriveDest( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Body request: ArriveDestRequest ): Observable @@ -92,7 +92,7 @@ internal interface PassengerServiceApi { @GET("/och-rental-cabin/api/business/v1/driver/contrail") fun queryLocusByLineId( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("sn") sn: String = BusPassengerServiceManager.draiverSn, @Query("lineId") lineId: String? ): Observable @@ -104,7 +104,7 @@ internal interface PassengerServiceApi { @GET("/och-rental-cabin/api/business/v1/driver/queryBusinessTime") fun queryBusinessTime( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("sn") sn: String = BusPassengerServiceManager.draiverSn ): Observable @@ -115,7 +115,7 @@ internal interface PassengerServiceApi { @GET("/och-rental-cabin/api/business/v1/queryLineLocation") fun queryLineLocation( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("sn") sn: String = BusPassengerServiceManager.draiverSn, @Query("lineId") lineId: String ): Observable diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/presenter/BusPassengerPresenter.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/presenter/BusPassengerPresenter.kt index 8018df7053..8387d842cb 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/presenter/BusPassengerPresenter.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/presenter/BusPassengerPresenter.kt @@ -17,7 +17,7 @@ import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManage import com.mogo.eagle.core.function.view.SiteMarkerBean import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.bean.response.LineInfoResponse import com.mogo.och.charter.passenger.bean.response.OrderInfoResponse @@ -149,14 +149,14 @@ class BusPassengerPresenter(view: MainFragment?) : } private fun clearShowNoviceGuidanceSharedPrefs() { - SharedPrefsMgr.getInstance(context).remove(KEY4SHOWNOVICEGUIDANCE) + SharedPrefsMgr.getInstance().remove(KEY4SHOWNOVICEGUIDANCE) } private fun showNoviceGuidance() { CallerLogger.d(M_BUS_P + TAG, "showNoviceGuidance") val currentOrderInfo = CharterPassengerModel.getCurrentOrderInfo() currentOrderInfo?.orderNo?.let { order -> - val stringSet = SharedPrefsMgr.getInstance(context).getStringSet(KEY4SHOWNOVICEGUIDANCE) + val stringSet = SharedPrefsMgr.getInstance().getStringSet(KEY4SHOWNOVICEGUIDANCE) if (stringSet == null) { diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/dialogfragment/NoviceGuidanceFragment.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/dialogfragment/NoviceGuidanceFragment.kt index 74167e212e..4e35ecc62b 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/dialogfragment/NoviceGuidanceFragment.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/dialogfragment/NoviceGuidanceFragment.kt @@ -14,7 +14,7 @@ import com.mogo.commons.mvp.MvpDialogFragment import com.mogo.commons.voice.AIAssist import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.* import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.model.CharterPassengerModel @@ -161,7 +161,7 @@ class NoviceGuidanceFragment : val currentOrderInfo = CharterPassengerModel.getCurrentOrderInfo() currentOrderInfo?.orderNo?.let { order -> val orderNoSet = mutableSetOf(order) - SharedPrefsMgr.getInstance(requireContext()) + SharedPrefsMgr.getInstance() .putStringSet(BusPassengerPresenter.KEY4SHOWNOVICEGUIDANCE, orderNoSet) } } diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/softcontrol/SoftControlView.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/softcontrol/SoftControlView.kt index 6a67cfbbea..d7fe05aea2 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/softcontrol/SoftControlView.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/softcontrol/SoftControlView.kt @@ -23,7 +23,7 @@ import androidx.lifecycle.findViewTreeViewModelStoreOwner import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.ClickUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.charter.passenger.R @@ -649,7 +649,7 @@ class SoftControlView : ConstraintLayout, SoftControlViewModel.SoftControlCallba snapHelper.attachToRecyclerView(rv_aircondition_temperature) rv_aircondition_temperature.layoutManager = pickerLayoutManager rv_aircondition_temperature.adapter = adapter - com.mogo.och.charter.passenger.ui.softcontrol.layoutmanage.HorizontalDecoration.distance = SharedPrefsMgr.getInstance(context).getInt( + com.mogo.och.charter.passenger.ui.softcontrol.layoutmanage.HorizontalDecoration.distance = SharedPrefsMgr.getInstance().getInt( com.mogo.och.charter.passenger.ui.softcontrol.layoutmanage.HorizontalDecoration.distancekey, 0 ) val space = AutoSizeUtils.dp2px(context, 15f) diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/softcontrol/layoutmanage/HorizontalDecoration.java b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/softcontrol/layoutmanage/HorizontalDecoration.java index 09f4c44241..8ce32fa4be 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/softcontrol/layoutmanage/HorizontalDecoration.java +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/softcontrol/layoutmanage/HorizontalDecoration.java @@ -6,9 +6,7 @@ import android.view.View; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; -import com.mogo.commons.AbsMogoApplication; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; -import com.mogo.och.charter.passenger.ui.softcontrol.adapter.TemperatureAdapter; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.och.charter.passenger.ui.softcontrol.adapter.TemperatureAdapter; public class HorizontalDecoration extends RecyclerView.ItemDecoration { @@ -67,7 +65,7 @@ public class HorizontalDecoration extends RecyclerView.ItemDecoration { } } }, 500); - SharedPrefsMgr.getInstance(AbsMogoApplication.getApp()).putInt(distancekey,distance); + SharedPrefsMgr.getInstance().putInt(distancekey,distance); } }); } diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/video/VideoView.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/video/VideoView.kt index 0b4a79420f..0119f2c0cd 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/video/VideoView.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/video/VideoView.kt @@ -10,7 +10,6 @@ import androidx.recyclerview.widget.RecyclerView import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.main.MainMoGoApplication import com.mogo.eagle.core.utilcode.kotlin.onClick -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.charter.passenger.R diff --git a/OCH/charter/passenger/src/test/java/com/mogo/och/bus/passenger/ExampleUnitTest.kt b/OCH/charter/passenger/src/test/java/passenger/ExampleUnitTest.kt similarity index 100% rename from OCH/charter/passenger/src/test/java/com/mogo/och/bus/passenger/ExampleUnitTest.kt rename to OCH/charter/passenger/src/test/java/passenger/ExampleUnitTest.kt diff --git a/OCH/charter/passenger/src/test/java/com/mogo/och/bus/passenger/Model.kt b/OCH/charter/passenger/src/test/java/passenger/Model.kt similarity index 100% rename from OCH/charter/passenger/src/test/java/com/mogo/och/bus/passenger/Model.kt rename to OCH/charter/passenger/src/test/java/passenger/Model.kt diff --git a/OCH/charter/passenger/src/test/java/com/mogo/och/bus/passenger/ModelX.kt b/OCH/charter/passenger/src/test/java/passenger/ModelX.kt similarity index 100% rename from OCH/charter/passenger/src/test/java/com/mogo/och/bus/passenger/ModelX.kt rename to OCH/charter/passenger/src/test/java/passenger/ModelX.kt diff --git a/OCH/mogo-och-common-module/.gitignore b/OCH/common/common/.gitignore similarity index 100% rename from OCH/mogo-och-common-module/.gitignore rename to OCH/common/common/.gitignore diff --git a/OCH/mogo-och-common-module/build.gradle b/OCH/common/common/build.gradle similarity index 95% rename from OCH/mogo-och-common-module/build.gradle rename to OCH/common/common/build.gradle index d45239d994..6ee9002e13 100644 --- a/OCH/mogo-och-common-module/build.gradle +++ b/OCH/common/common/build.gradle @@ -49,7 +49,7 @@ dependencies { implementation rootProject.ext.dependencies.androidxappcompat implementation rootProject.ext.dependencies.material testImplementation 'junit:junit:4.12' - testImplementation project(path: ':OCH:mogo-och-common-module') + testImplementation project(path: ':OCH:common:common') androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' implementation rootProject.ext.dependencies.amapnavi3dmap @@ -60,7 +60,7 @@ dependencies { implementation rootProject.ext.dependencies.litezxing - api project(":OCH:mogo-och-data") + api project(":OCH:common:data") if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { api rootProject.ext.dependencies.mogocommons diff --git a/OCH/mogo-och-common-module/consumer-rules.pro b/OCH/common/common/consumer-rules.pro similarity index 100% rename from OCH/mogo-och-common-module/consumer-rules.pro rename to OCH/common/common/consumer-rules.pro diff --git a/OCH/mogo-och-common-module/proguard-rules.pro b/OCH/common/common/proguard-rules.pro similarity index 100% rename from OCH/mogo-och-common-module/proguard-rules.pro rename to OCH/common/common/proguard-rules.pro diff --git a/OCH/mogo-och-common-module/src/androidTest/java/com/mogo/och/common/module/ExampleInstrumentedTest.kt b/OCH/common/common/src/androidTest/java/com/mogo/och/common/module/ExampleInstrumentedTest.kt similarity index 100% rename from OCH/mogo-och-common-module/src/androidTest/java/com/mogo/och/common/module/ExampleInstrumentedTest.kt rename to OCH/common/common/src/androidTest/java/com/mogo/och/common/module/ExampleInstrumentedTest.kt diff --git a/OCH/mogo-och-common-module/src/debug/AndroidManifest.xml b/OCH/common/common/src/debug/AndroidManifest.xml similarity index 100% rename from OCH/mogo-och-common-module/src/debug/AndroidManifest.xml rename to OCH/common/common/src/debug/AndroidManifest.xml diff --git a/OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/debug/BizBroadcastReceiver.kt b/OCH/common/common/src/debug/java/com/mogo/och/common/module/debug/BizBroadcastReceiver.kt similarity index 100% rename from OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/debug/BizBroadcastReceiver.kt rename to OCH/common/common/src/debug/java/com/mogo/och/common/module/debug/BizBroadcastReceiver.kt diff --git a/OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/debug/DebugDataDispatch.kt b/OCH/common/common/src/debug/java/com/mogo/och/common/module/debug/DebugDataDispatch.kt similarity index 100% rename from OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/debug/DebugDataDispatch.kt rename to OCH/common/common/src/debug/java/com/mogo/och/common/module/debug/DebugDataDispatch.kt diff --git a/OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/debug/location/MogoLocationExit.kt b/OCH/common/common/src/debug/java/com/mogo/och/common/module/debug/location/MogoLocationExit.kt similarity index 100% rename from OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/debug/location/MogoLocationExit.kt rename to OCH/common/common/src/debug/java/com/mogo/och/common/module/debug/location/MogoLocationExit.kt diff --git a/OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/utils/CollectionUtils.java b/OCH/common/common/src/debug/java/com/mogo/och/common/module/utils/CollectionUtils.java similarity index 100% rename from OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/utils/CollectionUtils.java rename to OCH/common/common/src/debug/java/com/mogo/och/common/module/utils/CollectionUtils.java diff --git a/OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/utils/SimpleInterceptor.kt b/OCH/common/common/src/debug/java/com/mogo/och/common/module/utils/SimpleInterceptor.kt similarity index 100% rename from OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/utils/SimpleInterceptor.kt rename to OCH/common/common/src/debug/java/com/mogo/och/common/module/utils/SimpleInterceptor.kt diff --git a/OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/view/DebugFloatWindow.kt b/OCH/common/common/src/debug/java/com/mogo/och/common/module/view/DebugFloatWindow.kt similarity index 100% rename from OCH/mogo-och-common-module/src/debug/java/com/mogo/och/common/module/view/DebugFloatWindow.kt rename to OCH/common/common/src/debug/java/com/mogo/och/common/module/view/DebugFloatWindow.kt diff --git a/OCH/mogo-och-common-module/src/debug/res/drawable/baseline_close_24.xml b/OCH/common/common/src/debug/res/drawable/baseline_close_24.xml similarity index 100% rename from OCH/mogo-och-common-module/src/debug/res/drawable/baseline_close_24.xml rename to OCH/common/common/src/debug/res/drawable/baseline_close_24.xml diff --git a/OCH/mogo-och-common-module/src/debug/res/drawable/common_close.xml b/OCH/common/common/src/debug/res/drawable/common_close.xml similarity index 100% rename from OCH/mogo-och-common-module/src/debug/res/drawable/common_close.xml rename to OCH/common/common/src/debug/res/drawable/common_close.xml diff --git a/OCH/mogo-och-common-module/src/debug/res/layout/debug_view.xml b/OCH/common/common/src/debug/res/layout/debug_view.xml similarity index 100% rename from OCH/mogo-och-common-module/src/debug/res/layout/debug_view.xml rename to OCH/common/common/src/debug/res/layout/debug_view.xml diff --git a/OCH/mogo-och-common-module/src/main/AndroidManifest.xml b/OCH/common/common/src/main/AndroidManifest.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/AndroidManifest.xml rename to OCH/common/common/src/main/AndroidManifest.xml diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/OchCommonApi.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/OchCommonApi.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/OchCommonApi.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/OchCommonApi.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/bean/dpmsg/DPMsgType.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/bean/dpmsg/DPMsgType.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/bean/dpmsg/DPMsgType.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/bean/dpmsg/DPMsgType.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/bean/dpmsg/DataBean.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/bean/dpmsg/DataBean.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/bean/dpmsg/DataBean.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/bean/dpmsg/DataBean.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/DriverStatusQueryRespBean.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/DriverStatusQueryRespBean.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/DriverStatusQueryRespBean.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/DriverStatusQueryRespBean.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginReqBean.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginReqBean.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginReqBean.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginReqBean.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginRespBean.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginRespBean.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginRespBean.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginRespBean.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginSmsReqBean.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginSmsReqBean.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginSmsReqBean.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginSmsReqBean.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLogoutReqBean.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLogoutReqBean.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLogoutReqBean.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLogoutReqBean.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/callback/ILoginCallback.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginCallback.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/callback/ILoginCallback.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginCallback.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/callback/ILoginViewCallback.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginViewCallback.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/callback/ILoginViewCallback.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginViewCallback.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/callback/ITaxiLoginCallback.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ITaxiLoginCallback.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/callback/ITaxiLoginCallback.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ITaxiLoginCallback.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/OCHSocketMessageManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/OCHSocketMessageManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/OCHSocketMessageManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/OCHSocketMessageManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/DataBaseMsg.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/DataBaseMsg.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/DataBaseMsg.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/DataBaseMsg.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OCHOperationalMessage.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OCHOperationalMessage.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OCHOperationalMessage.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OCHOperationalMessage.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OperateDoorMsg.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OperateDoorMsg.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OperateDoorMsg.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OperateDoorMsg.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OrderCloseMsg.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OrderCloseMsg.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OrderCloseMsg.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/OrderCloseMsg.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/SystemMsg.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/SystemMsg.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/SystemMsg.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/common/socketmessage/data/SystemMsg.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/constant/LoginStatusManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/LoginStatusManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/constant/LoginStatusManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/LoginStatusManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/constant/OchCommonConst.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/OchCommonConst.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/constant/OchCommonConst.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/OchCommonConst.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/constant/TaxiLoginStatusEnum.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/TaxiLoginStatusEnum.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/constant/TaxiLoginStatusEnum.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/TaxiLoginStatusEnum.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt similarity index 96% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt index 4be8d6a160..ebf531dbfb 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt @@ -4,7 +4,7 @@ import android.annotation.SuppressLint import android.content.Context import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.NetworkUtils import com.mogo.och.common.module.R import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean @@ -100,7 +100,7 @@ object OchCommonLoginModel { ToastCharterUtils.showToastShort(mContext?.getString(R.string.module_och_taxi_login_login_success)) LoginStatusManager.setLoginStatus(TaxiLoginStatusEnum.Login) mContext?.let { c -> - SharedPrefsMgr.getInstance(c).putString("och_account", phone) + SharedPrefsMgr.getInstance().putString("och_account", phone) } iTaxiLoginCallback?.loginSuccess() } else { diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusDefaultModel.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusDefaultModel.kt similarity index 90% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusDefaultModel.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusDefaultModel.kt index a2d0ece58f..afaf7bbf28 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusDefaultModel.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusDefaultModel.kt @@ -3,7 +3,7 @@ package com.mogo.och.common.module.biz.model import android.annotation.SuppressLint import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.och.common.module.bean.dpmsg.BusCacheKey import com.mogo.och.common.module.bean.dpmsg.LoginCacheStatus @@ -27,10 +27,10 @@ object OchCommonLoginStatusDefaultModel : OchCommonLoginStatusModel() { override fun loginSuccess(data: DriverStatusQueryRespBean?) { CallerLogger.d(SceneConstant.M_TAXI + TAG, "loginSuccess:${LoginStatusManager.isLogin()}") if (LoginStatusManager.isLogin()) { - SharedPrefsMgr.getInstance(mContext).putString("och_account", data?.data?.phone) + SharedPrefsMgr.getInstance().putString("och_account", data?.data?.phone) loginViewCallback?.hideLoginDialogFragment() } else { - SharedPrefsMgr.getInstance(mContext).putString("och_account", "") + SharedPrefsMgr.getInstance().putString("och_account", "") loginViewCallback?.showLoginDialogFragment() } loginCallback?.loginSuccess(data) diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusModel.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusModel.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusModel.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusModel.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/LoginDefaultManage.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/LoginDefaultManage.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/LoginDefaultManage.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/LoginDefaultManage.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceCallback.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceCallback.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceCallback.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceCallback.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/OchCommonSubscribeImpl.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/OchCommonSubscribeImpl.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/OchCommonSubscribeImpl.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/OchCommonSubscribeImpl.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/interceptor/FRetryWithTime.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/FRetryWithTime.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/interceptor/FRetryWithTime.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/FRetryWithTime.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/interceptor/OchCommonNetInterceptor.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/OchCommonNetInterceptor.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/interceptor/OchCommonNetInterceptor.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/OchCommonNetInterceptor.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/interceptor/OchCommonRetryException.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/OchCommonRetryException.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/interceptor/OchCommonRetryException.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/OchCommonRetryException.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/interceptor/RetryWithTime.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/RetryWithTime.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/network/interceptor/RetryWithTime.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/RetryWithTime.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginPresenter.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginPresenter.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginPresenter.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginPresenter.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginStatusDefaultPresenter.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginStatusDefaultPresenter.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginStatusDefaultPresenter.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginStatusDefaultPresenter.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt similarity index 91% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt index 370bc3932b..71a2afd619 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt @@ -87,7 +87,7 @@ class LoginServiceImpl : LoginService,ILoginViewCallback { parentFragmentManager.beginTransaction().remove(taxiLoginDialog) .commitAllowingStateLoss() } - if (ClickUtils.isFastClick()) { + if (isFastClick()) { taxiLoginDialog.show(parentFragmentManager, TAG) taxiLoginDialog.setOnDismissListener(DialogInterface.OnDismissListener { dialog: DialogInterface? -> taxiLoginDialogFragment?.clear() @@ -95,12 +95,26 @@ class LoginServiceImpl : LoginService,ILoginViewCallback { }) CallerLogger.d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 展示登录界面") }else{ - CallerLogger.d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 展示登录界面 1s内执行一次") + CallerLogger.d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 展示登录界面 5s内执行一次") } } } } } + // 5s 还没有执行说明在anr了 + private val MIN_CLICK_DELAY_TIME = 5000 + private var lastClickTime: Long = 0 + + fun isFastClick(): Boolean { + var flag = false + val curClickTime = System.currentTimeMillis() + if (curClickTime - lastClickTime >= MIN_CLICK_DELAY_TIME) { + flag = true + } + lastClickTime = curClickTime + return flag + } + override fun hideLoginDialogFragment() { CallerLogger.d(SceneConstant.M_TAXI + TAG, "hideLoginDialogFragment 隐藏登录界面") if (taxiLoginDialogFragment?.get() != null) { diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt similarity index 96% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt index ce48f0d692..802b3e6c32 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt @@ -18,9 +18,8 @@ import androidx.fragment.app.DialogFragment import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentTransaction import com.alibaba.android.arouter.launcher.ARouter -import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.commons.debug.DebugConfig import com.mogo.commons.mvp.MvpDialogFragment +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.utilcode.kotlin.onClick @@ -29,10 +28,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.KeyboardUtils import com.mogo.och.common.module.R -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.och.common.module.biz.network.OchCommonServiceManager -import com.mogo.och.common.module.biz.network.interceptor.transformTry import com.mogo.och.common.module.biz.presenter.OchCommonLoginPresenter import com.mogo.och.common.module.biz.provider.LoginService @@ -159,7 +155,7 @@ class TaxiLoginDialogFragment : } } } - actvLoginShowSn.text = MoGoAiCloudClientConfig.getInstance().sn + actvLoginShowSn.text = SharedPrefsMgr.getInstance().sn } /** diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/callback/IShadow.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/callback/IShadow.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/callback/IShadow.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/callback/IShadow.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/callback/OchAdasStartFailureCallback.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/callback/OchAdasStartFailureCallback.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/callback/OchAdasStartFailureCallback.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/callback/OchAdasStartFailureCallback.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/AbnormalFactorsLoopManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/AbnormalFactorsLoopManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/AbnormalFactorsLoopManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/AbnormalFactorsLoopManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/CharterSendTripInfoManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/CharterSendTripInfoManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/CharterSendTripInfoManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/CharterSendTripInfoManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/DriverMoFangFunctionManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/DriverMoFangFunctionManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/DriverMoFangFunctionManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/DriverMoFangFunctionManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/LanSocketManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/LanSocketManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/LanSocketManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/LanSocketManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/autopilotmanager/OCHAdasAbilityManager.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilotmanager/OCHAdasAbilityManager.java similarity index 89% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/autopilotmanager/OCHAdasAbilityManager.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilotmanager/OCHAdasAbilityManager.java index 12c407c763..906e0f45f7 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/autopilotmanager/OCHAdasAbilityManager.java +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilotmanager/OCHAdasAbilityManager.java @@ -14,6 +14,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.Logger; import com.mogo.eagle.core.utilcode.util.ParseVersionUtils; import com.mogo.och.common.module.callback.OchAdasStartFailureCallback; import com.zhjt.mogo.adas.data.bean.AutopilotStatistics; +import com.zhjt.mogo.adas.data.bean.UnableLaunchData; import com.zhjt.mogo.adas.data.bean.UnableLaunchReason; import java.util.ArrayList; @@ -28,6 +29,7 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo private static final String TAG = OCHAdasAbilityManager.class.getSimpleName(); private boolean isAutopilotAbility; + private UnableLaunchData unableLaunchData; private ArrayList unableAutopilotReasons; private String startFailedCode = ""; private String startFailedMessage = ""; @@ -44,6 +46,7 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo public void init(Context context) { this.isAutopilotAbility = CallerAutopilotActionsListenerManager.INSTANCE.isAutopilotAbility(); + this.unableLaunchData = CallerAutopilotActionsListenerManager.INSTANCE.getUnableLaunchData(); this.unableAutopilotReasons = CallerAutopilotActionsListenerManager.INSTANCE.getUnableAutopilotReasons(); initListeners(); } @@ -56,6 +59,9 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo return isAutopilotAbility; } + public String getOriginalData() { + return unableLaunchData == null ? "" : unableLaunchData.getJson(); + } public String getAutopilotUnAbilityReason(){ try { if(unableAutopilotReasons==null||unableAutopilotReasons.isEmpty()){ @@ -97,10 +103,11 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo } @Override - public void onAutopilotAbility(boolean isAutopilotAbility, @Nullable ArrayList unableAutopilotReasons) { + public void onAutopilotAbility(boolean isAutopilotAbility,@Nullable UnableLaunchData unableLaunchData, @Nullable ArrayList unableAutopilotReasons) { this.isAutopilotAbility = isAutopilotAbility; + this.unableLaunchData = unableLaunchData; this.unableAutopilotReasons = unableAutopilotReasons; - Logger.d(TAG, "是否可以启动自动驾驶=" + isAutopilotAbility + " 原因=" + (unableAutopilotReasons == null ? null : unableAutopilotReasons.toString())); + Logger.d(TAG, "是否可以启动自动驾驶=" + isAutopilotAbility + " 原因=" + (unableAutopilotReasons == null ? null : unableAutopilotReasons.toString()) + " 原始数据=" + (unableLaunchData == null ? null : unableLaunchData.getJson())); if (unableAutopilotReasons != null && getMapVersion() < 30600) { //刹车变化回调 Logger.d(TAG,"onAutopilotAbility = " + isAutopilotAbility + diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/beautifymode/BeautifyManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/beautifymode/BeautifyManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/beautifymode/BeautifyManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/beautifymode/BeautifyManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/beautifymode/IBeautifyModeCallback.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/beautifymode/IBeautifyModeCallback.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/beautifymode/IBeautifyModeCallback.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/beautifymode/IBeautifyModeCallback.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/debug/DebugViewWatchDogFragment.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/debug/DebugViewWatchDogFragment.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/debug/DebugViewWatchDogFragment.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/debug/DebugViewWatchDogFragment.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/debug/DebugWatchDogPresenter.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/debug/DebugWatchDogPresenter.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/debug/DebugWatchDogPresenter.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/debug/DebugWatchDogPresenter.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorStatusManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorStatusManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorStatusManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/LightAirconditionDoorStatusManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/TaxiDoorStateManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/TaxiDoorStateManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/TaxiDoorStateManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/TaxiDoorStateManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/callback/DoorStateCallback.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/callback/DoorStateCallback.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/callback/DoorStateCallback.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/callback/DoorStateCallback.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/callback/LightAirconditionDoorCallback.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/callback/LightAirconditionDoorCallback.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/callback/LightAirconditionDoorCallback.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/callback/LightAirconditionDoorCallback.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/AirconditionStatus.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/AirconditionStatus.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/AirconditionStatus.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/AirconditionStatus.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/DoorStatus.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/DoorStatus.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/DoorStatus.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/DoorStatus.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/HeaterStatue.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/HeaterStatue.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/HeaterStatue.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/HeaterStatue.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/LightStatus.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/LightStatus.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/LightStatus.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/devicemanage/data/LightStatus.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/DistanceDegree.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/DistanceDegree.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/DistanceDegree.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/DistanceDegree.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/IDistanceListener.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/IDistanceListener.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/IDistanceListener.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/IDistanceListener.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/StationAndIndex.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/StationAndIndex.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/StationAndIndex.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/StationAndIndex.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryAndDistanceManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryAndDistanceManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryAndDistanceManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryAndDistanceManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryCache.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryCache.kt similarity index 93% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryCache.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryCache.kt index da7f1e62d5..b8a57b24c3 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryCache.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/distancemamager/TrajectoryCache.kt @@ -24,13 +24,13 @@ object TrajectoryCache { path.mkdir() }else { path.deleteRecursively() - CallerLogger.d(M_OCHCOMMON + TAG,"删除缓存") + CallerLogger.d(M_OCHCOMMON + TAG,"删除缓存:${name}") path.mkdir() } val writer = FileWriter("${path.path}/${name}") writer.write(jsonFromObject) writer.close() - CallerLogger.d(M_OCHCOMMON + TAG,"写入缓存") + CallerLogger.d(M_OCHCOMMON + TAG,"写入缓存:${name}") } catch (e: IOException) { e.printStackTrace() } diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/lightmanager/BreakLightManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/lightmanager/BreakLightManager.kt new file mode 100644 index 0000000000..b5789f43b2 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/lightmanager/BreakLightManager.kt @@ -0,0 +1,21 @@ +package com.mogo.och.common.module.manager.lightmanager + +import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLamplightListener +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLamplightListenerManager + +object BreakLightManager : IMoGoChassisLamplightListener { + private const val TAG = "BreakLightManager" + init { + CallerChassisLamplightListenerManager.addListener(TAG, this) + } + + // 刹车灯 + override fun onAutopilotBrakeLightData(brakeLight: Boolean) { + super.onAutopilotBrakeLightData(brakeLight) + } + + enum class BreakLightStatus{ + BREAK_LIGHT, + BREAK_NONE, + } +} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/lightmanager/TurnLightManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/lightmanager/TurnLightManager.kt new file mode 100644 index 0000000000..68f9033c22 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/lightmanager/TurnLightManager.kt @@ -0,0 +1,66 @@ +package com.mogo.och.common.module.manager.lightmanager + +import chassis.Chassis +import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLamplightListener +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLamplightListenerManager +import java.util.concurrent.ConcurrentHashMap +import kotlin.properties.Delegates + +object TurnLightManager : IMoGoChassisLamplightListener { + private const val TAG = "TurnLightManager" + + private val lightStatusChange: ConcurrentHashMap = + ConcurrentHashMap() + + private var turnLightStatus:TurnLightStatus by Delegates.observable(TurnLightStatus.TURN_LIGHT_NONE) { _, oldValue, newValue -> + if (oldValue != newValue) { + if(lightStatusChange.size>0){ + lightStatusChange.forEach { + it.value.statusChange(newValue) + } + } + } + } + + init { + CallerChassisLamplightListenerManager.addListener(TAG, this) + } + + fun addTurnLightStatusChangeListener(tag: String, listener: TurnLightListener) { + if (lightStatusChange.containsKey(tag)) { + return + } + lightStatusChange[tag] = listener + listener.statusChange(turnLightStatus) + } + + + // 转向灯 + override fun onAutopilotLightSwitchData(lightSwitch: Chassis.LightSwitch?) { + super.onAutopilotLightSwitchData(lightSwitch) + lightSwitch?.let { + when (it.number) { + Chassis.LightSwitch.LIGHT_LEFT_VALUE -> { + turnLightStatus = TurnLightStatus.TURN_LIGHT_LEFT + } + Chassis.LightSwitch.LIGHT_RIGHT_VALUE -> { + turnLightStatus = TurnLightStatus.TURN_LIGHT_RIGHT + } + Chassis.LightSwitch.LIGHT_NONE_VALUE -> { + turnLightStatus = TurnLightStatus.TURN_LIGHT_NONE + } + else -> {} + } + } + } + + interface TurnLightListener{ + fun statusChange(newStatus: TurnLightStatus) + } + + enum class TurnLightStatus{ + TURN_LIGHT_LEFT, + TURN_LIGHT_RIGHT, + TURN_LIGHT_NONE, + } +} \ No newline at end of file diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/loopmanager/BizLoopManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/loopmanager/BizLoopManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/loopmanager/BizLoopManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/loopmanager/BizLoopManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/loopmanager/LoopInfo.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/loopmanager/LoopInfo.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/loopmanager/LoopInfo.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/loopmanager/LoopInfo.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OchChainLogManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OchChainLogManager.kt similarity index 93% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OchChainLogManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OchChainLogManager.kt index 6dd342e160..7e958fea09 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OchChainLogManager.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OchChainLogManager.kt @@ -1,8 +1,8 @@ package com.mogo.och.common.module.manager.orderlogmanager import android.text.TextUtils -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.debug.DebugConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.utils.MogoAnalyticUtils import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.deva.chain.ChainConstant @@ -36,7 +36,7 @@ object OchChainLogManager { if(upload) { val plateNum = AppConfigInfo.plateNumber val params = HashMap() - params["sn"] = MoGoAiCloudClientConfig.getInstance().sn + params["sn"] = SharedPrefsMgr.getInstance().sn params["env"] = DebugConfig.getNetMode() params["plate_number"] = if (TextUtils.isEmpty(plateNum)) "" else plateNum params["time"] = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd_HH_mm_ss) diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OrderChainLogManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OrderChainLogManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OrderChainLogManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/orderlogmanager/OrderChainLogManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/OCHPlanningActionsCallback.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/OCHPlanningActionsCallback.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/OCHPlanningActionsCallback.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/OCHPlanningActionsCallback.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/StopSideManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/StopSideManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/StopSideManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/StopSideManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/StopSideStatus.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/StopSideStatus.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/StopSideStatus.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/manager/stopsidemanager/StopSideStatus.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/AmapNaviToDestinationModel.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/map/AmapNaviToDestinationModel.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/AmapNaviToDestinationModel.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/map/AmapNaviToDestinationModel.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/CommonAmapNaviVIew.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/map/CommonAmapNaviVIew.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/CommonAmapNaviVIew.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/map/CommonAmapNaviVIew.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/ICommonNaviChangedCallback.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/map/ICommonNaviChangedCallback.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/ICommonNaviChangedCallback.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/map/ICommonNaviChangedCallback.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/AnimatorDrawableUtil.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/AnimatorDrawableUtil.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/AnimatorDrawableUtil.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/AnimatorDrawableUtil.java diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/BigFrameAnimatorContainer.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/BigFrameAnimatorContainer.kt new file mode 100644 index 0000000000..6e286cbd0d --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/BigFrameAnimatorContainer.kt @@ -0,0 +1,265 @@ +package com.mogo.och.common.module.utils + +import android.graphics.Bitmap +import android.graphics.BitmapFactory +import android.graphics.drawable.BitmapDrawable +import android.os.Handler +import android.os.Looper +import android.os.Message +import android.widget.ImageView +import com.mogo.commons.AbsMogoApplication +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import java.lang.ref.SoftReference +import java.util.concurrent.ArrayBlockingQueue +import java.util.concurrent.Future + +class BigFrameAnimatorContainer (resId: Int, + fps: Int, + imageView: ImageView, + isOnce: Boolean = false,// 一次性的 true 值播放一次 false 重复播放 + initFirstFrame:Boolean = true, + width:Int = -1, + height:Int = -1){ + private val TAG = "BigFrameAnimatorContainer" + private lateinit var mFrames: IntArray // 帧数组 + private var mIndex = 0 // 当前帧 + private var mShouldRun = false // 开始/停止播放用 + private var mIsRunning = false // 动画是否正在播放,防止重复播放 + private var mSoftReferenceImageView: SoftReference? = null // 软引用ImageView,以便及时释放掉 + private var mHandler: Handler? = null + private var mDelayMillis = 0 + var mOnAnimationStoppedListener: OnAnimationStoppedListener? = null//播放停止监听 + var isOnce:Boolean = false + + private val readQueue = ArrayBlockingQueue>(8,true) + private val writeQueue = ArrayBlockingQueue>(8,true) + + private var currentPoll:Pair?=null + + private var decodeImage: Future<*>?=null + + + init { + createAnimation(imageView, getData(resId), fps,initFirstFrame,width,height) + this.isOnce = isOnce + } + + private fun createAnimation( + imageView: ImageView, + frames: IntArray, + fps: Int, + initFirstFrame: Boolean, + width: Int, + height: Int + ) { + mHandler = object: Handler(Looper.myLooper()!!){ + override fun handleMessage(msg: Message) { + super.handleMessage(msg) + CallerLogger.d(TAG,"消息类型:${msg.what}") + if(msg.what==0){ + val imageView = mSoftReferenceImageView!!.get() + if (!mShouldRun || imageView == null) { + mIsRunning = false + if (mOnAnimationStoppedListener != null) { + mOnAnimationStoppedListener!!.AnimationStopped() + } + return + } + mIsRunning = true + //新开线程去读下一帧 + if (imageView.isShown) { + if (!mShouldRun) { + mIsRunning = false + CallerLogger.d(TAG,"暂停播放") + if (mOnAnimationStoppedListener != null) { + mOnAnimationStoppedListener!!.AnimationStopped() + } + return + } + mHandler?.sendEmptyMessageDelayed(0,mDelayMillis.toLong()) + if(currentPoll!=null){ + writeQueue.offer(currentPoll) + currentPoll = null + } + currentPoll = readQueue.poll() + if(currentPoll!=null){ + val bitmap = currentPoll!!.first + imageView.setImageBitmap(bitmap) + }else{ + CallerLogger.d(TAG,"加载过慢了") + } + } + } + } + } + mFrames = frames + mIndex = -1 + mSoftReferenceImageView = SoftReference(imageView) + mShouldRun = false + mIsRunning = false + mDelayMillis = 1000 / fps //帧动画时间间隔,毫秒 + CallerLogger.d(TAG,"两帧时间:${mDelayMillis}") + if(initFirstFrame) { + imageView.setImageResource(mFrames[0]) + } + var widthImage = -1 + var heightImage = -1 + var config = Bitmap.Config.ARGB_8888 + if(width>0&&height>0){ + widthImage = width + heightImage = height + }else{ + try { + val bmp = (imageView.drawable as BitmapDrawable).bitmap + widthImage = bmp.width + heightImage = bmp.height + config = bmp.config + }catch (e:Exception){ + throw RuntimeException("请设置图片或传递大小") + } + } + // 当图片大小类型相同时进行复用,避免频繁GC + + for (i in 0..7) { + val mBitmap = Bitmap.createBitmap(widthImage, heightImage, config) + val mBitmapOptions = BitmapFactory.Options() + //设置Bitmap内存复用 + mBitmapOptions.inBitmap = mBitmap //Bitmap复用内存块,类似对象池,避免不必要的内存分配和回收 + mBitmapOptions.inMutable = true //解码时返回可变Bitmap + mBitmapOptions.inSampleSize = 1 //缩放比例 + writeQueue.add(Pair(mBitmap,mBitmapOptions)) + } + + decodeImage = ThreadUtils.getIoPool().submit { + while (true) { + val startTime = System.currentTimeMillis() + val (bitmap1, options) = writeQueue.take() + mIndex++ + if (mIndex >= mFrames.size){ + mIndex = 0 + if(isOnce){ + stop() + return@submit + } + } + val index: Int = mIndex + val imageRes: Int = mFrames[index] + var bitmap: Bitmap? = null + try { + bitmap = BitmapFactory.decodeResource( + imageView.resources, + imageRes, + options + ) + options.inBitmap = bitmap + } catch (e: Exception) { + e.printStackTrace() + } + if (bitmap != null) { + readQueue.put(Pair(bitmap, options)) + } + val dexTime = System.currentTimeMillis() - startTime + CallerLogger.d(TAG, "decode用时:${dexTime}ms index ${index}") + } + } + } + + //循环读取下一帧 + private val next: Int + get() { + mIndex++ + if (mIndex >= mFrames.size){ + mIndex = 0 + } + return mIndex + } + + @Synchronized + fun reStart(){ + resetQueue() + mIndex = 0 + mIsRunning = false + start() + } + + private fun resetQueue(){ + val temp = mutableListOf>() + + val writeIterator = writeQueue.iterator() + while (writeIterator.hasNext()) { + temp.add(writeIterator.next()) + } + + val readIterator = readQueue.iterator() + while (readIterator.hasNext()) { + temp.add(readIterator.next()) + } + for (pair in temp) { + writeQueue.add(pair) + } + } + + fun release(){ + mShouldRun = false + decodeImage?.cancel(true) + } + + /** + * 播放动画,同步锁防止多线程读帧时,数据安全问题 + */ + @Synchronized + fun start() { + mShouldRun = true + if (mIsRunning) return + mHandler?.removeCallbacksAndMessages(null) + mHandler?.sendEmptyMessage(0) + } + + /** + * 停止播放 + */ + @Synchronized + fun stop() { + mShouldRun = false + } + + fun isPlaying():Boolean{ + return mShouldRun + } + + /** + * 设置停止播放监听 + * @param listener 设置监听 + */ + fun setOnAnimStopListener(listener: OnAnimationStoppedListener?) { + mOnAnimationStoppedListener = listener + } + + /** + * 从xml中读取帧数组 + * @param resId + * @return + */ + fun getData(resId: Int): IntArray { + val array = AbsMogoApplication.getApp().resources.obtainTypedArray(resId) + val len = array.length() + val intArray = IntArray(array.length()) + for (i in 0 until len) { + intArray[i] = array.getResourceId(i, 0) + } + array.recycle() + return intArray + } + + fun setData(mFrames: IntArray){ + this.mFrames = mFrames + } + + /** + * 停止播放监听 + */ + interface OnAnimationStoppedListener { + fun AnimationStopped() + } +} \ No newline at end of file diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/BlinkAnimationUtil.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/BlinkAnimationUtil.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/BlinkAnimationUtil.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/BlinkAnimationUtil.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CallerLoggerUtils.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/CallerLoggerUtils.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CallerLoggerUtils.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/CallerLoggerUtils.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/DateTimeUtil.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/DateTimeUtil.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/DateTimeUtil.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/DateTimeUtil.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/DimenUtil.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/DimenUtil.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/DimenUtil.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/DimenUtil.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FieldUtils.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FieldUtils.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FieldUtils.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FieldUtils.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FileUtils.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FileUtils.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FileUtils.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FileUtils.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FlowBus.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FlowBus.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FlowBus.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FlowBus.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FrameAnimatorContainer.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FrameAnimatorContainer.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FrameAnimatorContainer.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FrameAnimatorContainer.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/NumberFormatUtil.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/NumberFormatUtil.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/NumberFormatUtil.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/NumberFormatUtil.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/OCHThreadPoolManager.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/OCHThreadPoolManager.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/OCHThreadPoolManager.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/OCHThreadPoolManager.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/PermissionUtil.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/PermissionUtil.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/PermissionUtil.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/PermissionUtil.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/PinYinUtil.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/PinYinUtil.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/PinYinUtil.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/PinYinUtil.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/QRUtils.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/QRUtils.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/QRUtils.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/QRUtils.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/RxUtils.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/RxUtils.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/RxUtils.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/RxUtils.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/SoundPoolHelper.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/SoundPoolHelper.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/SoundPoolHelper.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/SoundPoolHelper.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/ToastUtilsOch.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/ToastUtilsOch.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/ToastUtilsOch.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/utils/ToastUtilsOch.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/voice/VoiceManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/voice/VoiceManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/voice/VoiceManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/voice/VoiceManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/voice/VoiceNotice.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/voice/VoiceNotice.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/voice/VoiceNotice.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/voice/VoiceNotice.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/BindQRCodeDialog.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/BindQRCodeDialog.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/BindQRCodeDialog.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/BindQRCodeDialog.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/CountDownTimerExt.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/CountDownTimerExt.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/CountDownTimerExt.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/CountDownTimerExt.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/DriverConnectStatusView.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/DriverConnectStatusView.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/DriverConnectStatusView.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/DriverConnectStatusView.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/MarqueeTextView.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/MarqueeTextView.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/MarqueeTextView.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/MarqueeTextView.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/MineGradientDrawable.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/MineGradientDrawable.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/MineGradientDrawable.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/MineGradientDrawable.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHBorderShadowLayout.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHBorderShadowLayout.java similarity index 95% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHBorderShadowLayout.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHBorderShadowLayout.java index a69aeadc7d..04ec35d7b7 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHBorderShadowLayout.java +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHBorderShadowLayout.java @@ -30,10 +30,10 @@ public class OCHBorderShadowLayout extends LinearLayout { public static final float SHADOW_DEFAULT_RADIUS = DimenUtil.INSTANCE.dp2px(5); //阴影最大偏移量 - public static final float SHADOW_MAX_OFFSET = DimenUtil.INSTANCE.dp2px(20); + public static final float SHADOW_MAX_OFFSET = DimenUtil.INSTANCE.dp2px(90); //阴影最大模糊半径 - public static final float SHADOW_MAX_BLUR = DimenUtil.INSTANCE.dp2px(20); + public static final float SHADOW_MAX_BLUR = DimenUtil.INSTANCE.dp2px(90); @@ -57,6 +57,10 @@ public class OCHBorderShadowLayout extends LinearLayout { //竖直方向位移 private float yOffset = DimenUtil.INSTANCE.dp2px(10); + //横向修正 + private float blurCorrectX = DimenUtil.INSTANCE.dp2px(0); + //纵向修正 + private float blurCorrectY = DimenUtil.INSTANCE.dp2px(0); //背景色 private int bgColor = Color.WHITE; @@ -93,6 +97,8 @@ public class OCHBorderShadowLayout extends LinearLayout { hasEffect = typedArray.getBoolean(R.styleable.ShadowLayout_hasEffect, false); xOffset = typedArray.getDimension(R.styleable.ShadowLayout_xOffset,DimenUtil.INSTANCE.dp2px(10)); yOffset = typedArray.getDimension(R.styleable.ShadowLayout_yOffset,DimenUtil.INSTANCE.dp2px(10)); + blurCorrectX = typedArray.getDimension(R.styleable.ShadowLayout_blurCorrectX,DimenUtil.INSTANCE.dp2px(0)); + blurCorrectY = typedArray.getDimension(R.styleable.ShadowLayout_blurCorrectY,DimenUtil.INSTANCE.dp2px(0)); bgColor = typedArray.getColor(R.styleable.ShadowLayout_bgColor,Color.WHITE); shadowPosition = typedArray.getInt(R.styleable.ShadowLayout_shadow_position,0); typedArray.recycle(); @@ -231,7 +237,7 @@ public class OCHBorderShadowLayout extends LinearLayout { mPaint.setColor(shadowColor); mPaint.setAntiAlias(true); - RectF shadowRect = new RectF(startX,startY,endX,endY); + RectF shadowRect = new RectF(startX+blurCorrectX,startY+blurCorrectY,endX-blurCorrectX,endY-blurCorrectY); RectF locationRectF = new RectF(left,top,mWidthMode-right,mHeightMode-bottom); if (shadowRadius==0){ diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHCommitDialog.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHCommitDialog.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHCommitDialog.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHCommitDialog.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHCornerCustomCardView.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHCornerCustomCardView.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHCornerCustomCardView.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHCornerCustomCardView.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHGradientTextView.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHGradientTextView.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHGradientTextView.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHGradientTextView.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHRadiusImageView.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHRadiusImageView.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHRadiusImageView.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHRadiusImageView.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHRoundConstraintLayout.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHRoundConstraintLayout.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHRoundConstraintLayout.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHRoundConstraintLayout.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHShapeBlurView.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHShapeBlurView.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHShapeBlurView.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHShapeBlurView.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHStockBlurView.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHStockBlurView.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/OCHStockBlurView.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/OCHStockBlurView.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/StartAutopilotAnimationView.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/StartAutopilotAnimationView.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/StartAutopilotAnimationView.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/StartAutopilotAnimationView.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/ZhiView.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/ZhiView.kt similarity index 92% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/ZhiView.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/ZhiView.kt index e3c3144fc9..182dc21e52 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/ZhiView.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/ZhiView.kt @@ -3,14 +3,16 @@ package com.mogo.och.common.module.wigets import android.Manifest import android.content.Context import android.util.AttributeSet +import android.view.LayoutInflater import androidx.appcompat.widget.AppCompatImageView import androidx.core.app.ActivityCompat +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.msgbox.MsgBoxBean import com.mogo.eagle.core.data.msgbox.MsgBoxType import com.mogo.eagle.core.data.msgbox.VoiceMsg import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager import com.mogo.eagle.core.function.main.MainPresenter -import com.mogo.eagle.core.utilcode.kotlin.onClick +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.mogo.permissions.PermissionsDialogUtils @@ -24,6 +26,7 @@ import com.mogo.tts.base.zhi.AsrTextBean import com.mogo.tts.base.zhi.AvatarManager import com.mogo.tts.base.zhi.CallbackWidget import com.mogo.tts.base.zhi.ZhiRecordWinUi +import java.util.concurrent.atomic.AtomicBoolean class ZhiView @JvmOverloads constructor( context: Context, @@ -40,6 +43,7 @@ class ZhiView @JvmOverloads constructor( @Volatile private var status = ZhiRecordWinUi.RecordStatus.STATUS_SILENCE private var animalState = AnimalState.Normal + private val enableZhi = AtomicBoolean(true) init { val xiaozhiNormal = currentAnim.getData(R.array.xiaozhi_normal) val xiaozhiThink = currentAnim.getData(R.array.xiaozhi_think) @@ -106,12 +110,17 @@ class ZhiView @JvmOverloads constructor( }) setOnClickListener { + if (!AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) { + return@setOnClickListener + } if (ClickUtils.isClickTooFrequent(this,3000)) { ToastCharterUtils.showToastShort("请稍后唤醒") return@setOnClickListener } if (PermissionUtil.checkPermission(context,Manifest.permission.RECORD_AUDIO)) { - AvatarManager.wakeupXiaoZhi() + if(enableZhi.get()) { + AvatarManager.wakeupXiaoZhi() + } }else{ //申请悬浮窗权限 val shouldShowRequestPermissionRationale = ActivityUtils.getTopActivity() @@ -130,6 +139,16 @@ class ZhiView @JvmOverloads constructor( } } + fun setZhiEnable(enable:Boolean){ + if(enable){// 可用 + enableZhi.set(true) + AvatarManager.enableXiaoZhi(false) + }else{// 不可用 + enableZhi.set(false) + AvatarManager.enableXiaoZhi(true) + } + } + override fun onWindowFocusChanged(hasWindowFocus: Boolean) { super.onWindowFocusChanged(hasWindowFocus) CallerLogger.d(SceneConstant.M_OCHCOMMON + TAG, "焦点与否:${hasWindowFocus}") diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaBean.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaBean.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaBean.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaBean.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaDataSourceManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaDataSourceManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaDataSourceManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaDataSourceManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaFileCacheManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaFileCacheManager.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaFileCacheManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaFileCacheManager.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaLoopPlayView.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaLoopPlayView.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaLoopPlayView.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaLoopPlayView.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayLogger.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayLogger.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayLogger.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayLogger.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerActivity.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerActivity.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerActivity.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerActivity.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerCustomView.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerCustomView.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerCustomView.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerCustomView.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerFragment.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerFragment.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerFragment.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerFragment.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/BaseSurfaceView.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/BaseSurfaceView.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/BaseSurfaceView.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/BaseSurfaceView.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/FrameFinishCallback.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/FrameFinishCallback.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/FrameFinishCallback.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/FrameFinishCallback.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/FrameSurfaceView.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/FrameSurfaceView.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/FrameSurfaceView.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/FrameSurfaceView.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/LinkedBitmap.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/LinkedBitmap.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/LinkedBitmap.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/LinkedBitmap.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/LinkedBlockingQueue.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/LinkedBlockingQueue.java similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/sfv/LinkedBlockingQueue.java rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/sfv/LinkedBlockingQueue.java diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/toast/ToastCharterUtils.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/toast/ToastCharterUtils.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/toast/ToastCharterUtils.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/toast/ToastCharterUtils.kt diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/toast/ToastCharterView.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/toast/ToastCharterView.kt similarity index 100% rename from OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/wigets/toast/ToastCharterView.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/toast/ToastCharterView.kt diff --git a/OCH/mogo-och-common-module/src/main/res/anim/count_down_rotate.xml b/OCH/common/common/src/main/res/anim/count_down_rotate.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/anim/count_down_rotate.xml rename to OCH/common/common/src/main/res/anim/count_down_rotate.xml diff --git a/OCH/mogo-och-common-module/src/main/res/color/taxi_login_get_code_text_color.xml b/OCH/common/common/src/main/res/color/taxi_login_get_code_text_color.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/color/taxi_login_get_code_text_color.xml rename to OCH/common/common/src/main/res/color/taxi_login_get_code_text_color.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_debug_view_password.png b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_debug_view_password.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_debug_view_password.png rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_debug_view_password.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_00.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_00.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_00.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_00.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_01.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_01.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_01.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_01.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_02.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_02.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_02.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_02.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_03.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_03.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_03.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_03.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_04.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_04.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_04.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_04.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_05.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_05.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_05.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_05.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_06.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_06.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_06.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_06.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_07.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_07.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_07.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_07.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_08.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_08.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_08.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_08.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_09.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_09.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_09.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_09.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_10.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_10.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_10.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_10.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_11.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_11.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_11.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_11.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_12.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_12.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_12.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_12.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_13.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_13.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_13.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_13.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_14.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_14.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_14.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_14.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_15.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_15.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_15.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_15.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_16.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_16.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_16.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_16.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_17.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_17.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_17.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_17.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_18.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_18.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_18.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_18.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_19.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_19.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_19.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_19.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_20.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_20.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_20.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_20.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_21.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_21.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_21.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_21.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_22.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_22.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_22.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_22.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_23.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_23.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_23.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_23.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_24.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_24.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_24.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_24.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_25.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_25.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_25.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_25.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_26.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_26.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_26.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_26.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_27.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_27.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_27.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_27.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_28.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_28.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_28.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_28.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_29.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_29.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_29.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_29.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_30.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_30.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_30.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_30.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_31.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_31.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_31.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_31.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_34.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_34.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_34.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_34.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_35.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_35.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_35.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_35.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_36.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_36.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_36.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_36.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_37.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_37.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_37.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_37.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_38.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_38.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_38.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_38.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_39.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_39.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_39.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_39.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_40.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_40.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_40.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_40.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_41.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_41.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_41.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_41.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_42.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_42.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_42.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_42.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_43.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_43.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_43.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_43.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_44.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_44.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_44.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_44.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_45.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_45.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_45.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_45.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_46.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_46.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_46.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_46.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_47.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_47.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_47.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_47.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_48.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_48.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_48.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_48.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_49.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_49.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_49.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_49.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_50.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_50.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_50.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_50.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_51.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_51.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_51.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_51.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_52.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_52.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_52.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_52.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_53.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_53.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_53.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_53.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_54.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_54.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_54.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_54.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_55.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_55.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_55.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_55.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_56.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_56.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_56.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_56.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_57.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_57.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_57.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_57.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_58.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_58.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_58.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_58.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_59.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_59.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_59.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_59.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_60.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_60.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_60.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_60.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_61.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_61.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_61.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_61.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_62.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_62.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_62.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_62.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_63.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_63.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_63.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_63.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_64.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_64.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_64.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_64.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_65.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_65.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_65.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_65.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_66.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_66.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_66.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_66.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_67.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_67.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_67.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_67.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_68.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_68.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_68.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_68.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_69.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_69.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_69.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_69.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_70.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_70.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_70.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_70.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_71.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_71.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_71.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_71.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_01.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_01.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_01.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_01.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_02.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_02.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_02.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_02.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_03.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_03.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_03.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_03.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_04.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_04.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_04.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_04.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_05.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_05.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_05.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_05.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_06.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_06.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_06.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_06.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_07.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_07.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_07.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_07.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_08.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_08.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_08.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_08.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_09.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_09.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_09.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_09.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_10.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_10.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_10.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_10.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_11.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_11.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_11.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_11.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_12.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_12.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_12.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_12.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_13.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_13.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_13.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_13.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_14.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_14.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_14.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_14.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_15.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_15.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_15.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_15.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_16.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_16.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_16.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_16.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_17.webp b/OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_17.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_17.webp rename to OCH/common/common/src/main/res/drawable-nodpi/charter_p_xiaozhi_think_normal_17.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/count_down_bg.png b/OCH/common/common/src/main/res/drawable-nodpi/count_down_bg.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/count_down_bg.png rename to OCH/common/common/src/main/res/drawable-nodpi/count_down_bg.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/count_down_rotate_bg.png b/OCH/common/common/src/main/res/drawable-nodpi/count_down_rotate_bg.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/count_down_rotate_bg.png rename to OCH/common/common/src/main/res/drawable-nodpi/count_down_rotate_bg.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/driver_mofang_function_bg.png b/OCH/common/common/src/main/res/drawable-nodpi/driver_mofang_function_bg.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/driver_mofang_function_bg.png rename to OCH/common/common/src/main/res/drawable-nodpi/driver_mofang_function_bg.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/video_holder.png b/OCH/common/common/src/main/res/drawable-nodpi/video_holder.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/video_holder.png rename to OCH/common/common/src/main/res/drawable-nodpi/video_holder.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0000.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0000.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0000.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0000.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0001.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0001.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0001.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0001.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0002.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0002.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0002.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0002.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0003.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0003.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0003.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0003.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0004.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0004.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0004.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0004.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0005.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0005.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0005.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0005.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0006.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0006.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0006.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0006.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0007.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0007.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0007.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0007.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0008.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0008.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0008.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0008.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0009.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0009.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0009.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0009.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0010.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0010.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0010.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0010.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0011.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0011.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0011.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0011.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0012.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0012.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0012.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0012.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0013.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0013.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0013.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0013.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0014.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0014.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0014.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0014.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0015.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0015.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0015.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0015.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0016.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0016.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0016.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0016.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0017.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0017.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0017.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0017.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0018.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0018.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0018.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0018.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0019.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0019.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0019.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0019.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0020.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0020.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0020.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0020.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0021.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0021.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0021.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0021.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0022.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0022.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0022.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0022.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0023.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0023.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0023.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0023.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0024.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0024.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0024.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0024.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0025.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0025.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0025.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0025.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0026.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0026.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0026.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0026.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0027.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0027.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0027.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0027.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0028.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0028.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0028.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0028.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0029.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0029.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0029.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0029.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0030.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0030.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0030.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0030.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0031.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0031.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0031.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0031.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0032.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0032.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0032.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0032.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0033.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0033.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0033.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0033.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0034.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0034.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0034.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0034.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0035.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0035.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0035.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0035.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0036.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0036.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0036.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0036.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0037.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0037.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0037.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0037.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0038.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0038.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0038.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0038.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0039.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0039.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0039.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0039.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0040.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0040.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0040.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0040.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0041.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0041.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0041.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0041.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0042.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0042.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0042.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0042.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0043.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0043.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0043.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0043.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0044.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0044.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0044.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0044.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0045.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0045.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0045.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0045.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0046.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0046.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0046.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0046.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0047.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0047.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0047.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0047.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0048.png b/OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0048.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-nodpi/xiaozhi_normal_0048.png rename to OCH/common/common/src/main/res/drawable-nodpi/xiaozhi_normal_0048.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/bus_ic_login_bg.webp b/OCH/common/common/src/main/res/drawable-xhdpi/bus_ic_login_bg.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/bus_ic_login_bg.webp rename to OCH/common/common/src/main/res/drawable-xhdpi/bus_ic_login_bg.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/icon_qr_center_logo.png b/OCH/common/common/src/main/res/drawable-xhdpi/icon_qr_center_logo.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/icon_qr_center_logo.png rename to OCH/common/common/src/main/res/drawable-xhdpi/icon_qr_center_logo.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/taxi_ic_login_bg.webp b/OCH/common/common/src/main/res/drawable-xhdpi/taxi_ic_login_bg.webp similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/taxi_ic_login_bg.webp rename to OCH/common/common/src/main/res/drawable-xhdpi/taxi_ic_login_bg.webp diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/taxi_navi_arrow_icon.png b/OCH/common/common/src/main/res/drawable-xhdpi/taxi_navi_arrow_icon.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/taxi_navi_arrow_icon.png rename to OCH/common/common/src/main/res/drawable-xhdpi/taxi_navi_arrow_icon.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/taxi_navi_direction_icon.png b/OCH/common/common/src/main/res/drawable-xhdpi/taxi_navi_direction_icon.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/taxi_navi_direction_icon.png rename to OCH/common/common/src/main/res/drawable-xhdpi/taxi_navi_direction_icon.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/taxi_navi_line_icon.png b/OCH/common/common/src/main/res/drawable-xhdpi/taxi_navi_line_icon.png similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/taxi_navi_line_icon.png rename to OCH/common/common/src/main/res/drawable-xhdpi/taxi_navi_line_icon.png diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/bind_driver_qr_bg.xml b/OCH/common/common/src/main/res/drawable/bind_driver_qr_bg.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/bind_driver_qr_bg.xml rename to OCH/common/common/src/main/res/drawable/bind_driver_qr_bg.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/charter_p_debugview_bg.xml b/OCH/common/common/src/main/res/drawable/charter_p_debugview_bg.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/charter_p_debugview_bg.xml rename to OCH/common/common/src/main/res/drawable/charter_p_debugview_bg.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/charter_p_debugview_cancle.xml b/OCH/common/common/src/main/res/drawable/charter_p_debugview_cancle.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/charter_p_debugview_cancle.xml rename to OCH/common/common/src/main/res/drawable/charter_p_debugview_cancle.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/charter_p_debugview_edit_bg.xml b/OCH/common/common/src/main/res/drawable/charter_p_debugview_edit_bg.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/charter_p_debugview_edit_bg.xml rename to OCH/common/common/src/main/res/drawable/charter_p_debugview_edit_bg.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/charter_p_debugview_submit.xml b/OCH/common/common/src/main/res/drawable/charter_p_debugview_submit.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/charter_p_debugview_submit.xml rename to OCH/common/common/src/main/res/drawable/charter_p_debugview_submit.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/charter_p_toast_shape.xml b/OCH/common/common/src/main/res/drawable/charter_p_toast_shape.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/charter_p_toast_shape.xml rename to OCH/common/common/src/main/res/drawable/charter_p_toast_shape.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/driver_connect_statis.xml b/OCH/common/common/src/main/res/drawable/driver_connect_statis.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/driver_connect_statis.xml rename to OCH/common/common/src/main/res/drawable/driver_connect_statis.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/start_autopilot_animation_bkg_top.xml b/OCH/common/common/src/main/res/drawable/start_autopilot_animation_bkg_top.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/start_autopilot_animation_bkg_top.xml rename to OCH/common/common/src/main/res/drawable/start_autopilot_animation_bkg_top.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/start_autopilot_tip_bkg_top.xml b/OCH/common/common/src/main/res/drawable/start_autopilot_tip_bkg_top.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/start_autopilot_tip_bkg_top.xml rename to OCH/common/common/src/main/res/drawable/start_autopilot_tip_bkg_top.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_bg_selector.xml b/OCH/common/common/src/main/res/drawable/taxi_login_bg_selector.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_bg_selector.xml rename to OCH/common/common/src/main/res/drawable/taxi_login_bg_selector.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_enable.xml b/OCH/common/common/src/main/res/drawable/taxi_login_enable.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_enable.xml rename to OCH/common/common/src/main/res/drawable/taxi_login_enable.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_get_code_text_color.xml b/OCH/common/common/src/main/res/drawable/taxi_login_get_code_text_color.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_get_code_text_color.xml rename to OCH/common/common/src/main/res/drawable/taxi_login_get_code_text_color.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_phone_error.xml b/OCH/common/common/src/main/res/drawable/taxi_login_phone_error.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_phone_error.xml rename to OCH/common/common/src/main/res/drawable/taxi_login_phone_error.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_phone_normal.xml b/OCH/common/common/src/main/res/drawable/taxi_login_phone_normal.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_phone_normal.xml rename to OCH/common/common/src/main/res/drawable/taxi_login_phone_normal.xml diff --git a/OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_unenable.xml b/OCH/common/common/src/main/res/drawable/taxi_login_unenable.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/drawable/taxi_login_unenable.xml rename to OCH/common/common/src/main/res/drawable/taxi_login_unenable.xml diff --git a/OCH/mogo-och-common-module/src/main/res/layout/activity_video_player.xml b/OCH/common/common/src/main/res/layout/activity_video_player.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/layout/activity_video_player.xml rename to OCH/common/common/src/main/res/layout/activity_video_player.xml diff --git a/OCH/mogo-och-common-module/src/main/res/layout/bind_driver_qr_view.xml b/OCH/common/common/src/main/res/layout/bind_driver_qr_view.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/layout/bind_driver_qr_view.xml rename to OCH/common/common/src/main/res/layout/bind_driver_qr_view.xml diff --git a/OCH/mogo-och-common-module/src/main/res/layout/charter_p_view_toast.xml b/OCH/common/common/src/main/res/layout/charter_p_view_toast.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/layout/charter_p_view_toast.xml rename to OCH/common/common/src/main/res/layout/charter_p_view_toast.xml diff --git a/OCH/mogo-och-common-module/src/main/res/layout/dialog_bus_commit.xml b/OCH/common/common/src/main/res/layout/dialog_bus_commit.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/layout/dialog_bus_commit.xml rename to OCH/common/common/src/main/res/layout/dialog_bus_commit.xml diff --git a/OCH/mogo-och-common-module/src/main/res/layout/fragment_video_player.xml b/OCH/common/common/src/main/res/layout/fragment_video_player.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/layout/fragment_video_player.xml rename to OCH/common/common/src/main/res/layout/fragment_video_player.xml diff --git a/OCH/mogo-och-common-module/src/main/res/layout/m1_debugview_pass.xml b/OCH/common/common/src/main/res/layout/m1_debugview_pass.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/layout/m1_debugview_pass.xml rename to OCH/common/common/src/main/res/layout/m1_debugview_pass.xml diff --git a/OCH/mogo-och-common-module/src/main/res/layout/start_autopilot_animation_view.xml b/OCH/common/common/src/main/res/layout/start_autopilot_animation_view.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/layout/start_autopilot_animation_view.xml rename to OCH/common/common/src/main/res/layout/start_autopilot_animation_view.xml diff --git a/OCH/mogo-och-common-module/src/main/res/layout/taxi_common_amap_navi_view.xml b/OCH/common/common/src/main/res/layout/taxi_common_amap_navi_view.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/layout/taxi_common_amap_navi_view.xml rename to OCH/common/common/src/main/res/layout/taxi_common_amap_navi_view.xml diff --git a/OCH/mogo-och-common-module/src/main/res/layout/taxi_login_view.xml b/OCH/common/common/src/main/res/layout/taxi_login_view.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/layout/taxi_login_view.xml rename to OCH/common/common/src/main/res/layout/taxi_login_view.xml diff --git a/OCH/mogo-och-common-module/src/main/res/raw/startautopilot.wav b/OCH/common/common/src/main/res/raw/startautopilot.wav similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/raw/startautopilot.wav rename to OCH/common/common/src/main/res/raw/startautopilot.wav diff --git a/OCH/mogo-och-common-module/src/main/res/values/arrays.xml b/OCH/common/common/src/main/res/values/arrays.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/values/arrays.xml rename to OCH/common/common/src/main/res/values/arrays.xml diff --git a/OCH/mogo-och-common-module/src/main/res/values/attrs.xml b/OCH/common/common/src/main/res/values/attrs.xml similarity index 93% rename from OCH/mogo-och-common-module/src/main/res/values/attrs.xml rename to OCH/common/common/src/main/res/values/attrs.xml index 596cd32cc6..a500f7ca79 100644 --- a/OCH/mogo-och-common-module/src/main/res/values/attrs.xml +++ b/OCH/common/common/src/main/res/values/attrs.xml @@ -24,6 +24,10 @@ + + + + diff --git a/OCH/mogo-och-common-module/src/main/res/values/colors.xml b/OCH/common/common/src/main/res/values/colors.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/values/colors.xml rename to OCH/common/common/src/main/res/values/colors.xml diff --git a/OCH/mogo-och-common-module/src/main/res/values/strings.xml b/OCH/common/common/src/main/res/values/strings.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/values/strings.xml rename to OCH/common/common/src/main/res/values/strings.xml diff --git a/OCH/mogo-och-common-module/src/main/res/values/styles.xml b/OCH/common/common/src/main/res/values/styles.xml similarity index 100% rename from OCH/mogo-och-common-module/src/main/res/values/styles.xml rename to OCH/common/common/src/main/res/values/styles.xml diff --git a/OCH/mogo-och-common-module/src/test/java/com/mogo/och/common/module/ExampleUnitTest.kt b/OCH/common/common/src/test/java/com/mogo/och/common/module/ExampleUnitTest.kt similarity index 99% rename from OCH/mogo-och-common-module/src/test/java/com/mogo/och/common/module/ExampleUnitTest.kt rename to OCH/common/common/src/test/java/com/mogo/och/common/module/ExampleUnitTest.kt index d914d4a1b7..05639c7cbd 100644 --- a/OCH/mogo-och-common-module/src/test/java/com/mogo/och/common/module/ExampleUnitTest.kt +++ b/OCH/common/common/src/test/java/com/mogo/och/common/module/ExampleUnitTest.kt @@ -8,7 +8,6 @@ import com.mogo.eagle.core.utilcode.util.CoordinateUtils import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager import com.mogo.och.common.module.utils.DateTimeUtil -import com.zhidao.thirdlogin.utils.Aes import org.junit.Assert.* import org.junit.Test @@ -20,13 +19,7 @@ import org.junit.Test class ExampleUnitTest { @Test fun addition_isCorrect() { - assertEquals(4, 2 + 2) - val json = "{\"device\":\"03cdfec225781de0\",\"time\":" + System.currentTimeMillis() + "}" - val IVS = "tqXMOa6g2w3S4sso+DqCfKAHRNA5jg3Mzp45e33zHFA=" - val KEY = "y5VajBH+sTHonJP2a5Uh6uDZcK0fxNB5ORHmbg9B3V0=" - val encrypt: String = Aes.encrypt(json, KEY, IVS, "UTF-8") - println(encrypt) } @Test fun testData() { diff --git a/OCH/mogo-och-data/.gitignore b/OCH/common/data/.gitignore similarity index 100% rename from OCH/mogo-och-data/.gitignore rename to OCH/common/data/.gitignore diff --git a/OCH/mogo-och-data/build.gradle b/OCH/common/data/build.gradle similarity index 100% rename from OCH/mogo-och-data/build.gradle rename to OCH/common/data/build.gradle diff --git a/OCH/mogo-och-data/consumer-rules.pro b/OCH/common/data/consumer-rules.pro similarity index 100% rename from OCH/mogo-och-data/consumer-rules.pro rename to OCH/common/data/consumer-rules.pro diff --git a/OCH/mogo-och-data/proguard-rules.pro b/OCH/common/data/proguard-rules.pro similarity index 100% rename from OCH/mogo-och-data/proguard-rules.pro rename to OCH/common/data/proguard-rules.pro diff --git a/OCH/mogo-och-data/src/main/AndroidManifest.xml b/OCH/common/data/src/main/AndroidManifest.xml similarity index 100% rename from OCH/mogo-och-data/src/main/AndroidManifest.xml rename to OCH/common/data/src/main/AndroidManifest.xml diff --git a/OCH/mogo-och-data/src/main/java/com/mogo/och/data/bean/BusRoutesResult.java b/OCH/common/data/src/main/java/com/mogo/och/data/bean/BusRoutesResult.java similarity index 100% rename from OCH/mogo-och-data/src/main/java/com/mogo/och/data/bean/BusRoutesResult.java rename to OCH/common/data/src/main/java/com/mogo/och/data/bean/BusRoutesResult.java diff --git a/OCH/mogo-och-data/src/main/java/com/mogo/och/data/bean/BusStationBean.java b/OCH/common/data/src/main/java/com/mogo/och/data/bean/BusStationBean.java similarity index 100% rename from OCH/mogo-och-data/src/main/java/com/mogo/och/data/bean/BusStationBean.java rename to OCH/common/data/src/main/java/com/mogo/och/data/bean/BusStationBean.java diff --git a/OCH/mogo-och-data/src/main/java/com/mogo/och/data/bean/BusTransferData.kt b/OCH/common/data/src/main/java/com/mogo/och/data/bean/BusTransferData.kt similarity index 100% rename from OCH/mogo-och-data/src/main/java/com/mogo/och/data/bean/BusTransferData.kt rename to OCH/common/data/src/main/java/com/mogo/och/data/bean/BusTransferData.kt diff --git a/OCH/mogo-och-data/src/main/java/com/mogo/och/data/manager/cache/CacheDataManager.kt b/OCH/common/data/src/main/java/com/mogo/och/data/manager/cache/CacheDataManager.kt similarity index 91% rename from OCH/mogo-och-data/src/main/java/com/mogo/och/data/manager/cache/CacheDataManager.kt rename to OCH/common/data/src/main/java/com/mogo/och/data/manager/cache/CacheDataManager.kt index ee6df51dd7..a2178e8bb2 100644 --- a/OCH/mogo-och-data/src/main/java/com/mogo/och/data/manager/cache/CacheDataManager.kt +++ b/OCH/common/data/src/main/java/com/mogo/och/data/manager/cache/CacheDataManager.kt @@ -1,7 +1,7 @@ package com.mogo.och.data.manager.cache import android.content.Context -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.elegant.utils.storage.SharedPrefsMgr /** * @author: wangmingjun diff --git a/OCH/shuttle/driver/build.gradle b/OCH/shuttle/driver/build.gradle index b4f05214d9..49905dadd6 100644 --- a/OCH/shuttle/driver/build.gradle +++ b/OCH/shuttle/driver/build.gradle @@ -58,8 +58,8 @@ dependencies { implementation rootProject.ext.dependencies.androidxrecyclerview compileOnly rootProject.ext.dependencies.recyclerviewadapterhelper - implementation project(":OCH:mogo-och-common-module") - implementation project(":OCH:mogo-och-data") + implementation project(":OCH:common:common") + implementation project(":OCH:common:data") compileOnly project(":libraries:mogo-map") } diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusCloseTaskRequest.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusCloseTaskRequest.java index 010c5812d0..14346ad51a 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusCloseTaskRequest.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusCloseTaskRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.och.common.module.utils.DateTimeUtil; /** @@ -12,7 +12,7 @@ public class BusCloseTaskRequest { private int taskId; private long writeVersion; public BusCloseTaskRequest(int taskId) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.taskId = taskId; this.writeVersion = DateTimeUtil.getCurrentTimeStamp(); } diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java index 96d4435ef4..11b865f15c 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; public /** @@ -15,7 +15,7 @@ class BusOperationStatusRequest { private double lat; private double lon; public BusOperationStatusRequest(double lon, double lat) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.lat = lat; this.lon = lon; } diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java index adf7878ec5..f6c9828873 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; /** * @author congtaowang @@ -12,6 +12,6 @@ public class BusQueryLineStationsRequest { private String sn; public BusQueryLineStationsRequest() { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); } } diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java index ed3aa1a8e8..75432c7782 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.och.common.module.utils.DateTimeUtil; /** @@ -13,7 +13,7 @@ public class BusResetDrivingLineRequest { public long writeVersion; //更新时间戳 public BusResetDrivingLineRequest(int taskId) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.taskId = taskId; this.writeVersion = DateTimeUtil.getCurrentTimeStamp(); } diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusResetLineStatusRequest.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusResetLineStatusRequest.java index 595ceafce3..e3642a892e 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusResetLineStatusRequest.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusResetLineStatusRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; public /** @@ -13,7 +13,7 @@ class BusResetLineStatusRequest { private String sn; public BusResetLineStatusRequest() { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); } public String getSn() { diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java index a76f2be2cb..92f5f22ea4 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java @@ -1,7 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; -import com.mogo.och.common.module.utils.DateTimeUtil; +import com.mogo.commons.storage.SharedPrefsMgr; /** * @author congtaowang @@ -18,7 +17,7 @@ public class BusUpdateSiteStatusRequest { public long writeVersion; //更新时间戳 public BusUpdateSiteStatusRequest(int taskId,int siteId,int seq, long writeVersion) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.seq = seq; this.siteId = siteId; this.taskId = taskId; diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusWriteOffPassengersQueryRequest.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusWriteOffPassengersQueryRequest.java index 6f07456c78..3e41b91727 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusWriteOffPassengersQueryRequest.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/BusWriteOffPassengersQueryRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; /** * 查询核销乘客 @@ -12,7 +12,7 @@ public class BusWriteOffPassengersQueryRequest { private int siteId; private long verificationTime; public BusWriteOffPassengersQueryRequest(int taskId, int siteId,long prePassengerTime) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.taskId = taskId; this.siteId = siteId; this.verificationTime = prePassengerTime; diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/QueryLeaveAwayPassengersRequest.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/QueryLeaveAwayPassengersRequest.java index 443fd76211..72e5a3a68f 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/QueryLeaveAwayPassengersRequest.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/bean/QueryLeaveAwayPassengersRequest.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; /** * 查询下车乘客请求参数 @@ -13,7 +13,7 @@ public class QueryLeaveAwayPassengersRequest { private int siteId; //站点id public QueryLeaveAwayPassengersRequest(int seq, int siteId) { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); + this.sn = SharedPrefsMgr.getInstance().getSn(); this.seq = seq; this.siteId = siteId; } diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/constant/BusConst.kt b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/constant/BusConst.kt index 7eadb3d41f..d62d02cebe 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/constant/BusConst.kt +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/constant/BusConst.kt @@ -47,6 +47,8 @@ class BusConst { const val EVENT_PARAM_START_NAME = "start_name" const val EVENT_PARAM_END_NAME = "end_name" const val EVENT_PARAM_LINE_ID = "line_id" + const val EVENT_PARAM_MAP_ORIGINAL_DATA = "map_original_data" // 域控原始状态信息 + const val EVENT_PARAM_AUTOPILOT_STATE = "autopilot_state" //原始的自动驾驶状态 const val EVENT_PARAM_START_RESULT = "start_autopilot" // true/false const val EVENT_PARAM_START_FAILURE_CODE = "start_autopilot_failure_code" // 启动自驾失败code const val EVENT_PARAM_START_FAILURE_MSG = "start_autopilot_failure_msg" // 启动自驾失败原因 diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java index e71e70d28c..4fcd04f64e 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java @@ -16,7 +16,7 @@ import androidx.constraintlayout.widget.Group; import androidx.annotation.Nullable; import com.alibaba.android.arouter.launcher.ARouter; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.temp.EventLogout; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; @@ -134,9 +134,9 @@ public class BusFragment extends BaseBusTabFragment mPresenter.logout(); }else if (eventLogout.getMessgae() == EventLogout.SHOW_QR_TYPE){ //显示二维码 CallerLogger.d(M_BUS + TAG,"changeOverview Event qrcode,sn = " - + MoGoAiCloudClientConfig.getInstance().getSn()); + + SharedPrefsMgr.getInstance().getSn()); String qrUrl = String.format(FunctionBuildConfig.urlJson.getBindDriverQRUrl(), - MoGoAiCloudClientConfig.getInstance().getSn()); + SharedPrefsMgr.getInstance().getSn()); Bitmap bmQr = QRUtilsKt.createQRCodeWithPicture( BitmapFactory.decodeResource(getResources(), R.drawable.icon_qr_center_logo) ,qrUrl, AutoSizeUtils.dp2px(getContext(),340f), diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/model/BusLineModel.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/model/BusLineModel.java index 244ef9526d..0d9094f33b 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/model/BusLineModel.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/model/BusLineModel.java @@ -3,7 +3,7 @@ package com.mogo.och.bus.model; import android.content.Context; import com.mogo.commons.AbsMogoApplication; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.util.NetworkUtils; import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.och.bus.R; @@ -119,7 +119,7 @@ public class BusLineModel { OrderServiceManager.switchLine(mContext,taskId, new OchCommonServiceCallback() { @Override public void onSuccess(BusRoutesResponse o) { - SharedPrefsMgr.getInstance(mContext).putInt(BusSwitchLineActivity.LASTCOMMITLINEID,lineId); + SharedPrefsMgr.getInstance().putInt(BusSwitchLineActivity.LASTCOMMITLINEID,lineId); if (mBusLinesCallback != null){ mBusLinesCallback.onChangeLineIdSuccess(); } diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/OrderServiceManager.kt b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/OrderServiceManager.kt index f081f08a34..387ef5ba98 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/OrderServiceManager.kt +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/OrderServiceManager.kt @@ -4,6 +4,7 @@ import android.content.Context import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.bus.bean.* import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.biz.network.OchCommonServiceCallback @@ -31,7 +32,7 @@ object OrderServiceManager { //获取当前高德坐标 mService.queryBusRoutes( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusQueryLineStationsRequest() ) .transformTry() @@ -52,7 +53,7 @@ object OrderServiceManager { ) { mService.switchLine( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusResetDrivingLineRequest(taskId) ) .transformTry() @@ -69,7 +70,7 @@ object OrderServiceManager { fun abortTask(context: Context, taskId: Int, callback: OchCommonServiceCallback?) { mService.abortTask( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusCloseTaskRequest(taskId) ) .transformTry() @@ -86,7 +87,7 @@ object OrderServiceManager { fun endTask(context: Context, taskId: Int, callback: OchCommonServiceCallback?) { mService.endTask( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusCloseTaskRequest(taskId) ) .transformTry() @@ -111,7 +112,7 @@ object OrderServiceManager { ) { mService.leaveStation( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusUpdateSiteStatusRequest(taskId, siteId, seq,writeVersion) ) .transformTry() @@ -132,7 +133,7 @@ object OrderServiceManager { ) { mService.arriveSiteStation( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, BusUpdateSiteStatusRequest(taskId, siteId, seq, writeVersion) ) .transformTry() @@ -155,7 +156,7 @@ object OrderServiceManager { ) { mService.queryStationLeaveAwayPassengers( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, QueryLeaveAwayPassengersRequest(seq, siteId) ) .transformTry() @@ -171,8 +172,8 @@ object OrderServiceManager { fun queryBusOrders(context: Context, callback: OchCommonServiceCallback?) { mService.queryBusOrders( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryBusOrders")) @@ -181,8 +182,8 @@ object OrderServiceManager { fun queryBusLines(context: Context, callback: OchCommonServiceCallback?) { mService.queryBusLines( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryBusLines")) @@ -195,7 +196,7 @@ object OrderServiceManager { ) { mService.queryBusTaskByLineId( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, lineId ) .transformTry() diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt index d331b69633..a31ffeb463 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt @@ -11,6 +11,7 @@ import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.cloud.passport.MoGoAiCloudClient import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.biz.network.interceptor.transformTry @@ -39,7 +40,7 @@ object OchCommonServiceManager { ) { mLoginServiceApi.getPhoneCode( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginSmsReqBean(phone) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) @@ -56,10 +57,10 @@ object OchCommonServiceManager { location4Login: TaxiLoginReqBean.Location4Login?, callback: OchCommonServiceCallback? ) { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn mLoginServiceApi.gotoLoginBycode4Bus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginReqBean(phone, code, sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) } @@ -75,8 +76,8 @@ object OchCommonServiceManager { ) { mLoginServiceApi.logout4Bus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - TaxiLogoutReqBean(MoGoAiCloudClientConfig.getInstance().sn, location4Login) + SharedPrefsMgr.getInstance().token, + TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) } @@ -91,15 +92,15 @@ object OchCommonServiceManager { context: Context, callback: OchCommonServiceCallback? ) { - if (MoGoAiCloudClientConfig.getInstance().token.isEmpty()) { + if (SharedPrefsMgr.getInstance().token.isEmpty()) { callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") MoGoAiCloudClient.getInstance().refreshToken() return } mLoginServiceApi.queryDriverServiceStatusAndLoginStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) } diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt index eff63dd20b..412574bdc4 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt @@ -12,7 +12,7 @@ import androidx.constraintlayout.widget.ConstraintLayout import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import com.mogo.commons.mvp.MvpActivity -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.bus.presenter.BusLinePresenter import com.mogo.och.bus.ui.adapter.SwitchLineAdapter import com.mogo.och.bus.bean.BusQueryLinesResponse @@ -118,7 +118,7 @@ class BusSwitchLineActivity : MvpActivity showNoData(true) return } - val lastCommitLineid = SharedPrefsMgr.getInstance(this).getInt(LASTCOMMITLINEID, -1) + val lastCommitLineid = SharedPrefsMgr.getInstance().getInt(LASTCOMMITLINEID, -1) if (data.data != null && data.data.size > 0) { showNoData(false) mData.clear() diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.java index 3bbb0f8154..789e8491fd 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.java @@ -4,8 +4,8 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS import android.text.TextUtils; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.commons.debug.DebugConfig; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.data.app.AppConfigInfo; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.commons.utils.MogoAnalyticUtils; @@ -14,6 +14,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.DateTimeUtils; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.och.bus.constant.BusConst; +import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; import java.util.HashMap; @@ -55,6 +56,11 @@ public class BusAnalyticsManager { mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_FAILURE_CODE, failCode); mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_FAILURE_MSG, failMsg); } + + mStartAutopilotParams.put(BusConst.EVENT_PARAM_MAP_ORIGINAL_DATA, + OCHAdasAbilityManager.getInstance().getOriginalData()); + mStartAutopilotParams.put(BusConst.EVENT_PARAM_AUTOPILOT_STATE, + CallerAutoPilotStatusListenerManager.INSTANCE.getState()); mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_RESULT , CallerAutoPilotStatusListenerManager.INSTANCE.getState() == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING); @@ -89,7 +95,7 @@ public class BusAnalyticsManager { boolean restart, boolean send, String startName, String endName, int lineId) { mStartAutopilotKey = restart ? BusConst.EVENT_KEY_RESTART_AUTOPILOT : BusConst.EVENT_KEY_START_SERVICE; - String sn = MoGoAiCloudClientConfig.getInstance().getSn(); + String sn = SharedPrefsMgr.getInstance().getSn(); String plateNum = AppConfigInfo.INSTANCE.getPlateNumber(); String dateTime = DateTimeUtils.getTimeText( System.currentTimeMillis(), DateTimeUtils.yyyy_MM_dd_HH_mm_ss); @@ -125,7 +131,7 @@ public class BusAnalyticsManager { */ public void triggerUnableStartAPReasonEvent(String startName, String endName, int lineId, String reason) { - String sn = MoGoAiCloudClientConfig.getInstance().getSn(); + String sn = SharedPrefsMgr.getInstance().getSn(); String plateNum = AppConfigInfo.INSTANCE.getPlateNumber(); String dateTime = DateTimeUtils.getTimeText( System.currentTimeMillis(), DateTimeUtils.yyyy_MM_dd_HH_mm_ss); diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/view/SlidePanelView.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/view/SlidePanelView.java index bcb895c955..479636cfbb 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/view/SlidePanelView.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/view/SlidePanelView.java @@ -22,6 +22,8 @@ import android.view.animation.DecelerateInterpolator; import androidx.annotation.Nullable; import com.mogo.commons.AbsMogoApplication; +import com.mogo.eagle.core.utilcode.util.ThreadUtils; +import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.och.bus.R; import me.jessyan.autosize.AutoSizeConfig; @@ -127,12 +129,15 @@ public class SlidePanelView extends View { textGradient.setLocalMatrix(gradientMatrix); textPaint.setShader(textGradient); textPaint.getFontMetrics(blockTextMetrics); - int size = AutoSizeUtils.dp2px(getContext(), 120); - BitmapFactory.Options opts = new BitmapFactory.Options(); - opts.inDensity = (int) AutoSizeConfig.getInstance().getInitDensity(); - bmBlock = BitmapFactory.decodeResource(getResources(), R.drawable.bus_base_slide_block,opts); - bmBlock = Bitmap.createScaledBitmap(bmBlock, size, size, true); - blockWidth = bmBlock.getWidth(); + ThreadUtils.getCpuPool().execute(() -> { + int size = AutoSizeUtils.dp2px(getContext(), 120); + BitmapFactory.Options opts = new BitmapFactory.Options(); + opts.inDensity = (int) AutoSizeConfig.getInstance().getInitDensity(); + bmBlock = BitmapFactory.decodeResource(getResources(), R.drawable.bus_base_slide_block,opts); + bmBlock = Bitmap.createScaledBitmap(bmBlock, size, size, true); + blockWidth = bmBlock.getWidth(); + UiThreadHandler.post(this::requestLayout,UiThreadHandler.MODE.QUEUE); + }); } @Override @@ -149,15 +154,16 @@ public class SlidePanelView extends View { textMarginLeft = NORMAL_TEXT_MARGIN_LEFT; textMarginRight = NORMAL_TEXT_MARGIN_RIGHT; } - - if (widthMode == MeasureSpec.AT_MOST) { - // 宽度根据图片大小,字符串长度,各种间隔确定 - // 高度根据图片大小和上下间隔确定 - textPaint.getTextBounds(blockText, 0, blockText.length(), textRect); - widthSize = BLOCK_START_X * 2 + bmBlock.getWidth() + textMarginLeft + textMarginRight + textRect.width(); - heightSize = BLOCK_START_Y * 2 + bmBlock.getHeight(); - widthMeasureSpec = MeasureSpec.makeMeasureSpec(widthSize, widthMode); - heightMeasureSpec = MeasureSpec.makeMeasureSpec(heightSize, heightMode); + if(bmBlock!=null) { + if (widthMode == MeasureSpec.AT_MOST) { + // 宽度根据图片大小,字符串长度,各种间隔确定 + // 高度根据图片大小和上下间隔确定 + textPaint.getTextBounds(blockText, 0, blockText.length(), textRect); + widthSize = BLOCK_START_X * 2 + bmBlock.getWidth() + textMarginLeft + textMarginRight + textRect.width(); + heightSize = BLOCK_START_Y * 2 + bmBlock.getHeight(); + widthMeasureSpec = MeasureSpec.makeMeasureSpec(widthSize, widthMode); + heightMeasureSpec = MeasureSpec.makeMeasureSpec(heightSize, heightMode); + } } super.onMeasure(widthMeasureSpec, heightMeasureSpec); @@ -261,11 +267,13 @@ public class SlidePanelView extends View { // 画文字 gradientMatrix.setTranslate(matrixTranslate, 0); textGradient.setLocalMatrix(gradientMatrix); - canvas.save(); - canvas.drawText(blockText, (float) (blockWidth + BLOCK_START_X + textMarginLeft), (float) textOffset, textPaint); - canvas.restore(); - // 画滑块 - canvas.drawBitmap(bmBlock, (float) (BLOCK_START_X + blockOffset), (float) BLOCK_START_Y, blockPaint); + if(bmBlock!=null) { + canvas.save(); + canvas.drawText(blockText, (float) (blockWidth + BLOCK_START_X + textMarginLeft), (float) textOffset, textPaint); + canvas.restore(); + // 画滑块 + canvas.drawBitmap(bmBlock, (float) (BLOCK_START_X + blockOffset), (float) BLOCK_START_Y, blockPaint); + } } public interface OnSlidePanelMoveToEndListener { diff --git a/OCH/shuttle/passenger/build.gradle b/OCH/shuttle/passenger/build.gradle index e10e559cf5..db47636500 100644 --- a/OCH/shuttle/passenger/build.gradle +++ b/OCH/shuttle/passenger/build.gradle @@ -44,6 +44,21 @@ android { } } + sourceSets { + main { + res.srcDirs = [ + 'src/main/res', + 'src/main/res/m2', + 'src/main/res/jinlv', + ] + java.srcDirs = [ + 'src/main/java', + 'src/main/java/m2', + 'src/main/java/jinlv', + ] + } + } + flavorDimensions "vehicle" productFlavors { // 车型:金旅星辰、开沃 小巴业务 @@ -71,7 +86,7 @@ dependencies { implementation rootProject.ext.dependencies.rxandroid implementation rootProject.ext.dependencies.androidxconstraintlayout implementation rootProject.ext.dependencies.amapnavi3dmap - implementation project(":OCH:mogo-och-common-module") + implementation project(":OCH:common:common") compileOnly project(":libraries:mogo-map") implementation project(':core:mogo-core-res') diff --git a/OCH/shuttle/passenger/src/androidTest/java/com/mogo/och/bus/passenger/ExampleInstrumentedTest.java b/OCH/shuttle/passenger/src/androidTest/java/passenger/ExampleInstrumentedTest.java similarity index 100% rename from OCH/shuttle/passenger/src/androidTest/java/com/mogo/och/bus/passenger/ExampleInstrumentedTest.java rename to OCH/shuttle/passenger/src/androidTest/java/passenger/ExampleInstrumentedTest.java diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java b/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java deleted file mode 100644 index 023c3f5ede..0000000000 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java +++ /dev/null @@ -1,107 +0,0 @@ -package com.mogo.och.bus.passenger; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI_P; - -import android.content.Context; - -import androidx.fragment.app.Fragment; -import androidx.fragment.app.FragmentActivity; -import androidx.fragment.app.FragmentManager; - -import com.alibaba.android.arouter.facade.annotation.Route; -import com.mogo.eagle.core.data.config.FunctionBuildConfig; -import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager; -import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.MultiDisplayUtils; -import com.mogo.och.bus.passenger.constant.BusPassengerConst; -import com.mogo.och.bus.passenger.ui.BusPassengerRouteFragment; -import com.mogo.och.common.module.wigets.media.MediaPlayerActivity; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -/** - * 网约车-Bus-乘客端 - * - * Created on 2022/3/29 - */ -@Route(path = BusPassengerConst.PATH) -public class MogoOCHBusPassenger implements IMogoOCH { - private static final String TAG = MogoOCHBusPassenger.class.getSimpleName(); - - private FragmentActivity mActivity; - private int mContainerId; - private BusPassengerRouteFragment mPassengerFragment; - - @Override - public void createCoverage(FragmentActivity activity, int containerId) { - - } - - @Nullable - @Override - public Fragment createCoverage(@Nullable FragmentActivity activity, @Nullable Integer containerId) { - this.mActivity = activity; - this.mContainerId = containerId; - showFragment(); - - if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) { - MultiDisplayUtils.INSTANCE.startActWithSecond(activity, MediaPlayerActivity.class); - } - return null; - } - - @NotNull - @Override - public String getFunctionName() { - return null; - } - - @Override - public void onDestroy() { - // 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠 - if (mActivity == null) return; - mActivity.finish(); - } - - @Override - public void init(Context context) { - } - - /** - * 进入鹰眼模式,设置手势缩放地图失效 - */ - private void stepIntoVrMode() { - CallerLogger.d( M_TAXI_P + TAG, "进入vr模式" ); - CallerMoGoUiSettingManager.INSTANCE.stepInDayMode();//白天模式 状态栏字体颜色变黑 - } - - private void showFragment() { - FragmentManager supportFragmentManager = mActivity.getSupportFragmentManager(); - if(mPassengerFragment == null){ - CallerLogger.d(M_TAXI_P + TAG, "准备add fragment======"); - Fragment fragmentByTag = supportFragmentManager.findFragmentByTag(BusPassengerRouteFragment.TAG); - if (fragmentByTag instanceof BusPassengerRouteFragment){ - mPassengerFragment = (BusPassengerRouteFragment)fragmentByTag; - }else { - mPassengerFragment = new BusPassengerRouteFragment(); - } - if (!mPassengerFragment.isAdded()){ - supportFragmentManager.beginTransaction().add(mContainerId, mPassengerFragment - ,BusPassengerRouteFragment.TAG).commitAllowingStateLoss(); - } - return; - } - - CallerLogger.d(M_TAXI_P + TAG, "准备show fragment"); - supportFragmentManager.beginTransaction().show(mPassengerFragment).commitAllowingStateLoss(); - } - - private void hideFragment(){ - if (mPassengerFragment != null){ - mActivity.getSupportFragmentManager().beginTransaction().hide(mPassengerFragment).commitAllowingStateLoss(); - } - } - -} diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/widget/BusPTurnLightView.kt b/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/widget/BusPTurnLightView.kt deleted file mode 100644 index a822623d22..0000000000 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/widget/BusPTurnLightView.kt +++ /dev/null @@ -1,16 +0,0 @@ -package com.mogo.och.bus.passenger.ui.widget - -import android.content.Context -import android.util.AttributeSet -import com.mogo.eagle.core.function.hmi.ui.vehicle.TurnLightViewStatus - -/** - * @author: wangmingjun - * @date: 2023/2/13 - */ -class BusPTurnLightView @JvmOverloads constructor( - context: Context, attrs: AttributeSet? = null -) : TurnLightViewStatus(context, attrs) { - - -} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrow_nor.png b/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrow_nor.png deleted file mode 100644 index d8d0663d02..0000000000 Binary files a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrow_nor.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_auto_nor.png b/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_auto_nor.png deleted file mode 100644 index c9daea21c9..0000000000 Binary files a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_auto_nor.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_grey.png b/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_grey.png deleted file mode 100644 index b16a3dd0b8..0000000000 Binary files a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_grey.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_mogo_nor.png b/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_mogo_nor.png deleted file mode 100755 index 3a779659d3..0000000000 Binary files a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_mogo_nor.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_un_auto_nor.png b/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_un_auto_nor.png deleted file mode 100644 index 528cd4dc66..0000000000 Binary files a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_un_auto_nor.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/route_line_name_bg.png b/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/route_line_name_bg.png deleted file mode 100644 index a680b6ea18..0000000000 Binary files a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/route_line_name_bg.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/station_arrow.png b/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/station_arrow.png deleted file mode 100644 index 114c7a2ba7..0000000000 Binary files a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/station_arrow.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_end_station_circle.xml b/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_end_station_circle.xml deleted file mode 100644 index 528233f84c..0000000000 --- a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_end_station_circle.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_start_station_circle.xml b/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_start_station_circle.xml deleted file mode 100644 index 97458b6d07..0000000000 --- a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_start_station_circle.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_traffic_light_background.xml b/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_traffic_light_background.xml deleted file mode 100644 index 6382b0256a..0000000000 --- a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_traffic_light_background.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_p_speak_icon_arrived.xml b/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_p_speak_icon_arrived.xml deleted file mode 100644 index a007c6d711..0000000000 --- a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_p_speak_icon_arrived.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/values/colors.xml b/OCH/shuttle/passenger/src/jinlvvan/res/values/colors.xml deleted file mode 100644 index 4bcd3db004..0000000000 --- a/OCH/shuttle/passenger/src/jinlvvan/res/values/colors.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - #5D7199 - #CCE9EFFC - #C7D2E1 - #2D3E5F - #203555 - #2D3E5F - #596A8A - #D8E5F8 - #FFB327 - #2D3E5F - #0043FF - #276AFE - #0043FF - #276AFE - #FFC125 - #FF8131 - #31BFF2 - #3257E9 - #FFFFFF - #CDDBF6 - #2D3E5F - #0043FF - #2D3E5F - #E6E9EFFC - #33394C63 - #2D3E5F - #33394C63 - - #43CEFE - #1466FB - - #17417B - #6617417B - #A9B6CA - #1F82FB - - #992D3E5F - - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/values/dimens.xml b/OCH/shuttle/passenger/src/jinlvvan/res/values/dimens.xml deleted file mode 100644 index 7e055aedf1..0000000000 --- a/OCH/shuttle/passenger/src/jinlvvan/res/values/dimens.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - 750dp - 804dp - 40dp - 40dp - 48dp - 40dp - 110dp - 224dp - 422dp - 3dp - - 158dp - 90dp - 45dp - 158dp - 90dp - 45dp - 90dp - 90dp - 3dp - - 224dp - 50dp - 50dp - 34dp - 130dp - 38dp - - 38dp - - 90dp - 27dp - - 4dp - 10dp - 20dp - 60dp - 30dp - 20dp - 50dp - 6dp - 38dp - 36dp - 80dp - 100dp - 80dp - 60dp - 6dp - - 685dp - 309dp - 50dp - 10dp - 44dp - 55dp - 40dp - - 495dp - 309dp - - 584dp - 550dp - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/values/strings.xml b/OCH/shuttle/passenger/src/jinlvvan/res/values/strings.xml deleted file mode 100644 index cf8142edc1..0000000000 --- a/OCH/shuttle/passenger/src/jinlvvan/res/values/strings.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - KM/H - 您已收车 - 暂无班次 - 暂无线路 - - - 已到站: - 前方到站: - - 请按秩序下车 - - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/AndroidManifest.xml b/OCH/shuttle/passenger/src/m2/AndroidManifest.xml index ef86a3875d..8eb912b35e 100644 --- a/OCH/shuttle/passenger/src/m2/AndroidManifest.xml +++ b/OCH/shuttle/passenger/src/m2/AndroidManifest.xml @@ -1,7 +1,7 @@ + package="com.mogo.och.shuttle.passenger"> diff --git a/OCH/shuttle/passenger/src/m2/java/BPRouteDataTestUtils.java b/OCH/shuttle/passenger/src/m2/java/BPRouteDataTestUtils.java deleted file mode 100644 index 6af58e3bb1..0000000000 --- a/OCH/shuttle/passenger/src/m2/java/BPRouteDataTestUtils.java +++ /dev/null @@ -1,56 +0,0 @@ -import com.mogo.och.bus.passenger.model.PM2DrivingModel; - -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; - -import java.util.ArrayList; -import java.util.List; - -import mogo.telematics.pad.MessagePad; - -/** - * @author: wangmingjun - * @date: 2022/4/13 - */ -public class BPRouteDataTestUtils { - - //13号路口起-13号路口终 -// static String jsonStr ="{\n" + -// " \"models\": [\n" + -// " {\n" + -// " \"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927760268911,\"lon\":116.73512607061035,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927736555187,\"lon\":116.73498243020299,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927135941599,\"lon\":116.73482951462647,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199260672670036,\"lon\":116.73468429259535,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199251260349946,\"lon\":116.73453933465,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19924691997577,\"lon\":116.7343756435551,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199247953493625,\"lon\":116.73421240809087,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19924986849947,\"lon\":116.73400425509712,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199249431152175,\"lon\":116.73378579041055,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199248921305724,\"lon\":116.73357811807278,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19925012387371,\"lon\":116.73337650020184,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199252270195075,\"lon\":116.73318223781153,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992521615169,\"lon\":116.73298632625203,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19925202633083,\"lon\":116.73279582043983,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199261230205735,\"lon\":116.73263403473568,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199327991681926,\"lon\":116.73251962434813,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19944850496711,\"lon\":116.73249661840195,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199582026896415,\"lon\":116.73251038561487,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199743326352014,\"lon\":116.73253087453938,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199908347167394,\"lon\":116.73255070500186,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200065950595445,\"lon\":116.7325720694418,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20022747460407,\"lon\":116.73259461416663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200384057310536,\"lon\":116.73261575018056,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20053849777916,\"lon\":116.73263451936387,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200696919444624,\"lon\":116.7326540541723,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2008524952796,\"lon\":116.7326743511824,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20101429705625,\"lon\":116.73269393580199,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20118279997041,\"lon\":116.73271564378308,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201342388452076,\"lon\":116.73273653366076,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201476063822355,\"lon\":116.73275292393079,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20163479199852,\"lon\":116.73277440686762,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20181243476041,\"lon\":116.7328052766508,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201991767093304,\"lon\":116.7328453845644,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20215573733484,\"lon\":116.73287624009339,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202313648759784,\"lon\":116.73289887933315,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202434745374454,\"lon\":116.7329182210956,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20253164952098,\"lon\":116.73297539811277,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20258043275509,\"lon\":116.73312335324984,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20258233576585,\"lon\":116.73331077089557,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20257107560234,\"lon\":116.73351244039137,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202561578580514,\"lon\":116.73370176209845,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20256256788661,\"lon\":116.73391325024126,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20255633158834,\"lon\":116.73413195000244,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202543311179575,\"lon\":116.73436614303907,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20253067346457,\"lon\":116.73458032609663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20251776111356,\"lon\":116.73477082198242,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202503997557805,\"lon\":116.73498624001282,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20249129260376,\"lon\":116.73518976336872,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247877796589,\"lon\":116.73537786253135,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246651610268,\"lon\":116.73559239130266,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20245754388014,\"lon\":116.73574239922202,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20244749208,\"lon\":116.73589674090469,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243806550113,\"lon\":116.73607057284322,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243550556816,\"lon\":116.73628106525871,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243654127756,\"lon\":116.7364949950665,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243738221016,\"lon\":116.7367061649993,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243672476754,\"lon\":116.73691115930336,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243590788176,\"lon\":116.73710722104272,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202436434375336,\"lon\":116.73730688607075,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243749821501,\"lon\":116.73750140347998,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243625962803,\"lon\":116.73771330926793,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202434515480725,\"lon\":116.73791895606205,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2024326561388,\"lon\":116.73815206945737,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243092086137,\"lon\":116.73838655528765,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202430876006126,\"lon\":116.73861890759498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242914053177,\"lon\":116.73882029918758,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242843336561,\"lon\":116.73904465495175,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242661219026,\"lon\":116.73922453252953,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202426462811076,\"lon\":116.7393708046956,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242687134937,\"lon\":116.73954685547025,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242694967377,\"lon\":116.73975021183773,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202424630601236,\"lon\":116.73999740812975,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202422502184625,\"lon\":116.74028266774337,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202419634158936,\"lon\":116.7405942561498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241975959762,\"lon\":116.7409069557092,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241920524113,\"lon\":116.74120156191647,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241765540262,\"lon\":116.74149288504978,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241569149764,\"lon\":116.7418080096762,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202414529497084,\"lon\":116.74210262897205,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241419532155,\"lon\":116.74241767661879,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202413879360954,\"lon\":116.7427571218185,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241287045245,\"lon\":116.7431284691325,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241214965105,\"lon\":116.74343354359334,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241141271715,\"lon\":116.7437220210538,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2024080520075,\"lon\":116.74399113498052,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202391714280026,\"lon\":116.74427625698272,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20238163805639,\"lon\":116.74452083315958,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202379293010274,\"lon\":116.74475703837204,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202379007817086,\"lon\":116.7449961645494,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20237814181231,\"lon\":116.7452036063558,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202375477619896,\"lon\":116.74539567654291,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2023632396621,\"lon\":116.74555457589031,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20229396554444,\"lon\":116.7456716047369,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20217800547467,\"lon\":116.74574081942625,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202047498095304,\"lon\":116.74573659255675,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20188573786706,\"lon\":116.74571018281719,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201738240263026,\"lon\":116.74568463148606,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20157507049073,\"lon\":116.74565525041498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20137985142042,\"lon\":116.745619970576,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201187335613575,\"lon\":116.74558631350607,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20098251429043,\"lon\":116.74555055587679,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2007748533628,\"lon\":116.74551426934663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20057082986032,\"lon\":116.74547749663195,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20036944224329,\"lon\":116.74544156175533,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20016365229035,\"lon\":116.74540577510051,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1999958572445,\"lon\":116.74537505807076,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19984100521566,\"lon\":116.7453433678602,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1996863960282,\"lon\":116.74529675648621,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19953919567943,\"lon\":116.74525916493474,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19940587189373,\"lon\":116.74523402869453,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19929047792381,\"lon\":116.74518617038383,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922141745155,\"lon\":116.74506912884067,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920798885308,\"lon\":116.744896716334,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920912644279,\"lon\":116.74467216715483,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199209186509314,\"lon\":116.74448257515108,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920910709997,\"lon\":116.74430613406223,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992100786082,\"lon\":116.74410888316238,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921081961254,\"lon\":116.74391968819582,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921040855518,\"lon\":116.7437082083402,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921085053439,\"lon\":116.74346931155634,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921197237373,\"lon\":116.74325149697013,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921248248983,\"lon\":116.74301103786591,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992139724646,\"lon\":116.74277237066539,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199215818352386,\"lon\":116.74253219408898,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199216175018876,\"lon\":116.74228853120842,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199215970354246,\"lon\":116.74204663206451,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199216627492966,\"lon\":116.74183871233049,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921789170398,\"lon\":116.74165788334192,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922000138535,\"lon\":116.74144512197054,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199221559127494,\"lon\":116.741249370491,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922287231889,\"lon\":116.7410525810756,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922229019589,\"lon\":116.74085266662037,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992216995901,\"lon\":116.74061957723823,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922263073874,\"lon\":116.74041638149129,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922478093337,\"lon\":116.7402123910757,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199227066091595,\"lon\":116.74003419421553,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199228634241756,\"lon\":116.73985841944678,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922951636012,\"lon\":116.7397079274105,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199252095329484,\"lon\":116.73956265582487,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199346162997905,\"lon\":116.73944690416265,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199470799628024,\"lon\":116.73941941053417,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19962513314346,\"lon\":116.7394280706812,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199780626058924,\"lon\":116.73944255215424,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199961525343376,\"lon\":116.73945856750177,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20016196947193,\"lon\":116.73947572081121,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200384479551936,\"lon\":116.7394949225795,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200595083817475,\"lon\":116.73951027963179,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200792203321086,\"lon\":116.73952526850614,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200985930701684,\"lon\":116.73954125209579,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20115978977055,\"lon\":116.73955610094161,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201321019536124,\"lon\":116.7395695239138,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20147117943043,\"lon\":116.7395823299481,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20163699848565,\"lon\":116.73959633422596,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20178484338371,\"lon\":116.7396085776486,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201962185646316,\"lon\":116.73962351991214,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2021018923927,\"lon\":116.7396354059821,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2022137620686,\"lon\":116.73964348380458,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20232600820075,\"lon\":116.73961190446633,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241090270993,\"lon\":116.73951649703137,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20245777783807,\"lon\":116.73937664238166,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246906634823,\"lon\":116.73920146119093,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202470916682884,\"lon\":116.73898763065634,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247034830421,\"lon\":116.73878158418357,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246978204673,\"lon\":116.73857680142473,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247082638905,\"lon\":116.73834517890637,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202471943178196,\"lon\":116.7381047689514,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247131648035,\"lon\":116.73787761484981,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202470799473765,\"lon\":116.73766230702478,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247013054322,\"lon\":116.73743619407796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246999515433,\"lon\":116.73724916823292,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247199652478,\"lon\":116.73704888970806,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202473960263525,\"lon\":116.73684083235807,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202474504753205,\"lon\":116.73665462440796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247501354581,\"lon\":116.73650710371837,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246541231906,\"lon\":116.73635807696789,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202426768984274,\"lon\":116.73622283382787,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20236638788854,\"lon\":116.73610589402243,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20227106919894,\"lon\":116.73600895001849,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2021428343084,\"lon\":116.73596816020945,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20197815580698,\"lon\":116.73594623645097,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20181789535303,\"lon\":116.73593148707488,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201667906886954,\"lon\":116.73591743008926,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201505897730755,\"lon\":116.7359002912543,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20135083580946,\"lon\":116.73588579696379,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20118617904595,\"lon\":116.73586970398149,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20102374028594,\"lon\":116.73585314703226,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20085554043743,\"lon\":116.73583763953049,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20069451888229,\"lon\":116.73582073901778,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200530837344964,\"lon\":116.73580314359012,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2003608457064,\"lon\":116.73578183888779,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20021770046798,\"lon\":116.73575292592922,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20003454701824,\"lon\":116.7357174959358,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19986125116602,\"lon\":116.73569499961796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19969408518737,\"lon\":116.73567725223492,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19955533048882,\"lon\":116.73566375985422,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19943174810538,\"lon\":116.73564927714162,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19933167546824,\"lon\":116.735595995086,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199280357603875,\"lon\":116.73546293260645,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927848361656,\"lon\":116.73531579486274,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19928127892504,\"lon\":116.73505848474375,\"speed\": 0.0\n" + -// " }\n" + -// " ]\n" + -// "}"; - - //洱海轨迹 - static String jsonStr ="{\n" + - " \"models\": [\n" + - " {\n" + - "\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87506159122434,\"longitude_\":100.13463113454593,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874963432017065,\"longitude_\":100.13431083742782,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87481475105022,\"longitude_\":100.13402921175965,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874646001578594,\"longitude_\":100.13381071517328,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874280379177108,\"longitude_\":100.13344505101841,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87422474353087,\"longitude_\":100.13336522063217,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.8741846037573,\"longitude_\":100.13326081770579,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874169301193604,\"longitude_\":100.133157732712,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87417865388365,\"longitude_\":100.13305383003687,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87424355168725,\"longitude_\":100.13288988207758,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87441186213399,\"longitude_\":100.1326293335985,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874490698935094,\"longitude_\":100.13247594955229,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874551609777672,\"longitude_\":100.13227787460397,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874574232444672,\"longitude_\":100.1320943662068,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874574936235152,\"longitude_\":100.13109176087639,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874553271326842,\"longitude_\":100.13095333429315,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874468877309848,\"longitude_\":100.1307193884582,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874449652750723,\"longitude_\":100.1306199898516,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874449487671647,\"longitude_\":100.13046154976821,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87448439242463,\"longitude_\":100.13030173580755,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874554236422213,\"longitude_\":100.13013644761386,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874657614202334,\"longitude_\":100.1299792051648,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.874777620037,\"longitude_\":100.12985830283493,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.8749211786138,\"longitude_\":100.12975642056448,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.875123187810807,\"longitude_\":100.12965486650492,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.875282658783302,\"longitude_\":100.12960819854966,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87555277290776,\"longitude_\":100.12954493830546,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.875686392944456,\"longitude_\":100.12948797177033,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87609150201856,\"longitude_\":100.12914349760804,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87645852877848,\"longitude_\":100.1289124421148,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87667085149294,\"longitude_\":100.1288070141346,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.877063427631544,\"longitude_\":100.12866094818,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87751767381502,\"longitude_\":100.1286538378911,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87776644058061,\"longitude_\":100.12861180318971,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.87866240134362,\"longitude_\":100.12843614360035,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.879103098247672,\"longitude_\":100.12837521690956,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.879326467139197,\"longitude_\":100.12832846342278,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.8800083487784,\"longitude_\":100.12811951944514,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88019070137511,\"longitude_\":100.12802255167708,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.880357426115513,\"longitude_\":100.12787083439976,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.880481954487596,\"longitude_\":100.1276940858994,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.880653097994426,\"longitude_\":100.12740127585158,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.880758517533007,\"longitude_\":100.12730743064938,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.880799507331627,\"longitude_\":100.12724835914499,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88098572681533,\"longitude_\":100.12658255210448,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.881039332211476,\"longitude_\":100.1263847771375,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.881100185621683,\"longitude_\":100.12625820340021,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.881198711287677,\"longitude_\":100.12611952057267,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88133930457031,\"longitude_\":100.12599337741426,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.881467122690022,\"longitude_\":100.12592180492642,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88159423650277,\"longitude_\":100.12588048516646,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.882012210316635,\"longitude_\":100.12584119198453,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88240347787595,\"longitude_\":100.12581569076075,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.882530989675523,\"longitude_\":100.1258417579907,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88266718412272,\"longitude_\":100.1258996456634,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.882846062879587,\"longitude_\":100.12604302069693,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.883143169798704,\"longitude_\":100.12643363872347,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.883316147374213,\"longitude_\":100.12660436351877,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.883516631635977,\"longitude_\":100.12670006660859,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.884412161186358,\"longitude_\":100.12681096840119,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88456077756699,\"longitude_\":100.12680626559008,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88490956874977,\"longitude_\":100.12672087342608,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.885302490381278,\"longitude_\":100.12667304829165,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.885521440240353,\"longitude_\":100.1266801970379,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.885748782438256,\"longitude_\":100.12673442989593,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.886184311775366,\"longitude_\":100.12689928223388,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.886371044711435,\"longitude_\":100.12693222015717,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.886556923046193,\"longitude_\":100.12691593845197,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.887058969863556,\"longitude_\":100.1267783886852,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.887547354704896,\"longitude_\":100.12664214250168,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.887745630547965,\"longitude_\":100.12661296296805,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.887952855908765,\"longitude_\":100.12663469253742,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88838254724211,\"longitude_\":100.1267432660041,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88867177268486,\"longitude_\":100.12674878070436,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.888948154040733,\"longitude_\":100.12668867979535,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.889119678251383,\"longitude_\":100.12661519197152,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.88965548111457,\"longitude_\":100.12632103004057,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.890440398289833,\"longitude_\":100.12572932612804,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.890595726487316,\"longitude_\":100.12569393173928,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.89083685708941,\"longitude_\":100.12572825271758,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.89092017694698,\"longitude_\":100.12571880871474,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.891037856897587,\"longitude_\":100.12567497177714,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.891761687561317,\"longitude_\":100.12513259535619,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.891885118463794,\"longitude_\":100.1250643533811,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.89201181287785,\"longitude_\":100.1250211908644,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.892633993404484,\"longitude_\":100.12487357365991,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.892723272763575,\"longitude_\":100.12483263537747,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.892820100842155,\"longitude_\":100.12471361851891,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.89291347694438,\"longitude_\":100.12434808103623,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.892985029043015,\"longitude_\":100.12422953782732,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.89308490178189,\"longitude_\":100.12416612695728,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.893360731467585,\"longitude_\":100.12410368114618,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.894308353220502,\"longitude_\":100.12396602611501,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.895020251951685,\"longitude_\":100.12387330229565,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0},{\"altitude_\":0.0,\"heading_\":0.0,\"latitude_\":25.895317877980734,\"longitude_\":100.12387135197324,\"memoizedIsInitialized\":-1,\"unknownFields\":{\"fields\":{},\"fieldsDescending\":{}},\"memoizedSize\":-1,\"memoizedHashCode\":0" - + - " }\n" + - " ]\n" + - "}"; - - public static void converToRouteData(){ - List list = new ArrayList<>(); - - try { - JSONObject jsonObject = new JSONObject(jsonStr); - JSONArray jsonElements = jsonObject.getJSONArray("models"); - for (int i = 0; i < jsonElements.length(); i++) { - JSONObject s = jsonElements.getJSONObject(i); - MessagePad.Location.Builder builder = MessagePad.Location.newBuilder(); - builder.setLatitude(s.getDouble("latitude_")); - builder.setLongitude(s.getDouble("longitude_")); - list.add(builder.build()); - } - PM2DrivingModel.Companion.getINSTANCE().updateRoutePoints(list); - - } catch (JSONException e) { - e.printStackTrace(); - } - } -} diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/M2TurnLightView.kt b/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/M2TurnLightView.kt deleted file mode 100644 index 17d5780835..0000000000 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/M2TurnLightView.kt +++ /dev/null @@ -1,16 +0,0 @@ -package com.mogo.och.bus.passenger.ui.widget - -import android.content.Context -import android.util.AttributeSet -import com.mogo.eagle.core.function.hmi.ui.vehicle.TurnLightViewStatus - -/** - * @author: wangmingjun - * @date: 2023/2/13 - */ -class M2TurnLightView @JvmOverloads constructor( - context: Context, attrs: AttributeSet? = null -) : TurnLightViewStatus(context, attrs) { - - -} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/bus_light_green_nor.png b/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/bus_light_green_nor.png deleted file mode 100644 index bc9fed952d..0000000000 Binary files a/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/bus_light_green_nor.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/bus_light_red_nor.png b/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/bus_light_red_nor.png deleted file mode 100644 index 8732508ded..0000000000 Binary files a/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/bus_light_red_nor.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/m2_line_location_bg.png b/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/m2_line_location_bg.png deleted file mode 100644 index 593db1abc5..0000000000 Binary files a/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/m2_line_location_bg.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bg_p_m2_arrived_station.xml b/OCH/shuttle/passenger/src/m2/res/drawable/bg_p_m2_arrived_station.xml deleted file mode 100644 index 6ea3fc81b6..0000000000 --- a/OCH/shuttle/passenger/src/m2/res/drawable/bg_p_m2_arrived_station.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bus_light_green_nor.png b/OCH/shuttle/passenger/src/m2/res/drawable/bus_light_green_nor.png deleted file mode 100644 index bc9fed952d..0000000000 Binary files a/OCH/shuttle/passenger/src/m2/res/drawable/bus_light_green_nor.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bus_light_red_nor.png b/OCH/shuttle/passenger/src/m2/res/drawable/bus_light_red_nor.png deleted file mode 100644 index 8732508ded..0000000000 Binary files a/OCH/shuttle/passenger/src/m2/res/drawable/bus_light_red_nor.png and /dev/null differ diff --git a/OCH/shuttle/passenger/src/m2/res/values/colors.xml b/OCH/shuttle/passenger/src/m2/res/values/colors.xml deleted file mode 100644 index 40e7769b2b..0000000000 --- a/OCH/shuttle/passenger/src/m2/res/values/colors.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - #FFFFFF - #0B1E38 - #2D3E5F - - #BBDAFB - #0B1E38 - #5D7199 - #0B1E38 - #6B7EA6 - #2D3E5F - #A5D8FF - #1B2546 - #23355D - #374E7F - - #FFFFA28B - #FFDA1100 - #FF60FFD3 - #FF006D43 - #FFFFE198 - #FFFF9B00 - #59FFFFFF - #8895B7 - - - #C8EFFF - #203555 - #99AFC9E7 - #6617417B - #17417B - #2D3E5F - #34A61F - #AEEDB8 - #43CEFE - #1466FB - #7094AD - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/values/dimens.xml b/OCH/shuttle/passenger/src/m2/res/values/dimens.xml deleted file mode 100644 index ca8e0dcfc1..0000000000 --- a/OCH/shuttle/passenger/src/m2/res/values/dimens.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - 60dp - 40dp - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/values/strings.xml b/OCH/shuttle/passenger/src/m2/res/values/strings.xml deleted file mode 100644 index 8a8f6658ec..0000000000 --- a/OCH/shuttle/passenger/src/m2/res/values/strings.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - KM/H - 您已收车 - 暂无路线 - - - 到达站: - 下一站: - 始发站: - 请携带好随身物品下车。 - 欢迎乘坐蘑菇车联自动驾驶车。 - - m2_map_style.data - m2_map_style_extra.data - AUTO - 下一站: - 已到站 - 暂无站点 - —公里 | —分钟 - 前方到站 - —公里 - —分钟 - 请按秩序下车 - 暂无路线 - - - - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/AndroidManifest.xml b/OCH/shuttle/passenger/src/main/AndroidManifest.xml index 3e64218ab9..549784ca83 100644 --- a/OCH/shuttle/passenger/src/main/AndroidManifest.xml +++ b/OCH/shuttle/passenger/src/main/AndroidManifest.xml @@ -1,5 +1,5 @@ + package="com.mogo.och.shuttle.passenger"> \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/assets/m2_map_style.data b/OCH/shuttle/passenger/src/main/assets/m2_map_style.data similarity index 100% rename from OCH/shuttle/passenger/src/m2/assets/m2_map_style.data rename to OCH/shuttle/passenger/src/main/assets/m2_map_style.data diff --git a/OCH/shuttle/passenger/src/m2/assets/m2_map_style_extra.data b/OCH/shuttle/passenger/src/main/assets/m2_map_style_extra.data similarity index 100% rename from OCH/shuttle/passenger/src/m2/assets/m2_map_style_extra.data rename to OCH/shuttle/passenger/src/main/assets/m2_map_style_extra.data diff --git a/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/IMogoOCH.java b/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/IMogoOCH.java deleted file mode 100644 index fb146e17c3..0000000000 --- a/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/IMogoOCH.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.mogo.och.bus.passenger; - -import androidx.annotation.IdRes; -import androidx.fragment.app.FragmentActivity; - -import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider; - -/** - * 网约车抽象接口 - * - * Created on 2022/3/29 - */ -interface IMogoOCH extends IMoGoFunctionProvider { - - /** - * 初始化网约车容器 - * - * @param activity - * @param containerId 容器ID - */ - void createCoverage(FragmentActivity activity, @IdRes int containerId); -} diff --git a/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/utils/DimenUtil.kt b/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/utils/DimenUtil.kt deleted file mode 100644 index 4ad4e9a2ba..0000000000 --- a/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/utils/DimenUtil.kt +++ /dev/null @@ -1,13 +0,0 @@ -package com.mogo.och.bus.passenger.utils - -import android.content.res.Resources - -/** - * @author: wangmingjun - * @date: 2022/1/21 - */ -object DimenUtil{ - fun dp2px(value:Float):Float{ - return (0.5f + value * Resources.getSystem().displayMetrics.density) - } -} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/MogoOCHShuttlePassenger.kt b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/MogoOCHShuttlePassenger.kt new file mode 100644 index 0000000000..dbfbc2bd11 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/MogoOCHShuttlePassenger.kt @@ -0,0 +1,105 @@ +package com.mogo.och.shuttle.passenger + +import android.content.Context +import androidx.fragment.app.Fragment +import androidx.fragment.app.FragmentActivity +import androidx.fragment.app.FragmentManager +import com.alibaba.android.arouter.facade.annotation.Route +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider +import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager.stepInDayMode +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.eagle.core.utilcode.util.MultiDisplayUtils +import com.mogo.och.shuttle.passenger.constant.BusPassengerConst +import com.mogo.och.common.module.wigets.media.MediaPlayerActivity +import com.mogo.och.shuttle.passenger.ui.BusPassengerRouteFragment +import com.mogo.och.shuttle.passenger.ui.PM2BaseFragment + +/** + * 网约车-Bus-乘客端 + * + * Created on 2022/3/29 + */ +@Route(path = BusPassengerConst.PATH) +class MogoOCHShuttlePassenger : IMoGoFunctionProvider { + private var mActivity: FragmentActivity? = null + private var mContainerId = 0 + private var mPM2Fragment: Fragment? = null + + override fun createCoverage(activity: FragmentActivity?, containerId: Int?): Fragment? { + mActivity = activity + mContainerId = containerId!! + showFragment() + if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) { + mActivity?.let { + MultiDisplayUtils.startActWithSecond(it, MediaPlayerActivity::class.java) + } + } + return null + } + + override val functionName: String + get() = "och-bus-passenger-m2" + + override fun onDestroy() { + // 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠 + mActivity?.finish() + } + + override fun init(context: Context) { + } + + /** + * 进入鹰眼模式,设置手势缩放地图失效 + */ + private fun stepIntoVrMode() { + d(SceneConstant.M_TAXI_P + TAG, "进入vr模式") + stepInDayMode() //白天模式 状态栏字体颜色变黑 + } + + private fun showFragment() { + val supportFragmentManager: FragmentManager? = mActivity?.supportFragmentManager + if (mPM2Fragment == null) { + + d(SceneConstant.M_TAXI_P + TAG, "准备add fragment======") + + val fragmentByTag: Fragment? = supportFragmentManager?.findFragmentByTag(PM2BaseFragment.TAG) + + mPM2Fragment = if (fragmentByTag is Fragment){ + fragmentByTag + }else{ + if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) { + PM2BaseFragment() + }else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) { + BusPassengerRouteFragment() + }else{ + BusPassengerRouteFragment() + } + + } + + if (!mPM2Fragment?.isAdded!!){ + supportFragmentManager?.beginTransaction() + ?.add(mContainerId, mPM2Fragment!!, PM2BaseFragment.TAG)?.commitAllowingStateLoss() + } + return + } + d(SceneConstant.M_TAXI_P + TAG, "准备show fragment") + supportFragmentManager?.beginTransaction()?.show(mPM2Fragment!!) + ?.commitAllowingStateLoss() + } + + private fun hideFragment() { + if (mPM2Fragment != null) { + mActivity?.supportFragmentManager?.beginTransaction()?.hide(mPM2Fragment!!) + ?.commitAllowingStateLoss() + } + } + + companion object { + private val TAG = MogoOCHShuttlePassenger::class.java.simpleName + } + +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/constant/BusPassengerConst.kt b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/constant/BusPassengerConst.kt similarity index 91% rename from OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/constant/BusPassengerConst.kt rename to OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/constant/BusPassengerConst.kt index 88fbdc0127..dc0bb741a3 100644 --- a/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/constant/BusPassengerConst.kt +++ b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/constant/BusPassengerConst.kt @@ -1,6 +1,4 @@ -package com.mogo.och.bus.passenger.constant - -import com.mogo.commons.debug.DebugConfig +package com.mogo.och.shuttle.passenger.constant /** * Created on 2021/12/6 diff --git a/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/utils/BusPassengerMapAssetStyleUtil.java b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/utils/BusPassengerMapAssetStyleUtil.java similarity index 97% rename from OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/utils/BusPassengerMapAssetStyleUtil.java rename to OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/utils/BusPassengerMapAssetStyleUtil.java index 3cad825966..1f9bc9c159 100644 --- a/OCH/shuttle/passenger/src/main/java/com/mogo/och/bus/passenger/utils/BusPassengerMapAssetStyleUtil.java +++ b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/utils/BusPassengerMapAssetStyleUtil.java @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.utils; +package com.mogo.och.shuttle.passenger.utils; import android.content.Context; diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/adapter/BusPassengerLineStationsAdapter.java similarity index 80% rename from OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java rename to OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/adapter/BusPassengerLineStationsAdapter.java index d50adb656a..15a89f2b66 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java +++ b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/adapter/BusPassengerLineStationsAdapter.java @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.adapter; +package com.mogo.och.shuttle.passenger.adapter; import android.content.Context; import android.text.TextUtils; @@ -11,16 +11,16 @@ import android.widget.ImageView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; -import com.mogo.och.bus.passenger.R; +import com.mogo.och.shuttle.passenger.R; import com.mogo.och.common.module.utils.BlinkAnimationUtil; import com.mogo.och.common.module.wigets.MarqueeTextView; import com.mogo.och.data.bean.BusStationBean; import java.util.List; -import static com.mogo.och.bus.passenger.constant.BusPassengerConst.STATION_STATUS_ARRIVING; -import static com.mogo.och.bus.passenger.constant.BusPassengerConst.STATION_STATUS_LEAVING; -import static com.mogo.och.bus.passenger.constant.BusPassengerConst.STATION_STATUS_STOPPED; +import static com.mogo.och.shuttle.passenger.constant.BusPassengerConst.STATION_STATUS_ARRIVING; +import static com.mogo.och.shuttle.passenger.constant.BusPassengerConst.STATION_STATUS_LEAVING; +import static com.mogo.och.shuttle.passenger.constant.BusPassengerConst.STATION_STATUS_STOPPED; /** * @author: wangmingjun @@ -39,7 +39,7 @@ public class BusPassengerLineStationsAdapter extends RecyclerView.Adapter { - bus_p_traffic_light_iv.setBackgroundResource(R.drawable.bus_p_light_red_nor) + bus_p_traffic_light_iv.setBackgroundResource(R.drawable.shuttle_p_jl_light_red_nor) this@BusPassengerTrafficLightView.visibility = VISIBLE } TrafficLightEnum.YELLOW -> { - bus_p_traffic_light_iv.setBackgroundResource(R.drawable.bus_p_light_yellow_nor) + bus_p_traffic_light_iv.setBackgroundResource(R.drawable.shuttle_p_jl_light_yellow_nor) this@BusPassengerTrafficLightView.visibility = VISIBLE } TrafficLightEnum.GREEN -> { - bus_p_traffic_light_iv.setBackgroundResource(R.drawable.bus_p_light_green_nor) + bus_p_traffic_light_iv.setBackgroundResource(R.drawable.shuttle_p_jl_light_green_nor) this@BusPassengerTrafficLightView.visibility = VISIBLE } else -> this@BusPassengerTrafficLightView.visibility = GONE @@ -156,7 +158,7 @@ class BusPassengerTrafficLightView @JvmOverloads constructor( val layoutParams = layoutParams if (layoutParams is MarginLayoutParams) { val lp = layoutParams - lp.width = resources.getDimension(R.dimen.bus_p_traffic_light_icon_size).toInt() + lp.width = resources.getDimension(R.dimen.shuttle_p_jl_traffic_light_icon_size).toInt() setLayoutParams(lp) bus_p_traffic_light_time_tv.visibility = GONE bus_p_traffic_light_bg.layoutParams.width = @@ -169,11 +171,11 @@ class BusPassengerTrafficLightView @JvmOverloads constructor( val layoutParams = layoutParams if (layoutParams is MarginLayoutParams) { val lp = layoutParams - lp.width = resources.getDimension(R.dimen.bus_p_route_traffic_light_view_width).toInt() + lp.width = resources.getDimension(R.dimen.shuttle_p_jl_route_traffic_light_view_width).toInt() setLayoutParams(lp) bus_p_traffic_light_time_tv.visibility = VISIBLE bus_p_traffic_light_bg.layoutParams.width = - resources.getDimension(R.dimen.bus_p_traffic_light_bg_width).toInt() + resources.getDimension(R.dimen.shuttle_p_jl_traffic_light_bg_width).toInt() } } } \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/IBusPassengerMapDirectionView.java b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/IBusPassengerMapDirectionView.java similarity index 88% rename from OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/IBusPassengerMapDirectionView.java rename to OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/IBusPassengerMapDirectionView.java index 7f525d0464..643da8a824 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/IBusPassengerMapDirectionView.java +++ b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/IBusPassengerMapDirectionView.java @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.ui; +package com.mogo.och.shuttle.passenger.ui; /** * @author xiaoyuzhou diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/layoutmanager/CenterLayoutManager.java b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/layoutmanager/CenterLayoutManager.java similarity index 96% rename from OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/layoutmanager/CenterLayoutManager.java rename to OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/layoutmanager/CenterLayoutManager.java index 42210cbcaf..d7b712d6ea 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/layoutmanager/CenterLayoutManager.java +++ b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/layoutmanager/CenterLayoutManager.java @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.ui.layoutmanager; +package com.mogo.och.shuttle.passenger.ui.layoutmanager; import android.content.Context; import android.util.AttributeSet; diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/mapdirectionview/BusPassengerMapDirectionView.kt b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/mapdirectionview/BusPassengerMapDirectionView.kt similarity index 95% rename from OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/mapdirectionview/BusPassengerMapDirectionView.kt rename to OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/mapdirectionview/BusPassengerMapDirectionView.kt index ccaa6d6019..7a1c0df493 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/mapdirectionview/BusPassengerMapDirectionView.kt +++ b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/mapdirectionview/BusPassengerMapDirectionView.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.ui.mapdirectionview +package com.mogo.och.shuttle.passenger.ui.mapdirectionview import android.content.Context import android.os.Bundle @@ -27,9 +27,9 @@ import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02Lis import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.UiThreadHandler -import com.mogo.och.bus.passenger.R -import com.mogo.och.bus.passenger.ui.IBusPassengerMapDirectionView -import com.mogo.och.bus.passenger.utils.BusPassengerMapAssetStyleUtil +import com.mogo.och.shuttle.passenger.R +import com.mogo.och.shuttle.passenger.ui.IBusPassengerMapDirectionView +import com.mogo.och.shuttle.passenger.utils.BusPassengerMapAssetStyleUtil /** * 乘客屏小地图 @@ -72,7 +72,7 @@ class BusPassengerMapDirectionView @JvmOverloads constructor( private fun initView(context: Context) { d(SceneConstant.M_BUS_P + TAG, "initView") - val smpView = LayoutInflater.from(context).inflate(R.layout.bus_p_map_view, this) + val smpView = LayoutInflater.from(context).inflate(R.layout.shuttle_p_jl_map_view, this) mAMapNaviView = smpView.findViewById(R.id.bus_p_line_amap_view) as TextureMapView initAMapView() @@ -96,11 +96,11 @@ class BusPassengerMapDirectionView @JvmOverloads constructor( // 设置 锚点 图标 mCarMarker = mAMap.addMarker( - MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_car)) + MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.drawable.shuttle_p_jl_map_car)) .anchor(0.5f, 0.5f) ) - mArrivedRes = BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_arrow_arrived) - mUnArrivedRes = BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_arrow_un_arrive) + mArrivedRes = BitmapDescriptorFactory.fromResource(R.drawable.shuttle_p_jl_map_arrow_arrived) + mUnArrivedRes = BitmapDescriptorFactory.fromResource(R.drawable.shuttle_p_jl_map_arrow_un_arrive) // 加载自定义样式 val customMapStyleOptions = CustomMapStyleOptions() @@ -312,11 +312,11 @@ class BusPassengerMapDirectionView @JvmOverloads constructor( val size = mLineStationsList.size val mStartMarker = mAMap.addMarker( MarkerOptions() - .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_start_point)) + .icon(BitmapDescriptorFactory.fromResource(R.drawable.shuttle_p_jl_map_start_point)) ) val mEndMarker = mAMap.addMarker( MarkerOptions() - .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_end_point)) + .icon(BitmapDescriptorFactory.fromResource(R.drawable.shuttle_p_jl_map_end_point)) ) mStartMarker.position = mLineStationsList[0] mLineMarkers.add(0, mStartMarker) @@ -324,14 +324,14 @@ class BusPassengerMapDirectionView @JvmOverloads constructor( if (currentIndex <= i && i < size - 1 && i > 0) { //未到达 val unArrivedMarker = mAMap.addMarker( MarkerOptions() - .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_unarrived_point)) + .icon(BitmapDescriptorFactory.fromResource(R.drawable.shuttle_p_jl_map_unarrived_point)) ) unArrivedMarker.position = mLineStationsList[i] mLineMarkers.add(i, unArrivedMarker) } else if (i in 1 until currentIndex) { val arrivedMarker = mAMap.addMarker( MarkerOptions() - .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_arrived_point)) + .icon(BitmapDescriptorFactory.fromResource(R.drawable.shuttle_p_jl_map_arrived_point)) ) arrivedMarker.position = mLineStationsList[i] mLineMarkers.add(i, arrivedMarker) diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/mapdirectionview/MapDirectionViewModel.kt b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/mapdirectionview/MapDirectionViewModel.kt similarity index 91% rename from OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/mapdirectionview/MapDirectionViewModel.kt rename to OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/mapdirectionview/MapDirectionViewModel.kt index c1be106fb8..3b2df2feec 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/mapdirectionview/MapDirectionViewModel.kt +++ b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/mapdirectionview/MapDirectionViewModel.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.ui.mapdirectionview +package com.mogo.och.shuttle.passenger.ui.mapdirectionview import androidx.lifecycle.ViewModel import com.amap.api.maps.model.LatLng @@ -11,14 +11,14 @@ class MapDirectionViewModel: ViewModel(), ITrajectoryListener { private val TAG = MapDirectionViewModel::class.java.simpleName - private var viewCallback:ItineraryViewCallback?=null + private var viewCallback: ItineraryViewCallback?=null init { TrajectoryAndDistanceManager.addTrajectoryListener(TAG,this) } - fun setDistanceCallback(viewCallback:ItineraryViewCallback){ + fun setDistanceCallback(viewCallback: ItineraryViewCallback){ this.viewCallback = viewCallback } diff --git a/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/widget/BusPTurnLightView.kt b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/widget/BusPTurnLightView.kt new file mode 100644 index 0000000000..17f9179559 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/widget/BusPTurnLightView.kt @@ -0,0 +1,199 @@ +package com.mogo.och.shuttle.passenger.ui.widget + +import android.animation.AnimatorSet +import android.animation.ObjectAnimator +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.View +import android.view.animation.AlphaAnimation +import android.view.animation.Animation +import android.widget.ImageView +import androidx.constraintlayout.widget.ConstraintLayout +import com.mogo.eagle.core.function.api.datacenter.union.IMoGoTurnLightListener +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLamplightListenerManager +import com.mogo.eagle.core.function.call.v2x.CallerTurnLightListenerManager +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import com.mogo.och.shuttle.passenger.R +import com.mogo.och.common.module.manager.lightmanager.TurnLightManager +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.left_nor_image +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.left_select_image +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.right_nor_image +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.right_select_image +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.turn_light_layout + +/** + * @author: wangmingjun + * @date: 2023/2/13 + */ +class BusPTurnLightView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : ConstraintLayout(context, attrs, defStyleAttr), + IMoGoTurnLightListener, TurnLightManager.TurnLightListener { + + + companion object { + private const val TAG = "TurnLightViewStatus" + } + + private var isLeftLight: Boolean = false + private var isRightLight: Boolean = false + private var isDisappear: Boolean = false + + init { + LayoutInflater.from(context) + .inflate(R.layout.shuttle_p_jl_turn_light_status, this, true) + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + CallerTurnLightListenerManager.addListener(TAG,this) + + TurnLightManager.addTurnLightStatusChangeListener(TAG,this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + CallerChassisLamplightListenerManager.removeListener(TAG) + CallerTurnLightListenerManager.removeListener(TAG) + } + + override fun hideTurnLightView() { + ThreadUtils.runOnUiThread{ + if (!isDisappear) { + isDisappear = true + isLeftLight = false + isRightLight = false + animationDisappear() + } + } + } + + override fun statusChange(newStatus: TurnLightManager.TurnLightStatus) { + ThreadUtils.runOnUiThread { + setTurnLight(newStatus) + } + } + + /** + * 转向灯动画 + */ + private fun setTurnLight(directionLight: TurnLightManager.TurnLightStatus) { + if (!isAttachedToWindow) { + return + } + //根据左右进行显示和隐藏,实际要判断每个来的时间和频度 + when (directionLight) { + TurnLightManager.TurnLightStatus.TURN_LIGHT_LEFT -> { //左转向 + if (!isLeftLight) { + isLeftLight = true + isRightLight = false + isDisappear = false + showNormalAnimation() + left_select_image.visibility = View.VISIBLE + right_select_image.visibility = View.GONE + right_select_image.clearAnimation() + setAnimation(left_select_image) + } + } + TurnLightManager.TurnLightStatus.TURN_LIGHT_RIGHT -> { //右转向 + if (!isRightLight) { + isRightLight = true + isLeftLight = false + isDisappear = false + showNormalAnimation() + left_select_image.visibility = View.GONE + right_select_image.visibility = View.VISIBLE + left_select_image.clearAnimation() + setAnimation(right_select_image) + } + } + TurnLightManager.TurnLightStatus.TURN_LIGHT_NONE -> { //消失 + if (!isDisappear) { + isDisappear = true + isLeftLight = false + isRightLight = false + animationDisappear() + } + } + } + } + + //显示背景 + private fun showNormalAnimation() { + val appearAnimation = AlphaAnimation(0f, 1.0f) + appearAnimation.duration = 300 + val appearAnimationImage = AlphaAnimation(0f, 1.0f) + appearAnimation.duration = 500 + turn_light_layout.startAnimation(appearAnimation) + left_nor_image.startAnimation(appearAnimationImage) + right_nor_image.startAnimation(appearAnimationImage) + + turn_light_layout.visibility = View.VISIBLE + left_nor_image.visibility = View.VISIBLE + right_nor_image.visibility = View.VISIBLE + } + + //消失动画,当转向等数据为空时候 + private fun animationDisappear() { + left_select_image.visibility = View.GONE + right_select_image.visibility = View.GONE + left_select_image.clearAnimation() + right_select_image.clearAnimation() + + left_nor_image.clearAnimation() + right_nor_image.clearAnimation() + turn_light_layout.clearAnimation() + + val disappearAnimationLeft = AlphaAnimation(1.0f, 0f) + disappearAnimationLeft.duration = 300 + + val disappearAnimationBg = AlphaAnimation(1.0f, 0f) + disappearAnimationBg.duration = 500 + + left_nor_image.startAnimation(disappearAnimationLeft) + right_nor_image.startAnimation(disappearAnimationLeft) + turn_light_layout.startAnimation(disappearAnimationBg) + + disappearAnimationLeft.setAnimationListener(object : Animation.AnimationListener { + override fun onAnimationRepeat(p0: Animation?) { + } + + override fun onAnimationStart(p0: Animation?) { + } + + override fun onAnimationEnd(p0: Animation?) { + left_nor_image.visibility = View.GONE + right_nor_image.visibility = View.GONE + } + }) + + disappearAnimationBg.setAnimationListener(object : Animation.AnimationListener { + override fun onAnimationRepeat(p0: Animation?) { + } + + override fun onAnimationStart(p0: Animation?) { + } + + override fun onAnimationEnd(p0: Animation?) { + turn_light_layout.visibility = View.GONE + } + }) + } + + //实现图片闪烁效果 + private fun setAnimation(imageView: ImageView) { + val animationSet = AnimatorSet() + val valueAnimator = ObjectAnimator.ofFloat(imageView, "alpha", 0f, 1.0f) + val valueAnimatorDisappear = ObjectAnimator.ofFloat(imageView, "alpha", 1.0f, 0f) + valueAnimator.duration = 1000 + valueAnimatorDisappear.duration = 800 + valueAnimator.repeatCount = -1 + valueAnimatorDisappear.repeatCount = -1 + animationSet.playTogether(valueAnimatorDisappear, valueAnimator) + animationSet.start() + } + +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2OperationStatusResponse.java b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2OperationStatusResponse.java similarity index 91% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2OperationStatusResponse.java rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2OperationStatusResponse.java index 9869a9e135..a39d34927b 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2OperationStatusResponse.java +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2OperationStatusResponse.java @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.bean; +package com.mogo.och.shuttle.passenger.bean; import com.mogo.eagle.core.data.BaseData; diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2QueryLineRequest.java b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2QueryLineRequest.java similarity index 83% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2QueryLineRequest.java rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2QueryLineRequest.java index 5569730773..62594f2813 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2QueryLineRequest.java +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2QueryLineRequest.java @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.bean; +package com.mogo.och.shuttle.passenger.bean; public /** diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2RoutesResponse.java b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2RoutesResponse.java similarity index 93% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2RoutesResponse.java rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2RoutesResponse.java index 32306a33c1..cc302cdca5 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2RoutesResponse.java +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2RoutesResponse.java @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.bean; +package com.mogo.och.shuttle.passenger.bean; import com.mogo.eagle.core.data.BaseData; import com.mogo.och.data.bean.BusRoutesResult; diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2RoutesResult.java b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2RoutesResult.java similarity index 97% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2RoutesResult.java rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2RoutesResult.java index 1f26b5346d..d120747432 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2RoutesResult.java +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2RoutesResult.java @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.bean; +package com.mogo.och.shuttle.passenger.bean; import java.util.List; import java.util.Objects; diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2Station.java b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2Station.java similarity index 98% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2Station.java rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2Station.java index ec903b7e93..767da50f10 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/bean/PM2Station.java +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/bean/PM2Station.java @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.bean; +package com.mogo.och.shuttle.passenger.bean; import java.util.Objects; diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/callback/ADASCallback.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/callback/ADASCallback.kt similarity index 79% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/callback/ADASCallback.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/callback/ADASCallback.kt index 217f03740f..b5b490e29d 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/callback/ADASCallback.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/callback/ADASCallback.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.callback +package com.mogo.och.shuttle.passenger.callback /** * @author: wangmingjun diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/callback/AutoPilotStatusCallback.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/callback/AutoPilotStatusCallback.kt similarity index 83% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/callback/AutoPilotStatusCallback.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/callback/AutoPilotStatusCallback.kt index efb7410ba2..44b2075170 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/callback/AutoPilotStatusCallback.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/callback/AutoPilotStatusCallback.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.callback +package com.mogo.och.shuttle.passenger.callback /** * @author: wangmingjun diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/callback/DrivingInfoCallback.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/callback/DrivingInfoCallback.kt similarity index 92% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/callback/DrivingInfoCallback.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/callback/DrivingInfoCallback.kt index 61589fce33..88ab043327 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/callback/DrivingInfoCallback.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/callback/DrivingInfoCallback.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.callback +package com.mogo.och.shuttle.passenger.callback import com.mogo.och.data.bean.BusStationBean diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/constant/M2Const.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/constant/M2Const.kt similarity index 85% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/constant/M2Const.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/constant/M2Const.kt index 65d482b5fd..fd9097ad64 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/constant/M2Const.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/constant/M2Const.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.constant +package com.mogo.och.shuttle.passenger.constant /** * Created on 2021/12/6 diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2ADASModel.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/model/PM2ADASModel.kt similarity index 91% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2ADASModel.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/model/PM2ADASModel.kt index 87c68dda4f..3994625de7 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2ADASModel.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/model/PM2ADASModel.kt @@ -1,7 +1,7 @@ -package com.mogo.och.bus.passenger.model +package com.mogo.och.shuttle.passenger.model import android.content.Context -import com.mogo.och.bus.passenger.callback.ADASCallback +import com.mogo.och.shuttle.passenger.callback.ADASCallback import com.mogo.och.data.bean.BusStationBean /** diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/model/PM2DrivingModel.kt similarity index 97% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/model/PM2DrivingModel.kt index d91c62fc57..4e5f1a568f 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/model/PM2DrivingModel.kt @@ -1,4 +1,4 @@ -package com.mogo.och.bus.passenger.model +package com.mogo.och.shuttle.passenger.model import android.content.Context import android.media.AudioAttributes @@ -12,7 +12,6 @@ import com.mogo.commons.module.intent.IMogoIntentListener import com.mogo.commons.module.intent.IntentManager import com.mogo.commons.voice.AIAssist import com.mogo.commons.voice.IMogoVoiceCmdCallBack -import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener @@ -32,14 +31,14 @@ import com.mogo.eagle.core.utilcode.util.CoordinateUtils import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.NetworkUtils import com.mogo.eagle.core.utilcode.util.ToastUtils -import com.mogo.och.bus.passenger.R -import com.mogo.och.bus.passenger.bean.PM2OperationStatusResponse -import com.mogo.och.bus.passenger.bean.PM2RoutesResponse -import com.mogo.och.bus.passenger.callback.AutoPilotStatusCallback -import com.mogo.och.bus.passenger.callback.DrivingInfoCallback -import com.mogo.och.bus.passenger.constant.BusPassengerConst -import com.mogo.och.bus.passenger.model.PM2ServiceManager.driverAppSn -import com.mogo.och.bus.passenger.network.PM2ModelLoopManager +import com.mogo.och.shuttle.passenger.R +import com.mogo.och.shuttle.passenger.constant.BusPassengerConst +import com.mogo.och.shuttle.passenger.bean.PM2OperationStatusResponse +import com.mogo.och.shuttle.passenger.bean.PM2RoutesResponse +import com.mogo.och.shuttle.passenger.callback.AutoPilotStatusCallback +import com.mogo.och.shuttle.passenger.callback.DrivingInfoCallback +import com.mogo.och.shuttle.passenger.model.PM2ServiceManager.driverAppSn +import com.mogo.och.shuttle.passenger.network.PM2ModelLoopManager import com.mogo.och.common.module.bean.dpmsg.* import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager.pushAppOperationalMsgBox import com.mogo.och.common.module.biz.constant.OchCommonConst diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2ServiceManager.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/model/PM2ServiceManager.kt similarity index 83% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2ServiceManager.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/model/PM2ServiceManager.kt index f23b75ea3f..4301b1de54 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2ServiceManager.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/model/PM2ServiceManager.kt @@ -1,13 +1,14 @@ -package com.mogo.och.bus.passenger.model +package com.mogo.och.shuttle.passenger.model import android.content.Context import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager.getServerToken import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.eagle.core.network.MoGoRetrofitFactory -import com.mogo.och.bus.passenger.bean.PM2OperationStatusResponse -import com.mogo.och.bus.passenger.bean.PM2QueryLineRequest -import com.mogo.och.bus.passenger.bean.PM2RoutesResponse -import com.mogo.och.bus.passenger.network.PM2ServiceApi +import com.mogo.commons.storage.SharedPrefsMgr +import com.mogo.och.shuttle.passenger.bean.PM2OperationStatusResponse +import com.mogo.och.shuttle.passenger.bean.PM2QueryLineRequest +import com.mogo.och.shuttle.passenger.bean.PM2RoutesResponse +import com.mogo.och.shuttle.passenger.network.PM2ServiceApi import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl @@ -46,7 +47,7 @@ object PM2ServiceManager { ) { mBusPassengerServiceApi.queryDriverSiteByCoordinate( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, PM2QueryLineRequest( driverAppSn ) @@ -67,7 +68,7 @@ object PM2ServiceManager { ) { mBusPassengerServiceApi.queryDriverOperationStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, driverAppSn ) .transformTry() diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/network/PM2ModelLoopManager.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/network/PM2ModelLoopManager.kt new file mode 100644 index 0000000000..8f3082bce1 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/network/PM2ModelLoopManager.kt @@ -0,0 +1,127 @@ +package com.mogo.och.shuttle.passenger.network + +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.i +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.och.shuttle.passenger.constant.BusPassengerConst +import com.mogo.och.shuttle.passenger.model.PM2DrivingModel +import io.reactivex.Observable +import io.reactivex.ObservableOnSubscribe +import io.reactivex.android.schedulers.AndroidSchedulers +import io.reactivex.disposables.CompositeDisposable +import io.reactivex.disposables.Disposable +import io.reactivex.schedulers.Schedulers +import java.util.concurrent.TimeUnit + +/** + * @author: wangmingjun + * @date: 2023/2/1 + */ +object PM2ModelLoopManager { + + private val TAG: String = PM2ModelLoopManager::class.java.getSimpleName() + + private var mQueryLineDisposable: Disposable? = null //心跳轮询 + private var mRouteWipeDisposable: CompositeDisposable? = null //估计擦除 + private var mCalculateRouteDisposable: CompositeDisposable? = null //每隔2s计算一次剩余里程和时间 + + + fun startOrStopRouteAndWipe() { + i(SceneConstant.M_BUS_P + TAG, "startOrStopRouteWipe()") + if (mRouteWipeDisposable != null) return + if (mRouteWipeDisposable == null) { + mRouteWipeDisposable = CompositeDisposable() + } + val disposable = startLoopRouteAndWipe() + .doOnSubscribe { } + .doOnError { } + .delay( + BusPassengerConst.LOOP_LINE_1S, + TimeUnit.MILLISECONDS, + true + ) // 设置delayError为true,表示出现错误的时候也需要延迟5s进行通知,达到无论是请求正常还是请求失败,都是5s后重新订阅,即重新请求。 + .subscribeOn(Schedulers.io()) + .repeat() // repeat保证请求成功后能够重新订阅。 + .retry() // retry保证请求失败后能重新订阅 + .observeOn(AndroidSchedulers.mainThread()) + .subscribe { } + mRouteWipeDisposable!!.add(disposable) + } + + fun stopOrStopRouteAndWipe() { + if (mRouteWipeDisposable != null) { + mRouteWipeDisposable!!.dispose() + mRouteWipeDisposable = null + } + } + + fun startQueryDriverLineLoop() { + if (mQueryLineDisposable != null && !mQueryLineDisposable!!.isDisposed) { + return + } + i(SceneConstant.M_BUS_P + TAG, "startQueryDriverLineLoop()") + mQueryLineDisposable = Observable.interval( + BusPassengerConst.LOOP_DELAY, + BusPassengerConst.LOOP_LINE_2S, TimeUnit.MILLISECONDS + ) + .map { aLong: Long -> aLong + 1 } + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe { aLong: Long? -> + PM2DrivingModel.INSTANCE.queryDriverSiteByCoordinate() + } + } + + fun stopQueryDriverLineLoop() { + if (mQueryLineDisposable != null) { + i(SceneConstant.M_BUS_P + TAG, "stopQueryDriverLineLoop()") + mQueryLineDisposable!!.dispose() + mQueryLineDisposable = null + } + } + + fun startCalculateRouteInfoLoop() { + i(SceneConstant.M_BUS_P + TAG, "startCalculateRouteInfoLoop()") + if (mCalculateRouteDisposable != null) return + if (mCalculateRouteDisposable == null) { + mCalculateRouteDisposable = CompositeDisposable() + } + val disposable = startLoopCalculateRouteInfo() + .doOnSubscribe { } + .doOnError { } + .delay( + BusPassengerConst.LOOP_LINE_2S, + TimeUnit.MILLISECONDS, + true + ) // 设置delayError为true,表示出现错误的时候也需要延迟5s进行通知,达到无论是请求正常还是请求失败,都是5s后重新订阅,即重新请求。 + .subscribeOn(Schedulers.io()) + .repeat() // repeat保证请求成功后能够重新订阅。 + .retry() // retry保证请求失败后能重新订阅 + .observeOn(AndroidSchedulers.mainThread()) + .subscribe { } + mCalculateRouteDisposable!!.add(disposable) + } + + fun stopCalculateRouteInfLoop() { + if (mCalculateRouteDisposable != null) { + i(SceneConstant.M_BUS_P + TAG, "stopCalculateRouteInfLoop()") + mCalculateRouteDisposable!!.dispose() + mCalculateRouteDisposable = null + } + } + + private fun startLoopRouteAndWipe(): Observable { + return Observable.create(ObservableOnSubscribe { emitter -> + if (emitter.isDisposed) return@ObservableOnSubscribe + PM2DrivingModel.INSTANCE.loopRouteAndWipe() + emitter.onComplete() + }) + } + + private fun startLoopCalculateRouteInfo(): Observable { + return Observable.create(ObservableOnSubscribe { emitter -> + if (emitter.isDisposed) return@ObservableOnSubscribe + PM2DrivingModel.INSTANCE.dynamicCalculateRouteInfo() + emitter.onComplete() + }) + } +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ServiceApi.java b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/network/PM2ServiceApi.java similarity index 82% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ServiceApi.java rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/network/PM2ServiceApi.java index 9a0f63e23e..8797caf27e 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ServiceApi.java +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/network/PM2ServiceApi.java @@ -1,8 +1,8 @@ -package com.mogo.och.bus.passenger.network; +package com.mogo.och.shuttle.passenger.network; -import com.mogo.och.bus.passenger.bean.PM2OperationStatusResponse; -import com.mogo.och.bus.passenger.bean.PM2QueryLineRequest; -import com.mogo.och.bus.passenger.bean.PM2RoutesResponse; +import com.mogo.och.shuttle.passenger.bean.PM2OperationStatusResponse; +import com.mogo.och.shuttle.passenger.bean.PM2QueryLineRequest; +import com.mogo.och.shuttle.passenger.bean.PM2RoutesResponse; import io.reactivex.Observable; import retrofit2.http.Body; diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2ADASPresenter.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/presenter/PM2ADASPresenter.kt similarity index 74% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2ADASPresenter.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/presenter/PM2ADASPresenter.kt index b3d6ab2894..4e28ee57de 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2ADASPresenter.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/presenter/PM2ADASPresenter.kt @@ -1,11 +1,11 @@ -package com.mogo.och.bus.passenger.presenter +package com.mogo.och.shuttle.passenger.presenter import androidx.lifecycle.LifecycleOwner import com.mogo.commons.mvp.Presenter -import com.mogo.och.bus.passenger.callback.ADASCallback -import com.mogo.och.bus.passenger.constant.M2Const.Companion.M2_MAP_STATION_MAKER -import com.mogo.och.bus.passenger.model.PM2ADASModel -import com.mogo.och.bus.passenger.ui.PM2HPMapFragment +import com.mogo.och.shuttle.passenger.callback.ADASCallback +import com.mogo.och.shuttle.passenger.constant.M2Const.Companion.M2_MAP_STATION_MAKER +import com.mogo.och.shuttle.passenger.model.PM2ADASModel +import com.mogo.och.shuttle.passenger.ui.PM2HPMapFragment class PM2ADASPresenter(view: PM2HPMapFragment?) : Presenter(view), ADASCallback { diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/presenter/PM2DrivingPresenter.kt similarity index 91% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/presenter/PM2DrivingPresenter.kt index 54986df014..419f50e7ac 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/presenter/PM2DrivingPresenter.kt @@ -1,14 +1,14 @@ -package com.mogo.och.bus.passenger.presenter +package com.mogo.och.shuttle.passenger.presenter import androidx.lifecycle.LifecycleOwner import com.amap.api.maps.model.LatLng import com.mogo.commons.mvp.Presenter import com.mogo.eagle.core.utilcode.util.ThreadUtils -import com.mogo.och.bus.passenger.callback.AutoPilotStatusCallback -import com.mogo.och.bus.passenger.callback.DrivingInfoCallback -import com.mogo.och.bus.passenger.model.PM2ADASModel -import com.mogo.och.bus.passenger.model.PM2DrivingModel -import com.mogo.och.bus.passenger.ui.PM2DrivingInfoFragment +import com.mogo.och.shuttle.passenger.callback.AutoPilotStatusCallback +import com.mogo.och.shuttle.passenger.callback.DrivingInfoCallback +import com.mogo.och.shuttle.passenger.model.PM2ADASModel +import com.mogo.och.shuttle.passenger.model.PM2DrivingModel +import com.mogo.och.shuttle.passenger.ui.PM2DrivingInfoFragment import com.mogo.och.data.bean.BusStationBean class PM2DrivingPresenter(view: PM2DrivingInfoFragment?) : diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2Presenter.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/presenter/PM2Presenter.kt similarity index 53% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2Presenter.kt rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/presenter/PM2Presenter.kt index e55cc469d1..450109ef98 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2Presenter.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/presenter/PM2Presenter.kt @@ -1,7 +1,7 @@ -package com.mogo.och.bus.passenger.presenter +package com.mogo.och.shuttle.passenger.presenter import com.mogo.commons.mvp.Presenter -import com.mogo.och.bus.passenger.ui.PM2BaseFragment +import com.mogo.och.shuttle.passenger.ui.PM2BaseFragment class PM2Presenter(view: PM2BaseFragment?) : Presenter(view) \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/provider/M2StatusViewManager.java b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/provider/M2StatusViewManager.java similarity index 86% rename from OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/provider/M2StatusViewManager.java rename to OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/provider/M2StatusViewManager.java index 8966090d91..49b0288cd3 100644 --- a/OCH/shuttle/passenger/src/m2/java/com/mogo/och/bus/passenger/provider/M2StatusViewManager.java +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/provider/M2StatusViewManager.java @@ -1,9 +1,9 @@ -package com.mogo.och.bus.passenger.provider; +package com.mogo.och.shuttle.passenger.provider; import android.content.Context; import android.view.View; -import com.mogo.och.bus.passenger.ui.widget.M2StatusBarView; +import com.mogo.och.shuttle.passenger.ui.widget.M2StatusBarView; import androidx.annotation.NonNull; import com.alibaba.android.arouter.facade.annotation.Route; diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2BaseFragment.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2BaseFragment.kt new file mode 100644 index 0000000000..c5c7b83350 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2BaseFragment.kt @@ -0,0 +1,71 @@ +package com.mogo.och.shuttle.passenger.ui + +import com.mogo.commons.mvp.MvpFragment +import com.mogo.och.shuttle.passenger.R +import com.mogo.och.shuttle.passenger.presenter.PM2Presenter +import com.mogo.och.common.module.wigets.media.MediaPlayerFragment + + +/** + * @author: wangmingjun + * @date: 2022/4/12 + */ +class PM2BaseFragment : + MvpFragment() { + + private var drivingFragment : PM2DrivingInfoFragment? = null + private var hdMapFragment : PM2HPMapFragment? = null + private var mediaFragment : MediaPlayerFragment? = null + + override fun getLayoutId(): Int { + return R.layout.shuttle_p_m2_fragment + } + + override fun getTagName(): String { + return TAG + } + + override fun initViews() { + //横竖屏 +// setScreenDirection() + + //隐藏小地图 + initFragment() + } + +// private fun setScreenDirection() { +// var ro = Settings.System.getInt(context?.contentResolver, +// Settings.System.USER_ROTATION,Surface.ROTATION_270) +// if (ro != Surface.ROTATION_270){ +// ro = Surface.ROTATION_270 +// } +// Settings.System.putInt(context?.contentResolver, +// Settings.System.USER_ROTATION,ro) +// } + + /** + * 初始化行程信息,高静地图,宣传 三个fragment + */ + private fun initFragment() { + + if (drivingFragment == null) drivingFragment = PM2DrivingInfoFragment() + childFragmentManager.beginTransaction().add(R.id.driving_fragment, drivingFragment!!) + .show(drivingFragment!!).commitAllowingStateLoss() + + if (hdMapFragment == null) hdMapFragment = PM2HPMapFragment() + childFragmentManager.beginTransaction().add(R.id.hd_map_fragment, hdMapFragment!!) + .show(hdMapFragment!!).commitAllowingStateLoss() + + if (mediaFragment == null) mediaFragment = MediaPlayerFragment() + childFragmentManager.beginTransaction().add(R.id.video_fragment, mediaFragment!!) + .show(mediaFragment!!).commitAllowingStateLoss() + } + + override fun createPresenter(): PM2Presenter { + return PM2Presenter(this) + } + + companion object { + public val TAG = PM2BaseFragment::class.java.simpleName + } +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2DrivingInfoFragment.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2DrivingInfoFragment.kt new file mode 100644 index 0000000000..4872a904f3 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2DrivingInfoFragment.kt @@ -0,0 +1,300 @@ +package com.mogo.och.shuttle.passenger.ui + +import android.graphics.BitmapFactory +import android.graphics.drawable.AnimationDrawable +import android.os.Bundle +import android.view.View +import androidx.core.content.ContextCompat +import com.amap.api.maps.model.LatLng +import com.mogo.commons.AbsMogoApplication +import com.mogo.commons.mvp.MvpFragment +import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView +import com.mogo.eagle.core.function.view.SiteMarkerBean +import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider +import com.mogo.och.shuttle.passenger.R +import com.mogo.och.shuttle.passenger.presenter.PM2DrivingPresenter +import com.mogo.och.common.module.utils.DateTimeUtil.* +import com.mogo.och.common.module.utils.NumberFormatUtil +import com.mogo.och.data.bean.BusStationBean +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.auto_tv +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.clg_distance_left_time +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.group_not_select_line +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.group_stationinfo +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.iv_animal_list +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.line_during_tv +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.line_name_tv +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.overMapView +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.speed_tv +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.station_name_tv +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.tv_arrived_notice +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.tv_distance +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.tv_left_time +import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.tv_next_station_title + +import me.jessyan.autosize.utils.AutoSizeUtils +import kotlin.math.ceil +import kotlin.math.roundToInt + +/** + * @author: wangmingjun + * @date: 2022/4/12 + */ +class PM2DrivingInfoFragment : + MvpFragment() { + + val stationIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.shuttle_p_m2_map_staton_icon) + val stationPassIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.shuttle_p_m2_map_staton_arrived_icon) + val startStationIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.shuttle_p_m2_map_start_icon) + val endStationIcon = BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.shuttle_p_m2_map_end_icon) + + /** + * 改变自动驾驶状态 + * + * @param status 2 - running 1 - enable 2 - disable + */ + override fun getLayoutId(): Int { + return R.layout.shuttle_p_m2_driving_info_fragment + } + + override fun getTagName(): String { + return TAG + } + + override fun initViews() { + speed_tv.setOnLongClickListener { + context?.let { ToggleDebugView.toggleDebugView.toggle(it) } + true + } + + line_name_tv.setTextColor(resources.getColor(R.color.shuttle_p_m2_line_name_tv_color)) + station_name_tv.setTextColor(resources.getColor(R.color.shuttle_p_m2_line_name_tv_color)) + speed_tv.setVertrial(true) + val intArrayOf = intArrayOf( + requireContext().resources.getColor(R.color.shuttle_p_m2_color_43cefe), + requireContext().resources.getColor(R.color.shuttle_p_m2_color_1466fb) + ) + speed_tv.setmColorList(intArrayOf) + +// current_time_tv.onClick { + +// //测试V2X消息 +// CallerMsgBoxManager.saveMsgBox( +// MsgBoxBean( +// MsgBoxType.V2X, +// V2XMsg( +// "6666", +// "超速行驶", +// "" +// ) +// ) +// ) +// +// val noticeTrafficStylePushData = NoticeTrafficStylePushData() +// noticeTrafficStylePushData.content= "测试公告布局" +// val noticeFromCloudMsg = NoticeFrCloudMsg(null, noticeTrafficStylePushData, 1) +// CallerMsgBoxManager.saveMsgBox( +// MsgBoxBean( +// MsgBoxType.NOTICE, noticeFromCloudMsg) +// ) +// BPRouteDataTestUtils.converToRouteData() +// } + } + + override fun initViews(savedInstanceState: Bundle?) { + super.initViews(savedInstanceState) + overMapView?.let { + it.onCreateView(savedInstanceState) + val radius = AutoSizeUtils.dp2px(requireContext(), 16f) + it.outlineProvider = TextureVideoViewOutlineProvider(radius.toFloat()) + it.clipToOutline = true + } + } + + override fun onResume() { + super.onResume() + overMapView?.let{ + it.onResume() + } + } + + override fun onPause() { + super.onPause() + overMapView?.let{ + it.onPause() + } + } + + override fun onDestroy() { + super.onDestroy() + overMapView?.let{ + it.onDestroy() + } + } + + fun updateSpeed(speed: Int){ + speed_tv.text = speed.toString() + } + + fun updateCarPlateNum(plateNum : String){ + + } + + fun updateTaskName(name: String){ + line_name_tv.text = name + } + + fun updateTaskDuringTime(time : String){ + line_during_tv.text = time + } + + fun changeOperationStatus(status:Boolean){ + if (!status){ + updateNoOrderUI() + } + } + + fun showNoTaskView(haveTask: Boolean){ + setLineInfoView(haveTask) + } + + private fun setLineInfoView(isShow: Boolean){ + if (!isShow){ + updateNoOrderUI() + } + } + + private fun updateNoOrderUI() { + line_name_tv.text = resources.getString(R.string.shuttle_p_m2_not_select_line_content) + updateNoStationView() + overMapView?.let { + it.clearSiteMarkers() + } + clearCustomPolyline() + } + + fun clearCustomPolyline(){ + overMapView?.let { + it.clearCustomPolyline() + } + } + private fun updateNoStationView(){ + station_name_tv.setTextColor(resources.getColor(R.color.shuttle_p_m2_next_tv_color)) + station_name_tv.text = resources.getString(R.string.shuttle_p_m2_empty_tv) + tv_distance.text = resources.getString(R.string.shuttle_p_m2_empty_remain_km) + tv_left_time.text = resources.getString(R.string.shuttle_p_m2_empty_remain_minute) + noLineShow() + } + + override fun createPresenter(): PM2DrivingPresenter { + return PM2DrivingPresenter(this) + } + + fun updateAutoStatus(isAutoPilot: Boolean) { + if (isAutoPilot){ + context?.let { auto_tv.setTextColor(ContextCompat.getColor(it,R.color.shuttle_p_m2_white_color)) } + context?.let { auto_tv.background = ContextCompat.getDrawable(it,R.drawable.shuttle_p_m2_auto_button_bg) } + }else{ + context?.let { auto_tv.setTextColor(ContextCompat.getColor(it,R.color.shuttle_p_m2_color_7094ad)) } + context?.let { auto_tv.background = ContextCompat.getDrawable(it,R.drawable.shuttle_p_m2_bg_p_m2_auto) } + } + } + + fun updateLineStations( + stations: MutableList, + stationsPass: MutableList, + startStation: LatLng?, + endStation: LatLng? + ){ + overMapView?.let { + val stationsList: MutableList = mutableListOf() + startStation?.let { start-> + stationsList.add(SiteMarkerBean(start,startStationIcon,0.5f,0.5f)) + } + for (stationsPass in stationsPass) { + stationsList.add(SiteMarkerBean(stationsPass,stationPassIcon,0.5f,0.5f)) + } + for (stationsPass in stations) { + stationsList.add(SiteMarkerBean(stationsPass,stationIcon,0.5f,0.5f)) + } + endStation?.let {end-> + stationsList.add(SiteMarkerBean(end,endStationIcon,0.5f,0.5f)) + } + it.drawSiteMarkers(stationsList) + } + } + + fun updateStationsInfo(stations: MutableList, i: Int, isArrived: Boolean){ + if (stations.size == 0) return + if (0<= i && i 0) { + if (meters / 1000 < 1) { + disUnit = "米" + remainDis = meters.toFloat().roundToInt().toString() + } else { + disUnit = "公里" + remainDis = NumberFormatUtil.formatLong(meters.toDouble() / 1000) + } + } + + val time = ceil(timeInSecond / 60f).toInt() + + "$remainDis$disUnit".also { tv_distance.text = it } + "${time}分钟".also { tv_left_time.text = it } + } + + fun noLineShow(){ + // 没有线路展示 + group_not_select_line.visibility = View.VISIBLE + // 下一个站点 + group_stationinfo.visibility = View.GONE + // 距离和剩余大概时间 + clg_distance_left_time.visibility = View.GONE + // 到达站点 + tv_arrived_notice.visibility = View.GONE + + iv_animal_list.visibility = View.GONE + } + // 有线路正在到站点 + fun haveLineAndArriveingStation(){ + group_not_select_line.visibility = View.GONE + group_stationinfo.visibility = View.VISIBLE + clg_distance_left_time.visibility = View.VISIBLE + tv_arrived_notice.visibility = View.GONE + iv_animal_list.visibility = View.GONE + } + // 有线路到达站点 + private fun haveLineAndArrivedStation(){ + group_not_select_line.visibility = View.GONE + group_stationinfo.visibility = View.VISIBLE + clg_distance_left_time.visibility = View.GONE + tv_arrived_notice.visibility = View.VISIBLE + iv_animal_list.visibility = View.VISIBLE + val animationDrawable = iv_animal_list.drawable as AnimationDrawable + animationDrawable.start() + } + + companion object { + private val TAG = PM2DrivingInfoFragment::class.java.simpleName + } +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2HPMapFragment.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2HPMapFragment.kt new file mode 100644 index 0000000000..a404d073b5 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2HPMapFragment.kt @@ -0,0 +1,127 @@ +package com.mogo.och.shuttle.passenger.ui + +import android.os.Bundle +import com.mogo.commons.mvp.MvpFragment +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager.getOverlayManager +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.map.overlay.core.Level +import com.mogo.map.overlay.point.Point +import com.mogo.map.MapDataWrapper +import com.mogo.och.shuttle.passenger.R +import com.mogo.och.shuttle.passenger.constant.M2Const.Companion.TYPE_MARKER_M2_LINE +import com.mogo.och.shuttle.passenger.presenter.PM2ADASPresenter +import com.mogo.och.common.module.utils.OCHThreadPoolManager +import kotlinx.android.synthetic.main.shuttle_p_m2_hpmap_fragment.mapBizView + +import java.util.* + +/** + * @author: wangmingjun + * @date: 2022/4/12 + */ +class PM2HPMapFragment : + MvpFragment() { + /** + * 改变自动驾驶状态 + * + * @param status 2 - running 1 - enable 2 - disable + */ + override fun getLayoutId(): Int { + return R.layout.shuttle_p_m2_hpmap_fragment + } + + override fun getTagName(): String { + return TAG + } + + override fun initViews() { + } + + override fun initViews(savedInstanceState: Bundle?) { + super.initViews(savedInstanceState) + mapBizView.onCreate(savedInstanceState) + } + + override fun onResume() { + super.onResume() + mapBizView.onResume() + } + + override fun onLowMemory() { + super.onLowMemory() + mapBizView.onLowMemory() + } + + override fun onSaveInstanceState(outState: Bundle) { + super.onSaveInstanceState(outState) + mapBizView.onSaveInstanceState(outState) + } + + override fun onPause() { + super.onPause() + mapBizView.onPause() + } + + override fun onDestroyView() { + mapBizView.onDestroy() + super.onDestroyView() + } + + override fun createPresenter(): PM2ADASPresenter { + return PM2ADASPresenter(this) + } + + companion object { + private val TAG = PM2HPMapFragment::class.java.simpleName + } + + fun setMapMaker( + uuid: String, + station: MutableList, + ) { + //开启线程执行起终点marker设置 + val setMapMarkerRunnable = Runnable { + d( + "setMapMaker= " + Thread.currentThread().name, + uuid + "=latitude=" + station[1] + ",longitude=" + station[0] + ) + + val builder = Point.Options.Builder( + TYPE_MARKER_M2_LINE, + Level.MAP_MARKER + ) + .setId(uuid) + .anchor(0.5f, 0.5f) + .set3DMode(true) + .isUseGps(true) + .controlAngle(true) + .icon3DRes(R.raw.star_marker) + .longitude(station[0]) + .latitude(station[1]) + MapDataWrapper.getCenterLineInfo( + station[0], station[1], -1f + ) { + // 有可能鹰眼map为空没有角度。判空使用后可能造成maker角度跟道路角度不一致 地图未初始化会返回空 + it?.let{ + builder.rotate(it.angle.toFloat()) + } + } + val overlayManager = getOverlayManager() + overlayManager?.showOrUpdatePoint(builder.build()) + } + OCHThreadPoolManager.getsInstance().execute(setMapMarkerRunnable) + } + + fun removeMapMaker( + uuid: String, + ) { + //开启线程移除起终点marker设置 + val removeMapMarkerRunnable = Runnable { + d("RemoveMapMaker=" + Thread.currentThread().name, uuid) + val overlayManager = getOverlayManager() + overlayManager?.removeAllPointsInOwner(TYPE_MARKER_M2_LINE) + } + OCHThreadPoolManager.getsInstance().execute(removeMapMarkerRunnable) + } + +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2BlueToothView.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2BlueToothView.kt new file mode 100644 index 0000000000..42d43b81db --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2BlueToothView.kt @@ -0,0 +1,36 @@ +package com.mogo.och.shuttle.passenger.ui.widget + +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import com.mogo.eagle.core.function.api.devatools.IMoGoDevaToolsListener +import com.mogo.eagle.core.function.hmi.ui.widget.BlueToothView +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import com.mogo.och.shuttle.passenger.R +import kotlinx.android.synthetic.main.shuttle_p_m2_view_blue_tooth.view.blueView + +/** + * 魔戒蓝牙控件 + * 放置于StatusBar右侧位置 + */ +class M2BlueToothView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : BlueToothView(context, attrs, defStyleAttr),IMoGoDevaToolsListener { + + init { + LayoutInflater.from(context).inflate(R.layout.shuttle_p_m2_view_blue_tooth, this, true) + } + + override fun mofangStatus(status: Boolean) { + ThreadUtils.runOnUiThread { + if (status) { + blueView.setImageResource(R.drawable.shuttle_p_m2_blue_tooth_close) + } else { + blueView.setImageResource(R.drawable.shuttle_p_m2_blue_tooth_open) + } + } + } + +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2PTrafficLightView.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2PTrafficLightView.kt new file mode 100644 index 0000000000..17e0c7e594 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2PTrafficLightView.kt @@ -0,0 +1,181 @@ +package com.mogo.och.shuttle.passenger.ui.widget + +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.widget.LinearLayout +import com.mogo.eagle.core.data.enums.DataSourceType +import com.mogo.eagle.core.data.enums.TrafficLightEnum +import com.mogo.eagle.core.function.api.datacenter.union.IMoGoTrafficLightListener +import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager +import com.mogo.eagle.core.utilcode.util.UiThreadHandler +import com.mogo.och.shuttle.passenger.R +import kotlinx.android.synthetic.main.shuttle_p_m2_traffic_light_view.view.m2_p_traffic_light_bg +import kotlinx.android.synthetic.main.shuttle_p_m2_traffic_light_view.view.m2_p_traffic_light_iv +import kotlinx.android.synthetic.main.shuttle_p_m2_traffic_light_view.view.m2_p_traffic_light_time_tv + +/** + * bus乘客端:红绿灯view + * + * Created on 2022/3/14 + */ +class M2PTrafficLightView @JvmOverloads constructor( + context: Context?, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : LinearLayout(context, attrs, defStyleAttr), IMoGoTrafficLightListener { + + companion object { + private const val TAG = "M2PTrafficLightView" + } + + private var mCurrentLightId = TrafficLightEnum.BLACK + + init { + init(context) + } + + private fun init(context: Context?) { + LayoutInflater.from(context).inflate(R.layout.shuttle_p_m2_traffic_light_view, this, true) + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + CallerTrafficLightListenerManager.addListener(TAG, this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + CallerTrafficLightListenerManager.removeListener(TAG) + } + + /** + * 展示红绿灯预警 + * + * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 + */ + override fun showTrafficLight(checkLightId: TrafficLightEnum, lightSource: DataSourceType) { + super.showTrafficLight(checkLightId, lightSource) + mCurrentLightId = checkLightId + updateTrafficLightIcon(checkLightId) + } + + /** + * 关闭红绿灯预警展示,并重制灯态 + */ + override fun disableTrafficLight() { + super.disableTrafficLight() + UiThreadHandler.post { + mCurrentLightId = TrafficLightEnum.BLACK + this@M2PTrafficLightView.visibility = GONE + } + } + + /** + * @param redNum 红灯倒计时 + * @param yellowNum 黄灯倒计时 + * @param greenNum 绿灯倒计时 + */ + override fun changeCountdownTrafficLightNum(redNum: Int, yellowNum: Int, greenNum: Int) { + super.changeCountdownTrafficLightNum(redNum, yellowNum, greenNum) + resetView() + when (mCurrentLightId) { + TrafficLightEnum.RED -> changeCountdownRed(redNum) + TrafficLightEnum.YELLOW -> changeCountdownYellow(yellowNum) + TrafficLightEnum.GREEN -> changeCountdownGreen(greenNum) + else -> UiThreadHandler.post { m2_p_traffic_light_time_tv.text = "" } + } + } + + override fun changeCountdownRed(redNum: Int) { + super.changeCountdownRed(redNum) + UiThreadHandler.post { + if (redNum > 0) { + resetView() + m2_p_traffic_light_time_tv.text = redNum.toString() + } else { + disableTrafficLightCountDown() + m2_p_traffic_light_time_tv.text = "" + } + } + } + + override fun changeCountdownGreen(greenNum: Int) { + super.changeCountdownGreen(greenNum) + UiThreadHandler.post { + if (greenNum > 0) { + resetView() + m2_p_traffic_light_time_tv.text = greenNum.toString() + } else { + disableTrafficLightCountDown() + m2_p_traffic_light_time_tv.text = "" + } + } + } + + override fun changeCountdownYellow(yellowNum: Int) { + super.changeCountdownYellow(yellowNum) + UiThreadHandler.post { + if (yellowNum > 0) { + resetView() + m2_p_traffic_light_time_tv.text = yellowNum.toString() + } else { + disableTrafficLightCountDown() + m2_p_traffic_light_time_tv.text = "" + } + } + } + + /** + * 更新红绿灯icon + * + * @param lightId 0-都是默认,1-红,2-黄,3-绿 + */ + private fun updateTrafficLightIcon(lightId: TrafficLightEnum) { + UiThreadHandler.post { + when (lightId) { + TrafficLightEnum.RED -> { + m2_p_traffic_light_iv.setBackgroundResource(R.drawable.shuttle_p_m2_light_red_nor) + this@M2PTrafficLightView.visibility = VISIBLE + } + TrafficLightEnum.YELLOW -> { + m2_p_traffic_light_iv.setBackgroundResource(R.drawable.shuttle_p_m2_light_yellow_nor) + this@M2PTrafficLightView.visibility = VISIBLE + } + TrafficLightEnum.GREEN -> { + m2_p_traffic_light_iv.setBackgroundResource(R.drawable.shuttle_p_m2_light_green_nor) + this@M2PTrafficLightView.visibility = VISIBLE + } + else -> this@M2PTrafficLightView.visibility = GONE + } + } + } + + override fun disableTrafficLightCountDown() { + super.disableTrafficLightCountDown() + UiThreadHandler.post { + val layoutParams = layoutParams + if (layoutParams is MarginLayoutParams) { + val lp = layoutParams + lp.width = resources.getDimension(R.dimen.dp_40).toInt() + setLayoutParams(lp) + m2_p_traffic_light_time_tv.visibility = GONE + m2_p_traffic_light_bg.layoutParams.width = + resources.getDimension(R.dimen.dp_40).toInt() + } + } + } + + private fun resetView() { + val layoutParams = layoutParams + if (layoutParams is MarginLayoutParams) { + val lp = layoutParams + lp.width = resources.getDimension(R.dimen.dp_60).toInt() + setLayoutParams(lp) + m2_p_traffic_light_time_tv.visibility = VISIBLE + m2_p_traffic_light_bg.layoutParams.width = + resources.getDimension(R.dimen.dp_60).toInt() + } + } +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2StatusBarView.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2StatusBarView.kt new file mode 100644 index 0000000000..9d837d88bb --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2StatusBarView.kt @@ -0,0 +1,110 @@ +package com.mogo.och.shuttle.passenger.ui.widget + +import android.annotation.* +import android.content.Context +import android.graphics.Color +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.ViewGroup +import androidx.constraintlayout.widget.ConstraintLayout +import chassis.ChassisStatesOuterClass +import com.mogo.eagle.core.function.api.autopilot.IMoGoBatteryManagementSystemListener +import com.mogo.eagle.core.function.api.hmi.view.IViewControlListener +import com.mogo.eagle.core.function.api.setting.IMoGoSkinModeChangeListener +import com.mogo.eagle.core.function.call.autopilot.CallerBatteryManagementSystemListenerManager +import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager +import com.mogo.eagle.core.function.call.hmi.CallerHmiViewControlListenerManager +import com.mogo.eagle.core.function.call.setting.CallerSkinModeListenerManager +import com.mogo.eagle.core.utilcode.kotlin.* +import com.mogo.eagle.core.utilcode.util.ClickUtils +import com.mogo.och.shuttle.passenger.R +import kotlinx.android.synthetic.main.shuttle_p_m2_view_status_bar.view.progress +import kotlinx.android.synthetic.main.shuttle_p_m2_view_status_bar.view.tv_power_cos +import kotlinx.coroutines.* +import me.jessyan.autosize.utils.AutoSizeUtils + +/** + * @author: wangmingjun + * @date: 2023/2/14 + */ +class M2StatusBarView @JvmOverloads constructor( + context: Context, attrs: AttributeSet? = null +) : ConstraintLayout(context, attrs), IViewControlListener, IMoGoSkinModeChangeListener, + IMoGoBatteryManagementSystemListener { + + companion object { + const val TAG = "M2StatusBarView" + } + + @Volatile + private var oldBmsSoc: Float = -1.0f + + init { + LayoutInflater.from(context).inflate(R.layout.shuttle_p_m2_view_status_bar, this, true) + setBackgroundColor(Color.parseColor("#80FFFFFF")) + isClickable = true + isFocusable = true + } + + + @SuppressLint("ClickableViewAccessibility") + override fun onAttachedToWindow() { + super.onAttachedToWindow() + post { + val params: ViewGroup.LayoutParams = getLayoutParams() + params.height = AutoSizeUtils.dp2px(context,40f) + layoutParams = params + } + //添加view控制 + CallerHmiViewControlListenerManager.addListener(TAG,this) + // 添加换肤监听 + CallerSkinModeListenerManager.addListener(TAG, this) + //电量 + CallerBatteryManagementSystemListenerManager.addListener(TAG,this) + + progress?.also { + it.progress = 50 + } + tv_power_cos?.also { + it.text = "50%" + } + } + + override fun onSkinModeChange(skinMode: Int) { + when (skinMode) { + 0 -> setStatusBarDarkOrLight(false) + 1 -> setStatusBarDarkOrLight(true) + } + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + CallerHmiViewControlListenerManager.removeListener(TAG) + CallerSkinModeListenerManager.removeListener(TAG) + CallerDevaToolsManager.hideStatusBar() + } + + @SuppressLint("SetTextI18n") + override fun onBatteryManagementSystemStates(states: ChassisStatesOuterClass.BMSSystemStates) { + if (ClickUtils.isClickTooFrequent(this,1000)) { + return + } + val bmsSoc = states.bmsSoc + try { + if (oldBmsSoc != bmsSoc ) { + scope.launch { + if(bmsSoc >1){ + progress?.also { it.progress = bmsSoc.toInt() } + tv_power_cos?.also { it.text = "${bmsSoc.toInt()}%" } + }else{ + val power = (bmsSoc * 100).toInt() + progress?.also { it.progress = power } + tv_power_cos?.also {it.text = "$power%" } + } + } + } + } finally { + oldBmsSoc = bmsSoc + } + } +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2TurnLightView.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2TurnLightView.kt new file mode 100644 index 0000000000..663976a36c --- /dev/null +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2TurnLightView.kt @@ -0,0 +1,199 @@ +package com.mogo.och.shuttle.passenger.ui.widget + +import android.animation.AnimatorSet +import android.animation.ObjectAnimator +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.View +import android.view.animation.AlphaAnimation +import android.view.animation.Animation +import android.widget.ImageView +import androidx.constraintlayout.widget.ConstraintLayout +import com.mogo.eagle.core.function.api.datacenter.union.IMoGoTurnLightListener +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLamplightListenerManager +import com.mogo.eagle.core.function.call.v2x.CallerTurnLightListenerManager +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import com.mogo.och.shuttle.passenger.R +import com.mogo.och.common.module.manager.lightmanager.TurnLightManager +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.left_nor_image +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.left_select_image +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.right_nor_image +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.right_select_image +import kotlinx.android.synthetic.main.shuttle_p_jl_turn_light_status.view.turn_light_layout + +/** + * @author: wangmingjun + * @date: 2023/2/13 + */ +class M2TurnLightView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : ConstraintLayout(context, attrs, defStyleAttr), + IMoGoTurnLightListener, TurnLightManager.TurnLightListener { + + + companion object { + private const val TAG = "TurnLightViewStatus" + } + + private var isLeftLight: Boolean = false + private var isRightLight: Boolean = false + private var isDisappear: Boolean = false + + init { + LayoutInflater.from(context) + .inflate(R.layout.shuttle_p_m2_turn_light_status, this, true) + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + CallerTurnLightListenerManager.addListener(TAG,this) + + TurnLightManager.addTurnLightStatusChangeListener(TAG,this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + CallerChassisLamplightListenerManager.removeListener(TAG) + CallerTurnLightListenerManager.removeListener(TAG) + } + + override fun hideTurnLightView() { + ThreadUtils.runOnUiThread{ + if (!isDisappear) { + isDisappear = true + isLeftLight = false + isRightLight = false + animationDisappear() + } + } + } + + override fun statusChange(newStatus: TurnLightManager.TurnLightStatus) { + ThreadUtils.runOnUiThread { + setTurnLight(newStatus) + } + } + + /** + * 转向灯动画 + */ + private fun setTurnLight(directionLight: TurnLightManager.TurnLightStatus) { + if (!isAttachedToWindow) { + return + } + //根据左右进行显示和隐藏,实际要判断每个来的时间和频度 + when (directionLight) { + TurnLightManager.TurnLightStatus.TURN_LIGHT_LEFT -> { //左转向 + if (!isLeftLight) { + isLeftLight = true + isRightLight = false + isDisappear = false + showNormalAnimation() + left_select_image.visibility = View.VISIBLE + right_select_image.visibility = View.GONE + right_select_image.clearAnimation() + setAnimation(left_select_image) + } + } + TurnLightManager.TurnLightStatus.TURN_LIGHT_RIGHT -> { //右转向 + if (!isRightLight) { + isRightLight = true + isLeftLight = false + isDisappear = false + showNormalAnimation() + left_select_image.visibility = View.GONE + right_select_image.visibility = View.VISIBLE + left_select_image.clearAnimation() + setAnimation(right_select_image) + } + } + TurnLightManager.TurnLightStatus.TURN_LIGHT_NONE -> { //消失 + if (!isDisappear) { + isDisappear = true + isLeftLight = false + isRightLight = false + animationDisappear() + } + } + } + } + + //显示背景 + private fun showNormalAnimation() { + val appearAnimation = AlphaAnimation(0f, 1.0f) + appearAnimation.duration = 300 + val appearAnimationImage = AlphaAnimation(0f, 1.0f) + appearAnimation.duration = 500 + turn_light_layout.startAnimation(appearAnimation) + left_nor_image.startAnimation(appearAnimationImage) + right_nor_image.startAnimation(appearAnimationImage) + + turn_light_layout.visibility = View.VISIBLE + left_nor_image.visibility = View.VISIBLE + right_nor_image.visibility = View.VISIBLE + } + + //消失动画,当转向等数据为空时候 + private fun animationDisappear() { + left_select_image.visibility = View.GONE + right_select_image.visibility = View.GONE + left_select_image.clearAnimation() + right_select_image.clearAnimation() + + left_nor_image.clearAnimation() + right_nor_image.clearAnimation() + turn_light_layout.clearAnimation() + + val disappearAnimationLeft = AlphaAnimation(1.0f, 0f) + disappearAnimationLeft.duration = 300 + + val disappearAnimationBg = AlphaAnimation(1.0f, 0f) + disappearAnimationBg.duration = 500 + + left_nor_image.startAnimation(disappearAnimationLeft) + right_nor_image.startAnimation(disappearAnimationLeft) + turn_light_layout.startAnimation(disappearAnimationBg) + + disappearAnimationLeft.setAnimationListener(object : Animation.AnimationListener { + override fun onAnimationRepeat(p0: Animation?) { + } + + override fun onAnimationStart(p0: Animation?) { + } + + override fun onAnimationEnd(p0: Animation?) { + left_nor_image.visibility = View.GONE + right_nor_image.visibility = View.GONE + } + }) + + disappearAnimationBg.setAnimationListener(object : Animation.AnimationListener { + override fun onAnimationRepeat(p0: Animation?) { + } + + override fun onAnimationStart(p0: Animation?) { + } + + override fun onAnimationEnd(p0: Animation?) { + turn_light_layout.visibility = View.GONE + } + }) + } + + //实现图片闪烁效果 + private fun setAnimation(imageView: ImageView) { + val animationSet = AnimatorSet() + val valueAnimator = ObjectAnimator.ofFloat(imageView, "alpha", 0f, 1.0f) + val valueAnimatorDisappear = ObjectAnimator.ofFloat(imageView, "alpha", 1.0f, 0f) + valueAnimator.duration = 1000 + valueAnimatorDisappear.duration = 800 + valueAnimator.repeatCount = -1 + valueAnimatorDisappear.repeatCount = -1 + animationSet.playTogether(valueAnimatorDisappear, valueAnimator) + animationSet.start() + } + +} \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrive_line_blue.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_arrive_line_blue.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrive_line_blue.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_arrive_line_blue.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrive_line_green.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_arrive_line_green.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_arrive_line_green.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_arrive_line_green.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/auto_close.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_auto_close.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/auto_close.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_auto_close.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/auto_open.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_auto_open.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/auto_open.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_auto_open.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_arrived_station.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_bg_arrived_station.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_arrived_station.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_bg_arrived_station.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_end_tag_bg.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_bg_end_tag_bg.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_end_tag_bg.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_bg_end_tag_bg.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_start_tag_bg.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_bg_start_tag_bg.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bg_bus_p_start_tag_bg.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_bg_start_tag_bg.png diff --git a/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/m2_blue_tooth_close.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_blue_tooth_close.png similarity index 100% rename from OCH/shuttle/passenger/src/m2/res/drawable-nodpi/m2_blue_tooth_close.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_blue_tooth_close.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/m2_blue_tooth_open.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_blue_tooth_open.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/m2_blue_tooth_open.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_blue_tooth_open.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_line_logo.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_bus_line_logo.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_line_logo.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_bus_line_logo.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/cur_station_arrived_bg.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_cur_station_arrived_bg.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/cur_station_arrived_bg.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_cur_station_arrived_bg.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/cur_station_un_arrived_bg.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_cur_station_un_arrived_bg.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/cur_station_un_arrived_bg.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_cur_station_un_arrived_bg.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_green_nor.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_light_green_nor.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_green_nor.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_light_green_nor.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_red_nor.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_light_red_nor.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_red_nor.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_light_red_nor.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_yellow_nor.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_light_yellow_nor.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_light_yellow_nor.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_light_yellow_nor.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_blue.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_line_blue.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_blue.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_line_blue.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_green.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_line_green.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_line_green.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_line_green.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrived_point.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_arrived_point.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrived_point.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_arrived_point.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrow_arrived.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_arrow_arrived.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrow_arrived.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_arrow_arrived.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrow_un_arrive.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_arrow_un_arrive.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_arrow_un_arrive.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_arrow_un_arrive.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_car.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_car.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_car.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_car.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_end_point.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_end_point.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_end_point.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_end_point.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_start_point.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_start_point.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_start_point.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_start_point.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_unarrived_point.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_unarrived_point.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_map_unarrived_point.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_map_unarrived_point.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_no_order_data.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_no_order_data.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_no_order_data.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_no_order_data.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_blue.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_point_blue.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_blue.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_point_blue.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_gray.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_point_gray.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_point_gray.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_point_gray.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_right_route_bg.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_right_route_bg.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_right_route_bg.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_right_route_bg.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_route_bg.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_route_bg.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_route_bg.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_route_bg.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_0.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_speak_arrived_icon_0.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_0.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_speak_arrived_icon_0.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_1.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_speak_arrived_icon_1.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_1.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_speak_arrived_icon_1.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_2.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_speak_arrived_icon_2.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/speak_arrived_icon_2.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_speak_arrived_icon_2.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/card_split_line_bg.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_split_line_bg.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/card_split_line_bg.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_split_line_bg.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_status_bar_logo.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_status_bar_logo.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_status_bar_logo.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_status_bar_logo.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_youzhuan_open.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_youzhuan_open.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_youzhuan_open.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_youzhuan_open.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_youzhuan_un_open.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_youzhuan_un_open.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_youzhuan_un_open.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_youzhuan_un_open.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_zuozhuan_open.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_zuozhuan_open.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_zuozhuan_open.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_zuozhuan_open.png diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_zuozhuan_un_open.png b/OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_zuozhuan_un_open.png similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable-nodpi/bus_p_zuozhuan_un_open.png rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable-nodpi/shuttle_p_jl_zuozhuan_un_open.png diff --git a/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_end_station_circle.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_end_station_circle.xml new file mode 100644 index 0000000000..cb17f7f2c3 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_end_station_circle.xml @@ -0,0 +1,6 @@ + + + + + diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_middle_station_circle.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_middle_station_circle.xml similarity index 50% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_middle_station_circle.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_middle_station_circle.xml index 4dca66c4fe..13b479db48 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_bus_p_middle_station_circle.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_middle_station_circle.xml @@ -1,6 +1,6 @@ - - + + diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bus_progress_bar_bg.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_progress_bar.xml similarity index 85% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable/bus_progress_bar_bg.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_progress_bar.xml index aa1eeaecd0..78d4679853 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bus_progress_bar_bg.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_progress_bar.xml @@ -8,7 +8,7 @@ \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_speak_icon_arrived.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_speak_icon_arrived.xml new file mode 100644 index 0000000000..5590838117 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_speak_icon_arrived.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_start_station_circle.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_start_station_circle.xml new file mode 100644 index 0000000000..2516df8c8e --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_start_station_circle.xml @@ -0,0 +1,6 @@ + + + + + diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_status_bar.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_status_bar.xml similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable/bg_status_bar.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_status_bar.xml diff --git a/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_traffic_light_background.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_traffic_light_background.xml new file mode 100644 index 0000000000..4982506777 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_bg_traffic_light_background.xml @@ -0,0 +1,9 @@ + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/brakelight_background_daytime.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_brakelight_background_daytime.xml similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable/brakelight_background_daytime.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_brakelight_background_daytime.xml diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bus_p_dividing_line_bg.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_dividing_line_bg.xml similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable/bus_p_dividing_line_bg.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_dividing_line_bg.xml diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/bus_p_panel_cur_station_panel.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_panel_cur_station_panel.xml similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable/bus_p_panel_cur_station_panel.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_panel_cur_station_panel.xml diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/drawable/progress_item_round.xml b/OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_progress_item_round.xml similarity index 100% rename from OCH/shuttle/passenger/src/jinlvvan/res/drawable/progress_item_round.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/drawable/shuttle_p_jl_progress_item_round.xml diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_base_fragment.xml similarity index 98% rename from OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_base_fragment.xml index d911e5b4a2..fff8c5c193 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_base_fragment.xml @@ -16,7 +16,7 @@ app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent"/> - @@ -24,12 +24,12 @@ android:id="@+id/no_order_data_tv" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:textColor="@color/bus_p_speed_txt_color" - android:textSize="@dimen/bus_p_no_data_size" + android:textColor="@color/shuttle_p_jl_speed_txt_color" + android:textSize="@dimen/shuttle_p_jl_no_data_size" android:layout_marginTop="50dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toBottomOf="@+id/no_order_data_iv" - android:text="@string/bus_p_no_out"/> + android:text="@string/shuttle_p_jl_no_out"/> \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_route_fragment.xml b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_route_fragment.xml similarity index 82% rename from OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_route_fragment.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_route_fragment.xml index 0215d426e2..6b44d9a4cb 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_route_fragment.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_route_fragment.xml @@ -1,9 +1,9 @@ + android:background="@drawable/shuttle_p_jl_right_route_bg"> @@ -76,12 +76,12 @@ android:id="@+id/bus_p_speed_tv" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginLeft="@dimen/bus_p_route_info_margin_left" + android:layout_marginLeft="@dimen/shuttle_p_jl_route_info_margin_left" android:layout_marginTop="@dimen/dp_90" android:includeFontPadding="false" android:letterSpacing="-0.05" android:text="0" - android:textSize="@dimen/bus_p_speed_txt_size" + android:textSize="@dimen/shuttle_p_jl_speed_txt_size" android:textStyle="bold" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -91,12 +91,12 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/dp_10" - android:layout_marginRight="@dimen/bus_p_route_info_margin_right" + android:layout_marginRight="@dimen/shuttle_p_jl_route_info_margin_right" android:layout_marginBottom="@dimen/dp_20" android:includeFontPadding="false" - android:text="@string/bus_p_speed_unit_txt" - android:textColor="@color/bus_p_speed_txt_color" - android:textSize="@dimen/bus_p_speed_unit_txt_size" + android:text="@string/shuttle_p_jl_speed_unit_txt" + android:textColor="@color/shuttle_p_jl_speed_txt_color" + android:textSize="@dimen/shuttle_p_jl_speed_unit_txt_size" app:layout_constraintBottom_toBottomOf="@+id/bus_p_speed_tv" app:layout_constraintLeft_toRightOf="@+id/bus_p_speed_tv" /> @@ -105,27 +105,25 @@ android:layout_width="@dimen/dp_100" android:layout_height="@dimen/dp_58" android:layout_marginTop="@dimen/dp_10" - android:src="@drawable/auto_close" + android:src="@drawable/shuttle_p_jl_auto_close" app:layout_constraintLeft_toLeftOf="@+id/bus_p_speed_tv" app:layout_constraintTop_toBottomOf="@+id/bus_p_speed_tv" /> - + app:layout_constraintTop_toTopOf="@+id/auto_status_iv" /> @@ -139,7 +137,7 @@ android:format24Hour="HH:mm" android:gravity="center" android:includeFontPadding="false" - android:textColor="@color/bus_p_clock_17417B" + android:textColor="@color/shuttle_p_jl_clock_17417B" android:textSize="@dimen/dp_66" app:layout_constraintBottom_toBottomOf="@+id/bus_p_speed_tv" app:layout_constraintLeft_toRightOf="@+id/dividing_line_1" @@ -154,7 +152,7 @@ android:format24Hour="yyyy年MM月dd日" android:gravity="center" android:includeFontPadding="false" - android:textColor="@color/bus_p_clock_17417B" + android:textColor="@color/shuttle_p_jl_clock_17417B" android:textSize="@dimen/dp_26" app:layout_constraintLeft_toLeftOf="@+id/textClockHourMin" app:layout_constraintTop_toBottomOf="@+id/textClockHourMin" /> @@ -169,7 +167,7 @@ android:format24Hour="EEEE" android:gravity="center" android:includeFontPadding="false" - android:textColor="@color/bus_p_clock_17417B" + android:textColor="@color/shuttle_p_jl_clock_17417B" android:textSize="@dimen/dp_26" app:layout_constraintLeft_toLeftOf="@+id/textClockDate" app:layout_constraintTop_toBottomOf="@+id/textClockDate" /> @@ -180,7 +178,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/dp_50" - android:src="@drawable/card_split_line_bg" + android:src="@drawable/shuttle_p_jl_split_line_bg" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toBottomOf="@+id/dividing_line_1" /> @@ -190,8 +188,8 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/dp_104" - android:text="@string/bus_p_cur_station_title" - android:textColor="@color/bus_p_line_name_color" + android:text="@string/shuttle_p_jl_cur_station_title" + android:textColor="@color/shuttle_p_jl_line_name_color" android:textSize="@dimen/dp_38" android:textStyle="bold" app:layout_constraintLeft_toLeftOf="@+id/bus_p_speed_tv" @@ -201,7 +199,7 @@ android:id="@+id/speak_arrived_iv" android:layout_width="wrap_content" android:layout_height="@dimen/dp_40" - android:src="@drawable/bg_p_speak_icon_arrived" + android:src="@drawable/shuttle_p_jl_bg_speak_icon_arrived" app:layout_constraintBottom_toBottomOf="@+id/bus_p_cur_station_title" app:layout_constraintLeft_toRightOf="@+id/bus_p_cur_station_title" app:layout_constraintTop_toTopOf="@+id/bus_p_cur_station_title" /> @@ -211,11 +209,11 @@ android:layout_width="wrap_content" android:layout_height="@dimen/dp_57" android:layout_marginRight="@dimen/dp_90" - android:background="@drawable/cur_station_arrived_bg" + android:background="@drawable/shuttle_p_jl_cur_station_arrived_bg" android:gravity="center" android:paddingLeft="@dimen/dp_30" android:paddingRight="@dimen/dp_30" - android:text="@string/bus_p_cur_station_arrived_tip" + android:text="@string/shuttle_p_jl_cur_station_arrived_tip" android:textColor="@android:color/white" android:textSize="@dimen/dp_30" android:textStyle="bold" @@ -229,14 +227,14 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/dp_36" android:text="-- --" - android:textColor="@color/bus_p_clock_17417B" + android:textColor="@color/shuttle_p_jl_clock_17417B" android:textSize="@dimen/dp_56" android:textStyle="bold" app:layout_constraintLeft_toLeftOf="@+id/bus_p_cur_station_title" app:layout_constraintTop_toBottomOf="@+id/bus_p_cur_station_title" /> - diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_stations_common_item.xml b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_stations_common_item.xml similarity index 92% rename from OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_stations_common_item.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_stations_common_item.xml index 3bd9615a30..60d2419315 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_stations_common_item.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_stations_common_item.xml @@ -9,7 +9,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:text="--" - android:textSize="@dimen/bus_p_station_txt_size" + android:textSize="@dimen/shuttle_p_jl_station_txt_size" android:includeFontPadding = "false" android:singleLine="true" android:ellipsize="marquee" @@ -17,7 +17,7 @@ android:layout_marginRight="@dimen/dp_60" android:layout_marginTop="@dimen/dp_68" android:textStyle="bold" - android:textColor="@color/bus_p_station_txt_color" + android:textColor="@color/shuttle_p_jl_station_txt_color" android:layout_marginLeft="@dimen/dp_90" app:customGap="0.5" app:useCustomGap="true" @@ -51,7 +51,7 @@ android:layout_width="@dimen/dp_60" android:layout_height="@dimen/dp_61" android:scaleType="centerInside" - android:src="@drawable/bus_p_point_blue" + android:src="@drawable/shuttle_p_jl_point_blue" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="@+id/bus_p_station" app:layout_constraintBottom_toBottomOf="@+id/bus_p_station"/> diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_traffic_light_view.xml b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_traffic_light_view.xml similarity index 56% rename from OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_traffic_light_view.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_traffic_light_view.xml index 5a0db32bc0..41eacc318b 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/res/layout/bus_p_traffic_light_view.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_traffic_light_view.xml @@ -2,22 +2,22 @@ diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/layout/view_turn_light_status_daytime.xml b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_turn_light_status.xml similarity index 84% rename from OCH/shuttle/passenger/src/jinlvvan/res/layout/view_turn_light_status_daytime.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_turn_light_status.xml index f206e99831..dfbed02b59 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/res/layout/view_turn_light_status_daytime.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_turn_light_status.xml @@ -9,7 +9,7 @@ android:id="@+id/turn_light_layout" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="@drawable/brakelight_background_daytime" + android:background="@drawable/shuttle_p_jl_brakelight_background_daytime" android:layout_gravity="top|center_horizontal" android:paddingLeft="@dimen/dp_10" android:paddingRight="@dimen/dp_10" @@ -24,7 +24,7 @@ android:layout_height="@dimen/dp_32" android:layout_gravity="left|center_vertical" android:layout_marginLeft="@dimen/dp_5" - android:src="@drawable/bus_p_zuozhuan_un_open" /> + android:src="@drawable/shuttle_p_jl_zuozhuan_un_open" /> + android:src="@drawable/shuttle_p_jl_youzhuan_un_open" /> \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/layout/p_bus_view_blue_tooth.xml b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_blue_tooth.xml similarity index 88% rename from OCH/shuttle/passenger/src/jinlvvan/res/layout/p_bus_view_blue_tooth.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_blue_tooth.xml index 69ae14c394..5bb43874e5 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/res/layout/p_bus_view_blue_tooth.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_blue_tooth.xml @@ -9,7 +9,7 @@ android:layout_width="@dimen/dp_18" android:layout_height="@dimen/dp_26" android:scaleType="fitXY" - android:src="@drawable/m2_blue_tooth_open" + android:src="@drawable/shuttle_p_jl_blue_tooth_open" tools:ignore="ContentDescription" /> \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/jinlvvan/res/layout/p_bus_view_status_bar.xml b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_status_bar.xml similarity index 87% rename from OCH/shuttle/passenger/src/jinlvvan/res/layout/p_bus_view_status_bar.xml rename to OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_status_bar.xml index fef63bbd25..2be462cb64 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/res/layout/p_bus_view_status_bar.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_status_bar.xml @@ -6,7 +6,7 @@ xmlns:app="http://schemas.android.com/apk/res-auto" tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout" tools:ignore="MissingDefaultResource" - android:background="@drawable/bg_status_bar"> + android:background="@drawable/shuttle_p_jl_bg_status_bar"> - @@ -38,7 +38,7 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" android:layout_marginLeft="@dimen/dp_40" - android:src="@drawable/bus_p_status_bar_logo" + android:src="@drawable/shuttle_p_jl_status_bar_logo" android:scaleType="fitXY" android:layout_width="@dimen/dp_94" android:layout_height="@dimen/dp_25"/> diff --git a/OCH/shuttle/passenger/src/main/res/jinlv/values/colors.xml b/OCH/shuttle/passenger/src/main/res/jinlv/values/colors.xml new file mode 100644 index 0000000000..6620187e95 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/jinlv/values/colors.xml @@ -0,0 +1,24 @@ + + + #5D7199 + #CCE9EFFC + #C7D2E1 + #203555 + #FFB327 + #2D3E5F + #276AFE + #CDDBF6 + #2D3E5F + #2D3E5F + + #43CEFE + #1466FB + + #17417B + #6617417B + #A9B6CA + #1F82FB + + #992D3E5F + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/jinlv/values/dimens.xml b/OCH/shuttle/passenger/src/main/res/jinlv/values/dimens.xml new file mode 100644 index 0000000000..07076fd91d --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/jinlv/values/dimens.xml @@ -0,0 +1,29 @@ + + + 750dp + 804dp + 40dp + 48dp + 422dp + + 158dp + 90dp + 45dp + 158dp + 90dp + 45dp + 90dp + 90dp + 3dp + + 34dp + + 38dp + + 90dp + 27dp + + 10dp + 38dp + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/jinlv/values/strings.xml b/OCH/shuttle/passenger/src/main/res/jinlv/values/strings.xml new file mode 100644 index 0000000000..4170e113bf --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/jinlv/values/strings.xml @@ -0,0 +1,10 @@ + + + KM/H + 您已收车 + 暂无班次 + 暂无线路 + 已到站: + 前方到站: + 请按秩序下车 + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_amap_arrived_road.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_amap_arrived_road.png new file mode 100644 index 0000000000..f4d80f4cc7 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_amap_arrived_road.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_amap_arriving_road.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_amap_arriving_road.png new file mode 100644 index 0000000000..a9aae488fb Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_amap_arriving_road.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_amap_custom_corner.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_amap_custom_corner.png new file mode 100644 index 0000000000..6f0795edaf Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_amap_custom_corner.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_arrived_an_0.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_arrived_an_0.png new file mode 100644 index 0000000000..62ed7bb92d Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_arrived_an_0.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_arrived_an_1.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_arrived_an_1.png new file mode 100644 index 0000000000..34f7c0e1f2 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_arrived_an_1.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_arrived_an_2.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_arrived_an_2.png new file mode 100644 index 0000000000..8b4b214814 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_arrived_an_2.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_auto_button_bg.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_auto_button_bg.png new file mode 100644 index 0000000000..fb4ddc5279 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_auto_button_bg.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_bg_driving_info_image.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_bg_driving_info_image.png new file mode 100644 index 0000000000..a829d5b88d Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_bg_driving_info_image.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_blue_tooth_close.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_blue_tooth_close.png new file mode 100644 index 0000000000..0c292d2cf3 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_blue_tooth_close.png differ diff --git a/OCH/shuttle/passenger/src/m2/res/drawable-nodpi/m2_blue_tooth_open.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_blue_tooth_open.png similarity index 100% rename from OCH/shuttle/passenger/src/m2/res/drawable-nodpi/m2_blue_tooth_open.png rename to OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_blue_tooth_open.png diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_bottom_bg.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_bottom_bg.png new file mode 100644 index 0000000000..cec9275411 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_bottom_bg.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_card_split.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_card_split.png new file mode 100644 index 0000000000..5446226be7 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_card_split.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_clock_bg.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_clock_bg.png new file mode 100644 index 0000000000..a380c3f3b7 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_clock_bg.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_img_drive_bg.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_img_drive_bg.png new file mode 100644 index 0000000000..7412ab3c90 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_img_drive_bg.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_img_line_bg.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_img_line_bg.png new file mode 100644 index 0000000000..dd78f6fc9e Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_img_line_bg.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_img_time_bg.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_img_time_bg.png new file mode 100644 index 0000000000..ba735834b6 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_img_time_bg.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_light_green_nor.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_light_green_nor.png new file mode 100644 index 0000000000..3135524a79 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_light_green_nor.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_light_red_nor.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_light_red_nor.png new file mode 100644 index 0000000000..e873c2b85e Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_light_red_nor.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_light_yellow_nor.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_light_yellow_nor.png new file mode 100644 index 0000000000..8046782601 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_light_yellow_nor.png differ diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bus_lightyellow_nor.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_lightyellow_nor.png similarity index 100% rename from OCH/shuttle/passenger/src/m2/res/drawable/bus_lightyellow_nor.png rename to OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_lightyellow_nor.png diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_line_name.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_line_name.png new file mode 100644 index 0000000000..beed2f2ad2 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_line_name.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_line_noselect.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_line_noselect.png new file mode 100644 index 0000000000..bda5e1d105 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_line_noselect.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_line_tile.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_line_tile.png new file mode 100644 index 0000000000..44070336fa Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_line_tile.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_car_icon.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_car_icon.png new file mode 100644 index 0000000000..b9c841cc83 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_car_icon.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_end_icon.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_end_icon.png new file mode 100644 index 0000000000..39ffc9052f Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_end_icon.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_start_icon.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_start_icon.png new file mode 100644 index 0000000000..c970699aac Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_start_icon.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_staton_arrived_icon.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_staton_arrived_icon.png new file mode 100644 index 0000000000..39be18953c Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_staton_arrived_icon.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_staton_icon.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_staton_icon.png new file mode 100644 index 0000000000..d90c5a2b71 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_map_staton_icon.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_p_video_holder.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_p_video_holder.png new file mode 100644 index 0000000000..d8c5951e43 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_p_video_holder.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_sky_bg.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_sky_bg.png new file mode 100644 index 0000000000..7b72c07390 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_sky_bg.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_status_bar_logo.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_status_bar_logo.png new file mode 100644 index 0000000000..1f6ea692f5 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_status_bar_logo.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_bottom_left.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_bottom_left.png new file mode 100644 index 0000000000..5e1fb2c752 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_bottom_left.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_bottom_right.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_bottom_right.png new file mode 100644 index 0000000000..19ae887a57 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_bottom_right.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_top_left.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_top_left.png new file mode 100644 index 0000000000..3fb0a40ce3 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_top_left.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_top_right.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_top_right.png new file mode 100644 index 0000000000..dbc80b2254 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_video_top_right.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_youzhuan_open.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_youzhuan_open.png new file mode 100644 index 0000000000..bbd2c12d90 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_youzhuan_open.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_youzhuan_un_open.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_youzhuan_un_open.png new file mode 100644 index 0000000000..7c0dcaabe1 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_youzhuan_un_open.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_zuozhuan_open.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_zuozhuan_open.png new file mode 100644 index 0000000000..9bbda22cb7 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_zuozhuan_open.png differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_zuozhuan_un_open.png b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_zuozhuan_un_open.png new file mode 100644 index 0000000000..7c33fddbd9 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/drawable-nodpi/shuttle_p_m2_zuozhuan_un_open.png differ diff --git a/OCH/shuttle/passenger/src/m2/res/drawable/bg_dashed_line.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_dashed_line.xml similarity index 78% rename from OCH/shuttle/passenger/src/m2/res/drawable/bg_dashed_line.xml rename to OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_dashed_line.xml index f6917017e5..b26187608d 100644 --- a/OCH/shuttle/passenger/src/m2/res/drawable/bg_dashed_line.xml +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_dashed_line.xml @@ -1,7 +1,7 @@ - \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_arrived_notice.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_arrived_notice.xml new file mode 100644 index 0000000000..0924ac7748 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_arrived_notice.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_distance_lefttime.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_distance_lefttime.xml new file mode 100644 index 0000000000..d7e80d7738 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_distance_lefttime.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_info.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_info.xml new file mode 100644 index 0000000000..38b5f30517 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_info.xml @@ -0,0 +1,10 @@ + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_selector.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_selector.xml new file mode 100644 index 0000000000..21a6524032 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_driving_selector.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_p_m2_arrived_station.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_p_m2_arrived_station.xml new file mode 100644 index 0000000000..826ca50b64 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_p_m2_arrived_station.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_p_m2_auto.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_p_m2_auto.xml new file mode 100644 index 0000000000..4189fb8509 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_p_m2_auto.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_comment_submit.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_p_m2_traffic_light.xml similarity index 72% rename from OCH/taxi/passenger/src/main/res/drawable/taxi_p_comment_submit.xml rename to OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_p_m2_traffic_light.xml index dd498f390d..5a27da20e0 100644 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_comment_submit.xml +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_p_m2_traffic_light.xml @@ -1,6 +1,7 @@ - + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_video_bg.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_pnc.xml similarity index 65% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_video_bg.xml rename to OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_pnc.xml index d86b36b5c1..38d10320ae 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_video_bg.xml +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_bg_pnc.xml @@ -1,6 +1,5 @@ - - + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_brakelight_background_daytime.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_brakelight_background_daytime.xml new file mode 100644 index 0000000000..ba372d59df --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_brakelight_background_daytime.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable-v29/taxi_video_seekbar_style.xml b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_power_seekbar_style.xml similarity index 80% rename from OCH/taxi/passenger/src/main/res/drawable-v29/taxi_video_seekbar_style.xml rename to OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_power_seekbar_style.xml index 4a771923d6..3ac0c761ba 100644 --- a/OCH/taxi/passenger/src/main/res/drawable-v29/taxi_video_seekbar_style.xml +++ b/OCH/shuttle/passenger/src/main/res/m2/drawable/shuttle_p_m2_power_seekbar_style.xml @@ -4,7 +4,7 @@ - + @@ -19,7 +19,7 @@ - + diff --git a/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_driving_info_fragment.xml b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_driving_info_fragment.xml new file mode 100644 index 0000000000..4233460588 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_driving_info_fragment.xml @@ -0,0 +1,378 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_fragment.xml b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_fragment.xml new file mode 100644 index 0000000000..9dbd6a2a9c --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_fragment.xml @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_hpmap_fragment.xml b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_hpmap_fragment.xml new file mode 100644 index 0000000000..5c9a902baa --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_hpmap_fragment.xml @@ -0,0 +1,18 @@ + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_traffic_light_view.xml b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_traffic_light_view.xml new file mode 100644 index 0000000000..83567814d2 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_traffic_light_view.xml @@ -0,0 +1,36 @@ + + + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_turn_light_status.xml b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_turn_light_status.xml new file mode 100644 index 0000000000..a1699ac360 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_turn_light_status.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_video_fragment.xml b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_video_fragment.xml new file mode 100644 index 0000000000..66e95d9087 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_video_fragment.xml @@ -0,0 +1,13 @@ + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/m2/res/layout/p_m2_video_view.xml b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_video_view.xml similarity index 100% rename from OCH/shuttle/passenger/src/m2/res/layout/p_m2_video_view.xml rename to OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_video_view.xml diff --git a/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_view_blue_tooth.xml b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_view_blue_tooth.xml new file mode 100644 index 0000000000..61448bf16d --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_view_blue_tooth.xml @@ -0,0 +1,15 @@ + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_view_status_bar.xml b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_view_status_bar.xml new file mode 100644 index 0000000000..2aac7be30f --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/layout/shuttle_p_m2_view_status_bar.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/raw/star_marker.nt3d b/OCH/shuttle/passenger/src/main/res/m2/raw/star_marker.nt3d new file mode 100644 index 0000000000..c6e546fc31 Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/raw/star_marker.nt3d differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/raw/station_marker.nt3d b/OCH/shuttle/passenger/src/main/res/m2/raw/station_marker.nt3d new file mode 100644 index 0000000000..a00207ba3f Binary files /dev/null and b/OCH/shuttle/passenger/src/main/res/m2/raw/station_marker.nt3d differ diff --git a/OCH/shuttle/passenger/src/main/res/m2/values/colors.xml b/OCH/shuttle/passenger/src/main/res/m2/values/colors.xml new file mode 100644 index 0000000000..71557ca79b --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/values/colors.xml @@ -0,0 +1,26 @@ + + + #FFFFFF + #0B1E38 + #BBDAFB + #0B1E38 + #5D7199 + #A5D8FF + #1B2546 + #23355D + #8895B7 + + + #C8EFFF + #203555 + #17417B + #2D3E5F + #34A61F + #AEEDB8 + #43CEFE + #1466FB + #7094AD + + #99AFC9E7 + #6617417B + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/values/dimens.xml b/OCH/shuttle/passenger/src/main/res/m2/values/dimens.xml new file mode 100644 index 0000000000..55344e5192 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/values/dimens.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/m2/values/strings.xml b/OCH/shuttle/passenger/src/main/res/m2/values/strings.xml new file mode 100644 index 0000000000..d2faf78c18 --- /dev/null +++ b/OCH/shuttle/passenger/src/main/res/m2/values/strings.xml @@ -0,0 +1,14 @@ + + + KM/H + m2_map_style.data + m2_map_style_extra.data + AUTO + 已到站 + 暂无站点 + 前方到站 + —公里 + —分钟 + 请按秩序下车 + 暂无路线 + \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/res/raw/bus_di.mp3 b/OCH/shuttle/passenger/src/main/res/raw/bus_di.mp3 deleted file mode 100644 index 15b31ed247..0000000000 Binary files a/OCH/shuttle/passenger/src/main/res/raw/bus_di.mp3 and /dev/null differ diff --git a/OCH/shuttle/passenger/src/test/java/com/mogo/och/bus/passenger/ExampleUnitTest.java b/OCH/shuttle/passenger/src/test/java/passenger/ExampleUnitTest.java similarity index 100% rename from OCH/shuttle/passenger/src/test/java/com/mogo/och/bus/passenger/ExampleUnitTest.java rename to OCH/shuttle/passenger/src/test/java/passenger/ExampleUnitTest.java diff --git a/OCH/sweeper/driver/build.gradle b/OCH/sweeper/driver/build.gradle index eac550da21..0cd431d266 100644 --- a/OCH/sweeper/driver/build.gradle +++ b/OCH/sweeper/driver/build.gradle @@ -61,7 +61,7 @@ dependencies { annotationProcessor rootProject.ext.dependencies.androidxroomcompiler implementation rootProject.ext.dependencies.localbroadcastmanager - implementation project(":OCH:mogo-och-common-module") + implementation project(":OCH:common:common") compileOnly project(":libraries:mogo-map") androidTestImplementation rootProject.ext.dependencies.androidxjunit diff --git a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/cloud/model/SweeperCloudTaskModel.java b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/cloud/model/SweeperCloudTaskModel.java index e359f8d97f..97453f051a 100644 --- a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/cloud/model/SweeperCloudTaskModel.java +++ b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/cloud/model/SweeperCloudTaskModel.java @@ -8,11 +8,11 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.amap.api.maps.model.LatLng; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.module.status.IMogoStatusChangedListener; import com.mogo.commons.module.status.MogoStatusManager; import com.mogo.commons.module.status.StatusDescriptor; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener; @@ -690,7 +690,7 @@ public class SweeperCloudTaskModel implements IMoGoSweeperFutianCloudTaskListene } public String getDriverSn() { - return MoGoAiCloudClientConfig.getInstance().getSn(); + return SharedPrefsMgr.getInstance().getSn(); } @Override diff --git a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/cloud/util/SweeperCloudTaskUtils.kt b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/cloud/util/SweeperCloudTaskUtils.kt index c759f2f649..eb7e97b19e 100644 --- a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/cloud/util/SweeperCloudTaskUtils.kt +++ b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/cloud/util/SweeperCloudTaskUtils.kt @@ -5,7 +5,7 @@ import android.util.Log import com.elegant.utils.UiThreadHandler import com.google.protobuf.MessageOrBuilder import com.google.protobuf.TextFormat -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant @@ -280,7 +280,7 @@ object SweeperCloudTaskUtils { } private fun getDriverSn(): String? { - return MoGoAiCloudClientConfig.getInstance().sn + return SharedPrefsMgr.getInstance().sn } /** diff --git a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/common/util/SweeperAnalyticsManager.java b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/common/util/SweeperAnalyticsManager.java index d46c36a9b9..5fe4e5b20e 100644 --- a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/common/util/SweeperAnalyticsManager.java +++ b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/common/util/SweeperAnalyticsManager.java @@ -5,8 +5,8 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_SWE import android.os.Build; import android.text.TextUtils; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.commons.debug.DebugConfig; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.commons.utils.MogoAnalyticUtils; import com.mogo.eagle.core.data.app.AppConfigInfo; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; @@ -92,7 +92,7 @@ public class SweeperAnalyticsManager { boolean restart, boolean send, String startName, String endName, int lineId) { mStartAutopilotKey = restart ? SweeperConst.EVENT_KEY_RESTART_AUTOPILOT : SweeperConst.EVENT_KEY_START_SERVICE; - String sn = MoGoAiCloudClientConfig.getInstance().getSn(); + String sn = SharedPrefsMgr.getInstance().getSn(); String plateNum = AppConfigInfo.INSTANCE.getPlateNumber(); String dateTime = DateTimeUtils.getTimeText( System.currentTimeMillis(), DateTimeUtils.yyyy_MM_dd_HH_mm_ss); @@ -128,7 +128,7 @@ public class SweeperAnalyticsManager { */ public void triggerUnableStartAPReasonEvent(String startName, String endName, int lineId, String reason) { - String sn = MoGoAiCloudClientConfig.getInstance().getSn(); + String sn = SharedPrefsMgr.getInstance().getSn(); String plateNum = AppConfigInfo.INSTANCE.getPlateNumber(); String dateTime = DateTimeUtils.getTimeText( System.currentTimeMillis(), DateTimeUtils.yyyy_MM_dd_HH_mm_ss); diff --git a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/bean/SubStartRequest.kt b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/bean/SubStartRequest.kt index 96f3d6c1da..84bbf969b2 100644 --- a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/bean/SubStartRequest.kt +++ b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/bean/SubStartRequest.kt @@ -1,9 +1,9 @@ package com.mogo.och.sweeper.operate.bean -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr data class SubStartRequest( - var carSn:String=MoGoAiCloudClientConfig.getInstance().sn, + var carSn:String= SharedPrefsMgr.getInstance().sn, var taskId:Int, var startTime:Long, var isFirst:Boolean, diff --git a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/net/SweeperOperateServiceManager.kt b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/net/SweeperOperateServiceManager.kt index 35882d1427..5f58a9852b 100644 --- a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/net/SweeperOperateServiceManager.kt +++ b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/net/SweeperOperateServiceManager.kt @@ -3,6 +3,7 @@ package com.mogo.och.sweeper.operate.net import android.content.Context import com.elegant.network.utils.GsonUtil import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.network.MoGoRetrofitFactory import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant @@ -165,7 +166,7 @@ object SweeperOperateServiceManager { } private fun getCarSN(): String { - return MoGoAiCloudClientConfig.getInstance().sn + return SharedPrefsMgr.getInstance().sn } private fun getServiceAppId(): String { @@ -173,6 +174,6 @@ object SweeperOperateServiceManager { } private fun getToken(): String { - return MoGoAiCloudClientConfig.getInstance().token + return SharedPrefsMgr.getInstance().token } } \ No newline at end of file diff --git a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/view/SlidePanelView.java b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/view/SlidePanelView.java index 4fac50cc31..68ccdb8c3c 100644 --- a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/view/SlidePanelView.java +++ b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/view/SlidePanelView.java @@ -21,6 +21,8 @@ import android.view.animation.DecelerateInterpolator; import androidx.annotation.Nullable; +import com.mogo.eagle.core.utilcode.util.ThreadUtils; +import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.och.sweeper.R; /** @@ -124,9 +126,11 @@ public class SlidePanelView extends View { textGradient.setLocalMatrix(gradientMatrix); textPaint.setShader(textGradient); textPaint.getFontMetrics(blockTextMetrics); - - bmBlock = BitmapFactory.decodeResource(getResources(), R.drawable.sweeper_base_slide_block); - blockWidth = bmBlock.getWidth(); + ThreadUtils.getCpuPool().execute(() -> { + bmBlock = BitmapFactory.decodeResource(getResources(), R.drawable.sweeper_base_slide_block); + blockWidth = bmBlock.getWidth(); + UiThreadHandler.post(this::requestLayout,UiThreadHandler.MODE.QUEUE); + }); } @Override @@ -143,17 +147,17 @@ public class SlidePanelView extends View { textMarginLeft = NORMAL_TEXT_MARGIN_LEFT; textMarginRight = NORMAL_TEXT_MARGIN_RIGHT; } - - if (widthMode == MeasureSpec.AT_MOST) { - // 宽度根据图片大小,字符串长度,各种间隔确定 - // 高度根据图片大小和上下间隔确定 - textPaint.getTextBounds(blockText, 0, blockText.length(), textRect); - widthSize = BLOCK_START_X * 2 + bmBlock.getWidth() + textMarginLeft + textMarginRight + textRect.width(); - heightSize = BLOCK_START_Y * 2 + bmBlock.getHeight(); - widthMeasureSpec = MeasureSpec.makeMeasureSpec(widthSize, widthMode); - heightMeasureSpec = MeasureSpec.makeMeasureSpec(heightSize, heightMode); + if(bmBlock!=null) { + if (widthMode == MeasureSpec.AT_MOST) { + // 宽度根据图片大小,字符串长度,各种间隔确定 + // 高度根据图片大小和上下间隔确定 + textPaint.getTextBounds(blockText, 0, blockText.length(), textRect); + widthSize = BLOCK_START_X * 2 + bmBlock.getWidth() + textMarginLeft + textMarginRight + textRect.width(); + heightSize = BLOCK_START_Y * 2 + bmBlock.getHeight(); + widthMeasureSpec = MeasureSpec.makeMeasureSpec(widthSize, widthMode); + heightMeasureSpec = MeasureSpec.makeMeasureSpec(heightSize, heightMode); + } } - super.onMeasure(widthMeasureSpec, heightMeasureSpec); } @@ -255,11 +259,13 @@ public class SlidePanelView extends View { // 画文字 gradientMatrix.setTranslate(matrixTranslate, 0); textGradient.setLocalMatrix(gradientMatrix); - canvas.save(); - canvas.drawText(blockText, (float) (blockWidth + BLOCK_START_X + textMarginLeft), (float) textOffset, textPaint); - canvas.restore(); - // 画滑块 - canvas.drawBitmap(bmBlock, (float) (BLOCK_START_X + blockOffset), (float) BLOCK_START_Y, blockPaint); + if(bmBlock!=null) { + canvas.save(); + canvas.drawText(blockText, (float) (blockWidth + BLOCK_START_X + textMarginLeft), (float) textOffset, textPaint); + canvas.restore(); + // 画滑块 + canvas.drawBitmap(bmBlock, (float) (BLOCK_START_X + blockOffset), (float) BLOCK_START_Y, blockPaint); + } } public interface OnSlidePanelMoveToEndListener { diff --git a/OCH/taxi/driver/build.gradle b/OCH/taxi/driver/build.gradle index f2013570c2..587fbd7f97 100644 --- a/OCH/taxi/driver/build.gradle +++ b/OCH/taxi/driver/build.gradle @@ -55,7 +55,7 @@ dependencies { implementation rootProject.ext.dependencies.androidxconstraintlayout implementation rootProject.ext.dependencies.amapnavi3dmap - implementation project(":OCH:mogo-och-common-module") + implementation project(":OCH:common:common") compileOnly project(":libraries:mogo-map") } diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt index 9b7e82ade1..6640864139 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt @@ -51,6 +51,8 @@ class TaxiConst { const val EVENT_PARAM_END_NAME = "end_name" const val EVENT_PARAM_LINE_ID = "line_id" const val EVENT_PARAM_ORDER_NUMBER = "order_num" + const val EVENT_PARAM_MAP_ORIGINAL_DATA = "map_original_data" // 域控原始状态信息 + const val EVENT_PARAM_AUTOPILOT_STATE = "autopilot_state" //原始的自动驾驶状态 const val EVENT_PARAM_START_RESULT = "start_autopilot" // true/false const val EVENT_PARAM_START_FAILURE_CODE = "start_autopilot_failure_code" // 启动自驾失败code const val EVENT_PARAM_START_FAILURE_MSG = "start_autopilot_failure_msg" // 启动自驾失败原因 diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java index 9a28d7f996..f3f7823045 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java @@ -21,12 +21,8 @@ import com.elegant.network.utils.GsonUtil; import com.mogo.aicloud.services.socket.IMogoOnMessageListener; import com.mogo.commons.module.intent.IMogoIntentListener; import com.mogo.commons.module.intent.IntentManager; -import com.mogo.commons.module.status.IMogoStatusChangedListener; -import com.mogo.commons.module.status.MogoStatusManager; -import com.mogo.commons.module.status.StatusDescriptor; import com.mogo.eagle.core.data.BaseData; import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters; -import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; @@ -37,7 +33,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager; import com.mogo.eagle.core.function.call.autopilot.CallerPlanningRottingListenerManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.util.CoordinateUtils; import com.mogo.eagle.core.utilcode.util.DrivingDirectionUtils; import com.mogo.eagle.core.utilcode.util.NetworkUtils; @@ -97,7 +93,6 @@ import java.util.Collections; import java.util.List; import io.reactivex.exceptions.UndeliverableException; -import io.reactivex.functions.Consumer; import io.reactivex.plugins.RxJavaPlugins; import mogo.telematics.pad.MessagePad; import mogo_msg.MogoReportMsg; @@ -800,7 +795,6 @@ public class TaxiModel { new OchCommonServiceCallback() { @Override public void onSuccess(TaxiDataBaseRespBean data) { - if (data != null && data.code == 0) /** 2023.12.18 1.去除"自驾/安全"模式选择,默认自驾模式且无需点击; * 2.server去除订单流转对"安全确认"的限制(读写接口默认反馈ok,但"开启自动驾驶成功"不再限制) */ @@ -845,7 +839,7 @@ public class TaxiModel { } mCurrentOCHOrder = data; TaxiTrajectoryManager.getInstance().syncTrajectoryInfo(); - SharedPrefsMgr.getInstance(mContext).putString(TaxiConst.SP_KEY_OCH_TAXI_ORDER, + SharedPrefsMgr.getInstance().putString(TaxiConst.SP_KEY_OCH_TAXI_ORDER, GsonUtil.jsonFromObject(data)); if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()) { @@ -897,7 +891,7 @@ public class TaxiModel { mCurrentOCHOrder = null; clearAutopilotControlParameters(); TaxiTrajectoryManager.getInstance().syncTrajectoryInfo(); - SharedPrefsMgr.getInstance(mContext).remove(TaxiConst.SP_KEY_OCH_TAXI_ORDER); + SharedPrefsMgr.getInstance().remove(TaxiConst.SP_KEY_OCH_TAXI_ORDER); isRestartAutopilot = false; if (FunctionBuildConfig.isDemoMode) { // 当美化模式(演示模式)开启时: 取消或订单已完成时,置false diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchCommonServiceManager.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchCommonServiceManager.kt index 95d8c56cde..47c58418ff 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchCommonServiceManager.kt +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchCommonServiceManager.kt @@ -12,6 +12,7 @@ import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.cloud.passport.MoGoAiCloudClient import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.biz.network.interceptor.transformTry @@ -40,7 +41,7 @@ object OchCommonServiceManager { ) { mOCHTaxiServiceApi.getPhoneCode( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginSmsReqBean(phone) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) @@ -57,10 +58,10 @@ object OchCommonServiceManager { location4Login: TaxiLoginReqBean.Location4Login?, callback: OchCommonServiceCallback? ) { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn mOCHTaxiServiceApi.gotoLoginBycode4Taxi( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginReqBean(phone, code, sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) } @@ -76,8 +77,8 @@ object OchCommonServiceManager { ) { mOCHTaxiServiceApi.logout4Taxi( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - TaxiLogoutReqBean(MoGoAiCloudClientConfig.getInstance().sn, location4Login) + SharedPrefsMgr.getInstance().token, + TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) } @@ -92,15 +93,15 @@ object OchCommonServiceManager { context: Context, callback: OchCommonServiceCallback? ) { - if (MoGoAiCloudClientConfig.getInstance().token.isEmpty()) { + if (SharedPrefsMgr.getInstance().token.isEmpty()) { callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") MoGoAiCloudClient.getInstance().refreshToken() return } mOCHTaxiServiceApi.queryDriverServiceStatusAndLoginStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) } diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.kt index 63b5cfa751..53fd62c894 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.kt +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.kt @@ -4,6 +4,7 @@ import android.content.Context import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl @@ -34,8 +35,8 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryOrdersInAndWaitService( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryOrdersInAndWaitService")) @@ -53,8 +54,8 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryNewBookingOrder( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryNewBookingOrder")) @@ -73,9 +74,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.grabOrder( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, OrderGrabReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo + SharedPrefsMgr.getInstance().sn, orderNo ) ) .transformTry() @@ -95,9 +96,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryOrderGrabStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, OrderGrabReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo + SharedPrefsMgr.getInstance().sn, orderNo ) ) .transformTry() @@ -117,9 +118,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryOrderRouteInfo( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, OrderQueryRouteInfoReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo + SharedPrefsMgr.getInstance().sn, orderNo ) ) .transformTry() @@ -140,9 +141,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryOrderById( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, OrderQueryReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo + SharedPrefsMgr.getInstance().sn, orderNo ) ) .transformTry() @@ -163,8 +164,8 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryOrderInService( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryOrderInService")) @@ -185,9 +186,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.cancelOrder( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, OrderCancelReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo, cancelType, cancelReason + SharedPrefsMgr.getInstance().sn, orderNo, cancelType, cancelReason ) ) .transformTry() @@ -208,9 +209,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryOrdersList( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, OrdersListQueryReqBean( - MoGoAiCloudClientConfig.getInstance().sn, page, size + SharedPrefsMgr.getInstance().sn, page, size ) ) .transformTry() @@ -231,9 +232,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.updateOrderStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, OrderStatusUpdateReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo, orderStatus + SharedPrefsMgr.getInstance().sn, orderNo, orderStatus ) ) .transformTry() @@ -253,17 +254,17 @@ object TaxiServiceManager { val baseDataObservable: Observable = if (isOrdering) { // 正在接单去暂停 mOCHTaxiServiceApi.stopOrderServing( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, DriverStatusUpdateReqBean( - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().sn ) ).transformTry() } else { // 没有接单去接单 mOCHTaxiServiceApi.resetOrderServing( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, DriverStatusUpdateReqBean( - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().sn ) ).transformTry() } @@ -285,9 +286,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.runCarHeartbeat( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, CarHeartbeatReqBean( - MoGoAiCloudClientConfig.getInstance().sn, lon, lat + SharedPrefsMgr.getInstance().sn, lon, lat ) ) .transformTry() @@ -306,8 +307,8 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryServiceData( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceData")) @@ -326,7 +327,7 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.updateOrderRoute( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, OrderRouteUpdateReqBean(orderNo, points) ) .transformTry() @@ -351,7 +352,7 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.reportOrderRemain( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, UpdateOrderDisAndTimeReqBean(orderNo, distance, duration) ) .transformTry() @@ -372,7 +373,7 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryOrderRoute( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, orderNo ) .transformTry() @@ -387,9 +388,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.confirmAutopilotConditionByDriver( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiOrPassengerReadyReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo, loc + SharedPrefsMgr.getInstance().sn, orderNo, loc ) ) .transformTry() @@ -402,7 +403,7 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.queryPilotStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, orderNo ) .transformTry() @@ -417,9 +418,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.updatePassengerHasBoardedStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiOrPassengerReadyReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo, loc + SharedPrefsMgr.getInstance().sn, orderNo, loc ) ) .transformTry() @@ -434,9 +435,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.startServicePilotDone( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiOrPassengerReadyReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo, loc + SharedPrefsMgr.getInstance().sn, orderNo, loc ) ) .transformTry() @@ -451,9 +452,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.arrivedStartPoint( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiOrPassengerReadyReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo, loc + SharedPrefsMgr.getInstance().sn, orderNo, loc ) ) .transformTry() @@ -468,9 +469,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.arriveTerminal( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiOrPassengerReadyReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo, loc + SharedPrefsMgr.getInstance().sn, orderNo, loc ) ) .transformTry() @@ -485,9 +486,9 @@ object TaxiServiceManager { ) { mOCHTaxiServiceApi.orderCompleted( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiOrPassengerReadyReqBean( - MoGoAiCloudClientConfig.getInstance().sn, orderNo, loc + SharedPrefsMgr.getInstance().sn, orderNo, loc ) ) .transformTry() diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.kt index 0521b9a774..da02ed9768 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.kt +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.kt @@ -1,8 +1,8 @@ package com.mogo.och.taxi.utils import android.text.TextUtils -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.debug.DebugConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.utils.MogoAnalyticUtils import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener @@ -10,6 +10,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_TAXI import com.mogo.eagle.core.utilcode.util.DateTimeUtils +import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.taxi.constant.TaxiConst import io.reactivex.disposables.Disposable @@ -53,8 +54,14 @@ object TaxiAnalyticsManager { mStartAutopilotParams[TaxiConst.EVENT_PARAM_START_FAILURE_CODE] = failCode mStartAutopilotParams[TaxiConst.EVENT_PARAM_START_FAILURE_MSG] = failMsg } + + mStartAutopilotParams[TaxiConst.EVENT_PARAM_MAP_ORIGINAL_DATA] = + OCHAdasAbilityManager.getInstance().originalData + mStartAutopilotParams[TaxiConst.EVENT_PARAM_AUTOPILOT_STATE] = + CallerAutoPilotStatusListenerManager.getState() mStartAutopilotParams[TaxiConst.EVENT_PARAM_START_RESULT] = CallerAutoPilotStatusListenerManager.getState() == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING + MogoAnalyticUtils.track(mStartAutopilotKey, mStartAutopilotParams) clearStartAutopilotParams() //清空参数数据,防止误传 } @@ -94,7 +101,7 @@ object TaxiAnalyticsManager { clearStartAutopilotParams() //清空参数数据,防止误传 } else { val plateNum = AppConfigInfo.plateNumber - mStartAutopilotParams[TaxiConst.EVENT_PARAM_SN] = MoGoAiCloudClientConfig.getInstance().sn + mStartAutopilotParams[TaxiConst.EVENT_PARAM_SN] = SharedPrefsMgr.getInstance().sn mStartAutopilotParams[TaxiConst.EVENT_PARAM_PLATE_NUM] = if (TextUtils.isEmpty(plateNum)) "" else plateNum mStartAutopilotParams[TaxiConst.EVENT_PARAM_ENV_ONLINE] = DebugConfig.getNetMode() == DebugConfig.NET_MODE_RELEASE mStartAutopilotParams[TaxiConst.EVENT_PARAM_TIME] = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd_HH_mm_ss) @@ -119,7 +126,7 @@ object TaxiAnalyticsManager { fun triggerUnableStartAPReasonEvent(startName: String, endName: String, orderNo: String, reason: String) { val plateNum = AppConfigInfo.plateNumber val params = HashMap() - params[TaxiConst.EVENT_PARAM_SN] = MoGoAiCloudClientConfig.getInstance().sn + params[TaxiConst.EVENT_PARAM_SN] = SharedPrefsMgr.getInstance().sn params[TaxiConst.EVENT_PARAM_PLATE_NUM] = if (TextUtils.isEmpty(plateNum)) "" else plateNum params[TaxiConst.EVENT_PARAM_ENV_ONLINE] = DebugConfig.getNetMode() == DebugConfig.NET_MODE_RELEASE params[TaxiConst.EVENT_PARAM_TIME] = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd_HH_mm_ss) diff --git a/OCH/taxi/passenger/build.gradle b/OCH/taxi/passenger/build.gradle index 50cd35f289..1a3fde2f56 100644 --- a/OCH/taxi/passenger/build.gradle +++ b/OCH/taxi/passenger/build.gradle @@ -57,7 +57,7 @@ dependencies { implementation rootProject.ext.dependencies.amapnavi3dmap implementation rootProject.ext.dependencies.amapsearch - implementation project(":OCH:mogo-och-common-module") + implementation project(":OCH:common:common") compileOnly project(":libraries:mogo-map") implementation project(':core:mogo-core-res') diff --git a/OCH/taxi/passenger/src/main/assets/style.data b/OCH/taxi/passenger/src/main/assets/style.data old mode 100755 new mode 100644 index 134c469f17..81026ad8cf Binary files a/OCH/taxi/passenger/src/main/assets/style.data and b/OCH/taxi/passenger/src/main/assets/style.data differ diff --git a/OCH/taxi/passenger/src/main/assets/style_extra.data b/OCH/taxi/passenger/src/main/assets/style_extra.data old mode 100755 new mode 100644 index ace8199ee0..16cb7f1e68 Binary files a/OCH/taxi/passenger/src/main/assets/style_extra.data and b/OCH/taxi/passenger/src/main/assets/style_extra.data differ diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/IMogoOCH.java b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/IMogoOCH.java deleted file mode 100644 index 1788ea2695..0000000000 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/IMogoOCH.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.mogo.och.taxi.passenger; - -import androidx.annotation.IdRes; -import androidx.fragment.app.FragmentActivity; - -import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider; - -public -/** - * @author congtaowang - * @since 2021/1/15 - * - * 网约车抽象接口 - */ -interface IMogoOCH extends IMoGoFunctionProvider { - - /** - * 初始化网约车容器 - * - * @param activity - * @param containerId 容器ID - */ - void createCoverage(FragmentActivity activity, @IdRes int containerId); -} diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.java b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.java index 018eefbf95..f77aa48af5 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.java +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.java @@ -12,6 +12,7 @@ import com.alibaba.android.arouter.facade.annotation.Route; import com.mogo.commons.module.status.IMogoStatusChangedListener; import com.mogo.commons.module.status.MogoStatusManager; import com.mogo.commons.module.status.StatusDescriptor; +import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider; import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.och.taxi.passenger.constant.TaxiPassengerConst; @@ -28,7 +29,7 @@ public * 网约车-出租车-乘客端 */ @Route(path = TaxiPassengerConst.PATH) -class MogoOCHTaxiPassenger implements IMogoOCH { +class MogoOCHTaxiPassenger implements IMoGoFunctionProvider { private static final String TAG = "MogoOCHTaxiPassenger"; private TaxiPassengerBaseFragment ochTaxiPassengerFragment; @@ -74,11 +75,6 @@ class MogoOCHTaxiPassenger implements IMogoOCH { } } - @Override - public void createCoverage(FragmentActivity activity, int containerId) { - - } - @NotNull @Override public String getFunctionName() { diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/constant/TaxiPassengerConst.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/constant/TaxiPassengerConst.kt index 078645cb83..46bf2e378b 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/constant/TaxiPassengerConst.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/constant/TaxiPassengerConst.kt @@ -39,6 +39,8 @@ class TaxiPassengerConst { const val EVENT_PARAM_END_NAME = "end_name" const val EVENT_PARAM_ORDER_NUMBER = "order_num" const val EVENT_PARAM_LINE_ID = "line_id" + const val EVENT_PARAM_MAP_ORIGINAL_DATA = "map_original_data" // 域控原始状态信息 + const val EVENT_PARAM_AUTOPILOT_STATE = "autopilot_state" //原始的自动驾驶状态 const val EVENT_PARAM_START_RESULT = "start_autopilot" // true/false const val EVENT_PARAM_START_FAILURE_CODE = "start_autopilot_failure_code" // 启动自驾失败code const val EVENT_PARAM_START_FAILURE_MSG = "start_autopilot_failure_msg" // 启动自驾失败原因 diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt index b89cd263db..889159a2b7 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt @@ -36,14 +36,14 @@ object AutopilotManager : IMoGoAutopilotStatusListener { } - fun startAutopilot() { + fun startAutopilot():String { if (!checkCurrentOCHOrder()) { CallerLogger.e( SceneConstant.M_TAXI_P + TAG, "no order or order is empty." ) ToastUtils.showShort("当前订单不存在或异常!") - return + return "当前订单不存在或异常!" } if (TaxiPassengerModel.currentOCHOrder!!.orderStatus == TaxiPassengerOrderStatusEnum.UserArriveAtStart.code) { startServicePilotDone() @@ -51,12 +51,12 @@ object AutopilotManager : IMoGoAutopilotStatusListener { if(CallerAutoPilotStatusListenerManager.getState() == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING){ ToastUtils.showShort("自驾中、请勿重复启动"); - return; + return "自驾中、请勿重复启动"; } val resion = TrajectoryAndDistanceManager.canStartAutopilot(TaxiPassengerModel.currentOCHOrder!!.lineId) if (!StringUtils.isEmpty(resion)) { ToastUtils.showShort(resion) - return + return resion } if (!FunctionBuildConfig.isDemoMode && !OCHAdasAbilityManager.getInstance().autopilotAbilityStatus) { @@ -70,7 +70,7 @@ object AutopilotManager : IMoGoAutopilotStatusListener { TaxiPassengerModel.currentOCHOrder!!.orderNo, OCHAdasAbilityManager.getInstance().autopilotUnAbilityReason ) - return + return OCHAdasAbilityManager.getInstance().autopilotUnAbilityReason + ", 请稍候重试" } val parameters = initAutopilotControlParameters() if (parameters == null) { @@ -78,7 +78,7 @@ object AutopilotManager : IMoGoAutopilotStatusListener { SceneConstant.M_TAXI_P + TAG, "AutopilotControlParameters is empty." ) - return + return "自动化驾驶参数异常" } CallerAutoPilotControlManager.startAutoPilot(parameters) CallerLogger.d( @@ -91,6 +91,7 @@ object AutopilotManager : IMoGoAutopilotStatusListener { TaxiPassengerAnalyticsManager.triggerStartAutopilotEvent(false, false, TaxiPassengerModel.currentOCHOrder!!.startSiteAddr, TaxiPassengerModel.currentOCHOrder!!.endSiteAddr, TaxiPassengerModel.currentOCHOrder!!.orderNo, TaxiPassengerModel.currentOCHOrder!!.lineId) + return "" } private fun initAutopilotControlParameters(): AutopilotControlParameters? { diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.kt index 0a0cb370fa..5f8f766194 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.kt @@ -253,7 +253,6 @@ object TaxiPassengerModel { fun checkPhoneAndUpdateStatus( phoneTail: String?, - commonCallback: ITaxiPassengerCommonCallback? ) { if (currentOCHOrder == null) return TaxiPassengerServiceManager.checkPhoneAndUpdateOrderStatus( @@ -266,7 +265,6 @@ object TaxiPassengerModel { orderStatusChange() VoiceNotice.showNotice("验证成功!关闭车门并佩戴安全带后开启行程吧!", AIAssist.LEVEL2) } - commonCallback?.onCommonCallback() } override fun onFail(code: Int, msg: String) { diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/network/TaxiPassengerServiceApi.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/network/TaxiPassengerServiceApi.kt index 83c145f6d4..a07636ec8d 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/network/TaxiPassengerServiceApi.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/network/TaxiPassengerServiceApi.kt @@ -1,6 +1,7 @@ package com.mogo.och.taxi.passenger.network import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.taxi.passenger.bean.TaxiPassengerAllStarWorld import com.mogo.och.taxi.passenger.bean.TaxiPassengerBaseRespBean import com.mogo.och.taxi.passenger.bean.TaxiPassengerCheckPhoneUpdateOrderReqBean @@ -33,7 +34,7 @@ internal interface TaxiPassengerServiceApi { @GET("/autopilot-car-hailing/order/v2/driver/taxi/passenger/orderInService/query") fun queryOrdersInAndWaitService( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("driverSn") driverSn: String ): Observable @@ -46,7 +47,7 @@ internal interface TaxiPassengerServiceApi { @POST("/autopilot-car-hailing/order/v2/driver/taxi/passenger/queryOrderById") fun queryOrderById( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Body data: TaxiPassengerOrderQueryReqBean ): Observable @@ -61,7 +62,7 @@ internal interface TaxiPassengerServiceApi { @GET("/autopilot-car-hailing/order/v2/driver/taxi/queryOrderRemaining") fun queryOrderRemaining( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("orderNo") orderNo: String ): Observable @@ -74,7 +75,7 @@ internal interface TaxiPassengerServiceApi { @POST("/autopilot-car-hailing/cab/flow/v1/driver/taxi/passenger/verification/phone") fun checkPhoneAndUpdateOrderStatus( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Body data: TaxiPassengerCheckPhoneUpdateOrderReqBean? ): Observable @@ -87,7 +88,7 @@ internal interface TaxiPassengerServiceApi { @POST("/autopilot-car-hailing/evaluation/info/driver/taxi/submit") fun arrivedAndScore( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String= SharedPrefsMgr.getInstance().token, @Body data: TaxiPassengerScoreUpdateOrderReqBean ): Observable @@ -99,7 +100,7 @@ internal interface TaxiPassengerServiceApi { @GET("/autopilot-car-hailing/evaluation/label/driver/taxi/list") fun getWorldAllStar( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, ): Observable /** @@ -110,7 +111,7 @@ internal interface TaxiPassengerServiceApi { @GET("/autopilot-car-hailing/evaluation/label/driver/taxi/listByStar") fun getWorldByStar( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("star") star: String ): Observable @@ -125,7 +126,7 @@ internal interface TaxiPassengerServiceApi { @GET("/autopilot-car-hailing/cab/flow/v1/driver/taxi/pilot/status") fun queryPilotStatus( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Query("orderNo") orderNo: String ): Observable @@ -140,7 +141,7 @@ internal interface TaxiPassengerServiceApi { @POST("/autopilot-car-hailing/cab/flow/v1/driver/taxi/passenger/startServicePilot") fun startServicePilotDone( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String= MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String= SharedPrefsMgr.getInstance().token, @Body data: TaxiPassengerStartReqBean ): Observable } \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.kt index 96c060d20b..70635b1f9a 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.kt @@ -65,47 +65,48 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) : order?.let { setItineraryVisibility() when (TaxiPassengerModel.curOrderStatus) { + TaxiPassengerOrderStatusEnum.OnTheWayToStart -> { + // 10 接驾中 + mView?.showOrHideCheckAndStartAutopilotView(2) + + mView?.showOrHideArrivedEndLayout(isShow = false) + overMapViewClear() + } + TaxiPassengerOrderStatusEnum.ArriveAtStart -> { // 20 司机到达上车点 - mView?.showOrHideArrivedEndLayout(isShow = false) - mView?.showOrHidePressengerCheckPager(true, order.startSiteAddr, - order.endSiteAddr, order.passengerNum, order.carNumber, order.passengerPhone) - mView?.showOrHideStartAutopilotView(isShow = false) + mView?.showOrHideCheckAndStartAutopilotView(0) + overMapViewClear() } TaxiPassengerOrderStatusEnum.UserArriveAtStart -> { // 30 乘客到达上车点 - mView?.showOrHideArrivedEndLayout(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) - mView?.showOrHideStartAutopilotView(isShow = true) + mView?.showOrHideCheckAndStartAutopilotView(1) + overMapViewClear() } TaxiPassengerOrderStatusEnum.OnTheWayToEnd -> { // 服务中(去往目的地) mView?.showOrHideArrivedEndLayout(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) - mView?.showOrHideStartAutopilotView(isShow = false) + mView?.showOrHideCheckAndStartAutopilotView(2) + mView?.tipXiaoZhi() overMapViewShow() } TaxiPassengerOrderStatusEnum.ArriveAtEnd -> { // 50 到达终点 乘客可以评价 mView?.showOrHideArrivedEndLayout(true) - mView?.showOrHidePressengerCheckPager(isShow = false) - mView?.showOrHideStartAutopilotView(isShow = false) overMapViewClear() } TaxiPassengerOrderStatusEnum.JourneyCompleted -> { // 60 行程完成 - mView?.showOrHideStartAutopilotView(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) + mView?.showOrHideCheckAndStartAutopilotView(2) mView?.showOrHideArrivedEndLayout(false) overMapViewClear() } TaxiPassengerOrderStatusEnum.Cancel -> { // 70 取消订单 - mView?.showOrHideStartAutopilotView(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) + mView?.showOrHideCheckAndStartAutopilotView(2) mView?.showOrHideArrivedEndLayout(isShow = false) overMapViewClear() } @@ -122,12 +123,6 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) : mView?.showOrHideOverMapView() } - fun checkAndUpdateStatus(phone: String?) { - TaxiPassengerModel.checkPhoneAndUpdateStatus(phone) { - mView?.showOrHidePressengerCheckPager(isShow = false) - } - } - /** * 开启自动驾驶 */ diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java index 97c9108e3a..8104aaee3d 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java @@ -19,15 +19,15 @@ import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView; @Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER ) public class StatusViewManager implements IStatusViewLayout { - + private StatusBarView statusBarView; @NonNull @Override public View getStatusView(Context context) { - return new StatusBarView(context); + return statusBarView; } @Override public void init(Context context) { - + statusBarView = new StatusBarView(context); } } diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt index c4c8e3cb1c..5a44675a58 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt @@ -1,28 +1,32 @@ package com.mogo.och.taxi.passenger.ui +import android.animation.Animator +import android.animation.AnimatorSet +import android.animation.ObjectAnimator +import android.annotation.SuppressLint import android.os.Bundle import android.view.View +import com.alibaba.android.arouter.launcher.ARouter import com.mogo.commons.mvp.MvpFragment import com.mogo.commons.voice.AIAssist +import com.mogo.eagle.core.data.constants.MogoServicePaths +import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_TAXI_P import com.mogo.eagle.core.utilcode.util.DeviceUtils -import com.mogo.eagle.core.utilcode.util.OverlayViewUtils import com.mogo.map.listener.IMogoMapListener -import com.mogo.map.uicontroller.VisualAngleMode import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.taxi.passenger.R -import com.mogo.och.taxi.passenger.callback.ITaxiPassengerCommonValueCallback import com.mogo.och.taxi.passenger.presenter.BaseTaxiPassengerPresenter import com.mogo.och.taxi.passenger.ui.arrived.ArrivedView import com.mogo.och.taxi.passenger.ui.bottom.BottomBar -import com.mogo.och.taxi.passenger.ui.check.TaxiPassengerCheckView -import com.mogo.och.taxi.passenger.ui.startautopilot.StartAutopilotView +import com.mogo.och.taxi.passenger.ui.checkstartautopilot.ChekAndStartAutopilotView +import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView +import io.reactivex.disposables.Disposable import kotlinx.android.synthetic.main.taxi_p_base_fragment.* -import java.lang.ref.WeakReference /** * 网约车基础Fragment,主要负责布局通用界面,处理站点面板和通话面板互斥情况 @@ -36,20 +40,9 @@ class TaxiPassengerBaseFragment() : MvpFragment(), IMogoMapListener, TaxiPassengerTaxiView { - /** - * 到达目的地 - */ - private var mArrivedEndView: WeakReference? = null + private var statusBarView: StatusBarView? = null - /** - * 手机号后四位验证 - */ - private var mArrivedCheckView: WeakReference? = null - - /** - * 启动自驾页面 - */ - private var mStartAutopilotView: WeakReference? = null + private var tipXiaoZhiDelay: Disposable?=null override fun getLayoutId(): Int { return R.layout.taxi_p_base_fragment @@ -68,6 +61,15 @@ class TaxiPassengerBaseFragment() : mapBizView!!.onCreate(savedInstanceState) overMapView.onCreateView(savedInstanceState) overMapView.hideResetView() + + (ARouter.getInstance().build(MogoServicePaths.PATH_STATUS_VIEW_MANAGER) + .navigation() as? IStatusViewLayout)?.apply { + val statusView = getStatusView(requireContext()) + if (statusView is StatusBarView) { + statusBarView = statusView + } + } + } private fun initListener() { @@ -82,6 +84,7 @@ class TaxiPassengerBaseFragment() : overMapView.visibility = View.GONE mapBizView.visibility = View.VISIBLE presenter?.setItineraryVisibility() + speedView.visibility = View.VISIBLE ck_setting.visibility = View.VISIBLE if (DeviceUtils.isLenovoModel() || DeviceUtils.isEB5Model()) { romaPView.updateVisible(true) @@ -100,6 +103,7 @@ class TaxiPassengerBaseFragment() : overMapView.visibility = View.VISIBLE mapBizView.visibility = View.GONE presenter?.setItineraryVisibility() + speedView.visibility = View.VISIBLE ck_setting.visibility = View.VISIBLE romaPView.updateVisible(false) romaDistanceView.visibility = View.GONE @@ -113,6 +117,7 @@ class TaxiPassengerBaseFragment() : overMapView.visibility = View.GONE mapBizView.visibility = View.GONE presenter?.setItineraryVisibility() + speedView.visibility = View.GONE ck_setting.visibility = View.GONE ck_setting.isChecked = false romaPView.updateVisible(false) @@ -134,9 +139,9 @@ class TaxiPassengerBaseFragment() : when (bottom.getCurrentPage()) { BottomBar.SelectView.PRECISIONMAP -> { //切换到地图中间 - mapBizView.getUI()?.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null) - // 切换缩放到中视角 - mapBizView.getUI()?.changeZoom2(0.8f) + mapBizView.getUI()?.let { + it.changeMapVisualAngle(it.getVrAngleDefaultMode(), null) + } } BottomBar.SelectView.OVERMAPVIEW -> { overMapView.displayCustomOverView() @@ -146,14 +151,28 @@ class TaxiPassengerBaseFragment() : } } - } - - private fun initCheckView() { - mArrivedCheckView = WeakReference(TaxiPassengerCheckView(context)) - mArrivedCheckView!!.get()!!.iTaxiPassengerCommonValueCallback = - ITaxiPassengerCommonValueCallback { phoneTail: String? -> - getPresenter()!!.checkAndUpdateStatus(phoneTail) + arrivedView.arrivedVisilityChangeListenr = object :ArrivedView.ArrivedVisilityChangeListenr{ + override fun isShow(show: Boolean) { + CallerLogger.d(M_TAXI_P + TAG, "arrived ${show}") + if(arrivedView.visibility==View.GONE&&chekAndStartAutopilotView.visibility==View.GONE){ + showOrHide(true,"到达目的地页面隐藏") + aciv_xiaozhi_normal.setZhiEnable(true) + }else{ + aciv_xiaozhi_normal.setZhiEnable(false) + } } + } + chekAndStartAutopilotView.checkAndStartVisilityChangeListenr = object : ChekAndStartAutopilotView.CheckAndStartVisilityChangeListenr{ + override fun isShow(show: Boolean) { + CallerLogger.d(M_TAXI_P + TAG, "check and startAutopilot ${show}") + if(arrivedView.visibility==View.GONE&&chekAndStartAutopilotView.visibility==View.GONE){ + showOrHide(true,"手机号check+startautopilot页面隐藏") + aciv_xiaozhi_normal.setZhiEnable(true) + }else{ + aciv_xiaozhi_normal.setZhiEnable(false) + } + } + } } override fun onResume() { @@ -216,30 +235,38 @@ class TaxiPassengerBaseFragment() : } } - /** - * 显示或者隐藏乘客可点击自动驾驶页面 - * 乘客验证成功,页面显示,按钮置于不可点击 - * 司机端确认可点击开启自动驾驶, 按钮置为可点击 - * 订单前往目的地,页面消失 - * - * @param isShow - */ - fun showOrHideStartAutopilotView(isShow: Boolean) { - if (isShow) { - exitFullVideoScreen(false) - if (mStartAutopilotView == null || mStartAutopilotView!!.get() == null) { - mStartAutopilotView = WeakReference(StartAutopilotView(requireContext())) + + + fun showOrHideCheckAndStartAutopilotView(status:Int){ + arrivedView.visibility = View.GONE + when (status) { + 0 -> { + if(chekAndStartAutopilotView.visibility == View.GONE){ + showOrHide(false,"显示手机号check") + } + chekAndStartAutopilotView.aniCheckAndStartAutopilot(true,0) } - mStartAutopilotView?.get()?.let { - OverlayViewUtils.showOverlayView(activity, it) - it.handleStartAutopilotBtnStatus(false) + 1 -> { + if(chekAndStartAutopilotView.visibility == View.GONE){ + showOrHide(false,"显示启动自动驾驶") + } + chekAndStartAutopilotView.aniCheckAndStartAutopilot(true,1) } - } else { - mStartAutopilotView?.get()?.closeAllAnimsAndView() - RxUtils.createSubscribe(30_000) { - VoiceNotice.showNotice("想和我对话的时候可以直接戳我,也可以对我说\\'你好小智\\'!", AIAssist.LEVEL2) + 2 -> { + chekAndStartAutopilotView.aniCheckAndStartAutopilot(false,2) + chekAndStartAutopilotView.resetCheckView() } - mStartAutopilotView = null + else -> {} + } + } + + fun tipXiaoZhi(){ + RxUtils.disposeSubscribe(tipXiaoZhiDelay) + tipXiaoZhiDelay = RxUtils.createSubscribe(30_000) { + VoiceNotice.showNotice( + "想和我对话的时候可以直接戳我,也可以对我说\\'你好小智\\'!", + AIAssist.LEVEL2 + ) } } @@ -253,21 +280,19 @@ class TaxiPassengerBaseFragment() : * @param isShow true 展示 false 隐藏 */ fun showOrHideArrivedEndLayout(isShow: Boolean) { + // chekAndStartAutopilotView.visibility = View.GONE if (isShow) { exitFullVideoScreen(true) - if (mArrivedEndView == null || mArrivedEndView!!.get() == null) { - mArrivedEndView = WeakReference(ArrivedView(context)) - } - mArrivedEndView?.get()?.let { - OverlayViewUtils.showOverlayView(activity, it, R.style.och_window_anim_alpha) - RxUtils.createSubscribe(500) { - it.setDataAndStartAnimation() - VoiceNotice.showNotice("已到达目的地,带好随身物品,右侧下车更安全!期待下次再见", AIAssist.LEVEL2) - } + arrivedView.aniArrived(true) + showOrHide(false,"显示到达目的地") + RxUtils.createSubscribe(500) { + arrivedView.setDataAndStartAnimation() + VoiceNotice.showNotice("已到达目的地,带好随身物品,右侧下车更安全!期待下次再见", AIAssist.LEVEL2) } } else { - mArrivedEndView?.get()?.let { - OverlayViewUtils.dismissOverlayView(it) + if(arrivedView.visibility!=View.GONE) { + showOrHide(true, "隐藏到达目的地") + arrivedView.aniArrived(false) } } } @@ -281,44 +306,142 @@ class TaxiPassengerBaseFragment() : overMapView?.clearCustomPolyline() } - /** - * ① 取消订单 到达上车点后乘客取消订单 隐藏乘客验证页面 - * ② 司机到达上车点 到达上车点 展示乘客验证页面 - * ③ 乘客到达上车点 手机号验证成功后 隐藏乘客验证页面 - * ④ debug 使用 - */ - fun showOrHidePressengerCheckPager( - isShow: Boolean, - startSiteAddr: String? = "", - endSiteAddr: String? = "", - passengerNum: String? = "", - carNumber: String? = "", - phone: String? = "" - ) { - try { - if (isShow) { - exitFullVideoScreen(false) - if (mArrivedCheckView == null || mArrivedCheckView!!.get() == null) { - initCheckView() - } - mArrivedCheckView!!.get()!! - .setData(startSiteAddr, endSiteAddr, passengerNum, carNumber, phone) - OverlayViewUtils.showOverlayView(activity, mArrivedCheckView!!.get()) - } else { - if (mArrivedCheckView == null || mArrivedCheckView!!.get() == null) { - return - } - OverlayViewUtils.dismissOverlayView(mArrivedCheckView!!.get()) - } - } catch (e: Exception) { - e.printStackTrace() - } - } fun showOverMapView() { bottom.setCheckIndex(BottomBar.SelectView.OVERMAPVIEW) } + private fun showOrHide(isShow: Boolean,type:String){ + CallerLogger.d(M_TAXI_P + TAG, "类型:$type") + val animatorSet = AnimatorSet() + val allAnimator = mutableListOf() + allAnimator.addAll(aniStatusBar(isShow)) + allAnimator.addAll(aniBottomBar(isShow)) + + allAnimator.addAll(aniSpeedSettingRow(isShow,speedView)) + allAnimator.addAll(aniSpeedSettingRow(isShow,romaPView)) + allAnimator.addAll(aniSpeedSettingRow(isShow,romaDistanceView)) + allAnimator.addAll(aniSpeedSettingRow(isShow,ck_setting)) + + allAnimator.addAll(aniOrderInfo(isShow)) + animatorSet.playTogether(allAnimator) + animatorSet.start() + } + + + @SuppressLint("ObjectAnimatorBinding") + fun aniStatusBar(show:Boolean):List{ + val statusBar = mutableListOf() + val translationYStart: Float + val translationYEnd: Float + val alphaStart: Float + val alphaEnd: Float + if(show){ + translationYStart = -statusBarView!!.height.toFloat() + translationYEnd = 0f + alphaStart = 0.3f + alphaEnd = 1f + }else{ + translationYStart = 0f + translationYEnd = -statusBarView!!.height.toFloat() + alphaStart = 1f + alphaEnd = 0.3f + } + statusBar.add(ObjectAnimator.ofFloat(statusBarView, "translationY", translationYStart, translationYEnd).apply { + duration = 1000 + }) + //ofFloatMove.duration = 1000 + statusBar.add( ObjectAnimator.ofFloat(statusBarView, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }) + return statusBar + } + + private fun aniBottomBar(show:Boolean):List{ + val statusBar = mutableListOf() + val translationYStart: Float + val translationYEnd: Float + val alphaStart: Float + val alphaEnd: Float + if(show){ + translationYStart = bottom!!.height.toFloat() + translationYEnd = 0f + alphaStart = 0.3f + alphaEnd = 1f + }else{ + translationYStart = 0f + translationYEnd = bottom!!.height.toFloat() + alphaStart = 1f + alphaEnd = 0.3f + } + + statusBar.add(ObjectAnimator.ofFloat(bottom, "translationY", translationYStart, translationYEnd).apply { + duration = 1000 + }) + statusBar.add(ObjectAnimator.ofFloat(bottom, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }) + return statusBar + } + + private fun aniSpeedSettingRow(show:Boolean,view:View):List{ + val statusBar = mutableListOf() + val translationYStart: Float + val translationYEnd: Float + val alphaStart: Float + val alphaEnd: Float + if(show){ + translationYStart = -view.height.toFloat() + translationYEnd = 0f + alphaStart = 0.0f + alphaEnd = 1f + }else{ + translationYStart = 0f + translationYEnd = -view.height.toFloat() + alphaStart = 1f + alphaEnd = 0.0f + } + + statusBar.add(ObjectAnimator.ofFloat(view, "translationY", translationYStart, translationYEnd).apply { + duration = 1000 + }) + statusBar.add(ObjectAnimator.ofFloat(view, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }) + return statusBar + } + private fun aniOrderInfo(show:Boolean):List{ + val statusBar = mutableListOf() + val translationYStart: Float + val translationYEnd: Float + val alphaStart: Float + val alphaEnd: Float + if(show){ + translationYStart = itinerary.height.toFloat()/5 + translationYEnd = 0f + alphaStart = 0.0f + alphaEnd = 1f + }else{ + translationYStart = 0f + translationYEnd = itinerary.height.toFloat()/5 + alphaStart = 1f + alphaEnd = 0.0f + } + + statusBar.add(ObjectAnimator.ofFloat(itinerary, "translationY", translationYStart, translationYEnd).apply { + duration = 1000 + }) + statusBar.add(ObjectAnimator.ofFloat(itinerary, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }) + return statusBar + } + + fun preLoadArrivedImages() { + arrivedView.preLoadImages() + } + + companion object { @JvmField val TAG = "TaxiPassengerBaseFragment" diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/AroundProviderImpl.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/AroundProviderImpl.kt deleted file mode 100644 index 834505adc6..0000000000 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/AroundProviderImpl.kt +++ /dev/null @@ -1,135 +0,0 @@ -package com.mogo.och.taxi.passenger.ui.arrived - -import android.content.* -import android.graphics.BitmapFactory -import android.util.* -import androidx.core.util.Pools -import com.mogo.eagle.core.data.config.* -import com.mogo.eagle.core.function.api.autopilot.* -import com.mogo.eagle.core.function.api.lookaround.* -import com.mogo.eagle.core.function.api.lookaround.data.* -import com.mogo.eagle.core.function.call.autopilot.* -import com.mogo.eagle.core.utilcode.mogo.* -import com.zhjt.mogo.adas.data.* -import com.zhjt.mogo.adas.data.bean.* -import kotlinx.coroutines.* -import kotlinx.coroutines.channels.* -import kotlinx.coroutines.channels.Channel.Factory.CONFLATED -import kotlinx.coroutines.flow.* -import java.util.concurrent.atomic.AtomicInteger -import kotlin.concurrent.* - -internal class AroundProviderImpl: IMoGoBackCameraVideoListener, IMoGoRoboBusJinlvM1StitchedVideoListener { - - companion object { - private const val TAG = "AroundProviderImpl" - } - - @OptIn(ExperimentalCoroutinesApi::class) - private var channel: Channel = Channel(CONFLATED) - get() { - return if (field.isClosedForReceive || field.isClosedForSend) { - Channel(CONFLATED) - } else { - field - } - } - - private val pool by lazy { Pools.SynchronizedPool(10) } - - private val bitmapWidth by lazy { AtomicInteger(0) } - - private val bitmapHeight by lazy { AtomicInteger(0) } - - //276,319,147,366 - private val targetX by lazy { AtomicInteger(0) } - - private val targetY by lazy { AtomicInteger(0) } - - private val targetWidth by lazy { AtomicInteger(0) } - - private val targetHeight by lazy { AtomicInteger(0) } - - private val scope by lazy { CoroutineScope(Dispatchers.IO + SupervisorJob()) } - - @Volatile - private var job: Job? = null - - fun init() { - CallerBackCameraVideoListenerManager.addListener(TAG, this) - CallerRoboBusJinlvM1StitchedVideoListenerManager.addListener(TAG, this) - } - fun removeListener() { - CallerBackCameraVideoListenerManager.removeListener(TAG) - CallerRoboBusJinlvM1StitchedVideoListenerManager.removeListener(TAG) - } - - @OptIn(ExperimentalCoroutinesApi::class) - fun flow(): Flow = channelFlow { - val iterator = this@AroundProviderImpl.channel.iterator() - while (iterator.hasNext()) { - send(iterator.next()) - } - }.flowOn(Dispatchers.IO) - - override fun onRoboBusJinlvM1StitchedVideo(data: ByteArray) { - if (bitmapWidth.get() == 0 || bitmapHeight.get() == 0) { - val options = BitmapFactory.Options() - options.inJustDecodeBounds = true - BitmapFactory.decodeByteArray(data,0 , data.size, options) - bitmapWidth.set(options.outWidth) - bitmapHeight.set(options.outHeight) - } - Log.d(TAG, "-- onRoboBusJinlvM1StitchedVideo -- bitmap:[${bitmapWidth.get()}, ${bitmapHeight.get()}] -- data: ${data.size}") - var old = pool.acquire() - try { - if (old == null) { - old = LookAroundData(data, bitmapWidth.get(), bitmapHeight.get(), targetX.get(), targetY.get(), targetWidth.get(), targetHeight.get()) - } else { - old.data = data - old.bitmapWidth = bitmapWidth.get() - old.bitmapHeight = bitmapHeight.get() - old.targetX = targetX.get() - old.targetY = targetY.get() - old.targetWidth = targetWidth.get() - old.targetHeight = targetHeight.get() - } - channel.trySend(old) - } finally { - if (old != null) { - pool.release(old) - } - } - - } - - override fun onBackCameraVideo(data: ByteArray) { - if (bitmapWidth.get() == 0 || bitmapHeight.get() == 0) { - val options = BitmapFactory.Options() - options.inJustDecodeBounds = true - BitmapFactory.decodeByteArray(data,0 , data.size, options) - bitmapWidth.set(options.outWidth) - bitmapHeight.set(options.outHeight) - } - Log.d(TAG, "-- onSweeperFutianBackCameraVideo -- bitmap:[${bitmapWidth.get()}, ${bitmapHeight.get()}] -- data: ${data.size}") - var old = pool.acquire() - try { - if (old == null) { - old = LookAroundData(data, bitmapWidth.get(), bitmapHeight.get(), targetX.get(), targetY.get(), targetWidth.get(), targetHeight.get()) - } else { - old.data = data - old.bitmapWidth = bitmapWidth.get() - old.bitmapHeight = bitmapHeight.get() - old.targetX = targetX.get() - old.targetY = targetY.get() - old.targetWidth = targetWidth.get() - old.targetHeight = targetHeight.get() - } - channel.trySend(old) - } finally { - if (old != null) { - pool.release(old) - } - } - } -} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedView.kt index f86355c8b9..f335b76534 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedView.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedView.kt @@ -1,28 +1,27 @@ package com.mogo.och.taxi.passenger.ui.arrived +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.AnimatorSet +import android.animation.ObjectAnimator import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater +import android.view.View import androidx.lifecycle.ViewModelProvider -import com.mogo.commons.AbsMogoApplication import com.mogo.eagle.core.utilcode.kotlin.onClick -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.util.OverlayViewUtils -import com.mogo.och.common.module.utils.FrameAnimatorContainer +import com.mogo.och.common.module.utils.BigFrameAnimatorContainer import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.taxi.passenger.R import com.mogo.och.taxi.passenger.widget.WindowRelativeLayout -import com.shuyu.gsyvideoplayer.GSYVideoManager -import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder -import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack import io.reactivex.disposables.Disposable +import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.aciv_bg import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.aciv_close import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.actv_endstation -import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.iv_xiaozhi_belt -import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.svp_frame import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.v_video_right_rear_view +import me.jessyan.autosize.utils.AutoSizeUtils /** @@ -42,73 +41,54 @@ class ArrivedView : WindowRelativeLayout, ArrivedViewModel.ArrivedViewCallback { private var subscribe: Disposable?=null - private val gsyVideoOptionBuilder = GSYVideoOptionBuilder() + private var taxiPxiaozhiLove: BigFrameAnimatorContainer?=null + + var arrivedVisilityChangeListenr:ArrivedVisilityChangeListenr?=null + + private lateinit var viewModel: ArrivedViewModel - private var taxiPxiaozhiLove: FrameAnimatorContainer?=null private fun initView() { d(SceneConstant.M_TAXI_P + TAG, "initView") LayoutInflater.from(context).inflate(R.layout.taxi_p_arrived_end_panel, this, true) - svp_frame.setBackgroundResource(R.drawable.tail_ani_0000) - svp_frame.setIsTouchWiget(false) - svp_frame.setIsTouchWigetFull(false) - svp_frame.enableshowProgressDialog = false - svp_frame.enableDoubleClick = false - GSYVideoManager.instance().enableRawPlay(AbsMogoApplication.getApp()) - val url = "android.resource://" + context.packageName + "/" + R.raw.end_video - gsyVideoOptionBuilder.setUrl(url) - .setCacheWithPlay(false) - .setPlayTag("TaxiPassengerArrivedView") - .build(svp_frame) aciv_close.onClick { - OverlayViewUtils.dismissOverlayView(this) + visibility = View.GONE } + } - taxiPxiaozhiLove = FrameAnimatorContainer(R.array.xiaozhi_love, 48,iv_xiaozhi_belt) - taxiPxiaozhiLove?.setOnAnimStopListener(object :FrameAnimatorContainer.OnAnimationStoppedListener{ - override fun AnimationStopped() { - CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "动画暂停") + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + d(SceneConstant.M_TAXI_P + TAG, "展示---:${isVisible}") + if (isVisible) { + if(taxiPxiaozhiLove==null) { + taxiPxiaozhiLove = + BigFrameAnimatorContainer(R.array.arrived_dest, 31, aciv_bg, isOnce = true) } - }) + taxiPxiaozhiLove?.start() + v_video_right_rear_view.resetView() + aniSpeedSettingRow() + viewModel.setEndInfo() + } else { + v_video_right_rear_view.resetView() + taxiPxiaozhiLove = null + RxUtils.disposeSubscribe(subscribe) + } + arrivedVisilityChangeListenr?.isShow(isVisible) } override fun onAttachedToWindow() { super.onAttachedToWindow() - val viewModel = ViewModelProvider(this).get(ArrivedViewModel::class.java) + viewModel = ViewModelProvider(this).get(ArrivedViewModel::class.java) viewModel.setViewCallback(this) - taxiPxiaozhiLove?.start() - v_video_right_rear_view.resetView() - } - - override fun onDetachedFromWindow() { - svp_frame.setBackgroundResource(R.drawable.tail_ani_0000) - svp_frame.setVideoAllCallBack(null) - svp_frame.onVideoReset() - svp_frame.release() - taxiPxiaozhiLove?.stop() - v_video_right_rear_view.resetView() - - super.onDetachedFromWindow() - subscribe?.let { - if (!it.isDisposed) { - it.dispose() - } - } } /** * 设置目的地重置星星状态 */ fun setDataAndStartAnimation() { - svp_frame.setVideoAllCallBack(object : GSYSampleCallBack() { - override fun onAutoComplete(url: String?, vararg objects: Any?) { - svp_frame.setBackgroundResource(R.drawable.tail_ani_0090) - } - }) - svp_frame.startPlayLogic() - RxUtils.createSubscribe(60_000) { - OverlayViewUtils.dismissOverlayView(this@ArrivedView) + subscribe = RxUtils.createSubscribe(60_000) { + visibility = View.GONE } } @@ -128,4 +108,66 @@ class ArrivedView : WindowRelativeLayout, ArrivedViewModel.ArrivedViewCallback { actv_endstation.text = stationName } + override fun preLoadImages() { + if (taxiPxiaozhiLove==null) { + taxiPxiaozhiLove = BigFrameAnimatorContainer(R.array.arrived_dest, 31,aciv_bg,isOnce = true) + } + } + + fun aniArrived(show:Boolean){ + RxUtils.createSubscribe(500) { + val alphaStart: Float + val alphaEnd: Float + if(show){ + alphaStart = 0.0f + alphaEnd = 1f + visibility = View.VISIBLE + }else{ + alphaStart = 1f + alphaEnd = 0.0f + visibility = View.GONE + } + ObjectAnimator.ofFloat(this@ArrivedView, "alpha", alphaStart, alphaEnd).apply { + duration = 500 + addListener(object :AnimatorListenerAdapter(){ + override fun onAnimationEnd(animation: Animator) { + d(TAG,"onAnimationEndcarrivedView") + if(show){ + visibility = View.VISIBLE + }else{ + visibility = View.GONE + } + } + }) + }.start() + } + } + + private fun aniSpeedSettingRow(){ + val translationYStart = - AutoSizeUtils.dp2px(context,180f).toFloat() + val translationYEnd: Float = 0f + val alphaStart: Float = 0f + val alphaEnd: Float = 1f + + val translationX = ObjectAnimator.ofFloat( + v_video_right_rear_view, + "translationX", + translationYStart, + translationYEnd + ).apply { + duration = 1000 + } + val alpha = + ObjectAnimator.ofFloat(v_video_right_rear_view, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + } + val animatorSet = AnimatorSet() + animatorSet.playTogether(mutableListOf(translationX,alpha)) + animatorSet.start() + } + + interface ArrivedVisilityChangeListenr{ + fun isShow(show: Boolean) + } + } \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedViewModel.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedViewModel.kt index 0181c883ac..625088923b 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedViewModel.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedViewModel.kt @@ -1,32 +1,51 @@ package com.mogo.och.taxi.passenger.ui.arrived import androidx.lifecycle.ViewModel +import com.mogo.och.common.module.manager.distancemamager.IDistanceListener +import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager import com.mogo.och.taxi.passenger.model.TaxiPassengerModel -class ArrivedViewModel: ViewModel() { +class ArrivedViewModel : ViewModel(), IDistanceListener { private val TAG = ArrivedViewModel::class.java.simpleName - private var viewCallback:ArrivedViewCallback?=null + private var viewCallback: ArrivedViewCallback? = null + + private var havePreLoadOrderNum: String? = null init { - + TrajectoryAndDistanceManager.addDistanceListener(TAG, this) } - fun setViewCallback(viewCallback: ArrivedViewCallback){ + fun setViewCallback(viewCallback: ArrivedViewCallback) { this.viewCallback = viewCallback + } + + fun setEndInfo() { TaxiPassengerModel.currentOCHOrder?.endSiteAddr?.let { this.viewCallback?.setEndStation(it) } } + override fun distanceCallback(distance: Float) { + if (distance <= 50) { + TaxiPassengerModel.currentOCHOrder?.orderNo?.let { + if (it != havePreLoadOrderNum) { + this.viewCallback?.preLoadImages() + havePreLoadOrderNum = it + } + } + } + } + override fun onCleared() { super.onCleared() this.viewCallback = null } - interface ArrivedViewCallback{ - fun setEndStation(stationName:String) + interface ArrivedViewCallback { + fun setEndStation(stationName: String) + fun preLoadImages() } } \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamSurfaceView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamSurfaceView.kt deleted file mode 100644 index 273dd793ab..0000000000 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamSurfaceView.kt +++ /dev/null @@ -1,171 +0,0 @@ -package com.mogo.och.taxi.passenger.ui.arrived - -import android.content.* -import android.graphics.* -import android.graphics.Paint.Style.STROKE -import android.os.Handler -import android.os.HandlerThread -import android.os.SystemClock -import android.util.* -import android.view.SurfaceHolder -import android.view.SurfaceView -import android.widget.Toast -import com.mogo.eagle.core.function.api.autopilot.* -import com.mogo.eagle.core.function.api.lookaround.data.* -import com.mogo.eagle.core.function.call.autopilot.* -import com.mogo.eagle.core.function.call.devatools.* -import com.mogo.eagle.core.utilcode.kotlin.* -import com.mogo.eagle.core.utilcode.util.ThreadUtils -import com.mogo.eagle.core.utilcode.util.Utils -import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider -import kotlinx.coroutines.* -import kotlinx.coroutines.Runnable -import kotlinx.coroutines.flow.* -import java.util.concurrent.atomic.AtomicReference -import kotlin.math.* - -class RightRearCamSurfaceView: SurfaceView, SurfaceHolder.Callback, Runnable { - - constructor(context: Context?) : super(context) - constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) - constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) - - companion object { - private const val TAG = "M1LookAroundView" - } - - init { - holder.addCallback(this) - } - - private val handler by lazy { AtomicReference() } - - private val lookAroundDataProvider by lazy { AroundProviderImpl() } - - private val bitmapPaint by lazy { Paint(Paint.ANTI_ALIAS_FLAG or Paint.FILTER_BITMAP_FLAG).also { it.xfermode = null } } - - - @Volatile - private var surfaceWidth = 0 - - @Volatile - private var surfaceHeight = 0 - - @Volatile - private var isSurfaceValid = false - - @Volatile - private var data: LookAroundData? = null - - override fun surfaceCreated(holder: SurfaceHolder) { - val old = handler.get() - if (old == null) { - handler.set(HandlerThread("look-around-drawer").let { it.start(); Handler(it.looper) }) - } else { - old.looper.quitSafely() - handler.set(HandlerThread("look-around-drawer").let { it.start(); Handler(it.looper) }) - } - handler.get()?.removeCallbacks(this) - handler.get()?.post(this) - isSurfaceValid = true - } - - override fun surfaceChanged(holder: SurfaceHolder, format: Int, width: Int, height: Int) { - this.surfaceWidth = width - this.surfaceHeight = height - } - - override fun surfaceDestroyed(holder: SurfaceHolder) { - isSurfaceValid = false - } - - override fun run() { - var isTimedBlock = false - try { - if (!isSurfaceValid) { - isTimedBlock = true - return - } - if (this.surfaceWidth <= 0 || this.surfaceHeight <= 0) { - isTimedBlock = true - return - } - val data = this.data ?: return - val bitmapWidth = data.bitmapWidth - val bitmapHeight = data.bitmapHeight - val scaleX = this.surfaceWidth * 1.0f / bitmapWidth - val scaleY = this.surfaceHeight * 1.0f / bitmapHeight - val bytes = data.data - if (bytes == null) { - isTimedBlock = true - return - } - val canvas = holder.lockCanvas() - try { - if (canvas == null) { - isTimedBlock = true - return - } - //1. 绘制图片 - val bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.size) - if (bitmap == null) { - isTimedBlock = true - return - } - try { - canvas.save() - canvas.scale(scaleX, scaleY) - canvas.drawBitmap(bitmap, 0f, 0f, bitmapPaint) - } finally { - canvas.restore() - if (!bitmap.isRecycled) { - bitmap.recycle() - } - } - - } finally { - if (canvas != null) { - holder.unlockCanvasAndPost(canvas) - } - } - } finally { - if (isTimedBlock) { - try { - Thread.sleep(2000) - } catch (ignore: Exception) { } - } - handler.get().post(this) - } - } - - override fun onAttachedToWindow() { - super.onAttachedToWindow() - Log.d(TAG, "--- 发起订阅 ---") - CallerAutoPilotControlManager.setIsSubscribeBackCameraVideoVideo(1, true) - lookAroundDataProvider.init() - scope.launch(ThreadUtils.getCpuPool().asCoroutineDispatcher()) { - lookAroundDataProvider.flow().also { flow -> - flow.onEach { - Log.d(TAG, "-- onEach ---:$it") - //if (it.isValid()) { - data = it - //} - }.collect() - } - } - } - - override fun onDetachedFromWindow() { - super.onDetachedFromWindow() - Log.d(TAG, "--- 取消订阅 ---") - CallerAutoPilotControlManager.setIsSubscribeBackCameraVideoVideo(1, false) - lookAroundDataProvider.removeListener() - handler.get()?.looper?.quitSafely() - } - - override fun onSizeChanged(w: Int, h: Int, oldw: Int, oldh: Int) { - super.onSizeChanged(w, h, oldw, oldh) - outlineProvider = TextureVideoViewOutlineProvider(36f) - clipToOutline = true - } -} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamView.kt index 655a132350..aa86218a01 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamView.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamView.kt @@ -9,7 +9,7 @@ import android.view.LayoutInflater import androidx.constraintlayout.widget.ConstraintLayout import com.mogo.eagle.core.function.api.autopilot.IMoGoBackCameraVideoListener import com.mogo.eagle.core.function.api.autopilot.IMoGoRoboBusJinlvM1StitchedVideoListener -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager.setIsSubscribeBackCameraVideoVideo +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager import com.mogo.eagle.core.function.call.autopilot.CallerBackCameraVideoListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerRoboBusJinlvM1StitchedVideoListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d @@ -48,18 +48,28 @@ class RightRearCamView : ConstraintLayout , IMoGoBackCameraVideoListener, override fun onAttachedToWindow() { super.onAttachedToWindow() - setIsSubscribeBackCameraVideoVideo(1, true) - CallerBackCameraVideoListenerManager.addListener(TAG, this) - CallerRoboBusJinlvM1StitchedVideoListenerManager.addListener(TAG, this) } override fun onDetachedFromWindow() { - super.onDetachedFromWindow() - setIsSubscribeBackCameraVideoVideo(1, false) - CallerBackCameraVideoListenerManager.removeListener(this) - CallerRoboBusJinlvM1StitchedVideoListenerManager.removeListener(this) + super.onDetachedFromWindow() } + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if(isVisible){ + d(SceneConstant.M_TAXI_P + TAG, "展示--可见") + CallerAutoPilotControlManager.setIsSubscribeBackCameraVideoVideo(1, true) + CallerBackCameraVideoListenerManager.addListener(TAG, this) + CallerRoboBusJinlvM1StitchedVideoListenerManager.addListener(TAG, this) + }else{ + d(SceneConstant.M_TAXI_P + TAG, "展示--不可见") + CallerAutoPilotControlManager.setIsSubscribeBackCameraVideoVideo(1, false) + CallerBackCameraVideoListenerManager.removeListener(this) + CallerRoboBusJinlvM1StitchedVideoListenerManager.removeListener(this) + } + } + + companion object { const val TAG = "RightRearCamView" } diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomCheckView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomCheckView.kt index 78dd252f72..a9124b5ca2 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomCheckView.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomCheckView.kt @@ -7,8 +7,8 @@ import android.view.View import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.content.ContextCompat import com.mogo.och.taxi.passenger.R -import kotlinx.android.synthetic.main.m1_bottom_check.view.aciv_center_image -import kotlinx.android.synthetic.main.m1_bottom_check.view.actv_title +import kotlinx.android.synthetic.main.taxi_p_bottom_check.view.aciv_center_image +import kotlinx.android.synthetic.main.taxi_p_bottom_check.view.actv_title open class BottomCheckView @JvmOverloads constructor( context: Context, @@ -31,7 +31,7 @@ open class BottomCheckView @JvmOverloads constructor( private var isCheck = false init { - LayoutInflater.from(context).inflate(R.layout.m1_bottom_check, this, true) + LayoutInflater.from(context).inflate(R.layout.taxi_p_bottom_check, this, true) try { val typedArray = context.obtainStyledAttributes(attrs, R.styleable.BottomSelectView) backageViewId = typedArray.getResourceId(R.styleable.BottomSelectView_backageViewId, -1) diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/TaxiPassengerCheckView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/TaxiPassengerCheckView.kt deleted file mode 100644 index a7f4aff444..0000000000 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/TaxiPassengerCheckView.kt +++ /dev/null @@ -1,250 +0,0 @@ -package com.mogo.och.taxi.passenger.ui.check - -import android.content.Context -import android.graphics.Typeface -import android.text.Spannable -import android.text.SpannableStringBuilder -import android.text.style.TextAppearanceSpan -import android.util.AttributeSet -import android.view.LayoutInflater -import android.view.View -import android.widget.RelativeLayout -import android.widget.TextView -import com.mogo.commons.voice.AIAssist -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.util.ToastUtils -import com.mogo.och.common.module.utils.FrameAnimatorContainer -import com.mogo.och.common.module.voice.VoiceNotice -import com.mogo.och.taxi.passenger.R -import com.mogo.och.taxi.passenger.callback.ITaxiPassengerCommonValueCallback -import com.mogo.och.taxi.passenger.ui.arrived.ArrivedView -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.iv_zhi_normal -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_count -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_end -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_start -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_back -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_eight -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_first -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_five -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_four -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_fourth -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_nine -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_one -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_second -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_seven -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_six -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_submit -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_third -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_three -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_two -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_zero - -/** - * V2X预警事件view:通过FloatWindow呈现,无需加入到自定义layout中 - * - * Created on 2022/3/16 - */ -class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener { - - constructor(context: Context?) : super(context) - - constructor(context: Context?, attributeSet: AttributeSet) : super(context, attributeSet) - - constructor(context: Context?, attributeSet: AttributeSet, defStyleAttr: Int) : super(context, attributeSet, defStyleAttr) - - constructor(context: Context?, attributeSet: AttributeSet, defStyleAttr: Int, defStyleRes: Int) : super(context, attributeSet, defStyleAttr, defStyleRes) - - var iTaxiPassengerCommonValueCallback: ITaxiPassengerCommonValueCallback?=null - - - private var index = 0 - private var phone = "" - private val numSelect = arrayOfNulls(4) - private val numSelectTextView = arrayOfNulls(4) - - private var taxiPxiaozhiCheck: FrameAnimatorContainer?=null - - private fun initView(context: Context) { - d(SceneConstant.M_TAXI_P + TAG, "initView") - LayoutInflater.from(context).inflate(R.layout.taxi_p_passenger_check_panel, this, true) - keyBoardLogic() - numSelectTextView[0] = tv_taxi_passenger_number_first - numSelectTextView[1] = tv_taxi_passenger_number_second - numSelectTextView[2] = tv_taxi_passenger_number_third - numSelectTextView[3] = tv_taxi_passenger_number_fourth - - taxiPxiaozhiCheck = FrameAnimatorContainer(R.array.xiaozhi_normal, 12,iv_zhi_normal) - taxiPxiaozhiCheck?.setOnAnimStopListener(object : FrameAnimatorContainer.OnAnimationStoppedListener{ - override fun AnimationStopped() { - CallerLogger.d(SceneConstant.M_TAXI_P + ArrivedView.TAG, "动画暂停") - } - }) - } - - override fun onAttachedToWindow() { - super.onAttachedToWindow() - taxiPxiaozhiCheck?.start() - } - - override fun onDetachedFromWindow() { - super.onDetachedFromWindow() - taxiPxiaozhiCheck?.stop() - } - - private fun keyBoardLogic() { - tv_taxi_passenger_number_one.setOnClickListener(this) - tv_taxi_passenger_number_two.setOnClickListener(this) - tv_taxi_passenger_number_three.setOnClickListener(this) - tv_taxi_passenger_number_four.setOnClickListener(this) - tv_taxi_passenger_number_five.setOnClickListener(this) - tv_taxi_passenger_number_six.setOnClickListener(this) - tv_taxi_passenger_number_seven.setOnClickListener(this) - tv_taxi_passenger_number_eight.setOnClickListener(this) - tv_taxi_passenger_number_nine.setOnClickListener(this) - tv_taxi_passenger_number_zero.setOnClickListener(this) - tv_taxi_passenger_number_back.setOnClickListener(this) - tv_taxi_passenger_number_submit.setOnClickListener(this) - - tv_taxi_passenger_number_first.setOnClickListener(this) - tv_taxi_passenger_number_second.setOnClickListener(this) - tv_taxi_passenger_number_third.setOnClickListener(this) - tv_taxi_passenger_number_fourth.setOnClickListener(this) - - } - - override fun onClick(v: View?) { - when (v?.id) { - R.id.tv_taxi_passenger_number_one -> {showNumver(1)} - R.id.tv_taxi_passenger_number_two -> {showNumver(2)} - R.id.tv_taxi_passenger_number_three-> {showNumver(3)} - R.id.tv_taxi_passenger_number_four-> {showNumver(4)} - R.id.tv_taxi_passenger_number_five -> {showNumver(5)} - R.id.tv_taxi_passenger_number_six -> {showNumver(6)} - R.id.tv_taxi_passenger_number_seven -> {showNumver(7)} - R.id.tv_taxi_passenger_number_eight -> {showNumver(8)} - R.id.tv_taxi_passenger_number_nine -> {showNumver(9)} - R.id.tv_taxi_passenger_number_zero -> {showNumver(0)} - R.id.tv_taxi_passenger_number_back -> {deleteNumver()} - R.id.tv_taxi_passenger_number_first -> {selectIndex(0)} - R.id.tv_taxi_passenger_number_second -> {selectIndex(1)} - R.id.tv_taxi_passenger_number_third -> {selectIndex(2)} - R.id.tv_taxi_passenger_number_fourth -> {selectIndex(3)} - R.id.tv_taxi_passenger_number_submit -> {clearNumber()} - else -> {} - } - } - - private fun checkAndCommit() { - val numberStr = "${numSelect[0]}${numSelect[1]}${numSelect[2]}${numSelect[3]}" - if(!phone.endsWith(numberStr)){ - ToastUtils.showLong("请输入正确的手机尾号") - VoiceNotice.showNotice("验证失败!再检查一下吧~", AIAssist.LEVEL2) - return - } - iTaxiPassengerCommonValueCallback?.onCommonCallback(numberStr) - } - - private fun selectIndex(i: Int) { - index = i - changeStyle() - } - - private fun showNumver(number: Int) { - if (index in 0..3) { - numSelect[index] = number - numSelectTextView[index]!!.text = number.toString() - if(index!=3){ - index++ - } - changeStyle() - numSelect.forEach { - if(it==null){ - return - } - } - - checkAndCommit() - } - } - - private fun clearNumber(){ - for(i in numSelect.indices){ - numSelect[i] = null - } - numSelectTextView.forEach { - it?.text = "" - } - index = 0 - changeStyle() - } - - private fun deleteNumver() { - if (index in 0..3) { - if(numSelect[index]==null){ - if(index!=0){ - index-- - } - changeStyle() - //return - } - numSelect[index] = null - numSelectTextView[index]!!.text = "" - } - } - - private fun changeStyle() { - numSelectTextView.forEachIndexed { indexIn, textView -> - if(indexIn==index){ - numSelectTextView[index]!!.setBackgroundResource(R.drawable.bg_taxi_p_checked_input_background) - numSelectTextView[index]!!.setTextColor(resources.getColor(R.color.taxi_p_check_keyboard_input_field_checked)) - numSelectTextView[index]!!.setShadowLayer(0f,0f,0f, - resources.getColor(R.color.taxi_p_check_keyboard_input_field_checked_text_shadow)) - }else{ - numSelectTextView[indexIn]!!.setBackgroundResource(R.drawable.bg_taxi_p_check_input_background) - numSelectTextView[indexIn]!!.setTextColor(resources.getColor(R.color.taxi_p_check_keyboard_input_field)) - numSelectTextView[indexIn]!!.setShadowLayer(20f,0f,2f, - resources.getColor(R.color.taxi_p_check_keyboard_input_field_checked_text_shadow)) - } - } - - } - - fun setData( - startSiteAddr: String?, - endSiteAddr: String?, - passengerNum: String?, - carNumber: String?, - phone: String? - ) { - this.phone = phone?:"" - val sb = SpannableStringBuilder("乘客数:$passengerNum 位") // 包装字体内容 - sb.setSpan( - TextAppearanceSpan("default", - Typeface.NORMAL,100, - resources.getColorStateList(R.color.taxi_p_check_passenger_number) ,null ), - 4, 5, Spannable.SPAN_INCLUSIVE_INCLUSIVE) - tv_passenger_count.text = sb - tv_passenger_start.text = "起 点 : $startSiteAddr" - tv_passenger_end.text = "终 点 : $endSiteAddr" - for(i in numSelect.indices){ - numSelect[i] = null - } - numSelectTextView.forEach { - it?.text = "" - } - } - - companion object { - const val TAG = "TaxiPassengerCheckView" - } - - init { - try { - initView(context) - } catch (e: Exception) { - e.printStackTrace() - } - } -} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotView.kt new file mode 100644 index 0000000000..0c18801782 --- /dev/null +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotView.kt @@ -0,0 +1,156 @@ +package com.mogo.och.taxi.passenger.ui.checkstartautopilot + +import android.animation.ObjectAnimator +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.View +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.findViewTreeViewModelStoreOwner +import com.mogo.eagle.core.utilcode.kotlin.onClick +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.och.common.module.utils.BigFrameAnimatorContainer +import com.mogo.och.taxi.passenger.R +import com.mogo.och.taxi.passenger.widget.WindowRelativeLayout +import kotlinx.android.synthetic.main.taxt_p_check_startautopilot.view.aciv_check_autopilot +import kotlinx.android.synthetic.main.taxt_p_check_startautopilot.view.checkPhoneNumber +import kotlinx.android.synthetic.main.taxt_p_check_startautopilot.view.startAutopilotClose +import kotlinx.android.synthetic.main.taxt_p_check_startautopilot.view.startAutopilotView + +/** + * V2X预警事件view:通过FloatWindow呈现,无需加入到自定义layout中 + * + * Created on 2022/3/16 + */ +class ChekAndStartAutopilotView : WindowRelativeLayout, + ChekAndStartAutopilotViewModel.CheckCallback { + + constructor(context: Context?) : super(context) + + constructor(context: Context?, attributeSet: AttributeSet) : super(context, attributeSet) + + constructor(context: Context?, attributeSet: AttributeSet, defStyleAttr: Int) : super( + context, + attributeSet, + defStyleAttr + ) + + constructor( + context: Context?, + attributeSet: AttributeSet, + defStyleAttr: Int, + defStyleRes: Int + ) : super(context, attributeSet, defStyleAttr, defStyleRes) + + private var viewModel: ChekAndStartAutopilotViewModel? = null + + private var aniCheck2StartAutopilotView: BigFrameAnimatorContainer? = null + + var checkAndStartVisilityChangeListenr: CheckAndStartVisilityChangeListenr?=null + + + private fun initView(context: Context) { + d(SceneConstant.M_TAXI_P + TAG, "initView") + LayoutInflater.from(context).inflate(R.layout.taxt_p_check_startautopilot, this, true) + + startAutopilotClose.onClick { + visibility = View.GONE + } + } + + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if (isVisible) { + aniCheck2StartAutopilotView = + BigFrameAnimatorContainer(R.array.check2startautopilt, 39, aciv_check_autopilot, true) + aniCheck2StartAutopilotView?.mOnAnimationStoppedListener = object : BigFrameAnimatorContainer.OnAnimationStoppedListener{ + override fun AnimationStopped() { + startAutopilotView.showStartAutopilot() + } + } + } else { + aniCheck2StartAutopilotView = null + } + checkAndStartVisilityChangeListenr?.isShow(isVisible) + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + viewModel = findViewTreeViewModelStoreOwner()?.let { + ViewModelProvider(it).get(ChekAndStartAutopilotViewModel::class.java) + } + viewModel?.setStartAutopilotCallback(this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + } + + + companion object { + const val TAG = "TaxiPassengerCheckView" + } + + init { + try { + initView(context) + } catch (e: Exception) { + e.printStackTrace() + } + } + + override fun dismissWindow() { + visibility = View.GONE + } + + fun resetCheckView() { + checkPhoneNumber.visibility = View.VISIBLE + startAutopilotView.visibility = View.GONE + startAutopilotClose.visibility = View.GONE + } + + fun aniCheckAndStartAutopilot(show:Boolean,status:Int){ + val alphaStart: Float + val alphaEnd: Float + if(show){ + alphaStart = 0.0f + alphaEnd = 1f + visibility = View.VISIBLE + }else{ + alphaStart = 1f + alphaEnd = 0.0f + visibility = View.GONE + } + when (status) { + 0 -> { + checkPhoneNumber.visibility = View.VISIBLE + startAutopilotView.visibility = View.GONE + startAutopilotClose.visibility = View.GONE + ObjectAnimator.ofFloat(this@ChekAndStartAutopilotView, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }.start() + } + 1 -> { + checkPhoneNumber.visibility = View.GONE + startAutopilotView.visibility = View.VISIBLE + startAutopilotClose.visibility = View.VISIBLE + aniCheck2StartAutopilotView?.start() + } + 2 -> { + checkPhoneNumber.visibility = View.VISIBLE + startAutopilotView.visibility = View.GONE + startAutopilotClose.visibility = View.GONE + return + } + else -> {} + } + + } + + interface CheckAndStartVisilityChangeListenr{ + fun isShow(show: Boolean) + } + + +} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotViewModel.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotViewModel.kt new file mode 100644 index 0000000000..ad8625ffbd --- /dev/null +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotViewModel.kt @@ -0,0 +1,50 @@ +package com.mogo.och.taxi.passenger.ui.checkstartautopilot + +import androidx.lifecycle.ViewModel +import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrderQueryRespBean +import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrdersInServiceQueryRespBean +import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback +import com.mogo.och.taxi.passenger.constant.TaxiPassengerOrderStatusEnum +import com.mogo.och.taxi.passenger.model.TaxiPassengerModel + +class ChekAndStartAutopilotViewModel : ViewModel(), IOCHTaxiPassengerOrderStatusCallback { + + private val TAG = ChekAndStartAutopilotViewModel::class.java.simpleName + + private var viewCallback: CheckCallback? = null + + init { + TaxiPassengerModel.setOrderStatusCallback(TAG,this) + } + + fun setStartAutopilotCallback(viewCallback: CheckCallback) { + this.viewCallback = viewCallback + } + + + override fun onCurrentOrderStatusChanged(order: TaxiPassengerOrderQueryRespBean.Result?) { + super.onCurrentOrderStatusChanged(order) + when (order?.orderStatus) { + TaxiPassengerOrderStatusEnum.ArriveAtStart.code -> { + // 显示手机号验证 + } + TaxiPassengerOrderStatusEnum.UserArriveAtStart.code -> { + // 显示启动自驾 + } + else -> { + viewCallback?.dismissWindow() + } + } + } + + override fun onCleared() { + super.onCleared() + this.viewCallback = null + TaxiPassengerModel.setOrderStatusCallback(TAG, null) + } + + interface CheckCallback { + fun dismissWindow() + } + +} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/CheckView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/CheckView.kt new file mode 100644 index 0000000000..9e9e8c0a57 --- /dev/null +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/CheckView.kt @@ -0,0 +1,101 @@ +package com.mogo.och.taxi.passenger.ui.checkstartautopilot.check + +import android.content.Context +import android.graphics.Typeface +import android.text.Spannable +import android.text.SpannableStringBuilder +import android.text.style.TextAppearanceSpan +import android.util.AttributeSet +import android.view.LayoutInflater +import androidx.constraintlayout.widget.ConstraintLayout +import androidx.core.content.ContextCompat +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.findViewTreeViewModelStoreOwner +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.och.common.module.utils.RxUtils +import com.mogo.och.taxi.passenger.R +import com.mogo.och.taxi.passenger.widget.NumberCheckView +import io.reactivex.disposables.Disposable +import kotlinx.android.synthetic.main.taxt_p_check.view.numberCheckView +import kotlinx.android.synthetic.main.taxt_p_check.view.tv_passenger_count +import kotlinx.android.synthetic.main.taxt_p_check.view.tv_passenger_end +import kotlinx.android.synthetic.main.taxt_p_check.view.tv_passenger_start + +class CheckView @JvmOverloads constructor( + context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 +) : ConstraintLayout( + context, attrs, defStyleAttr +), ChekViewModel.CheckCallback, NumberCheckView.SubmitListener { + + + private var submitThrottle: Disposable? = null + + private var viewModel: ChekViewModel? = null + + companion object { + const val TAG = "CheckView" + } + + + private fun initView(context: Context) { + d(SceneConstant.M_TAXI_P + TAG, "initView") + LayoutInflater.from(context).inflate(R.layout.taxt_p_check, this, true) + numberCheckView.submitListener = this + } + + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if (isVisible) { + viewModel?.setOrderInfo() + } + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + viewModel = findViewTreeViewModelStoreOwner()?.let { + ViewModelProvider(it).get(ChekViewModel::class.java) + } + viewModel?.setStartAutopilotCallback(this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + } + + init { + try { + initView(context) + } catch (e: Exception) { + e.printStackTrace() + } + } + + override fun setOrderInfo( + startSiteAddr: String?, + endSiteAddr: String?, + passengerNum: String?, + phone: String? + ) { + val sb = SpannableStringBuilder("乘客数:$passengerNum 位") // 包装字体内容 + sb.setSpan( + TextAppearanceSpan( + "default", + Typeface.NORMAL, 100, + ContextCompat.getColorStateList(context, R.color.taxi_p_378EFB), null + ), + 4, 5, Spannable.SPAN_INCLUSIVE_INCLUSIVE + ) + tv_passenger_count.text = sb + tv_passenger_start.text = "起 点 : $startSiteAddr" + tv_passenger_end.text = "终 点 : $endSiteAddr" + numberCheckView.resetNum(phone ?: "") + } + + override fun trySubmit(number: String) { + RxUtils.disposeSubscribe(submitThrottle) + submitThrottle = RxUtils.createSubscribe(1_000) { + viewModel?.checkAndUpdateStatus(number) + } + } +} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/ChekViewModel.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/ChekViewModel.kt new file mode 100644 index 0000000000..aab57ec5ec --- /dev/null +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/ChekViewModel.kt @@ -0,0 +1,45 @@ +package com.mogo.och.taxi.passenger.ui.checkstartautopilot.check + +import androidx.lifecycle.ViewModel +import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrdersInServiceQueryRespBean +import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback +import com.mogo.och.taxi.passenger.constant.TaxiPassengerOrderStatusEnum +import com.mogo.och.taxi.passenger.model.TaxiPassengerModel + +class ChekViewModel : ViewModel() { + + private val TAG = ChekViewModel::class.java.simpleName + + private var viewCallback: CheckCallback? = null + + init { + } + + fun setStartAutopilotCallback(viewCallback: CheckCallback) { + this.viewCallback = viewCallback + } + fun checkAndUpdateStatus(phone: String) { + TaxiPassengerModel.checkPhoneAndUpdateStatus(phone) + } + + fun setOrderInfo() { + val currentOCHOrder = TaxiPassengerModel.currentOCHOrder + currentOCHOrder?.let { order -> + viewCallback?.setOrderInfo(order.startSiteAddr, + order.endSiteAddr, order.passengerNum, order.passengerPhone) + } + } + + override fun onCleared() { + super.onCleared() + this.viewCallback = null + } + + interface CheckCallback { + fun setOrderInfo(startSiteAddr: String?, + endSiteAddr: String?, + passengerNum: String?, + phone: String?) + } + +} \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotView.kt similarity index 64% rename from OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotView.kt rename to OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotView.kt index 732172250c..66d534ded9 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotView.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotView.kt @@ -1,38 +1,28 @@ -package com.mogo.och.taxi.passenger.ui.startautopilot +package com.mogo.och.taxi.passenger.ui.checkstartautopilot.startautopilot -import android.annotation.SuppressLint import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater import android.view.View import androidx.core.content.ContextCompat -import androidx.core.content.res.ResourcesCompat import androidx.lifecycle.ViewModelProvider -import com.elegant.utils.UiThreadHandler -import com.mogo.eagle.core.data.config.HdMapBuildConfig import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.util.OverlayViewUtils -import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.och.common.module.manager.devicemanage.data.DoorPosition import com.mogo.och.common.module.manager.devicemanage.data.DoorState import com.mogo.och.common.module.utils.FrameAnimatorContainer -import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.taxi.passenger.R import com.mogo.och.taxi.passenger.widget.WindowRelativeLayout -import io.reactivex.disposables.Disposable -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_front_left_door -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_front_right_door -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_orderinfo -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_rear_left_door -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_rear_right_door -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.iv_xiaozhi_belt -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.starting_autopilot_view_close -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.taxi_p_autopilot_btn_bg -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.taxi_p_autopilot_starting -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.taxi_p_start_autopilot -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.cl_car_type +import kotlinx.android.synthetic.main.taxt_p_start_autopilot_view.view.aciv_middle_car +import kotlinx.android.synthetic.main.taxt_p_start_autopilot_view.view.actv_front_left_door +import kotlinx.android.synthetic.main.taxt_p_start_autopilot_view.view.actv_front_right_door +import kotlinx.android.synthetic.main.taxt_p_start_autopilot_view.view.actv_orderinfo +import kotlinx.android.synthetic.main.taxt_p_start_autopilot_view.view.actv_rear_left_door +import kotlinx.android.synthetic.main.taxt_p_start_autopilot_view.view.actv_rear_right_door +import kotlinx.android.synthetic.main.taxt_p_start_autopilot_view.view.taxi_p_autopilot_btn_bg +import kotlinx.android.synthetic.main.taxt_p_start_autopilot_view.view.taxi_p_autopilot_starting +import kotlinx.android.synthetic.main.taxt_p_start_autopilot_view.view.taxi_p_start_autopilot /** * @author: yangyakun @@ -50,25 +40,16 @@ class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAu constructor(context: Context, attributeSet: AttributeSet) : super(context, attributeSet) constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int) : super( - context, - attributeSet, - defStyleAttr + context, attributeSet, defStyleAttr ) - constructor( - context: Context, - attributeSet: AttributeSet, - defStyleAttr: Int, - defStyleRes: Int - ) : super(context, attributeSet, defStyleAttr, defStyleRes) - companion object { private val TAG = StartAutopilotView::class.java.simpleName } private var taxiPStartAutopilot: FrameAnimatorContainer? = null private var taxiPStartAutopilotCar: FrameAnimatorContainer? = null - private var taxiPXiaozhiBelt: FrameAnimatorContainer? = null + private lateinit var viewModel: StartAutopilotViewModel init { @@ -76,11 +57,9 @@ class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAu } private fun initView() { - LayoutInflater.from(context).inflate(R.layout.taxi_p_start_autopilot_view, this, true) + LayoutInflater.from(context).inflate(R.layout.taxt_p_start_autopilot_view, this, true) taxiPStartAutopilotCar = FrameAnimatorContainer( - R.array.taxi_p_start_autopilot_car, - 20, - taxi_p_autopilot_starting + R.array.taxi_p_start_autopilot_car, 20, taxi_p_autopilot_starting, initFirstFrame = false ) taxiPStartAutopilotCar?.setOnAnimStopListener(object : FrameAnimatorContainer.OnAnimationStoppedListener { @@ -89,10 +68,7 @@ class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAu } }) taxiPStartAutopilot = FrameAnimatorContainer( - R.array.taxi_p_start_autopilot, - 15, - taxi_p_autopilot_btn_bg, - false + R.array.taxi_p_start_autopilot, 15, taxi_p_autopilot_btn_bg, true, initFirstFrame = false ) taxiPStartAutopilot?.setOnAnimStopListener(object : FrameAnimatorContainer.OnAnimationStoppedListener { @@ -100,13 +76,6 @@ class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAu CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "可以启动自驾动画暂停") } }) - taxiPXiaozhiBelt = FrameAnimatorContainer(R.array.xiaozhi_belt, 20, iv_xiaozhi_belt) - taxiPXiaozhiBelt?.setOnAnimStopListener(object : - FrameAnimatorContainer.OnAnimationStoppedListener { - override fun AnimationStopped() { - CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "小智动画暂停") - } - }) } override fun setOrderInfo(show: String) { @@ -161,33 +130,46 @@ class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAu } } - override fun onVisibilityChanged(changedView: View, visibility: Int) { - super.onVisibilityChanged(changedView, visibility) - if (changedView != this) { - return - } - if (HdMapBuildConfig.currentCarVrIconRes == R.raw.hq_h9) { - cl_car_type.setBackgroundResource(R.drawable.taxi_p_start_panel__hq_bg) - } else { - cl_car_type.setBackgroundResource(R.drawable.taxi_p_start_panel__df_bg) + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if(isVisible){ + taxi_p_start_autopilot.background = + ContextCompat.getDrawable(context, R.drawable.taxi_p_enable_start_autopilot) + taxi_p_start_autopilot.text = resources.getString(R.string.taxi_p_start_autopilot_txt) + taxi_p_autopilot_starting.setImageResource(R.drawable.light_00018) + viewModel.setOrderInfo() + }else{ + unableStartAutopilot() + goneAllDoorState() + resetView() + CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "onDetachedFromWindow") } } + private fun resetView() { + taxi_p_autopilot_starting.visibility = View.GONE + aciv_middle_car.visibility = View.GONE + taxi_p_autopilot_btn_bg.visibility = View.GONE + taxi_p_start_autopilot.visibility = View.GONE + } + + fun showStartAutopilot(){ + taxi_p_autopilot_starting.visibility = View.VISIBLE + aciv_middle_car.visibility = View.VISIBLE + taxi_p_autopilot_btn_bg.visibility = View.VISIBLE + taxi_p_start_autopilot.visibility = View.VISIBLE + } + override fun onAttachedToWindow() { super.onAttachedToWindow() CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "onAttachedToWindow") - val viewModel = ViewModelProvider(this).get(StartAutopilotViewModel::class.java) + viewModel = ViewModelProvider(this).get(StartAutopilotViewModel::class.java) viewModel.setStartAutopilotCallback(this) taxi_p_start_autopilot.onClick { //开启动画和自动驾驶 startAutopiloting() viewModel.startAutopilot() } - starting_autopilot_view_close.onClick { - unableStartAutopilot() - OverlayViewUtils.dismissOverlayView(this) - } - taxiPXiaozhiBelt?.start() } /** @@ -196,10 +178,10 @@ class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAu private fun unableStartAutopilot() { taxiPStartAutopilot?.stop() taxiPStartAutopilotCar?.stop() - taxi_p_autopilot_starting.setImageResource(R.drawable.light_00003) + taxi_p_autopilot_starting.setImageResource(R.drawable.light_00018) taxi_p_autopilot_btn_bg.setImageResource(R.drawable.image_00000_0) taxi_p_start_autopilot.background = - ContextCompat.getDrawable(context, R.drawable.taxi_p_start_autopilot_txt_btn_bg) + ContextCompat.getDrawable(context, R.drawable.taxi_p_unable_start_autopilot) taxi_p_start_autopilot.text = resources.getString(R.string.taxi_p_start_autopilot_txt) } @@ -207,10 +189,11 @@ class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAu * ②:可以启动自驾 */ private fun ableStartAutopilot() { - taxiPStartAutopilot?.reStart() + taxiPStartAutopilot?.stop() taxiPStartAutopilotCar?.stop() - taxi_p_autopilot_starting.setImageResource(R.drawable.light_00003) - taxi_p_start_autopilot.background = null + taxi_p_autopilot_starting.setImageResource(R.drawable.light_00018) + taxi_p_start_autopilot.background = + ContextCompat.getDrawable(context, R.drawable.taxi_p_enable_start_autopilot) taxi_p_start_autopilot.text = resources.getString(R.string.taxi_p_start_autopilot_txt) } @@ -223,7 +206,7 @@ class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAu taxi_p_start_autopilot.background = null taxi_p_start_autopilot?.text = resources.getString(R.string.taxi_p_start_autopilot_loading) taxi_p_start_autopilot?.setTextColor( - ContextCompat.getColor(context, R.color.taxi_p_start_autopilot_txt_color) + ContextCompat.getColor(context, android.R.color.white) ) } @@ -241,21 +224,13 @@ class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAu ableStartAutopilot() } - private fun goneAllDoorState(){ + private fun goneAllDoorState() { actv_front_left_door.visibility = GONE actv_front_right_door.visibility = GONE actv_rear_left_door.visibility = GONE actv_rear_right_door.visibility = GONE } - override fun onDetachedFromWindow() { - CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "onDetachedFromWindow") - unableStartAutopilot() - taxiPXiaozhiBelt?.stop() - goneAllDoorState() - super.onDetachedFromWindow() - } - override fun unableStartAutopilotByDoorState() { unableStartAutopilot() } diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotViewModel.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotViewModel.kt new file mode 100644 index 0000000000..b3cd42dc0f --- /dev/null +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotViewModel.kt @@ -0,0 +1,136 @@ +package com.mogo.och.taxi.passenger.ui.checkstartautopilot.startautopilot + +import androidx.lifecycle.ViewModel +import com.mogo.commons.voice.AIAssist +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.eagle.core.utilcode.util.ParseVersionUtils +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.eagle.core.utilcode.util.UiThreadHandler +import com.mogo.och.common.module.manager.devicemanage.TaxiDoorStateManager +import com.mogo.och.common.module.manager.devicemanage.callback.DoorStateCallback +import com.mogo.och.common.module.manager.devicemanage.data.DoorPosition +import com.mogo.och.common.module.manager.devicemanage.data.DoorState +import com.mogo.och.common.module.utils.RxUtils +import com.mogo.och.common.module.voice.VoiceNotice +import com.mogo.och.taxi.passenger.R +import com.mogo.och.taxi.passenger.model.AutopilotManager +import com.mogo.och.taxi.passenger.model.TaxiPassengerModel +import io.reactivex.disposables.Disposable + +class StartAutopilotViewModel : ViewModel(), + DoorStateCallback { + + private val TAG = StartAutopilotViewModel::class.java.simpleName + + private var viewCallback: StartAutopilotCallback? = null + + private val TIMER_START_AUTOPILOT_INTERVAL = 20 * 1000L + + var startCountDown: Disposable? = null + + var doorOpenState = true + + fun setStartAutopilotCallback(viewCallback: StartAutopilotCallback) { + TaxiDoorStateManager.addListener(TAG, this) + this.viewCallback = viewCallback + setOrderInfo() + } + + fun setOrderInfo() { + val currentOCHOrder = TaxiPassengerModel.currentOCHOrder + currentOCHOrder?.let { + val phone = it.passengerPhone + val show = if (phone.length > 8) { + //截取电话号码前三位 + val phoneNumPre = phone.substring(0, 3) + //截取电话号码后四位 + val phoneNumFix = phone.substring(7) + + "用户:$phoneNumPre****$phoneNumFix 目的地:${it.endSiteAddr}" + } else { + "用户:${phone} 目的地:${it.endSiteAddr}" + } + viewCallback?.setOrderInfo(show) + } + } + + override fun onCleared() { + super.onCleared() + this.viewCallback = null + RxUtils.disposeSubscribe(startCountDown) + TaxiDoorStateManager.removeListener(TAG) + } + + /** + * 开启自动驾驶 + */ + fun startAutopilot() { + val num = ParseVersionUtils.parseVersion( + true, + CallerAutoPilotStatusListenerManager.getDockerVersion() + ) + if (num >= 30600) { + if (doorOpenState) { + VoiceNotice.showNotice("关紧车门后再出发吧!") + ToastUtils.showShort("关紧车门后再出发吧!") + viewCallback?.unableStartAutopilotByDoorState() + return + } + } + if (RxUtils.isNotDisposed(startCountDown)) { + ToastUtils.showLong("启动中……") + return + } + if (AutopilotManager.startAutopilot().isEmpty()) { + RxUtils.disposeSubscribe(startCountDown) + startCountDown = RxUtils.createSubscribe(TIMER_START_AUTOPILOT_INTERVAL) { + val autoPilotState = + CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state + if (autoPilotState != IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { + viewCallback?.startAutopilotingTimeout() + //未启动成功20s后做处理 + ToastUtils.showLong(R.string.taxi_p_start_autopilot_fail_10s_tip) + VoiceNotice.showNotice("啊哦!系统繁忙中,稍后再试试吧~", AIAssist.LEVEL2) + } + } + } else { + VoiceNotice.showNotice("啊哦!系统繁忙中,稍后再试试吧~", AIAssist.LEVEL2) + viewCallback?.startAutopilotingFail() + } + + } + + override fun hasOpenDoor(have: Boolean) { + CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "车门是否开着:${have}") + doorOpenState = have + UiThreadHandler.post { + viewCallback?.canStartAutopilot(!doorOpenState) + } + } + + override fun doorStateChangeCallback(position: DoorPosition, state: DoorState) { + CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "门太变化:${position}--${state}") + runMain(position, state) + } + + private fun runMain(posttion: DoorPosition, state: DoorState) { + UiThreadHandler.post({ + viewCallback?.setDoorStatus(posttion, state) + }, UiThreadHandler.MODE.QUEUE) + } + + + interface StartAutopilotCallback { + fun setOrderInfo(show: String) + fun setDoorStatus(doorPosition: DoorPosition, state: DoorState) + + fun canStartAutopilot(can: Boolean) + fun startAutopilotingTimeout() + fun startAutopilotingFail() + + fun unableStartAutopilotByDoorState() + } +} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/debug/DebugView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/debug/DebugView.kt index 4dbc72c503..e770e88e5f 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/debug/DebugView.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/debug/DebugView.kt @@ -64,13 +64,14 @@ class DebugView @JvmOverloads constructor( fragment?.showOrHideArrivedEndLayout(true) } tv_show_phone_check.onClick { - fragment?.showOrHidePressengerCheckPager(isShow = true,"13号路口终(鹰眼专用)","13号路口终(鹰眼专用)","2","2","18811539480") + fragment?.showOrHideCheckAndStartAutopilotView(0) } tv_show_start_autopilot.onClick { - fragment?.showOrHideStartAutopilotView(true) + fragment?.showOrHideCheckAndStartAutopilotView(1) } tv_show_order_info.onClick { fragment?.showOrHideServingOrderFragment(true) + fragment?.preLoadArrivedImages() } } diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/ItineraryView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/ItineraryView.kt index 3eb347961b..3773c8cb43 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/ItineraryView.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/ItineraryView.kt @@ -17,7 +17,6 @@ import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_arrived_time import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_distance import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_distance_unit import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_endstation -import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_speed_value import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_surplus_time import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_surplus_time_unit import kotlinx.android.synthetic.main.taxi_p_itinerary.view.progress_distance @@ -56,11 +55,11 @@ class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback gradientDrawable.cornerRadii = floatArrayOf(0f, 0f, 0f, 0f, corner, corner, corner, corner) } - val firstColor = ContextCompat.getColor(context, R.color.taxi_p_OF5FFF) + val firstColor = ContextCompat.getColor(context, R.color.taxi_p_0F5FFF) val setondColor = ContextCompat.getColor(context, R.color.taxi_p_44C8FF) val thirdColor = ContextCompat.getColor(context, R.color.taxi_p_8AE4ED) val fourceColor = ContextCompat.getColor(context, R.color.taxi_p_C8F3F4) - val bottomColor = ContextCompat.getColor(context, R.color.taxi_p_66476FBE) + val bottomColor = ContextCompat.getColor(context, android.R.color.transparent) gradientDrawable.colors = intArrayOf(firstColor, setondColor, thirdColor, fourceColor) gradientDrawable.orientation = GradientDrawable.Orientation.LEFT_RIGHT @@ -86,12 +85,9 @@ class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback viewModel?.setDistanceCallback(this) } - override fun setSpeed(speedValue:String){ - actv_speed_value.text = speedValue - } override fun setEndStation(endStation:String){ - if(endStation.length>9){ - actv_endstation.text = "${endStation.subSequence(0,9)}…" + if(endStation.length>15){ + actv_endstation.text = "${endStation.subSequence(0,15)}…" }else { actv_endstation.text = endStation } @@ -99,6 +95,7 @@ class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback var prePercentage = 0f val needChangeStyleNumber = 0.99 + val needChangeStyleNumberMin = 0.03f override fun setDistanceInfo(surplusdistance:String,distanceUnit:String, surplusTime:String,surplusTimeUnit:String, @@ -117,18 +114,22 @@ class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback } val currentPercentage = alreadyGone.toFloat() / stationDistance - if((prePercentage>needChangeStyleNumber) xor (currentPercentage>needChangeStyleNumber)){ - if(currentPercentage>needChangeStyleNumber){ - setDrawable(false) - }else{ - setDrawable(true) - } - progress_distance.progress = alreadyGone - }else{ - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - progress_distance.setProgress(alreadyGone,true) - }else{ + if(currentPercentage>0&¤tPercentage needChangeStyleNumber) xor (currentPercentage > needChangeStyleNumber)) { + if (currentPercentage > needChangeStyleNumber) { + setDrawable(false) + } else { + setDrawable(true) + } progress_distance.progress = alreadyGone + } else { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { + progress_distance.setProgress(alreadyGone, true) + } else { + progress_distance.progress = alreadyGone + } } } prePercentage = currentPercentage diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/OrderInfoViewModel.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/OrderInfoViewModel.kt index 11f3e8a07d..fa6f095fb1 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/OrderInfoViewModel.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/OrderInfoViewModel.kt @@ -2,9 +2,6 @@ package com.mogo.och.taxi.passenger.ui.orderinfo import androidx.lifecycle.ViewModel import com.mogo.commons.AbsMogoApplication -import com.mogo.eagle.core.data.map.MogoLocation -import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener -import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.NumberFormatUtil @@ -16,8 +13,7 @@ import com.mogo.och.taxi.passenger.model.TaxiPassengerModel import kotlin.math.abs import kotlin.math.ceil -class OrderInfoViewModel: ViewModel(), IMoGoChassisLocationGCJ02Listener, - IOCHTaxiPassengerOrderStatusCallback { +class OrderInfoViewModel: ViewModel(), IOCHTaxiPassengerOrderStatusCallback { private val TAG = OrderInfoViewModel::class.java.simpleName @@ -30,7 +26,6 @@ class OrderInfoViewModel: ViewModel(), IMoGoChassisLocationGCJ02Listener, disUnit = AbsMogoApplication.getApp().getString(R.string.taxi_p_distance_unit_km) surplusTimeUnit = AbsMogoApplication.getApp().getString(R.string.taxi_p_surplustime) // 设置起点和终点marker和实时车辆位置 - CallerChassisLocationGCJ02ListenerManager.addListener(TAG, 4, this) TaxiPassengerModel.setOrderStatusCallback(TAG,this) } @@ -44,22 +39,12 @@ class OrderInfoViewModel: ViewModel(), IMoGoChassisLocationGCJ02Listener, TaxiPassengerModel.setOrderStatusCallback(TAG,null) } - override fun onChassisLocationGCJ02(mogoLocation: MogoLocation?) { - mogoLocation?.let { - UiThreadHandler.post { - val speedKM = (abs(it.gnssSpeed) * 3.6f).toInt() - viewCallback?.setSpeed(speedKM.toString()) - } - } - } - interface ItineraryViewCallback{ fun setDistanceInfo(surplusdistance:String,distanceUnit:String, surplusTime:String,surplusTimeUnit:String, arrivedTime:String,alreadyGone:Int,distance:Int ) fun setEndStation(endStation:String) - fun setSpeed(speedValue:String) } override fun onCurrentOrderStatusChanged(order: TaxiPassengerOrderQueryRespBean.Result?) { diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/speed/SpeedView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/speed/SpeedView.kt new file mode 100644 index 0000000000..d7203b5faa --- /dev/null +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/speed/SpeedView.kt @@ -0,0 +1,59 @@ +package com.mogo.och.taxi.passenger.ui.speed + +import android.content.Context +import android.os.Build +import android.util.AttributeSet +import android.view.LayoutInflater +import androidx.constraintlayout.widget.ConstraintLayout +import com.mogo.eagle.core.data.map.MogoLocation +import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager +import com.mogo.eagle.core.utilcode.util.UiThreadHandler +import com.mogo.och.taxi.passenger.R +import kotlinx.android.synthetic.main.taxt_p_speed.view.actv_speed_value +import kotlin.math.abs + +class SpeedView : ConstraintLayout, IMoGoChassisLocationGCJ02Listener { + + private val TAG = "ItineraryView" + + constructor(context: Context) : super(context) + + constructor(context: Context, attributeSet: AttributeSet) : super(context, attributeSet) + + constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int) : super(context, attributeSet, defStyleAttr) + + constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int, defStyleRes: Int) : super(context, attributeSet, defStyleAttr, defStyleRes) + + private fun initView() { + LayoutInflater.from(context).inflate(R.layout.taxt_p_speed, this, true) + } + + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if(isVisible){ + CallerChassisLocationGCJ02ListenerManager.addListener(TAG, 4, this) + }else{ + CallerChassisLocationGCJ02ListenerManager.removeListener(TAG) + } + } + + init { + try { + initView() + } catch (e: Exception) { + e.printStackTrace() + } + } + + override fun onChassisLocationGCJ02(mogoLocation: MogoLocation?) { + mogoLocation?.let { + UiThreadHandler.post { + val speedKM = (abs(it.gnssSpeed) * 3.6f).toInt() + actv_speed_value.text = speedKM.toString() + } + } + } + + +} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotView.kt deleted file mode 100644 index 89b9c51489..0000000000 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotView.kt +++ /dev/null @@ -1,283 +0,0 @@ -package com.mogo.och.taxi.passenger.ui.startautopilot - -import android.annotation.SuppressLint -import android.content.Context -import android.util.AttributeSet -import android.view.LayoutInflater -import android.view.View -import androidx.core.content.ContextCompat -import androidx.core.content.res.ResourcesCompat -import androidx.lifecycle.ViewModelProvider -import com.elegant.utils.UiThreadHandler -import com.mogo.eagle.core.data.config.HdMapBuildConfig -import com.mogo.eagle.core.utilcode.kotlin.onClick -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.util.OverlayViewUtils -import com.mogo.eagle.core.utilcode.util.ToastUtils -import com.mogo.och.common.module.manager.devicemanage.data.DoorPosition -import com.mogo.och.common.module.manager.devicemanage.data.DoorState -import com.mogo.och.common.module.utils.FrameAnimatorContainer -import com.mogo.och.taxi.passenger.R -import com.mogo.och.taxi.passenger.widget.WindowRelativeLayout -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_front_left_door -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_front_right_door -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_orderinfo -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_rear_left_door -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.actv_rear_right_door -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.iv_xiaozhi_belt -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.starting_autopilot_view_close -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.taxi_p_autopilot_btn_bg -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.taxi_p_autopilot_starting -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.taxi_p_start_autopilot -import kotlinx.android.synthetic.main.taxi_p_start_autopilot_view.view.cl_car_type - -/** - * @author: wangmingjun - * @date: 2022/6/14 - */ -class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAutopilotCallback { - - constructor(context: Context) : super(context) - - constructor(context: Context, attributeSet: AttributeSet) : super(context, attributeSet) - - constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int) : super( - context, - attributeSet, - defStyleAttr - ) - - constructor( - context: Context, - attributeSet: AttributeSet, - defStyleAttr: Int, - defStyleRes: Int - ) : super(context, attributeSet, defStyleAttr, defStyleRes) - - companion object { - private val TAG = StartAutopilotView::class.java.simpleName - private const val TIMER_START_AUTOPILOT_INTERVAL = 20 * 1000L - } - - var isStarting = false - - private var taxiPStartAutopilot: FrameAnimatorContainer? = null - private var taxiPStartAutopilotCar: FrameAnimatorContainer? = null - private var taxiPXiaozhiBelt: FrameAnimatorContainer? = null - - - init { - initView() - } - - private fun initView() { - LayoutInflater.from(context).inflate(R.layout.taxi_p_start_autopilot_view, this, true) - taxiPStartAutopilotCar = FrameAnimatorContainer( - R.array.taxi_p_start_autopilot_car, - 20, - taxi_p_autopilot_starting - ) - taxiPStartAutopilotCar?.setOnAnimStopListener(object : - FrameAnimatorContainer.OnAnimationStoppedListener { - override fun AnimationStopped() { - CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "动画暂停") - } - }) - taxiPStartAutopilot = - FrameAnimatorContainer(R.array.taxi_p_start_autopilot, 15, taxi_p_autopilot_btn_bg,false) - taxiPStartAutopilot?.setOnAnimStopListener(object : - FrameAnimatorContainer.OnAnimationStoppedListener { - override fun AnimationStopped() { - CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "动画暂停") - } - }) - taxiPXiaozhiBelt = FrameAnimatorContainer(R.array.xiaozhi_belt, 24, iv_xiaozhi_belt) - taxiPXiaozhiBelt?.setOnAnimStopListener(object : - FrameAnimatorContainer.OnAnimationStoppedListener { - override fun AnimationStopped() { - CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "动画暂停") - } - }) - } - - private fun startAutopilotBgAnimatorDrawable(isStart: Boolean) { - if (isStart) { - taxiPStartAutopilot?.start() - } else { - taxiPStartAutopilot?.stop() - } - } - - @SuppressLint("UseCompatLoadingForDrawables") - override fun handleStartAutopilotBtnStatus(isClickable: Boolean) { - taxi_p_autopilot_starting?.setImageResource(R.drawable.light_00003) - updateStartAutopilotBtnStatus(isClickable) - if (isClickable) { //高亮可点击状态下动画一直进行 - startAutopilotBgAnimatorDrawable(true) - } else { // 置灰色可点击状态下动画停止 - startAutopilotBgAnimatorDrawable(false) - } - } - - override fun setOrderInfo(show: String) { - actv_orderinfo.text = show - } - - override fun setDoorStatus(doorPosition: DoorPosition, state: DoorState) { - when (doorPosition) { - DoorPosition.FRONT_LEFT -> { - if (state == DoorState.OPEN) { - actv_front_left_door.visibility = VISIBLE - } else { - actv_front_left_door.visibility = GONE - } - } - - DoorPosition.FRONT_RIGHT -> { - if (state == DoorState.OPEN) { - actv_front_right_door.visibility = VISIBLE - } else { - actv_front_right_door.visibility = GONE - } - } - - DoorPosition.REAR_LEFT -> { - if (state == DoorState.OPEN) { - actv_rear_left_door.visibility = VISIBLE - } else { - actv_rear_left_door.visibility = GONE - } - } - - DoorPosition.REAR_RIGHT -> { - if (state == DoorState.OPEN) { - actv_rear_right_door.visibility = VISIBLE - } else { - actv_rear_right_door.visibility = GONE - } - } - - else -> { - - } - } - } - - fun closeAllAnimsAndView() { - isStarting = false - clearStartingAnimFrame() - clearBgAnimDrawable() - OverlayViewUtils.dismissOverlayView(this) - } - - private fun updateStartAutopilotBtnStatus(isBoarded: Boolean) { - taxi_p_start_autopilot?.let { - if (isBoarded) { - it.setTextColor( - ContextCompat.getColor(context, R.color.taxi_p_start_autopilot_txt_color) - ) - it.background = null - } else { - it.background = - ContextCompat.getDrawable(context, R.drawable.taxi_p_start_autopilot_txt_btn_bg) - taxi_p_autopilot_btn_bg!!.background = null - it.setTextColor( - ContextCompat.getColor(context, R.color.taxi_p_start_autopilot_txt_un_color) - ) - } - it.tag = isBoarded - it.text = resources.getString(R.string.taxi_p_start_autopilot_txt) - } - } - - - private fun startingCarBgAnimatorDrawable(isStart: Boolean) { - if (isStart) { - taxi_p_autopilot_starting!!.setImageResource(0) - taxiPStartAutopilotCar?.start() - } else { - taxiPStartAutopilotCar?.stop() - taxi_p_autopilot_starting!!.setImageResource(R.drawable.light_00003) - } - } - - private fun startOrStopLoadingAnim(start: Boolean) { - startingCarBgAnimatorDrawable(start) - if (start) { - isStarting = true - taxi_p_start_autopilot?.text = resources.getString(R.string.taxi_p_start_autopilot_loading) - taxi_p_start_autopilot?.setTextColor( - ContextCompat.getColor(context, R.color.taxi_p_start_autopilot_txt_color) - ) - startingAutopilotCountDown() - } else { - clearBgAnimDrawable() - isStarting = false - handleStartAutopilotBtnStatus(true) - } - } - - private fun clearBgAnimDrawable() { - taxiPStartAutopilot?.stop() - } - - fun clearStartingAnimFrame() { - taxiPStartAutopilotCar?.stop() - } - - private fun startingAutopilotCountDown() { - UiThreadHandler.postDelayed({ - //未启动成功20s后做处理 - if (isStarting) { //判断动画是否在进行 - ToastUtils.showLong(R.string.taxi_p_start_autopilot_fail_10s_tip) - updateStatusCountDownOver() - } - }, TIMER_START_AUTOPILOT_INTERVAL) - } - - private fun updateStatusCountDownOver() { - isStarting = false - startingCarBgAnimatorDrawable(false) - taxi_p_start_autopilot?.text = resources.getString(R.string.taxi_p_start_autopilot_txt) - } - - override fun onVisibilityChanged(changedView: View, visibility: Int) { - super.onVisibilityChanged(changedView, visibility) - if (HdMapBuildConfig.currentCarVrIconRes == R.raw.hq_h9) { - cl_car_type.setBackgroundResource(R.drawable.taxi_p_start_panel__hq_bg) - } else { - cl_car_type.setBackgroundResource(R.drawable.taxi_p_start_panel__df_bg) - } - } - - override fun onAttachedToWindow() { - super.onAttachedToWindow() - val viewModel = ViewModelProvider(this).get(StartAutopilotViewModel::class.java) - viewModel.setStartAutopilotCallback(this) - taxi_p_start_autopilot.onClick { - //开启动画和自动驾驶 - if (!(taxi_p_start_autopilot!!.tag as Boolean)) { - ToastUtils.showLong(R.string.taxi_p_start_autopilot_un_click_tip) - return@onClick - } - if (!isStarting) { - startOrStopLoadingAnim(true) - viewModel.startAutopilot() - } - } - starting_autopilot_view_close.onClick { - closeAllAnimsAndView() - } - taxiPXiaozhiBelt?.start() - } - - - override fun onDetachedFromWindow() { - isStarting = false - clearStartingAnimFrame() - clearBgAnimDrawable() - taxiPXiaozhiBelt?.stop() - super.onDetachedFromWindow() - } -} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotViewModel.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotViewModel.kt deleted file mode 100644 index 740d30e33c..0000000000 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotViewModel.kt +++ /dev/null @@ -1,90 +0,0 @@ -package com.mogo.och.taxi.passenger.ui.startautopilot - -import androidx.lifecycle.ViewModel -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.util.UiThreadHandler -import com.mogo.och.common.module.manager.devicemanage.data.DoorPosition -import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback -import com.mogo.och.taxi.passenger.model.AutopilotManager -import com.mogo.och.taxi.passenger.model.TaxiPassengerModel -import com.mogo.och.common.module.manager.devicemanage.TaxiDoorStateManager -import com.mogo.och.common.module.manager.devicemanage.callback.DoorStateCallback -import com.mogo.och.common.module.manager.devicemanage.data.DoorState - -class StartAutopilotViewModel : ViewModel(), IOCHTaxiPassengerOrderStatusCallback, - DoorStateCallback { - - private val TAG = StartAutopilotViewModel::class.java.simpleName - - private var viewCallback: StartAutopilotCallback? = null - - init { - TaxiPassengerModel.setOrderStatusCallback(TAG, this) - TaxiDoorStateManager.addListener(TAG,this) - } - - fun setStartAutopilotCallback(viewCallback: StartAutopilotCallback) { - this.viewCallback = viewCallback - TaxiPassengerModel.startOrStopReadyToAutopilotLoop(true) - setOrderInfo() - } - - private fun setOrderInfo() { - val currentOCHOrder = TaxiPassengerModel.currentOCHOrder - currentOCHOrder?.let { - val phone = it.passengerPhone - val show = if (phone.length > 8) { - //截取电话号码前三位 - val phoneNumPre = phone.substring(0, 3) - //截取电话号码后四位 - val phoneNumFix = phone.substring(7) - - "用户:$phoneNumPre****$phoneNumFix 目的地:${it.endSiteAddr}" - } else { - "用户:${phone} 目的地:${it.endSiteAddr}" - } - viewCallback?.setOrderInfo(show) - } - } - - override fun onCleared() { - super.onCleared() - this.viewCallback = null - TaxiPassengerModel.setOrderStatusCallback(TAG, null) - TaxiDoorStateManager.removeListener(TAG) - } - - override fun onDriverHasCheckedPilotCondition(isBoarded: Boolean) { - viewCallback?.handleStartAutopilotBtnStatus(isBoarded) - } - - /** - * 开启自动驾驶 - */ - fun startAutopilot() { - AutopilotManager.startAutopilot() - } - - override fun hasOpenDoor(have: Boolean) { - CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "车门是否开着:${have}") - } - - override fun doorStateChangeCallback(position: DoorPosition, state: DoorState) { - CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "门太变化:${position}--${state}") - runMain(position,state) - } - - private fun runMain(posttion:DoorPosition,state: DoorState){ - UiThreadHandler.post({ - viewCallback?.setDoorStatus(posttion,state) - },UiThreadHandler.MODE.QUEUE) - } - - - interface StartAutopilotCallback { - fun handleStartAutopilotBtnStatus(isBoarded: Boolean) - fun setOrderInfo(show: String) - fun setDoorStatus(doorPosition: DoorPosition, state: DoorState) - } -} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/InfoVideoView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/InfoVideoView.kt index e521cfbc50..e3d71d4af8 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/InfoVideoView.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/InfoVideoView.kt @@ -50,6 +50,13 @@ internal class InfoVideoView @JvmOverloads constructor( private val arrayListOf by lazy { arrayListOf().apply { + add( + TaxiPassengerVideoPlay( + "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", + "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", + "蘑菇车联牵手成都大运会" + ) + ) add(TaxiPassengerVideoPlay( "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708596763/全车型混剪增加红旗车队.m4v", "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969511280/车队.png", @@ -60,13 +67,6 @@ internal class InfoVideoView @JvmOverloads constructor( "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969553174/红旗重新排版.png", "蘑菇车联之红旗车队" )) - add( - TaxiPassengerVideoPlay( - "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", - "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", - "蘑菇车联牵手成都大运会" - ) - ) add( TaxiPassengerVideoPlay( "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708409810/20210610重新排版3屏.m4v", @@ -144,7 +144,7 @@ internal class InfoVideoView @JvmOverloads constructor( indicatorView.setOrientation(IndicatorOrientation.INDICATOR_HORIZONTAL) indicatorView.setIndicatorStyle(IndicatorStyle.ROUND_RECT) indicatorView.setSliderColor( - Color.parseColor("#80000000"), Color.parseColor("#3FACFD"), + Color.parseColor("#80FFFFFF"), Color.parseColor("#3FACFD"), Color.parseColor("#3FACFD") ) indicatorView.setSliderWidth(9f, 54f) diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/RecyclerVideoAdapter.java b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/RecyclerVideoAdapter.java index fb8e3c05b1..db8a7516e8 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/RecyclerVideoAdapter.java +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/RecyclerVideoAdapter.java @@ -1,7 +1,6 @@ package com.mogo.och.taxi.passenger.ui.video; import android.content.Context; -import android.graphics.Color; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -52,7 +51,7 @@ public class RecyclerVideoAdapter extends RecyclerView.Adapter() - params[TaxiPassengerConst.EVENT_PARAM_SN] = MoGoAiCloudClientConfig.getInstance().sn + params[TaxiPassengerConst.EVENT_PARAM_SN] = SharedPrefsMgr.getInstance().sn params[TaxiPassengerConst.EVENT_PARAM_PLATE_NUM] = if (TextUtils.isEmpty(plateNum)) "" else plateNum params[TaxiPassengerConst.EVENT_PARAM_ENV_ONLINE] = DebugConfig.getNetMode() == DebugConfig.NET_MODE_RELEASE params[TaxiPassengerConst.EVENT_PARAM_TIME] = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd_HH_mm_ss) diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/widget/ConsultVideoPlayer.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/widget/ConsultVideoPlayer.kt index d3649898db..6e7c3cd1fb 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/widget/ConsultVideoPlayer.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/widget/ConsultVideoPlayer.kt @@ -80,7 +80,7 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { aivStartPlay.scaleX = 0.8f aivStartPlay.scaleY = 0.8f - mProgressBar.thumb = ZoomDrawable.zoomDrawableImage(context,R.drawable.bg_taxi_p_video_index,0.66f,0.66f) + mProgressBar.thumb = ZoomDrawable.zoomDrawableImage(context,R.drawable.taxi_p_video_index,0.66f,0.66f) } private fun addDrageAnchor(){ @@ -108,7 +108,7 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { titleTextView.layoutParams = layoutParams1 aivStartPlay.scaleX = 1f aivStartPlay.scaleY = 1f - val drawable = ActivityCompat.getDrawable(context, R.drawable.bg_taxi_p_video_index) + val drawable = ActivityCompat.getDrawable(context, R.drawable.taxi_p_video_index) mProgressBar.thumb = drawable if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { mProgressBar.maxHeight = 6 diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/widget/NumberCheckView.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/widget/NumberCheckView.kt new file mode 100644 index 0000000000..793b8c2b0e --- /dev/null +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/widget/NumberCheckView.kt @@ -0,0 +1,208 @@ +package com.mogo.och.taxi.passenger.widget + +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.View +import android.widget.FrameLayout +import android.widget.TextView +import androidx.core.content.ContextCompat +import com.mogo.commons.voice.AIAssist +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.common.module.voice.VoiceNotice +import com.mogo.och.taxi.passenger.R +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_back +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_eight +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_first +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_five +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_four +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_fourth +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_nine +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_one +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_second +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_seven +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_six +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_submit +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_third +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_three +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_two +import kotlinx.android.synthetic.main.taxt_p_check_number.view.tv_taxi_passenger_number_zero + +class NumberCheckView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : FrameLayout(context, attrs, defStyleAttr), View.OnClickListener { + + private var index = 0 + private var phone = "" + private val numSelect = arrayOfNulls(4) + private val numSelectTextView = arrayOfNulls(4) + + var submitListener: SubmitListener? = null + + companion object { + const val TAG = "NumberCheckView" + } + + init { + try { + initView(context) + } catch (e: Exception) { + e.printStackTrace() + } + } + + fun resetNum(phone:String){ + this.phone = phone + clearNumber() + } + + private fun initView(context: Context) { + d(SceneConstant.M_TAXI_P + TAG, "initView") + LayoutInflater.from(context).inflate(R.layout.taxt_p_check_number, this, true) + keyBoardLogic() + numSelectTextView[0] = tv_taxi_passenger_number_first + numSelectTextView[1] = tv_taxi_passenger_number_second + numSelectTextView[2] = tv_taxi_passenger_number_third + numSelectTextView[3] = tv_taxi_passenger_number_fourth + } + + private fun keyBoardLogic() { + tv_taxi_passenger_number_one.setOnClickListener(this) + tv_taxi_passenger_number_two.setOnClickListener(this) + tv_taxi_passenger_number_three.setOnClickListener(this) + tv_taxi_passenger_number_four.setOnClickListener(this) + tv_taxi_passenger_number_five.setOnClickListener(this) + tv_taxi_passenger_number_six.setOnClickListener(this) + tv_taxi_passenger_number_seven.setOnClickListener(this) + tv_taxi_passenger_number_eight.setOnClickListener(this) + tv_taxi_passenger_number_nine.setOnClickListener(this) + tv_taxi_passenger_number_zero.setOnClickListener(this) + tv_taxi_passenger_number_back.setOnClickListener(this) + tv_taxi_passenger_number_submit.setOnClickListener(this) + + tv_taxi_passenger_number_first.setOnClickListener(this) + tv_taxi_passenger_number_second.setOnClickListener(this) + tv_taxi_passenger_number_third.setOnClickListener(this) + tv_taxi_passenger_number_fourth.setOnClickListener(this) + + } + + override fun onClick(v: View?) { + when (v?.id) { + R.id.tv_taxi_passenger_number_one -> {showNumver(1)} + R.id.tv_taxi_passenger_number_two -> {showNumver(2)} + R.id.tv_taxi_passenger_number_three-> {showNumver(3)} + R.id.tv_taxi_passenger_number_four-> {showNumver(4)} + R.id.tv_taxi_passenger_number_five -> {showNumver(5)} + R.id.tv_taxi_passenger_number_six -> {showNumver(6)} + R.id.tv_taxi_passenger_number_seven -> {showNumver(7)} + R.id.tv_taxi_passenger_number_eight -> {showNumver(8)} + R.id.tv_taxi_passenger_number_nine -> {showNumver(9)} + R.id.tv_taxi_passenger_number_zero -> {showNumver(0)} + R.id.tv_taxi_passenger_number_back -> {deleteNumver()} + R.id.tv_taxi_passenger_number_first -> {selectIndex(0)} + R.id.tv_taxi_passenger_number_second -> {selectIndex(1)} + R.id.tv_taxi_passenger_number_third -> {selectIndex(2)} + R.id.tv_taxi_passenger_number_fourth -> {selectIndex(3)} + R.id.tv_taxi_passenger_number_submit -> {clearNumber()} + else -> {} + } + } + + private fun checkAndCommit() { + val numberStr = "${numSelect[0]}${numSelect[1]}${numSelect[2]}${numSelect[3]}" + if(!phone.endsWith(numberStr)){ + ToastUtils.showLong("请输入正确的手机尾号") + VoiceNotice.showNotice("验证失败!再检查一下吧~", AIAssist.LEVEL2) + return + } + submitListener?.trySubmit(numberStr) + } + + private fun selectIndex(i: Int) { + index = i + changeStyle() + } + + private fun showNumver(number: Int) { + if (index in 0..3) { + numSelect[index] = number + numSelectTextView[index]!!.text = number.toString() + if(index!=3){ + index++ + } + changeStyle() + numSelect.forEach { + if(it==null){ + return + } + } + + checkAndCommit() + } + } + + private fun clearNumber(){ + for(i in numSelect.indices){ + numSelect[i] = null + } + numSelectTextView.forEach { + it?.text = "" + } + index = 0 + changeStyle() + } + + private fun deleteNumver() { + if (index in 0..3) { + if(numSelect[index]==null){ + if(index!=0){ + index-- + } + changeStyle() + //return + } + numSelect[index] = null + numSelectTextView[index]!!.text = "" + } + } + + private fun changeStyle() { + numSelectTextView.forEachIndexed { indexIn, textView -> + if(indexIn==index){ + numSelectTextView[index]!!.setBackgroundResource(R.drawable.taxi_p_checked_input_background) + + numSelectTextView[index]!!.setTextColor( + ContextCompat.getColor( + context, + android.R.color.white + ) + ) + numSelectTextView[index]!!.setShadowLayer( + 0f, 0f, 0f, + ContextCompat.getColor( + context, + android.R.color.white + ) + ) + }else{ + numSelectTextView[indexIn]!!.setBackgroundResource(R.drawable.taxi_p_check_input_background) + numSelectTextView[indexIn]!!.setTextColor(ContextCompat.getColor(context, R.color.taxi_p_FF282F62)) + numSelectTextView[indexIn]!!.setShadowLayer( + 20f, + 0f, + 2f, + ContextCompat.getColor(context, android.R.color.white) + ) + } + } + } + + interface SubmitListener { + fun trySubmit(number: String) + } +} \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/anim/alpha_show_hide.xml b/OCH/taxi/passenger/src/main/res/anim/alpha_show_hide.xml deleted file mode 100644 index ceac4e6062..0000000000 --- a/OCH/taxi/passenger/src/main/res/anim/alpha_show_hide.xml +++ /dev/null @@ -1,3 +0,0 @@ - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/anim/left_to_right.xml b/OCH/taxi/passenger/src/main/res/anim/left_to_right.xml deleted file mode 100644 index dfe499b9b6..0000000000 --- a/OCH/taxi/passenger/src/main/res/anim/left_to_right.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/anim/right_to_left.xml b/OCH/taxi/passenger/src/main/res/anim/right_to_left.xml deleted file mode 100644 index 39b17e037e..0000000000 --- a/OCH/taxi/passenger/src/main/res/anim/right_to_left.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/animator/alpha_hide_hide_f.xml b/OCH/taxi/passenger/src/main/res/animator/alpha_hide_hide_f.xml deleted file mode 100644 index 599149e9a7..0000000000 --- a/OCH/taxi/passenger/src/main/res/animator/alpha_hide_hide_f.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/animator/alpha_hide_show_f.xml b/OCH/taxi/passenger/src/main/res/animator/alpha_hide_show_f.xml deleted file mode 100644 index 8c6acc7439..0000000000 --- a/OCH/taxi/passenger/src/main/res/animator/alpha_hide_show_f.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_001.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_001.webp new file mode 100644 index 0000000000..ac6986d8a2 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_001.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_002.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_002.webp new file mode 100644 index 0000000000..e321c08024 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_002.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_003.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_003.webp new file mode 100644 index 0000000000..d78521d4f0 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_003.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_004.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_004.webp new file mode 100644 index 0000000000..b1ac22f7b4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_004.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_005.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_005.webp new file mode 100644 index 0000000000..ee47c8bcc4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_005.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_006.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_006.webp new file mode 100644 index 0000000000..b856948a3a Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_006.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_007.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_007.webp new file mode 100644 index 0000000000..4d1c41cefa Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_007.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_008.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_008.webp new file mode 100644 index 0000000000..e175e9762a Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_008.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_009.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_009.webp new file mode 100644 index 0000000000..47d9df2ee5 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_009.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_010.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_010.webp new file mode 100644 index 0000000000..ed5936b03d Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_010.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_011.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_011.webp new file mode 100644 index 0000000000..6ff1c70dde Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_011.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_012.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_012.webp new file mode 100644 index 0000000000..48e3f9d7e4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_012.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_013.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_013.webp new file mode 100644 index 0000000000..95f9ca9396 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_013.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_014.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_014.webp new file mode 100644 index 0000000000..2f4322ae09 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_014.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_015.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_015.webp new file mode 100644 index 0000000000..9b4f9296e4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_015.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_016.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_016.webp new file mode 100644 index 0000000000..f33e356c2d Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_016.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_017.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_017.webp new file mode 100644 index 0000000000..53892cbcfa Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_017.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_018.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_018.webp new file mode 100644 index 0000000000..c153bc9fe9 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_018.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_019.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_019.webp new file mode 100644 index 0000000000..2ba9b98b88 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_019.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_020.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_020.webp new file mode 100644 index 0000000000..3a749edd11 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_020.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_021.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_021.webp new file mode 100644 index 0000000000..fccb3828e8 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_021.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_022.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_022.webp new file mode 100644 index 0000000000..6cceb3cd60 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_022.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_023.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_023.webp new file mode 100644 index 0000000000..d9c798b3fd Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_023.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_024.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_024.webp new file mode 100644 index 0000000000..c78acdb8a0 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_024.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_025.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_025.webp new file mode 100644 index 0000000000..65b9a9e194 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_025.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_026.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_026.webp new file mode 100644 index 0000000000..c647c74df4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_026.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_027.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_027.webp new file mode 100644 index 0000000000..1266d6bbed Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_027.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_028.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_028.webp new file mode 100644 index 0000000000..330546e40b Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_028.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_029.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_029.webp new file mode 100644 index 0000000000..cc0a7a97d0 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_029.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_030.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_030.webp new file mode 100644 index 0000000000..6ddbafbe37 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_030.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_031.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_031.webp new file mode 100644 index 0000000000..ecedc62020 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_031.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_032.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_032.webp new file mode 100644 index 0000000000..b7e7db5e71 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_032.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_033.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_033.webp new file mode 100644 index 0000000000..342c0020bb Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_033.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_034.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_034.webp new file mode 100644 index 0000000000..0eeb6dc6b7 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_034.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_035.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_035.webp new file mode 100644 index 0000000000..fa64347ca8 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_035.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_036.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_036.webp new file mode 100644 index 0000000000..e2cfc4e788 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_036.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_037.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_037.webp new file mode 100644 index 0000000000..1f9ca843c0 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_037.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_038.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_038.webp new file mode 100644 index 0000000000..2b15bffdb5 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_038.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_039.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_039.webp new file mode 100644 index 0000000000..d58825b1c1 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_039.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_040.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_040.webp new file mode 100644 index 0000000000..ec81a78754 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_040.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_041.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_041.webp new file mode 100644 index 0000000000..3e867de372 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_041.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_042.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_042.webp new file mode 100644 index 0000000000..d52a725dfb Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_042.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_043.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_043.webp new file mode 100644 index 0000000000..388094a65d Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_043.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_044.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_044.webp new file mode 100644 index 0000000000..71021bb301 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_044.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_045.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_045.webp new file mode 100644 index 0000000000..0cc52255d5 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_045.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_046.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_046.webp new file mode 100644 index 0000000000..7db23869cf Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_046.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_047.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_047.webp new file mode 100644 index 0000000000..1d930b5822 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_047.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_048.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_048.webp new file mode 100644 index 0000000000..24250f0df9 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_048.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_049.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_049.webp new file mode 100644 index 0000000000..e50175290a Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_049.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_050.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_050.webp new file mode 100644 index 0000000000..06371b3661 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_050.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_051.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_051.webp new file mode 100644 index 0000000000..28176c5a3e Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_051.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_052.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_052.webp new file mode 100644 index 0000000000..14263c7acd Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_052.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_053.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_053.webp new file mode 100644 index 0000000000..351e8c73c6 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_053.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_054.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_054.webp new file mode 100644 index 0000000000..230f6f1fa9 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_054.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_055.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_055.webp new file mode 100644 index 0000000000..5f4e461298 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_055.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_056.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_056.webp new file mode 100644 index 0000000000..0eeaaaabb5 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_056.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_057.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_057.webp new file mode 100644 index 0000000000..a7d5cbce77 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_057.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_058.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_058.webp new file mode 100644 index 0000000000..b6c3f0aeb9 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_058.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_059.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_059.webp new file mode 100644 index 0000000000..78c5a913d8 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_059.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_060.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_060.webp new file mode 100644 index 0000000000..4380bd0fb9 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/arrive_dest_060.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_000.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_000.webp new file mode 100644 index 0000000000..4fd3a55623 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_000.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_001.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_001.webp new file mode 100644 index 0000000000..ff76102048 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_001.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_002.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_002.webp new file mode 100644 index 0000000000..f13e13c8e8 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_002.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_003.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_003.webp new file mode 100644 index 0000000000..a57a579438 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_003.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_004.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_004.webp new file mode 100644 index 0000000000..a3bdb1aaff Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_004.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_005.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_005.webp new file mode 100644 index 0000000000..ecbbc89c66 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_005.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_006.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_006.webp new file mode 100644 index 0000000000..02d113cd55 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_006.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_007.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_007.webp new file mode 100644 index 0000000000..452b5d7186 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_007.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_008.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_008.webp new file mode 100644 index 0000000000..6d733f4db0 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_008.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_009.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_009.webp new file mode 100644 index 0000000000..61d09b8abf Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_009.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_010.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_010.webp new file mode 100644 index 0000000000..d420b78d03 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_010.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_011.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_011.webp new file mode 100644 index 0000000000..7497d48ffe Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_011.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_012.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_012.webp new file mode 100644 index 0000000000..6efb7520fb Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_012.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_013.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_013.webp new file mode 100644 index 0000000000..a526aa891b Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_013.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_014.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_014.webp new file mode 100644 index 0000000000..39d73705f4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_014.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_015.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_015.webp new file mode 100644 index 0000000000..38f7c50908 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_015.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_016.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_016.webp new file mode 100644 index 0000000000..0f48fcb5fe Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_016.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_017.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_017.webp new file mode 100644 index 0000000000..71936c79b6 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_017.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_018.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_018.webp new file mode 100644 index 0000000000..3a20777ded Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_018.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_019.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_019.webp new file mode 100644 index 0000000000..495a30bd13 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_019.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_020.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_020.webp new file mode 100644 index 0000000000..db7de53f9d Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_020.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_021.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_021.webp new file mode 100644 index 0000000000..a63cbc779f Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_021.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_022.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_022.webp new file mode 100644 index 0000000000..f72a3b10b2 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_022.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_023.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_023.webp new file mode 100644 index 0000000000..cb55eaeb19 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_023.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_024.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_024.webp new file mode 100644 index 0000000000..58e0176822 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_024.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_025.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_025.webp new file mode 100644 index 0000000000..777c71ed42 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_025.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_026.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_026.webp new file mode 100644 index 0000000000..ce8d4f47e8 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_026.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_027.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_027.webp new file mode 100644 index 0000000000..b340be9702 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_027.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_028.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_028.webp new file mode 100644 index 0000000000..f2337b239b Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_028.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_029.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_029.webp new file mode 100644 index 0000000000..fc893561a2 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_029.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_030.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_030.webp new file mode 100644 index 0000000000..de157c9443 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_030.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_031.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_031.webp new file mode 100644 index 0000000000..1180e96402 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_031.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_032.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_032.webp new file mode 100644 index 0000000000..d19da1617e Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_032.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_033.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_033.webp new file mode 100644 index 0000000000..fa758321dd Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_033.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_034.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_034.webp new file mode 100644 index 0000000000..a0691e817d Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_034.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_035.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_035.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_035.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_036.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_036.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_036.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_037.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_037.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_037.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_038.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_038.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_038.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_039.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_039.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_039.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_040.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_040.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_040.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_041.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_041.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_041.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_042.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_042.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_042.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_043.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_043.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_043.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_044.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_044.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_044.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_045.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_045.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_045.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_046.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_046.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_046.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_047.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_047.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_047.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_048.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_048.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_048.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_049.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_049.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_049.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_050.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_050.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_050.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_051.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_051.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_051.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_052.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_052.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_052.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_053.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_053.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_053.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_054.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_054.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_054.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_055.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_055.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_055.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_056.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_056.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_056.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_057.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_057.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_057.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_058.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_058.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_058.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_059.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_059.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_059.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_060.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_060.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/check2startautopilt_060.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00000.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00000.png new file mode 100644 index 0000000000..b50f7793cb Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00000.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00000_0.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00000_0.webp similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/image_00000_0.webp rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00000_0.webp diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00001.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00001.png new file mode 100644 index 0000000000..08dba90d6b Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00001.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00002.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00002.png new file mode 100644 index 0000000000..143269c5ba Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00002.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00003.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00003.png new file mode 100644 index 0000000000..91d144997f Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00003.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00004.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00004.png new file mode 100644 index 0000000000..520207e077 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00004.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00005.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00005.png new file mode 100644 index 0000000000..4cd9d44512 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00005.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00006.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00006.png new file mode 100644 index 0000000000..15ab608c47 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00006.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00007.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00007.png new file mode 100644 index 0000000000..94fc4a3c18 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00007.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00008.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00008.png new file mode 100644 index 0000000000..49a518e6b4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00008.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00009.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00009.png new file mode 100644 index 0000000000..9b9ee61025 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00009.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00010.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00010.png new file mode 100644 index 0000000000..f15cd8bfab Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00010.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00011.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00011.png new file mode 100644 index 0000000000..d120fdfef9 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00011.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00012.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00012.png new file mode 100644 index 0000000000..37c3399c5f Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00012.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00013.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00013.png new file mode 100644 index 0000000000..b56ee1e630 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00013.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00014.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00014.png new file mode 100644 index 0000000000..58bcca6d8d Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00014.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00015.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00015.png new file mode 100644 index 0000000000..11c07cb0a5 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00015.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00016.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00016.png new file mode 100644 index 0000000000..c7ef0e15ee Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00016.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00017.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00017.png new file mode 100644 index 0000000000..169da11cdd Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00017.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00018.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00018.png new file mode 100644 index 0000000000..f62777b866 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00018.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00019.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00019.png new file mode 100644 index 0000000000..2021d15195 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00019.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00020.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00020.png new file mode 100644 index 0000000000..cff1a8274f Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00020.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00021.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00021.png new file mode 100644 index 0000000000..cdd671caf5 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00021.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00022.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00022.png new file mode 100644 index 0000000000..fc150313f4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00022.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00023.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00023.png new file mode 100644 index 0000000000..6d400a4307 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00023.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00024.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00024.png new file mode 100644 index 0000000000..936db14ea5 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00024.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00025.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00025.png new file mode 100644 index 0000000000..0b108a99c3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00025.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00026.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00026.png new file mode 100644 index 0000000000..c7b71ca0a5 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00026.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00027.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00027.png new file mode 100644 index 0000000000..accf229586 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00027.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00028.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00028.png new file mode 100644 index 0000000000..5188456548 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00028.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00029.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00029.png new file mode 100644 index 0000000000..c50625f23f Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00029.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00030.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00030.png new file mode 100644 index 0000000000..23c4e1b127 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00030.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00031.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00031.png new file mode 100644 index 0000000000..413de61843 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00031.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00032.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00032.png new file mode 100644 index 0000000000..05654591a4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00032.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00033.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00033.png new file mode 100644 index 0000000000..58aa4d2e50 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00033.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00034.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00034.png new file mode 100644 index 0000000000..6dc4033e04 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/image_00034.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00000.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00000.png new file mode 100644 index 0000000000..caa97c01c2 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00000.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00001.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00001.png new file mode 100644 index 0000000000..b304b5be01 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00001.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00002.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00002.png new file mode 100644 index 0000000000..2bfb865ea8 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00002.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00003.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00003.png new file mode 100644 index 0000000000..9a8d3fd56a Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00003.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00004.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00004.png new file mode 100644 index 0000000000..31b5a6ab19 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00004.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00005.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00005.png new file mode 100644 index 0000000000..46ef8cc4c2 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00005.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00006.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00006.png new file mode 100644 index 0000000000..75703db7f2 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00006.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00007.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00007.png new file mode 100644 index 0000000000..09bb325885 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00007.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00008.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00008.png new file mode 100644 index 0000000000..915e8e022a Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00008.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00009.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00009.png new file mode 100644 index 0000000000..c8f7d3fa64 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00009.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00010.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00010.png new file mode 100644 index 0000000000..9419f69893 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00010.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00011.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00011.png new file mode 100644 index 0000000000..c61efd509b Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00011.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00012.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00012.png new file mode 100644 index 0000000000..3c02573dae Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00012.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00013.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00013.png new file mode 100644 index 0000000000..54d6931f31 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00013.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00014.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00014.png new file mode 100644 index 0000000000..599bd69bd4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00014.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00015.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00015.png new file mode 100644 index 0000000000..2bce1d0f09 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00015.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00016.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00016.png new file mode 100644 index 0000000000..59eb21a18c Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00016.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00017.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00017.png new file mode 100644 index 0000000000..03ead11ef2 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00017.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00018.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00018.png new file mode 100755 index 0000000000..e8820e774b Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/light_00018.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_arrived_glide.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_arrived_glide.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_arrived_glide.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_arrived_glide.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_blue_tooth_close.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_blue_tooth_close.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_blue_tooth_close.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_blue_tooth_close.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_blue_tooth_open.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_blue_tooth_open.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_blue_tooth_open.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_blue_tooth_open.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_bar_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_bar_bg.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_bar_bg.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_bar_bg.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_bar_select_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_bar_select_bg.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_bar_select_bg.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_bar_select_bg.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_overmap_normal.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_overmap_normal.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_overmap_normal.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_overmap_normal.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_overmap_press.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_overmap_press.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_overmap_press.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_overmap_press.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_precisionmap_normal.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_precisionmap_normal.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_precisionmap_normal.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_precisionmap_normal.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_precisionmap_press.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_precisionmap_press.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_precisionmap_press.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_precisionmap_press.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_video_normal.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_video_normal.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_video_normal.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_video_normal.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_video_press.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_video_press.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_video_press.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_bottom_video_press.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_change_full.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_change_full.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_change_full.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_change_full.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_change_normal.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_change_normal.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_change_normal.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_change_normal.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/bg_taxi_p_checked_input_background.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_checked_input_background.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/bg_taxi_p_checked_input_background.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_checked_input_background.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_left_door.9.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_left_door.9.png new file mode 100644 index 0000000000..8187b384fd Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_left_door.9.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_front_left_door_bg.9.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_left_door_bg.9.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_front_left_door_bg.9.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_left_door_bg.9.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_right_door.9.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_right_door.9.png new file mode 100644 index 0000000000..a8e69c82e5 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_right_door.9.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_front_right_door_bg.9.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_right_door_bg.9.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_front_right_door_bg.9.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_front_right_door_bg.9.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_function_voice_humb.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_function_voice_humb.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_function_voice_humb.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_function_voice_humb.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_itinerary_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_itinerary_bg.png new file mode 100644 index 0000000000..a626a703f3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_itinerary_bg.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/iv_light_increase_set.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_iv_light_increase_set.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/iv_light_increase_set.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_iv_light_increase_set.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/iv_light_set.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_iv_light_set.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/iv_light_set.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_iv_light_set.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/iv_voice_increase_set.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_iv_voice_increase_set.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/iv_voice_increase_set.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_iv_voice_increase_set.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/iv_voice_set.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_iv_voice_set.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/iv_voice_set.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_iv_voice_set.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_location_center.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_location_center.png new file mode 100644 index 0000000000..c2cdfb3af7 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_location_center.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_map_car.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_map_car.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_map_car.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_map_car.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_map_car_light.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_map_car_light.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_map_car_light.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_map_car_light.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_map_view_dir_end.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_map_view_dir_end.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_map_view_dir_end.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_map_view_dir_end.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_map_view_dir_start.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_map_view_dir_start.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_map_view_dir_start.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_map_view_dir_start.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_mogo_logo.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_mogo_logo.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_mogo_logo.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_mogo_logo.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_mogo_video_play.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_mogo_video_play.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_mogo_video_play.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_mogo_video_play.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_overmap_arrived.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_overmap_arrived.png new file mode 100644 index 0000000000..7ebe72d080 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_overmap_arrived.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_overmap_arriving.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_overmap_arriving.png new file mode 100644 index 0000000000..ee96bb0edc Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_overmap_arriving.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_arrived_close.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_arrived_close.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_arrived_close.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_arrived_close.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_end_boll.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_end_boll.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_end_boll.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_end_boll.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_input_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_input_bg.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_input_bg.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_input_bg.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_panel_bg.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_panel_bg.webp similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_panel_bg.webp rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_panel_bg.webp diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_start_boll.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_start_boll.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_start_boll.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_start_boll.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_start_end_line.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_start_end_line.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_start_end_line.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_passenger_check_start_end_line.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_pnc_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_pnc_bg.png new file mode 100644 index 0000000000..551b74a1fa Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_pnc_bg.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_left_door.9.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_left_door.9.png new file mode 100644 index 0000000000..7115749df7 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_left_door.9.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_rear_left_door_bg.9.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_left_door_bg.9.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_rear_left_door_bg.9.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_left_door_bg.9.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_right_door.9.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_right_door.9.png new file mode 100644 index 0000000000..f18fb44b2b Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_right_door.9.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_rear_right_door_bg.9.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_right_door_bg.9.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_rear_right_door_bg.9.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_rear_right_door_bg.9.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_right_rear_cam.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_right_rear_cam.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_right_rear_cam.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_right_rear_cam.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_roma_checked.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_roma_checked.png new file mode 100644 index 0000000000..1119113e5c Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_roma_checked.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_roma_normal.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_roma_normal.png new file mode 100644 index 0000000000..eca54cb0cf Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_roma_normal.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_setting_view_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_setting_view_bg.png new file mode 100755 index 0000000000..2936e90060 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_setting_view_bg.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_speed_bg.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_speed_bg.webp new file mode 100644 index 0000000000..40280b8e5e Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_speed_bg.webp differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_start_panel__df_bg.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_start_panel__df_bg.webp similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_start_panel__df_bg.webp rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_start_panel__df_bg.webp diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_start_panel__hq_bg.webp b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_start_panel__hq_bg.webp similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_start_panel__hq_bg.webp rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_start_panel__hq_bg.webp diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_startautopilt_car_top.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_startautopilt_car_top.png new file mode 100644 index 0000000000..2a8616a6cd Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_startautopilt_car_top.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_status_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_status_bg.png new file mode 100644 index 0000000000..ea6962bfca Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_status_bg.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_video_holder.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_video_holder.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_video_holder.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_video_holder.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_video_index.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_video_index.png new file mode 100644 index 0000000000..996d10220f Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_video_index.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_video_light_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_video_light_bg.png new file mode 100644 index 0000000000..12b53e07c4 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxi_p_video_light_bg.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_check_input_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_check_input_bg.png new file mode 100644 index 0000000000..705ec70021 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_check_input_bg.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_itinerary_bg.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_itinerary_bg.png new file mode 100644 index 0000000000..a626a703f3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_itinerary_bg.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_setting_checked.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_setting_checked.png new file mode 100644 index 0000000000..33e50083e3 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_setting_checked.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_setting_normal.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_setting_normal.png new file mode 100644 index 0000000000..b31bfa8d64 Binary files /dev/null and b/OCH/taxi/passenger/src/main/res/drawable-nodpi/taxt_p_setting_normal.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_000.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_000.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_000.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_000.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_001.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_001.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_001.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_001.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_002.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_002.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_002.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_002.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_003.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_003.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_003.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_003.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_004.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_004.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_004.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_004.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_005.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_005.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_005.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_005.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_006.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_006.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_006.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_006.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_007.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_007.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_007.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_007.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_008.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_008.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_008.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_008.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_009.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_009.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_009.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_009.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_010.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_010.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_010.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_010.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_011.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_011.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_011.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_011.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_012.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_012.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_012.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_012.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_013.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_013.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_013.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_013.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_014.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_014.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_014.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_014.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_015.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_015.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_015.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_015.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_016.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_016.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_016.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_016.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_017.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_017.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_017.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_017.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_018.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_018.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_018.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_018.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_019.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_019.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_019.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_019.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_020.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_020.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_020.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_020.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_021.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_021.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_021.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_021.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_022.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_022.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_022.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_022.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_023.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_023.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_023.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_023.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_024.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_024.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_024.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_024.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_025.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_025.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_025.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_025.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_026.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_026.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_026.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_026.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_027.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_027.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_027.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_027.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_028.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_028.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_028.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_028.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_029.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_029.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_029.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_029.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_030.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_030.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_030.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_030.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_031.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_031.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_031.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_031.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_032.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_032.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_032.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_032.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_033.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_033.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_033.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_033.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_034.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_034.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_034.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_034.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_035.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_035.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_035.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_035.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_036.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_036.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_036.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_036.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_037.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_037.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_037.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_037.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_038.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_038.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_038.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_038.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_039.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_039.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_039.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_039.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_040.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_040.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_040.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_040.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_041.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_041.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_041.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_041.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_042.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_042.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_042.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_042.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_043.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_043.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_043.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_043.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_044.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_044.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_044.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_044.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_045.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_045.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_045.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_045.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_046.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_046.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_046.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_046.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_047.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_047.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_047.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_047.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_048.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_048.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_belt_048.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_belt_048.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_00.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_00.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_00.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_00.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_01.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_01.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_01.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_01.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_02.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_02.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_02.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_02.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_03.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_03.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_03.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_03.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_04.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_04.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_04.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_04.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_05.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_05.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_05.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_05.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_06.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_06.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_06.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_06.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_07.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_07.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_07.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_07.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_08.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_08.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_08.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_08.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_09.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_09.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_09.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_09.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_10.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_10.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_10.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_10.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_11.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_11.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_11.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_11.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_12.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_12.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_12.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_12.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_13.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_13.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_13.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_13.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_14.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_14.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_14.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_14.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_15.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_15.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_15.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_15.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_16.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_16.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_16.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_16.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_17.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_17.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_17.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_17.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_18.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_18.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_18.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_18.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_19.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_19.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_19.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_19.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_20.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_20.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_20.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_20.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_21.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_21.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_21.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_21.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_22.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_22.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_22.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_22.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_23.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_23.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_23.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_23.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_24.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_24.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_24.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_24.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_25.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_25.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_25.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_25.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_26.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_26.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_26.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_26.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_27.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_27.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_27.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_27.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_28.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_28.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_28.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_28.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_29.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_29.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_29.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_29.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_30.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_30.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_30.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_30.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_31.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_31.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_31.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_31.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_32.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_32.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_32.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_32.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_33.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_33.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_33.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_33.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_34.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_34.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_34.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_34.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_35.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_35.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_35.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_35.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_36.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_36.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_36.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_36.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_37.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_37.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_37.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_37.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_38.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_38.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_38.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_38.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_39.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_39.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_39.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_39.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_40.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_40.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_40.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_40.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_41.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_41.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_41.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_41.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_42.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_42.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_42.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_42.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_43.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_43.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_43.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_43.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_44.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_44.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_44.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_44.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_45.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_45.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_45.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_45.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_46.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_46.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_46.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_46.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_47.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_47.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_47.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_47.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_48.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_48.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_48.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_48.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_49.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_49.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_49.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_49.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_50.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_50.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_50.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_50.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_51.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_51.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_51.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_51.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_52.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_52.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_52.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_52.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_53.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_53.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_53.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_53.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_54.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_54.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_54.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_54.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_55.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_55.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_55.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_55.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_56.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_56.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_56.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_56.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_57.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_57.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_57.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_57.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_58.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_58.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_58.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_58.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_59.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_59.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_59.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_59.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_60.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_60.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_60.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_60.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_61.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_61.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_61.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_61.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_62.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_62.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_62.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_62.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_63.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_63.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_63.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_63.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_64.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_64.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_64.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_64.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_65.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_65.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_65.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_65.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_66.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_66.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_66.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_66.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_67.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_67.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_67.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_67.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_68.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_68.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_68.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_68.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_69.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_69.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_69.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_69.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_70.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_70.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_70.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_70.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_71.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_71.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_71.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_71.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_72.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_72.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_72.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_72.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_73.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_73.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_73.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_73.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_74.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_74.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_74.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_74.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_75.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_75.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_75.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_75.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_76.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_76.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_76.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_76.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_77.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_77.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_77.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_77.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_78.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_78.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_78.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_78.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_79.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_79.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_79.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_79.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_80.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_80.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_80.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_80.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_81.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_81.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_81.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_81.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_82.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_82.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_82.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_82.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_83.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_83.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_83.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_83.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_84.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_84.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_84.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_84.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_85.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_85.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_85.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_85.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_86.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_86.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_86.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_86.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_87.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_87.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_87.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_87.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_88.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_88.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_88.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_88.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_89.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_89.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_89.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_89.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_90.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_90.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_90.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_90.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_91.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_91.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_91.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_91.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_92.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_92.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_92.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_92.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_93.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_93.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_93.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_93.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_94.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_94.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_94.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_94.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_95.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_95.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_95.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_95.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_96.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_96.png old mode 100755 new mode 100644 similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_love_96.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_love_96.png diff --git a/OCH/taxi/passenger/src/main/res/drawable/xiaozhi_safety_belt.png b/OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_safety_belt.png similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/xiaozhi_safety_belt.png rename to OCH/taxi/passenger/src/main/res/drawable-nodpi/xiaozhi_safety_belt.png diff --git a/OCH/taxi/passenger/src/main/res/drawable-v29/taxi_video_order_process.xml b/OCH/taxi/passenger/src/main/res/drawable-v29/taxi_video_order_process.xml deleted file mode 100644 index 67843a4b8c..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable-v29/taxi_video_order_process.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/bg_taxi_p_video_index.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/bg_taxi_p_video_index.png deleted file mode 100644 index 61f22d3bf0..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/bg_taxi_p_video_index.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_overmap_arrived.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_overmap_arrived.png deleted file mode 100644 index 95f67cfb96..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_overmap_arrived.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_overmap_arriving.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_overmap_arriving.png deleted file mode 100644 index 1cac7d83b0..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_overmap_arriving.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_itinerary_bg.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_itinerary_bg.png deleted file mode 100755 index b5ed8c603b..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_itinerary_bg.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_location_center.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_location_center.png deleted file mode 100644 index 2aa805a7c2..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_location_center.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_pnc_bg.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_pnc_bg.png deleted file mode 100755 index 689770a17d..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_pnc_bg.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_roma_checked.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_roma_checked.png deleted file mode 100644 index 7377fd23a7..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_roma_checked.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_roma_normal.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_roma_normal.png deleted file mode 100644 index 38e78514d9..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_roma_normal.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_setting_checked.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_setting_checked.png deleted file mode 100644 index 017decf57c..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_setting_checked.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_setting_normal.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_setting_normal.png deleted file mode 100644 index c317fdc045..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_setting_normal.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_setting_view_bg.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_setting_view_bg.png deleted file mode 100755 index b0338640a1..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_setting_view_bg.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_status_bg.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_status_bg.png deleted file mode 100755 index 32cda5c4ab..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_status_bg.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_video_light_bg.png b/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_video_light_bg.png deleted file mode 100755 index 5faf81f617..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/taxi_p_video_light_bg.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/anmi_flow.xml b/OCH/taxi/passenger/src/main/res/drawable/anmi_flow.xml deleted file mode 100644 index f061a263fd..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/anmi_flow.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_arrived_info_line.xml b/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_arrived_info_line.xml deleted file mode 100644 index ab6a26f504..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_arrived_info_line.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_arrived_info_yello_v.xml b/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_arrived_info_yello_v.xml deleted file mode 100644 index 69284ae518..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_arrived_info_yello_v.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_traffic_light_background.xml b/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_traffic_light_background.xml deleted file mode 100644 index 941a082881..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_traffic_light_background.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_v2x_notification_view.xml b/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_v2x_notification_view.xml deleted file mode 100644 index c354474ee2..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_v2x_notification_view.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_bg_shape.xml b/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_bg_shape.xml deleted file mode 100644 index f4cf3c03ad..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_bg_shape.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - diff --git a/OCH/taxi/passenger/src/main/res/drawable/ic_baseline_arrow_left_24.xml b/OCH/taxi/passenger/src/main/res/drawable/ic_baseline_arrow_left_24.xml deleted file mode 100644 index 2dcafaade8..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/ic_baseline_arrow_left_24.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/OCH/taxi/passenger/src/main/res/drawable/ic_baseline_arrow_right_24.xml b/OCH/taxi/passenger/src/main/res/drawable/ic_baseline_arrow_right_24.xml deleted file mode 100644 index b619644073..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/ic_baseline_arrow_right_24.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00000.png b/OCH/taxi/passenger/src/main/res/drawable/image_00000.png deleted file mode 100755 index ad219a6fa0..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00000.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00001.png b/OCH/taxi/passenger/src/main/res/drawable/image_00001.png deleted file mode 100755 index 91132466c9..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00001.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00002.png b/OCH/taxi/passenger/src/main/res/drawable/image_00002.png deleted file mode 100755 index 87a2a8d3b5..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00002.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00003.png b/OCH/taxi/passenger/src/main/res/drawable/image_00003.png deleted file mode 100755 index 6959f79b9c..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00003.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00004.png b/OCH/taxi/passenger/src/main/res/drawable/image_00004.png deleted file mode 100755 index 083900fed9..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00004.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00005.png b/OCH/taxi/passenger/src/main/res/drawable/image_00005.png deleted file mode 100755 index 17bc486ffd..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00005.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00006.png b/OCH/taxi/passenger/src/main/res/drawable/image_00006.png deleted file mode 100755 index 6ef37fdb92..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00006.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00007.png b/OCH/taxi/passenger/src/main/res/drawable/image_00007.png deleted file mode 100755 index fa72979a0d..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00007.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00008.png b/OCH/taxi/passenger/src/main/res/drawable/image_00008.png deleted file mode 100755 index 0b076bc8f1..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00008.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00009.png b/OCH/taxi/passenger/src/main/res/drawable/image_00009.png deleted file mode 100755 index c62b70195d..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00009.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00010.png b/OCH/taxi/passenger/src/main/res/drawable/image_00010.png deleted file mode 100755 index 73342e7fb9..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00010.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00011.png b/OCH/taxi/passenger/src/main/res/drawable/image_00011.png deleted file mode 100755 index 1c15329feb..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00011.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00012.png b/OCH/taxi/passenger/src/main/res/drawable/image_00012.png deleted file mode 100755 index 7e353ecb4f..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00012.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00013.png b/OCH/taxi/passenger/src/main/res/drawable/image_00013.png deleted file mode 100755 index 9da325091a..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00013.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00014.png b/OCH/taxi/passenger/src/main/res/drawable/image_00014.png deleted file mode 100755 index fb152247de..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00014.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00015.png b/OCH/taxi/passenger/src/main/res/drawable/image_00015.png deleted file mode 100755 index 4b35b8379d..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00015.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00016.png b/OCH/taxi/passenger/src/main/res/drawable/image_00016.png deleted file mode 100755 index ce0f0f0cfd..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00016.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00017.png b/OCH/taxi/passenger/src/main/res/drawable/image_00017.png deleted file mode 100755 index ec5b1b9245..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00017.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00018.png b/OCH/taxi/passenger/src/main/res/drawable/image_00018.png deleted file mode 100755 index 55cb4ab0f0..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00018.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00019.png b/OCH/taxi/passenger/src/main/res/drawable/image_00019.png deleted file mode 100755 index a266730cbb..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00019.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00020.png b/OCH/taxi/passenger/src/main/res/drawable/image_00020.png deleted file mode 100755 index d7511c60ec..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00020.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00021.png b/OCH/taxi/passenger/src/main/res/drawable/image_00021.png deleted file mode 100755 index 1d513fa5d3..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00021.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00022.png b/OCH/taxi/passenger/src/main/res/drawable/image_00022.png deleted file mode 100755 index aa0fe8140e..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00022.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00023.png b/OCH/taxi/passenger/src/main/res/drawable/image_00023.png deleted file mode 100755 index 33cc69dca9..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00023.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00024.png b/OCH/taxi/passenger/src/main/res/drawable/image_00024.png deleted file mode 100755 index 609100cf2a..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00024.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00025.png b/OCH/taxi/passenger/src/main/res/drawable/image_00025.png deleted file mode 100755 index 0b4da3f947..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00025.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00026.png b/OCH/taxi/passenger/src/main/res/drawable/image_00026.png deleted file mode 100755 index 75aa470952..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00026.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00027.png b/OCH/taxi/passenger/src/main/res/drawable/image_00027.png deleted file mode 100755 index 5cae05bab0..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00027.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00028.png b/OCH/taxi/passenger/src/main/res/drawable/image_00028.png deleted file mode 100755 index 6466bb2ec7..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00028.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00029.png b/OCH/taxi/passenger/src/main/res/drawable/image_00029.png deleted file mode 100755 index 0f480e37b8..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00029.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00030.png b/OCH/taxi/passenger/src/main/res/drawable/image_00030.png deleted file mode 100755 index 3b077b70d4..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00030.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00031.png b/OCH/taxi/passenger/src/main/res/drawable/image_00031.png deleted file mode 100755 index b4ee1f783b..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00031.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00032.png b/OCH/taxi/passenger/src/main/res/drawable/image_00032.png deleted file mode 100755 index 451ee41777..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00032.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00033.png b/OCH/taxi/passenger/src/main/res/drawable/image_00033.png deleted file mode 100755 index b0f54dfbf4..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00033.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/image_00034.png b/OCH/taxi/passenger/src/main/res/drawable/image_00034.png deleted file mode 100755 index afb758f6d2..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/image_00034.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00000.png b/OCH/taxi/passenger/src/main/res/drawable/light_00000.png deleted file mode 100755 index 94cf04741b..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00000.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00001.png b/OCH/taxi/passenger/src/main/res/drawable/light_00001.png deleted file mode 100755 index a33bb182c0..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00001.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00002.png b/OCH/taxi/passenger/src/main/res/drawable/light_00002.png deleted file mode 100755 index 62d06f31f2..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00002.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00003.png b/OCH/taxi/passenger/src/main/res/drawable/light_00003.png deleted file mode 100755 index 8c48101448..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00003.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00004.png b/OCH/taxi/passenger/src/main/res/drawable/light_00004.png deleted file mode 100755 index c30e868df9..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00004.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00005.png b/OCH/taxi/passenger/src/main/res/drawable/light_00005.png deleted file mode 100755 index e49896b33a..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00005.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00006.png b/OCH/taxi/passenger/src/main/res/drawable/light_00006.png deleted file mode 100755 index 01048ba3ec..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00006.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00007.png b/OCH/taxi/passenger/src/main/res/drawable/light_00007.png deleted file mode 100755 index 258d79d868..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00007.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00008.png b/OCH/taxi/passenger/src/main/res/drawable/light_00008.png deleted file mode 100755 index 07a8d7d87f..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00008.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00009.png b/OCH/taxi/passenger/src/main/res/drawable/light_00009.png deleted file mode 100755 index 835539331b..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00009.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00010.png b/OCH/taxi/passenger/src/main/res/drawable/light_00010.png deleted file mode 100755 index aa016c8382..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00010.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00011.png b/OCH/taxi/passenger/src/main/res/drawable/light_00011.png deleted file mode 100755 index b8ccfb7cc4..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00011.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00012.png b/OCH/taxi/passenger/src/main/res/drawable/light_00012.png deleted file mode 100755 index 9305c86983..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00012.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/light_00013.png b/OCH/taxi/passenger/src/main/res/drawable/light_00013.png deleted file mode 100755 index 9aa4bd5c29..0000000000 Binary files a/OCH/taxi/passenger/src/main/res/drawable/light_00013.png and /dev/null differ diff --git a/OCH/taxi/passenger/src/main/res/drawable/starting_anmi_flow.xml b/OCH/taxi/passenger/src/main/res/drawable/starting_anmi_flow.xml deleted file mode 100644 index 5f6badea0b..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/starting_anmi_flow.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_autopilot_status_bg.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_autopilot_status_bg.xml deleted file mode 100644 index e323eca4c3..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_autopilot_status_bg.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_operation_status_bg.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_operation_status_bg.xml deleted file mode 100644 index f4769a12ce..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_operation_status_bg.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/roma_taxi_p_bg_selector.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_bg_roma_selector.xml similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/roma_taxi_p_bg_selector.xml rename to OCH/taxi/passenger/src/main/res/drawable/taxi_p_bg_roma_selector.xml diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_blue_circle_bg.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_blue_circle_bg.xml deleted file mode 100644 index 3139e0e633..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_blue_circle_bg.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_check_input_background.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_check_input_background.xml similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_check_input_background.xml rename to OCH/taxi/passenger/src/main/res/drawable/taxi_p_check_input_background.xml diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_comment_selected.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_comment_selected.xml deleted file mode 100644 index b5f1cd6a5d..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_comment_selected.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_enable_start_autopilot.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_enable_start_autopilot.xml new file mode 100644 index 0000000000..050ca629ef --- /dev/null +++ b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_enable_start_autopilot.xml @@ -0,0 +1,10 @@ + + + + + + diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_keyboard_background.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_keyboard_background.xml similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_keyboard_background.xml rename to OCH/taxi/passenger/src/main/res/drawable/taxi_p_keyboard_background.xml diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_light_bg.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_light_bg.xml deleted file mode 100644 index 02820df9a0..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_light_bg.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_map_bottom_shape.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_map_bottom_shape.xml deleted file mode 100644 index 0d57639296..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_map_bottom_shape.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_arrived_info.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_roma_distance_bg.xml similarity index 59% rename from OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_arrived_info.xml rename to OCH/taxi/passenger/src/main/res/drawable/taxi_p_roma_distance_bg.xml index 897bad44ef..20ccf3f45e 100644 --- a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_arrived_info.xml +++ b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_roma_distance_bg.xml @@ -1,6 +1,6 @@ - - + + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_seekbar_calculator_layer.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_seekbar_calculator_layer.xml deleted file mode 100644 index 320c08d2e9..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_seekbar_calculator_layer.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_setting_selector.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_setting_selector.xml index 8058cbece5..50e277d79a 100644 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_setting_selector.xml +++ b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_setting_selector.xml @@ -1,10 +1,10 @@ - - - - - - - + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_start_autopilot_bottom_bg.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_start_autopilot_bottom_bg.xml index 54909012c8..3243142fc8 100644 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_start_autopilot_bottom_bg.xml +++ b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_start_autopilot_bottom_bg.xml @@ -1,5 +1,5 @@ - + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_unable_start_autopilot.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_unable_start_autopilot.xml new file mode 100644 index 0000000000..64040b5c44 --- /dev/null +++ b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_unable_start_autopilot.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_keyboard_submit_background.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_video_bg.xml similarity index 78% rename from OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_keyboard_submit_background.xml rename to OCH/taxi/passenger/src/main/res/drawable/taxi_p_video_bg.xml index b29276965c..0033c93649 100644 --- a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_keyboard_submit_background.xml +++ b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_video_bg.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_bg_top.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_video_bg_top.xml similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_bg_top.xml rename to OCH/taxi/passenger/src/main/res/drawable/taxi_p_video_bg_top.xml diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_light_bg_shape.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_video_light_bg_shape.xml similarity index 88% rename from OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_light_bg_shape.xml rename to OCH/taxi/passenger/src/main/res/drawable/taxi_p_video_light_bg_shape.xml index 387f89e2eb..53fe75fede 100644 --- a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_light_bg_shape.xml +++ b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_video_light_bg_shape.xml @@ -6,5 +6,5 @@ android:bottomRightRadius="36dp" android:topLeftRadius="36dp" android:topRightRadius="36dp" /> - + diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_xioazhi_normal.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_xioazhi_normal.xml deleted file mode 100644 index b7a6d9e517..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_xioazhi_normal.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_yellow_circle_bg.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_p_yellow_circle_bg.xml deleted file mode 100644 index 2b3d9b2053..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_p_yellow_circle_bg.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_passenger_order_bg.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_passenger_order_bg.xml deleted file mode 100644 index be64efd160..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_passenger_order_bg.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_power_size_seekbar_style.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_power_size_seekbar_style.xml deleted file mode 100644 index ce20af2572..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_power_size_seekbar_style.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_speed_selector.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_speed_selector.xml deleted file mode 100644 index c87ede1476..0000000000 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_speed_selector.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_video_order_process.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_video_order_process.xml index 36db1355c2..a7557622c9 100644 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_video_order_process.xml +++ b/OCH/taxi/passenger/src/main/res/drawable/taxi_video_order_process.xml @@ -19,7 +19,7 @@ - + diff --git a/OCH/taxi/passenger/src/main/res/drawable/taxi_video_seekbar_style.xml b/OCH/taxi/passenger/src/main/res/drawable/taxi_video_seekbar_style.xml index 30ed19fa3c..e9d7160313 100644 --- a/OCH/taxi/passenger/src/main/res/drawable/taxi_video_seekbar_style.xml +++ b/OCH/taxi/passenger/src/main/res/drawable/taxi_video_seekbar_style.xml @@ -19,7 +19,7 @@ - + diff --git a/OCH/taxi/passenger/src/main/res/layout/list_comment_item.xml b/OCH/taxi/passenger/src/main/res/layout/list_comment_item.xml deleted file mode 100644 index 728fcd91d0..0000000000 --- a/OCH/taxi/passenger/src/main/res/layout/list_comment_item.xml +++ /dev/null @@ -1,19 +0,0 @@ - - diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml index 086e795a01..173706e096 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml @@ -7,8 +7,8 @@ android:layout_height="match_parent" tools:ignore="MissingDefaultResource"> - @@ -40,11 +40,12 @@ app:layout_constraintStart_toStartOf="@+id/v_video_right_rear_view" app:layout_constraintBottom_toTopOf="@+id/v_video_right_rear_view" android:layout_marginBottom="@dimen/dp_26" - android:textColor="@android:color/white" + android:textColor="@color/taxi_p_373B46" android:maxLines="2" android:ellipsize="end" android:maxWidth="@dimen/dp_1200" - android:textSize="@dimen/dp_100" + android:textSize="@dimen/dp_68" + android:textStyle="bold" tools:text="环球贸易中心环球贸易中心环球贸易中心环球贸易中心环球贸易中心环球贸易中心环球贸易中心环球贸易中心" android:layout_width="wrap_content" android:layout_height="wrap_content"/> @@ -58,48 +59,4 @@ android:layout_width="@dimen/dp_900" android:layout_height="@dimen/dp_506"/> - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_base_fragment.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_base_fragment.xml index 61475df24a..3267295a8f 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_base_fragment.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_base_fragment.xml @@ -1,7 +1,6 @@ @@ -9,20 +8,19 @@ android:id="@+id/overMapView" android:layout_width="match_parent" android:layout_height="match_parent" - app:resetDrawable="@null" - app:startPointDrawable="@drawable/taxi_p_map_view_dir_start" - app:endPointDrawable="@drawable/taxi_p_map_view_dir_end" + app:arrivedDrawable="@drawable/taxi_p_overmap_arrived" + app:bottomPadding="160" app:carDrawable="@drawable/taxi_p_map_car" app:compassDrawable="@drawable/taxi_p_map_car_light" - app:arrivedDrawable="@drawable/taxi_overmap_arrived" - app:unArrivedDrawable="@drawable/taxi_overmap_arriving" + app:endPointDrawable="@drawable/taxi_p_map_view_dir_end" + app:leftPadding="850" app:mapStyleExtraPath="style_extra.data" app:mapStylePath="style.data" - app:leftPadding="850" + app:resetDrawable="@null" app:rightPadding="160" + app:startPointDrawable="@drawable/taxi_p_map_view_dir_start" app:topPadding="160" - app:bottomPadding="160" - /> + app:unArrivedDrawable="@drawable/taxi_p_overmap_arriving" /> + android:layout_height="match_parent" + app:isWeatherEnable="false" + app:default_perspective="MAP_STYLE_VR_SKY_BOX" + app:styleMode="MAP_STYLE_DAY_VR_TAXI" /> + app:layout_constraintStart_toStartOf="parent" + app:pnc_size="@dimen/dp_40" + app:pnc_txt_style="@style/AudioFileInfoOverlayText" /> + + @@ -110,23 +119,21 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/dp_83" - android:layout_marginRight="@dimen/taxi_p_traffic_light_layout_margin_right" + android:layout_marginRight="@dimen/dp_40" android:visibility="gone" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" - app:traffic_light_user="traffic_light_taxi_p" - /> + app:traffic_light_user="traffic_light_taxi_p" /> + app:layout_constraintRight_toLeftOf="@id/traffic_light_view" + app:layout_constraintTop_toTopOf="parent" + app:user="taxi_p" /> + + + + + + + android:layout_height="wrap_content" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintTop_toTopOf="parent" /> \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/m1_bottom_check.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_bottom_check.xml similarity index 100% rename from OCH/taxi/passenger/src/main/res/layout/m1_bottom_check.xml rename to OCH/taxi/passenger/src/main/res/layout/taxi_p_bottom_check.xml diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_itinerary.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_itinerary.xml index 8d5f3e34e3..0c48cb0976 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_itinerary.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_itinerary.xml @@ -2,81 +2,60 @@ + app:layout_constraintEnd_toEndOf="parent" /> - - + android:layout_height="wrap_content"/> - + android:layout_height="wrap_content"/> + - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_mogo_video_layout.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_mogo_video_layout.xml index fd94d513d7..cde70a8b6b 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_mogo_video_layout.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_mogo_video_layout.xml @@ -11,9 +11,9 @@ diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_overmap_fragment.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_overmap_fragment.xml deleted file mode 100644 index 725167d00c..0000000000 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_overmap_fragment.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_passenger_check_panel.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_passenger_check_panel.xml index fe1331decf..99414bc626 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_passenger_check_panel.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_passenger_check_panel.xml @@ -49,7 +49,7 @@ android:layout_height="wrap_content" android:layout_marginStart="-20dp" tools:text="乘客数:2位" - android:shadowColor="@color/taxi_p_check_hello_small_text_color" + android:shadowColor="@color/taxi_p_8039388E" android:shadowDy ="2" android:shadowRadius="20" android:paddingStart="@dimen/dp_20" @@ -57,7 +57,7 @@ android:paddingTop="@dimen/dp_20" android:paddingBottom="@dimen/dp_20" android:layout_marginBottom="@dimen/dp_66" - android:textColor="@color/taxi_autopilot_text_color_normal" + android:textColor="@android:color/white" android:textSize="@dimen/dp_46" app:layout_constraintStart_toStartOf="@+id/iv_passenger_start_boll" app:layout_constraintBottom_toTopOf="@+id/tv_passenger_start" @@ -70,7 +70,7 @@ tools:text="起 点 : 衡山科学城" android:maxLines="1" android:ellipsize="end" - android:textColor="@color/taxi_autopilot_text_color_normal" + android:textColor="@android:color/white" android:textSize="@dimen/dp_46" android:layout_marginStart="@dimen/dp_44" app:layout_constraintEnd_toStartOf="@+id/och_shadow_layout" @@ -115,7 +115,7 @@ android:maxLines="1" android:ellipsize="end" tools:text="终 点 : 石鼓收费站" - android:textColor="@color/taxi_autopilot_text_color_normal" + android:textColor="@android:color/white" android:layout_marginStart="@dimen/dp_44" android:textSize="@dimen/dp_46" app:layout_constraintTop_toTopOf="@+id/iv_passenger_end_boll" @@ -140,7 +140,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/dp_181" android:text="@string/taxi_p_check_input_phone_tail_title" - android:textColor="@color/taxi_p_check_keyboard_samll_mogo_color" + android:textColor="@color/taxi_p_151937" android:textSize="@dimen/dp_46" app:layout_constraintStart_toStartOf="@+id/tv_taxi_passenger_number_first" app:layout_constraintTop_toTopOf="parent" /> @@ -190,7 +190,7 @@ android:layout_marginEnd="@dimen/dp_45" android:layout_marginBottom="@dimen/dp_181" style="@style/och_check_number_keyboard" - android:text="@string/tv_delete" + android:text="@string/taxi_p_delete" android:textSize="@dimen/dp_36" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toStartOf="@+id/tv_taxi_passenger_number_zero" diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_setting_view.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_setting_view.xml index 614f38c2fd..8f467b442d 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_setting_view.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_setting_view.xml @@ -23,7 +23,7 @@ android:layout_height="@dimen/dp_40" android:layout_marginStart="@dimen/dp_89" android:layout_marginTop="@dimen/dp_29" - android:src="@drawable/iv_light_set" + android:src="@drawable/taxi_p_iv_light_set" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvSettingLight" /> @@ -46,7 +46,7 @@ android:layout_height="@dimen/dp_40" android:layout_marginStart="@dimen/dp_531" android:layout_marginTop="@dimen/dp_28" - android:src="@drawable/iv_light_increase_set" + android:src="@drawable/taxi_p_iv_light_increase_set" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvSettingLight" /> @@ -80,7 +80,7 @@ android:layout_height="@dimen/dp_40" android:layout_marginStart="@dimen/dp_89" android:layout_marginTop="@dimen/dp_29" - android:src="@drawable/iv_voice_set" + android:src="@drawable/taxi_p_iv_voice_set" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvSettingSound" /> @@ -103,7 +103,7 @@ android:layout_height="@dimen/dp_40" android:layout_marginStart="@dimen/dp_531" android:layout_marginTop="@dimen/dp_28" - android:src="@drawable/iv_voice_increase_set" + android:src="@drawable/taxi_p_iv_voice_increase_set" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvSettingSound" /> diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_statusview.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_statusview.xml index 5b75be9662..3c11e1487b 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_statusview.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_statusview.xml @@ -61,14 +61,4 @@ android:layout_width="@dimen/dp_92" android:layout_height="match_parent"/> - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_traffic_light_view.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_traffic_light_view.xml deleted file mode 100644 index 150f0b1eb8..0000000000 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_traffic_light_view.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_v2x_notification_view.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_v2x_notification_view.xml deleted file mode 100644 index 5bee1c258d..0000000000 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_v2x_notification_view.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/list_video_item_light.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_video_item_light.xml similarity index 78% rename from OCH/taxi/passenger/src/main/res/layout/list_video_item_light.xml rename to OCH/taxi/passenger/src/main/res/layout/taxi_p_video_item_light.xml index eaca7d4b4a..0c85e88433 100644 --- a/OCH/taxi/passenger/src/main/res/layout/list_video_item_light.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_video_item_light.xml @@ -2,18 +2,20 @@ + android:layout_width="1892dp" + android:layout_height="1231dp"> @@ -22,7 +24,7 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" - android:background="@drawable/bg_taxi_p_video_light_bg_shape" + android:background="@drawable/taxi_p_video_light_bg_shape" android:layout_width="1682dp" android:layout_height="@dimen/dp_991" /> @@ -34,7 +36,7 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" android:layout_width="1560dp" - android:layout_height="@dimen/dp_874" /> + android:layout_height="@dimen/dp_876" /> diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_video_show.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_video_show.xml index f3e2d98126..8707c98ead 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_video_show.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_video_show.xml @@ -38,7 +38,7 @@ android:id="@+id/layout_top" android:layout_width="match_parent" android:layout_height="120dp" - android:background="@drawable/bg_taxi_p_video_bg_top" + android:background="@drawable/taxi_p_video_bg_top" app:layout_constraintTop_toTopOf="parent"> + android:thumb="@drawable/taxi_p_video_index" /> + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/taxt_p_check_number.xml b/OCH/taxi/passenger/src/main/res/layout/taxt_p_check_number.xml new file mode 100644 index 0000000000..a7eb2ba2ae --- /dev/null +++ b/OCH/taxi/passenger/src/main/res/layout/taxt_p_check_number.xml @@ -0,0 +1,175 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/taxt_p_check_startautopilot.xml b/OCH/taxi/passenger/src/main/res/layout/taxt_p_check_startautopilot.xml new file mode 100644 index 0000000000..8cd3e72b45 --- /dev/null +++ b/OCH/taxi/passenger/src/main/res/layout/taxt_p_check_startautopilot.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/taxt_p_speed.xml b/OCH/taxi/passenger/src/main/res/layout/taxt_p_speed.xml new file mode 100644 index 0000000000..14556486bd --- /dev/null +++ b/OCH/taxi/passenger/src/main/res/layout/taxt_p_speed.xml @@ -0,0 +1,48 @@ + + + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_start_autopilot_view.xml b/OCH/taxi/passenger/src/main/res/layout/taxt_p_start_autopilot_view.xml similarity index 50% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_start_autopilot_view.xml rename to OCH/taxi/passenger/src/main/res/layout/taxt_p_start_autopilot_view.xml index 28aa18dd53..323ce869cc 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_start_autopilot_view.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxt_p_start_autopilot_view.xml @@ -5,65 +5,70 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/cl_car_type" - android:background="@drawable/taxi_p_start_panel__df_bg" tools:ignore="MissingDefaultResource"> - + + - - - - - - - - - - - - - - - - - - - @@ -169,14 +100,15 @@ android:id="@+id/actv_front_right_door" android:gravity="center" android:visibility="gone" + tools:visibility="visible" app:layout_constraintTop_toTopOf="@+id/gl_horizontal_center" app:layout_constraintBottom_toBottomOf="@+id/gl_horizontal_center" app:layout_constraintStart_toStartOf="@+id/gl_vertical_center" android:layout_marginStart="@dimen/dp_106" android:text="右前车门未关" android:textSize="@dimen/dp_35" - android:textColor="@color/taxi_p_2B364B" - android:background="@drawable/taxi_p_front_right_door_bg" + android:textColor="@android:color/white" + android:background="@drawable/taxi_p_front_right_door" android:layout_width="wrap_content" android:layout_height="wrap_content"/> @@ -184,14 +116,15 @@ android:id="@+id/actv_front_left_door" android:gravity="center" android:visibility="gone" + tools:visibility="visible" app:layout_constraintTop_toTopOf="@+id/gl_horizontal_center" app:layout_constraintBottom_toBottomOf="@+id/gl_horizontal_center" app:layout_constraintEnd_toStartOf="@+id/gl_vertical_center" android:layout_marginEnd="@dimen/dp_106" android:text="左前车门未关" android:textSize="@dimen/dp_35" - android:textColor="@color/taxi_p_2B364B" - android:background="@drawable/taxi_p_front_left_door_bg" + android:textColor="@android:color/white" + android:background="@drawable/taxi_p_front_left_door" android:layout_width="wrap_content" android:layout_height="wrap_content"/> @@ -200,14 +133,15 @@ android:id="@+id/actv_rear_left_door" android:gravity="center" android:visibility="gone" + tools:visibility="visible" app:layout_constraintEnd_toStartOf="@+id/gl_vertical_center" app:layout_constraintTop_toBottomOf="@+id/gl_horizontal_center" android:layout_marginEnd="@dimen/dp_135" android:layout_marginTop="@dimen/dp_142" android:text="左后车门未关" android:textSize="@dimen/dp_35" - android:textColor="@color/taxi_p_2B364B" - android:background="@drawable/taxi_p_rear_left_door_bg" + android:textColor="@android:color/white" + android:background="@drawable/taxi_p_rear_left_door" android:layout_width="wrap_content" android:layout_height="wrap_content"/> @@ -215,14 +149,15 @@ android:id="@+id/actv_rear_right_door" android:gravity="center" android:visibility="gone" + tools:visibility="visible" app:layout_constraintStart_toEndOf="@+id/gl_vertical_center" app:layout_constraintTop_toBottomOf="@+id/gl_horizontal_center" android:layout_marginStart="@dimen/dp_135" android:layout_marginTop="@dimen/dp_142" android:text="右后车门未关" android:textSize="@dimen/dp_35" - android:textColor="@color/taxi_p_2B364B" - android:background="@drawable/taxi_p_rear_right_door_bg" + android:textColor="@android:color/white" + android:background="@drawable/taxi_p_rear_right_door" android:layout_width="wrap_content" android:layout_height="wrap_content"/> diff --git a/OCH/taxi/passenger/src/main/res/values/arrays.xml b/OCH/taxi/passenger/src/main/res/values/arrays.xml index d17614ba84..cc0c5d0bd7 100644 --- a/OCH/taxi/passenger/src/main/res/values/arrays.xml +++ b/OCH/taxi/passenger/src/main/res/values/arrays.xml @@ -54,6 +54,10 @@ @drawable/light_00011 @drawable/light_00012 @drawable/light_00013 + @drawable/light_00014 + @drawable/light_00015 + @drawable/light_00016 + @drawable/light_00017 @@ -225,4 +229,148 @@ @drawable/xiaozhi_belt_048 + + + + + @drawable/arrive_dest_001 + @drawable/arrive_dest_002 + @drawable/arrive_dest_003 + @drawable/arrive_dest_004 + @drawable/arrive_dest_005 + @drawable/arrive_dest_006 + @drawable/arrive_dest_007 + @drawable/arrive_dest_008 + @drawable/arrive_dest_009 + + @drawable/arrive_dest_010 + @drawable/arrive_dest_011 + @drawable/arrive_dest_012 + @drawable/arrive_dest_013 + @drawable/arrive_dest_014 + @drawable/arrive_dest_015 + @drawable/arrive_dest_016 + @drawable/arrive_dest_017 + @drawable/arrive_dest_018 + @drawable/arrive_dest_019 + + @drawable/arrive_dest_020 + @drawable/arrive_dest_021 + @drawable/arrive_dest_022 + @drawable/arrive_dest_023 + @drawable/arrive_dest_024 + @drawable/arrive_dest_025 + @drawable/arrive_dest_026 + @drawable/arrive_dest_027 + @drawable/arrive_dest_028 + @drawable/arrive_dest_029 + + + @drawable/arrive_dest_030 + @drawable/arrive_dest_031 + @drawable/arrive_dest_032 + @drawable/arrive_dest_033 + @drawable/arrive_dest_034 + @drawable/arrive_dest_035 + @drawable/arrive_dest_036 + @drawable/arrive_dest_037 + @drawable/arrive_dest_038 + @drawable/arrive_dest_039 + + @drawable/arrive_dest_040 + @drawable/arrive_dest_041 + @drawable/arrive_dest_042 + @drawable/arrive_dest_043 + @drawable/arrive_dest_044 + @drawable/arrive_dest_045 + @drawable/arrive_dest_046 + @drawable/arrive_dest_047 + @drawable/arrive_dest_048 + @drawable/arrive_dest_049 + + + @drawable/arrive_dest_050 + @drawable/arrive_dest_051 + @drawable/arrive_dest_052 + @drawable/arrive_dest_053 + @drawable/arrive_dest_054 + @drawable/arrive_dest_055 + @drawable/arrive_dest_056 + @drawable/arrive_dest_057 + @drawable/arrive_dest_058 + @drawable/arrive_dest_059 + + @drawable/arrive_dest_060 + + + + @drawable/check2startautopilt_000 + @drawable/check2startautopilt_001 + @drawable/check2startautopilt_002 + @drawable/check2startautopilt_003 + @drawable/check2startautopilt_004 + @drawable/check2startautopilt_005 + @drawable/check2startautopilt_006 + @drawable/check2startautopilt_007 + @drawable/check2startautopilt_008 + @drawable/check2startautopilt_009 + + @drawable/check2startautopilt_010 + @drawable/check2startautopilt_011 + @drawable/check2startautopilt_012 + @drawable/check2startautopilt_013 + @drawable/check2startautopilt_014 + @drawable/check2startautopilt_015 + @drawable/check2startautopilt_016 + @drawable/check2startautopilt_017 + @drawable/check2startautopilt_018 + @drawable/check2startautopilt_019 + + @drawable/check2startautopilt_020 + @drawable/check2startautopilt_021 + @drawable/check2startautopilt_022 + @drawable/check2startautopilt_023 + @drawable/check2startautopilt_024 + @drawable/check2startautopilt_025 + @drawable/check2startautopilt_026 + @drawable/check2startautopilt_027 + @drawable/check2startautopilt_028 + @drawable/check2startautopilt_029 + + + @drawable/check2startautopilt_030 + @drawable/check2startautopilt_031 + @drawable/check2startautopilt_032 + @drawable/check2startautopilt_033 + @drawable/check2startautopilt_034 + @drawable/check2startautopilt_035 + @drawable/check2startautopilt_036 + @drawable/check2startautopilt_037 + @drawable/check2startautopilt_038 + @drawable/check2startautopilt_039 + + @drawable/check2startautopilt_040 + @drawable/check2startautopilt_041 + @drawable/check2startautopilt_042 + @drawable/check2startautopilt_043 + @drawable/check2startautopilt_044 + @drawable/check2startautopilt_045 + @drawable/check2startautopilt_046 + @drawable/check2startautopilt_047 + @drawable/check2startautopilt_048 + + @drawable/check2startautopilt_050 + @drawable/check2startautopilt_051 + @drawable/check2startautopilt_052 + @drawable/check2startautopilt_053 + @drawable/check2startautopilt_054 + @drawable/check2startautopilt_055 + @drawable/check2startautopilt_056 + @drawable/check2startautopilt_057 + @drawable/check2startautopilt_058 + + @drawable/check2startautopilt_060 + + + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/values/colors.xml b/OCH/taxi/passenger/src/main/res/values/colors.xml index 3113897a4e..315208e607 100644 --- a/OCH/taxi/passenger/src/main/res/values/colors.xml +++ b/OCH/taxi/passenger/src/main/res/values/colors.xml @@ -1,61 +1,17 @@ - #FFFFFF - #707DBE - #8198E8 - #8198E8 - #8198E8 - #FFFFFF - #FF2B6EFF - #FF3B4577 - #80000000 - - #FFFFFF - #99FFFFFF - #FF52BBFF - - #1FC3FF - #57ABFF - - #FFFFA28B - #FFDA1100 - #FF60FFD3 - #FF006D43 - #FFFFE198 - #FFFF9B00 - - #80000000 - - #F8B70A - #C6D9FA - - #08000000 - #FE2505 - #FF6F62 - #CEEEFF - #A1DAFF - #84D4FF - - #00000000 - #FFFFC836 - #FF282F62 - #FFFFFF - #FFFFFF - #7020466F - #8039388E - #B630347D - #151937 + #FFFFA28B - #80141D45 - #4DFFFFFF - #FFFFFF + #FFFFC836 + #FF282F62 - #8FB3EF - #E1F3FE - #FFFFFF + #8039388E + #151937 + + #4DFFFFFF #111D2F #004DC4 @@ -65,16 +21,12 @@ #112B57 #66476FBE - #6edbdc - #56efa0 - #A7BDF3 #41444D - #0F5FFF + #0F5FFF #44C8FF #8AE4ED #C8F3F4 #282F62 - #121842 #242C65 #374968 #303C52 @@ -84,13 +36,25 @@ #76D7FF #255BAA #80F8FF - #2B364B + #A0B3DA #005D6A8C #5D6A8C #995D6A8C #B37E90BF + #464646 + #191E3C + #58C9FF + #477CFC + #378EFB + #876E788B + + #333333 + #373B46 + #80E5F0FF + #E6E5F0FF + #4D7985A7 \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/values/dimens.xml b/OCH/taxi/passenger/src/main/res/values/dimens.xml index 9619be8593..0d2c4cc409 100644 --- a/OCH/taxi/passenger/src/main/res/values/dimens.xml +++ b/OCH/taxi/passenger/src/main/res/values/dimens.xml @@ -1,123 +1,4 @@ - 40dp - 46dp - 24dp - 15dp - 15dp - 40dp - 50dp - 50dp - 70dp - 40dp - - 24dp - 300dp - 100dp - - 100dp - 100dp - - 35dp - - 15dp - 300dp - 270dp - - 30dp - 13dp - 12dp - 288dp - - 460dp - 30dp - 5dp - 20dp - 20dp - 20dp - 1dp - 20dp - 20dp - 20dp - 140dp - 20dp - 20dp - 17dp - 20dp - 26dp - 20dp - 20dp - 64dp - 3dp - 20dp - 20dp - 24dp - 17dp - 22.5dp - - 496dp - 560dp - 910dp - 800dp - 222dp - 1120dp - 162dp - 446dp - 400dp - 160dp - 432dp - 64dp - 616dp - 132dp - 300dp - 240dp - 400dp - 160dp - 280dp - 120dp - - 220dp - 420dp - 220dp - - 624dp - 984dp - - 225dp - 154dp - 60dp - 40dp - 23dp - 210dp - 120dp - 15dp - 17dp - 154dp - 130dp - 60dp - - 31dp - 110dp - 10dp - 70dp - 120dp - 39dp - 20dp - 30dp - - 82dp - 42dp - - 144dp - 32dp - 32dp - 36dp - 50dp - 34dp - 28dp - - 52dp - 520dp - 150dp \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/values/strings.xml b/OCH/taxi/passenger/src/main/res/values/strings.xml index 715cf4fee6..7154fd3468 100644 --- a/OCH/taxi/passenger/src/main/res/values/strings.xml +++ b/OCH/taxi/passenger/src/main/res/values/strings.xml @@ -1,36 +1,11 @@ - 确认上车,行程开始 - 到达站点,乘客已下车 - 已到达上车站点,等待乘客上车 - 预计里程 - 3.2 km - 请携带好随身物品,注意侧后\n方来车,感谢体验蘑菇智行自\n动驾驶车! - 即将到达目的地,请您携带好随身物品,安全下车。 - 送乘客至目的地 - 等待乘客上车 - 前往乘客上车地点 - 已到达乘客下车点 - 订单已完成 - 订单已取消 - 请选择取消订单的理由 - 出现异常情况时,可选择原因无责取消订单: - 确认 - 开始服务 - 服务完成 - 准备出发 - 正在前往目的地 - 即将到达目的地,请您收好好随声物品,准备下车 - 已达到目的地,请从右侧下车,感谢乘坐\'蘑菇车联\'自动驾驶车 - 已到达 - 感谢您使用蘑菇车联自动驾驶出行服务,期待下次与您相遇 欢迎体验MOGO自动驾驶出租车 Hello,您好 请输入手机号后4位: - 小蘑菇 - 删除 + 删除 点击开启 启动中... diff --git a/OCH/taxi/passenger/src/main/res/values/styles.xml b/OCH/taxi/passenger/src/main/res/values/styles.xml index 886f90766d..7a729ae56f 100644 --- a/OCH/taxi/passenger/src/main/res/values/styles.xml +++ b/OCH/taxi/passenger/src/main/res/values/styles.xml @@ -13,13 +13,13 @@ + \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/build.gradle b/OCH/taxi/unmanned-driver/build.gradle index 3a25a857ef..e7839f2dce 100644 --- a/OCH/taxi/unmanned-driver/build.gradle +++ b/OCH/taxi/unmanned-driver/build.gradle @@ -65,7 +65,7 @@ dependencies { annotationProcessor"android.arch.persistence.room:compiler:1.1.1" kapt"android.arch.persistence.room:compiler:1.1.1" - implementation project(":OCH:mogo-och-common-module") + implementation project(":OCH:common:common") compileOnly project(":libraries:mogo-map") } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/bean/TaxiDriverTaskWithOrderBean.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/bean/TaxiDriverTaskWithOrderBean.kt index cb3277ee99..890f662f38 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/bean/TaxiDriverTaskWithOrderBean.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/bean/TaxiDriverTaskWithOrderBean.kt @@ -255,6 +255,7 @@ data class TrajectoryListRespBean(var data: MutableList?) : BaseData() { data class Result( var lineId: Long, var lineName: String, + var source: Int, //轨迹来源:1 录制;2 自主计算 var csvFileUrl: String, var csvFileMd5: String, var txtFileUrl: String, diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiUnmannedConst.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiUnmannedConst.kt index 0e84fffa52..532662c104 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiUnmannedConst.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiUnmannedConst.kt @@ -63,6 +63,8 @@ class TaxiUnmannedConst { const val EVENT_PARAM_END_NAME = "end_name" const val EVENT_PARAM_LINE_ID = "line_id" const val EVENT_PARAM_ORDER_NUMBER = "order_num" + const val EVENT_PARAM_MAP_ORIGINAL_DATA = "map_original_data" // 域控原始状态信息 + const val EVENT_PARAM_AUTOPILOT_STATE = "autopilot_state" //原始的自动驾驶状态 const val EVENT_PARAM_START_RESULT = "start_autopilot" // true/false const val EVENT_PARAM_START_FAILURE_CODE = "start_autopilot_failure_code" // 启动自驾失败code const val EVENT_PARAM_START_FAILURE_MSG = "start_autopilot_failure_msg" // 启动自驾失败原因 diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceManager.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceManager.kt index 728c44e314..24428404ae 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceManager.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceManager.kt @@ -14,6 +14,7 @@ import com.mogo.cloud.passport.MoGoAiCloudClient import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory import com.mogo.eagle.core.network.utils.GsonUtil +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.biz.network.interceptor.transformTry @@ -45,7 +46,7 @@ object TaxiDriverLoginServiceManager { ) { mOCHTaxiServiceApi.getPhoneCode( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, TaxiLoginSmsReqBean(phone) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) @@ -69,10 +70,10 @@ object TaxiDriverLoginServiceManager { ) } Log.d("taxiUnmanned-request = " , GsonUtil.jsonFromObject(mOCHTaxiServiceApi)) - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn mOCHTaxiServiceApi.gotoLoginBycode4Taxi( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, + SharedPrefsMgr.getInstance().token, UnmannedLoginReqBean(phone, code, sn, unmannedLocation4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) } @@ -96,8 +97,8 @@ object TaxiDriverLoginServiceManager { mOCHTaxiServiceApi.logout4Taxi( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - UnmannedLogoutReqBean(MoGoAiCloudClientConfig.getInstance().sn, unmannedLocation4Login) + SharedPrefsMgr.getInstance().token, + UnmannedLogoutReqBean(SharedPrefsMgr.getInstance().sn, unmannedLocation4Login) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) } @@ -112,15 +113,15 @@ object TaxiDriverLoginServiceManager { context: Context, callback: OchCommonServiceCallback? ) { - if (MoGoAiCloudClientConfig.getInstance().token.isEmpty()) { + if (SharedPrefsMgr.getInstance().token.isEmpty()) { callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") MoGoAiCloudClient.getInstance().refreshToken() return } mOCHTaxiServiceApi.queryDriverServiceStatusAndLoginStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, - MoGoAiCloudClientConfig.getInstance().token, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().token, + SharedPrefsMgr.getInstance().sn ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiOperationalDataServiceApi.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiOperationalDataServiceApi.kt index cd5b817c7e..c8957592c4 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiOperationalDataServiceApi.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiOperationalDataServiceApi.kt @@ -1,6 +1,7 @@ package com.mogo.och.taxi.network import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseData import com.mogo.och.taxi.bean.QueryTaskRespBean import com.mogo.och.taxi.bean.QueryOrdersRespBean @@ -24,7 +25,7 @@ interface TaxiOperationalDataServiceApi { @GET("/och-taxi-cabin/api/business/v1/queryCurrentScheduledTaskList") fun queryCurrentScheduledTaskList( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("sn") sn: String? ): Observable @@ -34,7 +35,7 @@ interface TaxiOperationalDataServiceApi { @Headers("Content-type:application/json;charset=UTF-8") @GET("/och-taxi-cabin/api/business/v1/queryServingDuration") fun queryServingDuration(@Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("sn") sn: String? ):Observable @@ -45,7 +46,7 @@ interface TaxiOperationalDataServiceApi { @GET("/och-taxi-cabin/api/business/v1/queryTaskListByOrder") fun queryTaskListByOrder( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("orderNo")orderNo: String? ): Observable @@ -56,7 +57,7 @@ interface TaxiOperationalDataServiceApi { @GET("/och-taxi-cabin/api/business/v1/queryCurrentCompleteOrder") fun queryCurrentCompleteOrder( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("sn") sn: String? ): Observable @@ -67,7 +68,7 @@ interface TaxiOperationalDataServiceApi { @GET("/och-taxi-cabin/api/business/v1/queryCurrentDayOrder") fun queryCurrentDayOrder( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("sn") sn: String? ): Observable } \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiOperationalDataServiceManager.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiOperationalDataServiceManager.kt index c6cd8a9121..8f31813488 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiOperationalDataServiceManager.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiOperationalDataServiceManager.kt @@ -1,8 +1,7 @@ package com.mogo.och.taxi.network import android.content.Context -import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.eagle.core.data.BaseData +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.network.MoGoRetrofitFactory import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.biz.network.OchCommonServiceCallback @@ -30,7 +29,7 @@ object TaxiOperationalDataServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiOperationalDataServiceApi.queryCurrentScheduledTaskList( - sn = MoGoAiCloudClientConfig.getInstance().sn + sn = SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryCurrentScheduledTaskList")) @@ -43,7 +42,7 @@ object TaxiOperationalDataServiceManager { fun queryServingDuration(context: Context, callback: OchCommonServiceCallback?) { mOCHTaxiOperationalDataServiceApi.queryServingDuration( - sn = MoGoAiCloudClientConfig.getInstance().sn + sn = SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryServingDuration")) @@ -73,7 +72,7 @@ object TaxiOperationalDataServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiOperationalDataServiceApi.queryCurrentCompleteOrder( - sn = MoGoAiCloudClientConfig.getInstance().sn + sn = SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryCurrentCompleteOrder")) @@ -88,7 +87,7 @@ object TaxiOperationalDataServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiOperationalDataServiceApi.queryCurrentDayOrder( - sn = MoGoAiCloudClientConfig.getInstance().sn + sn = SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryCurrentDayOrder")) diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiRoutingServiceApi.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiRoutingServiceApi.kt index f1857459e4..0d751a973e 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiRoutingServiceApi.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiRoutingServiceApi.kt @@ -1,6 +1,7 @@ package com.mogo.och.taxi.network import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseData import com.mogo.och.taxi.bean.EndGrayContrailTaskReq import com.mogo.och.taxi.bean.QueryGrayContrailListRsp @@ -25,7 +26,7 @@ interface TaxiRoutingServiceApi { @GET("/och-taxi-cabin/api/business/v1/queryGrayContrailList") fun queryRoutingGrayLineList( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("sn") sn: String? ): Observable @@ -36,7 +37,7 @@ interface TaxiRoutingServiceApi { @POST("/och-taxi-cabin/api/business/v1/startGray") fun startGrayTask( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: StartGrayContrailTaskReq ): Observable @@ -47,7 +48,7 @@ interface TaxiRoutingServiceApi { @GET("/och-taxi-cabin/api/business/v1/gray/contrail") fun queryRoutingContrailById( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("id") contrailId: Long ): Observable @@ -58,7 +59,7 @@ interface TaxiRoutingServiceApi { @POST("/och-taxi-cabin/api/business/v1/saveDotDetail") fun submitGrayLineIssueLocation( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: SubmitGrayLineIssueLocationReq ): Observable @@ -69,7 +70,7 @@ interface TaxiRoutingServiceApi { @POST("/och-taxi-cabin/api/business/v1/endGray") fun endGrayTask( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: EndGrayContrailTaskReq ): Observable } \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiRoutingServiceManager.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiRoutingServiceManager.kt index aaa1b5c288..e12ac4a519 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiRoutingServiceManager.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiRoutingServiceManager.kt @@ -1,7 +1,7 @@ package com.mogo.och.taxi.network import android.content.Context -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory import com.mogo.och.common.module.biz.constant.OchCommonConst @@ -33,7 +33,7 @@ object TaxiRoutingServiceManager { callback: OchCommonServiceCallback ) { mRoutingServiceApi.queryRoutingGrayLineList( - sn = MoGoAiCloudClientConfig.getInstance().sn + sn = SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryRoutingGrayLineList")) diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiTaskWithOrderServiceApi.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiTaskWithOrderServiceApi.kt index cf3a4e1263..743f0b70fe 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiTaskWithOrderServiceApi.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiTaskWithOrderServiceApi.kt @@ -1,6 +1,7 @@ package com.mogo.och.taxi.network import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseData import com.mogo.och.taxi.bean.ArriveSiteReqBean import com.mogo.och.taxi.bean.CancelOrderReqBean @@ -38,7 +39,7 @@ interface TaxiTaskWithOrderServiceApi { @POST("/och-taxi-cabin/api/flow/v1/startService") fun startService( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: StartServiceReqBean? ): Observable @@ -49,7 +50,7 @@ interface TaxiTaskWithOrderServiceApi { @GET("/och-taxi-cabin/api/flow/v1/endService") fun endService( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("sn") sn: String? ): Observable @@ -59,7 +60,7 @@ interface TaxiTaskWithOrderServiceApi { @Headers("Content-type:application/json;charset=UTF-8") @GET("/och-taxi-cabin/api/flow/v1/queryCurrentTask") fun queryCurrentTask(@Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Query("sn") sn: String? ):Observable @@ -70,7 +71,7 @@ interface TaxiTaskWithOrderServiceApi { @POST("/och-taxi-cabin/api/flow/v1/startTask") fun startTask( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: StartTaskReqBean? ): Observable @@ -81,7 +82,7 @@ interface TaxiTaskWithOrderServiceApi { @POST("/och-taxi-cabin/api/flow/v1/arriveSite") fun arriveSite( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: ArriveSiteReqBean? ): Observable @@ -92,7 +93,7 @@ interface TaxiTaskWithOrderServiceApi { @POST("/och-taxi-cabin/api/flow/v1/prepareTask") fun prepareTask( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: PrepareTaskReqBean? ): Observable @@ -103,7 +104,7 @@ interface TaxiTaskWithOrderServiceApi { @POST("/och-taxi-cabin/api/flow/v1/orderCompleted") fun orderCompleted( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: OrderCompletedReqBean? ): Observable @@ -115,7 +116,7 @@ interface TaxiTaskWithOrderServiceApi { @POST("/och-taxi-cabin/api/flow/v1/cancelOrder") fun cancelOrder( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: CancelOrderReqBean? ): Observable @@ -126,7 +127,7 @@ interface TaxiTaskWithOrderServiceApi { @POST("/och-taxi-cabin/api/business/v1/contrail") fun queryTrajectoryByLindIds( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: Array ): Observable @@ -137,7 +138,7 @@ interface TaxiTaskWithOrderServiceApi { @POST("/och-taxi-cabin/api/flow/v1/ready/passenger") fun jumpPassengerCheck( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: JumpPassengerCheckReqBean? ): Observable @@ -145,7 +146,7 @@ interface TaxiTaskWithOrderServiceApi { @POST("/och-taxi-cabin/api/business/v1/queryCarOrder") fun queryCarOrderByOrderNo( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body data: QueryCarOrderByNoReqBean? ): Observable diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiTaskWithOrderServiceManager.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiTaskWithOrderServiceManager.kt index de9673a2a6..e2012628c4 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiTaskWithOrderServiceManager.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiTaskWithOrderServiceManager.kt @@ -1,7 +1,7 @@ package com.mogo.och.taxi.network import android.content.Context -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.network.MoGoRetrofitFactory import com.mogo.och.common.module.biz.constant.OchCommonConst @@ -41,7 +41,7 @@ object TaxiTaskWithOrderServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiServiceApi.startService( - data = StartServiceReqBean(MoGoAiCloudClientConfig.getInstance().sn, gcjLat, gcjLon) + data = StartServiceReqBean(SharedPrefsMgr.getInstance().sn, gcjLat, gcjLon) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "startService")) } @@ -52,7 +52,7 @@ object TaxiTaskWithOrderServiceManager { @JvmStatic fun endService(context: Context, callback: OchCommonServiceCallback?) { mOCHTaxiServiceApi.endService( - sn = MoGoAiCloudClientConfig.getInstance().sn + sn = SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "endService")) @@ -67,7 +67,7 @@ object TaxiTaskWithOrderServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiServiceApi.queryCurrentTask( - sn = MoGoAiCloudClientConfig.getInstance().sn + sn = SharedPrefsMgr.getInstance().sn ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryCurrentTask")) @@ -82,7 +82,7 @@ object TaxiTaskWithOrderServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiServiceApi.startTask( - data = StartTaskReqBean(MoGoAiCloudClientConfig.getInstance().sn, lineId) + data = StartTaskReqBean(SharedPrefsMgr.getInstance().sn, lineId) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "startTask")) } @@ -96,7 +96,7 @@ object TaxiTaskWithOrderServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiServiceApi.arriveSite( - data = ArriveSiteReqBean(MoGoAiCloudClientConfig.getInstance().sn, siteId) + data = ArriveSiteReqBean(SharedPrefsMgr.getInstance().sn, siteId) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "arriveSite")) } @@ -110,7 +110,7 @@ object TaxiTaskWithOrderServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiServiceApi.prepareTask( - data = PrepareTaskReqBean(MoGoAiCloudClientConfig.getInstance().sn, siteId) + data = PrepareTaskReqBean(SharedPrefsMgr.getInstance().sn, siteId) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "prepareTask")) } @@ -124,7 +124,7 @@ object TaxiTaskWithOrderServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiServiceApi.jumpPassengerCheck( - data = JumpPassengerCheckReqBean(MoGoAiCloudClientConfig.getInstance().sn, orderNo) + data = JumpPassengerCheckReqBean(SharedPrefsMgr.getInstance().sn, orderNo) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "jumpPassengerCheck")) } @@ -138,7 +138,7 @@ object TaxiTaskWithOrderServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiServiceApi.queryCarOrderByOrderNo( - data = QueryCarOrderByNoReqBean(MoGoAiCloudClientConfig.getInstance().sn, orderNo) + data = QueryCarOrderByNoReqBean(SharedPrefsMgr.getInstance().sn, orderNo) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryCarOrderByOrderNo")) } @@ -152,7 +152,7 @@ object TaxiTaskWithOrderServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiServiceApi.orderCompleted( - data = OrderCompletedReqBean(MoGoAiCloudClientConfig.getInstance().sn, orderNo) + data = OrderCompletedReqBean(SharedPrefsMgr.getInstance().sn, orderNo) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "orderCompleted")) } @@ -166,7 +166,7 @@ object TaxiTaskWithOrderServiceManager { callback: OchCommonServiceCallback? ) { mOCHTaxiServiceApi.cancelOrder( - data = CancelOrderReqBean(MoGoAiCloudClientConfig.getInstance().sn, orderNo, cancelType) + data = CancelOrderReqBean(SharedPrefsMgr.getInstance().sn, orderNo, cancelType) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "cancelOrder")) } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingModel.kt index 6caa2cce08..f4d58857aa 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingModel.kt @@ -2,8 +2,8 @@ package com.mogo.och.taxi.ui.routing import android.content.Context import android.text.TextUtils -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.AbsMogoApplication +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters import com.mogo.eagle.core.data.config.FunctionBuildConfig @@ -205,7 +205,7 @@ object TaxiRoutingModel { } fun queryRoutingGrayLineList() { - DebugView.printInfoMsg("[查询灰度路线] 准备发送请求,sn=${MoGoAiCloudClientConfig.getInstance().sn}") + DebugView.printInfoMsg("[查询灰度路线] 准备发送请求,sn=${SharedPrefsMgr.getInstance().sn}") TaxiRoutingServiceManager.queryRoutingGrayLineList(mContext, object : OchCommonServiceCallback { override fun onSuccess(data: QueryGrayContrailListRsp) { @@ -229,7 +229,7 @@ object TaxiRoutingModel { TAG, "queryRoutingGrayLineList onFail: code=$code, msg=$msg" ) - DebugView.printErrorMsg("[查询灰度路线] 请求fail, code=$code, msg=$msg, sn=${MoGoAiCloudClientConfig.getInstance().sn}") + DebugView.printErrorMsg("[查询灰度路线] 请求fail, code=$code, msg=$msg, sn=${SharedPrefsMgr.getInstance().sn}") ToastUtils.showShort("查询灰度线路列表异常, 请稍后重试, code=$code") mTaxiRoutingCallbackMap.forEach { val listener = it.value @@ -249,7 +249,7 @@ object TaxiRoutingModel { } CallerLogger.d( TAG, - "queryRoutingGrayLineList onError, msg=$hintStr, sn=${MoGoAiCloudClientConfig.getInstance().sn}" + "queryRoutingGrayLineList onError, msg=$hintStr, sn=${SharedPrefsMgr.getInstance().sn}" ) DebugView.printErrorMsg("[查询灰度路线] 请求error, msg=$hintStr") mTaxiRoutingCallbackMap.forEach { @@ -264,7 +264,7 @@ object TaxiRoutingModel { DebugView.printInfoMsg("[开始灰度任务&查询轨迹详情] 准备发送请求,contrailId=${contrailId}, lineId=${grayLineBean.lineId}") TaxiRoutingServiceManager.startGrayTaskAndQueryRoutingContrail( mContext, - sn = MoGoAiCloudClientConfig.getInstance().sn, + sn = SharedPrefsMgr.getInstance().sn, contrailId = contrailId, grayLineBean = grayLineBean, object : OchCommonServiceCallback { diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiCurrentTaskFragment.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiCurrentTaskFragment.kt index cb1e31f4b8..f7aa4113b9 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiCurrentTaskFragment.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiCurrentTaskFragment.kt @@ -16,6 +16,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02 import com.mogo.eagle.core.function.main.MainMoGoApplication import com.mogo.eagle.core.network.utils.GsonUtil +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.i import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_TAXI @@ -56,6 +57,7 @@ import kotlinx.android.synthetic.main.task_fragment_current.taskClickBtn import kotlinx.android.synthetic.main.task_fragment_current.taskOtherInfo import kotlinx.android.synthetic.main.task_fragment_current.taskStatus import kotlinx.android.synthetic.main.task_fragment_current.taskTypeTv +import kotlinx.android.synthetic.main.task_fragment_current.trajectoryType import kotlinx.android.synthetic.main.taxi_no_data_common_view.noOrderDataTv import kotlinx.android.synthetic.main.taxi_no_data_common_view.prepareTaskCountdownTv import kotlinx.coroutines.flow.map @@ -67,12 +69,7 @@ import kotlinx.coroutines.flow.map class TaxiCurrentTaskFragment : BaseFragment(), View.OnClickListener, ICommonNaviChangedCallback { - private val mViewModel: TaxiCurrentTaskViewModel by lazy { - ViewModelProvider( - this, - ViewModelProvider.NewInstanceFactory() - )[TaxiCurrentTaskViewModel::class.java] - } + private lateinit var mViewModel: TaxiCurrentTaskViewModel private var mPrepareTasCountDownTimer: CountDownTimer? = null @@ -95,6 +92,14 @@ class TaxiCurrentTaskFragment : BaseFragment(), return this.javaClass.simpleName } + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + mViewModel = ViewModelProvider( + this, + ViewModelProvider.NewInstanceFactory() + )[TaxiCurrentTaskViewModel::class.java] + } + override fun initViews() { initOnClickListener() initContainerView(false) @@ -307,7 +312,11 @@ class TaxiCurrentTaskFragment : BaseFragment(), } fun onCarTakeOrderStatusChanged() { - mViewModel.sendUiIntent(TaskUiIntent.StartOrEndTakeOrder) + if (this::mViewModel.isInitialized) { + mViewModel.sendUiIntent(TaskUiIntent.StartOrEndTakeOrder) + } else { + CallerLogger.e(TAG, "onCarTakeOrderStatusChanged: mViewModel is not Initialized") + } } /** @@ -491,6 +500,11 @@ class TaxiCurrentTaskFragment : BaseFragment(), taskTypeTv.text = resources.getString(R.string.task_exercise) startStationName.text = startSite.siteName endStationName.text = endSite.siteName + TaxiTaskModel.getCurrentOrderTrajectoryList().also { + val taskTrajectory = it.firstOrNull {taskAndOrder.lineId == it.lineId} + trajectoryType.visibility = if (taskTrajectory?.source == 2) + View.VISIBLE else View.GONE + } updatePrepareTaskDelayUI(0, false) updateStartAndEndStationPointByStatus(true) } @@ -526,6 +540,11 @@ class TaxiCurrentTaskFragment : BaseFragment(), ) startStationName.text = order.orderStartSite?.siteName endStationName.text = order.orderEndSite?.siteName + TaxiTaskModel.getCurrentOrderTrajectoryList().also { + val orderTrajectory = it.firstOrNull {order.orderLine == it.lineId} + trajectoryType.visibility = if (orderTrajectory?.source == 2) + View.VISIBLE else View.GONE + } when (order.orderStatus) { TaxiOrderStatusEnum.None.code -> { //无 diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.java b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.java index a6945fde00..4ea89fb536 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.java +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.java @@ -3,8 +3,8 @@ package com.mogo.och.taxi.utils; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; import android.text.TextUtils; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.commons.debug.DebugConfig; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.data.app.AppConfigInfo; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.commons.utils.MogoAnalyticUtils; @@ -12,6 +12,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.DateTimeUtils; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; +import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; import com.mogo.och.taxi.constant.TaxiUnmannedConst; import java.util.HashMap; @@ -62,6 +63,10 @@ public class TaxiAnalyticsManager { mStartAutopilotParams.put(TaxiUnmannedConst.EVENT_PARAM_START_FAILURE_MSG, failMsg); } + mStartAutopilotParams.put(TaxiUnmannedConst.EVENT_PARAM_MAP_ORIGINAL_DATA, + OCHAdasAbilityManager.getInstance().getOriginalData()); + mStartAutopilotParams.put(TaxiUnmannedConst.EVENT_PARAM_AUTOPILOT_STATE, + CallerAutoPilotStatusListenerManager.INSTANCE.getState()); mStartAutopilotParams.put(TaxiUnmannedConst.EVENT_PARAM_START_RESULT, CallerAutoPilotStatusListenerManager.INSTANCE.getState() == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING); @@ -89,7 +94,7 @@ public class TaxiAnalyticsManager { boolean restart, boolean send, String startName, String endName, long lineId, String orderNo) { mStartAutopilotKey = restart ? TaxiUnmannedConst.EVENT_KEY_RESTART_AUTOPILOT : TaxiUnmannedConst.EVENT_KEY_START_SERVICE; - String sn = MoGoAiCloudClientConfig.getInstance().getSn(); + String sn = SharedPrefsMgr.getInstance().getSn(); String plateNum = AppConfigInfo.INSTANCE.getPlateNumber(); String dateTime = DateTimeUtils.getTimeText( System.currentTimeMillis(), DateTimeUtils.yyyy_MM_dd_HH_mm_ss); @@ -128,7 +133,7 @@ public class TaxiAnalyticsManager { */ public void triggerUnableStartAPReasonEvent(String startName, String endName, String orderNo, String reason) { - String sn = MoGoAiCloudClientConfig.getInstance().getSn(); + String sn = SharedPrefsMgr.getInstance().getSn(); String plateNum = AppConfigInfo.INSTANCE.getPlateNumber(); String dateTime = DateTimeUtils.getTimeText( System.currentTimeMillis(), DateTimeUtils.yyyy_MM_dd_HH_mm_ss); diff --git a/OCH/taxi/unmanned-driver/src/main/res/drawable-xhdpi/taxi_driver_trajectory_type_auto.png b/OCH/taxi/unmanned-driver/src/main/res/drawable-xhdpi/taxi_driver_trajectory_type_auto.png new file mode 100644 index 0000000000..785e502f66 Binary files /dev/null and b/OCH/taxi/unmanned-driver/src/main/res/drawable-xhdpi/taxi_driver_trajectory_type_auto.png differ diff --git a/OCH/taxi/unmanned-driver/src/main/res/layout/task_fragment_current.xml b/OCH/taxi/unmanned-driver/src/main/res/layout/task_fragment_current.xml index d04c41a874..fa49fb742c 100644 --- a/OCH/taxi/unmanned-driver/src/main/res/layout/task_fragment_current.xml +++ b/OCH/taxi/unmanned-driver/src/main/res/layout/task_fragment_current.xml @@ -138,8 +138,9 @@ + @@ -42,7 +43,7 @@ internal interface TaxiPassengerServiceApi { @POST("/och-taxi-cabin/api/business/v1/contrail") fun getTrajectoryInfoByLineIds( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token, @Body lineIds: List ):Observable @@ -56,7 +57,7 @@ internal interface TaxiPassengerServiceApi { @POST("/och-taxi-cabin/api/business/v1/queryCarOrder") fun queryOrderById( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Body data: TaxiPassengerOrderQueryReqBean ): Observable @@ -69,7 +70,7 @@ internal interface TaxiPassengerServiceApi { @POST("/och-taxi-cabin/api/flow/v1/verification/phone") fun checkPhoneAndUpdateOrderStatus( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String=MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String=SharedPrefsMgr.getInstance().token, @Body data: TaxiPassengerCheckPhoneUpdateOrderReqBean? ): Observable @@ -84,7 +85,7 @@ internal interface TaxiPassengerServiceApi { @POST("/och-taxi-cabin/api/flow/v1/startTask") fun startAutoPilotServiceByPassenger( @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, - @Header("ticket") ticket: String= MoGoAiCloudClientConfig.getInstance().token, + @Header("ticket") ticket: String= SharedPrefsMgr.getInstance().token, @Body data: TaxiPassengerStartReqBean ): Observable } \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.kt index c2e5e832e6..693f6340d6 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.kt @@ -63,64 +63,59 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) : when (TaxiPassengerModel.curOrderStatus) { TaxiPassengerOrderStatusEnum.OnTheWayToStart -> { // 10 接驾中 - mView?.showOrHideStartAutopilotView(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) + mView?.showOrHideCheckAndStartAutopilotView(2) + mView?.showOrHideArrivedEndLayout(isShow = false) overMapViewClear() } TaxiPassengerOrderStatusEnum.ArriveAtStart -> { // 20 司机到达上车点 - mView?.showOrHideArrivedEndLayout(isShow = false) - mView?.showOrHidePressengerCheckPager(true) - mView?.showOrHideStartAutopilotView(isShow = false) + mView?.showOrHideCheckAndStartAutopilotView(0) overMapViewClear() } TaxiPassengerOrderStatusEnum.UserArriveAtStart -> { // 30 乘客到达上车点 - mView?.showOrHideArrivedEndLayout(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) - mView?.showOrHideStartAutopilotView(isShow = true) + mView?.showOrHideCheckAndStartAutopilotView(1) overMapViewClear() } TaxiPassengerOrderStatusEnum.OnTheWayToEnd -> { // 服务中(去往目的地) mView?.showOrHideArrivedEndLayout(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) - mView?.showOrHideStartAutopilotView(isShow = false) + + mView?.showOrHideCheckAndStartAutopilotView(2) + mView?.tipXiaoZhi() overMapViewShow() } TaxiPassengerOrderStatusEnum.ArriveAtEnd -> { // 50 到达终点 乘客可以评价 mView?.showOrHideArrivedEndLayout(true) - mView?.showOrHidePressengerCheckPager(isShow = false) - mView?.showOrHideStartAutopilotView(isShow = false) overMapViewClear() } TaxiPassengerOrderStatusEnum.JourneyCompleted -> { // 60 行程完成 - mView?.showOrHideStartAutopilotView(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) + mView?.showOrHideCheckAndStartAutopilotView(2) + mView?.showOrHideArrivedEndLayout(false) overMapViewClear() } TaxiPassengerOrderStatusEnum.Cancel -> { // 70 取消订单 - mView?.showOrHideStartAutopilotView(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) + mView?.showOrHideCheckAndStartAutopilotView(2) + mView?.showOrHideArrivedEndLayout(isShow = false) overMapViewClear() } TaxiPassengerOrderStatusEnum.None -> { // 00 默认状态,在不同任务之间切换时使用 - mView?.showOrHideStartAutopilotView(isShow = false) - mView?.showOrHidePressengerCheckPager(isShow = false) + mView?.showOrHideCheckAndStartAutopilotView(2) + mView?.showOrHideArrivedEndLayout(isShow = false) overMapViewClear() } diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java index 97c9108e3a..8104aaee3d 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java @@ -19,15 +19,15 @@ import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView; @Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER ) public class StatusViewManager implements IStatusViewLayout { - + private StatusBarView statusBarView; @NonNull @Override public View getStatusView(Context context) { - return new StatusBarView(context); + return statusBarView; } @Override public void init(Context context) { - + statusBarView = new StatusBarView(context); } } diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt index f746767108..71d1752033 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.kt @@ -1,29 +1,46 @@ package com.mogo.och.taxi.passenger.ui +import android.animation.Animator +import android.animation.AnimatorSet +import android.animation.ObjectAnimator +import android.annotation.SuppressLint import android.os.Bundle import android.view.View +import com.alibaba.android.arouter.launcher.ARouter import com.mogo.commons.mvp.MvpFragment import com.mogo.commons.voice.AIAssist +import com.mogo.eagle.core.data.constants.MogoServicePaths +import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout import com.mogo.eagle.core.function.call.hmi.CallerHmiManager -import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_TAXI_P import com.mogo.eagle.core.utilcode.util.DeviceUtils -import com.mogo.eagle.core.utilcode.util.OverlayViewUtils import com.mogo.map.listener.IMogoMapListener -import com.mogo.map.uicontroller.VisualAngleMode -import com.mogo.och.common.module.utils.FrameAnimatorContainer import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.taxi.passenger.R import com.mogo.och.taxi.passenger.presenter.BaseTaxiPassengerPresenter import com.mogo.och.taxi.passenger.ui.arrived.ArrivedView import com.mogo.och.taxi.passenger.ui.bottom.BottomBar -import com.mogo.och.taxi.passenger.ui.check.TaxiPassengerCheckView -import com.mogo.och.taxi.passenger.ui.startautopilot.StartAutopilotView -import kotlinx.android.synthetic.main.taxi_p_base_fragment.* -import java.lang.ref.WeakReference +import com.mogo.och.taxi.passenger.ui.checkstartautopilot.ChekAndStartAutopilotView +import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView +import io.reactivex.disposables.Disposable +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.aciv_xiaozhi_normal +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.arrivedView +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.bottom +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.chekAndStartAutopilotView +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.ck_setting +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.clSettingView +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.infoVideoView +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.itinerary +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.mapBizView +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.overMapView +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.pcnActionView +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.romaDistanceView +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.romaPView +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.rv_location_center +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.speedView /** * 网约车基础Fragment,主要负责布局通用界面,处理站点面板和通话面板互斥情况 @@ -37,25 +54,13 @@ class TaxiPassengerBaseFragment() : MvpFragment(), IMogoMapListener, TaxiPassengerTaxiView { - /** - * 到达目的地 - */ - private var mArrivedEndView: WeakReference? = null + private var tipXiaoZhiDelay: Disposable?=null - /** - * 手机号后四位验证 - */ - private var mArrivedCheckView: WeakReference? = null + private var statusBarView: StatusBarView? = null - /** - * 启动自驾页面 - */ - private var mStartAutopilotView: WeakReference? = null - - private var createProgressDialogAnim: FrameAnimatorContainer?=null override fun getLayoutId(): Int { - return R.layout.taxi_p_base_fragment + return R.layout.taxt_u_p_base_fragment } override fun getTagName(): String { @@ -72,12 +77,14 @@ class TaxiPassengerBaseFragment() : overMapView.onCreateView(savedInstanceState) overMapView.hideResetView() -// createProgressDialogAnim = FrameAnimatorContainer(R.array.xiaozhi_normal, 20,aciv_xiaozhi_normal) -// createProgressDialogAnim?.setOnAnimStopListener(object : FrameAnimatorContainer.OnAnimationStoppedListener{ -// override fun AnimationStopped() { -// CallerLogger.d(M_TAXI_P + TAG, "动画暂停") -// } -// }) + (ARouter.getInstance().build(MogoServicePaths.PATH_STATUS_VIEW_MANAGER) + .navigation() as? IStatusViewLayout)?.apply { + val statusView = getStatusView(requireContext()) + if (statusView is StatusBarView) { + statusBarView = statusView + } + } + } private fun initListener() { @@ -92,6 +99,7 @@ class TaxiPassengerBaseFragment() : overMapView.visibility = View.GONE mapBizView.visibility = View.VISIBLE presenter?.setItineraryVisibility() + speedView.visibility = View.VISIBLE ck_setting.visibility = View.VISIBLE if (DeviceUtils.isLenovoModel() || DeviceUtils.isEB5Model()) { romaPView.updateVisible(true) @@ -110,6 +118,7 @@ class TaxiPassengerBaseFragment() : overMapView.visibility = View.VISIBLE mapBizView.visibility = View.GONE presenter?.setItineraryVisibility() + speedView.visibility = View.VISIBLE ck_setting.visibility = View.VISIBLE romaPView.updateVisible(false) romaDistanceView.visibility = View.GONE @@ -123,6 +132,7 @@ class TaxiPassengerBaseFragment() : overMapView.visibility = View.GONE mapBizView.visibility = View.GONE presenter?.setItineraryVisibility() + speedView.visibility = View.GONE ck_setting.visibility = View.GONE ck_setting.isChecked = false romaPView.updateVisible(false) @@ -143,12 +153,8 @@ class TaxiPassengerBaseFragment() : rv_location_center.onClick { when (bottom.getCurrentPage()) { BottomBar.SelectView.PRECISIONMAP -> { - val controller = CallerMapUIServiceManager.getMapUIController() - if (controller != null) { - //切换到地图中间 - controller.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null) - // 切换缩放到中视角 - controller.changeZoom2(0.8f) + mapBizView.getUI()?.let { + it.changeMapVisualAngle(it.getVrAngleDefaultMode(), null) } } BottomBar.SelectView.OVERMAPVIEW -> { @@ -159,13 +165,33 @@ class TaxiPassengerBaseFragment() : } } + arrivedView.arrivedVisilityChangeListenr = object :ArrivedView.ArrivedVisilityChangeListenr{ + override fun isShow(show: Boolean) { + CallerLogger.d(M_TAXI_P + TAG, "arrived ${show}") + if(arrivedView.visibility==View.GONE&&chekAndStartAutopilotView.visibility==View.GONE){ + showOrHide(true) + aciv_xiaozhi_normal.setZhiEnable(true) + }else{ + aciv_xiaozhi_normal.setZhiEnable(false) + } + } + } + chekAndStartAutopilotView.checkAndStartVisilityChangeListenr = object :ChekAndStartAutopilotView.CheckAndStartVisilityChangeListenr{ + override fun isShow(show: Boolean) { + CallerLogger.d(M_TAXI_P + TAG, "check and startAutopilot ${show}") + if(arrivedView.visibility==View.GONE&&chekAndStartAutopilotView.visibility==View.GONE){ + showOrHide(true) + aciv_xiaozhi_normal.setZhiEnable(true) + }else{ + aciv_xiaozhi_normal.setZhiEnable(false) + } + } + } view?.viewTreeObserver?.addOnWindowFocusChangeListener { if(it){ CallerLogger.d(M_TAXI_P + TAG, "windows获取焦点") - createProgressDialogAnim?.start() }else{ CallerLogger.d(M_TAXI_P + TAG, "window失去焦点") - createProgressDialogAnim?.stop() } } } @@ -175,8 +201,6 @@ class TaxiPassengerBaseFragment() : mapBizView!!.onResume() overMapView.onResume() CallerLogger.d(M_TAXI_P + TAG, "onResume") - - createProgressDialogAnim?.start() } override fun createPresenter(): BaseTaxiPassengerPresenter { @@ -198,7 +222,6 @@ class TaxiPassengerBaseFragment() : mapBizView!!.onPause() overMapView?.onPause() CallerLogger.d(M_TAXI_P + TAG, "onPause") - createProgressDialogAnim?.stop() } override fun onDestroyView() { @@ -235,34 +258,7 @@ class TaxiPassengerBaseFragment() : fun setOverMapDebug(){ overMapView.setDebugMode(true) - } - - /** - * 显示或者隐藏乘客可点击自动驾驶页面 - * 乘客验证成功,页面显示,按钮置于不可点击 - * 司机端确认可点击开启自动驾驶, 按钮置为可点击 - * 订单前往目的地,页面消失 - * - * @param isShow - */ - fun showOrHideStartAutopilotView(isShow: Boolean) { - if (isShow) { - exitFullVideoScreen(false) - if (mStartAutopilotView == null || mStartAutopilotView!!.get() == null) { - mStartAutopilotView = WeakReference(StartAutopilotView(requireContext())) - } - mStartAutopilotView?.get()?.let { - OverlayViewUtils.showOverlayView(activity, it) - } - } else { - mStartAutopilotView?.get()?.let { - OverlayViewUtils.dismissOverlayView(it) - RxUtils.createSubscribe(30_000) { - VoiceNotice.showNotice("想和我对话的时候可以直接戳我,也可以对我说\\'你好小智\\'!", AIAssist.LEVEL2) - } - } - mStartAutopilotView = null - } + showOrHide(true) } /** @@ -275,25 +271,58 @@ class TaxiPassengerBaseFragment() : * @param isShow true 展示 false 隐藏 */ fun showOrHideArrivedEndLayout(isShow: Boolean) { + chekAndStartAutopilotView.visibility = View.GONE if (isShow) { exitFullVideoScreen(true) - if (mArrivedEndView == null || mArrivedEndView!!.get() == null) { - mArrivedEndView = WeakReference(ArrivedView(context)) - } - mArrivedEndView?.get()?.let { - OverlayViewUtils.showOverlayView(activity, it, R.style.och_window_anim_alpha) - RxUtils.createSubscribe(500) { - it.setDataAndStartAnimation() - VoiceNotice.showNotice("已到达目的地,带好随身物品,右侧下车更安全!期待下次再见", AIAssist.LEVEL2) - } + arrivedView.aniArrived(true) + showOrHide(false) + RxUtils.createSubscribe(500) { + arrivedView.setDataAndStartAnimation() + VoiceNotice.showNotice("已到达目的地,带好随身物品,右侧下车更安全!期待下次再见", AIAssist.LEVEL2) } } else { - mArrivedEndView?.get()?.let { - OverlayViewUtils.dismissOverlayView(it) + if(arrivedView.visibility!=View.GONE) { + showOrHide(true) + arrivedView.aniArrived(false) } } } + fun showOrHideCheckAndStartAutopilotView(status:Int){ + arrivedView.visibility = View.GONE + when (status) { + 0 -> { + if(chekAndStartAutopilotView.visibility == View.GONE){ + showOrHide(false) + } + chekAndStartAutopilotView.aniCheckAndStartAutopilot(true,0) + } + 1 -> { + if(chekAndStartAutopilotView.visibility == View.GONE){ + showOrHide(false) + } + chekAndStartAutopilotView.aniCheckAndStartAutopilot(true,1) + } + 2 -> { + chekAndStartAutopilotView.aniCheckAndStartAutopilot(false,2) + chekAndStartAutopilotView.resetCheckView() + } + else -> {} + } + } + + fun tipXiaoZhi(){ + RxUtils.disposeSubscribe(tipXiaoZhiDelay) + tipXiaoZhiDelay = RxUtils.createSubscribe(30_000) { + VoiceNotice.showNotice( + "想和我对话的时候可以直接戳我,也可以对我说\\'你好小智\\'!", + AIAssist.LEVEL2 + ) + } + } + + + private fun exitFullVideoScreen(resetVideoPlayer: Boolean) { infoVideoView.exitFullScreenMode(resetVideoPlayer) } @@ -304,37 +333,141 @@ class TaxiPassengerBaseFragment() : overMapView?.clearCustomPolyline() } - /** - * ① 取消订单 到达上车点后乘客取消订单 隐藏乘客验证页面 - * ② 司机到达上车点 到达上车点 展示乘客验证页面 - * ③ 乘客到达上车点 手机号验证成功后 隐藏乘客验证页面 - * ④ debug 使用 - */ - fun showOrHidePressengerCheckPager( - isShow: Boolean, - ) { - try { - if (isShow) { - exitFullVideoScreen(false) - if (mArrivedCheckView == null || mArrivedCheckView!!.get() == null) { - mArrivedCheckView = WeakReference(TaxiPassengerCheckView(context)) - } - OverlayViewUtils.showOverlayView(activity, mArrivedCheckView!!.get()) - } else { - if (mArrivedCheckView == null || mArrivedCheckView!!.get() == null) { - return - } - OverlayViewUtils.dismissOverlayView(mArrivedCheckView!!.get()) - } - } catch (e: Exception) { - e.printStackTrace() - } - } - fun showOverMapView() { bottom.setCheckIndex(BottomBar.SelectView.OVERMAPVIEW) } + private fun showOrHide(isShow: Boolean){ + val animatorSet = AnimatorSet() + val allAnimator = mutableListOf() + allAnimator.addAll(aniStatusBar(isShow)) + allAnimator.addAll(aniBottomBar(isShow)) + + allAnimator.addAll(aniSpeedSettingRow(isShow,speedView)) + allAnimator.addAll(aniSpeedSettingRow(isShow,romaPView)) + allAnimator.addAll(aniSpeedSettingRow(isShow,romaDistanceView)) + allAnimator.addAll(aniSpeedSettingRow(isShow,ck_setting)) + + allAnimator.addAll(aniOrderInfo(isShow)) + animatorSet.playTogether(allAnimator) + animatorSet.start() + } + + @SuppressLint("ObjectAnimatorBinding") + fun aniStatusBar(show:Boolean):List{ + val statusBar = mutableListOf() + val translationYStart: Float + val translationYEnd: Float + val alphaStart: Float + val alphaEnd: Float + if(show){ + translationYStart = -statusBarView!!.height.toFloat() + translationYEnd = 0f + alphaStart = 0.3f + alphaEnd = 1f + }else{ + translationYStart = 0f + translationYEnd = -statusBarView!!.height.toFloat() + alphaStart = 1f + alphaEnd = 0.3f + } + statusBar.add(ObjectAnimator.ofFloat(statusBarView, "translationY", translationYStart, translationYEnd).apply { + duration = 1000 + }) + //ofFloatMove.duration = 1000 + statusBar.add( ObjectAnimator.ofFloat(statusBarView, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }) + return statusBar + } + + private fun aniBottomBar(show:Boolean):List{ + val statusBar = mutableListOf() + val translationYStart: Float + val translationYEnd: Float + val alphaStart: Float + val alphaEnd: Float + if(show){ + translationYStart = bottom!!.height.toFloat() + translationYEnd = 0f + alphaStart = 0.3f + alphaEnd = 1f + }else{ + translationYStart = 0f + translationYEnd = bottom!!.height.toFloat() + alphaStart = 1f + alphaEnd = 0.3f + } + + statusBar.add(ObjectAnimator.ofFloat(bottom, "translationY", translationYStart, translationYEnd).apply { + duration = 1000 + }) + statusBar.add(ObjectAnimator.ofFloat(bottom, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }) + return statusBar + } + + private fun aniSpeedSettingRow(show:Boolean,view:View):List{ + val statusBar = mutableListOf() + val translationYStart: Float + val translationYEnd: Float + val alphaStart: Float + val alphaEnd: Float + if(show){ + translationYStart = -view.height.toFloat() + translationYEnd = 0f + alphaStart = 0.0f + alphaEnd = 1f + }else{ + translationYStart = 0f + translationYEnd = -view.height.toFloat() + alphaStart = 1f + alphaEnd = 0.0f + } + + statusBar.add(ObjectAnimator.ofFloat(view, "translationY", translationYStart, translationYEnd).apply { + duration = 1000 + }) + statusBar.add(ObjectAnimator.ofFloat(view, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }) + return statusBar + } + private fun aniOrderInfo(show:Boolean):List{ + val statusBar = mutableListOf() + val translationYStart: Float + val translationYEnd: Float + val alphaStart: Float + val alphaEnd: Float + if(show){ + translationYStart = itinerary.height.toFloat()/5 + translationYEnd = 0f + alphaStart = 0.0f + alphaEnd = 1f + }else{ + translationYStart = 0f + translationYEnd = itinerary.height.toFloat()/5 + alphaStart = 1f + alphaEnd = 0.0f + } + + statusBar.add(ObjectAnimator.ofFloat(itinerary, "translationY", translationYStart, translationYEnd).apply { + duration = 1000 + }) + statusBar.add(ObjectAnimator.ofFloat(itinerary, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }) + return statusBar + } + + + fun preLoadArrivedImages() { + arrivedView.preLoadImages() + } + + + companion object { @JvmField val TAG = "TaxiPassengerBaseFragment" diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedView.kt index 96f1b8918a..4ecf8eac00 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedView.kt @@ -1,28 +1,29 @@ package com.mogo.och.taxi.passenger.ui.arrived +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.AnimatorSet +import android.animation.ObjectAnimator import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater +import android.view.View import androidx.lifecycle.ViewModelProvider -import com.mogo.commons.AbsMogoApplication import com.mogo.eagle.core.utilcode.kotlin.onClick +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.util.OverlayViewUtils -import com.mogo.och.common.module.utils.FrameAnimatorContainer +import com.mogo.och.common.module.utils.BigFrameAnimatorContainer import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.taxi.passenger.R +import com.mogo.och.taxi.passenger.ui.TaxiPassengerBaseFragment import com.mogo.och.taxi.passenger.widget.WindowRelativeLayout -import com.shuyu.gsyvideoplayer.GSYVideoManager -import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder -import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack import io.reactivex.disposables.Disposable -import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.aciv_close -import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.actv_endstation -import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.iv_xiaozhi_belt -import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.svp_frame -import kotlinx.android.synthetic.main.taxi_p_arrived_end_panel.view.v_video_right_rear_view - +import kotlinx.android.synthetic.main.taxt_u_p_arrived_end_panel.view.aciv_bg +import kotlinx.android.synthetic.main.taxt_u_p_arrived_end_panel.view.aciv_close +import kotlinx.android.synthetic.main.taxt_u_p_arrived_end_panel.view.actv_endstation +import kotlinx.android.synthetic.main.taxt_u_p_arrived_end_panel.view.v_video_right_rear_view +import me.jessyan.autosize.utils.AutoSizeUtils /** * @@ -41,73 +42,54 @@ class ArrivedView : WindowRelativeLayout, ArrivedViewModel.ArrivedViewCallback { private var subscribe: Disposable?=null - private val gsyVideoOptionBuilder = GSYVideoOptionBuilder() + private var taxiPxiaozhiLove: BigFrameAnimatorContainer?=null + + var arrivedVisilityChangeListenr:ArrivedVisilityChangeListenr?=null + + private lateinit var viewModel: ArrivedViewModel - private var taxiPxiaozhiLove: FrameAnimatorContainer?=null private fun initView() { d(SceneConstant.M_TAXI_P + TAG, "initView") - LayoutInflater.from(context).inflate(R.layout.taxi_p_arrived_end_panel, this, true) - svp_frame.setBackgroundResource(R.drawable.tail_ani_0000) - svp_frame.setIsTouchWiget(false) - svp_frame.setIsTouchWigetFull(false) - svp_frame.enableshowProgressDialog = false - svp_frame.enableDoubleClick = false - GSYVideoManager.instance().enableRawPlay(AbsMogoApplication.getApp()) - val url = "android.resource://" + context.packageName + "/" + R.raw.end_video - gsyVideoOptionBuilder.setUrl(url) - .setCacheWithPlay(false) - .setPlayTag("TaxiPassengerArrivedView") - .build(svp_frame) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_arrived_end_panel, this, true) aciv_close.onClick { - OverlayViewUtils.dismissOverlayView(this) + visibility = View.GONE } + } - taxiPxiaozhiLove = FrameAnimatorContainer(R.array.xiaozhi_love, 48,iv_xiaozhi_belt) - taxiPxiaozhiLove?.setOnAnimStopListener(object : FrameAnimatorContainer.OnAnimationStoppedListener{ - override fun AnimationStopped() { - d(SceneConstant.M_TAXI_P + TAG, "动画暂停") + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + d(SceneConstant.M_TAXI_P + TAG, "展示---:${isVisible}") + if (isVisible) { + if(taxiPxiaozhiLove==null) { + taxiPxiaozhiLove = + BigFrameAnimatorContainer(R.array.arrived_dest, 31, aciv_bg, isOnce = true) } - }) + taxiPxiaozhiLove?.start() + v_video_right_rear_view.resetView() + aniSpeedSettingRow() + viewModel.setEndInfo() + } else { + v_video_right_rear_view.resetView() + taxiPxiaozhiLove = null + RxUtils.disposeSubscribe(subscribe) + } + arrivedVisilityChangeListenr?.isShow(isVisible) } override fun onAttachedToWindow() { super.onAttachedToWindow() - val viewModel = ViewModelProvider(this).get(ArrivedViewModel::class.java) + viewModel = ViewModelProvider(this).get(ArrivedViewModel::class.java) viewModel.setViewCallback(this) - taxiPxiaozhiLove?.reStart() - v_video_right_rear_view.resetView() - } - - override fun onDetachedFromWindow() { - svp_frame.setBackgroundResource(R.drawable.tail_ani_0000) - svp_frame.setVideoAllCallBack(null) - svp_frame.onVideoReset() - svp_frame.release() - taxiPxiaozhiLove?.stop() - v_video_right_rear_view.resetView() - - super.onDetachedFromWindow() - subscribe?.let { - if (!it.isDisposed) { - it.dispose() - } - } } /** * 设置目的地重置星星状态 */ fun setDataAndStartAnimation() { - svp_frame.setVideoAllCallBack(object : GSYSampleCallBack() { - override fun onAutoComplete(url: String?, vararg objects: Any?) { - svp_frame.setBackgroundResource(R.drawable.tail_ani_0090) - } - }) - svp_frame.startPlayLogic() - RxUtils.createSubscribe(60_000) { - OverlayViewUtils.dismissOverlayView(this@ArrivedView) + subscribe = RxUtils.createSubscribe(60_000) { + visibility = View.GONE } } @@ -127,4 +109,68 @@ class ArrivedView : WindowRelativeLayout, ArrivedViewModel.ArrivedViewCallback { actv_endstation.text = stationName } + + override fun preLoadImages() { + if (taxiPxiaozhiLove==null) { + taxiPxiaozhiLove = BigFrameAnimatorContainer(R.array.arrived_dest, 31,aciv_bg,isOnce = true) + } + } + + + fun aniArrived(show:Boolean){ + RxUtils.createSubscribe(500) { + val alphaStart: Float + val alphaEnd: Float + if(show){ + alphaStart = 0.0f + alphaEnd = 1f + visibility = View.VISIBLE + }else{ + alphaStart = 1f + alphaEnd = 0.0f + visibility = View.GONE + } + ObjectAnimator.ofFloat(this@ArrivedView, "alpha", alphaStart, alphaEnd).apply { + duration = 500 + addListener(object :AnimatorListenerAdapter(){ + override fun onAnimationEnd(animation: Animator) { + CallerLogger.d(TaxiPassengerBaseFragment.TAG,"onAnimationEndcarrivedView") + if(show){ + visibility = View.VISIBLE + }else{ + visibility = View.GONE + } + } + }) + }.start() + } + } + + private fun aniSpeedSettingRow(){ + val translationYStart = - AutoSizeUtils.dp2px(context,180f).toFloat() + val translationYEnd: Float = 0f + val alphaStart: Float = 0f + val alphaEnd: Float = 1f + + val translationX = ObjectAnimator.ofFloat( + v_video_right_rear_view, + "translationX", + translationYStart, + translationYEnd + ).apply { + duration = 1000 + } + val alpha = + ObjectAnimator.ofFloat(v_video_right_rear_view, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + } + val animatorSet = AnimatorSet() + animatorSet.playTogether(mutableListOf(translationX,alpha)) + animatorSet.start() + } + + interface ArrivedVisilityChangeListenr{ + fun isShow(show: Boolean) + } + } \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedViewModel.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedViewModel.kt index 6fcf776ddc..b0ca0091a9 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedViewModel.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/ArrivedViewModel.kt @@ -1,32 +1,52 @@ package com.mogo.och.taxi.passenger.ui.arrived import androidx.lifecycle.ViewModel +import com.mogo.och.common.module.manager.distancemamager.IDistanceListener +import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager import com.mogo.och.taxi.passenger.model.TaxiPassengerModel -class ArrivedViewModel: ViewModel() { +class ArrivedViewModel : ViewModel(), IDistanceListener { private val TAG = ArrivedViewModel::class.java.simpleName - private var viewCallback:ArrivedViewCallback?=null + private var viewCallback: ArrivedViewCallback? = null + + private var havePreLoadOrderNum: String? = null init { + TrajectoryAndDistanceManager.addDistanceListener(TAG, this) + } + + fun setViewCallback(viewCallback: ArrivedViewCallback) { + this.viewCallback = viewCallback } - fun setViewCallback(viewCallback: ArrivedViewCallback){ - this.viewCallback = viewCallback + fun setEndInfo() { TaxiPassengerModel.currentOCHOrder?.orderEndSite?.let { this.viewCallback?.setEndStation(it.siteName) } } + override fun distanceCallback(distance: Float) { + if (distance <= 50) { + TaxiPassengerModel.currentOCHOrder?.orderNo?.let { + if (it != havePreLoadOrderNum) { + this.viewCallback?.preLoadImages() + havePreLoadOrderNum = it + } + } + } + } + override fun onCleared() { super.onCleared() this.viewCallback = null } - interface ArrivedViewCallback{ - fun setEndStation(stationName:String) + interface ArrivedViewCallback { + fun setEndStation(stationName: String) + fun preLoadImages() } } \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamView.kt index 655a132350..a60c102356 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/arrived/RightRearCamView.kt @@ -9,7 +9,7 @@ import android.view.LayoutInflater import androidx.constraintlayout.widget.ConstraintLayout import com.mogo.eagle.core.function.api.autopilot.IMoGoBackCameraVideoListener import com.mogo.eagle.core.function.api.autopilot.IMoGoRoboBusJinlvM1StitchedVideoListener -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager.setIsSubscribeBackCameraVideoVideo +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager import com.mogo.eagle.core.function.call.autopilot.CallerBackCameraVideoListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerRoboBusJinlvM1StitchedVideoListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d @@ -17,8 +17,8 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider import com.mogo.och.taxi.passenger.R -import kotlinx.android.synthetic.main.taxi_p_right_rear_cam.view.actv_cam_position_group -import kotlinx.android.synthetic.main.taxi_p_right_rear_cam.view.v_video_right_rear +import kotlinx.android.synthetic.main.taxt_u_p_right_rear_cam.view.actv_cam_position_group +import kotlinx.android.synthetic.main.taxt_u_p_right_rear_cam.view.v_video_right_rear /** * @@ -43,23 +43,33 @@ class RightRearCamView : ConstraintLayout , IMoGoBackCameraVideoListener, private fun initView() { d(SceneConstant.M_TAXI_P + TAG, "initView") - LayoutInflater.from(context).inflate(R.layout.taxi_p_right_rear_cam, this, true) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_right_rear_cam, this, true) } override fun onAttachedToWindow() { super.onAttachedToWindow() - setIsSubscribeBackCameraVideoVideo(1, true) - CallerBackCameraVideoListenerManager.addListener(TAG, this) - CallerRoboBusJinlvM1StitchedVideoListenerManager.addListener(TAG, this) } override fun onDetachedFromWindow() { super.onDetachedFromWindow() - setIsSubscribeBackCameraVideoVideo(1, false) - CallerBackCameraVideoListenerManager.removeListener(this) - CallerRoboBusJinlvM1StitchedVideoListenerManager.removeListener(this) } + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if(isVisible){ + d(SceneConstant.M_TAXI_P + TAG, "展示--可见") + CallerAutoPilotControlManager.setIsSubscribeBackCameraVideoVideo(1, true) + CallerBackCameraVideoListenerManager.addListener(TAG, this) + CallerRoboBusJinlvM1StitchedVideoListenerManager.addListener(TAG, this) + }else{ + d(SceneConstant.M_TAXI_P + TAG, "展示--不可见") + CallerAutoPilotControlManager.setIsSubscribeBackCameraVideoVideo(1, false) + CallerBackCameraVideoListenerManager.removeListener(this) + CallerRoboBusJinlvM1StitchedVideoListenerManager.removeListener(this) + } + } + + companion object { const val TAG = "RightRearCamView" } @@ -74,7 +84,7 @@ class RightRearCamView : ConstraintLayout , IMoGoBackCameraVideoListener, fun resetView(){ actv_cam_position_group.visibility = GONE - v_video_right_rear.setImageResource(R.drawable.taxi_p_right_rear_cam) + v_video_right_rear.setImageResource(R.drawable.taxt_u_p_right_rear_cam) } override fun onBackCameraVideo(data: ByteArray) { diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomBar.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomBar.kt index 49681bafa2..66a536c7e5 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomBar.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomBar.kt @@ -5,9 +5,9 @@ import android.util.AttributeSet import android.view.LayoutInflater import androidx.constraintlayout.widget.ConstraintLayout import com.mogo.och.taxi.passenger.R -import kotlinx.android.synthetic.main.taxi_p_bottom_bar.view.actv_overmap -import kotlinx.android.synthetic.main.taxi_p_bottom_bar.view.actv_precisionmap -import kotlinx.android.synthetic.main.taxi_p_bottom_bar.view.actv_video +import kotlinx.android.synthetic.main.taxt_u_p_bottom_bar.view.actv_overmap +import kotlinx.android.synthetic.main.taxt_u_p_bottom_bar.view.actv_video +import kotlinx.android.synthetic.main.taxt_u_p_bottom_bar.view.actv_precisionmap class BottomBar @JvmOverloads constructor( context: Context, @@ -20,8 +20,8 @@ class BottomBar @JvmOverloads constructor( init { isClickable = true - LayoutInflater.from(context).inflate(R.layout.taxi_p_bottom_bar, this, true) - setBackgroundResource(R.drawable.taxi_p_bottom_bar_bg) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_bottom_bar, this, true) + setBackgroundResource(R.drawable.taxt_u_p_bottom_bar_bg) actv_precisionmap.setOnClickListener { setCheckIndex(SelectView.PRECISIONMAP) } diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomCheckView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomCheckView.kt index 78dd252f72..04bb90cad4 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomCheckView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/bottom/BottomCheckView.kt @@ -7,8 +7,8 @@ import android.view.View import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.content.ContextCompat import com.mogo.och.taxi.passenger.R -import kotlinx.android.synthetic.main.m1_bottom_check.view.aciv_center_image -import kotlinx.android.synthetic.main.m1_bottom_check.view.actv_title +import kotlinx.android.synthetic.main.taxt_u_p_bottom_check.view.aciv_center_image +import kotlinx.android.synthetic.main.taxt_u_p_bottom_check.view.actv_title open class BottomCheckView @JvmOverloads constructor( context: Context, @@ -31,7 +31,7 @@ open class BottomCheckView @JvmOverloads constructor( private var isCheck = false init { - LayoutInflater.from(context).inflate(R.layout.m1_bottom_check, this, true) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_bottom_check, this, true) try { val typedArray = context.obtainStyledAttributes(attrs, R.styleable.BottomSelectView) backageViewId = typedArray.getResourceId(R.styleable.BottomSelectView_backageViewId, -1) diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotView.kt new file mode 100644 index 0000000000..8a972f36a9 --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotView.kt @@ -0,0 +1,160 @@ +package com.mogo.och.taxi.passenger.ui.checkstartautopilot + +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.ObjectAnimator +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.View +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.findViewTreeViewModelStoreOwner +import com.mogo.eagle.core.utilcode.kotlin.onClick +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.och.common.module.utils.BigFrameAnimatorContainer +import com.mogo.och.taxi.passenger.R +import com.mogo.och.taxi.passenger.ui.arrived.ArrivedView +import com.mogo.och.taxi.passenger.widget.WindowRelativeLayout +import kotlinx.android.synthetic.main.taxt_u_p_base_fragment.chekAndStartAutopilotView +import kotlinx.android.synthetic.main.taxt_u_p_check_startautopilot.view.aciv_check_autopilot +import kotlinx.android.synthetic.main.taxt_u_p_check_startautopilot.view.checkPhoneNumber +import kotlinx.android.synthetic.main.taxt_u_p_check_startautopilot.view.startAutopilotClose +import kotlinx.android.synthetic.main.taxt_u_p_check_startautopilot.view.startAutopilotView + +/** + * V2X预警事件view:通过FloatWindow呈现,无需加入到自定义layout中 + * + * Created on 2022/3/16 + */ +class ChekAndStartAutopilotView : WindowRelativeLayout, + ChekAndStartAutopilotViewModel.CheckCallback { + + constructor(context: Context?) : super(context) + + constructor(context: Context?, attributeSet: AttributeSet) : super(context, attributeSet) + + constructor(context: Context?, attributeSet: AttributeSet, defStyleAttr: Int) : super( + context, + attributeSet, + defStyleAttr + ) + + constructor( + context: Context?, + attributeSet: AttributeSet, + defStyleAttr: Int, + defStyleRes: Int + ) : super(context, attributeSet, defStyleAttr, defStyleRes) + + private var viewModel: ChekAndStartAutopilotViewModel? = null + + private var aniCheck2StartAutopilotView: BigFrameAnimatorContainer? = null + + var checkAndStartVisilityChangeListenr: CheckAndStartVisilityChangeListenr?=null + + + private fun initView(context: Context) { + d(SceneConstant.M_TAXI_P + TAG, "initView") + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_check_startautopilot, this, true) + + startAutopilotClose.onClick { + visibility = View.GONE + } + } + + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if (isVisible) { + aniCheck2StartAutopilotView = + BigFrameAnimatorContainer(R.array.check2startautopilt, 39, aciv_check_autopilot, true) + aniCheck2StartAutopilotView?.mOnAnimationStoppedListener = object : BigFrameAnimatorContainer.OnAnimationStoppedListener{ + override fun AnimationStopped() { + startAutopilotView.showStartAutopilot() + } + } + } else { + aniCheck2StartAutopilotView = null + } + checkAndStartVisilityChangeListenr?.isShow(isVisible) + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + viewModel = findViewTreeViewModelStoreOwner()?.let { + ViewModelProvider(it).get(ChekAndStartAutopilotViewModel::class.java) + } + viewModel?.setStartAutopilotCallback(this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + } + + + companion object { + const val TAG = "TaxiPassengerCheckView" + } + + init { + try { + initView(context) + } catch (e: Exception) { + e.printStackTrace() + } + } + + override fun dismissWindow() { + visibility = View.GONE + } + + fun resetCheckView() { + checkPhoneNumber.visibility = View.VISIBLE + startAutopilotView.visibility = View.GONE + startAutopilotClose.visibility = View.GONE + } + + fun aniCheckAndStartAutopilot(show:Boolean,status:Int){ + val alphaStart: Float + val alphaEnd: Float + if(show){ + alphaStart = 0.0f + alphaEnd = 1f + visibility = View.VISIBLE + }else{ + alphaStart = 1f + alphaEnd = 0.0f + visibility = View.GONE + } + when (status) { + 0 -> { + checkPhoneNumber.visibility = View.VISIBLE + startAutopilotView.visibility = View.GONE + startAutopilotClose.visibility = View.GONE + ObjectAnimator.ofFloat(this@ChekAndStartAutopilotView, "alpha", alphaStart, alphaEnd).apply { + duration = 1000 + }.start() + } + 1 -> { + checkPhoneNumber.visibility = View.GONE + startAutopilotView.visibility = View.VISIBLE + startAutopilotClose.visibility = View.VISIBLE + aniCheck2StartAutopilotView?.start() + } + 2 -> { + checkPhoneNumber.visibility = View.VISIBLE + startAutopilotView.visibility = View.GONE + startAutopilotClose.visibility = View.GONE + return + } + else -> {} + } + + } + + interface CheckAndStartVisilityChangeListenr{ + fun isShow(show: Boolean) + } + + +} \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotViewModel.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotViewModel.kt new file mode 100644 index 0000000000..e1a04314dd --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/ChekAndStartAutopilotViewModel.kt @@ -0,0 +1,48 @@ +package com.mogo.och.taxi.passenger.ui.checkstartautopilot + +import androidx.lifecycle.ViewModel +import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrdersInServiceQueryRespBean +import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback +import com.mogo.och.taxi.passenger.constant.TaxiPassengerOrderStatusEnum +import com.mogo.och.taxi.passenger.model.TaxiPassengerModel + +class ChekAndStartAutopilotViewModel : ViewModel(), IOCHTaxiPassengerOrderStatusCallback { + + private val TAG = ChekAndStartAutopilotViewModel::class.java.simpleName + + private var viewCallback: CheckCallback? = null + + init { + TaxiPassengerModel.setOrderStatusCallback(TAG,this) + } + + fun setStartAutopilotCallback(viewCallback: CheckCallback) { + this.viewCallback = viewCallback + } + + override fun onCurrentOrderStatusChanged(order: TaxiPassengerOrdersInServiceQueryRespBean.OrderBean?) { + super.onCurrentOrderStatusChanged(order) + when (order?.orderStatus) { + TaxiPassengerOrderStatusEnum.ArriveAtStart.code -> { + // 显示手机号验证 + } + TaxiPassengerOrderStatusEnum.UserArriveAtStart.code -> { + // 显示启动自驾 + } + else -> { + viewCallback?.dismissWindow() + } + } + } + + override fun onCleared() { + super.onCleared() + this.viewCallback = null + TaxiPassengerModel.setOrderStatusCallback(TAG, null) + } + + interface CheckCallback { + fun dismissWindow() + } + +} \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/CheckView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/CheckView.kt new file mode 100644 index 0000000000..25d3926962 --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/CheckView.kt @@ -0,0 +1,106 @@ +package com.mogo.och.taxi.passenger.ui.checkstartautopilot.check + +import android.content.Context +import android.graphics.Typeface +import android.text.Spannable +import android.text.SpannableStringBuilder +import android.text.style.TextAppearanceSpan +import android.util.AttributeSet +import android.view.LayoutInflater +import androidx.constraintlayout.widget.ConstraintLayout +import androidx.core.content.ContextCompat +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.findViewTreeViewModelStoreOwner +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.och.common.module.utils.RxUtils +import com.mogo.och.taxi.passenger.R +import com.mogo.och.taxi.passenger.widget.NumberCheckView +import io.reactivex.disposables.Disposable +import kotlinx.android.synthetic.main.taxt_u_p_check.view.numberCheckView +import kotlinx.android.synthetic.main.taxt_u_p_check.view.tv_passenger_count +import kotlinx.android.synthetic.main.taxt_u_p_check.view.tv_passenger_end +import kotlinx.android.synthetic.main.taxt_u_p_check.view.tv_passenger_start + +/** + * V2X预警事件view:通过FloatWindow呈现,无需加入到自定义layout中 + * + * Created on 2022/3/16 + */ +class CheckView @JvmOverloads constructor( + context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 +) : ConstraintLayout( + context, attrs, defStyleAttr +), ChekViewModel.CheckCallback, NumberCheckView.SubmitListener { + + + private var submitThrottle: Disposable? = null + + private var viewModel: ChekViewModel? = null + + companion object { + const val TAG = "CheckView" + } + + + private fun initView(context: Context) { + d(SceneConstant.M_TAXI_P + TAG, "initView") + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_check, this, true) + numberCheckView.submitListener = this + } + + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if (isVisible) { + viewModel?.setOrderInfo() + } + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + viewModel = findViewTreeViewModelStoreOwner()?.let { + ViewModelProvider(it).get(ChekViewModel::class.java) + } + viewModel?.setStartAutopilotCallback(this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + } + + init { + try { + initView(context) + } catch (e: Exception) { + e.printStackTrace() + } + } + + override fun setOrderInfo( + startSiteAddr: String?, + endSiteAddr: String?, + passengerNum: String?, + phone: String? + ) { + val sb = SpannableStringBuilder("乘客数:$passengerNum 位") // 包装字体内容 + sb.setSpan( + TextAppearanceSpan( + "default", + Typeface.NORMAL, 100, + ContextCompat.getColorStateList(context, R.color.taxi_p_378EFB), null + ), + 4, 5, Spannable.SPAN_INCLUSIVE_INCLUSIVE + ) + tv_passenger_count.text = sb + tv_passenger_start.text = "起 点 : $startSiteAddr" + tv_passenger_end.text = "终 点 : $endSiteAddr" + numberCheckView.resetNum(phone ?: "") + } + + override fun trySubmit(number: String) { + RxUtils.disposeSubscribe(submitThrottle) + submitThrottle = RxUtils.createSubscribe(1_000) { + viewModel?.checkAndUpdateStatus(number) + } + } +} \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/ChekViewModel.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/ChekViewModel.kt similarity index 66% rename from OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/ChekViewModel.kt rename to OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/ChekViewModel.kt index a7ca88b125..9588ecd2a2 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/ChekViewModel.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/check/ChekViewModel.kt @@ -1,4 +1,4 @@ -package com.mogo.och.taxi.passenger.ui.check +package com.mogo.och.taxi.passenger.ui.checkstartautopilot.check import androidx.lifecycle.ViewModel import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrdersInServiceQueryRespBean @@ -6,25 +6,23 @@ import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback import com.mogo.och.taxi.passenger.constant.TaxiPassengerOrderStatusEnum import com.mogo.och.taxi.passenger.model.TaxiPassengerModel -class ChekViewModel : ViewModel(), IOCHTaxiPassengerOrderStatusCallback { +class ChekViewModel : ViewModel() { private val TAG = ChekViewModel::class.java.simpleName private var viewCallback: CheckCallback? = null init { - TaxiPassengerModel.setOrderStatusCallback(TAG,this) } fun setStartAutopilotCallback(viewCallback: CheckCallback) { this.viewCallback = viewCallback - setOrderInfo() } fun checkAndUpdateStatus(phone: String) { TaxiPassengerModel.checkPhoneAndUpdateStatus(phone) } - private fun setOrderInfo() { + fun setOrderInfo() { val currentOCHOrder = TaxiPassengerModel.currentOCHOrder currentOCHOrder?.let { order -> viewCallback?.setOrderInfo(order.orderStartSite?.siteName, @@ -32,17 +30,9 @@ class ChekViewModel : ViewModel(), IOCHTaxiPassengerOrderStatusCallback { } } - override fun onCurrentOrderStatusChanged(order: TaxiPassengerOrdersInServiceQueryRespBean.OrderBean?) { - super.onCurrentOrderStatusChanged(order) - if(order == null || order.orderStatus != TaxiPassengerOrderStatusEnum.UserArriveAtStart.code) { - this.viewCallback?.dismissWindow() - } - } - override fun onCleared() { super.onCleared() this.viewCallback = null - TaxiPassengerModel.setOrderStatusCallback(TAG, null) } interface CheckCallback { @@ -50,8 +40,6 @@ class ChekViewModel : ViewModel(), IOCHTaxiPassengerOrderStatusCallback { endSiteAddr: String?, passengerNum: String?, phone: String?) - - fun dismissWindow() } } \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotView.kt new file mode 100644 index 0000000000..ab84b388e4 --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotView.kt @@ -0,0 +1,238 @@ +package com.mogo.och.taxi.passenger.ui.checkstartautopilot.startautopilot + +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.View +import androidx.core.content.ContextCompat +import androidx.lifecycle.ViewModelProvider +import com.mogo.eagle.core.utilcode.kotlin.onClick +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.och.common.module.manager.devicemanage.data.DoorPosition +import com.mogo.och.common.module.manager.devicemanage.data.DoorState +import com.mogo.och.common.module.utils.FrameAnimatorContainer +import com.mogo.och.taxi.passenger.R +import com.mogo.och.taxi.passenger.widget.WindowRelativeLayout +import kotlinx.android.synthetic.main.taxt_u_p_start_autopilot_view.view.aciv_middle_car +import kotlinx.android.synthetic.main.taxt_u_p_start_autopilot_view.view.actv_front_left_door +import kotlinx.android.synthetic.main.taxt_u_p_start_autopilot_view.view.actv_front_right_door +import kotlinx.android.synthetic.main.taxt_u_p_start_autopilot_view.view.actv_orderinfo +import kotlinx.android.synthetic.main.taxt_u_p_start_autopilot_view.view.actv_rear_left_door +import kotlinx.android.synthetic.main.taxt_u_p_start_autopilot_view.view.actv_rear_right_door +import kotlinx.android.synthetic.main.taxt_u_p_start_autopilot_view.view.taxi_p_autopilot_btn_bg +import kotlinx.android.synthetic.main.taxt_u_p_start_autopilot_view.view.taxi_p_autopilot_starting +import kotlinx.android.synthetic.main.taxt_u_p_start_autopilot_view.view.taxi_p_start_autopilot + +/** + * @author: yangyakun + * 页面状态: + * ①:不能启动自驾 + * ②:可以启动自驾 + * ③:启动自驾中 + * ④:启动自驾超时 + * ⑤:启动自驾失败 + */ +class StartAutopilotView : WindowRelativeLayout, StartAutopilotViewModel.StartAutopilotCallback { + + constructor(context: Context) : super(context) + + constructor(context: Context, attributeSet: AttributeSet) : super(context, attributeSet) + + constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int) : super( + context, attributeSet, defStyleAttr + ) + + companion object { + private val TAG = StartAutopilotView::class.java.simpleName + } + + private var taxiPStartAutopilot: FrameAnimatorContainer? = null + private var taxiPStartAutopilotCar: FrameAnimatorContainer? = null + private lateinit var viewModel: StartAutopilotViewModel + + + init { + initView() + } + + private fun initView() { + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_start_autopilot_view, this, true) + taxiPStartAutopilotCar = FrameAnimatorContainer( + R.array.taxi_p_start_autopilot_car, 20, taxi_p_autopilot_starting + ) + taxiPStartAutopilotCar?.setOnAnimStopListener(object : + FrameAnimatorContainer.OnAnimationStoppedListener { + override fun AnimationStopped() { + CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "光圈动画暂停") + } + }) + taxiPStartAutopilot = FrameAnimatorContainer( + R.array.taxi_p_start_autopilot, 15, taxi_p_autopilot_btn_bg, true, initFirstFrame = false + ) + taxiPStartAutopilot?.setOnAnimStopListener(object : + FrameAnimatorContainer.OnAnimationStoppedListener { + override fun AnimationStopped() { + CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "可以启动自驾动画暂停") + } + }) + } + + override fun setOrderInfo(show: String) { + actv_orderinfo.text = show + } + + override fun setDoorStatus(doorPosition: DoorPosition, state: DoorState) { + when (doorPosition) { + DoorPosition.FRONT_LEFT -> { + if (state == DoorState.OPEN) { + actv_front_left_door.visibility = VISIBLE + } else { + actv_front_left_door.visibility = GONE + } + } + + DoorPosition.FRONT_RIGHT -> { + if (state == DoorState.OPEN) { + actv_front_right_door.visibility = VISIBLE + } else { + actv_front_right_door.visibility = GONE + } + } + + DoorPosition.REAR_LEFT -> { + if (state == DoorState.OPEN) { + actv_rear_left_door.visibility = VISIBLE + } else { + actv_rear_left_door.visibility = GONE + } + } + + DoorPosition.REAR_RIGHT -> { + if (state == DoorState.OPEN) { + actv_rear_right_door.visibility = VISIBLE + } else { + actv_rear_right_door.visibility = GONE + } + } + + else -> { + + } + } + } + + override fun canStartAutopilot(can: Boolean) { + if (can) { + ableStartAutopilot() + } else { + unableStartAutopilot() + } + } + + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if(isVisible){ + taxi_p_start_autopilot.background = + ContextCompat.getDrawable(context, R.drawable.taxi_u_p_enable_start_autopilot) + taxi_p_start_autopilot.text = resources.getString(R.string.taxi_p_start_autopilot_txt) + taxi_p_autopilot_starting.setImageResource(R.drawable.light_00018) + viewModel.setOrderInfo() + }else{ + unableStartAutopilot() + goneAllDoorState() + resetView() + CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "onDetachedFromWindow") + } + } + + private fun resetView() { + taxi_p_autopilot_starting.visibility = View.GONE + aciv_middle_car.visibility = View.GONE + taxi_p_autopilot_btn_bg.visibility = View.GONE + taxi_p_start_autopilot.visibility = View.GONE + } + + fun showStartAutopilot(){ + taxi_p_autopilot_starting.visibility = View.VISIBLE + aciv_middle_car.visibility = View.VISIBLE + taxi_p_autopilot_btn_bg.visibility = View.VISIBLE + taxi_p_start_autopilot.visibility = View.VISIBLE + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "onAttachedToWindow") + viewModel = ViewModelProvider(this).get(StartAutopilotViewModel::class.java) + viewModel.setStartAutopilotCallback(this) + taxi_p_start_autopilot.onClick { + //开启动画和自动驾驶 + startAutopiloting() + viewModel.startAutopilot() + } + } + + /** + * ①:不能启动自驾 + */ + private fun unableStartAutopilot() { + taxiPStartAutopilot?.stop() + taxiPStartAutopilotCar?.stop() + taxi_p_autopilot_starting.setImageResource(R.drawable.light_00018) + taxi_p_autopilot_btn_bg.setImageResource(R.drawable.image_00000_0) + taxi_p_start_autopilot.background = + ContextCompat.getDrawable(context, R.drawable.taxi_u_p_unable_start_autopilot) + taxi_p_start_autopilot.text = resources.getString(R.string.taxi_p_start_autopilot_txt) + } + + /** + * ②:可以启动自驾 + */ + private fun ableStartAutopilot() { + taxiPStartAutopilot?.stop() + taxiPStartAutopilotCar?.stop() + taxi_p_autopilot_starting.setImageResource(R.drawable.light_00018) + taxi_p_start_autopilot.background = + ContextCompat.getDrawable(context, R.drawable.taxi_u_p_enable_start_autopilot) + taxi_p_start_autopilot.text = resources.getString(R.string.taxi_p_start_autopilot_txt) + } + + /** + * ③:启动自驾中 + */ + fun startAutopiloting() { + taxiPStartAutopilot?.reStart() + taxiPStartAutopilotCar?.reStart() + taxi_p_start_autopilot.background = null + taxi_p_start_autopilot?.text = resources.getString(R.string.taxi_p_start_autopilot_loading) + taxi_p_start_autopilot?.setTextColor( + ContextCompat.getColor(context, android.R.color.white) + ) + } + + /** + * ④:启动自驾超时 + */ + override fun startAutopilotingTimeout() { + ableStartAutopilot() + } + + /** + * ⑤:启动自驾失败 + */ + override fun startAutopilotingFail() { + ableStartAutopilot() + } + + private fun goneAllDoorState() { + actv_front_left_door.visibility = GONE + actv_front_right_door.visibility = GONE + actv_rear_left_door.visibility = GONE + actv_rear_right_door.visibility = GONE + } + + override fun unableStartAutopilotByDoorState() { + unableStartAutopilot() + } + +} \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotViewModel.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotViewModel.kt similarity index 75% rename from OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotViewModel.kt rename to OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotViewModel.kt index deef98392e..7ea050bc7b 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/startautopilot/StartAutopilotViewModel.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/checkstartautopilot/startautopilot/StartAutopilotViewModel.kt @@ -1,8 +1,8 @@ -package com.mogo.och.taxi.passenger.ui.startautopilot +package com.mogo.och.taxi.passenger.ui.checkstartautopilot.startautopilot import androidx.lifecycle.ViewModel import com.mogo.commons.voice.AIAssist -import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant @@ -29,17 +29,17 @@ class StartAutopilotViewModel : ViewModel(), private val TIMER_START_AUTOPILOT_INTERVAL = 20 * 1000L - var startCountDown: Disposable?=null + var startCountDown: Disposable? = null var doorOpenState = true fun setStartAutopilotCallback(viewCallback: StartAutopilotCallback) { - TaxiDoorStateManager.addListener(TAG,this) + TaxiDoorStateManager.addListener(TAG, this) this.viewCallback = viewCallback setOrderInfo() } - private fun setOrderInfo() { + fun setOrderInfo() { val currentOCHOrder = TaxiPassengerModel.currentOCHOrder currentOCHOrder?.let { val phone = it.bookingUserPhone @@ -68,9 +68,11 @@ class StartAutopilotViewModel : ViewModel(), * 开启自动驾驶 */ fun startAutopilot() { - val num = ParseVersionUtils.parseVersion(true, CallerAutoPilotStatusListenerManager.getDockerVersion()) + val num = ParseVersionUtils.parseVersion( + true, CallerAutoPilotStatusListenerManager.getDockerVersion() + ) if (num >= 30600) { - if(doorOpenState){ + if (doorOpenState) { VoiceNotice.showNotice("关紧车门后再出发吧!") ToastUtils.showShort("关紧车门后再出发吧!") viewCallback?.unableStartAutopilotByDoorState() @@ -82,13 +84,18 @@ class StartAutopilotViewModel : ViewModel(), return } if (AutopilotManager.startAutopilot().isEmpty()) { + RxUtils.disposeSubscribe(startCountDown) startCountDown = RxUtils.createSubscribe(TIMER_START_AUTOPILOT_INTERVAL) { - viewCallback?.startAutopilotingTimeout() - //未启动成功20s后做处理 - ToastUtils.showLong(R.string.taxi_p_start_autopilot_fail_10s_tip) - VoiceNotice.showNotice("啊哦!系统繁忙中,稍后再试试吧~", AIAssist.LEVEL2) + val autoPilotState = + CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state + if (autoPilotState != IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { + viewCallback?.startAutopilotingTimeout() + //未启动成功20s后做处理 + ToastUtils.showLong(R.string.taxi_p_start_autopilot_fail_10s_tip) + VoiceNotice.showNotice("啊哦!系统繁忙中,稍后再试试吧~", AIAssist.LEVEL2) + } } - }else{ + } else { VoiceNotice.showNotice("啊哦!系统繁忙中,稍后再试试吧~", AIAssist.LEVEL2) viewCallback?.startAutopilotingFail() } @@ -105,24 +112,22 @@ class StartAutopilotViewModel : ViewModel(), override fun doorStateChangeCallback(position: DoorPosition, state: DoorState) { CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "门太变化:${position}--${state}") - runMain(position,state) + runMain(position, state) } - private fun runMain(posttion: DoorPosition, state: DoorState){ + private fun runMain(posttion: DoorPosition, state: DoorState) { UiThreadHandler.post({ - viewCallback?.setDoorStatus(posttion,state) - },UiThreadHandler.MODE.QUEUE) + viewCallback?.setDoorStatus(posttion, state) + }, UiThreadHandler.MODE.QUEUE) } interface StartAutopilotCallback { fun setOrderInfo(show: String) - fun setDoorStatus(doorPosition: DoorPosition,state: DoorState) - - fun canStartAutopilot(can:Boolean) + fun setDoorStatus(doorPosition: DoorPosition, state: DoorState) + fun canStartAutopilot(can: Boolean) fun startAutopilotingTimeout() fun startAutopilotingFail() - fun unableStartAutopilotByDoorState() } } \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/debug/DebugView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/debug/DebugView.kt index de0d755249..a8d63d7a51 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/debug/DebugView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/debug/DebugView.kt @@ -10,11 +10,11 @@ import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.och.taxi.passenger.R import com.mogo.och.taxi.passenger.ui.TaxiPassengerBaseFragment -import kotlinx.android.synthetic.main.taxi_p_debug.view.tv_show_arrive -import kotlinx.android.synthetic.main.taxi_p_debug.view.tv_show_order_info -import kotlinx.android.synthetic.main.taxi_p_debug.view.tv_show_overmap_debug -import kotlinx.android.synthetic.main.taxi_p_debug.view.tv_show_phone_check -import kotlinx.android.synthetic.main.taxi_p_debug.view.tv_show_start_autopilot +import kotlinx.android.synthetic.main.taxt_u_p_debug.view.tv_show_arrive +import kotlinx.android.synthetic.main.taxt_u_p_debug.view.tv_show_order_info +import kotlinx.android.synthetic.main.taxt_u_p_debug.view.tv_show_overmap_debug +import kotlinx.android.synthetic.main.taxt_u_p_debug.view.tv_show_phone_check +import kotlinx.android.synthetic.main.taxt_u_p_debug.view.tv_show_start_autopilot import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.ThreadMode @@ -30,7 +30,7 @@ class DebugView @JvmOverloads constructor( } init { - LayoutInflater.from(context).inflate(R.layout.taxi_p_debug, this, true) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_debug, this, true) visibility = GONE } @@ -54,16 +54,17 @@ class DebugView @JvmOverloads constructor( fragment?.showOrHideArrivedEndLayout(true) } tv_show_phone_check.onClick { - fragment?.showOrHidePressengerCheckPager(isShow = true) + fragment?.showOrHideCheckAndStartAutopilotView(0) } tv_show_start_autopilot.onClick { - fragment?.showOrHideStartAutopilotView(true) + fragment?.showOrHideCheckAndStartAutopilotView(1) } tv_show_order_info.onClick { fragment?.showOrHideServingOrderFragment(true) } tv_show_overmap_debug.onClick { fragment?.setOverMapDebug() + fragment?.preLoadArrivedImages() } } @Subscribe(threadMode = ThreadMode.MAIN) diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/ItineraryView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/ItineraryView.kt index 3eb347961b..654b8aae8c 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/ItineraryView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/ItineraryView.kt @@ -5,6 +5,9 @@ import android.graphics.drawable.GradientDrawable import android.graphics.drawable.LayerDrawable import android.graphics.drawable.ScaleDrawable import android.os.Build +import android.os.Handler +import android.os.Looper +import android.os.Message import android.util.AttributeSet import android.view.Gravity import android.view.LayoutInflater @@ -12,15 +15,15 @@ import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.content.ContextCompat import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.findViewTreeViewModelStoreOwner +import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.taxi.passenger.R -import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_arrived_time -import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_distance -import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_distance_unit -import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_endstation -import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_speed_value -import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_surplus_time -import kotlinx.android.synthetic.main.taxi_p_itinerary.view.actv_surplus_time_unit -import kotlinx.android.synthetic.main.taxi_p_itinerary.view.progress_distance +import kotlinx.android.synthetic.main.taxt_u_p_itinerary.view.actv_arrived_time +import kotlinx.android.synthetic.main.taxt_u_p_itinerary.view.actv_distance +import kotlinx.android.synthetic.main.taxt_u_p_itinerary.view.actv_distance_unit +import kotlinx.android.synthetic.main.taxt_u_p_itinerary.view.actv_endstation +import kotlinx.android.synthetic.main.taxt_u_p_itinerary.view.actv_surplus_time +import kotlinx.android.synthetic.main.taxt_u_p_itinerary.view.actv_surplus_time_unit +import kotlinx.android.synthetic.main.taxt_u_p_itinerary.view.progress_distance import me.jessyan.autosize.utils.AutoSizeUtils class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback { @@ -36,7 +39,7 @@ class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int, defStyleRes: Int) : super(context, attributeSet, defStyleAttr, defStyleRes) private fun initView() { - LayoutInflater.from(context).inflate(R.layout.taxi_p_itinerary, this, true) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_itinerary, this, true) setDrawable(true) progress_distance.progress = 0 @@ -56,11 +59,11 @@ class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback gradientDrawable.cornerRadii = floatArrayOf(0f, 0f, 0f, 0f, corner, corner, corner, corner) } - val firstColor = ContextCompat.getColor(context, R.color.taxi_p_OF5FFF) + val firstColor = ContextCompat.getColor(context, R.color.taxi_p_0F5FFF) val setondColor = ContextCompat.getColor(context, R.color.taxi_p_44C8FF) val thirdColor = ContextCompat.getColor(context, R.color.taxi_p_8AE4ED) val fourceColor = ContextCompat.getColor(context, R.color.taxi_p_C8F3F4) - val bottomColor = ContextCompat.getColor(context, R.color.taxi_p_66476FBE) + val bottomColor = ContextCompat.getColor(context, android.R.color.transparent) gradientDrawable.colors = intArrayOf(firstColor, setondColor, thirdColor, fourceColor) gradientDrawable.orientation = GradientDrawable.Orientation.LEFT_RIGHT @@ -86,12 +89,9 @@ class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback viewModel?.setDistanceCallback(this) } - override fun setSpeed(speedValue:String){ - actv_speed_value.text = speedValue - } override fun setEndStation(endStation:String){ - if(endStation.length>9){ - actv_endstation.text = "${endStation.subSequence(0,9)}…" + if(endStation.length>15){ + actv_endstation.text = "${endStation.subSequence(0,15)}…" }else { actv_endstation.text = endStation } @@ -99,6 +99,7 @@ class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback var prePercentage = 0f val needChangeStyleNumber = 0.99 + val needChangeStyleNumberMin = 0.03f override fun setDistanceInfo(surplusdistance:String,distanceUnit:String, surplusTime:String,surplusTimeUnit:String, @@ -117,18 +118,22 @@ class ItineraryView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback } val currentPercentage = alreadyGone.toFloat() / stationDistance - if((prePercentage>needChangeStyleNumber) xor (currentPercentage>needChangeStyleNumber)){ - if(currentPercentage>needChangeStyleNumber){ - setDrawable(false) - }else{ - setDrawable(true) - } - progress_distance.progress = alreadyGone - }else{ - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - progress_distance.setProgress(alreadyGone,true) - }else{ + if(currentPercentage>0&¤tPercentage needChangeStyleNumber) xor (currentPercentage > needChangeStyleNumber)) { + if (currentPercentage > needChangeStyleNumber) { + setDrawable(false) + } else { + setDrawable(true) + } progress_distance.progress = alreadyGone + } else { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { + progress_distance.setProgress(alreadyGone, true) + } else { + progress_distance.progress = alreadyGone + } } } prePercentage = currentPercentage diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/OrderInfoViewModel.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/OrderInfoViewModel.kt index 25dfc96139..9bc4fad09c 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/OrderInfoViewModel.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/orderinfo/OrderInfoViewModel.kt @@ -17,8 +17,7 @@ import com.mogo.och.taxi.passenger.model.TaxiPassengerModel import kotlin.math.abs import kotlin.math.ceil -class OrderInfoViewModel: ViewModel(), IMoGoChassisLocationGCJ02Listener, - IOCHTaxiPassengerOrderStatusCallback { +class OrderInfoViewModel: ViewModel(), IOCHTaxiPassengerOrderStatusCallback { private val TAG = OrderInfoViewModel::class.java.simpleName @@ -31,7 +30,6 @@ class OrderInfoViewModel: ViewModel(), IMoGoChassisLocationGCJ02Listener, disUnit = AbsMogoApplication.getApp().getString(R.string.taxi_p_distance_unit_km) surplusTimeUnit = AbsMogoApplication.getApp().getString(R.string.taxi_p_surplustime) // 设置起点和终点marker和实时车辆位置 - CallerChassisLocationGCJ02ListenerManager.addListener(TAG, 4, this) TaxiPassengerModel.setOrderStatusCallback(TAG,this) } @@ -45,22 +43,12 @@ class OrderInfoViewModel: ViewModel(), IMoGoChassisLocationGCJ02Listener, TaxiPassengerModel.setOrderStatusCallback(TAG,null) } - override fun onChassisLocationGCJ02(mogoLocation: MogoLocation?) { - mogoLocation?.let { - UiThreadHandler.post { - val speedKM = (abs(it.gnssSpeed) * 3.6f).toInt() - viewCallback?.setSpeed(speedKM.toString()) - } - } - } - interface ItineraryViewCallback{ fun setDistanceInfo(surplusdistance:String,distanceUnit:String, surplusTime:String,surplusTimeUnit:String, arrivedTime:String,alreadyGone:Int,distance:Int ) fun setEndStation(endStation:String) - fun setSpeed(speedValue:String) } override fun onCurrentOrderStatusChanged(order: TaxiPassengerOrdersInServiceQueryRespBean.OrderBean?) { diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/speed/SpeedView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/speed/SpeedView.kt new file mode 100644 index 0000000000..98704a5dde --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/speed/SpeedView.kt @@ -0,0 +1,59 @@ +package com.mogo.och.taxi.passenger.ui.speed + +import android.content.Context +import android.os.Build +import android.util.AttributeSet +import android.view.LayoutInflater +import androidx.constraintlayout.widget.ConstraintLayout +import com.mogo.eagle.core.data.map.MogoLocation +import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager +import com.mogo.eagle.core.utilcode.util.UiThreadHandler +import com.mogo.och.taxi.passenger.R +import kotlinx.android.synthetic.main.taxt_u_p_speed.view.actv_speed_value +import kotlin.math.abs + +class SpeedView : ConstraintLayout, IMoGoChassisLocationGCJ02Listener { + + private val TAG = "ItineraryView" + + constructor(context: Context) : super(context) + + constructor(context: Context, attributeSet: AttributeSet) : super(context, attributeSet) + + constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int) : super(context, attributeSet, defStyleAttr) + + constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int, defStyleRes: Int) : super(context, attributeSet, defStyleAttr, defStyleRes) + + private fun initView() { + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_speed, this, true) + } + + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if(isVisible){ + CallerChassisLocationGCJ02ListenerManager.addListener(TAG, 4, this) + }else{ + CallerChassisLocationGCJ02ListenerManager.removeListener(TAG) + } + } + + init { + try { + initView() + } catch (e: Exception) { + e.printStackTrace() + } + } + + override fun onChassisLocationGCJ02(mogoLocation: MogoLocation?) { + mogoLocation?.let { + UiThreadHandler.post { + val speedKM = (abs(it.gnssSpeed) * 3.6f).toInt() + actv_speed_value.text = speedKM.toString() + } + } + } + + +} \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/statusview/StatusBarView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/statusview/StatusBarView.kt index c1a34b2e2d..a5b5183bd7 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/statusview/StatusBarView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/statusview/StatusBarView.kt @@ -17,8 +17,8 @@ import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.och.common.module.manager.debug.DebugViewWatchDogFragment import com.mogo.och.taxi.passenger.R import com.mogo.och.taxi.passenger.ui.debug.DebugEvent -import kotlinx.android.synthetic.main.taxi_p_statusview.view.iv_biz_icon -import kotlinx.android.synthetic.main.taxi_p_statusview.view.vShowDebugView +import kotlinx.android.synthetic.main.taxt_u_p_statusview.view.vShowDebugView +import kotlinx.android.synthetic.main.taxt_u_p_statusview.view.iv_biz_icon import me.jessyan.autosize.utils.AutoSizeUtils import org.greenrobot.eventbus.EventBus import java.lang.ref.WeakReference @@ -55,8 +55,8 @@ class StatusBarView @JvmOverloads constructor( } init { - LayoutInflater.from(context).inflate(R.layout.taxi_p_statusview, this, true) - setBackgroundResource(R.drawable.taxi_p_status_bg) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_statusview, this, true) + setBackgroundResource(R.drawable.taxt_u_p_status_bg) isClickable = true isFocusable = true } diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/statusview/TaxiPBlueToothView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/statusview/TaxiPBlueToothView.kt index b27eeb0c21..463deba210 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/statusview/TaxiPBlueToothView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/statusview/TaxiPBlueToothView.kt @@ -8,7 +8,7 @@ import android.widget.RelativeLayout import com.mogo.eagle.core.function.api.devatools.mofang.IMoGoMoFangProvider import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager import com.mogo.och.taxi.passenger.R -import kotlinx.android.synthetic.main.taxi_p_blue_tooth.view.mofangView +import kotlinx.android.synthetic.main.taxt_u_p_blue_tooth.view.mofangView /** * 魔戒蓝牙控件 @@ -28,7 +28,7 @@ class TaxiPBlueToothView : RelativeLayout, IMoGoMoFangProvider.OnMoFangStatusLis constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int, defStyleRes: Int) : super(context, attrs, defStyleAttr, defStyleRes) init { - LayoutInflater.from(context).inflate(R.layout.taxi_p_blue_tooth, this, true) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_blue_tooth, this, true) } @@ -43,11 +43,11 @@ class TaxiPBlueToothView : RelativeLayout, IMoGoMoFangProvider.OnMoFangStatusLis } override fun onMoFangConnected() { - mofangView.setImageResource(R.drawable.taxi_p_blue_tooth_close) + mofangView.setImageResource(R.drawable.taxt_u_p_blue_tooth_close) } override fun onMoFangDisconnected() { - mofangView.setImageResource(R.drawable.taxi_p_blue_tooth_open) + mofangView.setImageResource(R.drawable.taxt_u_p_blue_tooth_open) } @SuppressLint("SetTextI18n") diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/systemsetting/TaxiPSettingView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/systemsetting/TaxiPSettingView.kt index 7baaf6247b..868ddda43b 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/systemsetting/TaxiPSettingView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/systemsetting/TaxiPSettingView.kt @@ -26,7 +26,10 @@ import com.mogo.eagle.core.utilcode.util.BrightnessUtils import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.och.common.module.wigets.MineGradientDrawable import com.mogo.och.taxi.passenger.R -import kotlinx.android.synthetic.main.taxi_p_setting_view.view.* +import kotlinx.android.synthetic.main.taxt_u_p_setting_view.view.sb_light_bar +import kotlinx.android.synthetic.main.taxt_u_p_setting_view.view.sb_voice_bar +import kotlinx.android.synthetic.main.taxt_u_p_setting_view.view.tvSoundPer +import kotlinx.android.synthetic.main.taxt_u_p_setting_view.view.tvVoicePer import me.jessyan.autosize.utils.AutoSizeUtils class TaxiPSettingView @JvmOverloads constructor( @@ -41,7 +44,7 @@ class TaxiPSettingView @JvmOverloads constructor( } init { - LayoutInflater.from(context).inflate(R.layout.taxi_p_setting_view, this, true) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_setting_view, this, true) initView() } diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/InfoVideoView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/InfoVideoView.kt index 33cf797af8..3b378abbb9 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/InfoVideoView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/InfoVideoView.kt @@ -10,7 +10,6 @@ import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.view.isVisible import androidx.recyclerview.widget.RecyclerView import com.mogo.eagle.core.function.main.MainMoGoApplication -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.common.module.wigets.media.IMediaDataSourceListener @@ -50,7 +49,7 @@ internal class InfoVideoView @JvmOverloads constructor( } init { - LayoutInflater.from(context).inflate(R.layout.taxi_p_mogo_video_layout, this, true) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_mogo_video_layout, this, true) initView() } @@ -172,7 +171,7 @@ internal class InfoVideoView @JvmOverloads constructor( indicatorView.setOrientation(IndicatorOrientation.INDICATOR_HORIZONTAL) indicatorView.setIndicatorStyle(IndicatorStyle.ROUND_RECT) indicatorView.setSliderColor( - Color.parseColor("#80000000"), Color.parseColor("#3FACFD"), + Color.parseColor("#80FFFFFF"), Color.parseColor("#3FACFD"), Color.parseColor("#3FACFD") ) indicatorView.setSliderWidth(9f, 54f) diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/RecyclerVideoAdapter.java b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/RecyclerVideoAdapter.java index 31922ff100..4d9bac7f6d 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/RecyclerVideoAdapter.java +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/RecyclerVideoAdapter.java @@ -43,7 +43,7 @@ public class RecyclerVideoAdapter extends RecyclerView.Adapter() - params[TaxiPassengerConst.EVENT_PARAM_SN] = MoGoAiCloudClientConfig.getInstance().sn + params[TaxiPassengerConst.EVENT_PARAM_SN] = SharedPrefsMgr.getInstance().sn params[TaxiPassengerConst.EVENT_PARAM_PLATE_NUM] = if (TextUtils.isEmpty(plateNum)) "" else plateNum params[TaxiPassengerConst.EVENT_PARAM_ENV_ONLINE] = DebugConfig.getNetMode() == DebugConfig.NET_MODE_RELEASE params[TaxiPassengerConst.EVENT_PARAM_TIME] = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd_HH_mm_ss) diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/widget/ConsultVideoPlayer.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/widget/ConsultVideoPlayer.kt index 4c8ccfc5c9..64ecdb2584 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/widget/ConsultVideoPlayer.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/widget/ConsultVideoPlayer.kt @@ -20,7 +20,6 @@ import androidx.core.app.ActivityCompat import com.mogo.eagle.core.utilcode.util.TimeTransformUtils import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider -import com.mogo.och.common.module.wigets.media.MediaData import com.mogo.och.common.module.wigets.media.MediaItem import com.mogo.och.taxi.passenger.R import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView @@ -63,7 +62,7 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { constructor(context: Context?, fullFlag: Boolean?) : super(context, fullFlag) override fun init(context: Context) { - mEnlargeImageRes = R.drawable.taxi_p_change_full + mEnlargeImageRes = R.drawable.taxt_u_p_change_full super.init(context) start = findViewById(R.id.start) coverImage = findViewById(R.id.thumbImage) @@ -83,7 +82,7 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { aivStartPlay.scaleX = 0.8f aivStartPlay.scaleY = 0.8f - mProgressBar.thumb = ZoomDrawable.zoomDrawableImage(context,R.drawable.bg_taxi_p_video_index,0.66f,0.66f) + mProgressBar.thumb = ZoomDrawable.zoomDrawableImage(context,R.drawable.taxt_u_p_bg_video_index,0.66f,0.66f) } private fun addDrageAnchor(){ @@ -111,7 +110,7 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { titleTextView.layoutParams = layoutParams1 aivStartPlay.scaleX = 1f aivStartPlay.scaleY = 1f - val drawable = ActivityCompat.getDrawable(context, R.drawable.bg_taxi_p_video_index) + val drawable = ActivityCompat.getDrawable(context, R.drawable.taxt_u_p_bg_video_index) mProgressBar.thumb = drawable if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { mProgressBar.maxHeight = 6 @@ -130,7 +129,7 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { } override fun getLayoutId(): Int { - return R.layout.taxi_p_video_show + return R.layout.taxt_u_p_video_show } override fun updateStartImage() { @@ -426,7 +425,7 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { cloneParams(this, gsyVideoPlayer) val frameLayout = FrameLayout(context) if (gsyVideoPlayer.fullscreenButton != null) { - gsyVideoPlayer.fullscreenButton.setImageResource(R.drawable.taxi_p_change_normal) + gsyVideoPlayer.fullscreenButton.setImageResource(R.drawable.taxt_u_p_change_normal) gsyVideoPlayer.fullscreenButton.setOnClickListener { v -> if (mBackFromFullScreenListener == null) { clearFullscreenLayout(gsyVideoPlayer) diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/TaxiPassengerCheckView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/widget/NumberCheckView.kt similarity index 55% rename from OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/TaxiPassengerCheckView.kt rename to OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/widget/NumberCheckView.kt index dad6f5f563..ad55a1e411 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/check/TaxiPassengerCheckView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/widget/NumberCheckView.kt @@ -1,88 +1,74 @@ -package com.mogo.och.taxi.passenger.ui.check +package com.mogo.och.taxi.passenger.widget import android.content.Context -import android.graphics.Typeface -import android.text.Spannable -import android.text.SpannableStringBuilder -import android.text.style.TextAppearanceSpan import android.util.AttributeSet import android.view.LayoutInflater import android.view.View +import android.widget.FrameLayout import android.widget.TextView +import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.content.ContextCompat -import androidx.lifecycle.ViewModelProvider import com.mogo.commons.voice.AIAssist -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.util.OverlayViewUtils import com.mogo.eagle.core.utilcode.util.ToastUtils -import com.mogo.och.common.module.utils.FrameAnimatorContainer import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.taxi.passenger.R -import com.mogo.och.taxi.passenger.ui.arrived.ArrivedView -import com.mogo.och.taxi.passenger.widget.WindowRelativeLayout -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.iv_zhi_normal -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_count -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_end -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_start -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_back -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_eight -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_first -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_five -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_four -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_fourth -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_nine -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_one -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_second -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_seven -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_six -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_submit -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_third -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_three -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_two -import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_passenger_number_zero +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_back +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_eight +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_first +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_five +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_four +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_fourth +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_nine +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_one +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_second +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_seven +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_six +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_submit +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_third +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_three +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_two +import kotlinx.android.synthetic.main.taxt_u_p_check_number.view.tv_taxi_passenger_number_zero -/** - * V2X预警事件view:通过FloatWindow呈现,无需加入到自定义layout中 - * - * Created on 2022/3/16 - */ -class TaxiPassengerCheckView : WindowRelativeLayout, View.OnClickListener, - ChekViewModel.CheckCallback { - - constructor(context: Context?) : super(context) - - constructor(context: Context?, attributeSet: AttributeSet) : super(context, attributeSet) - - constructor(context: Context?, attributeSet: AttributeSet, defStyleAttr: Int) : super(context, attributeSet, defStyleAttr) - - constructor(context: Context?, attributeSet: AttributeSet, defStyleAttr: Int, defStyleRes: Int) : super(context, attributeSet, defStyleAttr, defStyleRes) +class NumberCheckView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : FrameLayout(context, attrs, defStyleAttr), View.OnClickListener { private var index = 0 private var phone = "" private val numSelect = arrayOfNulls(4) private val numSelectTextView = arrayOfNulls(4) - private lateinit var viewModel:ChekViewModel - private var taxiPxiaozhiCheck: FrameAnimatorContainer?=null + var submitListener: SubmitListener? = null + companion object { + const val TAG = "NumberCheckView" + } + + init { + try { + initView(context) + } catch (e: Exception) { + e.printStackTrace() + } + } + + fun resetNum(phone:String){ + this.phone = phone + clearNumber() + } private fun initView(context: Context) { d(SceneConstant.M_TAXI_P + TAG, "initView") - LayoutInflater.from(context).inflate(R.layout.taxi_p_passenger_check_panel, this, true) + LayoutInflater.from(context).inflate(R.layout.taxt_u_p_check_number, this, true) keyBoardLogic() numSelectTextView[0] = tv_taxi_passenger_number_first numSelectTextView[1] = tv_taxi_passenger_number_second numSelectTextView[2] = tv_taxi_passenger_number_third numSelectTextView[3] = tv_taxi_passenger_number_fourth - - taxiPxiaozhiCheck = FrameAnimatorContainer(R.array.xiaozhi_normal, 12,iv_zhi_normal) - taxiPxiaozhiCheck?.setOnAnimStopListener(object : FrameAnimatorContainer.OnAnimationStoppedListener{ - override fun AnimationStopped() { - CallerLogger.d(SceneConstant.M_TAXI_P + ArrivedView.TAG, "动画暂停") - } - }) } private fun keyBoardLogic() { @@ -135,19 +121,7 @@ class TaxiPassengerCheckView : WindowRelativeLayout, View.OnClickListener, VoiceNotice.showNotice("验证失败!再检查一下吧~", AIAssist.LEVEL2) return } - viewModel.checkAndUpdateStatus(numberStr) - } - - override fun onAttachedToWindow() { - super.onAttachedToWindow() - viewModel = ViewModelProvider(this).get(ChekViewModel::class.java) - viewModel.setStartAutopilotCallback(this) - taxiPxiaozhiCheck?.start() - } - - override fun onDetachedFromWindow() { - super.onDetachedFromWindow() - taxiPxiaozhiCheck?.stop() + submitListener?.trySubmit(numberStr) } private fun selectIndex(i: Int) { @@ -201,7 +175,7 @@ class TaxiPassengerCheckView : WindowRelativeLayout, View.OnClickListener, private fun changeStyle() { numSelectTextView.forEachIndexed { indexIn, textView -> if(indexIn==index){ - numSelectTextView[index]!!.setBackgroundResource(R.drawable.bg_taxi_p_checked_input_background) + numSelectTextView[index]!!.setBackgroundResource(R.drawable.taxt_u_p_bg_checked_input_background) numSelectTextView[index]!!.setTextColor( ContextCompat.getColor( @@ -217,7 +191,7 @@ class TaxiPassengerCheckView : WindowRelativeLayout, View.OnClickListener, ) ) }else{ - numSelectTextView[indexIn]!!.setBackgroundResource(R.drawable.bg_taxi_p_check_input_background) + numSelectTextView[indexIn]!!.setBackgroundResource(R.drawable.taxt_u_p_bg_check_input_background) numSelectTextView[indexIn]!!.setTextColor( ContextCompat.getColor( context, @@ -235,41 +209,9 @@ class TaxiPassengerCheckView : WindowRelativeLayout, View.OnClickListener, ) } } - } - companion object { - const val TAG = "TaxiPassengerCheckView" - } - - init { - try { - initView(context) - } catch (e: Exception) { - e.printStackTrace() - } - } - - override fun setOrderInfo(startSiteAddr: String?, endSiteAddr: String?, passengerNum: String?, phone: String?) { - this.phone = phone?:"" - val sb = SpannableStringBuilder("乘客数:$passengerNum 位") // 包装字体内容 - sb.setSpan( - TextAppearanceSpan("default", - Typeface.NORMAL,100, - ContextCompat.getColorStateList(context,R.color.taxi_p_check_passenger_number) ,null ), - 4, 5, Spannable.SPAN_INCLUSIVE_INCLUSIVE) - tv_passenger_count.text = sb - tv_passenger_start.text = "起 点 : $startSiteAddr" - tv_passenger_end.text = "终 点 : $endSiteAddr" - for(i in numSelect.indices){ - numSelect[i] = null - } - numSelectTextView.forEach { - it?.text = "" - } - } - - override fun dismissWindow() { - OverlayViewUtils.dismissOverlayView(this) + interface SubmitListener { + fun trySubmit(number: String) } } \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/anim/alpha_show_hide.xml b/OCH/taxi/unmanned-passenger/src/main/res/anim/alpha_show_hide.xml deleted file mode 100644 index ceac4e6062..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/anim/alpha_show_hide.xml +++ /dev/null @@ -1,3 +0,0 @@ - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/anim/left_to_right.xml b/OCH/taxi/unmanned-passenger/src/main/res/anim/left_to_right.xml deleted file mode 100644 index dfe499b9b6..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/anim/left_to_right.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/anim/right_to_left.xml b/OCH/taxi/unmanned-passenger/src/main/res/anim/right_to_left.xml deleted file mode 100644 index 39b17e037e..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/anim/right_to_left.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/anim/alpha_hide_show.xml b/OCH/taxi/unmanned-passenger/src/main/res/anim/taxt_u_p_alpha_hide_show.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/anim/alpha_hide_show.xml rename to OCH/taxi/unmanned-passenger/src/main/res/anim/taxt_u_p_alpha_hide_show.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/animator/alpha_hide_hide_f.xml b/OCH/taxi/unmanned-passenger/src/main/res/animator/alpha_hide_hide_f.xml deleted file mode 100644 index 599149e9a7..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/animator/alpha_hide_hide_f.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/animator/alpha_hide_show_f.xml b/OCH/taxi/unmanned-passenger/src/main/res/animator/alpha_hide_show_f.xml deleted file mode 100644 index 8c6acc7439..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/animator/alpha_hide_show_f.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/color/taxi_autopilot_text_color_selector.xml b/OCH/taxi/unmanned-passenger/src/main/res/color/taxi_autopilot_text_color_selector.xml deleted file mode 100644 index 16cef94271..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/color/taxi_autopilot_text_color_selector.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/color/taxi_autopilot_text_color_selector.xml b/OCH/taxi/unmanned-passenger/src/main/res/color/taxt_u_p_autopilot_text_color_selector.xml similarity index 100% rename from OCH/taxi/passenger/src/main/res/color/taxi_autopilot_text_color_selector.xml rename to OCH/taxi/unmanned-passenger/src/main/res/color/taxt_u_p_autopilot_text_color_selector.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_001.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_001.webp new file mode 100644 index 0000000000..ac6986d8a2 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_001.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_002.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_002.webp new file mode 100644 index 0000000000..e321c08024 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_002.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_003.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_003.webp new file mode 100644 index 0000000000..d78521d4f0 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_003.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_004.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_004.webp new file mode 100644 index 0000000000..b1ac22f7b4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_004.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_005.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_005.webp new file mode 100644 index 0000000000..ee47c8bcc4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_005.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_006.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_006.webp new file mode 100644 index 0000000000..b856948a3a Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_006.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_007.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_007.webp new file mode 100644 index 0000000000..4d1c41cefa Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_007.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_008.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_008.webp new file mode 100644 index 0000000000..e175e9762a Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_008.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_009.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_009.webp new file mode 100644 index 0000000000..47d9df2ee5 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_009.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_010.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_010.webp new file mode 100644 index 0000000000..ed5936b03d Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_010.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_011.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_011.webp new file mode 100644 index 0000000000..6ff1c70dde Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_011.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_012.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_012.webp new file mode 100644 index 0000000000..48e3f9d7e4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_012.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_013.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_013.webp new file mode 100644 index 0000000000..95f9ca9396 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_013.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_014.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_014.webp new file mode 100644 index 0000000000..2f4322ae09 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_014.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_015.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_015.webp new file mode 100644 index 0000000000..9b4f9296e4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_015.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_016.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_016.webp new file mode 100644 index 0000000000..f33e356c2d Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_016.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_017.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_017.webp new file mode 100644 index 0000000000..53892cbcfa Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_017.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_018.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_018.webp new file mode 100644 index 0000000000..c153bc9fe9 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_018.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_019.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_019.webp new file mode 100644 index 0000000000..2ba9b98b88 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_019.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_020.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_020.webp new file mode 100644 index 0000000000..3a749edd11 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_020.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_021.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_021.webp new file mode 100644 index 0000000000..fccb3828e8 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_021.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_022.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_022.webp new file mode 100644 index 0000000000..6cceb3cd60 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_022.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_023.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_023.webp new file mode 100644 index 0000000000..d9c798b3fd Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_023.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_024.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_024.webp new file mode 100644 index 0000000000..c78acdb8a0 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_024.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_025.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_025.webp new file mode 100644 index 0000000000..65b9a9e194 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_025.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_026.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_026.webp new file mode 100644 index 0000000000..c647c74df4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_026.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_027.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_027.webp new file mode 100644 index 0000000000..1266d6bbed Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_027.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_028.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_028.webp new file mode 100644 index 0000000000..330546e40b Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_028.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_029.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_029.webp new file mode 100644 index 0000000000..cc0a7a97d0 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_029.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_030.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_030.webp new file mode 100644 index 0000000000..6ddbafbe37 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_030.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_031.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_031.webp new file mode 100644 index 0000000000..ecedc62020 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_031.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_032.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_032.webp new file mode 100644 index 0000000000..b7e7db5e71 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_032.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_033.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_033.webp new file mode 100644 index 0000000000..342c0020bb Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_033.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_034.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_034.webp new file mode 100644 index 0000000000..0eeb6dc6b7 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_034.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_035.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_035.webp new file mode 100644 index 0000000000..fa64347ca8 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_035.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_036.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_036.webp new file mode 100644 index 0000000000..e2cfc4e788 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_036.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_037.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_037.webp new file mode 100644 index 0000000000..1f9ca843c0 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_037.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_038.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_038.webp new file mode 100644 index 0000000000..2b15bffdb5 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_038.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_039.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_039.webp new file mode 100644 index 0000000000..d58825b1c1 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_039.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_040.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_040.webp new file mode 100644 index 0000000000..ec81a78754 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_040.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_041.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_041.webp new file mode 100644 index 0000000000..3e867de372 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_041.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_042.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_042.webp new file mode 100644 index 0000000000..d52a725dfb Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_042.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_043.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_043.webp new file mode 100644 index 0000000000..388094a65d Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_043.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_044.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_044.webp new file mode 100644 index 0000000000..71021bb301 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_044.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_045.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_045.webp new file mode 100644 index 0000000000..0cc52255d5 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_045.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_046.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_046.webp new file mode 100644 index 0000000000..7db23869cf Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_046.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_047.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_047.webp new file mode 100644 index 0000000000..1d930b5822 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_047.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_048.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_048.webp new file mode 100644 index 0000000000..24250f0df9 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_048.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_049.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_049.webp new file mode 100644 index 0000000000..e50175290a Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_049.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_050.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_050.webp new file mode 100644 index 0000000000..06371b3661 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_050.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_051.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_051.webp new file mode 100644 index 0000000000..28176c5a3e Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_051.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_052.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_052.webp new file mode 100644 index 0000000000..14263c7acd Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_052.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_053.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_053.webp new file mode 100644 index 0000000000..351e8c73c6 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_053.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_054.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_054.webp new file mode 100644 index 0000000000..230f6f1fa9 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_054.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_055.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_055.webp new file mode 100644 index 0000000000..5f4e461298 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_055.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_056.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_056.webp new file mode 100644 index 0000000000..0eeaaaabb5 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_056.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_057.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_057.webp new file mode 100644 index 0000000000..a7d5cbce77 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_057.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_058.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_058.webp new file mode 100644 index 0000000000..b6c3f0aeb9 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_058.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_059.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_059.webp new file mode 100644 index 0000000000..78c5a913d8 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_059.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_060.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_060.webp new file mode 100644 index 0000000000..4380bd0fb9 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/arrive_dest_060.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_000.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_000.webp new file mode 100644 index 0000000000..4fd3a55623 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_000.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_001.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_001.webp new file mode 100644 index 0000000000..ff76102048 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_001.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_002.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_002.webp new file mode 100644 index 0000000000..f13e13c8e8 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_002.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_003.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_003.webp new file mode 100644 index 0000000000..a57a579438 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_003.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_004.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_004.webp new file mode 100644 index 0000000000..a3bdb1aaff Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_004.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_005.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_005.webp new file mode 100644 index 0000000000..ecbbc89c66 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_005.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_006.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_006.webp new file mode 100644 index 0000000000..02d113cd55 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_006.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_007.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_007.webp new file mode 100644 index 0000000000..452b5d7186 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_007.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_008.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_008.webp new file mode 100644 index 0000000000..6d733f4db0 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_008.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_009.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_009.webp new file mode 100644 index 0000000000..61d09b8abf Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_009.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_010.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_010.webp new file mode 100644 index 0000000000..d420b78d03 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_010.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_011.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_011.webp new file mode 100644 index 0000000000..7497d48ffe Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_011.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_012.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_012.webp new file mode 100644 index 0000000000..6efb7520fb Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_012.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_013.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_013.webp new file mode 100644 index 0000000000..a526aa891b Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_013.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_014.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_014.webp new file mode 100644 index 0000000000..39d73705f4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_014.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_015.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_015.webp new file mode 100644 index 0000000000..38f7c50908 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_015.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_016.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_016.webp new file mode 100644 index 0000000000..0f48fcb5fe Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_016.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_017.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_017.webp new file mode 100644 index 0000000000..71936c79b6 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_017.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_018.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_018.webp new file mode 100644 index 0000000000..3a20777ded Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_018.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_019.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_019.webp new file mode 100644 index 0000000000..495a30bd13 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_019.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_020.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_020.webp new file mode 100644 index 0000000000..db7de53f9d Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_020.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_021.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_021.webp new file mode 100644 index 0000000000..a63cbc779f Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_021.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_022.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_022.webp new file mode 100644 index 0000000000..f72a3b10b2 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_022.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_023.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_023.webp new file mode 100644 index 0000000000..cb55eaeb19 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_023.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_024.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_024.webp new file mode 100644 index 0000000000..58e0176822 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_024.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_025.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_025.webp new file mode 100644 index 0000000000..777c71ed42 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_025.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_026.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_026.webp new file mode 100644 index 0000000000..ce8d4f47e8 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_026.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_027.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_027.webp new file mode 100644 index 0000000000..b340be9702 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_027.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_028.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_028.webp new file mode 100644 index 0000000000..f2337b239b Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_028.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_029.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_029.webp new file mode 100644 index 0000000000..fc893561a2 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_029.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_030.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_030.webp new file mode 100644 index 0000000000..de157c9443 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_030.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_031.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_031.webp new file mode 100644 index 0000000000..1180e96402 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_031.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_032.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_032.webp new file mode 100644 index 0000000000..d19da1617e Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_032.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_033.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_033.webp new file mode 100644 index 0000000000..fa758321dd Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_033.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_034.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_034.webp new file mode 100644 index 0000000000..a0691e817d Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_034.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_035.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_035.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_035.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_036.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_036.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_036.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_037.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_037.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_037.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_038.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_038.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_038.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_039.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_039.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_039.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_040.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_040.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_040.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_041.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_041.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_041.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_042.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_042.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_042.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_043.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_043.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_043.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_044.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_044.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_044.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_045.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_045.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_045.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_046.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_046.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_046.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_047.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_047.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_047.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_048.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_048.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_048.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_049.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_049.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_049.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_050.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_050.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_050.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_051.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_051.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_051.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_052.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_052.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_052.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_053.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_053.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_053.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_054.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_054.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_054.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_055.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_055.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_055.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_056.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_056.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_056.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_057.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_057.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_057.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_058.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_058.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_058.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_059.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_059.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_059.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_060.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_060.webp new file mode 100644 index 0000000000..d3a85dadd3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/check2startautopilt_060.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00000.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00000.png new file mode 100755 index 0000000000..b50f7793cb Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00000.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00000_0.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00000_0.webp similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00000_0.webp rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00000_0.webp diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00001.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00001.png new file mode 100755 index 0000000000..08dba90d6b Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00001.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00002.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00002.png new file mode 100755 index 0000000000..143269c5ba Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00002.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00003.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00003.png new file mode 100755 index 0000000000..91d144997f Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00003.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00004.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00004.png new file mode 100755 index 0000000000..520207e077 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00004.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00005.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00005.png new file mode 100755 index 0000000000..4cd9d44512 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00005.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00006.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00006.png new file mode 100755 index 0000000000..15ab608c47 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00006.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00007.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00007.png new file mode 100755 index 0000000000..94fc4a3c18 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00007.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00008.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00008.png new file mode 100755 index 0000000000..49a518e6b4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00008.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00009.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00009.png new file mode 100755 index 0000000000..9b9ee61025 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00009.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00010.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00010.png new file mode 100755 index 0000000000..f15cd8bfab Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00010.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00011.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00011.png new file mode 100755 index 0000000000..d120fdfef9 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00011.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00012.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00012.png new file mode 100755 index 0000000000..37c3399c5f Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00012.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00013.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00013.png new file mode 100755 index 0000000000..b56ee1e630 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00013.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00014.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00014.png new file mode 100755 index 0000000000..58bcca6d8d Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00014.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00015.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00015.png new file mode 100755 index 0000000000..11c07cb0a5 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00015.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00016.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00016.png new file mode 100755 index 0000000000..c7ef0e15ee Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00016.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00017.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00017.png new file mode 100755 index 0000000000..169da11cdd Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00017.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00018.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00018.png new file mode 100755 index 0000000000..f62777b866 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00018.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00019.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00019.png new file mode 100755 index 0000000000..2021d15195 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00019.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00020.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00020.png new file mode 100755 index 0000000000..cff1a8274f Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00020.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00021.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00021.png new file mode 100755 index 0000000000..cdd671caf5 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00021.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00022.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00022.png new file mode 100755 index 0000000000..fc150313f4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00022.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00023.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00023.png new file mode 100755 index 0000000000..6d400a4307 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00023.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00024.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00024.png new file mode 100755 index 0000000000..936db14ea5 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00024.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00025.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00025.png new file mode 100755 index 0000000000..0b108a99c3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00025.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00026.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00026.png new file mode 100755 index 0000000000..c7b71ca0a5 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00026.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00027.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00027.png new file mode 100755 index 0000000000..accf229586 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00027.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00028.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00028.png new file mode 100755 index 0000000000..5188456548 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00028.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00029.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00029.png new file mode 100755 index 0000000000..c50625f23f Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00029.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00030.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00030.png new file mode 100755 index 0000000000..23c4e1b127 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00030.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00031.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00031.png new file mode 100755 index 0000000000..413de61843 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00031.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00032.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00032.png new file mode 100755 index 0000000000..05654591a4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00032.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00033.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00033.png new file mode 100755 index 0000000000..58aa4d2e50 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00033.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00034.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00034.png new file mode 100755 index 0000000000..6dc4033e04 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/image_00034.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00000.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00000.png new file mode 100755 index 0000000000..caa97c01c2 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00000.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00001.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00001.png new file mode 100755 index 0000000000..b304b5be01 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00001.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00002.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00002.png new file mode 100755 index 0000000000..2bfb865ea8 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00002.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00003.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00003.png new file mode 100755 index 0000000000..9a8d3fd56a Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00003.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00004.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00004.png new file mode 100755 index 0000000000..31b5a6ab19 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00004.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00005.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00005.png new file mode 100755 index 0000000000..46ef8cc4c2 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00005.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00006.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00006.png new file mode 100755 index 0000000000..75703db7f2 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00006.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00007.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00007.png new file mode 100755 index 0000000000..09bb325885 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00007.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00008.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00008.png new file mode 100755 index 0000000000..915e8e022a Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00008.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00009.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00009.png new file mode 100755 index 0000000000..c8f7d3fa64 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00009.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00010.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00010.png new file mode 100755 index 0000000000..9419f69893 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00010.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00011.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00011.png new file mode 100755 index 0000000000..c61efd509b Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00011.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00012.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00012.png new file mode 100755 index 0000000000..3c02573dae Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00012.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00013.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00013.png new file mode 100755 index 0000000000..54d6931f31 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00013.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00014.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00014.png new file mode 100644 index 0000000000..599bd69bd4 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00014.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00015.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00015.png new file mode 100644 index 0000000000..2bce1d0f09 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00015.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00016.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00016.png new file mode 100644 index 0000000000..59eb21a18c Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00016.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00017.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00017.png new file mode 100644 index 0000000000..03ead11ef2 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00017.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00018.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00018.png new file mode 100755 index 0000000000..e8820e774b Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/light_00018.png differ diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/tail_ani_0000.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/tail_ani_0000.webp similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/tail_ani_0000.webp rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/tail_ani_0000.webp diff --git a/OCH/taxi/passenger/src/main/res/drawable-xhdpi/tail_ani_0090.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/tail_ani_0090.webp similarity index 100% rename from OCH/taxi/passenger/src/main/res/drawable-xhdpi/tail_ani_0090.webp rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/tail_ani_0090.webp diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_front_left_door.9.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_front_left_door.9.png new file mode 100644 index 0000000000..8187b384fd Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_front_left_door.9.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_front_right_door.9.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_front_right_door.9.png new file mode 100644 index 0000000000..a8e69c82e5 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_front_right_door.9.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_rear_left_door.9.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_rear_left_door.9.png new file mode 100644 index 0000000000..7115749df7 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_rear_left_door.9.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_rear_right_door.9.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_rear_right_door.9.png new file mode 100644 index 0000000000..f18fb44b2b Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_rear_right_door.9.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_speed_bg.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_speed_bg.webp new file mode 100644 index 0000000000..40280b8e5e Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_speed_bg.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_startautopilt_car_top.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_startautopilt_car_top.png new file mode 100644 index 0000000000..2a8616a6cd Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxi_u_p_startautopilt_car_top.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_arrived_close.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_arrived_close.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_arrived_close.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_arrived_close.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_arrived_glide.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_arrived_glide.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_arrived_glide.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_arrived_glide.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/bg_taxi_p_checked_input_background.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bg_checked_input_background.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/bg_taxi_p_checked_input_background.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bg_checked_input_background.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bg_video_index.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bg_video_index.png new file mode 100644 index 0000000000..996d10220f Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bg_video_index.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_blue_tooth_close.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_blue_tooth_close.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_blue_tooth_close.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_blue_tooth_close.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_blue_tooth_open.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_blue_tooth_open.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_blue_tooth_open.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_blue_tooth_open.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_bar_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_bar_bg.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_bar_bg.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_bar_bg.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_bar_select_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_bar_select_bg.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_bar_select_bg.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_bar_select_bg.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_overmap_normal.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_overmap_normal.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_overmap_normal.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_overmap_normal.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_overmap_press.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_overmap_press.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_overmap_press.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_overmap_press.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_precisionmap_normal.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_precisionmap_normal.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_precisionmap_normal.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_precisionmap_normal.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_precisionmap_press.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_precisionmap_press.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_precisionmap_press.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_precisionmap_press.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_video_normal.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_video_normal.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_video_normal.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_video_normal.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_video_press.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_video_press.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_bottom_video_press.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_bottom_video_press.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_change_full.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_change_full.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_change_full.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_change_full.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_change_normal.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_change_normal.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_change_normal.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_change_normal.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_end_boll.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_end_boll.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_end_boll.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_end_boll.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_input_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_input_bg.png new file mode 100644 index 0000000000..705ec70021 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_input_bg.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_logo.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_logo.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_logo.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_logo.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_panel_bg.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_panel_bg.webp similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_panel_bg.webp rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_panel_bg.webp diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_start_boll.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_start_boll.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_start_boll.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_start_boll.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_start_end_line.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_start_end_line.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_start_end_line.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_check_start_end_line.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_front_left_door_bg.9.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_front_left_door_bg.9.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_front_left_door_bg.9.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_front_left_door_bg.9.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_front_right_door_bg.9.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_front_right_door_bg.9.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_front_right_door_bg.9.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_front_right_door_bg.9.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_function_voice_humb.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_function_voice_humb.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_function_voice_humb.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_function_voice_humb.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_itinerary_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_itinerary_bg.png new file mode 100755 index 0000000000..a626a703f3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_itinerary_bg.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/iv_light_increase_set.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_iv_light_increase_set.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/iv_light_increase_set.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_iv_light_increase_set.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/iv_light_set.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_iv_light_set.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/iv_light_set.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_iv_light_set.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/iv_voice_increase_set.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_iv_voice_increase_set.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/iv_voice_increase_set.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_iv_voice_increase_set.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/iv_voice_set.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_iv_voice_set.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/iv_voice_set.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_iv_voice_set.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_location_center.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_location_center.png new file mode 100644 index 0000000000..c2cdfb3af7 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_location_center.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_arrow_arrived.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_arrow_arrived.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_arrow_arrived.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_arrow_arrived.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_arrow_un_arrive.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_arrow_un_arrive.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_arrow_un_arrive.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_arrow_un_arrive.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_car.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_car.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_car.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_car.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_car_light.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_car_light.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_car_light.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_car_light.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_view_dir_end.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_view_dir_end.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_view_dir_end.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_view_dir_end.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_view_dir_start.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_view_dir_start.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_map_view_dir_start.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_map_view_dir_start.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_mogo_logo.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_mogo_logo.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_mogo_logo.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_mogo_logo.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_mogo_video_play.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_mogo_video_play.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_mogo_video_play.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_mogo_video_play.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_overmap_arrived.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_overmap_arrived.png new file mode 100644 index 0000000000..7ebe72d080 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_overmap_arrived.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_overmap_arriving.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_overmap_arriving.png new file mode 100644 index 0000000000..ee96bb0edc Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_overmap_arriving.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_pnc_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_pnc_bg.png new file mode 100644 index 0000000000..551b74a1fa Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_pnc_bg.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_rear_left_door_bg.9.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_rear_left_door_bg.9.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_rear_left_door_bg.9.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_rear_left_door_bg.9.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_rear_right_door_bg.9.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_rear_right_door_bg.9.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_rear_right_door_bg.9.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_rear_right_door_bg.9.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_right_rear_cam.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_right_rear_cam.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_right_rear_cam.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_right_rear_cam.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_roma_checked.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_roma_checked.png new file mode 100644 index 0000000000..1119113e5c Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_roma_checked.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_roma_normal.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_roma_normal.png new file mode 100644 index 0000000000..eca54cb0cf Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_roma_normal.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_setting_checked.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_setting_checked.png new file mode 100644 index 0000000000..33e50083e3 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_setting_checked.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_setting_normal.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_setting_normal.png new file mode 100644 index 0000000000..b31bfa8d64 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_setting_normal.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_setting_view_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_setting_view_bg.png new file mode 100755 index 0000000000..2936e90060 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_setting_view_bg.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_start_panel__df_bg.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_start_panel__df_bg.webp similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_start_panel__df_bg.webp rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_start_panel__df_bg.webp diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_start_panel__hq_bg.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_start_panel__hq_bg.webp similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_start_panel__hq_bg.webp rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_start_panel__hq_bg.webp diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_status_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_status_bg.png new file mode 100644 index 0000000000..ea6962bfca Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_status_bg.png differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_video_holder.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_video_holder.webp similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_video_holder.webp rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_video_holder.webp diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_video_light_bg.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_video_light_bg.webp new file mode 100644 index 0000000000..a4c8aa81f0 Binary files /dev/null and b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/taxt_u_p_video_light_bg.webp differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_000.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_000.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_000.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_000.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_001.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_001.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_001.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_001.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_002.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_002.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_002.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_002.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_003.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_003.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_003.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_003.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_004.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_004.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_004.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_004.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_005.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_005.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_005.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_005.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_006.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_006.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_006.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_006.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_007.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_007.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_007.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_007.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_008.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_008.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_008.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_008.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_009.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_009.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_009.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_009.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_010.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_010.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_010.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_010.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_011.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_011.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_011.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_011.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_012.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_012.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_012.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_012.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_013.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_013.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_013.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_013.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_014.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_014.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_014.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_014.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_015.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_015.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_015.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_015.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_016.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_016.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_016.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_016.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_017.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_017.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_017.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_017.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_018.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_018.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_018.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_018.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_019.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_019.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_019.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_019.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_020.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_020.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_020.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_020.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_021.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_021.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_021.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_021.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_022.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_022.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_022.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_022.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_023.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_023.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_023.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_023.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_024.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_024.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_024.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_024.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_025.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_025.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_025.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_025.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_026.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_026.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_026.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_026.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_027.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_027.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_027.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_027.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_028.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_028.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_028.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_028.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_029.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_029.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_029.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_029.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_030.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_030.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_030.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_030.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_031.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_031.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_031.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_031.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_032.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_032.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_032.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_032.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_033.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_033.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_033.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_033.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_034.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_034.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_034.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_034.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_035.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_035.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_035.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_035.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_036.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_036.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_036.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_036.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_037.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_037.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_037.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_037.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_038.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_038.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_038.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_038.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_039.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_039.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_039.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_039.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_040.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_040.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_040.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_040.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_041.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_041.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_041.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_041.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_042.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_042.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_042.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_042.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_043.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_043.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_043.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_043.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_044.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_044.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_044.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_044.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_045.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_045.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_045.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_045.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_046.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_046.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_046.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_046.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_047.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_047.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_047.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_047.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_048.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_048.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_belt_048.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_belt_048.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_00.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_00.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_00.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_00.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_01.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_01.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_01.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_01.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_02.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_02.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_02.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_02.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_03.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_03.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_03.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_03.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_04.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_04.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_04.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_04.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_05.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_05.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_05.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_05.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_06.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_06.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_06.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_06.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_07.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_07.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_07.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_07.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_08.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_08.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_08.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_08.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_09.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_09.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_09.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_09.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_10.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_10.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_10.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_10.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_11.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_11.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_11.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_11.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_12.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_12.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_12.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_12.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_13.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_13.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_13.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_13.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_14.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_14.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_14.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_14.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_15.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_15.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_15.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_15.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_16.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_16.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_16.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_16.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_17.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_17.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_17.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_17.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_18.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_18.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_18.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_18.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_19.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_19.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_19.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_19.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_20.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_20.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_20.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_20.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_21.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_21.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_21.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_21.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_22.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_22.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_22.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_22.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_23.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_23.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_23.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_23.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_24.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_24.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_24.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_24.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_25.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_25.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_25.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_25.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_26.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_26.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_26.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_26.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_27.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_27.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_27.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_27.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_28.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_28.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_28.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_28.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_29.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_29.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_29.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_29.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_30.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_30.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_30.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_30.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_31.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_31.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_31.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_31.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_32.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_32.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_32.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_32.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_33.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_33.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_33.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_33.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_34.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_34.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_34.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_34.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_35.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_35.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_35.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_35.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_36.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_36.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_36.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_36.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_37.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_37.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_37.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_37.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_38.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_38.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_38.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_38.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_39.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_39.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_39.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_39.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_40.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_40.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_40.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_40.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_41.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_41.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_41.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_41.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_42.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_42.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_42.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_42.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_43.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_43.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_43.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_43.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_44.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_44.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_44.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_44.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_45.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_45.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_45.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_45.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_46.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_46.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_46.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_46.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_47.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_47.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_47.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_47.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_48.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_48.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_48.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_48.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_49.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_49.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_49.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_49.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_50.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_50.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_50.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_50.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_51.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_51.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_51.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_51.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_52.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_52.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_52.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_52.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_53.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_53.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_53.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_53.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_54.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_54.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_54.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_54.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_55.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_55.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_55.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_55.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_56.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_56.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_56.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_56.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_57.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_57.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_57.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_57.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_58.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_58.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_58.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_58.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_59.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_59.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_59.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_59.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_60.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_60.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_60.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_60.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_61.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_61.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_61.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_61.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_62.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_62.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_62.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_62.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_63.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_63.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_63.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_63.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_64.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_64.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_64.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_64.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_65.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_65.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_65.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_65.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_66.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_66.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_66.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_66.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_67.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_67.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_67.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_67.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_68.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_68.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_68.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_68.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_69.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_69.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_69.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_69.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_70.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_70.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_70.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_70.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_71.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_71.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_71.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_71.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_72.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_72.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_72.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_72.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_73.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_73.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_73.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_73.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_74.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_74.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_74.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_74.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_75.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_75.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_75.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_75.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_76.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_76.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_76.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_76.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_77.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_77.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_77.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_77.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_78.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_78.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_78.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_78.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_79.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_79.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_79.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_79.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_80.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_80.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_80.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_80.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_81.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_81.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_81.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_81.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_82.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_82.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_82.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_82.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_83.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_83.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_83.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_83.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_84.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_84.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_84.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_84.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_85.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_85.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_85.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_85.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_86.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_86.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_86.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_86.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_87.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_87.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_87.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_87.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_88.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_88.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_88.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_88.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_89.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_89.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_89.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_89.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_90.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_90.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_90.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_90.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_91.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_91.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_91.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_91.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_92.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_92.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_92.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_92.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_93.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_93.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_93.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_93.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_94.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_94.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_94.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_94.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_95.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_95.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_95.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_95.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_96.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_96.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_love_96.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_love_96.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_safety_belt.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_safety_belt.png similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/xiaozhi_safety_belt.png rename to OCH/taxi/unmanned-passenger/src/main/res/drawable-nodpi/xiaozhi_safety_belt.png diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/bg_taxi_p_video_index.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/bg_taxi_p_video_index.png deleted file mode 100644 index 61f22d3bf0..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/bg_taxi_p_video_index.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/tail_ani_0000.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/tail_ani_0000.webp deleted file mode 100644 index 1448922144..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/tail_ani_0000.webp and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/tail_ani_0090.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/tail_ani_0090.webp deleted file mode 100644 index d10da861a8..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/tail_ani_0090.webp and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_overmap_arrived.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_overmap_arrived.png deleted file mode 100644 index 95f67cfb96..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_overmap_arrived.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_overmap_arriving.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_overmap_arriving.png deleted file mode 100644 index 1cac7d83b0..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_overmap_arriving.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_itinerary_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_itinerary_bg.png deleted file mode 100755 index b5ed8c603b..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_itinerary_bg.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_location_center.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_location_center.png deleted file mode 100644 index 2aa805a7c2..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_location_center.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_input_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_input_bg.png deleted file mode 100644 index 72c0f0fc40..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_passenger_check_input_bg.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_pnc_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_pnc_bg.png deleted file mode 100755 index 689770a17d..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_pnc_bg.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_roma_checked.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_roma_checked.png deleted file mode 100644 index 7377fd23a7..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_roma_checked.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_roma_normal.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_roma_normal.png deleted file mode 100644 index 38e78514d9..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_roma_normal.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_setting_checked.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_setting_checked.png deleted file mode 100644 index 017decf57c..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_setting_checked.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_setting_normal.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_setting_normal.png deleted file mode 100644 index c317fdc045..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_setting_normal.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_setting_view_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_setting_view_bg.png deleted file mode 100755 index b0338640a1..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_setting_view_bg.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_status_bg.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_status_bg.png deleted file mode 100755 index 32cda5c4ab..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_status_bg.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_video_light_bg.webp b/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_video_light_bg.webp deleted file mode 100644 index 563e818e94..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable-xhdpi/taxi_p_video_light_bg.webp and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00000.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00000.png deleted file mode 100755 index ad219a6fa0..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00000.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00001.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00001.png deleted file mode 100755 index 91132466c9..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00001.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00002.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00002.png deleted file mode 100755 index 87a2a8d3b5..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00002.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00003.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00003.png deleted file mode 100755 index 6959f79b9c..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00003.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00004.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00004.png deleted file mode 100755 index 083900fed9..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00004.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00005.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00005.png deleted file mode 100755 index 17bc486ffd..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00005.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00006.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00006.png deleted file mode 100755 index 6ef37fdb92..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00006.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00007.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00007.png deleted file mode 100755 index fa72979a0d..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00007.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00008.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00008.png deleted file mode 100755 index 0b076bc8f1..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00008.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00009.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00009.png deleted file mode 100755 index c62b70195d..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00009.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00010.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00010.png deleted file mode 100755 index 73342e7fb9..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00010.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00011.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00011.png deleted file mode 100755 index 1c15329feb..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00011.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00012.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00012.png deleted file mode 100755 index 7e353ecb4f..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00012.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00013.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00013.png deleted file mode 100755 index 9da325091a..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00013.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00014.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00014.png deleted file mode 100755 index fb152247de..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00014.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00015.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00015.png deleted file mode 100755 index 4b35b8379d..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00015.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00016.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00016.png deleted file mode 100755 index ce0f0f0cfd..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00016.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00017.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00017.png deleted file mode 100755 index ec5b1b9245..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00017.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00018.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00018.png deleted file mode 100755 index 55cb4ab0f0..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00018.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00019.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00019.png deleted file mode 100755 index a266730cbb..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00019.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00020.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00020.png deleted file mode 100755 index d7511c60ec..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00020.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00021.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00021.png deleted file mode 100755 index 1d513fa5d3..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00021.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00022.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00022.png deleted file mode 100755 index aa0fe8140e..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00022.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00023.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00023.png deleted file mode 100755 index 33cc69dca9..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00023.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00024.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00024.png deleted file mode 100755 index 609100cf2a..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00024.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00025.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00025.png deleted file mode 100755 index 0b4da3f947..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00025.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00026.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00026.png deleted file mode 100755 index 75aa470952..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00026.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00027.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00027.png deleted file mode 100755 index 5cae05bab0..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00027.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00028.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00028.png deleted file mode 100755 index 6466bb2ec7..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00028.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00029.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00029.png deleted file mode 100755 index 0f480e37b8..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00029.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00030.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00030.png deleted file mode 100755 index 3b077b70d4..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00030.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00031.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00031.png deleted file mode 100755 index b4ee1f783b..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00031.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00032.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00032.png deleted file mode 100755 index 451ee41777..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00032.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00033.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00033.png deleted file mode 100755 index b0f54dfbf4..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00033.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00034.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00034.png deleted file mode 100755 index afb758f6d2..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/image_00034.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00000.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00000.png deleted file mode 100755 index 94cf04741b..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00000.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00001.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00001.png deleted file mode 100755 index a33bb182c0..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00001.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00002.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00002.png deleted file mode 100755 index 62d06f31f2..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00002.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00003.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00003.png deleted file mode 100755 index 8c48101448..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00003.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00004.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00004.png deleted file mode 100755 index c30e868df9..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00004.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00005.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00005.png deleted file mode 100755 index e49896b33a..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00005.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00006.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00006.png deleted file mode 100755 index 01048ba3ec..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00006.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00007.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00007.png deleted file mode 100755 index 258d79d868..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00007.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00008.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00008.png deleted file mode 100755 index 07a8d7d87f..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00008.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00009.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00009.png deleted file mode 100755 index 835539331b..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00009.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00010.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00010.png deleted file mode 100755 index aa016c8382..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00010.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00011.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00011.png deleted file mode 100755 index b8ccfb7cc4..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00011.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00012.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00012.png deleted file mode 100755 index 9305c86983..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00012.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00013.png b/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00013.png deleted file mode 100755 index 9aa4bd5c29..0000000000 Binary files a/OCH/taxi/unmanned-passenger/src/main/res/drawable/light_00013.png and /dev/null differ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/roma_taxi_p_bg_selector.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/roma_taxi_p_bg_selector.xml deleted file mode 100644 index f51169b6b9..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/drawable/roma_taxi_p_bg_selector.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_setting_selector.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_setting_selector.xml deleted file mode 100644 index 8058cbece5..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_setting_selector.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_start_autopilot_bottom_bg.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_start_autopilot_bottom_bg.xml deleted file mode 100644 index 54909012c8..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_start_autopilot_bottom_bg.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_u_p_enable_start_autopilot.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_u_p_enable_start_autopilot.xml new file mode 100644 index 0000000000..050ca629ef --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_u_p_enable_start_autopilot.xml @@ -0,0 +1,10 @@ + + + + + + diff --git a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_bg.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_u_p_roma_distance_bg.xml similarity index 59% rename from OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_bg.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_u_p_roma_distance_bg.xml index d86b36b5c1..20ccf3f45e 100644 --- a/OCH/taxi/passenger/src/main/res/drawable/bg_taxi_p_video_bg.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_u_p_roma_distance_bg.xml @@ -1,6 +1,6 @@ - - + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_u_p_unable_start_autopilot.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_u_p_unable_start_autopilot.xml new file mode 100644 index 0000000000..64040b5c44 --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_u_p_unable_start_autopilot.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_check_input_background.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_check_input_background.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_check_input_background.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_check_input_background.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_keyboard_background.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_keyboard_background.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_keyboard_background.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_keyboard_background.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_video_bg.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_video_bg.xml new file mode 100644 index 0000000000..0033c93649 --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_video_bg.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_video_bg_top.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_video_bg_top.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_video_bg_top.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_video_bg_top.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_video_light_bg_shape.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_video_light_bg_shape.xml similarity index 88% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_video_light_bg_shape.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_video_light_bg_shape.xml index 387f89e2eb..53fe75fede 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/drawable/bg_taxi_p_video_light_bg_shape.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_bg_video_light_bg_shape.xml @@ -6,5 +6,5 @@ android:bottomRightRadius="36dp" android:topLeftRadius="36dp" android:topRightRadius="36dp" /> - + diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_function_voice_right_process_humb.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_function_voice_right_process_humb.xml similarity index 73% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_function_voice_right_process_humb.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_function_voice_right_process_humb.xml index 1c98f8cad6..a22cae0b5a 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_function_voice_right_process_humb.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_function_voice_right_process_humb.xml @@ -1,7 +1,7 @@ diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_roma_bg_selector.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_roma_bg_selector.xml new file mode 100644 index 0000000000..cfe368d7fd --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_roma_bg_selector.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_setting_selector.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_setting_selector.xml new file mode 100644 index 0000000000..00b43aa368 --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_setting_selector.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_start_autopilot_bottom_bg.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_start_autopilot_bottom_bg.xml new file mode 100644 index 0000000000..3243142fc8 --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_start_autopilot_bottom_bg.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_start_autopilot_txt_btn_bg.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_start_autopilot_txt_btn_bg.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_start_autopilot_txt_btn_bg.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_start_autopilot_txt_btn_bg.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_video_order_process.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_video_order_process.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_video_order_process.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_video_order_process.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_video_seekbar_style.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_video_seekbar_style.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_video_seekbar_style.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_video_seekbar_style.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_xiaozhibelt_info.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_xiaozhibelt_info.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_xiaozhibelt_info.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_xiaozhibelt_info.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_xiaozhibelt_info_ball.xml b/OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_xiaozhibelt_info_ball.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/drawable/taxi_p_xiaozhibelt_info_ball.xml rename to OCH/taxi/unmanned-passenger/src/main/res/drawable/taxt_u_p_xiaozhibelt_info_ball.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/font/din.ttf b/OCH/taxi/unmanned-passenger/src/main/res/font/taxt_u_p_din.ttf similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/font/din.ttf rename to OCH/taxi/unmanned-passenger/src/main/res/font/taxt_u_p_din.ttf diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_navi_view.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_navi_view.xml deleted file mode 100644 index f3dc5139bd..0000000000 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_navi_view.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_arrived_end_panel.xml similarity index 52% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_arrived_end_panel.xml index 086e795a01..fa8a889dc4 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_arrived_end_panel.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_arrived_end_panel.xml @@ -7,8 +7,8 @@ android:layout_height="match_parent" tools:ignore="MissingDefaultResource"> - @@ -40,15 +40,16 @@ app:layout_constraintStart_toStartOf="@+id/v_video_right_rear_view" app:layout_constraintBottom_toTopOf="@+id/v_video_right_rear_view" android:layout_marginBottom="@dimen/dp_26" - android:textColor="@android:color/white" + android:textColor="@color/taxi_p_373B46" android:maxLines="2" android:ellipsize="end" android:maxWidth="@dimen/dp_1200" - android:textSize="@dimen/dp_100" + android:textSize="@dimen/dp_68" + android:textStyle="bold" tools:text="环球贸易中心环球贸易中心环球贸易中心环球贸易中心环球贸易中心环球贸易中心环球贸易中心环球贸易中心" android:layout_width="wrap_content" android:layout_height="wrap_content"/> - + - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_base_fragment.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_base_fragment.xml similarity index 73% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_base_fragment.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_base_fragment.xml index ff44f994ee..344b49ad66 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_base_fragment.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_base_fragment.xml @@ -8,19 +8,19 @@ android:id="@+id/overMapView" android:layout_width="match_parent" android:layout_height="match_parent" - app:arrivedDrawable="@drawable/taxi_overmap_arrived" + app:arrivedDrawable="@drawable/taxt_u_p_overmap_arrived" app:bottomPadding="160" - app:carDrawable="@drawable/taxi_p_map_car" - app:compassDrawable="@drawable/taxi_p_map_car_light" - app:endPointDrawable="@drawable/taxi_p_map_view_dir_end" + app:carDrawable="@drawable/taxt_u_p_map_car" + app:compassDrawable="@drawable/taxt_u_p_map_car_light" + app:endPointDrawable="@drawable/taxt_u_p_map_view_dir_end" app:leftPadding="800" app:mapStyleExtraPath="style_extra.data" app:mapStylePath="style.data" app:resetDrawable="@null" app:rightPadding="160" - app:startPointDrawable="@drawable/taxi_p_map_view_dir_start" + app:startPointDrawable="@drawable/taxt_u_p_map_view_dir_start" app:topPadding="160" - app:unArrivedDrawable="@drawable/taxi_overmap_arriving" /> + app:unArrivedDrawable="@drawable/taxt_u_p_overmap_arriving" /> @@ -40,13 +41,23 @@ + app:pnc_size="@dimen/dp_40" + app:pnc_txt_style="@style/AudioFileInfoOverlayText" /> + + + app:roma_close="@drawable/taxt_u_p_roma_bg_selector" + app:roma_open="@drawable/taxt_u_p_roma_checked" /> @@ -97,7 +108,7 @@ android:layout_width="@dimen/dp_96" android:layout_height="@dimen/dp_96" android:layout_marginEnd="@dimen/dp_40" - android:background="@drawable/taxi_p_location_center" + android:background="@drawable/taxt_u_p_location_center" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -148,11 +159,24 @@ android:layout_height="@dimen/dp_160" app:layout_constraintBottom_toBottomOf="parent" /> + + + + + @@ -168,8 +192,9 @@ + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_blue_tooth.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_blue_tooth.xml similarity index 89% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_blue_tooth.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_blue_tooth.xml index ae7dafde3a..645469b91b 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_blue_tooth.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_blue_tooth.xml @@ -9,7 +9,7 @@ android:layout_width="@dimen/dp_54" android:layout_height="@dimen/dp_54" android:scaleType="fitXY" - android:src="@drawable/taxi_p_blue_tooth_close" + android:src="@drawable/taxt_u_p_blue_tooth_close" tools:ignore="ContentDescription" /> \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_bottom_bar.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_bottom_bar.xml similarity index 86% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_bottom_bar.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_bottom_bar.xml index db389e16c1..568510a85a 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_bottom_bar.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_bottom_bar.xml @@ -4,7 +4,7 @@ android:layout_width="match_parent" android:layout_height="@dimen/dp_160" xmlns:app="http://schemas.android.com/apk/res-auto" - tools:background="@drawable/taxi_p_bottom_bar_bg" + tools:background="@drawable/taxt_u_p_bottom_bar_bg" tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout" tools:ignore="MissingDefaultResource"> @@ -13,7 +13,7 @@ android:format12Hour="M月d日 " android:format24Hour="M月d日 " android:gravity="center" - android:fontFamily="@font/din" + android:fontFamily="@font/taxt_u_p_din" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" @@ -28,7 +28,7 @@ android:format12Hour="HH:mm" android:format24Hour="HH:mm" android:gravity="center" - android:fontFamily="@font/din" + android:fontFamily="@font/taxt_u_p_din" app:layout_constraintStart_toEndOf="@+id/cl_order_time" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" @@ -41,7 +41,7 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_check_number.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_check_number.xml new file mode 100644 index 0000000000..cb866a480e --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_check_number.xml @@ -0,0 +1,175 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_check_startautopilot.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_check_startautopilot.xml new file mode 100644 index 0000000000..77b0238ba9 --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_check_startautopilot.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_debug.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_debug.xml similarity index 100% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_debug.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_debug.xml diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_itinerary.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_itinerary.xml similarity index 67% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_itinerary.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_itinerary.xml index 8d5f3e34e3..8190e1fee5 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_itinerary.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_itinerary.xml @@ -2,81 +2,60 @@ + android:layout_width="@dimen/dp_866" + android:layout_height="@dimen/dp_467" + android:background="@drawable/taxt_u_p_itinerary_bg" + app:layout_constraintEnd_toEndOf="parent" /> - - + android:layout_height="wrap_content"/> - + android:layout_height="wrap_content"/> + - @@ -164,7 +143,7 @@ android:layout_height="@dimen/dp_20" app:layout_constraintBottom_toBottomOf="parent" android:layout_marginBottom="@dimen/dp_66" - android:layout_marginStart="@dimen/dp_58" + android:layout_marginStart="@dimen/dp_38" android:layout_marginEnd="@dimen/dp_58" android:progress="20" android:maxHeight="@dimen/dp_10" diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/list_video_item_light.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_list_video_item_light.xml similarity index 78% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/list_video_item_light.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_list_video_item_light.xml index eaca7d4b4a..6bb06b2dda 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/list_video_item_light.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_list_video_item_light.xml @@ -2,18 +2,20 @@ + android:layout_width="1892dp" + android:layout_height="1231dp"> @@ -22,7 +24,7 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" - android:background="@drawable/bg_taxi_p_video_light_bg_shape" + android:background="@drawable/taxt_u_p_bg_video_light_bg_shape" android:layout_width="1682dp" android:layout_height="@dimen/dp_991" /> @@ -34,7 +36,7 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" android:layout_width="1560dp" - android:layout_height="@dimen/dp_874" /> + android:layout_height="@dimen/dp_876" /> diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_mogo_video_layout.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_mogo_video_layout.xml similarity index 85% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_mogo_video_layout.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_mogo_video_layout.xml index fd94d513d7..d19cf0557b 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_mogo_video_layout.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_mogo_video_layout.xml @@ -5,15 +5,15 @@ android:id="@+id/infoContainer" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="@drawable/taxi_p_video_light_bg" + android:background="@drawable/taxt_u_p_video_light_bg" tools:ignore="MissingDefaultResource"> \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_passenger_check_panel.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_passenger_check_panel.xml similarity index 97% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_passenger_check_panel.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_passenger_check_panel.xml index fe1331decf..4254b5102a 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_passenger_check_panel.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_passenger_check_panel.xml @@ -5,7 +5,7 @@ android:id="@+id/cl_contain" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="@drawable/taxi_p_passenger_check_panel_bg" + android:background="@drawable/taxt_u_p_check_panel_bg" tools:ignore="MissingDefaultResource"> @@ -92,7 +92,7 @@ android:id="@+id/iv_passenger_start_end_line" android:layout_width="@dimen/dp_1" android:layout_height="@dimen/dp_78" - android:src="@drawable/taxi_p_passenger_check_start_end_line" + android:src="@drawable/taxt_u_p_check_start_end_line" app:layout_constraintEnd_toEndOf="@+id/iv_passenger_end_boll" app:layout_constraintStart_toStartOf="@+id/iv_passenger_end_boll" app:layout_constraintBottom_toTopOf="@+id/iv_passenger_end_boll" /> @@ -103,7 +103,7 @@ android:layout_height="@dimen/dp_14" android:layout_marginBottom="@dimen/dp_382" android:layout_marginStart="@dimen/dp_181" - android:src="@drawable/taxi_p_passenger_check_end_boll" + android:src="@drawable/taxt_u_p_check_end_boll" app:layout_constraintStart_toStartOf="parent" app:layout_constraintBottom_toBottomOf="parent" /> @@ -132,7 +132,7 @@ app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="@dimen/dp_30" android:layout_marginBottom="@dimen/dp_216" - android:background="@drawable/taxi_p_passenger_check_input_bg"> + android:background="@drawable/taxt_u_p_check_input_bg"> + android:background="@drawable/taxt_u_p_setting_view_bg"> @@ -34,7 +34,7 @@ android:layout_marginStart="@dimen/dp_141" android:layout_marginTop="@dimen/dp_24" android:splitTrack="false" - android:thumb="@drawable/taxi_p_function_voice_right_process_humb" + android:thumb="@drawable/taxt_u_p_function_voice_right_process_humb" android:thumbOffset="@dimen/dp_2" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvSettingLight" @@ -46,7 +46,7 @@ android:layout_height="@dimen/dp_40" android:layout_marginStart="@dimen/dp_531" android:layout_marginTop="@dimen/dp_28" - android:src="@drawable/iv_light_increase_set" + android:src="@drawable/taxt_u_p_iv_light_increase_set" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvSettingLight" /> @@ -80,7 +80,7 @@ android:layout_height="@dimen/dp_40" android:layout_marginStart="@dimen/dp_89" android:layout_marginTop="@dimen/dp_29" - android:src="@drawable/iv_voice_set" + android:src="@drawable/taxt_u_p_iv_voice_set" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvSettingSound" /> @@ -91,7 +91,7 @@ android:layout_marginStart="@dimen/dp_141" android:layout_marginTop="@dimen/dp_24" android:splitTrack="false" - android:thumb="@drawable/taxi_p_function_voice_right_process_humb" + android:thumb="@drawable/taxt_u_p_function_voice_right_process_humb" android:thumbOffset="@dimen/dp_2" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvSettingSound" @@ -103,7 +103,7 @@ android:layout_height="@dimen/dp_40" android:layout_marginStart="@dimen/dp_531" android:layout_marginTop="@dimen/dp_28" - android:src="@drawable/iv_voice_increase_set" + android:src="@drawable/taxt_u_p_iv_voice_increase_set" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@+id/tvSettingSound" /> diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_speed.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_speed.xml new file mode 100644 index 0000000000..8cef74a1d7 --- /dev/null +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_speed.xml @@ -0,0 +1,48 @@ + + + + + + + + + + \ No newline at end of file diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_start_autopilot_view.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_start_autopilot_view.xml similarity index 51% rename from OCH/taxi/passenger/src/main/res/layout/taxi_p_start_autopilot_view.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_start_autopilot_view.xml index 844b490722..2b90cea0bf 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_start_autopilot_view.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_start_autopilot_view.xml @@ -2,67 +2,73 @@ - + + - - - - - - - - - - - - - - - - - - @@ -167,14 +100,15 @@ android:id="@+id/actv_front_right_door" android:gravity="center" android:visibility="gone" + tools:visibility="visible" app:layout_constraintTop_toTopOf="@+id/gl_horizontal_center" app:layout_constraintBottom_toBottomOf="@+id/gl_horizontal_center" app:layout_constraintStart_toStartOf="@+id/gl_vertical_center" android:layout_marginStart="@dimen/dp_106" android:text="右前车门未关" android:textSize="@dimen/dp_35" - android:textColor="@color/taxi_p_2B364B" - android:background="@drawable/taxi_p_front_right_door_bg" + android:textColor="@android:color/white" + android:background="@drawable/taxi_u_p_front_right_door" android:layout_width="wrap_content" android:layout_height="wrap_content"/> @@ -182,14 +116,15 @@ android:id="@+id/actv_front_left_door" android:gravity="center" android:visibility="gone" + tools:visibility="visible" app:layout_constraintTop_toTopOf="@+id/gl_horizontal_center" app:layout_constraintBottom_toBottomOf="@+id/gl_horizontal_center" app:layout_constraintEnd_toStartOf="@+id/gl_vertical_center" android:layout_marginEnd="@dimen/dp_106" android:text="左前车门未关" android:textSize="@dimen/dp_35" - android:textColor="@color/taxi_p_2B364B" - android:background="@drawable/taxi_p_front_left_door_bg" + android:textColor="@android:color/white" + android:background="@drawable/taxi_u_p_front_left_door" android:layout_width="wrap_content" android:layout_height="wrap_content"/> @@ -198,14 +133,15 @@ android:id="@+id/actv_rear_left_door" android:gravity="center" android:visibility="gone" + tools:visibility="visible" app:layout_constraintEnd_toStartOf="@+id/gl_vertical_center" app:layout_constraintTop_toBottomOf="@+id/gl_horizontal_center" android:layout_marginEnd="@dimen/dp_135" android:layout_marginTop="@dimen/dp_142" android:text="左后车门未关" android:textSize="@dimen/dp_35" - android:textColor="@color/taxi_p_2B364B" - android:background="@drawable/taxi_p_rear_left_door_bg" + android:textColor="@android:color/white" + android:background="@drawable/taxi_u_p_rear_left_door" android:layout_width="wrap_content" android:layout_height="wrap_content"/> @@ -213,14 +149,15 @@ android:id="@+id/actv_rear_right_door" android:gravity="center" android:visibility="gone" + tools:visibility="visible" app:layout_constraintStart_toEndOf="@+id/gl_vertical_center" app:layout_constraintTop_toBottomOf="@+id/gl_horizontal_center" android:layout_marginStart="@dimen/dp_135" android:layout_marginTop="@dimen/dp_142" android:text="右后车门未关" android:textSize="@dimen/dp_35" - android:textColor="@color/taxi_p_2B364B" - android:background="@drawable/taxi_p_rear_right_door_bg" + android:textColor="@android:color/white" + android:background="@drawable/taxi_u_p_rear_right_door" android:layout_width="wrap_content" android:layout_height="wrap_content"/> diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_statusview.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_statusview.xml similarity index 83% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_statusview.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_statusview.xml index 5b75be9662..5a1617b197 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_statusview.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_statusview.xml @@ -4,7 +4,7 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="@dimen/dp_120" - android:background="@drawable/taxi_p_status_bg" + android:background="@drawable/taxt_u_p_status_bg" tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout" tools:ignore="MissingDefaultResource"> @@ -37,7 +37,7 @@ android:layout_marginEnd="@dimen/dp_93" android:layout_width="@dimen/dp_54" android:layout_height="@dimen/dp_54" - android:src="@drawable/taxi_p_blue_tooth_open" + android:src="@drawable/taxt_u_p_blue_tooth_open" android:layout_gravity="center"/> - - - \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_video_show.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_video_show.xml similarity index 93% rename from OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_video_show.xml rename to OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_video_show.xml index f3e2d98126..92c4f093cd 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxi_p_video_show.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_video_show.xml @@ -30,7 +30,7 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" - android:src="@drawable/taxi_p_mogo_video_play" + android:src="@drawable/taxt_u_p_mogo_video_play" android:layout_width="@dimen/dp_180" android:layout_height="@dimen/dp_180"/> @@ -38,7 +38,7 @@ android:id="@+id/layout_top" android:layout_width="match_parent" android:layout_height="120dp" - android:background="@drawable/bg_taxi_p_video_bg_top" + android:background="@drawable/taxt_u_p_bg_video_bg_top" app:layout_constraintTop_toTopOf="parent"> + android:src="@drawable/taxt_u_p_change_full" /> + android:progressDrawable="@drawable/taxt_u_p_video_seekbar_style" + android:thumb="@drawable/taxt_u_p_bg_video_index" /> @drawable/light_00011 @drawable/light_00012 @drawable/light_00013 + @drawable/light_00014 + @drawable/light_00015 + @drawable/light_00016 + @drawable/light_00017 @@ -225,4 +229,150 @@ @drawable/xiaozhi_belt_048 + + + + + @drawable/arrive_dest_001 + @drawable/arrive_dest_002 + @drawable/arrive_dest_003 + @drawable/arrive_dest_004 + @drawable/arrive_dest_005 + @drawable/arrive_dest_006 + @drawable/arrive_dest_007 + @drawable/arrive_dest_008 + @drawable/arrive_dest_009 + + @drawable/arrive_dest_010 + @drawable/arrive_dest_011 + @drawable/arrive_dest_012 + @drawable/arrive_dest_013 + @drawable/arrive_dest_014 + @drawable/arrive_dest_015 + @drawable/arrive_dest_016 + @drawable/arrive_dest_017 + @drawable/arrive_dest_018 + @drawable/arrive_dest_019 + + @drawable/arrive_dest_020 + @drawable/arrive_dest_021 + @drawable/arrive_dest_022 + @drawable/arrive_dest_023 + @drawable/arrive_dest_024 + @drawable/arrive_dest_025 + @drawable/arrive_dest_026 + @drawable/arrive_dest_027 + @drawable/arrive_dest_028 + @drawable/arrive_dest_029 + + + @drawable/arrive_dest_030 + @drawable/arrive_dest_031 + @drawable/arrive_dest_032 + @drawable/arrive_dest_033 + @drawable/arrive_dest_034 + @drawable/arrive_dest_035 + @drawable/arrive_dest_036 + @drawable/arrive_dest_037 + @drawable/arrive_dest_038 + @drawable/arrive_dest_039 + + @drawable/arrive_dest_040 + @drawable/arrive_dest_041 + @drawable/arrive_dest_042 + @drawable/arrive_dest_043 + @drawable/arrive_dest_044 + @drawable/arrive_dest_045 + @drawable/arrive_dest_046 + @drawable/arrive_dest_047 + @drawable/arrive_dest_048 + @drawable/arrive_dest_049 + + + @drawable/arrive_dest_050 + @drawable/arrive_dest_051 + @drawable/arrive_dest_052 + @drawable/arrive_dest_053 + @drawable/arrive_dest_054 + @drawable/arrive_dest_055 + @drawable/arrive_dest_056 + @drawable/arrive_dest_057 + @drawable/arrive_dest_058 + @drawable/arrive_dest_059 + + @drawable/arrive_dest_060 + + + + + @drawable/check2startautopilt_000 + @drawable/check2startautopilt_001 + @drawable/check2startautopilt_002 + @drawable/check2startautopilt_003 + @drawable/check2startautopilt_004 + @drawable/check2startautopilt_005 + @drawable/check2startautopilt_006 + @drawable/check2startautopilt_007 + @drawable/check2startautopilt_008 + @drawable/check2startautopilt_009 + + @drawable/check2startautopilt_010 + @drawable/check2startautopilt_011 + @drawable/check2startautopilt_012 + @drawable/check2startautopilt_013 + @drawable/check2startautopilt_014 + @drawable/check2startautopilt_015 + @drawable/check2startautopilt_016 + @drawable/check2startautopilt_017 + @drawable/check2startautopilt_018 + @drawable/check2startautopilt_019 + + @drawable/check2startautopilt_020 + @drawable/check2startautopilt_021 + @drawable/check2startautopilt_022 + @drawable/check2startautopilt_023 + @drawable/check2startautopilt_024 + @drawable/check2startautopilt_025 + @drawable/check2startautopilt_026 + @drawable/check2startautopilt_027 + @drawable/check2startautopilt_028 + @drawable/check2startautopilt_029 + + + @drawable/check2startautopilt_030 + @drawable/check2startautopilt_031 + @drawable/check2startautopilt_032 + @drawable/check2startautopilt_033 + @drawable/check2startautopilt_034 + @drawable/check2startautopilt_035 + @drawable/check2startautopilt_036 + @drawable/check2startautopilt_037 + @drawable/check2startautopilt_038 + @drawable/check2startautopilt_039 + + @drawable/check2startautopilt_040 + @drawable/check2startautopilt_041 + @drawable/check2startautopilt_042 + @drawable/check2startautopilt_043 + @drawable/check2startautopilt_044 + @drawable/check2startautopilt_045 + @drawable/check2startautopilt_046 + @drawable/check2startautopilt_047 + @drawable/check2startautopilt_048 + + @drawable/check2startautopilt_050 + @drawable/check2startautopilt_051 + @drawable/check2startautopilt_052 + @drawable/check2startautopilt_053 + @drawable/check2startautopilt_054 + @drawable/check2startautopilt_055 + @drawable/check2startautopilt_056 + @drawable/check2startautopilt_057 + @drawable/check2startautopilt_058 + + @drawable/check2startautopilt_060 + + + + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/values/colors.xml b/OCH/taxi/unmanned-passenger/src/main/res/values/colors.xml index 0a3d6c731f..2f3f368f0e 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/values/colors.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/values/colors.xml @@ -30,7 +30,7 @@ #56efa0 #A7BDF3 #41444D - #0F5FFF + #0F5FFF #44C8FF #8AE4ED #C8F3F4 @@ -45,13 +45,26 @@ #76D7FF #255BAA #80F8FF + #464646 + #378EFB + #191E3C #2B364B #005D6A8C #5D6A8C + #333333 #995D6A8C #B37E90BF + #373B46 + #876E788B + #58C9FF + #477CFC + #A0B3DA + #80E5F0FF + #E6E5F0FF + #4D7985A7 + \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/res/values/styles.xml b/OCH/taxi/unmanned-passenger/src/main/res/values/styles.xml index 7c3458d9bc..c25b0cb016 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/values/styles.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/values/styles.xml @@ -5,19 +5,19 @@ @@ -25,15 +25,15 @@ + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 8b03050831..87168655f4 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -35,7 +35,7 @@ android { sourceSets { main { if (rootProject.isJunkDetectEnable()) { - java.srcDirs = ['src/main/java', 'src/debug/java'] + java.srcDirs = ['src/main/java', 'src/block/java'] } else { java.srcDirs = ['src/main/java'] } diff --git a/app/config/MediaUrlConfig.json b/app/config/MediaUrlConfig.json index 79a9a68e02..42e23e8896 100644 --- a/app/config/MediaUrlConfig.json +++ b/app/config/MediaUrlConfig.json @@ -146,6 +146,12 @@ }, "taxiunmannedpassengerochdfhq": { "medias": [ + { + "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", + "fileType": 2, + "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", + "title": "蘑菇车联牵手成都大运会" + }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708596763/全车型混剪增加红旗车队.m4v", "fileType": 2, @@ -158,12 +164,6 @@ "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969553174/红旗重新排版.png", "title": "蘑菇车联之红旗车队" }, - { - "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", - "fileType": 2, - "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", - "title": "蘑菇车联牵手成都大运会" - }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708409810/20210610重新排版3屏.m4v", "fileType": 2, @@ -174,6 +174,12 @@ }, "charterpassengerochm1": { "medias": [ + { + "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", + "fileType": 2, + "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", + "title": "蘑菇车联牵手成都大运会" + }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708596763/全车型混剪增加红旗车队.m4v", "fileType": 2, @@ -186,12 +192,6 @@ "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969553174/红旗重新排版.png", "title": "蘑菇车联之红旗车队" }, - { - "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", - "fileType": 2, - "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", - "title": "蘑菇车联牵手成都大运会" - }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708409810/20210610重新排版3屏.m4v", "fileType": 2, @@ -348,6 +348,12 @@ }, "taxiunmannedpassengerochdfhq": { "medias": [ + { + "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", + "fileType": 2, + "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", + "title": "蘑菇车联牵手成都大运会" + }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708596763/全车型混剪增加红旗车队.m4v", "fileType": 2, @@ -360,12 +366,6 @@ "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969553174/红旗重新排版.png", "title": "蘑菇车联之红旗车队" }, - { - "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", - "fileType": 2, - "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", - "title": "蘑菇车联牵手成都大运会" - }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708409810/20210610重新排版3屏.m4v", "fileType": 2, @@ -376,6 +376,12 @@ }, "charterpassengerochm1": { "medias": [ + { + "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", + "fileType": 2, + "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", + "title": "蘑菇车联牵手成都大运会" + }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708596763/全车型混剪增加红旗车队.m4v", "fileType": 2, @@ -388,12 +394,6 @@ "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969553174/红旗重新排版.png", "title": "蘑菇车联之红旗车队" }, - { - "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", - "fileType": 2, - "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", - "title": "蘑菇车联牵手成都大运会" - }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708409810/20210610重新排版3屏.m4v", "fileType": 2, @@ -454,6 +454,12 @@ }, "taxiunmannedpassengerochdfhq": { "medias": [ + { + "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", + "fileType": 2, + "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", + "title": "蘑菇车联牵手成都大运会" + }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708596763/全车型混剪增加红旗车队.m4v", "fileType": 2, @@ -466,12 +472,6 @@ "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969553174/红旗重新排版.png", "title": "蘑菇车联之红旗车队" }, - { - "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", - "fileType": 2, - "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", - "title": "蘑菇车联牵手成都大运会" - }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708409810/20210610重新排版3屏.m4v", "fileType": 2, @@ -482,6 +482,12 @@ }, "charterpassengerochm1": { "medias": [ + { + "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", + "fileType": 2, + "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", + "title": "蘑菇车联牵手成都大运会" + }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708596763/全车型混剪增加红旗车队.m4v", "fileType": 2, @@ -494,12 +500,6 @@ "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969553174/红旗重新排版.png", "title": "蘑菇车联之红旗车队" }, - { - "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", - "fileType": 2, - "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", - "title": "蘑菇车联牵手成都大运会" - }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708409810/20210610重新排版3屏.m4v", "fileType": 2, @@ -656,6 +656,12 @@ }, "taxiunmannedpassengerochdfhq": { "medias": [ + { + "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", + "fileType": 2, + "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", + "title": "蘑菇车联牵手成都大运会" + }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708596763/全车型混剪增加红旗车队.m4v", "fileType": 2, @@ -668,12 +674,6 @@ "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969553174/红旗重新排版.png", "title": "蘑菇车联之红旗车队" }, - { - "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", - "fileType": 2, - "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", - "title": "蘑菇车联牵手成都大运会" - }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708409810/20210610重新排版3屏.m4v", "fileType": 2, @@ -684,6 +684,12 @@ }, "charterpassengerochm1": { "medias": [ + { + "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", + "fileType": 2, + "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", + "title": "蘑菇车联牵手成都大运会" + }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708596763/全车型混剪增加红旗车队.m4v", "fileType": 2, @@ -696,12 +702,6 @@ "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969553174/红旗重新排版.png", "title": "蘑菇车联之红旗车队" }, - { - "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708499497/大运会合作解说版.m4v", - "fileType": 2, - "coverImageUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655969536177/大运会.png", - "title": "蘑菇车联牵手成都大运会" - }, { "fileUrl": "https://img.zhidaohulian.com/fileServer/online_car_hailing/1655708409810/20210610重新排版3屏.m4v", "fileType": 2, diff --git a/app/script/flavorfilter/flavors.json b/app/script/flavorfilter/flavors.json index b81368313a..d66e7df44f 100644 --- a/app/script/flavorfilter/flavors.json +++ b/app/script/flavorfilter/flavors.json @@ -15,8 +15,8 @@ "passenger": ["ochDFHQ"] }, "bus" :{ - "driver": ["ochJL"], - "passenger": ["ochJL"] + "driver": ["ochJL","ochM2"], + "passenger": ["ochJL","ochM2"] }, "charter" :{ "driver": ["ochM1"], @@ -56,8 +56,8 @@ "passenger": ["ochJL","ochM2"] }, "bus" :{ - "driver": ["ochJL"], - "passenger": ["ochJL"] + "driver": ["ochJL","ochM2"], + "passenger": ["ochJL","ochM2"] }, "charter" :{ "driver": ["ochM1"], diff --git a/app/src/debug/java/com/mogo/launcher/lancet/jank/compiler/JankPointAutoGenerator.java b/app/src/block/java/com/mogo/launcher/lancet/jank/compiler/JankPointAutoGenerator.java similarity index 100% rename from app/src/debug/java/com/mogo/launcher/lancet/jank/compiler/JankPointAutoGenerator.java rename to app/src/block/java/com/mogo/launcher/lancet/jank/compiler/JankPointAutoGenerator.java diff --git a/app/src/debug/java/com/mogo/launcher/lancet/jank/spi/HandlerHookerImpl.kt b/app/src/block/java/com/mogo/launcher/lancet/jank/spi/HandlerHookerImpl.kt similarity index 100% rename from app/src/debug/java/com/mogo/launcher/lancet/jank/spi/HandlerHookerImpl.kt rename to app/src/block/java/com/mogo/launcher/lancet/jank/spi/HandlerHookerImpl.kt diff --git a/app/src/debug/java/com/mogo/launcher/lancet/jank/spi/HookInvokerImpl.java b/app/src/block/java/com/mogo/launcher/lancet/jank/spi/HookInvokerImpl.java similarity index 93% rename from app/src/debug/java/com/mogo/launcher/lancet/jank/spi/HookInvokerImpl.java rename to app/src/block/java/com/mogo/launcher/lancet/jank/spi/HookInvokerImpl.java index e5168e7b76..660b2644ad 100644 --- a/app/src/debug/java/com/mogo/launcher/lancet/jank/spi/HookInvokerImpl.java +++ b/app/src/block/java/com/mogo/launcher/lancet/jank/spi/HookInvokerImpl.java @@ -5,11 +5,13 @@ import android.os.SystemClock; import com.google.auto.service.AutoService; import com.mogo.core.lancetx.compiler.lib.generator.Type; import com.mogo.core.lancetx.compiler.lib.hook.IHookInvoker; +import com.mogo.eagle.core.data.deva.chain.ChainConstant; import com.mogo.eagle.core.function.api.devatools.block.IMoGoBlockProvider; import com.mogo.eagle.core.function.api.devatools.perf.IMoGoCpuUsageProvider; import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager; import com.mogo.eagle.core.function.main.ARouterUtils; import com.mogo.eagle.core.utilcode.util.VLogUtils; +import com.zhjt.service.chain.ChainLog; import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.locks.Lock; @@ -166,12 +168,7 @@ public class HookInvokerImpl implements IHookInvoker { } builder.setLength(builder.length() - 1); } - - String s = builder.toString(); - - - VLogUtils.w("HookHandler", "Junk Detected:" + builder, 4096); - // linkedLog(type, builder.toString()); + VLogUtils.w("HookHandler", builder.toString(), 4096); if (flag) { extra.setLength(0); } @@ -248,7 +245,7 @@ public class HookInvokerImpl implements IHookInvoker { } if (holder != null) { if (sb.length() > 0) { - sb.append("##holder::").append(holder); + sb.append("##holder::").append(holder.getName()); } else { sb.append("holder::").append(holder); } @@ -286,20 +283,4 @@ public class HookInvokerImpl implements IHookInvoker { } } } - -// private void linkedLog(Type type, String msg) { -// try { -// linkedLogInternal(type,msg); -// } catch (Throwable t) { -// t.printStackTrace(); -// } -// } -// -// @ChainLog( -// linkChainLog = ChainConstant.CHAIN_TYPE_ANR_LEAK, -// linkCode = ChainConstant.CHAIN_SOURCE_HMI, -// nodeAliasCode = ChainConstant.CHAIN_CODE_MAIN_BLOCK, -// paramIndexes = { 0, 1 } -// ) -// private void linkedLogInternal(Type type, String msg) {} } diff --git a/app/src/debug/java/com/mogo/launcher/lancet/jank/ui/UiPostLancet.kt b/app/src/block/java/com/mogo/launcher/lancet/jank/ui/UiPostLancet.kt similarity index 54% rename from app/src/debug/java/com/mogo/launcher/lancet/jank/ui/UiPostLancet.kt rename to app/src/block/java/com/mogo/launcher/lancet/jank/ui/UiPostLancet.kt index 335759b243..4b8add0333 100644 --- a/app/src/debug/java/com/mogo/launcher/lancet/jank/ui/UiPostLancet.kt +++ b/app/src/block/java/com/mogo/launcher/lancet/jank/ui/UiPostLancet.kt @@ -1,6 +1,7 @@ package com.mogo.launcher.lancet.jank.ui import android.app.Activity +import android.os.SystemClock import android.view.View import com.knightboost.lancet.api.Scope import com.knightboost.lancet.api.annotations.Group @@ -9,44 +10,43 @@ import com.knightboost.lancet.api.annotations.TargetClass import com.knightboost.lancet.api.annotations.TargetMethod import com.knightboost.lancet.api.annotations.Weaver import com.mogo.eagle.core.block.runtime.message.Message -import com.mogo.eagle.core.block.runtime.utils.TimeUtils.Companion.now import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager -import java.util.concurrent.ConcurrentHashMap +import com.mogo.launcher.R @Weaver @Group("main_block_check") class UiPostLancet { - internal data class ActionWrapper(var action: Runnable): Runnable { + class ActionWrapper(private val extra:Map, private val delegate: Runnable): Runnable { override fun run() { - val start = now() + val startTime = SystemClock.uptimeMillis() try { - action.run() + delegate.run() } finally { + val duration = SystemClock.uptimeMillis() - startTime CallerDevaToolsManager.block()?.takeIf { it.hasInit() - }?.recorder()?.recycle(Message.acquire(handler = null, action = action, duration = now() - start)) + }?.recorder()?.recycle(Message.acquire(handler = null, action = delegate, duration = duration, extra = extra)) } } } companion object { - private val map by lazy { ConcurrentHashMap() } - @JvmStatic @TargetClass(value = "android.app.Activity", scope = Scope.ALL) @TargetMethod(methodName = "runOnUiThread") @ReplaceInvoke fun runOnUiThreadOfActivity(activity: Activity, action: Runnable) { + val extra = mapOf(activity.javaClass.name to "runOnUiThread") try { - activity.runOnUiThread(ActionWrapper(action).also { map[action] = it }) + activity.runOnUiThread(ActionWrapper(extra, action)) } finally { CallerDevaToolsManager.block()?.takeIf { it.hasInit() - }?.recorder()?.insert(Message.acquire(handler = null, action = action, extra = mapOf(activity.javaClass.name to "runOnUiThread"))) + }?.recorder()?.insert(Message.acquire(handler = null, action = action, extra = extra)) } } @@ -55,13 +55,21 @@ class UiPostLancet { @TargetMethod(methodName = "post") @ReplaceInvoke fun post(view: View, action: Runnable): Boolean { - return try { - view.post(ActionWrapper(action).also { map[action] = it }) - } finally { - CallerDevaToolsManager.block()?.takeIf { - it.hasInit() - }?.recorder()?.insert(Message.acquire(handler = null, action = action, extra = mapOf(view.javaClass.name to "post"))) - } + val extra = mapOf(view.javaClass.name to "post") + try { + var map = view.getTag(R.id.action_wrapper_tag_id) as? HashMap + if (map == null) { + map = HashMap() + view.setTag(R.id.action_wrapper_tag_id, map) + } + val wrapper = ActionWrapper(extra, action) + map[action] = wrapper + return view.post(wrapper) + } finally { + CallerDevaToolsManager.block()?.takeIf { + it.hasInit() + }?.recorder()?.insert(Message.acquire(handler = null, action = action, extra = extra)) + } } @JvmStatic @@ -69,12 +77,20 @@ class UiPostLancet { @TargetMethod(methodName = "postDelayed") @ReplaceInvoke fun postDelayed(view: View, action: Runnable, delayMillis: Long): Boolean { - return try { - view.postDelayed(action, delayMillis) + val extra = mapOf(view.javaClass.name to "postDelayed") + try { + var map = view.getTag(R.id.action_wrapper_tag_id) as? HashMap + if (map == null) { + map = HashMap() + view.setTag(R.id.action_wrapper_tag_id, map) + } + val wrapper = ActionWrapper(extra, action) + map[action] = wrapper + return view.postDelayed(wrapper, delayMillis) } finally { CallerDevaToolsManager.block()?.takeIf { it.hasInit() - }?.recorder()?.insert(Message.acquire(handler = null, action = action, extra = mapOf(view.javaClass.name to "post"))) + }?.recorder()?.insert(Message.acquire(handler = null, action = action, delay = delayMillis, extra = extra)) } } @@ -83,15 +99,19 @@ class UiPostLancet { @TargetMethod(methodName = "removeCallbacks") @ReplaceInvoke fun removeCallbacks(view: View, action: Runnable): Boolean { - return try { - view.removeCallbacks(map.remove(action)) + try { + val tag = view.getTag(R.id.action_wrapper_tag_id) + if (tag != null && tag is HashMap<*, *>) { + (tag.remove(action) as? Runnable)?.also { + return view.removeCallbacks(it) + } + } + return false } finally { CallerDevaToolsManager.block()?.takeIf { it.hasInit() }?.recorder()?.remove(Message.acquire(handler = null, action = action, extra = mapOf(view.javaClass.name to "removeCallbacks"))) } } - } - } \ No newline at end of file diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java index a4270fc1a2..3617c841b1 100644 --- a/app/src/main/java/com/mogo/launcher/MogoApplication.java +++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java @@ -3,15 +3,13 @@ package com.mogo.launcher; import com.mogo.commons.debug.DebugConfig; import com.mogo.eagle.core.function.api.devatools.strict.IStrictModeProvider; import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager; -import com.mogo.eagle.core.function.call.startup.CallerStartUpManager; import com.mogo.eagle.core.function.main.MainMoGoApplication; import com.mogo.eagle.core.utilcode.mogo.logger.LogLevel; import com.mogo.eagle.core.utilcode.mogo.logger.Logger; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.launcher.crash.CrashSystem; import com.mogo.launcher.startup.ARouterStartUp; import com.mogo.launcher.startup.ConfigStartUp; -import com.zhjt.service.chain.TraceNodeCore; /** * @author congtaowang @@ -33,7 +31,7 @@ public class MogoApplication extends MainMoGoApplication { private void tryEnableStrictMode() { IStrictModeProvider strict = CallerDevaToolsManager.INSTANCE.strict(); if (DebugConfig.isDebug() && strict != null) { - boolean enabled = SharedPrefsMgr.getInstance(this).getBoolean("MOGO_STRICT_MODE_ENABLED", false); + boolean enabled = SharedPrefsMgr.getInstance().getBoolean("MOGO_STRICT_MODE_ENABLED", false); Logger.e("StrictMode", "isEnabled:" + enabled); if (enabled) { strict.enable(); diff --git a/app/src/main/java/com/mogo/launcher/crash/CrashSystem.java b/app/src/main/java/com/mogo/launcher/crash/CrashSystem.java index eecd970d72..c36936b330 100644 --- a/app/src/main/java/com/mogo/launcher/crash/CrashSystem.java +++ b/app/src/main/java/com/mogo/launcher/crash/CrashSystem.java @@ -8,7 +8,7 @@ import android.os.Environment; import android.text.TextUtils; import android.util.Log; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; +import com.mogo.commons.storage.SharedPrefsMgr; import java.io.File; import java.io.FileOutputStream; @@ -190,7 +190,7 @@ public class CrashSystem implements UncaughtExceptionHandler { this.mAppPackage = packageInfo.packageName; this.mAppName = packageInfo.applicationInfo.loadLabel(context.getPackageManager()).toString(); this.mOsVersion = Build.DISPLAY; - String deviceId = MoGoAiCloudClientConfig.getInstance().getSn(); + String deviceId = SharedPrefsMgr.getInstance().getSn(); if(TextUtils.isEmpty(deviceId)) { deviceId = "11111111"; } diff --git a/app/src/main/java/com/mogo/launcher/lancet/MemoryLeakFix.kt b/app/src/main/java/com/mogo/launcher/lancet/MemoryLeakFix.kt deleted file mode 100644 index 83575c6bf4..0000000000 --- a/app/src/main/java/com/mogo/launcher/lancet/MemoryLeakFix.kt +++ /dev/null @@ -1,142 +0,0 @@ -package com.mogo.launcher.lancet - -import android.app.Activity -import android.app.Dialog -import android.content.Context -import android.view.View -import androidx.annotation.* -import androidx.core.view.ViewCompat -import androidx.fragment.app.* -import androidx.lifecycle.* -import androidx.lifecycle.Lifecycle.Event -import androidx.lifecycle.Lifecycle.Event.ON_DESTROY -import com.knightboost.lancet.api.* -import com.knightboost.lancet.api.Scope.LEAF -import com.knightboost.lancet.api.annotations.* -import com.knightboost.lancet.api.annotations.Weaver -import com.mogo.eagle.core.utilcode.kotlin.* -import io.netty.util.internal.ConcurrentSet -import java.lang.ref.* -import java.lang.reflect.Modifier -import java.util.concurrent.ConcurrentHashMap - -@Keep -@Weaver -@Group("memory_leak") -class MemoryLeakFix { - - @NameRegex("(com\\.zhidao|com\\.elegant|com\\.zhidaoauto|com\\.zhjt|com\\.mogo(?!(\\.thread\\.ext|\\.launcher\\.lancet))).*") - @Insert(mayCreateSuper = true) - @ImplementedInterface("java.lang.Runnable", scope = LEAF) - @TargetMethod(methodName = "run") - fun runProxy() { - if (AccessSyntheticUtils.isTargetAlive(This.get())) { - Origin.callVoid() - } - } -} - -internal class AccessSyntheticUtils { - - companion object { - - private val fields = ConcurrentHashMap>() - private val observers = ConcurrentSet() - - // true: 代表要执行原来的run方法体 - // false: 代表不执行原来的run方法体 - @JvmStatic - fun isTargetAlive(obj: Any): Boolean { - try { - val clazz = obj.javaClass - if (!clazz.isAnonymousClass) { - return true - } - val key = clazz.name - return (fields[key] ?: clazz.declaredFields.find { - it.isSynthetic && - ((it.modifiers and Modifier.STATIC) == 0) && - (View::class.java.isAssignableFrom(it.type) or - Context::class.java.isAssignableFrom(it.type) or - Fragment::class.java.isAssignableFrom(it.type) or - android.app.Fragment::class.java.isAssignableFrom(it.type) or - Dialog::class.java.isAssignableFrom(it.type) - ) - }?.let { - it.isAccessible = true - val wf = WeakReference(it.get(obj), ReferenceQueue()) - fields[key] = wf - wf - })?.also { - if (it.isEnqueued) { - //对像被垃圾回收了 - fields.remove(key) - } - }?.get()?.let { t -> - var lifecycle: Lifecycle? = null - val ret = when (t) { - is View -> { - lifecycle = t.lifecycleOwner.lifecycle - t.parent == null || ViewCompat.isAttachedToWindow(t) - } - is Activity -> { - lifecycle = t.findViewById(android.R.id.content)?.lifecycleOwner?.lifecycle - !t.isFinishing && !t.isDestroyed - } - is Fragment -> { - lifecycle = t.lifecycle - !t.isDetached - } - is android.app.Fragment -> { - lifecycle = t.view?.lifecycleOwner?.lifecycle - !t.isDetached - } - is Dialog -> { - t.window?.decorView?.let { - v -> - lifecycle = v.lifecycleOwner.lifecycle - ViewCompat.isAttachedToWindow(v) - } ?: false - } - else -> { - true - } - } - if (!ret) { - assignFinalFieldNull(obj, t.javaClass) - } else { - val l = lifecycle - if (l != null && !observers.contains(key)) { - observers.add(key) - l.addObserver(object : LifecycleEventObserver { - override fun onStateChanged(source: LifecycleOwner, event: Event) { - if (event == ON_DESTROY) { - assignFinalFieldNull(obj, t.javaClass) - observers.remove(key) - } - } - }) - } - } - ret - } ?: true - } catch (ignore: Throwable) { } - return true - } - - @JvmStatic - private fun assignFinalFieldNull(obj: Any, fieldType: Class<*>) { - try { - obj.javaClass.declaredFields.find { - it.isSynthetic && - ((it.modifiers and Modifier.STATIC) == 0) && it.type == fieldType - }?.also { - it.isAccessible = true - it.set(obj, null) - } - } catch (t: Throwable) { - t.printStackTrace() - } - } - } -} \ No newline at end of file diff --git a/app/src/main/java/com/mogo/launcher/lancet/ViewPressedStateLancet.java b/app/src/main/java/com/mogo/launcher/lancet/ViewPressedStateLancet.java index 4fa3bdd617..68cd5c5040 100644 --- a/app/src/main/java/com/mogo/launcher/lancet/ViewPressedStateLancet.java +++ b/app/src/main/java/com/mogo/launcher/lancet/ViewPressedStateLancet.java @@ -6,13 +6,16 @@ import android.content.res.TypedArray; import android.graphics.Color; import android.graphics.drawable.Drawable; import android.graphics.drawable.StateListDrawable; -import android.os.Build; import android.util.AttributeSet; +import android.view.LayoutInflater; import android.view.View; +import android.view.ViewGroup; +import android.widget.CompoundButton; import android.widget.ImageView; import android.widget.TextView; +import androidx.annotation.Nullable; +import androidx.core.content.ContextCompat; import androidx.core.graphics.drawable.DrawableCompat; -import androidx.core.view.ViewCompat; import com.knightboost.lancet.api.Origin; import com.knightboost.lancet.api.Scope; import com.knightboost.lancet.api.annotations.Group; @@ -28,6 +31,30 @@ import com.mogo.launcher.R; @Group("view_pressed_state") public class ViewPressedStateLancet { + + public static boolean isHasBackground(View view) { + if (view instanceof ImageView) { + ImageView image = (ImageView) view; + return image.getBackground() != null || image.getDrawable() != null; + } + if (view instanceof TextView) { + TextView text = (TextView) view; + return text.getBackground() != null; + } + + if (view instanceof ViewGroup) { + ViewGroup group = (ViewGroup) view; + int count = group.getChildCount(); + for (int i = 0; i < count; i++) { + View child = group.getChildAt(i); + if (isHasBackground(child)) { + return true; + } + } + } + return view.getBackground() != null; + } + @TargetClass(value = "android.view.View", scope = Scope.ALL) @TargetMethod(methodName = "setOnClickListener") @ReplaceInvoke @@ -35,11 +62,76 @@ public class ViewPressedStateLancet { if (view == null) { return; } - Object tag = view.getTag(R.id.click_pressed_attr_id); - checkSetBgIfNeed(view, tag == null ? null : (AttributeSet) tag); + if (listener == null) { + view.setOnClickListener(null); + return; + } + if (isHasBackground(view)) { + Object tag = view.getTag(R.id.click_pressed_attr_id); + checkSetBgIfNeed(null, view, tag == null ? null : (AttributeSet) tag, true); + } else if (view instanceof TextView) { + Object tag = view.getTag(R.id.click_pressed_attr_id); + checkSetBgIfNeed(null, (TextView) view, tag == null ? null : (AttributeSet) tag, true); + } view.setOnClickListener(listener); } + @TargetClass(value = "android.view.View", scope = Scope.ALL) + @TargetMethod(methodName = "getBackground") + @ReplaceInvoke + public static Drawable getBackgroundDrawable(View view) { + Object tag = view.getTag(R.id.click_pressed_attr_replaced); + Drawable old = view.getBackground(); + if (tag == null) { + return old; + } + return (Drawable) tag; + } + + @TargetClass(value = "android.widget.ImageView", scope = Scope.ALL) + @TargetMethod(methodName = "getDrawable") + @ReplaceInvoke + public static Drawable getDrawable(ImageView view) { + Object tag = view.getTag(R.id.click_pressed_attr_replaced); + Drawable old = view.getDrawable(); + if (tag == null) { + return old; + } + return (Drawable) tag; + } + + @TargetClass(value = "android.widget.TextView", scope = Scope.ALL) + @TargetMethod(methodName = "getTextColors") + @ReplaceInvoke + public static ColorStateList getTextColors(TextView view) { + Object tag = view.getTag(R.id.click_pressed_attr_replaced_color); + ColorStateList old = view.getTextColors(); + if (tag == null) { + return old; + } + return (ColorStateList) tag; + } + + + @TargetClass(value = "android.widget.CompoundButton", scope = Scope.ALL) + @TargetMethod(methodName = "setOnCheckedChangeListener") + @ReplaceInvoke + public static void setOnCheckedChangeListener(CompoundButton view, CompoundButton.OnCheckedChangeListener listener) { + if (view == null) { + return; + } + if (listener == null) { + view.setOnCheckedChangeListener(null); + return; + } + if (isHasBackground(view)) { + Object tag = view.getTag(R.id.click_pressed_attr_id); + checkSetBgIfNeed(null, view, tag == null ? null : (AttributeSet) tag, true); + } + view.setOnCheckedChangeListener(listener); + } + + @TargetClass(value = "android.view.View", scope = Scope.ALL) @TargetMethod(methodName = "setOnLongClickListener") @ReplaceInvoke @@ -47,17 +139,173 @@ public class ViewPressedStateLancet { if (view == null) { return; } - Object tag = view.getTag(R.id.click_pressed_attr_id); - checkSetBgIfNeed(view, tag == null ? null : (AttributeSet) tag); + if (listener == null) { + view.setOnLongClickListener(null); + return; + } + if (isHasBackground(view)) { + Object tag = view.getTag(R.id.click_pressed_attr_id); + checkSetBgIfNeed(null, view, tag == null ? null : (AttributeSet) tag, true); + } else if (view instanceof TextView) { + Object tag = view.getTag(R.id.click_pressed_attr_id); + checkSetBgIfNeed(null, (TextView) view, tag == null ? null : (AttributeSet) tag, true); + } view.setOnLongClickListener(listener); } + @TargetClass(value = "android.view.View", scope = Scope.ALL) + @TargetMethod(methodName = "setBackgroundDrawable") + @ReplaceInvoke + public static void setBackgroundDrawable(View view, Drawable drawable) { + if (view == null) { + return; + } + if (!view.isLongClickable() && !view.isClickable()) { + view.setBackground(drawable); + return; + } + float alpha = getAlpha(view); + if (alpha >= 0) { + Drawable replaced = checkAndReplaceDrawable(drawable, alpha); + if (replaced != null) { + view.setTag(R.id.click_pressed_attr_replaced, drawable); + int paddingLeft = view.getPaddingLeft(); + int paddingRight = view.getPaddingRight(); + int paddingTop = view.getPaddingTop(); + int paddingBottom = view.getPaddingBottom(); + view.setBackground(replaced); + view.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom); + } else { + view.setBackground(drawable); + } + } else { + view.setBackground(drawable); + } + } + + + @TargetClass(value = "android.view.View", scope = Scope.ALL) + @TargetMethod(methodName = "setBackground") + @ReplaceInvoke + public static void setBackground(View view, Drawable drawable) { + if (view == null) { + return; + } + if (!view.isLongClickable() && !view.isClickable()) { + view.setBackground(drawable); + return; + } + float alpha = getAlpha(view); + if (alpha >= 0) { + Drawable replaced = checkAndReplaceDrawable(drawable, alpha); + if (replaced != null) { + view.setTag(R.id.click_pressed_attr_replaced, drawable); + int paddingLeft = view.getPaddingLeft(); + int paddingRight = view.getPaddingRight(); + int paddingTop = view.getPaddingTop(); + int paddingBottom = view.getPaddingBottom(); + view.setBackground(replaced); + view.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom); + } else { + view.setBackground(drawable); + } + } else { + view.setBackground(drawable); + } + } + + @TargetClass(value = "android.widget.ImageView", scope = Scope.ALL) + @TargetMethod(methodName = "setImageDrawable") + @ReplaceInvoke + public static void setImageViewDrawable(ImageView view, Drawable drawable) { + if (view == null) { + return; + } + if (!view.isLongClickable() && !view.isClickable()) { + view.setImageDrawable(drawable); + return; + } + float alpha = getAlpha(view); + if (alpha >= 0.0) { + Drawable replaced = checkAndReplaceDrawable(drawable, alpha); + if (replaced != null) { + view.setTag(R.id.click_pressed_attr_replaced, drawable); + int paddingLeft = view.getPaddingLeft(); + int paddingRight = view.getPaddingRight(); + int paddingTop = view.getPaddingTop(); + int paddingBottom = view.getPaddingBottom(); + view.setImageDrawable(replaced); + view.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom); + } else { + view.setImageDrawable(drawable); + } + } else { + view.setImageDrawable(drawable); + } + } + + @TargetClass(value = "android.widget.ImageView", scope = Scope.ALL) + @TargetMethod(methodName = "setImageResource") + @ReplaceInvoke + public static void setImageViewResource(ImageView view, int resId) { + if (view == null) { + return; + } + if (!view.isLongClickable() && !view.isClickable()) { + view.setImageResource(resId); + return; + } + float alpha = getAlpha(view); + if (alpha >= 0.0) { + Drawable drawable = ContextCompat.getDrawable(view.getContext(), resId); + Drawable replaced = checkAndReplaceDrawable(drawable, alpha); + if (replaced != null) { + view.setTag(R.id.click_pressed_attr_replaced, drawable); + int paddingLeft = view.getPaddingLeft(); + int paddingRight = view.getPaddingRight(); + int paddingTop = view.getPaddingTop(); + int paddingBottom = view.getPaddingBottom(); + view.setImageDrawable(replaced); + view.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom); + } else { + view.setImageDrawable(drawable); + } + } else { + view.setImageResource(resId); + } + } + + public static float getAlpha(View view) { + Object tag = view.getTag(R.id.click_pressed_attr_enabled); + if (tag != null && !((Boolean) tag)) { + return -1.0f; + } + tag = view.getTag(R.id.click_pressed_attr_id); + if (tag instanceof AttributeSet) { + AttributeSet attr = (AttributeSet) tag; + TypedArray array = null; + try { + array = view.getContext().obtainStyledAttributes(attr, R.styleable.ClickPressedStyle); + return array.getFloat(R.styleable.ClickPressedStyle_pressed_alpha, 0.6f); + } finally { + if (array != null) { + array.recycle(); + } + } + } + return -1.0f; + } + + @ImplementedInterface(value = "android.view.LayoutInflater$Factory", scope = Scope.LEAF) @Insert(mayCreateSuper = true) @TargetMethod(methodName = "onCreateView") public View onCreateView(String name, Context context, AttributeSet attrs) { View view = (View) Origin.call(); - checkSetBgIfNeed(view, attrs); + if (view == null && attrs != null) { + view = tryCreateView(name, context, attrs); + } + checkSetBgIfNeed(null, view, attrs, false); return view; } @@ -66,106 +314,228 @@ public class ViewPressedStateLancet { @TargetMethod(methodName = "onCreateView") public View onCreateView(View parent, String name, Context context, AttributeSet attrs) { View view = (View) Origin.call(); - checkSetBgIfNeed(view, attrs); + if (view == null && attrs != null) { + view = tryCreateView(name, context, attrs); + } + checkSetBgIfNeed(parent, view, attrs, false); return view; } - private static void checkSetBgIfNeed(View view, AttributeSet attr) { + @Nullable + private static View tryCreateView(String name, Context context, AttributeSet attrs) { + View ret = null; + if (name != null && name.length() > 0) { + if (context != null) { + try { + ret = LayoutInflater.from(context).createView(name, null, attrs); + } catch (Throwable ignore) {} + + if (ret == null) { + String[] prefixList = { + "android.widget.", + "android.webkit.", + "android.app.", + "android.view." + }; + for (String prefix : prefixList) { + try { + ret = LayoutInflater.from(context).createView(name, prefix, attrs); + } catch (Throwable ignore) { } + } + } + } + } + return ret; + } + + private static void checkSetBgIfNeed(View parent, View view, AttributeSet attr, boolean check) { try { TypedArray t = null; - float alpha; + float alpha = 0.6f; boolean enabled; try { - if (view == null) { + if (parent == null && view == null) { return; } - Context context = view.getContext(); + Context context = parent == null ? view.getContext() : parent.getContext(); if (context == null) { return; } - if (attr == null) { - return; + if (parent != null) { + Object tag = parent.getTag(R.id.click_pressed_attr_enabled); + if (tag != null && !((Boolean) tag)) { + view.setTag(R.id.click_pressed_attr_enabled, false); + return; + } } - t = context.obtainStyledAttributes(attr, R.styleable.ClickPressedStyle); - enabled = t.getBoolean(R.styleable.ClickPressedStyle_pressed_enabled, true); - if (!enabled) { - return; + if (view != null) { + Object tag = view.getTag(R.id.click_pressed_attr_enabled); + if (tag != null && !((Boolean) tag)) { + view.setTag(R.id.click_pressed_attr_enabled, false); + return; + } + if (attr != null) { + t = context.obtainStyledAttributes(attr, R.styleable.ClickPressedStyle); + enabled = t.getBoolean(R.styleable.ClickPressedStyle_pressed_enabled, true); + if (!enabled) { + view.setTag(R.id.click_pressed_attr_enabled, false); + return; + } + alpha = t.getFloat(R.styleable.ClickPressedStyle_pressed_alpha, 0.6f); + if (alpha < 0.0f || alpha > 1.0f) { + throw new AssertionError("view custom attr \\'alpha\\' must be in [0.0, 1.0]"); + } + } + if (!check) { + view.setTag(R.id.click_pressed_attr_id, attr); + return; + } } - alpha = t.getFloat(R.styleable.ClickPressedStyle_pressed_alpha, 0.6f); - if (alpha < 0.0f || alpha > 1.0f) { - throw new AssertionError("view custom attr \\'alpha\\' must be in [0.0, 1.0]"); - } - view.setTag(R.id.click_pressed_attr_id, attr); } finally { if (t != null) { t.recycle(); } } - if (view instanceof ImageView) { - ImageView image = (ImageView) view; - Drawable replaced = checkAndReplaceDrawable(image.getBackground(), alpha); - if (replaced != null) { - ViewCompat.setBackground(image, replaced); - return; - } - replaced = checkAndReplaceDrawable(image.getDrawable(), alpha); - if (replaced != null) { - image.setImageDrawable(replaced); - return; - } - return; - } - if (view instanceof TextView) { - TextView text = (TextView) view; - Drawable replaced = checkAndReplaceDrawable(text.getBackground(), alpha); - if (replaced != null) { - ViewCompat.setBackground(text, replaced); - return; - } - ColorStateList textColor = text.getTextColors(); - if (textColor != null) { - int pressed = textColor.getColorForState(new int[]{ android.R.attr.state_pressed }, Integer.MIN_VALUE); - if (pressed != Integer.MIN_VALUE) { - return; - } - int color = textColor.getColorForState(new int[] { android.R.attr.state_enabled }, Integer.MIN_VALUE); - int defaultColor = color; - if (color == Integer.MIN_VALUE) { - defaultColor = textColor.getDefaultColor(); - } - int pressedColor = Color.argb((int)(Color.alpha(defaultColor) * alpha), Color.red(defaultColor), Color.green(defaultColor), Color.blue(defaultColor)); - int disableColor = textColor.getColorForState(new int[] { -android.R.attr.state_enabled }, Integer.MIN_VALUE); - int size = 2; - if (disableColor != Integer.MIN_VALUE) { - size += 1; - } - int[][] states = new int[size][1]; - int[] colors = new int[size]; - states[0] = new int[] { android.R.attr.state_pressed }; - colors[0] = pressedColor; - if (size > 2) { - states[1] = new int[] { -android.R.attr.state_enabled }; - colors[1] = disableColor; - states[2] = new int[] { android.R.attr.state_enabled }; - colors[2] = defaultColor; - } else { - states[1] = new int[] { -android.R.attr.state_pressed }; - colors[1] = defaultColor; - } - ColorStateList newColor = new ColorStateList(states, colors); - text.setTextColor(newColor); - } - return; - } - Drawable replaced = checkAndReplaceDrawable(view.getBackground(), alpha); - if (replaced != null) { - ViewCompat.setBackground(view, replaced); + boolean rst = check(view, alpha); + if (!rst && view != null) { + view.setTag(R.id.click_pressed_attr_enabled, false); } } catch (Throwable t) { t.printStackTrace(); } } + private static boolean check(View view, float alpha) { + if (view instanceof ImageView) { + ImageView image = (ImageView) view; + Drawable old = image.getBackground(); + Drawable replaced = checkAndReplaceDrawable(old, alpha); + if (replaced != null) { + view.setTag(R.id.click_pressed_attr_replaced, old); + image.setBackground(replaced); + return true; + } + old = image.getDrawable(); + replaced = checkAndReplaceDrawable(old, alpha); + if (replaced != null) { + view.setTag(R.id.click_pressed_attr_replaced, old); + int paddingLeft = view.getPaddingLeft(); + int paddingRight = view.getPaddingRight(); + int paddingTop = view.getPaddingTop(); + int paddingBottom = view.getPaddingBottom(); + image.setImageDrawable(replaced); + image.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom); + return true; + } + return false; + } + + if (view instanceof TextView) { + TextView text = (TextView) view; + Drawable background = text.getBackground(); + Drawable replaced = checkAndReplaceDrawable(background, alpha); + if (replaced != null) { + view.setTag(R.id.click_pressed_attr_replaced, background); + int paddingLeft = text.getPaddingLeft(); + int paddingRight = text.getPaddingRight(); + int paddingTop = text.getPaddingTop(); + int paddingBottom = text.getPaddingBottom(); + text.setBackground(replaced); + text.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom); + return true; + } + + ColorStateList textColor = text.getTextColors(); + if (textColor != null) { + int current = text.getCurrentTextColor(); + int pressed = textColor.getColorForState(new int[]{ android.R.attr.state_pressed }, Integer.MIN_VALUE); + if (pressed != Integer.MIN_VALUE && pressed != current) { + return false; + } + int enableColor = textColor.getColorForState(new int[] { android.R.attr.state_enabled }, Integer.MIN_VALUE); + int defaultColor = current; + if (enableColor == Integer.MIN_VALUE && enableColor != current) { + defaultColor = textColor.getDefaultColor(); + } + int pressedColor = Color.argb((int)(Color.alpha(defaultColor) * alpha), Color.red(defaultColor), Color.green(defaultColor), Color.blue(defaultColor)); + int disableColor = textColor.getColorForState(new int[] { -android.R.attr.state_enabled }, Integer.MIN_VALUE); + int size = 2; + if (disableColor != Integer.MIN_VALUE && disableColor != current) { + size += 1; + } + boolean hasChecked = false; + int checkedColor = textColor.getColorForState(new int[] { android.R.attr.state_checked }, Integer.MIN_VALUE); + if (checkedColor != Integer.MIN_VALUE && checkedColor != current) { + hasChecked = true; + size += 1; + } + boolean hasUnChecked = false; + int unCheckedColor = textColor.getColorForState(new int[]{ -android.R.attr.state_checked }, Integer.MIN_VALUE); + if (unCheckedColor != Integer.MIN_VALUE && unCheckedColor != current) { + hasUnChecked = true; + size += 1; + } + int[][] states = new int[size][1]; + int[] colors = new int[size]; + states[0] = new int[] { android.R.attr.state_pressed }; + colors[0] = pressedColor; + if (size > 2) { + states[1] = new int[] { -android.R.attr.state_enabled }; + colors[1] = disableColor; + states[2] = new int[] { android.R.attr.state_enabled }; + colors[2] = defaultColor; + if (hasChecked) { + states[3] = new int[] { android.R.attr.state_checked }; + colors[3] = checkedColor; + } + if (hasUnChecked) { + if (size > 4) { + states[4] = new int[] { -android.R.attr.state_checked }; + colors[4] = unCheckedColor; + } else { + states[3] = new int[] { -android.R.attr.state_checked }; + colors[3] = unCheckedColor; + } + } + } else { + states[1] = new int[] { -android.R.attr.state_pressed }; + colors[1] = defaultColor; + } + ColorStateList newColor = new ColorStateList(states, colors); + text.setTag(R.id.click_pressed_attr_replaced_color, textColor); + text.setTextColor(newColor); + return true; + } + + return false; + } + if (view != null) { + Drawable old = view.getBackground(); + Drawable replaced = checkAndReplaceDrawable(old, alpha); + if (replaced != null) { + view.setTag(R.id.click_pressed_attr_replaced, old); + int paddingLeft = view.getPaddingLeft(); + int paddingRight = view.getPaddingRight(); + int paddingTop = view.getPaddingTop(); + int paddingBottom = view.getPaddingBottom(); + view.setBackground(replaced); + view.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom); + return true; + } + } + if (view instanceof ViewGroup) { + ViewGroup group = (ViewGroup) view; + int count = group.getChildCount(); + for (int i = 0; i < count; i++) { + View child = group.getChildAt(i); + if (check(child, alpha)) { + return true; + } + } + } + return false; + } + private static Drawable checkAndReplaceDrawable(Drawable old, float alpha) { if (old == null) { return null; @@ -174,47 +544,30 @@ public class ViewPressedStateLancet { StateListDrawable drawable = (StateListDrawable) old; int[] states = drawable.getState(); boolean hasPressed = false; - int index = 0; - int targetIndex = -1; for (int state : states) { - if (!hasPressed && state == android.R.attr.state_pressed) { + if (state == android.R.attr.state_pressed) { hasPressed = true; - } - if (targetIndex == -1 && state != -android.R.attr.state_enabled) { - targetIndex = index; - } - if (hasPressed && targetIndex != -1) { break; } - index ++; } if (hasPressed) { return null; } - if (targetIndex != -1) { - Drawable origin= null; - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - origin = drawable.getStateDrawable(targetIndex); - } else { - origin = drawable.getCurrent(); - } - if (origin != null) { - Drawable.ConstantState constantState = origin.getConstantState(); - if (constantState != null) { - Drawable pressed = DrawableCompat.wrap(constantState.newDrawable().mutate()); - pressed.setAlpha((int)(255 * alpha)); - drawable.addState(new int[] {android.R.attr.state_pressed}, pressed); - return drawable; - } - } - return null; + Drawable origin = drawable.getCurrent(); + Drawable.ConstantState constantState = origin.getConstantState(); + if (constantState != null) { + Drawable pressed = DrawableCompat.wrap(constantState.newDrawable().mutate()); + pressed.setAlpha((int)(255 * alpha)); + drawable.addState(new int[] { android.R.attr.state_pressed }, pressed); + return drawable; } return null; } Drawable.ConstantState constantState = old.getConstantState(); if (constantState != null) { StateListDrawable result = new StateListDrawable(); - result.addState(new int[] { -android.R.attr.state_pressed }, old); + int[] state = { -android.R.attr.state_pressed }; + result.addState(state, old); Drawable pressed = DrawableCompat.wrap(constantState.newDrawable().mutate()); pressed.setAlpha((int)(255 * alpha)); result.addState(new int[] { android.R.attr.state_pressed }, pressed); diff --git a/config.gradle b/config.gradle index 3b31d1f2e4..a3acfd6d76 100644 --- a/config.gradle +++ b/config.gradle @@ -26,7 +26,7 @@ ext { androidxjunit : "androidx.test.ext:junit:1.1.2", androidxespressocore : "androidx.test.espresso:espresso-core:3.3.0", // 地图 - amapnavi3dmap : "com.amap.api:navi-3dmap:9.8.1_3dmap9.7.0", + amapnavi3dmap : "com.amap.api:navi-3dmap:9.8.3_3dmap9.8.3", amapsearch : "com.amap.api:search:9.7.0", amaplocation : "com.amap.api:location:6.3.0", @@ -85,7 +85,7 @@ ext { videojava : "com.shuyu:gsyVideoPlayer-java:7.1.2", eventbus : "org.greenrobot:eventbus:3.3.1", videoprocessor : "com.zhidao.video:video-processor:1.0.2.1", - livesdk : "com.tencent.liteav:LiteAVSDK_Smart:latest.release", + livesdk : "com.tencent.liteavsdk:LiteAVSDK_Smart:7.4.9211", coroutinescore : "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.2", coroutinesandroid : "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.2", @@ -209,7 +209,7 @@ ext { //========================= LancetX =================== lancetx_runtime : "io.github.knight-zxw:lancet-runtime:10.50.0", - lancetx_compiler : "com.mogo.eagle.core.lancetx:compiler:1.0.6", + lancetx_compiler : "com.mogo.eagle.core.lancetx:compiler:1.0.10", lancetx_compiler_lib : "com.mogo.eagle.core.lancetx:runtime:1.0.5", @@ -228,7 +228,7 @@ ext { passport_secret : "com.zhidaoauto:sdk-java:1.0.5-SNAPSHOT", // 主线程卡顿监测 - block_detector : "com.mogo.eagle.core.block:runtime:10.90.50", + block_detector : "com.mogo.eagle.core.block:runtime:10.90.60", //======================== google auto-service =============== google_auto_service : "com.google.auto.service:auto-service:1.0-rc7", diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt index e1c42574d3..943c90cf67 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt @@ -2,12 +2,13 @@ package com.mogo.eagle.function.biz import android.content.Context import com.alibaba.android.arouter.facade.annotation.Route -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.biz.camera.CameraEntity import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.constants.MogoServicePaths import com.mogo.eagle.core.function.api.biz.IMoGoFuncBizProvider import com.mogo.eagle.core.function.api.biz.IMoGoNoticeNetCallBack +import com.mogo.eagle.core.function.call.autopilot.CallerV2XListenerManager.V2NCarTypeCheck import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.function.biz.dispatch.DispatchAutoPilotManager.Companion.dispatchAutoPilotManager import com.mogo.eagle.function.biz.monitoring.CronTaskManager.Companion.cronTaskManager @@ -42,11 +43,9 @@ class FuncBizProvider : IMoGoFuncBizProvider { MogoTrafficLightManager.INSTANCE.initServer(context) } VipCarManager.INSTANCE.initServer(context) - if(!(AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) - && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode))){ + if (V2NCarTypeCheck.verifyCarType()) { V2XEventManager.init(context) } - if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){ LineUploadManager.getInstance(context)?.init() } @@ -109,7 +108,7 @@ class FuncBizProvider : IMoGoFuncBizProvider { } override fun getAllV2XEvents() { - OverViewDataManager.getAllV2XEventsByLineId(MoGoAiCloudClientConfig.getInstance().sn) + OverViewDataManager.getAllV2XEventsByLineId(SharedPrefsMgr.getInstance().sn) } override fun stopQueryV2XEvents() { @@ -117,8 +116,7 @@ class FuncBizProvider : IMoGoFuncBizProvider { } override fun queryV2XEvents() { - if ((AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && (!FunctionBuildConfig.v2nMainSwitch || !FunctionBuildConfig.isNewV2NData)) - || AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { + if (V2NCarTypeCheck.verifyCarType() && (!FunctionBuildConfig.v2nMainSwitch || !FunctionBuildConfig.isNewV2NData)) { v2xPoiLoader.queryWholeRoadEvents() } } diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/DispatchServiceModel.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/DispatchServiceModel.kt index 6f0264cbe3..09534eeaaa 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/DispatchServiceModel.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/DispatchServiceModel.kt @@ -1,8 +1,8 @@ package com.mogo.eagle.function.biz.dispatch.network -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.constants.HostConst import com.mogo.commons.context.ContextHolderUtil +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.data.autopilot.AutopilotRouteInfo.RouteModels import com.mogo.eagle.core.data.biz.dispatch.ReportDispatchResult @@ -43,7 +43,7 @@ class DispatchServiceModel private constructor() { * @param list 路线集合 */ fun uploadAutopilotRoute(list: List?) { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn val reportedRoute = ReportedRoute( sn, GsonUtil.jsonFromObject(list) @@ -81,7 +81,7 @@ class DispatchServiceModel private constructor() { onSuccess: ((BaseData) -> Unit)? = null, onError: ((String) -> Unit)? = null ) { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn val reportDispatchResult = ReportDispatchResult( sn, diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/notice/network/NoticeNetWorkManager.java b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/notice/network/NoticeNetWorkManager.java index 946f602fc8..e8052143fd 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/notice/network/NoticeNetWorkManager.java +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/notice/network/NoticeNetWorkManager.java @@ -3,8 +3,8 @@ package com.mogo.eagle.function.biz.notice.network; import android.util.ArrayMap; import com.mogo.cloud.network.RetrofitFactory; -import com.mogo.cloud.passport.MoGoAiCloudClient; import com.mogo.commons.constants.HostConst; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.data.BaseData; import com.mogo.eagle.core.data.biz.notice.NoticeNormalDetail; import com.mogo.eagle.core.data.biz.notice.NoticeRequest; @@ -124,7 +124,7 @@ public class NoticeNetWorkManager { * @param dbId */ public void getNoticeDetail(String dbId) { - String sn = MoGoAiCloudClient.getInstance().getAiCloudClientConfig().getSn(); + String sn = SharedPrefsMgr.getInstance().getSn(); Map map = new HashMap<>(); map.put("sn", sn); map.put("infoId", dbId); diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/overview/OverViewDataManager.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/overview/OverViewDataManager.kt index 21fd03bc72..496ddc44b2 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/overview/OverViewDataManager.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/overview/OverViewDataManager.kt @@ -6,9 +6,9 @@ import com.mogo.commons.constants.HostConst import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.map.Infrastructure import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerV2XListenerManager.V2NCarTypeCheck import com.mogo.eagle.core.function.call.biz.CallerFuncBizListenerManager import com.mogo.eagle.core.network.MoGoRetrofitFactory -import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.function.biz.v2x.overview.db.OverviewDb @@ -107,8 +107,7 @@ object OverViewDataManager { .observeOn(AndroidSchedulers.mainThread()) .subscribe { it?.apply { - if ((AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && (!FunctionBuildConfig.v2nMainSwitch || !FunctionBuildConfig.isNewV2NData)) - || AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { + if (V2NCarTypeCheck.verifyCarType() && (!FunctionBuildConfig.v2nMainSwitch || !FunctionBuildConfig.isNewV2NData)) { CallerFuncBizListenerManager.invokeV2XEvents(this) } } diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/road/LineUploadManager.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/road/LineUploadManager.kt index bd49ec6ff4..50d018209b 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/road/LineUploadManager.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/road/LineUploadManager.kt @@ -1,8 +1,8 @@ package com.mogo.eagle.function.biz.v2x.road import android.content.Context -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.constants.HostConst.getEagleHost +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.v2x.LineUploadData import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager @@ -55,7 +55,7 @@ class LineUploadManager private constructor(context: Context) : IMoGoAutopilotSt } private fun uploadLine(lineId: Long) { - val lineUploadData = LineUploadData(lineId, MoGoAiCloudClientConfig.getInstance().sn) + val lineUploadData = LineUploadData(lineId, SharedPrefsMgr.getInstance().sn) disposable = MoGoRetrofitFactory.getInstance(getEagleHost()) .create(ILineUploadApi::class.java) .uploadLineId(lineUploadData) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/trafficlight/network/TrafficLightNetWorkModel.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/trafficlight/network/TrafficLightNetWorkModel.kt index e5b1c2632a..e5360016e6 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/trafficlight/network/TrafficLightNetWorkModel.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/trafficlight/network/TrafficLightNetWorkModel.kt @@ -1,7 +1,7 @@ package com.mogo.eagle.function.biz.v2x.trafficlight.network -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.constants.HostConst +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseResponse import com.mogo.eagle.core.data.biz.trafficlight.* import com.mogo.eagle.core.network.MoGoRetrofitFactory @@ -31,7 +31,7 @@ class TrafficLightNetWorkModel { val tileId = mogoMapData.get()?.getTileId(lon, lat)?:0 val map = hashMapOf() val roadIDRequestData = RoadIDRequestData(tileId, lat, lon, bearing) - map["sn"] = MoGoAiCloudClientConfig.getInstance().sn + map["sn"] = SharedPrefsMgr.getInstance().sn map["data"] = GsonUtils.toJson(roadIDRequestData) getNetWorkApi().getFrontRoadID(map) } @@ -77,7 +77,7 @@ class TrafficLightNetWorkModel { loader { apiCall { val trafficLightRequestData = TrafficLightRequestData(lat, lon, bearing, roadId!!) - map["sn"] = MoGoAiCloudClientConfig.getInstance().sn + map["sn"] = SharedPrefsMgr.getInstance().sn map["data"] = GsonUtils.toJson(trafficLightRequestData) getNetWorkApi().getTrafficLight(map) } @@ -115,7 +115,7 @@ class TrafficLightNetWorkModel { apiCall { val trafficLightRequestData = ChangeLightRequestData(lightId, crossingNo, heading, controlTime) - map["sn"] = MoGoAiCloudClientConfig.getInstance().sn + map["sn"] = SharedPrefsMgr.getInstance().sn map["data"] = GsonUtils.toJson(trafficLightRequestData) getNetWorkApi().changeLight(map) } diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/V2XEventManager.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/V2XEventManager.kt index e12c0b4ef1..8fcf73fa29 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/V2XEventManager.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/V2XEventManager.kt @@ -1,54 +1,85 @@ package com.mogo.eagle.function.biz.v2x.v2n -import android.content.* -import android.os.* -import android.util.* -import androidx.annotation.* -import androidx.localbroadcastmanager.content.* -import com.mogo.eagle.core.data.config.* +import android.content.Context +import android.content.Intent +import android.os.Build +import android.os.Handler +import android.os.Looper +import android.util.Log +import androidx.annotation.RequiresApi +import androidx.localbroadcastmanager.content.LocalBroadcastManager +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_V2X_MSG -import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_SOURCE_ADAS import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_SOURCE_CLOUD import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_TYPE_STATUS -import com.mogo.eagle.core.data.enums.* +import com.mogo.eagle.core.data.enums.CommunicationType import com.mogo.eagle.core.data.enums.DataSourceType +import com.mogo.eagle.core.data.enums.EventTypeEnumNew import com.mogo.eagle.core.data.enums.EventTypeEnumNew.Companion.isRoadEvent import com.mogo.eagle.core.data.enums.WarningDirectionEnum.ALERT_WARNING_TOP -import com.mogo.eagle.core.data.map.* -import com.mogo.eagle.core.data.map.entity.* -import com.mogo.eagle.core.data.msgbox.* -import com.mogo.eagle.core.data.v2x.* -import com.mogo.eagle.core.function.api.autopilot.* -import com.mogo.eagle.core.function.api.cloud.* -import com.mogo.eagle.core.function.call.autopilot.* +import com.mogo.eagle.core.data.map.MogoLocation +import com.mogo.eagle.core.data.map.entity.V2XMessageEntity +import com.mogo.eagle.core.data.map.entity.V2XRoadEventEntity +import com.mogo.eagle.core.data.msgbox.MsgBoxBean +import com.mogo.eagle.core.data.msgbox.MsgBoxType +import com.mogo.eagle.core.data.msgbox.V2XMsg +import com.mogo.eagle.core.data.multidisplay.TelematicConstant +import com.mogo.eagle.core.data.v2x.V2XEvent +import com.mogo.eagle.core.data.v2x.V2XMarkerCardResult +import com.mogo.eagle.core.data.v2x.V2XWarningTarget +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener +import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener +import com.mogo.eagle.core.function.api.autopilot.IMoGoV2XListener +import com.mogo.eagle.core.function.api.cloud.IMoGoCloudListener +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02 -import com.mogo.eagle.core.function.call.cloud.* -import com.mogo.eagle.core.function.call.hmi.* -import com.mogo.eagle.core.function.call.msgbox.* -import com.mogo.eagle.core.utilcode.mogo.* -import com.mogo.eagle.core.utilcode.mogo.logger.* +import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84ListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerV2XListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerV2XListenerManager.V2NCarTypeCheck.Companion.verifyCarType +import com.mogo.eagle.core.function.call.cloud.CallerCloudListenerManager +import com.mogo.eagle.core.function.call.hmi.CallerHmiManager +import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager +import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager.OnRoadListener +import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager +import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_V2X -import com.mogo.eagle.core.utilcode.util.* -import com.mogo.eagle.function.biz.v2x.* +import com.mogo.eagle.core.utilcode.util.CoordinateUtils +import com.mogo.eagle.core.utilcode.util.GsonUtils +import com.mogo.eagle.core.utilcode.util.Utils +import com.mogo.eagle.function.biz.v2x.V2XBizTrace import com.mogo.eagle.function.biz.v2x.v2n.V2XPoiLoader.Companion.v2xPoiLoader -import com.mogo.eagle.function.biz.v2x.v2n.alarm.* +import com.mogo.eagle.function.biz.v2x.v2n.alarm.V2XAlarmServer import com.mogo.eagle.function.biz.v2x.v2n.consts.V2XConst.BROADCAST_SCENE_EXTRA_KEY import com.mogo.eagle.function.biz.v2x.v2n.consts.V2XConst.BROADCAST_SCENE_HANDLER_ACTION -import com.mogo.eagle.function.biz.v2x.v2n.network.callback.* -import com.mogo.eagle.function.biz.v2x.v2n.receiver.* -import com.mogo.eagle.function.biz.v2x.v2n.scenario.impl.* -import com.mogo.eagle.function.biz.v2x.v2n.utils.* -import com.zhjt.service.chain.* -import kotlinx.coroutines.* -import kotlinx.coroutines.android.* +import com.mogo.eagle.function.biz.v2x.v2n.network.callback.IV2XCallback +import com.mogo.eagle.function.biz.v2x.v2n.receiver.SceneBroadcastReceiver +import com.mogo.eagle.function.biz.v2x.v2n.scenario.impl.V2XScenarioManager +import com.mogo.eagle.function.biz.v2x.v2n.utils.V2XEventAnalyticsManager +import com.mogo.eagle.function.biz.v2x.v2n.utils.toRoadMarker +import com.zhidaoauto.map.data.road.StopLine +import com.zhjt.service.chain.ChainLog +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.android.asCoroutineDispatcher +import kotlinx.coroutines.cancel +import kotlinx.coroutines.launch import mogo.telematics.pad.MessagePad.PlanningObject -import mogo.v2x.* -import java.util.concurrent.* -import java.util.concurrent.atomic.* +import mogo.v2x.MogoV2X +import java.nio.charset.Charset +import java.util.concurrent.CopyOnWriteArrayList +import java.util.concurrent.CopyOnWriteArraySet +import java.util.concurrent.atomic.AtomicBoolean +import java.util.concurrent.atomic.AtomicReference + object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback, IMoGoAutopilotIdentifyListener, IMoGoCloudListener, - IMoGoV2XListener, IMoGoAutopilotStatusListener { + IMoGoV2XListener, IMoGoAutopilotStatusListener, OnRoadListener { private const val TAG = "V2XEventManager" @@ -60,15 +91,56 @@ object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback, private val hasInit by lazy { AtomicBoolean(false) } + private val firstLocationInCross by lazy { AtomicReference() } + + @Volatile + private var roadId = "" + + @Volatile + private var roadIdWithEnterCross = "" + + @Volatile + private var hasCrossRoad = false + fun init(context: Context) { if (hasInit.compareAndSet(false, true)) { registerListener() v2xPoiLoader.startLoopPoi() // 注册广播接收场景弹窗使用的 SceneBroadcastReceiver.register(context) + CallerMapRoadListenerManager.registerRoadListener(TAG, this) } } + override fun onRoadIdInfo(roadId: String) { + super.onRoadIdInfo(roadId) + Log.d(TAG, "--- onRoadIdInfo ---: $roadId") + this.roadId = roadId + val enterCrossRoadId = this.roadIdWithEnterCross + if (hasCrossRoad && roadId.isNotBlank() && enterCrossRoadId.isNotBlank() && enterCrossRoadId != roadId) { + hasCrossRoad = false + if (firstLocationInCross.get() == null) { + Log.d(TAG, "--- onRoadIdInfo --- 1 ---: $roadId") + firstLocationInCross.set(CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84()) + } + } + } + + override fun onStopLineInfo(info: StopLine) { + super.onStopLineInfo(info) + Log.d(TAG, "--- onStopLineInfo --- 1 ---: ${ info.distance }") + if (!hasCrossRoad && info.distance <= 10) { + Log.d(TAG, "--- onStopLineInfo --- 2 ---: $roadId") + hasCrossRoad = true + roadIdWithEnterCross = this.roadId + firstLocationInCross.set(null) + } + } + + fun getFirstLocationInCross(): MogoLocation? { + return firstLocationInCross.get() + } + private fun registerListener() { CallerChassisLocationGCJ02ListenerManager.addListener(TAG, 1, this) v2xPoiLoader.addCallback(this) @@ -170,9 +242,21 @@ object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback, handleRoadMarkerEvent(event.data.toRoadMarker()) } is V2XEvent.RoadEventX -> { - if (!AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) || !FunctionBuildConfig.v2nMainSwitch || !FunctionBuildConfig.isNewV2NData) { + val flag = verifyCarType() + Log.d("$M_V2X$TAG", "---- 收到ai云V2N事件 ---:${flag}, ${FunctionBuildConfig.v2nMainSwitch}, ${FunctionBuildConfig.isNewV2NData}") + if (flag && (!FunctionBuildConfig.v2nMainSwitch || !FunctionBuildConfig.isNewV2NData)) { +// try { + if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + Log.d("$M_V2X$TAG", "onAck -> 司机端: 将收到云端事件给到乘客端...") + CallerTelematicManager.sendMsgToAllClients(TelematicConstant.V2N_AI_ROAD_DATA_TO_PASSENGER, GsonUtils.toJson(event).toByteArray(Charset.defaultCharset())) + } else { + Log.d("$M_V2X$TAG", "onAck -> 乘客端: 收到V2N事件...") + } +// } catch (t: Throwable) { +// t.printStackTrace() +// } handleRoadMarkerEvent(event.data.toRoadMarker()) - }else{ + } else{ V2XBizTrace.onAck("事件未触发,被开关拦截",mapOf("roadEvent" to event, "v2nMainSwitch" to FunctionBuildConfig.v2nMainSwitch,"isNewV2NData" to FunctionBuildConfig.isNewV2NData), true) } } @@ -183,12 +267,6 @@ object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback, } @RequiresApi(Build.VERSION_CODES.N) -// @ChainLog( -// linkChainLog = CHAIN_TYPE_STATUS, -// linkCode = CHAIN_SOURCE_ADAS, -// nodeAliasCode = CHAIN_CODE_V2X_MSG, -// paramIndexes = [0] -// ) override fun onAutopilotIdentifyPlanningObj(planningObjects: List?) { super.onAutopilotIdentifyPlanningObj(planningObjects) planningObjects?.let { @@ -285,6 +363,7 @@ object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback, unRegisterListener() } v2xPoiLoader.stopLoopPoi() + CallerMapRoadListenerManager.unRegisterRoadListener(TAG) } } diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/V2XPoiLoader.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/V2XPoiLoader.kt index 1835084bda..3c8f1ff45a 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/V2XPoiLoader.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/V2XPoiLoader.kt @@ -2,7 +2,7 @@ package com.mogo.eagle.function.biz.v2x.v2n import android.os.Handler import android.os.Looper -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.enums.CommunicationType import com.mogo.eagle.core.data.enums.DataSourceType import com.mogo.eagle.core.data.msgbox.MsgBoxBean @@ -144,7 +144,7 @@ class V2XPoiLoader private constructor() { */ fun queryWholeRoadEvents() { V2XRefreshModel.roadEventDispose() - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn val lineId = CallerAutoPilotStatusListenerManager.getLineId() if (lineId > 0) { realQueryV2xEvents(lineId.toString(), sn) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/alarm/V2XAlarmServer.java b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/alarm/V2XAlarmServer.java index 6c11973b88..6805a6d112 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/alarm/V2XAlarmServer.java +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/alarm/V2XAlarmServer.java @@ -92,7 +92,7 @@ public class V2XAlarmServer { ); CallerLogger.d(M_BIZ + TAG, "eventAngle:" + eventAngle); - if (0 <= eventAngle && eventAngle <= 25) { + if (0 <= eventAngle && eventAngle <= 30) { if (showedEvents.contains(v2XRoadEventEntity)) { return null; } diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/network/V2XRefreshModel.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/network/V2XRefreshModel.kt index f722e49601..3b95698709 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/network/V2XRefreshModel.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/network/V2XRefreshModel.kt @@ -4,10 +4,10 @@ import com.elegant.network.utils.GsonUtil import com.elegant.network.utils.SignUtil import com.elegant.utils.CommonUtils import com.mogo.cloud.network.RetrofitFactory -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.AbsMogoApplication import com.mogo.commons.constants.HostConst import com.mogo.commons.network.ParamsUtil +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.v2x.V2XEventData import com.mogo.eagle.core.data.v2x.V2XLocation import com.mogo.eagle.core.data.v2x.V2XMarkerResponse @@ -19,7 +19,6 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.DeviceUtils import com.mogo.eagle.function.biz.v2x.V2XBizTrace -import com.mogo.eagle.function.biz.v2x.v2n.V2XPoiLoader import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.disposables.Disposable import io.reactivex.schedulers.Schedulers @@ -72,8 +71,8 @@ internal class V2XRefreshModel { }) this["netType"] = CommonUtils.getNetworkType(AbsMogoApplication.getApp()) this["cellId"] = DeviceUtils.getCellId() ?: "" - this["sn"] = MoGoAiCloudClientConfig.getInstance().sn - this["ticket"] = MoGoAiCloudClientConfig.getInstance().token + this["sn"] = SharedPrefsMgr.getInstance().sn + this["ticket"] = SharedPrefsMgr.getInstance().token this["sig"] = SignUtil.createSign(this, "JGjZx6") this["data"] = GsonUtil.jsonFromObject(V2XRefreshEntity().apply { limit = 999 diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt index f06b170ccf..8d281816a8 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt @@ -21,10 +21,10 @@ import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84ListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerV2XListenerManager.V2NCarTypeCheck import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.function.call.map.CallerVisualAngleManager import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager.saveMsgBox -import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.util.CoordinateTransform import com.mogo.eagle.core.utilcode.util.CoordinateUtils import com.mogo.eagle.core.utilcode.util.DrivingDirectionUtils @@ -317,11 +317,11 @@ internal object V2NIdentifyDrawer { override fun onAutopilotIdentifyDataUpdate(trafficData: List?) { super.onAutopilotIdentifyDataUpdate(trafficData) val shiGong = trafficData?.filter { it.type == 501 || it.type == 502 } - if (shiGong != null && shiGong.isNotEmpty()) { + if (!shiGong.isNullOrEmpty()) { drawShiGong(shiGong) } val shiGu = trafficData?.filter { it.type == 13 } - if (shiGu != null && shiGu.isNotEmpty()) { + if (!shiGu.isNullOrEmpty()) { drawShiGu(shiGu) } } @@ -340,21 +340,21 @@ internal object V2NIdentifyDrawer { } private fun drawShiGong(events: List) { - if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { + if (V2NCarTypeCheck.verifyCarType() && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { handler.removeMessages(MSG_WHAT_DRAW_SHIGONE) handler.sendMessage(Message.obtain(handler, MSG_WHAT_DRAW_SHIGONE, events)) } } private fun drawShiGu(events: List) { - if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { + if (V2NCarTypeCheck.verifyCarType() && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { handler.removeMessages(MSG_WHAT_DRAW_SHIGU) handler.sendMessage(Message.obtain(handler, MSG_WHAT_DRAW_SHIGU, events)) } } private fun drawYongDu(events: List) { - if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { + if (V2NCarTypeCheck.verifyCarType() && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { handler.removeMessages(MSG_WHAT_DRAW_YONGDU) handler.sendMessage(Message.obtain(handler, MSG_WHAT_DRAW_YONGDU, events)) } diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt index f002941989..76679558ab 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt @@ -5,6 +5,7 @@ import android.graphics.Color import android.os.Handler import android.os.HandlerThread import android.os.Looper +import android.util.Log import android.view.animation.DecelerateInterpolator import androidx.core.util.Pair import com.mogo.eagle.core.data.map.MogoLatLng @@ -14,6 +15,7 @@ import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.utilcode.util.CoordinateUtils import com.mogo.eagle.core.utilcode.util.DrivingDirectionUtils import com.mogo.eagle.function.biz.v2x.V2XBizTrace +import com.mogo.eagle.function.biz.v2x.v2n.V2XEventManager import com.mogo.eagle.function.biz.v2x.v2n.consts.V2XConst import com.mogo.eagle.function.biz.v2x.v2n.remove.MarkerRemoveManager import com.mogo.eagle.function.biz.v2x.v2n.remove.MarkerWrapper @@ -37,6 +39,8 @@ class AiRoadMarker { val aiMakers = ConcurrentHashMap() private const val TAG = "AiRoadMarker" + private val COLOR_START = Color.parseColor("#002ABAD9") + private val COLOR_END = Color.parseColor("#66FF7A30") } private val marker by lazy { AtomicReference() } @@ -45,9 +49,6 @@ class AiRoadMarker { CallerMapUIServiceManager.getOverlayManager() } - private val START_COLOR = Color.parseColor("#002ABAD9") - private val END_COLOR = Color.parseColor("#66FF7A30") - private val roadMarker by lazy { V2XAiRoadEventMarker() } private val line = AtomicReference() @@ -111,7 +112,7 @@ class AiRoadMarker { marker.poi_lon, marker.poi_lat, location.heading.toFloat(), - -300f, call = { result -> + -200f, call = { result -> result?.let { V2XBizTrace.onAck("$TAG -marker-3-l2:", it) l2 = result @@ -119,7 +120,7 @@ class AiRoadMarker { countDown.incrementAndGet() realMark(marker, wrapper, l1, l2, location.heading) }) - }else{ + } else { wrapper.onRemoved = { id -> aiMakers.remove(id) } @@ -151,7 +152,22 @@ class AiRoadMarker { V2XBizTrace.onAck("$TAG -marker-4-l2:", l2) val points = LinkedList() if (l2.points.isNotEmpty()) { - points.addAll(l2.points.reversed().map { + points.addAll(l2.points.reversed()/*.filter { + val location = V2XEventManager.getFirstLocationInCross() + Log.d(TAG, "l2: location -> $location") + if (location != null) { + val carLocation = CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84() + if (DrivingDirectionUtils.getDegreeOfCar2Poi2(carLocation.longitude, carLocation.latitude, location.longitude, location.latitude, carLocation.heading) > 90) { + //处理同一个路口不同车道调头,这种极端情况 + true + } else { + val angle = DrivingDirectionUtils.getDegreeOfCar2Poi2(location.longitude, location.latitude, it.longitude, it.latitude, location.heading) + angle <= 90 + } + } else { + true + } + }.*/.map { MogoLatLng(it.latitude, it.longitude) }) } @@ -202,8 +218,8 @@ class AiRoadMarker { (0..total).forEach { i -> colors += evaluator.evaluate( interceptor.getInterpolation(i * 1f / total), - START_COLOR, - END_COLOR + COLOR_START, + COLOR_END ) as Int } builder.points(points) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XAiRoadEventMarker.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XAiRoadEventMarker.kt index 09335d777d..2e046f3b22 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XAiRoadEventMarker.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XAiRoadEventMarker.kt @@ -1,15 +1,19 @@ package com.mogo.eagle.function.biz.v2x.v2n.scenario.scene.road import android.graphics.Color +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.enums.EventTypeEnumNew +import com.mogo.eagle.core.data.enums.EventTypeEnumNew.TYPE_SOCKET_ROAD_SHIGU import com.mogo.eagle.core.data.map.MogoLatLng import com.mogo.eagle.core.data.map.entity.V2XRoadEventEntity import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isTaxiPassenger import com.mogo.eagle.function.biz.v2x.v2n.consts.V2XConst import com.mogo.eagle.function.biz.v2x.v2n.remove.MarkerWrapper -import com.mogo.map.overlay.core.* -import com.mogo.map.overlay.line.* -import com.mogo.map.overlay.point.* +import com.mogo.map.overlay.core.Level +import com.mogo.map.overlay.line.Polyline +import com.mogo.map.overlay.point.Point import java.util.concurrent.atomic.AtomicReference class V2XAiRoadEventMarker { @@ -18,13 +22,14 @@ class V2XAiRoadEventMarker { fun drawMarkers(entity: V2XRoadEventEntity, wrapper: MarkerWrapper) { val polygon = entity.noveltyInfo.polygon + val markerBuilder = Point.Options.Builder(V2XConst.V2X_MARKER_OWNER, Level.MAP_MARKER).longitude(entity.location.lon).latitude(entity.location.lat).scale(if (EventTypeEnumNew.TYPE_SOCKET_ROAD_SHIGU.poiType == entity.poiType && AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) 0.6f else 1.0f).icon3DRes(EventTypeEnumNew.getMarker3DRes(entity.poiType)).set3DMode(true) + val isSpecial = TYPE_SOCKET_ROAD_SHIGU.poiType == entity.poiType && isTaxiPassenger(FunctionBuildConfig.appIdentityMode) + if (isSpecial) { + markerBuilder.controlAngle(true) + markerBuilder.rotate(-180f) + } CallerMapUIServiceManager.getOverlayManager()?.showOrUpdatePoint( - Point.Options - .Builder(V2XConst.V2X_MARKER_OWNER, Level.MAP_MARKER) - .longitude(entity.location.lon) - .latitude(entity.location.lat) - .icon3DRes(EventTypeEnumNew.getMarker3DRes(entity.poiType)) - .set3DMode(true) + markerBuilder .build())?.also { wrapper.addPoint(it) } if (polygon != null && polygon.isNotEmpty() && entity.poiType != EventTypeEnumNew.TYPE_SOCKET_ROAD_JINGZHI.poiType) { val builder = Polyline.Options.Builder(V2XConst.V2X_MARKER_OWNER, Level.MAP_POLYGON) @@ -67,7 +72,7 @@ class V2XAiRoadEventMarker { CallerMapUIServiceManager.getOverlayManager()?.removeLine(line.id) } val markers = pair.second - if (markers != null && markers.isNotEmpty()) { + if (!markers.isNullOrEmpty()) { for (m in markers) { CallerMapUIServiceManager.getOverlayManager()?.removePoint(m.id) } diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventMarker.java b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventMarker.java index 9e60f5fa38..cc7636b7c1 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventMarker.java +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventMarker.java @@ -4,11 +4,14 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_V2X import static com.mogo.map.MogoMap.DEFAULT; import androidx.core.util.Pair; + +import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.enums.EventTypeEnumNew; import com.mogo.eagle.core.data.map.entity.MarkerExploreWay; import com.mogo.eagle.core.data.map.entity.MarkerLocation; import com.mogo.eagle.core.data.map.entity.V2XRoadEventEntity; import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.function.biz.v2x.V2XBizTrace; import com.mogo.eagle.function.biz.v2x.v2n.consts.V2XConst; @@ -50,11 +53,16 @@ public class V2XRoadEventMarker implements IV2XMarker { AiRoadMarker.aiMakers.put(noveltyInfo.getInfoId(), aiMarker); } } else { + boolean isSpecial = EventTypeEnumNew.TYPE_SOCKET_ROAD_SHIGU.getPoiType().equals(entity.getPoiType()) && AppIdentityModeUtils.isTaxiPassenger( + FunctionBuildConfig.appIdentityMode); Point point = overlayManager.showOrUpdatePoint( new Point.Options.Builder(V2XConst.V2X_MARKER_OWNER, Level.MAP_MARKER) .longitude(entity.getLocation().getLon()) .latitude(entity.getLocation().getLat()) .set3DMode(true) + .scale(isSpecial ? 0.6f : 1.0f) + .controlAngle(isSpecial) + .rotate(isSpecial ? 180 : 0) .icon3DRes(EventTypeEnumNew.getMarker3DRes(entity.getPoiType())).build(),DEFAULT); if (point != null) { V2XBizTrace.Companion.onAck("V2XRoadEventMarker -> --- add Marker type: ", entity.getPoiType(), false); diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventScenario.java b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventScenario.java index 76074b309b..c26f41219e 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventScenario.java +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventScenario.java @@ -22,9 +22,8 @@ import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager; import com.mogo.eagle.function.biz.v2x.V2XBizTrace; import com.mogo.eagle.function.biz.v2x.v2n.scenario.impl.AbsV2XScenario; import com.mogo.eagle.function.biz.v2x.v2n.scenario.view.IV2XMarker; -import com.mogo.eagle.core.network.utils.GsonUtil; import com.mogo.eagle.core.utilcode.mogo.logger.Logger; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.function.biz.v2x.v2n.utils.V2XEventAnalyticsManager; import java.util.Objects; @@ -116,9 +115,9 @@ public class V2XRoadEventScenario extends AbsV2XScenario imp //占道施工预警 if (poiType.equals("10006") || poiType.equals("100061")) { long currentTime = System.currentTimeMillis() / 1000; - long oldTime = SharedPrefsMgr.getInstance(AbsMogoApplication.getApp()).getLong("roadwork", 0); + long oldTime = SharedPrefsMgr.getInstance().getLong("roadwork", 0); if (currentTime - oldTime > 60) { //超过一分钟,才会继续播报重复提醒 - SharedPrefsMgr.getInstance(AbsMogoApplication.getApp()).putLong("roadwork", System.currentTimeMillis() / 1000); + SharedPrefsMgr.getInstance().putLong("roadwork", System.currentTimeMillis() / 1000); CallerAutoPilotControlManager.sendTripInfo(5, "", "", "", false); } } diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/utils/V2XEventAnalyticsManager.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/utils/V2XEventAnalyticsManager.kt index 034aa542f8..06171ea90b 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/utils/V2XEventAnalyticsManager.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/utils/V2XEventAnalyticsManager.kt @@ -1,6 +1,6 @@ package com.mogo.eagle.function.biz.v2x.v2n.utils -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.utils.MogoAnalyticUtils import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.enums.CommunicationType @@ -77,7 +77,7 @@ object V2XEventAnalyticsManager: IFuncBizProvider{ msgEventParams[EVENT_PARAMS_DATA_SOURCE] = dataSource.name //数据来源 msgEventParams[EVENT_PARAMS_COMMUNICATION_TYPE] = communicationType.name //通信类型 msgEventParams[EVENT_PARAMS_PLATE_NUMBER] = AppConfigInfo.plateNumber //车牌号 - msgEventParams[EVENT_PARAMS_CAR_SN] = MoGoAiCloudClientConfig.getInstance().sn //鹰眼SN + msgEventParams[EVENT_PARAMS_CAR_SN] = SharedPrefsMgr.getInstance().sn //鹰眼SN msgEventParams[EVENT_PARAMS_EYE_VERSION] = AppUtils.getAppVersionName() //鹰眼版本 msgEventParams[EVENT_PARAMS_LONGITUDE] = "${CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84().longitude}" //经度 msgEventParams[EVENT_PARAMS_LATITUDE] = "${CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84().latitude}" //纬度 @@ -99,7 +99,7 @@ object V2XEventAnalyticsManager: IFuncBizProvider{ msgEventParams[EVENT_PARAMS_DATA_SOURCE] = dataSource.name //数据来源 msgEventParams[EVENT_PARAMS_COMMUNICATION_TYPE] = communicationType.name //通信类型 msgEventParams[EVENT_PARAMS_PLATE_NUMBER] = AppConfigInfo.plateNumber //车牌号 - msgEventParams[EVENT_PARAMS_CAR_SN] = MoGoAiCloudClientConfig.getInstance().sn //鹰眼SN + msgEventParams[EVENT_PARAMS_CAR_SN] = SharedPrefsMgr.getInstance().sn //鹰眼SN msgEventParams[EVENT_PARAMS_EYE_VERSION] = AppUtils.getAppVersionName() //鹰眼版本 msgEventParams[EVENT_PARAMS_LONGITUDE] = "${CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84().longitude}" //经度 msgEventParams[EVENT_PARAMS_LATITUDE] = "${CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84().latitude}" //纬度 diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/vip/VipCarManager.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/vip/VipCarManager.kt index 08b55b7ed7..9ede3299a7 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/vip/VipCarManager.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/vip/VipCarManager.kt @@ -6,7 +6,7 @@ import android.os.Looper import android.os.Message import com.mogo.aicloud.services.socket.IMogoOnMessageListener import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.biz.trafficlight.TrafficLightResult import com.mogo.eagle.core.data.biz.trafficlight.currentRoadTrafficLight import com.mogo.eagle.core.data.biz.trafficlight.isGreen @@ -207,7 +207,7 @@ class VipCarManager : IMogoOnMessageListener, IMoGoTrafficLightListe ",controlTime:$controlTime" ) // 请求变灯成功,直接提示 - if (it.sn == MoGoAiCloudClientConfig.getInstance().sn && it.code == 0) { + if (it.sn == SharedPrefsMgr.getInstance().sn && it.code == 0) { V2XBizTrace.onAck("$M_V2X$TAG", "变灯请求成功") val light = this.result?.currentRoadTrafficLight() if (light != null && light.isGreen()) { diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/vip/network/VipNetWorkModel.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/vip/network/VipNetWorkModel.kt index cb1600345c..c513f4855a 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/vip/network/VipNetWorkModel.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/vip/network/VipNetWorkModel.kt @@ -1,7 +1,7 @@ package com.mogo.eagle.function.biz.v2x.vip.network -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.constants.HostConst +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseResponse import com.mogo.eagle.core.data.v2x.VipRequest import com.mogo.eagle.core.network.MoGoRetrofitFactory @@ -20,7 +20,7 @@ class VipNetWorkModel { request> { loader { apiCall { - getNetWorkApi().requestVip(MoGoAiCloudClientConfig.getInstance().sn) + getNetWorkApi().requestVip(SharedPrefsMgr.getInstance().sn) } } onSuccess { diff --git a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/MoGoChatFacade.kt b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/MoGoChatFacade.kt index c09a9446ae..769d2d4ef2 100644 --- a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/MoGoChatFacade.kt +++ b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/MoGoChatFacade.kt @@ -6,7 +6,7 @@ import android.os.Looper import android.text.TextUtils import com.google.gson.Gson import com.mogo.eagle.core.function.chat.facade.gme.GMEApi -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.chat.UserInfo import com.mogo.eagle.core.data.chat.socket.Message import com.mogo.eagle.core.data.chat.socket.TeammateInfo @@ -198,7 +198,7 @@ object MoGoChatFacade: IMoGoChatFacade { } } else { val message = withContext(Dispatchers.Default) { Gson().fromJson(msg, Message::class.java) } ?: return@launch - if (message.type.toCallType() == CALL_TYPE_VOICE && message.snSender == MoGoAiCloudClientConfig.getInstance().sn) { + if (message.type.toCallType() == CALL_TYPE_VOICE && message.snSender == SharedPrefsMgr.getInstance().sn) { return@launch } when(message.status) { @@ -209,7 +209,8 @@ object MoGoChatFacade: IMoGoChatFacade { if (GMEApi.isRoomEntered() && callType == CALL_TYPE_VEHICLE_TEAM) { Logger.d(ChatConsts.TAG, "收到来电进房消息,此时正在车队通话。需要挂断电话") try { - serverApi.requestConnectStatus(ConnectStatusParam(MoGoAiCloudClientConfig.getInstance().sn, message.snSender, message.roomId, PUSH_MSG_HANG_UP, message.type)) + serverApi.requestConnectStatus(ConnectStatusParam( + SharedPrefsMgr.getInstance().sn, message.snSender, message.roomId, PUSH_MSG_HANG_UP, message.type)) } catch (t : Throwable) { t.printStackTrace() } @@ -221,7 +222,7 @@ object MoGoChatFacade: IMoGoChatFacade { CALL_TYPE_VEHICLE_TEAM -> { if (callStatus.isReadyCalling()) { try { - serverApi.requestConnectStatus(ConnectStatusParam(MoGoAiCloudClientConfig.getInstance().sn, message.snSender, message.roomId, PUSH_MSG_HANG_UP, message.type)) + serverApi.requestConnectStatus(ConnectStatusParam(SharedPrefsMgr.getInstance().sn, message.snSender, message.roomId, PUSH_MSG_HANG_UP, message.type)) } catch (t : Throwable) { t.printStackTrace() } @@ -241,7 +242,7 @@ object MoGoChatFacade: IMoGoChatFacade { Logger.d(ChatConsts.TAG, "已经进房,收到被拒绝消息,则不处理(为兼容车队需求),否则会引发退房操作") return@launch } - if (callStatus == READY_TO_CALL_RECEIVER && message.snReceiver == MoGoAiCloudClientConfig.getInstance().sn) { + if (callStatus == READY_TO_CALL_RECEIVER && message.snReceiver == SharedPrefsMgr.getInstance().sn) { //如果当前是来电状态,并且收到拒绝消息,说明呼叫方呼出又挂断 Logger.d(ChatConsts.TAG, "呼叫方呼出后,又挂断") onCallingInterrupt?.get()?.invoke(false, message.toUser()) @@ -251,7 +252,7 @@ object MoGoChatFacade: IMoGoChatFacade { channel4SocketMsg.send(message) } CALL_TYPE_VEHICLE_TEAM -> { - if (callStatus == READY_TO_CALL_RECEIVER && message.snReceiver == MoGoAiCloudClientConfig.getInstance().sn) { + if (callStatus == READY_TO_CALL_RECEIVER && message.snReceiver == SharedPrefsMgr.getInstance().sn) { //如果当前是来电状态,并且收到拒绝消息,说明呼叫方呼出又挂断 onCallingInterrupt?.get()?.invoke(true, message.toUser()) callStatus = INIT_CALL @@ -274,7 +275,7 @@ object MoGoChatFacade: IMoGoChatFacade { if (callStatus.isCalling()) { //如果正在通话, 直接拒接 try { - serverApi.requestConnectStatus(ConnectStatusParam(MoGoAiCloudClientConfig.getInstance().sn, message.snSender, message.roomId, PUSH_MSG_DENY_ENTER, message.type)) + serverApi.requestConnectStatus(ConnectStatusParam(SharedPrefsMgr.getInstance().sn, message.snSender, message.roomId, PUSH_MSG_DENY_ENTER, message.type)) } catch (t: Throwable) { t.printStackTrace() } @@ -322,7 +323,7 @@ object MoGoChatFacade: IMoGoChatFacade { send(CallState.Error(CallState.CODE_USER_IN_ROOM, "[Call] - 当前用户已经进入房间了")) return@channelFlow } - if (params.sn == MoGoAiCloudClientConfig.getInstance().sn) { + if (params.sn == SharedPrefsMgr.getInstance().sn) { send(CallState.Error(CallState.CODE_CALL_MYSELF, "[Call] - 不能呼叫自己")) return@channelFlow } @@ -341,7 +342,7 @@ object MoGoChatFacade: IMoGoChatFacade { } if (mySelf.get() == null || mySelf.get().isIncomplete()) { try { - val pair = serverApi.queryUserInfo(MoGoAiCloudClientConfig.getInstance().sn) + val pair = serverApi.queryUserInfo(SharedPrefsMgr.getInstance().sn) if (pair == null || pair.first != null || pair.second == null) { send(CallState.Error(CallState.CODE_CALLER_USER_INFO_FAIL, "[Call] - 获取用户信息失败 - ${pair?.first?.msg}")) return@channelFlow @@ -557,7 +558,7 @@ object MoGoChatFacade: IMoGoChatFacade { send(AnswerState.Error(AnswerState.CODE_ANSWER_STATE_ERROR, "[Answer] - 应答状态错误 -> 当前状态:${callStatus.toText()}")) return@channelFlow } - val mySn = MoGoAiCloudClientConfig.getInstance().sn + val mySn = SharedPrefsMgr.getInstance().sn if (TextUtils.isEmpty(mySn)) { send(AnswerState.Error(AnswerState.CODE_ANSWER_PARAMS_INCOMPLETE, "[Answer] - 当前用户/应答方- sn参数不存在")) return@channelFlow @@ -568,7 +569,7 @@ object MoGoChatFacade: IMoGoChatFacade { } if (mySelf.get() == null || mySelf.get().isIncomplete()) { try { - val pair = serverApi.queryUserInfo(MoGoAiCloudClientConfig.getInstance().sn) + val pair = serverApi.queryUserInfo(SharedPrefsMgr.getInstance().sn) if (pair == null || pair.first != null || pair.second == null) { send(AnswerState.Error(AnswerState.CODE_CALLER_USER_INFO_FAIL, "[Answer] - 获取应答方用户信息失败")) return@channelFlow @@ -582,7 +583,7 @@ object MoGoChatFacade: IMoGoChatFacade { //告之服务器给发送方下发接收通话消息 try { val location = CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02() - val response = serverApi.requestConnectStatus(ConnectStatusParam(MoGoAiCloudClientConfig.getInstance().sn, sn, roomId, PUSH_MSG_AGREE_ENTER, CALL_TYPE_VOICE.type).also { + val response = serverApi.requestConnectStatus(ConnectStatusParam(SharedPrefsMgr.getInstance().sn, sn, roomId, PUSH_MSG_AGREE_ENTER, CALL_TYPE_VOICE.type).also { it.nickName = mySelf.get().name it.headImgUrl = mySelf.get().icon it.carInfo = mySelf.get().brand @@ -725,7 +726,7 @@ object MoGoChatFacade: IMoGoChatFacade { return@flow } try { - val response = serverApi.requestConnectStatus(ConnectStatusParam(MoGoAiCloudClientConfig.getInstance().sn, sn, roomId, PUSH_MSG_HANG_UP, callType.type)) + val response = serverApi.requestConnectStatus(ConnectStatusParam(SharedPrefsMgr.getInstance().sn, sn, roomId, PUSH_MSG_HANG_UP, callType.type)) val code = response.code if (code != 0 && code != 200) { emit(HangUpState.Error(HangUpState.CODE_HANG_UP_API_ERROR, response.msg, mutableMapOf().also { @@ -753,7 +754,7 @@ object MoGoChatFacade: IMoGoChatFacade { return@flow } try { - val response = serverApi.requestConnectStatus(ConnectStatusParam(MoGoAiCloudClientConfig.getInstance().sn, sn, 0, PUSH_MSG_DENY_ENTER, callType.type)) + val response = serverApi.requestConnectStatus(ConnectStatusParam(SharedPrefsMgr.getInstance().sn, sn, 0, PUSH_MSG_DENY_ENTER, callType.type)) val code = response.code if (code != 0 && code != 200) { emit(RefuseState.Error(RefuseState.CODE_REFUSE_API_ERROR, response.msg, mutableMapOf().also { @@ -779,7 +780,7 @@ object MoGoChatFacade: IMoGoChatFacade { send(InviteState.Error(InviteState.CODE_INVITE_STATE_ERROR, "[InviteTeam] - 当前正在语音通话")) return@channelFlow } - val mySn = MoGoAiCloudClientConfig.getInstance().sn + val mySn = SharedPrefsMgr.getInstance().sn if (TextUtils.isEmpty(mySn)){ send(InviteState.Error(InviteState.CODE_INVITE_SN_NOT_IN, "[InviteTeam] - 当前车机sn不存在")) return@channelFlow @@ -929,7 +930,7 @@ object MoGoChatFacade: IMoGoChatFacade { send(JoinState.Error(JoinState.CODE_INVITE_STATE_ERROR, "[JoinTeam]-当前车机不是来电状态: status -> ${callStatus.toText()}")) return@channelFlow } - val mySn = MoGoAiCloudClientConfig.getInstance().sn + val mySn = SharedPrefsMgr.getInstance().sn if (TextUtils.isEmpty(mySn)){ send(JoinState.Error(JoinState.CODE_JOIN_SN_NOT_IN, "[JoinTeam] - 当前车机sn不存在")) return@channelFlow @@ -944,7 +945,7 @@ object MoGoChatFacade: IMoGoChatFacade { } if (mySelf.get() == null || mySelf.get().isIncomplete()) { try { - val pair = serverApi.queryUserInfo(MoGoAiCloudClientConfig.getInstance().sn) + val pair = serverApi.queryUserInfo(SharedPrefsMgr.getInstance().sn) if (pair == null || pair.first != null || pair.second == null) { send(JoinState.Error(JoinState.CODE_CALLER_USER_INFO_FAIL, "[JoinTeam] - 获取呼叫方用户信息失败")) return@channelFlow @@ -959,7 +960,7 @@ object MoGoChatFacade: IMoGoChatFacade { //告之服务器给发送方下发接收通话消息 try { val location = CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02() - val response = serverApi.requestConnectStatus(ConnectStatusParam(MoGoAiCloudClientConfig.getInstance().sn, sn, roomId, PUSH_MSG_AGREE_ENTER, CALL_TYPE_VEHICLE_TEAM.type).also { + val response = serverApi.requestConnectStatus(ConnectStatusParam(SharedPrefsMgr.getInstance().sn, sn, roomId, PUSH_MSG_AGREE_ENTER, CALL_TYPE_VEHICLE_TEAM.type).also { it.nickName = mySelf.get().name it.headImgUrl = mySelf.get().icon it.carInfo = mySelf.get().brand diff --git a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/net/ChatServiceModel.kt b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/net/ChatServiceModel.kt index fa86e03170..fc64c1e0fb 100644 --- a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/net/ChatServiceModel.kt +++ b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/net/ChatServiceModel.kt @@ -2,8 +2,8 @@ package com.mogo.eagle.core.function.chat.facade.net import com.google.gson.Gson import com.google.gson.JsonObject -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.constants.HostConst +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseResponse import com.mogo.eagle.core.data.chat.UserInfo import com.mogo.eagle.core.function.api.chat.biz.ChatConsts @@ -67,13 +67,13 @@ internal class ChatServiceModel { suspend fun requestConnectStatus(params: ConnectStatusParam): BaseResponse { val map = hashMapOf() - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn val location = CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02() params.lon = location.longitude params.lat = location.latitude Logger.d(ChatConsts.TAG, "connectStatusParam:$params") - map["sn"] = MoGoAiCloudClientConfig.getInstance().sn + map["sn"] = SharedPrefsMgr.getInstance().sn map["data"] = Gson().toJson(params) return if (params.type == CALL_TYPE_VOICE.type) { apiCall { @@ -91,7 +91,7 @@ internal class ChatServiceModel { suspend fun inviteJoinVehicleTeam(param: CallRequestParam): BaseResponse { val map = hashMapOf() Logger.d(ChatConsts.TAG, "inviteJoinVehicleTeam paras: $param") - map["sn"] = MoGoAiCloudClientConfig.getInstance().sn + map["sn"] = SharedPrefsMgr.getInstance().sn map["data"] = Gson().toJson(param) return apiCall { getNetWorkApi()?.inviteJoinVehicleTeam(map) diff --git a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/socket/SocketConnectManager.kt b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/socket/SocketConnectManager.kt index 4b8ce59b55..f75c02b9f9 100644 --- a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/socket/SocketConnectManager.kt +++ b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/socket/SocketConnectManager.kt @@ -1,7 +1,7 @@ package com.mogo.eagle.core.function.chat.facade.socket import com.google.gson.Gson -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.chat.socket.HeartBeat import com.mogo.eagle.core.function.api.chat.biz.ChatConsts import com.mogo.eagle.core.function.chat.facade.consts.ChatHttp @@ -47,13 +47,13 @@ internal object SocketConnectManager { private val socketMsgSetting: ISocketMsgSetting = object : ISocketMsgSetting { override fun getHandShakeMsg(): String { Logger.d(ChatConsts.TAG, "getHandShakeMsg") - val socketMsg = HeartBeat(SOCKET_HAND_SHAKE, MoGoAiCloudClientConfig.getInstance().sn) + val socketMsg = HeartBeat(SOCKET_HAND_SHAKE, SharedPrefsMgr.getInstance().sn) return Gson().toJson(socketMsg) } override fun getHeartBeatMsg(): String { Logger.d(ChatConsts.TAG, "getHeartBeatMsg") - val socketMsg = HeartBeat(SOCKET_HEART_BEAT, MoGoAiCloudClientConfig.getInstance().sn, roomId.get()) + val socketMsg = HeartBeat(SOCKET_HEART_BEAT, SharedPrefsMgr.getInstance().sn, roomId.get()) return Gson().toJson(socketMsg) } } diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt index a2d5b1ed05..77b154540b 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt @@ -6,7 +6,6 @@ import androidx.annotation.RequiresPermission import bag_manager.BagManagerOuterClass import chassis.SpecialVehicleTaskCmdOuterClass import com.alibaba.android.arouter.facade.annotation.Route -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.debug.DebugConfig import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters import com.mogo.eagle.core.data.autopilot.toAutoPilotLine @@ -39,7 +38,7 @@ import com.mogo.eagle.core.function.datacenter.autopilot.telematic.TeleMsgHandle import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_D_C -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.ParseVersionUtils import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.ToastUtils @@ -173,10 +172,10 @@ class MoGoAutopilotControlProvider : invokeNettyConnResult("连接成功的乘客屏sn为:$it") } } - }, MoGoAiCloudClientConfig.getInstance().sn) + }, SharedPrefsMgr.getInstance().sn) } else { NSDNettyManager.getInstance() - .searchAndConnectServer(context, MoGoAiCloudClientConfig.getInstance().sn, + .searchAndConnectServer(context, SharedPrefsMgr.getInstance().sn, AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode), object : NettyClientListener { override fun onMessageResponseClient( @@ -301,7 +300,7 @@ class MoGoAutopilotControlProvider : override fun doInBackground(): String { // 保存本地 AutoPilot IP地址 mContext?.let { - SharedPrefsMgr.getInstance(it).putString(MoGoConfig.AUTOPILOT_IP, autoPilotIp) + SharedPrefsMgr.getInstance().putString(MoGoConfig.AUTOPILOT_IP, autoPilotIp) } // 设置IP地址 AdasManager.getInstance().adasOptions.isClient = false @@ -924,7 +923,7 @@ class MoGoAutopilotControlProvider : NSDNettyManager.getInstance().connectSpecifiedServer( ip, NettyTcpServer.SERVER_PORT, - MoGoAiCloudClientConfig.getInstance().sn, + SharedPrefsMgr.getInstance().sn, object : NettyClientListener { override fun onMessageResponseClient( msg: MogoProtocolMsg?, @@ -974,7 +973,7 @@ class MoGoAutopilotControlProvider : } else {// 乘客屏 CallerDevaToolsManager.getBindingCarInfo( carConfigResp.macAddress, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().sn ) invokeNettyConnResult("乘客屏车牌号:${carConfigResp.plateNumber},Mac地址为:${carConfigResp.macAddress}") } diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt index 5d4ae62052..a8520859ea 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt @@ -60,6 +60,7 @@ import com.zhjt.mogo.adas.data.bean.AdasParam import com.zhidao.support.adas.high.common.ProtocolStatus import com.zhjt.mogo.adas.data.AiCloudTask import com.zhjt.mogo.adas.data.bean.AutopilotStatistics +import com.zhjt.mogo.adas.data.bean.UnableLaunchData import com.zhjt.mogo.adas.data.bean.UnableLaunchReason import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask @@ -914,12 +915,13 @@ class MoGoAdasListenerImpl : OnAdasListener { */ override fun onAutopilotAbility( isAutopilotAbility: Boolean, + unableLaunchData: UnableLaunchData, unableAutopilotReasons: ArrayList? ) { if (unableAutopilotReasons != null && unableAutopilotReasons.size > 0) { - autopilotAbilityCheck(isAutopilotAbility, unableAutopilotReasons.toString()) + autopilotAbilityCheck(isAutopilotAbility, unableAutopilotReasons.toString(), unableLaunchData) } - invokeAutopilotAbility(isAutopilotAbility, unableAutopilotReasons) + invokeAutopilotAbility(isAutopilotAbility, unableLaunchData, unableAutopilotReasons) } override fun onParallelDrivingAbility( @@ -934,7 +936,7 @@ class MoGoAdasListenerImpl : OnAdasListener { nodeAliasCode = CHAIN_CODE_ADAS_ABILITY, paramIndexes = [0, 1] ) - private fun autopilotAbilityCheck(isAutopilotAbility: Boolean, reason: String) { + private fun autopilotAbilityCheck(isAutopilotAbility: Boolean, reason: String, unableLaunchData: UnableLaunchData) { } diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt index 9302a00183..2a4d638496 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt @@ -1,7 +1,7 @@ package com.mogo.eagle.core.function.datacenter.autopilot.adapter -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.debug.DebugConfig.* +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener @@ -125,7 +125,7 @@ class MoGoAdasMsgConnectStatusListenerImpl : // 设置PAD-SN给工控,网络环境 AdasManager.getInstance() .sendBasicInfoResp( - MoGoAiCloudClientConfig.getInstance().sn, + SharedPrefsMgr.getInstance().sn, getEnvironment(), getTerminalRole() ) diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/telematic/TeleMsgHandler.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/telematic/TeleMsgHandler.kt index 0592eb97a2..b192ec16b1 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/telematic/TeleMsgHandler.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/telematic/TeleMsgHandler.kt @@ -1,9 +1,10 @@ package com.mogo.eagle.core.function.datacenter.autopilot.telematic +import android.util.Log import androidx.lifecycle.ProcessLifecycleOwner import androidx.lifecycle.lifecycleScope import com.google.protobuf.TextFormat -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.biz.trafficlight.TrafficLightResult import com.mogo.eagle.core.data.config.FunctionBuildConfig @@ -11,9 +12,11 @@ import com.mogo.eagle.core.data.config.HmiBuildConfig import com.mogo.eagle.core.data.deva.chain.ChainConstant import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_TYPE_STATUS import com.mogo.eagle.core.data.multidisplay.TelematicConstant +import com.mogo.eagle.core.data.v2x.V2XEvent.RoadEventX import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager.setDemoMode import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager.setIgnoreConditionDraw +import com.mogo.eagle.core.function.call.cloud.CallerCloudListenerManager import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager @@ -32,6 +35,7 @@ import io.netty.channel.Channel import kotlinx.coroutines.delay import kotlinx.coroutines.launch import mogo.telematics.pad.MessagePad +import java.nio.charset.Charset class TeleMsgHandler : IMsgHandler { @@ -58,6 +62,20 @@ class TeleMsgHandler : IMsgHandler { override fun handleMsgFromServer(msg: MogoProtocolMsg?, channel: Channel?) { msg?.let { + if (it.protocolType == TelematicConstant.V2N_AI_ROAD_DATA_TO_PASSENGER) { + try { + Log.d(TAG, "乘客屏收到司机屏转发云端下发的V2N事件 --- 1 ---") + val content = String(it.body, Charset.defaultCharset()) + Log.d(TAG, "乘客屏收到司机屏转发云端下发的V2N事件 --- 2 ---:$content") + val data = GsonUtils.fromJson(content, RoadEventX::class.java) + Log.d(TAG, "乘客屏收到司机屏转发云端下发的V2N事件 --- 3 ---:$data") + CallerCloudListenerManager.invokeSocketAck(data) + } catch (t: Throwable) { + t.printStackTrace() + Log.e(TAG, "乘客屏收到司机屏转发云端下发的V2N事件异常", t) + } + return + } when (it.protocolType) { MogoProtocolMsg.NORMAL_DATA -> { try { @@ -98,7 +116,7 @@ class TeleMsgHandler : IMsgHandler { listener?.connectDevice(!carConfig.dockVersion.contains("2.3.0")) CallerDevaToolsManager.getBindingCarInfo( carConfig.macAddress, - MoGoAiCloudClientConfig.getInstance().sn + SharedPrefsMgr.getInstance().sn ) invokeNettyConnResult( "司机屏发送给乘客屏配置信息为:${ @@ -225,7 +243,7 @@ class TeleMsgHandler : IMsgHandler { } 10 -> { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn if (!sn.isNullOrEmpty()) { val snArray = sn.toByteArray() NSDNettyManager.getInstance().sendMsgToSpecifiedClient( diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MoGoObuProvider.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MoGoObuProvider.kt index 64722c7880..cdea63d8d8 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MoGoObuProvider.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MoGoObuProvider.kt @@ -6,7 +6,7 @@ import com.mogo.eagle.core.data.constants.MoGoConfig import com.mogo.eagle.core.data.constants.MogoServicePaths import com.mogo.eagle.core.data.obu.MogoObuConst import com.mogo.eagle.core.function.api.datacenter.obu.IMoGoObuProvider -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.CommonUtils /** @@ -33,7 +33,7 @@ class MoGoObuProvider : IMoGoObuProvider { mContext = context mContext?.let { val ipAddress = - SharedPrefsMgr.getInstance(context).getString(MoGoConfig.OBU_IP, MogoObuConst.OBU_DEFAULT_IP) + SharedPrefsMgr.getInstance().getString(MoGoConfig.OBU_IP, MogoObuConst.OBU_DEFAULT_IP) //mogo obu MogoPrivateObuNewManager.INSTANCE.connectObu( it, @@ -52,7 +52,7 @@ class MoGoObuProvider : IMoGoObuProvider { override fun connect(ipAddress: String) { mContext?.let { // 保存本地OBU IP地址 - SharedPrefsMgr.getInstance(it).putString(MoGoConfig.OBU_IP, ipAddress) + SharedPrefsMgr.getInstance().putString(MoGoConfig.OBU_IP, ipAddress) //连接 mogo obu MogoPrivateObuNewManager.INSTANCE.connectObu( diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/drawer/TrafficMarkerDrawer.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/drawer/TrafficMarkerDrawer.kt index 2f02394d11..310a9775ed 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/drawer/TrafficMarkerDrawer.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/drawer/TrafficMarkerDrawer.kt @@ -172,7 +172,7 @@ object TrafficMarkerDrawer { TAG, "drawObuRecognizedDataMarker trafficData.type = " + trafficData.type + "---trafficData.threatLevel = " + trafficData.threatLevel ) - val resId: Int = trafficData.type.traffic3DIconId + val resId: Int = TrafficTypeEnum.getMarker3DRes(trafficData.type.type) val resIdVal = resId.toString() + "" val builder = Point.Options.Builder(DataTypes.TYPE_MARKER_ADAS, MAP_MARKER) .anchor(0.5f, 0.5f) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt index f2d2c83040..f840e60ae2 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt @@ -3,6 +3,9 @@ package com.zhjt.mogo_core_function_devatools.badcase import android.app.Activity import android.content.Context +import android.graphics.Bitmap +import android.os.Environment +import android.os.SystemClock import android.view.View import android.view.WindowManager import androidx.appcompat.app.AppCompatActivity @@ -10,10 +13,10 @@ import androidx.fragment.app.FragmentActivity import androidx.lifecycle.Lifecycle.Event import androidx.lifecycle.LifecycleEventObserver import androidx.lifecycle.LifecycleOwner -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.module.status.IMogoStatusChangedListener import com.mogo.commons.module.status.MogoStatusManager import com.mogo.commons.module.status.StatusDescriptor +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.deva.report.ReportEntity @@ -27,10 +30,15 @@ import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotRecordListener import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener import com.mogo.eagle.core.function.api.datacenter.msgbox.IMsgBoxListener import com.mogo.eagle.core.function.api.devatools.IMoGoDevaToolsListener +import com.mogo.eagle.core.function.api.map.deva.IMoGoMapScreenListener +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager +import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84ListenerManager import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsListenerManager +import com.mogo.eagle.core.function.call.map.CallerMapScreenListenerManager +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxListenerManager import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils @@ -43,14 +51,17 @@ import com.mogo.tts.base.SpeechUtils import com.zhjt.mogo_core_function_devatools.badcase.biz.* import com.zhjt.mogo_core_function_devatools.badcase.consts.BadCaseConfig import com.zhjt.mogo_core_function_devatools.badcase.repository.db.entity.AutoPilotRecord +import com.zhjt.mogo_core_function_devatools.badcase.util.RecordBitmapUtils import com.zhjt.mogo_core_function_devatools.ext.enqueuePop import me.jessyan.autosize.utils.AutoSizeUtils import record_cache.RecordPanelOuterClass +import java.io.File +import java.util.Random import kotlin.math.abs internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordListener, IMoGoChassisLocationGCJ02Listener, IMsgBoxListener, IMoGoDevaToolsListener, - IMogoStatusChangedListener { + IMogoStatusChangedListener, IMoGoMapScreenListener { const val TAG = "BadCase" @@ -59,6 +70,8 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis @Volatile private var record: AutoPilotRecord? = null + private var recordKey: Long = 0 //主动录制bag包key + fun init(context: Context) { CallerAutopilotRecordListenerManager.addListener(TAG, this) SpeechUtils.init(context) @@ -183,15 +196,26 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis || BadCaseConfig.dockerVersion!!.contains("2.6.0") || BadCaseConfig.dockerVersion!!.contains("2.8.0") ) { - val initiativeBadCaseWindow = InitiativeBadCaseWindow(activity) - initiativeBadCaseWindow.setClickListener(object : - InitiativeBadCaseWindow.ClickListener { - override fun closeWindow() { - initiativeBadCaseWindow.hideFloatWindow() - } + if(FunctionBuildConfig.isShowBagRecordWindow){ + //展示录包弹窗并且录包 + val initiativeBadCaseWindow = InitiativeBadCaseWindow(activity) + initiativeBadCaseWindow.setClickListener(object : + InitiativeBadCaseWindow.ClickListener { + override fun closeWindow() { + initiativeBadCaseWindow.hideFloatWindow() + } - }) - initiativeBadCaseWindow.showFloatWindow(null) + }) + initiativeBadCaseWindow.showFloatWindow(null) + }else{ + //进行录包,但不展示录包弹窗 + BadCaseConfig.notDisplayBagWindow = true + //高精地图屏幕截图 + CallerMapScreenListenerManager.addListener(TAG,this) + val recordKey = Random(SystemClock.elapsedRealtime()).nextInt().toLong() + CallerAutoPilotControlManager.recordPackage(BadCaseConfig.type,recordKey.toInt(), + BadCaseConfig.totalDuration, BadCaseConfig.previousDuration) + } } else { val caseListDialog = CaseListDialog(activity) caseListDialog.show() @@ -273,6 +297,23 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis override fun onAutopilotRecordResult(recordPanel: RecordPanelOuterClass.RecordPanel) { super.onAutopilotRecordResult(recordPanel) CallerLogger.d("$M_DEVA$TAG", "recordKey=${recordPanel.key},stat=${recordPanel.stat}") + if(BadCaseConfig.notDisplayBagWindow){ + //此时点击主动录包按钮,不能展示上报弹窗,需要在此处做主动录包弹窗中的一些逻辑 + //开始录制 + if(recordPanel.stat == 300){ + recordKey = recordPanel.key + BadCaseConfig.recordKeyList.add(recordPanel.key) + //获取当前主动录包集合 + val recordSet = BadCaseConfig.getInitiativeRecordSet() + //保存录包状态 + recordSet.add(recordPanel.key.toString()) + BadCaseConfig.setInitiativeRecordSet(recordSet) + //开启高精地图截图 + CallerMapUIServiceManager.getMapUIController()?.getMapScreenShot() + //将当次主动录包设置标签还原 + BadCaseConfig.notDisplayBagWindow = false + } + } if (BadCaseConfig.recordKeyList.contains(recordPanel.key)) { if (recordPanel.stat == 100 || recordPanel.stat == 101) { //成功结束录制 @@ -333,7 +374,7 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis recordPanel.key.toString(), recordPanel.filename, System.currentTimeMillis().toString(), recordPanel.stat.toString(), AppConfigInfo.plateNumber, recordPanel.duration.toString(), - MoGoAiCloudClientConfig.getInstance().sn, BadCaseConfig.dockerVersion ?: "", + SharedPrefsMgr.getInstance().sn, BadCaseConfig.dockerVersion ?: "", AppUtils.getAppVersionName(), lat.toString(), lon.toString() ) //日志埋点 @@ -341,7 +382,7 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis "$M_DEVA$TAG", "BadCase Receive Analytics=" + "key=" + recordPanel.key + " filename=" + recordPanel.filename + " receiveTime=" + System.currentTimeMillis() + " stat=" + recordPanel.stat + " plateNumber=" + AppConfigInfo.plateNumber + - " totalDuration=" + recordPanel.duration + " carSn=" + MoGoAiCloudClientConfig.getInstance().sn + " mapVersion=" + BadCaseConfig.dockerVersion + + " totalDuration=" + recordPanel.duration + " carSn=" + SharedPrefsMgr.getInstance().sn + " mapVersion=" + BadCaseConfig.dockerVersion + " eyeVersion=" + AppUtils.getAppVersionName() + " latitude=" + lat + " longitude=" + lon ) } @@ -383,5 +424,47 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis BadCaseConfig.socketStatus = "云Socket连接${if (isTrue) "正常" else "异常"}" } + override fun onMapScreen(bitmap: Bitmap) { + super.onMapScreen(bitmap) + //在截图上保存即时信息 + val time = "时间:${millis2String(System.currentTimeMillis(), TimeUtils.getHourMinSecondFormat())}" + val lineId = "路线ID:${CallerAutoPilotStatusListenerManager.getLineId()}" + val state = when(CallerAutoPilotStatusListenerManager.getState()){ + 0->"自驾状态:不可自驾" + 1->"自驾状态:可自驾" + 2->"自驾状态:自驾中" + 7->"自驾状态:平行驾驶中" + else->"自驾状态:未知" + } + val speed = "当前车速:${BadCaseConfig.currentSpeed}" + val site = if(CallerAutoPilotStatusListenerManager.getLineStartName().isNullOrEmpty() || CallerAutoPilotStatusListenerManager.getLineEndName().isNullOrEmpty()){ + "路线起始点:无" + }else{ + "路线起点:${CallerAutoPilotStatusListenerManager.getLineStartName()};终点:${CallerAutoPilotStatusListenerManager.getLineEndName()}" + } + val outBitmap = RecordBitmapUtils.drawTextOnBitmap(bitmap,time,lineId,state,speed,site, + BadCaseConfig.gpsStatus,BadCaseConfig.tracingStatus,BadCaseConfig.socketStatus + ,BadCaseConfig.newFMInfoMsg,BadCaseConfig.newReportEntity) + + //图片保存本地 + val currentDay = millis2String(System.currentTimeMillis(), TimeUtils.getMdFormat()) + val fileDir: String = Environment.getExternalStorageDirectory().absolutePath + File.separator+ + "MapScreen" + File.separator+ currentDay + File.separator + val fileName = "$recordKey.png" + val path = fileDir + fileName + if (!File(fileDir).exists()) { + File(fileDir).mkdirs() + } + if(outBitmap != null){ + RecordBitmapUtils.bitmap2Path(outBitmap,path) + }else{ + RecordBitmapUtils.bitmap2Path(bitmap,path) + } + //遍历是否有非当日的文件并删除 + RecordBitmapUtils.deleteExpiredFile(currentDay) + //注销高精地图截图监听回调 + CallerMapScreenListenerManager.removeListener(TAG) + } + } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectWindow.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectWindow.kt index 91ba40f715..5faf9a28f0 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectWindow.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectWindow.kt @@ -9,7 +9,7 @@ import android.view.* import android.widget.TextView import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.deva.badcase.AiDataEntity import com.mogo.eagle.core.data.deva.badcase.BagDescriptionEntity @@ -43,6 +43,7 @@ import record_cache.RecordPanelOuterClass import java.lang.StringBuilder import java.util.* import kotlin.collections.ArrayList +import kotlin.math.absoluteValue /** * @author XuXinChao @@ -82,8 +83,6 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener private lateinit var mFloatLayout: View private var mInViewX = 0f private var mInViewY = 0f - private var mDownInScreenX = 0f - private var mDownInScreenY = 0f private var mInScreenX = 0f private var mInScreenY = 0f @@ -135,6 +134,27 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener } }) rvCollectList?.adapter = aiDataListAdapter + + //数据请求错误,使用缓存数据 + if(BadCaseReasonStore.getAiDataRecord().isNotEmpty()){ + val list = ArrayList() + val result = JSONArray(BadCaseReasonStore.getAiDataRecord()) + if(result.length()>0){ + for(i in 0 until result.length()){ + val jsonObject = result[i] as JSONObject + val id = jsonObject.optInt("id") + val name = jsonObject.optString("name") + val content = jsonObject.optString("content") + val entity = AiDataEntity(id, name, content,false) + list.add(entity) + } + } + if(list.isNotEmpty()){ + //刷新列表 + aiDataListAdapter?.setData(list) + } + } + //注册网络接口获取数据监听 CallerDevaToolsNetManager.addListener(this.hashCode().toString(),this) //获取数据 @@ -166,7 +186,7 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener itx["duration"] = "20" //采集时长,固定为20S itx["startTime"] = System.currentTimeMillis().toString() //上报时间(时间戳格式) itx["channel"] = "AI" //渠道 - itx["carSn"] = MoGoAiCloudClientConfig.getInstance().sn //SN + itx["carSn"] = SharedPrefsMgr.getInstance().sn //SN itx["userRole"] = "" //采集者角色 itx["audioUrl"] = "" //音频COS地址 itx["mapVersion"] = BadCaseConfig.dockerVersion ?: "" //工控机版本 @@ -241,15 +261,18 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener mInViewX = motionEvent.x mInViewY = motionEvent.y // 获取相对屏幕的坐标,即以屏幕左上角为原点 - mDownInScreenX = motionEvent.rawX - mDownInScreenY = motionEvent.rawY mInScreenX = motionEvent.rawX mInScreenY = motionEvent.rawY + mWindowParams!!.x = (mInScreenX - mInViewX).toInt() + mWindowParams!!.y = (mInScreenY - mInViewY).toInt() } MotionEvent.ACTION_MOVE -> { // 更新浮动窗口位置参数 mInScreenX = motionEvent.rawX mInScreenY = motionEvent.rawY + if(((mInScreenX - mInViewX)-mWindowParams!!.x).absoluteValue>150 || ((mInScreenY - mInViewY)-mWindowParams!!.y).absoluteValue>150){ + return true + } mWindowParams!!.x = (mInScreenX - mInViewX).toInt() mWindowParams!!.y = (mInScreenY - mInViewY).toInt() // 手指移动的时候更新小悬浮窗的位置 @@ -319,25 +342,7 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener } override fun onAiDataError() { - //数据请求错误,使用缓存数据 - if(BadCaseReasonStore.getAiDataRecord().isNotEmpty()){ - val list = ArrayList() - val result = JSONArray(BadCaseReasonStore.getAiDataRecord()) - if(result.length()>0){ - for(i in 0 until result.length()){ - val jsonObject = result[i] as JSONObject - val id = jsonObject.optInt("id") - val name = jsonObject.optString("name") - val content = jsonObject.optString("content") - val entity = AiDataEntity(id, name, content,false) - list.add(entity) - } - } - if(list.isNotEmpty()){ - //刷新列表 - aiDataListAdapter?.setData(list) - } - }else{ + if(BadCaseReasonStore.getAiDataRecord().isEmpty()){ ToastUtils.showShort("AI数据采集数据请求错误且无缓存数据可用") } } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/InitiativeBadCaseWindow.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/InitiativeBadCaseWindow.kt index 7e1db01243..f86c4317ff 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/InitiativeBadCaseWindow.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/InitiativeBadCaseWindow.kt @@ -3,6 +3,7 @@ package com.zhjt.mogo_core_function_devatools.badcase.biz import android.annotation.SuppressLint import android.app.Activity import android.graphics.Bitmap +import android.graphics.Color import android.graphics.PixelFormat import android.os.Bundle import android.os.Environment @@ -13,18 +14,18 @@ import android.util.Log import android.view.* import android.view.animation.Animation import android.view.animation.ScaleAnimation +import android.widget.CheckBox import android.widget.ImageView import android.widget.TextView -import androidx.recyclerview.widget.LinearLayoutManager -import androidx.recyclerview.widget.RecyclerView +import com.google.android.flexbox.FlexboxLayout import com.iflytek.cloud.ErrorCode import com.iflytek.cloud.InitListener import com.iflytek.cloud.RecognizerListener import com.iflytek.cloud.RecognizerResult import com.iflytek.cloud.SpeechError import com.iflytek.cloud.SpeechRecognizer -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.debug.DebugConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.deva.badcase.BagDescriptionEntity import com.mogo.eagle.core.data.deva.badcase.BagInfoEntity @@ -47,6 +48,7 @@ import com.mogo.eagle.core.utilcode.mogo.toast.TipToast import com.mogo.eagle.core.utilcode.util.AppUtils import com.mogo.eagle.core.utilcode.util.BarUtils import com.mogo.eagle.core.utilcode.util.JsonParser +import com.mogo.eagle.core.utilcode.util.SizeUtils import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.TimeUtils import com.mogo.eagle.core.utilcode.util.TimeUtils.millis2String @@ -58,7 +60,6 @@ import com.zhidao.loglib.upload.UploadManager import com.zhidao.loglib.util.FileUtil import com.zhjt.mogo_core_function_devatools.R import com.zhjt.mogo_core_function_devatools.badcase.BadCaseAnalyticsManager -import com.zhjt.mogo_core_function_devatools.badcase.biz.adapter.BadReasonListAdapter import com.zhjt.mogo_core_function_devatools.badcase.consts.BadCaseConfig import com.zhjt.mogo_core_function_devatools.badcase.record.RecordManager import com.zhjt.mogo_core_function_devatools.badcase.repository.net.api.BadCaseNetManager @@ -66,6 +67,7 @@ import com.zhjt.mogo_core_function_devatools.badcase.repository.store.BadCaseRea import com.zhjt.mogo_core_function_devatools.badcase.util.RecordBitmapUtils import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.launch +import me.jessyan.autosize.utils.AutoSizeUtils import org.json.JSONArray import org.json.JSONException import org.json.JSONObject @@ -73,6 +75,7 @@ import record_cache.RecordPanelOuterClass import java.io.File import java.util.* import kotlin.collections.ArrayList +import kotlin.math.absoluteValue /** @@ -105,8 +108,7 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList private lateinit var tvInitiativeReport: TextView private lateinit var tvInitiativeCancel: TextView - private lateinit var rvInitiativeList: RecyclerView - private var badReasonListAdapter: BadReasonListAdapter ?= null + private lateinit var flReasonLayout: FlexboxLayout private var audioStatus = false private var audioFileName:String?=null //录音文件名称 @@ -127,8 +129,6 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList private var mInViewX = 0f private var mInViewY = 0f - private var mDownInScreenX = 0f - private var mDownInScreenY = 0f private var mInScreenX = 0f private var mInScreenY = 0f @@ -174,25 +174,8 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList tvInitiativeReport = mFloatLayout.findViewById(R.id.tvInitiativeReport) tvInitiativeCancel = mFloatLayout.findViewById(R.id.tvInitiativeCancel) - rvInitiativeList = mFloatLayout.findViewById(R.id.rvInitiativeList) - val linearLayoutManager = LinearLayoutManager(mActivity) - linearLayoutManager.orientation = LinearLayoutManager.VERTICAL - rvInitiativeList.layoutManager = linearLayoutManager - badReasonListAdapter = BadReasonListAdapter(mActivity) - badReasonListAdapter?.setListener(object: BadReasonListAdapter.ReasonClickListener{ - override fun onClick(reason: String, isChecked: Boolean) { - if(isChecked){ - if(!uploadList.contains(reason)){ - uploadList.add(reason) - } - }else{ - if(uploadList.contains(reason)){ - uploadList.remove(reason) - } - } - } - }) - rvInitiativeList.adapter = badReasonListAdapter + flReasonLayout = mFloatLayout.findViewById(R.id.flReasonLayout) + if(BadCaseConfig.windowNum<1){ BadCaseConfig.windowNum = 1 } @@ -201,6 +184,14 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList tvInitiativeTime.text = "时间:${millis2String(System.currentTimeMillis(),TimeUtils.getHourMinSecondFormat())}" tvInitiativeIdentity.text = "身份:${BadCaseConfig.identity}" + //展示缓存数据 + if(BadCaseReasonStore.getInitiativeDataRecord().isNotEmpty()){ + val parseList = parseData() + if(parseList.isNotEmpty()){ + isLoadData = true + setData(parseList) + } + } /** * 获取录包原因数据 */ @@ -381,14 +372,14 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList if(file.exists()){ isUploadCos = true LogInfoManagerFactory.createAudioUpload(mActivity.applicationContext,DebugConfig.isDebug(), - TAG, MoGoAiCloudClientConfig.getInstance().sn,singlePath, + TAG, SharedPrefsMgr.getInstance().sn,singlePath, object : OnUploadListener { override fun onUploadSuccess(key: String, filePath: String, downloadUrl: String?) { if(downloadUrl == null){ - ToastUtils.showShort("上传语音文件失败,请检查网络") - ThreadUtils.runOnUiThread { - tvInitiativeReport.text = "上报" - } +// ToastUtils.showShort("上传语音文件失败,请检查网络") +// ThreadUtils.runOnUiThread { +// tvInitiativeReport.text = "上报" +// } }else{ CallerLogger.d("$M_DEVA$TAG", "语音文件上传成功:downloadUrl=$downloadUrl") if(downloadUrl.isNotBlank() && downloadUrl.contains(".wav")){ @@ -450,7 +441,7 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList itx["duration"] = BadCaseConfig.totalDuration.toString() //采集时长,固定为20S itx["startTime"] = System.currentTimeMillis().toString() //上报时间(时间戳格式) itx["channel"] = "1" //渠道 - itx["carSn"] = MoGoAiCloudClientConfig.getInstance().sn //SN + itx["carSn"] = SharedPrefsMgr.getInstance().sn //SN itx["userRole"] = BadCaseConfig.identity //采集者角色 itx["audioUrl"] = downloadUrl?:"" //音频COS地址 itx["mapVersion"] = BadCaseConfig.dockerVersion ?:"" //工控机版本 @@ -479,13 +470,13 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList } val loc = getChassisLocationWGS84() BadCaseAnalyticsManager.bagRecordUpload(recordKey.toString(),recordFileName?:"",uploadStamp, - "100",AppConfigInfo.plateNumber,BadCaseConfig.totalDuration.toString(),MoGoAiCloudClientConfig.getInstance().sn, + "100",AppConfigInfo.plateNumber,BadCaseConfig.totalDuration.toString(),SharedPrefsMgr.getInstance().sn, BadCaseConfig.dockerVersion ?:"",AppUtils.getAppVersionName(),loc.latitude.toString(),loc.longitude.toString(), BadCaseConfig.identity,downloadUrl?:"",uploadReasonTotal,System.currentTimeMillis().toString(),"1") //日志 CallerLogger.i("$M_DEVA$TAG", "BadCase Initiative Analytics="+"key="+recordKey+" filename="+recordFileName+ " receiveTime="+uploadStamp+" stat="+"100"+" plateNumber="+AppConfigInfo.plateNumber+ - " totalDuration="+ BadCaseConfig.totalDuration +" carSn="+MoGoAiCloudClientConfig.getInstance().sn+" mapVersion="+BadCaseConfig.dockerVersion+ + " totalDuration="+ BadCaseConfig.totalDuration +" carSn="+SharedPrefsMgr.getInstance().sn+" mapVersion="+BadCaseConfig.dockerVersion+ " eyeVersion="+AppUtils.getAppVersionName()+" latitude="+ loc.latitude +" longitude="+ loc.longitude+ " identity="+BadCaseConfig.identity + " downloadUrl="+downloadUrl +" uploadReason="+uploadReasonTotal+ " uploadTime="+System.currentTimeMillis()+" channel="+"1") @@ -494,12 +485,12 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList } } //主动上报埋点统计 - if(receiveTime!=null){ - try { - uploadStamp=TimeUtils.dateToStamp(receiveTime,"yyyyMMddHHmmss") - }catch (_: Exception){ - } - } +// if(receiveTime!=null){ +// try { +// uploadStamp=TimeUtils.dateToStamp(receiveTime,"yyyyMMddHHmmss") +// }catch (_: Exception){ +// } +// } } override fun onTouch(v: View?, motionEvent: MotionEvent?): Boolean { @@ -509,8 +500,6 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList mInViewX = motionEvent.x mInViewY = motionEvent.y // 获取相对屏幕的坐标,即以屏幕左上角为原点 - mDownInScreenX = motionEvent.rawX - mDownInScreenY = motionEvent.rawY mInScreenX = motionEvent.rawX mInScreenY = motionEvent.rawY } @@ -518,6 +507,9 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList // 更新浮动窗口位置参数 mInScreenX = motionEvent.rawX mInScreenY = motionEvent.rawY + if(((mInScreenX - mInViewX)-mWindowParams!!.x).absoluteValue>150 || ((mInScreenY - mInViewY)-mWindowParams!!.y).absoluteValue>150){ + return true + } mWindowParams!!.x = (mInScreenX - mInViewX).toInt() mWindowParams!!.y = (mInScreenY - mInViewY).toInt() // 手指移动的时候更新小悬浮窗的位置 @@ -611,57 +603,104 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList override fun onInitiativeResponse(list: List) { if(!isLoadData && list.isNotEmpty()){ - badReasonListAdapter?.setData(list) + setData(list) isLoadData = true } } override fun onInitiativeError() { - if(!isLoadData && BadCaseReasonStore.getInitiativeDataRecord().isNotEmpty()){ - val list = ArrayList() - val result = JSONArray(BadCaseReasonStore.getInitiativeDataRecord()) - if(result.length() > 0){ - for(i in 0 until result.length()){ - val entity = RecordOptionEntity() - val jsonObject = result[i] as JSONObject - val optionName = jsonObject.optString("optionName") - entity.optionName = optionName - val optionCode = jsonObject.optString("optionCode") - entity.optionCode = optionCode - val children = jsonObject.optJSONArray("children") - if (children != null) { - if(children.length() > 0){ - for(index in 0 until children.length()){ - val childJson = children[index] as JSONObject - val child = RecordOptionEntity() - val childOptionNme = childJson.optString("optionName") - val childOptionCode = childJson.optString("optionCode") - child.optionName = childOptionNme - child.optionCode = childOptionCode - entity.children.add(child) - } - } - } - list.add(entity) - } - } - if(list.isNotEmpty()){ - isLoadData = true - badReasonListAdapter?.setData(list) - } - }else{ + if(BadCaseReasonStore.getInitiativeDataRecord().isEmpty()){ ToastUtils.showShort("主动录包数据采集错误且无缓存数据可用") } } + /** + * 解析JSON数据 + */ + private fun parseData(): ArrayList{ + val list = ArrayList() + val result = JSONArray(BadCaseReasonStore.getInitiativeDataRecord()) + if(result.length() > 0){ + for(i in 0 until result.length()){ + val entity = RecordOptionEntity() + val jsonObject = result[i] as JSONObject + val optionName = jsonObject.optString("optionName") + entity.optionName = optionName + val optionCode = jsonObject.optString("optionCode") + entity.optionCode = optionCode + val children = jsonObject.optJSONArray("children") + if (children != null) { + if(children.length() > 0){ + for(index in 0 until children.length()){ + val childJson = children[index] as JSONObject + val child = RecordOptionEntity() + val childOptionNme = childJson.optString("optionName") + val childOptionCode = childJson.optString("optionCode") + child.optionName = childOptionNme + child.optionCode = childOptionCode + entity.children.add(child) + } + } + } + list.add(entity) + } + } + return list + } + override fun onUploadCosSuccess(cosUrl: String) { if(isUploadCos){ + isUploadCos = false //上传到服务器 upload(cosUrl) } } + private fun setData(list: List){ + val defineList = ArrayList() + //将列表中的所有二级列表取出,然后添加到最终需要展示的列表中defineList + list.forEach { oneLevel -> + if(oneLevel.children.isNotEmpty()){ + oneLevel.children.forEach { twoLevel-> + if(twoLevel.optionName.isNotBlank()){ + defineList.add(twoLevel.optionName) + } + } + } + } + //绘制原因列表 + if(defineList.isNotEmpty()){ + defineList.forEach { + val checkBox = CheckBox(mActivity) + checkBox.setTextColor(Color.WHITE) + val lp = FlexboxLayout.LayoutParams( + FlexboxLayout.LayoutParams.WRAP_CONTENT, + FlexboxLayout.LayoutParams.WRAP_CONTENT) + checkBox.buttonDrawable = mActivity.resources.getDrawable(R.drawable.badcase_radio_button_style) + checkBox.setPadding( + SizeUtils.dp2px(18f), + SizeUtils.dp2px(7f), + SizeUtils.dp2px(18f), + SizeUtils.dp2px(7f)) + checkBox.textSize = AutoSizeUtils.dp2px(mActivity,15f).toFloat() + checkBox.text = it + checkBox.setOnCheckedChangeListener{ _, isChecked -> + if(isChecked){ + if(!uploadList.contains(it)){ + uploadList.add(it) + } + }else{ + if(uploadList.contains(it)){ + uploadList.remove(it) + } + } + } + flReasonLayout.addView(checkBox,lp) + } + } + } + /** * 高精地图截图回调 */ diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/PassiveBadCaseWindow.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/PassiveBadCaseWindow.kt index 7c9a477c5b..dd7db893ae 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/PassiveBadCaseWindow.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/PassiveBadCaseWindow.kt @@ -3,6 +3,7 @@ package com.zhjt.mogo_core_function_devatools.badcase.biz import android.annotation.SuppressLint import android.app.Activity import android.graphics.Bitmap +import android.graphics.Color import android.graphics.PixelFormat import android.os.Bundle import android.os.Environment @@ -12,18 +13,18 @@ import android.util.Log import android.view.* import android.view.animation.Animation import android.view.animation.ScaleAnimation +import android.widget.CheckBox import android.widget.ImageView import android.widget.TextView -import androidx.recyclerview.widget.LinearLayoutManager -import androidx.recyclerview.widget.RecyclerView +import com.google.android.flexbox.FlexboxLayout import com.iflytek.cloud.ErrorCode import com.iflytek.cloud.InitListener import com.iflytek.cloud.RecognizerListener import com.iflytek.cloud.RecognizerResult import com.iflytek.cloud.SpeechError import com.iflytek.cloud.SpeechRecognizer -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.debug.DebugConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.deva.badcase.BagDescriptionEntity import com.mogo.eagle.core.data.deva.badcase.BagManagerEntity @@ -55,16 +56,17 @@ import kotlinx.coroutines.launch import com.zhidao.loglib.upload.UploadManager import com.zhidao.loglib.util.FileUtil import com.zhjt.mogo_core_function_devatools.badcase.BadCaseAnalyticsManager -import com.zhjt.mogo_core_function_devatools.badcase.biz.adapter.BadReasonListAdapter import com.zhjt.mogo_core_function_devatools.badcase.repository.net.api.BadCaseNetManager import com.zhjt.mogo_core_function_devatools.badcase.repository.store.BadCaseReasonStore import com.zhjt.mogo_core_function_devatools.badcase.util.RecordBitmapUtils +import me.jessyan.autosize.utils.AutoSizeUtils import org.greenrobot.eventbus.EventBus import org.json.JSONArray import org.json.JSONException import org.json.JSONObject import java.io.File import java.lang.StringBuilder +import kotlin.math.absoluteValue /** * @author XuXinChao @@ -98,14 +100,10 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene private var hasOperated: Boolean = false //是否有页面操作 - private lateinit var rvPassiveList : RecyclerView - private var badReasonListAdapter: BadReasonListAdapter?= null private var screenSavePath: String ?= null //截图保存路径 private var mInViewX = 0f private var mInViewY = 0f - private var mDownInScreenX = 0f - private var mDownInScreenY = 0f private var mInScreenX = 0f private var mInScreenY = 0f @@ -123,6 +121,8 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene private lateinit var tvPassiveReport: TextView private lateinit var tvPassiveCancel: TextView + private lateinit var flReasonLayout: FlexboxLayout + // 语音听写对象 private var mIat: SpeechRecognizer? = null @@ -163,26 +163,16 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene viewAudioStart = mFloatLayout.findViewById(R.id.viewAudioStart) tvPassiveReport = mFloatLayout.findViewById(R.id.tvPassiveReport) tvPassiveCancel = mFloatLayout.findViewById(R.id.tvPassiveCancel) - rvPassiveList = mFloatLayout.findViewById(R.id.rvPassiveList) - val linearLayoutManager = LinearLayoutManager(mActivity) - linearLayoutManager.orientation = LinearLayoutManager.VERTICAL - rvPassiveList.layoutManager = linearLayoutManager - badReasonListAdapter = BadReasonListAdapter(mActivity) - badReasonListAdapter?.setListener(object: BadReasonListAdapter.ReasonClickListener{ - override fun onClick(reason: String, isChecked: Boolean) { - hasOperated = true - if(isChecked){ - if(!uploadList.contains(reason)){ - uploadList.add(reason) - } - }else{ - if(uploadList.contains(reason)){ - uploadList.remove(reason) - } - } + flReasonLayout = mFloatLayout.findViewById(R.id.flReasonLayout) + + //展示缓存数据 + if(BadCaseReasonStore.getPassiveDataRecord().isNotEmpty()){ + val parseList = parseData() + if(parseList.isNotEmpty()){ + isLoadData = true + setData(parseList) } - }) - rvPassiveList.adapter = badReasonListAdapter + } /** * 获取录包原因数据 @@ -235,8 +225,10 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene uploadAudio() } //删除记录 - CallerMsgBoxManager.removeRecordInfo(mActivity, boxBean!!, recordKey!!) - EventBus.getDefault().post(boxBean) + boxBean?.let { + CallerMsgBoxManager.removeRecordInfo(mActivity,it, recordKey!!) + EventBus.getDefault().post(it) + } } tvPassiveCancel.setOnClickListener { @@ -244,8 +236,10 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene BadCaseConfig.windowNum-- clickListener?.closeWindow() //删除记录 - CallerMsgBoxManager.removeRecordInfo(mActivity, boxBean!!, recordKey!!) - EventBus.getDefault().post(boxBean) + boxBean?.let { + CallerMsgBoxManager.removeRecordInfo(mActivity, it, recordKey!!) + EventBus.getDefault().post(it) + } } mWindowParams = WindowManager.LayoutParams() @@ -377,14 +371,14 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene if(file.exists()){ isUploadCos = true LogInfoManagerFactory.createAudioUpload(mActivity.applicationContext, DebugConfig.isDebug(), - TAG, MoGoAiCloudClientConfig.getInstance().sn,singlePath, + TAG, SharedPrefsMgr.getInstance().sn,singlePath, object : OnUploadListener { override fun onUploadSuccess(key: String, filePath: String, downloadUrl: String?) { if(downloadUrl == null){ - ToastUtils.showShort("上传语音文件失败,请检查网络") - ThreadUtils.runOnUiThread { - tvPassiveReport.text = "上报" - } +// ToastUtils.showShort("上传语音文件失败,请检查网络") +// ThreadUtils.runOnUiThread { +// tvPassiveReport.text = "上报" +// } }else{ CallerLogger.d("$M_DEVA$TAG", "语音文件上传成功:downloadUrl=$downloadUrl") if(downloadUrl.isNotBlank() && downloadUrl.contains(".wav")){ @@ -447,7 +441,7 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene itx["duration"] = BadCaseConfig.totalDuration.toString() //采集时长,固定为20S itx["startTime"] = System.currentTimeMillis().toString() //上报时间(时间戳格式) itx["channel"] = "0" //渠道 - itx["carSn"] = MoGoAiCloudClientConfig.getInstance().sn //SN + itx["carSn"] = SharedPrefsMgr.getInstance().sn //SN itx["userRole"] = BadCaseConfig.identity //采集者角色 itx["audioUrl"] = downloadUrl?:"" //音频COS地址 itx["mapVersion"] = BadCaseConfig.dockerVersion ?:"" //工控机版本 @@ -478,13 +472,13 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene //被动上报埋点统计 val loc = CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84() BadCaseAnalyticsManager.bagRecordUpload(recordKey?:"",recordFileName?:"",receiveTime?:System.currentTimeMillis().toString(), - stat,AppConfigInfo.plateNumber,BadCaseConfig.totalDuration.toString(),MoGoAiCloudClientConfig.getInstance().sn, + stat,AppConfigInfo.plateNumber,BadCaseConfig.totalDuration.toString(),SharedPrefsMgr.getInstance().sn, BadCaseConfig.dockerVersion ?:"",AppUtils.getAppVersionName(),loc.latitude.toString(),loc.longitude.toString(), BadCaseConfig.identity,downloadUrl?:"",uploadReasonTotal,System.currentTimeMillis().toString(),"0") //日志 CallerLogger.i("$M_DEVA$TAG", "BadCase Passive Analytics="+"key="+recordKey+" filename="+recordFileName+ " receiveTime="+receiveTime+" stat="+"100"+" plateNumber="+AppConfigInfo.plateNumber+ - " totalDuration="+ BadCaseConfig.totalDuration +" carSn="+MoGoAiCloudClientConfig.getInstance().sn+" mapVersion="+BadCaseConfig.dockerVersion+ + " totalDuration="+ BadCaseConfig.totalDuration +" carSn="+SharedPrefsMgr.getInstance().sn+" mapVersion="+BadCaseConfig.dockerVersion+ " eyeVersion="+AppUtils.getAppVersionName()+" latitude="+ loc.latitude +" longitude="+ loc.longitude+ " identity="+BadCaseConfig.identity + " downloadUrl="+downloadUrl +" uploadReason="+uploadReasonTotal+ " uploadTime="+System.currentTimeMillis()+" channel="+"0") @@ -502,12 +496,6 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene mInViewX = motionEvent.x mInViewY = motionEvent.y // 获取相对屏幕的坐标,即以屏幕左上角为原点 - mDownInScreenX = motionEvent.rawX -// mDownInScreenY = motionEvent.rawY - BarUtils.getStatusBarHeight() -// mInScreenX = motionEvent.rawX -// mInScreenY = motionEvent.rawY - BarUtils.getStatusBarHeight() - - mDownInScreenY = motionEvent.rawY mInScreenX = motionEvent.rawX mInScreenY = motionEvent.rawY @@ -516,8 +504,10 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene hasOperated = true // 更新浮动窗口位置参数 mInScreenX = motionEvent.rawX -// mInScreenY = motionEvent.rawY - BarUtils.getStatusBarHeight() mInScreenY = motionEvent.rawY + if(((mInScreenX - mInViewX)-mWindowParams!!.x).absoluteValue>150 || ((mInScreenY - mInViewY)-mWindowParams!!.y).absoluteValue>150){ + return true + } mWindowParams!!.x = (mInScreenX - mInViewX).toInt() mWindowParams!!.y = (mInScreenY - mInViewY).toInt() // 手指移动的时候更新小悬浮窗的位置 @@ -578,51 +568,20 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene override fun onPassiveResponse(list: List) { if(!isLoadData && list.isNotEmpty()){ - badReasonListAdapter?.setData(list) + setData(list) isLoadData = true } } override fun onPassiveError() { - if(!isLoadData && BadCaseReasonStore.getPassiveDataRecord().isNotEmpty()){ - val list = ArrayList() - val result = JSONArray(BadCaseReasonStore.getPassiveDataRecord()) - if(result.length() > 0){ - for(i in 0 until result.length()){ - val entity = RecordOptionEntity() - val jsonObject = result[i] as JSONObject - val optionName = jsonObject.optString("optionName") - entity.optionName = optionName - val optionCode = jsonObject.optString("optionCode") - entity.optionCode = optionCode - val children = jsonObject.optJSONArray("children") - if (children != null) { - if(children.length() > 0){ - for(index in 0 until children.length()){ - val childJson = children[index] as JSONObject - val child = RecordOptionEntity() - val childOptionNme = childJson.optString("optionName") - val childOptionCode = childJson.optString("optionCode") - child.optionName = childOptionNme - child.optionCode = childOptionCode - entity.children.add(child) - } - } - } - list.add(entity) - } - } - if(list.isNotEmpty()){ - isLoadData = true - badReasonListAdapter?.setData(list) - } - }else{ + if(BadCaseReasonStore.getPassiveDataRecord().isEmpty()){ ToastUtils.showShort("被动录包数据采集错误且无缓存数据可用") } } override fun onUploadCosSuccess(cosUrl: String) { if(isUploadCos){ + isUploadCos = false //上传到服务器 upload(cosUrl) } @@ -671,4 +630,82 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene RecordBitmapUtils.deleteExpiredFile(currentDay) } + /** + * 解析JSON数据 + */ + private fun parseData(): ArrayList{ + val list = ArrayList() + val result = JSONArray(BadCaseReasonStore.getPassiveDataRecord()) + if(result.length() > 0){ + for(i in 0 until result.length()){ + val entity = RecordOptionEntity() + val jsonObject = result[i] as JSONObject + val optionName = jsonObject.optString("optionName") + entity.optionName = optionName + val optionCode = jsonObject.optString("optionCode") + entity.optionCode = optionCode + val children = jsonObject.optJSONArray("children") + if (children != null) { + if(children.length() > 0){ + for(index in 0 until children.length()){ + val childJson = children[index] as JSONObject + val child = RecordOptionEntity() + val childOptionNme = childJson.optString("optionName") + val childOptionCode = childJson.optString("optionCode") + child.optionName = childOptionNme + child.optionCode = childOptionCode + entity.children.add(child) + } + } + } + list.add(entity) + } + } + return list + } + + private fun setData(list: List){ + val defineList = ArrayList() + //将列表中的所有二级列表取出,然后添加到最终需要展示的列表中defineList + list.forEach { oneLevel -> + if(oneLevel.children.isNotEmpty()){ + oneLevel.children.forEach { twoLevel-> + if(twoLevel.optionName.isNotBlank()){ + defineList.add(twoLevel.optionName) + } + } + } + } + //绘制原因列表 + if(defineList.isNotEmpty()){ + defineList.forEach { + val checkBox = CheckBox(mActivity) + checkBox.setTextColor(Color.WHITE) + val lp = FlexboxLayout.LayoutParams( + FlexboxLayout.LayoutParams.WRAP_CONTENT, + FlexboxLayout.LayoutParams.WRAP_CONTENT) + checkBox.buttonDrawable = mActivity.resources.getDrawable(R.drawable.badcase_radio_button_style) + checkBox.setPadding( + SizeUtils.dp2px(18f), + SizeUtils.dp2px(7f), + SizeUtils.dp2px(18f), + SizeUtils.dp2px(7f)) + checkBox.textSize = AutoSizeUtils.dp2px(mActivity,15f).toFloat() + checkBox.text = it + checkBox.setOnCheckedChangeListener{ _, isChecked -> + if(isChecked){ + if(!uploadList.contains(it)){ + uploadList.add(it) + } + }else{ + if(uploadList.contains(it)){ + uploadList.remove(it) + } + } + } + flReasonLayout.addView(checkBox,lp) + } + } + } + } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/BadReasonListAdapter.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/BadReasonListAdapter.kt deleted file mode 100644 index ecd2983878..0000000000 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/BadReasonListAdapter.kt +++ /dev/null @@ -1,84 +0,0 @@ -package com.zhjt.mogo_core_function_devatools.badcase.biz.adapter - -import android.app.Activity -import android.graphics.Color -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import android.widget.CheckBox -import android.widget.TextView -import androidx.recyclerview.widget.RecyclerView -import com.google.android.flexbox.FlexboxLayout -import com.mogo.eagle.core.data.deva.badcase.RecordOptionEntity -import com.mogo.eagle.core.utilcode.util.SizeUtils -import com.zhjt.mogo_core_function_devatools.R -import me.jessyan.autosize.utils.AutoSizeUtils - -/** - * 主动录包和被动录包采集原因列表适配器 - */ -class BadReasonListAdapter(activity: Activity): RecyclerView.Adapter() { - - init { - activity.also { this.mActivity = it } - } - - private var data:List ?= null - private var clickListener: ReasonClickListener ?= null - private var mActivity: Activity - - fun setData(data: List){ - this.data = data - notifyDataSetChanged() - } - - fun setListener(listener: ReasonClickListener){ - clickListener = listener - } - - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BadReasonHolder { - val view = LayoutInflater.from(parent.context) - .inflate(R.layout.item_case_reason, parent, false) - return BadReasonHolder(view) - } - - - override fun onBindViewHolder(holder: BadReasonHolder, position: Int) { - data?.let { - val entity = it[position] - holder.tvReasonTitle.text = entity.optionName - if(entity.children.size>0){ - entity.children.forEach { child-> - val checkBox = CheckBox(mActivity) - checkBox.setTextColor(Color.WHITE) - val lp = FlexboxLayout.LayoutParams(FlexboxLayout.LayoutParams.WRAP_CONTENT, - FlexboxLayout.LayoutParams.WRAP_CONTENT) - checkBox.buttonDrawable = mActivity.resources.getDrawable(R.drawable.badcase_radio_button_style) - checkBox.setPadding( - SizeUtils.dp2px(15f), - SizeUtils.dp2px(5f), - SizeUtils.dp2px(15f), - SizeUtils.dp2px(5f)) - checkBox.textSize = AutoSizeUtils.dp2px(mActivity,15f).toFloat() - checkBox.text = child.optionName - checkBox.setOnCheckedChangeListener{ _, isChecked -> - clickListener?.onClick(checkBox.text.toString(),isChecked) - } - holder.flReasonLayout.addView(checkBox,lp) - } - } - } - } - - override fun getItemCount() = data?.size ?: 0 - - class BadReasonHolder(itemView: View) : RecyclerView.ViewHolder(itemView){ - var tvReasonTitle: TextView = itemView.findViewById(R.id.tvReasonTitle) - var flReasonLayout: FlexboxLayout = itemView.findViewById(R.id.flReasonLayout) - } - - interface ReasonClickListener{ - fun onClick(reason: String,isChecked: Boolean) - } - -} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/BagManagerListAdapter.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/BagManagerListAdapter.kt index f8e597809a..b2621e40e1 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/BagManagerListAdapter.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/BagManagerListAdapter.kt @@ -107,6 +107,24 @@ class BagManagerListAdapter: RecyclerView.Adapter() { } } + //录包来源:自动 or 人工 or 采集 + if(!initiativeSet.isNullOrEmpty() && initiativeSet!!.contains(bagInfoEntity.key.toString())){ + //在该列表中找到Bag包的Key则代表该Bag为人工录包 + holder.tvBagResource.text = "人工" + holder.tvBagResource.setBackgroundResource(R.drawable.bag_artificial_button_bg) + holder.ivMapScreen.visibility = View.VISIBLE + }else if(!aiDataSet.isNullOrEmpty() && aiDataSet!!.contains(bagInfoEntity.key.toString())){ + //AI数据采集 + holder.tvBagResource.text = "采集" + holder.tvBagResource.setBackgroundResource(R.drawable.bag_artificial_button_bg) + //AI数据采集不显示截图播放按钮 + holder.ivMapScreen.visibility = View.INVISIBLE + }else{ + //自动录包 + holder.tvBagResource.text = "自动" + holder.tvBagResource.setBackgroundResource(R.drawable.bag_auto_button_bg) + holder.ivMapScreen.visibility = View.VISIBLE + } bagInfoEntity.description?.let { des-> if(!recordFailSet.isNullOrEmpty() && recordFailSet!!.contains(bagInfoEntity.key.toString())){ @@ -144,6 +162,9 @@ class BagManagerListAdapter: RecyclerView.Adapter() { bagClickListener?.uploadBI(bagInfoEntity) } } + holder.ivMapScreen.alpha = 1.0f + holder.ivMapScreen.isClickable = true + holder.ivMapScreen.setOnClickListener { bagInfoEntity.description?.let { //查找是否有截图文件 @@ -155,6 +176,9 @@ class BagManagerListAdapter: RecyclerView.Adapter() { } } + holder.ivEditReason.alpha = 1.0f + holder.ivEditReason.isClickable = true + //编辑文字按钮 holder.ivEditReason.setOnClickListener { holder.etBagNameEdit.requestFocus() @@ -172,24 +196,6 @@ class BagManagerListAdapter: RecyclerView.Adapter() { } } - //录包来源:自动 or 人工 or 采集 - if(!initiativeSet.isNullOrEmpty() && initiativeSet!!.contains(bagInfoEntity.key.toString())){ - //在该列表中找到Bag包的Key则代表该Bag为人工录包 - holder.tvBagResource.text = "人工" - holder.tvBagResource.setBackgroundResource(R.drawable.bag_artificial_button_bg) - }else if(!aiDataSet.isNullOrEmpty() && aiDataSet!!.contains(bagInfoEntity.key.toString())){ - //AI数据采集 - holder.tvBagResource.text = "采集" - holder.tvBagResource.setBackgroundResource(R.drawable.bag_artificial_button_bg) - //AI数据采集不显示截图播放按钮 - holder.ivMapScreen.visibility = View.INVISIBLE - }else{ - //自动录包 - holder.tvBagResource.text = "自动" - holder.tvBagResource.setBackgroundResource(R.drawable.bag_auto_button_bg) - } - - if(bagInfoEntity.description?.hasAudio == true){ holder.ivBagAudio.visibility = View.VISIBLE diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/consts/BadCaseConfig.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/consts/BadCaseConfig.kt index b5868dbb3d..9f1a49715f 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/consts/BadCaseConfig.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/consts/BadCaseConfig.kt @@ -58,6 +58,8 @@ object BadCaseConfig { @JvmField var bagManagerList: ArrayList = ArrayList() + var notDisplayBagWindow: Boolean = false //主动录包不能展示弹窗 + private const val resourceInitiative = "RESOURCE_INITIATIVE" //录包来源为主动录包 private const val resourceAiData = "RESOURCE_AI_DATA" //录包来源为AI数据采集 private const val recordFail = "RECORD_FAIL" //录包失败 diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/repository/net/api/BadCaseNetManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/repository/net/api/BadCaseNetManager.kt index 0b2732c082..81949accd1 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/repository/net/api/BadCaseNetManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/repository/net/api/BadCaseNetManager.kt @@ -37,11 +37,16 @@ class BadCaseNetManager { val entity = AiDataEntity(id, name, content,false) list.add(entity) } + if(it != BadCaseReasonStore.getAiDataRecord()){ + //将结果回调到调用页面 + CallerDevaToolsNetManager.invokeAiDataResponse(list) + //缓存数据 + BadCaseReasonStore.setAiDataRecord(it) + } + }else{ + CallerDevaToolsNetManager.invokeAiDataError() } - //将结果回调到调用页面 - CallerDevaToolsNetManager.invokeAiDataResponse(list) - //缓存数据 - BadCaseReasonStore.setAiDataRecord(it) + }, onError = { @@ -79,18 +84,31 @@ class BadCaseNetManager { } list.add(entity) } - } - //将结果回调到调用页面 - if(optionType == 1){ - //主动录包 - CallerDevaToolsNetManager.invokeInitiativeResponse(list) - //缓存数据 - BadCaseReasonStore.setInitiativeDataRecord(it) - } else if(optionType == 2){ - //被动录包 - CallerDevaToolsNetManager.invokePassiveResponse(list) - //缓存数据 - BadCaseReasonStore.setPassiveDataRecord(it) + //将结果回调到调用页面 + if(optionType == 1){ + if( it != BadCaseReasonStore.getInitiativeDataRecord()){ + //如果请求数据和缓存数据不一致,则更新数据和UI + //主动录包 + CallerDevaToolsNetManager.invokeInitiativeResponse(list) + //缓存数据 + BadCaseReasonStore.setInitiativeDataRecord(it) + } + } else if(optionType == 2){ + if(it != BadCaseReasonStore.getPassiveDataRecord()){ + //被动录包 + CallerDevaToolsNetManager.invokePassiveResponse(list) + //缓存数据 + BadCaseReasonStore.setPassiveDataRecord(it) + } + } + }else{ + if(optionType == 1){ + //主动录包 + CallerDevaToolsNetManager.invokeInitiativeError() + }else if(optionType == 2){ + //被动录包 + CallerDevaToolsNetManager.invokePassiveError() + } } }, onError = diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt index fc35aaddcb..dcaec72654 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt @@ -3,7 +3,6 @@ package com.zhjt.mogo_core_function_devatools.binding import android.annotation.SuppressLint import android.content.Context import android.text.TextUtils -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.constants.SharedPrefsConstants import com.mogo.eagle.core.data.app.AppConfigInfo.role import com.mogo.eagle.core.data.config.FunctionBuildConfig @@ -19,7 +18,7 @@ import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isDriver import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isPassenger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.zhjt.mogo_core_function_devatools.trace.TraceManager import com.zhjt.mogo_core_function_devatools.upgrade.IPCUpgradeManager.Companion.ipcUpgradeManager import com.zhjt.mogo_core_function_devatools.upgrade.ObuUpgradeAppNetWorkManager @@ -54,8 +53,8 @@ object BindingCarManager : IMoGoAutopilotCarConfigListener, IMoGoCloudListener { fun init(context: Context) { mContext = context - SharedPrefsMgr.getInstance(mContext!!).putLong("typeDriver", 0) - SharedPrefsMgr.getInstance(mContext!!).putLong("typePassenger", 0) + SharedPrefsMgr.getInstance().putLong("typeDriver", 0) + SharedPrefsMgr.getInstance().putLong("typePassenger", 0) CallerAutopilotCarConfigListenerManager.addListener(TAG, this) CallerCloudListenerManager.addListener(TraceManager.TAG, this) ipcUpgradeManager.init(context) @@ -73,11 +72,11 @@ object BindingCarManager : IMoGoAutopilotCarConfigListener, IMoGoCloudListener { "${M_DEVA}${TAG}", "onAutopilotCarConfig carConfigResp.macAddress = ${carConfigResp.macAddress} " ) - if (MoGoAiCloudClientConfig.getInstance().sn.isNullOrEmpty()) { + if (SharedPrefsMgr.getInstance().sn.isNullOrEmpty()) { return } this.carConfigResp = carConfigResp - getBindingCarInfo(carConfigResp.macAddress, MoGoAiCloudClientConfig.getInstance().sn) + getBindingCarInfo(carConfigResp.macAddress, SharedPrefsMgr.getInstance().sn) } } @@ -115,7 +114,7 @@ object BindingCarManager : IMoGoAutopilotCarConfigListener, IMoGoCloudListener { "${M_DEVA}${TAG}", "getBindingcarInfo macAddress = $macAddress--widevineIDWithMd5 = $widevineIDWithMd5 ---screenType = $screenType" ) - SharedPrefsMgr.getInstance(mContext!!).putString(SharedPrefsConstants.APP_MAC, macAddress) + SharedPrefsMgr.getInstance().putString(SharedPrefsConstants.APP_MAC, macAddress) mWidevineIDWithMd5 = widevineIDWithMd5 if (screenType == 1) { //司机屏 driverScreen(macAddress, widevineIDWithMd5) @@ -158,12 +157,12 @@ object BindingCarManager : IMoGoAutopilotCarConfigListener, IMoGoCloudListener { private fun driverScreen(macAddress: String, widevineIDWithMd5: String) { val currentHour = System.currentTimeMillis() / (1000 * 60) val oldHour = SharedPrefsMgr.getInstance( - mContext!! + ).getLong("typeDriver", 0) //如果2分钟内频繁调,需要拦截,业务导致的会多次请求工控机信息 if (HmiBuildConfig.isShowSnBindingView) { if (currentHour - oldHour > 1) { - SharedPrefsMgr.getInstance(mContext!!) + SharedPrefsMgr.getInstance() .putLong("typeDriver", System.currentTimeMillis() / (1000 * 60)) BindingCarNetWorkManager.instance .getBindingCarInfo(mContext!!, macAddress, widevineIDWithMd5, screenType) @@ -173,14 +172,11 @@ object BindingCarManager : IMoGoAutopilotCarConfigListener, IMoGoCloudListener { private fun passengerScreen(macAddress: String, widevineIDWithMd5: String) { val currentHour = System.currentTimeMillis() / (1000 * 60) - val oldHour = SharedPrefsMgr.getInstance( - mContext!! - ).getLong("typePassenger", 0) + val oldHour = SharedPrefsMgr.getInstance().getLong("typePassenger", 0) //如果2分钟内频繁调,需要拦截,业务导致的会多次请求工控机信息 if (HmiBuildConfig.isShowSnBindingView) { if (currentHour - oldHour > 1) { - SharedPrefsMgr.getInstance(mContext!!) - .putLong("typePassenger", System.currentTimeMillis() / (1000 * 60)) + SharedPrefsMgr.getInstance().putLong("typePassenger", System.currentTimeMillis() / (1000 * 60)) BindingCarNetWorkManager.instance .getBindingCarInfo(mContext!!, macAddress, widevineIDWithMd5, screenType) } @@ -212,7 +208,7 @@ object BindingCarManager : IMoGoAutopilotCarConfigListener, IMoGoCloudListener { var macAddress = mAddress if (TextUtils.isEmpty(macAddress)) { CallerLogger.d(M_DEVA + "UPGRADE", "---- 2 ----") - macAddress = SharedPrefsMgr.getInstance(mContext!!) + macAddress = SharedPrefsMgr.getInstance() .getString(SharedPrefsConstants.APP_MAC) } if (macAddress != null && !TextUtils.isEmpty(macAddress)) { @@ -241,9 +237,7 @@ object BindingCarManager : IMoGoAutopilotCarConfigListener, IMoGoCloudListener { "queryObuUpgrade isConnected = ${CallerObuApiManager.isConnected()} --- mAddress = $mAddress" ) ObuUpgradeAppNetWorkManager.instance?.getObuUpgradeInfo( - if (!mAddress.isNullOrEmpty()) mAddress else SharedPrefsMgr.getInstance( - mContext!! - ).getString(SharedPrefsConstants.APP_MAC), obuVersionName + if (!mAddress.isNullOrEmpty()) mAddress else SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.APP_MAC), obuVersionName ) } } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarNetWorkManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarNetWorkManager.kt index fd16b4f50e..3d7db44916 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarNetWorkManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarNetWorkManager.kt @@ -17,7 +17,7 @@ import com.mogo.eagle.core.network.utils.GsonUtil import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.mogo.toast.TipToast import com.mogo.eagle.core.utilcode.util.GsonUtils import com.zhjt.mogo_core_function_devatools.R @@ -87,7 +87,7 @@ class BindingCarNetWorkManager private constructor() { "msg" to info ) ) - SharedPrefsMgr.getInstance(context).putString( + SharedPrefsMgr.getInstance().putString( SharedPrefsConstants.CAR_INFO, GsonUtils.toJson(info.getData()) ) @@ -98,7 +98,7 @@ class BindingCarNetWorkManager private constructor() { } updateCarVrIconRes(info.getData().brandId) } else { - SharedPrefsMgr.getInstance(context) + SharedPrefsMgr.getInstance() .putString(SharedPrefsConstants.CAR_INFO, "") e( SceneConstant.M_DEVA + TAG, @@ -108,7 +108,7 @@ class BindingCarNetWorkManager private constructor() { } override fun onError(e: Throwable) { - SharedPrefsMgr.getInstance(context).putString(SharedPrefsConstants.CAR_INFO, "") + SharedPrefsMgr.getInstance().putString(SharedPrefsConstants.CAR_INFO, "") bindLog(mapOf("bindResult" to false, "msg" to e.toString())) e( SceneConstant.M_DEVA + TAG, diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/block/MoGoBlockProviderImpl.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/block/MoGoBlockProviderImpl.kt index 1d78014846..2d83e258a5 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/block/MoGoBlockProviderImpl.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/block/MoGoBlockProviderImpl.kt @@ -18,22 +18,16 @@ import java.util.concurrent.TimeUnit.SECONDS internal class MoGoBlockProviderImpl: IMoGoBlockProvider, IBlockListener { - companion object { - private const val TAG = "BLOCK_REPORT" - } - @Volatile private var hasInit = false -// private val linkedLog by lazy { MainBlockLinkedLog() } - override fun init(ctx: Context) { BlockDetector.init(BlockMetrics.Builder() .context(ctx) - .multiplier(1.2f) + .multiplier(2.0f) .isDebug(false) .period(5, SECONDS) - .junkRateThreshold(0.2f) + .junkRateThreshold(0.6f) .recorder(null, 500, 500) .build()) hasInit = true @@ -69,11 +63,10 @@ internal class MoGoBlockProviderImpl: IMoGoBlockProvider, IBlockListener { } } } - val msg = GsonUtils.toJson(map) try { - VLogUtils.w(TAG, msg) + VLogUtils.w("BLOCK", GsonUtils.toJson(map)) } catch (t: Throwable) { - Log.e(TAG, "onDumped error", t) + t.printStackTrace() } } }) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/env/EnvChangeManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/env/EnvChangeManager.kt index fdf119aeb2..43ce0a6e01 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/env/EnvChangeManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/env/EnvChangeManager.kt @@ -6,7 +6,7 @@ import com.mogo.commons.constants.SharedPrefsConstants import com.mogo.commons.debug.DebugConfig import com.mogo.eagle.core.data.EnvConfig import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.Utils @@ -15,11 +15,11 @@ object EnvChangeManager { private val sp = Utils.getApp().getSharedPreferences("env_change", MODE_PRIVATE) private fun updateCityCode(cityCode: String?) { - sp.edit().putString("city_code", cityCode).commit() + sp.edit().putString("city_code", cityCode).apply() } private fun updateNetMode(netMode: Int) { - sp.edit().putInt("net_mode", netMode).commit() + sp.edit().putInt("net_mode", netMode).apply() } private fun getConfig() : Pair? { @@ -34,7 +34,7 @@ object EnvChangeManager { fun getCityName(): String { val cache = getConfig() return if (cache == null) { - when(CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02()?.cityCode ?: SharedPrefsMgr.getInstance(Utils.getApp()).getString(SharedPrefsConstants.LOCATION_CITY_CODE) ?: "010") { + when(CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02()?.cityCode ?: SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.LOCATION_CITY_CODE) ?: "010") { "010" -> "北京" "0734" -> "衡阳" else -> "未知" diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/funcconfig/network/FuncConfigNetWorkModel.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/funcconfig/network/FuncConfigNetWorkModel.kt index 50a6404f54..a18268b81e 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/funcconfig/network/FuncConfigNetWorkModel.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/funcconfig/network/FuncConfigNetWorkModel.kt @@ -1,7 +1,7 @@ package com.zhjt.mogo_core_function_devatools.funcconfig.network -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.constants.HostConst +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseResponse import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.network.MoGoRetrofitFactory @@ -10,7 +10,6 @@ import com.mogo.eagle.core.network.request import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.getMisChannelCode import com.mogo.eagle.core.utilcode.util.DeviceUtils -import com.zhjt.mogo_core_function_devatools.funcconfig.FuncConfigConst import com.zhjt.service_biz.FuncConfig class FuncConfigNetWorkModel { @@ -41,7 +40,7 @@ class FuncConfigNetWorkModel { } loader { apiCall { - map["sn"] = MoGoAiCloudClientConfig.getInstance().sn + map["sn"] = SharedPrefsMgr.getInstance().sn map["mac"] = DeviceUtils.getMacAddress() map["channelVersion"] = AppIdentityModeUtils.getMisChannelCode(FunctionBuildConfig.appIdentityMode) getNetWorkApi().funcConfig(map) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt index e3375d3325..b57f847749 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt @@ -7,7 +7,6 @@ import android.os.Message import com.mogo.aicloud.services.socket.IMogoOnMessageListener import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager import com.mogo.cloud.passport.MoGoAiCloudClient -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.AbsMogoApplication import com.mogo.commons.debug.DebugConfig import com.mogo.eagle.core.data.app.AppConfigInfo @@ -22,10 +21,9 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.LogLevel import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.mogo.toast.TipToast import com.mogo.eagle.core.utilcode.util.ThreadUtils -import com.mogo.map.MogoData import com.zhidao.loglib.bean.RemoteLogPushContent import com.zhidao.loglib.call.LogInfoManagerFactory import com.zhidao.loglib.core.ILogListener @@ -66,8 +64,8 @@ object MogoLogCatchManager : IMogoOnMessageListener, Handl } private fun logCheck(context: Context) { - val logger = SharedPrefsMgr.getInstance(context).getBoolean(MoGoConfig.CATCH_LOG, false) - val loggerTime = SharedPrefsMgr.getInstance(context).getLong(MoGoConfig.CATCH_LOG_TIME, 0) + val logger = SharedPrefsMgr.getInstance().getBoolean(MoGoConfig.CATCH_LOG, false) + val loggerTime = SharedPrefsMgr.getInstance().getLong(MoGoConfig.CATCH_LOG_TIME, 0) val logCatchDuration = (System.currentTimeMillis() - loggerTime) / 1000 / 60 if (logger && loggerTime > 0) { val logTime: Int = if (10 - logCatchDuration < 1) { @@ -161,7 +159,7 @@ object MogoLogCatchManager : IMogoOnMessageListener, Handl private fun startCatchLog(content: RemoteLogPushContent, logPrefixName: String? = null) { CallerLogger.d("$M_DEVA$TAG", "startCatchLog path : ${content.pkgName + logPrefixName}") - if (MoGoAiCloudClientConfig.getInstance().sn == null) { + if (SharedPrefsMgr.getInstance().sn == null) { ThreadUtils.runOnUiThread { TipToast.shortTip("缺少设备唯一ID,请检查网络") } @@ -179,7 +177,7 @@ object MogoLogCatchManager : IMogoOnMessageListener, Handl openLoggerLevel() logInfoManager = LogInfoManagerFactory.createPushLogInfoManager( mContext, - MoGoAiCloudClientConfig.getInstance().sn, + SharedPrefsMgr.getInstance().sn, AppConfigInfo.toString(), logPrefixName?.replace("_", "-"), mutableListOf(), @@ -192,8 +190,8 @@ object MogoLogCatchManager : IMogoOnMessageListener, Handl } handler.sendEmptyMessage(MSG_TRY_START_LOG) - SharedPrefsMgr.getInstance(mContext!!).putBoolean(MoGoConfig.CATCH_LOG, true) - SharedPrefsMgr.getInstance(mContext!!) + SharedPrefsMgr.getInstance().putBoolean(MoGoConfig.CATCH_LOG, true) + SharedPrefsMgr.getInstance() .putLong(MoGoConfig.CATCH_LOG_TIME, System.currentTimeMillis()) } @@ -210,8 +208,8 @@ object MogoLogCatchManager : IMogoOnMessageListener, Handl logInfoManager = null closeLoggerLevel() - SharedPrefsMgr.getInstance(mContext!!).putBoolean(MoGoConfig.CATCH_LOG, false) - SharedPrefsMgr.getInstance(mContext!!).putLong(MoGoConfig.CATCH_LOG_TIME, 0) + SharedPrefsMgr.getInstance().putBoolean(MoGoConfig.CATCH_LOG, false) + SharedPrefsMgr.getInstance().putLong(MoGoConfig.CATCH_LOG_TIME, 0) } /** @@ -252,8 +250,8 @@ object MogoLogCatchManager : IMogoOnMessageListener, Handl ThreadUtils.runOnUiThread { closeLoggerLevel() - SharedPrefsMgr.getInstance(mContext!!).putBoolean(MoGoConfig.CATCH_LOG, false) - SharedPrefsMgr.getInstance(mContext!!).putLong(MoGoConfig.CATCH_LOG_TIME, 0) + SharedPrefsMgr.getInstance().putBoolean(MoGoConfig.CATCH_LOG, false) + SharedPrefsMgr.getInstance().putLong(MoGoConfig.CATCH_LOG_TIME, 0) CallerDevaToolsListenerManager.invokeDevaToolsLogCatchClose() } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/SyncConfig.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/SyncConfig.kt index da26ec4642..0f9bb886c6 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/SyncConfig.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/SyncConfig.kt @@ -13,6 +13,7 @@ import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.getMisChannelCode import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.NetworkUtils import com.zhjt.mogo_core_function_devatools.trace.network.StartUpTraceNetWorkModel import com.zhjt.service.chain.ChainLog @@ -24,8 +25,8 @@ object SyncConfig { fun update(context: Context) { if (MoGoAiCloudClient.getInstance().aiCloudClientConfig != null) { - AppConfigInfo.mogoSN = MoGoAiCloudClient.getInstance().aiCloudClientConfig.sn - AppConfigInfo.mogoToken = MoGoAiCloudClient.getInstance().aiCloudClientConfig.token + AppConfigInfo.mogoSN = SharedPrefsMgr.getInstance().sn + AppConfigInfo.mogoToken = SharedPrefsMgr.getInstance().token } AppConfigInfo.netMode = DebugConfig.getNetMode() AppConfigInfo.mapSdkVersion = DebugConfig.getMapVersion() diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/TraceManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/TraceManager.kt index 00d5559ec1..fed124372b 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/TraceManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/TraceManager.kt @@ -13,7 +13,7 @@ import com.mogo.eagle.core.function.call.cloud.CallerCloudListenerManager import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.Utils import com.zhidao.loglib.call.LogInfoManagerFactory import com.zhidao.loglib.fw.FileWriteManager @@ -39,7 +39,7 @@ class TraceManager : IMoGoCloudListener, IMoGoAutopilotCarConfigListener { const val TAG = "TraceManager" private const val TRACE_ENABLE = "TRACE_ENABLE" - private const val DELAY_UPLOAD = 60 * 60 * 1000L + private const val DELAY_UPLOAD = 10 * 60 * 1000L val traceManager by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { TraceManager() @@ -109,7 +109,7 @@ class TraceManager : IMoGoCloudListener, IMoGoAutopilotCarConfigListener { } CallerDevaToolsListenerManager.invokeDevaToolsFwThreadClose() } - val traceEnable = SharedPrefsMgr.getInstance(context).getBoolean(TRACE_ENABLE,true) + val traceEnable = SharedPrefsMgr.getInstance().getBoolean(TRACE_ENABLE,true) FileWriteManager.getInstance().setCloseRecord(traceEnable) if(traceEnable){ delayUpload() diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/IPCUpgradeManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/IPCUpgradeManager.kt index e42e314fa4..4390f541f3 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/IPCUpgradeManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/IPCUpgradeManager.kt @@ -3,7 +3,7 @@ package com.zhjt.mogo_core_function_devatools.upgrade import android.content.Context import com.mogo.aicloud.services.socket.IMogoOnMessageListener import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager -import com.mogo.cloud.passport.MoGoAiCloudClient +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.deva.bindingcar.IPCUpgradeStateInfo import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager @@ -65,7 +65,7 @@ class IPCUpgradeManager: IMogoOnMessageListener , //弹窗提示,确认是否进行工控机升级 CallerHmiManager.showAdUpgradeDialog( it.images, - MoGoAiCloudClient.getInstance().aiCloudClientConfig.sn, + SharedPrefsMgr.getInstance().sn, releaseId) } }else{ @@ -89,7 +89,7 @@ class IPCUpgradeManager: IMogoOnMessageListener , } CallerHmiManager.showAdUpgradeDialog( it.images, - MoGoAiCloudClient.getInstance().aiCloudClientConfig.sn, + SharedPrefsMgr.getInstance().sn, releaseId) //将升级任务置为false hasIPCUpgradeTask = false diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/ObuUpgradeAppNetWorkManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/ObuUpgradeAppNetWorkManager.kt index cc97ca970d..afcf1f75a8 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/ObuUpgradeAppNetWorkManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/ObuUpgradeAppNetWorkManager.kt @@ -1,7 +1,7 @@ package com.zhjt.mogo_core_function_devatools.upgrade -import com.mogo.cloud.passport.* import com.mogo.commons.constants.* +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.obu.MogoObuConst.TAG_UPGRADE_OBU import com.mogo.eagle.core.function.api.devatools.download.DownloadType.OBU import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager.downLoadPackage @@ -38,7 +38,7 @@ class ObuUpgradeAppNetWorkManager private constructor() { // String mac1 = "48:b0:2d:4d:33:40"; scope.launch { try { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn d(SceneConstant.M_DEVA + TAG_UPGRADE_OBU, "getObuUpgradeInfo mac = $mac ---sn = $sn ---versionName = $versionName --host = ${HostConst.getHost()}") val request = UpgradeAppRequest(sn, mac, "7", null, "0") val requestBody = RequestBody.create(MediaType.get("application/json;charset=UTF-8"), GsonUtil.jsonFromObject(request)) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/UpgradeAppNetWorkManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/UpgradeAppNetWorkManager.kt index 7716227eb4..660526fd19 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/UpgradeAppNetWorkManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/UpgradeAppNetWorkManager.kt @@ -3,7 +3,6 @@ package com.zhjt.mogo_core_function_devatools.upgrade import android.content.* import android.util.* import android.widget.Toast -import com.mogo.cloud.passport.* import com.mogo.commons.constants.* import com.mogo.commons.utils.* import com.mogo.eagle.core.data.config.* @@ -22,7 +21,7 @@ import com.mogo.eagle.core.utilcode.kotlin.* import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.getMisChannelCode import com.mogo.eagle.core.utilcode.mogo.logger.scene.* -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.* import com.mogo.eagle.core.utilcode.util.FileUtils import kotlinx.coroutines.* @@ -56,10 +55,10 @@ class UpgradeAppNetWorkManager private constructor() { fun getAppUpgradeInfo(context: Context?, mac: String, screenType: String) { upgradeJob?.safeCancel() scope.launch { - val sn = MoGoAiCloudClientConfig.getInstance().sn //null + val sn = SharedPrefsMgr.getInstance().sn val macAddress = mac //"48:b0:2d:4d:31:7f" val type = screenType //"10" - SharedPrefsMgr.getInstance(context!!).putString(SharedPrefsConstants.HOST_ADDRESS, HostConst.getHost()) + SharedPrefsMgr.getInstance().putString(SharedPrefsConstants.HOST_ADDRESS, HostConst.getHost()) try { val records = provider?.getUpgradeRecords()?.also { MogoAnalyticUtils.track("AppUpgradeRecord", TreeMap().also { itx -> @@ -80,7 +79,7 @@ class UpgradeAppNetWorkManager private constructor() { provider?.recordUpgradeRecord(sn ?: "", macAddress, type, FunctionBuildConfig.isSupportPatchUpgrade) provider?.recordUpgradeRequestStart() val info = mUpgradeApiService.getUpgradeInfo(requestBody) - SharedPrefsMgr.getInstance(context).putString(SharedPrefsConstants.APP_UPGRADE_CONTENT, if (info.result != null) GsonUtils.toJson(info) + "--mac:$macAddress --type:$type --sn:$sn --versionName:$versionName" else "info.result == null --mac:$macAddress --type:$type --sn:$sn --versionName:$versionName --versionCode:$versionCode") + SharedPrefsMgr.getInstance().putString(SharedPrefsConstants.APP_UPGRADE_CONTENT, if (info.result != null) GsonUtils.toJson(info) + "--mac:$macAddress --type:$type --sn:$sn --versionName:$versionName" else "info.result == null --mac:$macAddress --type:$type --sn:$sn --versionName:$versionName --versionCode:$versionCode") if (info.result != null) { provider?.recordUpgradeRequestSuccess(GsonUtils.toJson(info)) doUpgrade(info) @@ -89,7 +88,7 @@ class UpgradeAppNetWorkManager private constructor() { } } catch (t: Throwable) { t.printStackTrace() - SharedPrefsMgr.getInstance(context).putString(SharedPrefsConstants.APP_UPGRADE_CONTENT, + SharedPrefsMgr.getInstance().putString(SharedPrefsConstants.APP_UPGRADE_CONTENT, "$t--mac:$macAddress --type:$type --sn:$sn " ) provider?.recordUpgradeRequestFailed(t.message ?: "更新接口请求失败") diff --git a/core/function-impl/mogo-core-function-devatools/src/main/res/layout/item_case_reason.xml b/core/function-impl/mogo-core-function-devatools/src/main/res/layout/item_case_reason.xml deleted file mode 100644 index f85553b48f..0000000000 --- a/core/function-impl/mogo-core-function-devatools/src/main/res/layout/item_case_reason.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-devatools/src/main/res/layout/view_initiative_bad_case.xml b/core/function-impl/mogo-core-function-devatools/src/main/res/layout/view_initiative_bad_case.xml index 3424a3f421..1e7a03c1d0 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/res/layout/view_initiative_bad_case.xml +++ b/core/function-impl/mogo-core-function-devatools/src/main/res/layout/view_initiative_bad_case.xml @@ -50,8 +50,7 @@ android:layout_marginEnd="@dimen/dp_50" /> - + android:layout_margin="@dimen/dp_20"> + + + + - + android:layout_margin="@dimen/dp_20"> + + + + d(SceneConstant.M_HMI + TAG, "交通事故详情::$trafficInfo") mTrafficStyleInfo = trafficInfo.getResult().accidentInfo diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt index 8e05d9b313..db91cc7565 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt @@ -82,7 +82,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.LogLevel import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.mogo.permissions.BackgrounderPermission -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.mogo.toast.TipToast import com.mogo.eagle.core.utilcode.util.* import com.mogo.map.MogoData.Companion.mogoMapData @@ -675,7 +675,7 @@ internal class DebugSettingView @JvmOverloads constructor( // 初始化OBU IP信息 val ipAddress = - SharedPrefsMgr.getInstance(context) + SharedPrefsMgr.getInstance() .getString(MoGoConfig.OBU_IP, MogoObuConst.OBU_DEFAULT_IP) etObuIP.setText(ipAddress) @@ -735,10 +735,10 @@ internal class DebugSettingView @JvmOverloads constructor( } tbIsStrictMode?.also { - it.isChecked = SharedPrefsMgr.getInstance(Utils.getApp()) + it.isChecked = SharedPrefsMgr.getInstance() .getBoolean("MOGO_STRICT_MODE_ENABLED", false) it.setOnCheckedChangeListener { _, isChecked -> - SharedPrefsMgr.getInstance(Utils.getApp()) + SharedPrefsMgr.getInstance() .putBoolean("MOGO_STRICT_MODE_ENABLED", isChecked) scope.launch { ToastUtils.showShort("配置生效, 2秒后重启应用...") @@ -1078,7 +1078,7 @@ internal class DebugSettingView @JvmOverloads constructor( @SuppressLint("SetTextI18n") private fun setEagleEyeConfigListener() { //初始化刹车加速度阈值信息 - val brakeThreshold = SharedPrefsMgr.getInstance(context) + val brakeThreshold = SharedPrefsMgr.getInstance() .getFloat(MoGoConfig.BRAKE_ACCELERATION_THRESHOLD, FunctionBuildConfig.accThreshold) etInputBrakeThreshold.setText(brakeThreshold.toString()) etInputBrakeThreshold.text?.let { etInputBrakeThreshold.setSelection(brakeThreshold.toString().length) } @@ -1091,7 +1091,7 @@ internal class DebugSettingView @JvmOverloads constructor( try { val thresholdStrFloat = thresholdStr.toFloat() if (thresholdStrFloat < 0) { - SharedPrefsMgr.getInstance(context) + SharedPrefsMgr.getInstance() .putFloat(MoGoConfig.BRAKE_ACCELERATION_THRESHOLD, thresholdStrFloat) FunctionBuildConfig.accThreshold = thresholdStrFloat ToastUtils.showShort("刹车阈值设置成功") @@ -1394,10 +1394,10 @@ internal class DebugSettingView @JvmOverloads constructor( /** * 设置是否开启pre check, true-打开,false-关闭 */ - tbTraceEnable.isChecked = SharedPrefsMgr.getInstance(context).getBoolean("TRACE_ENABLE",true) + tbTraceEnable.isChecked = SharedPrefsMgr.getInstance().getBoolean("TRACE_ENABLE",true) tbTraceEnable.setOnCheckedChangeListener { _, isChecked -> HmiActionLog.hmiAction(TAG + "TRACE_ENABLE",isChecked) - SharedPrefsMgr.getInstance(context).putBoolean("TRACE_ENABLE",isChecked) + SharedPrefsMgr.getInstance().putBoolean("TRACE_ENABLE",isChecked) CallerDevaToolsManager.setTraceEnable(isChecked) } @@ -1474,7 +1474,7 @@ internal class DebugSettingView @JvmOverloads constructor( } //开始停止抓取全量日志 tbLogCatch.isChecked = - SharedPrefsMgr.getInstance(context).getBoolean(MoGoConfig.CATCH_LOG, false) + SharedPrefsMgr.getInstance().getBoolean(MoGoConfig.CATCH_LOG, false) tbLogCatch.setOnCheckedChangeListener { _, isChecked -> if (isChecked) { var logTimeStr = etLogCatch.text?.toString() @@ -1810,11 +1810,11 @@ internal class DebugSettingView @JvmOverloads constructor( tvIpcInfoKey.text = it } tvCmdbCarInfoContent.text = - SharedPrefsMgr.getInstance(context).getString(SharedPrefsConstants.CAR_INFO) ?: "" + SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.CAR_INFO) ?: "" //APP升级功能 - tvAppHost.text = "HOST地址:" + SharedPrefsMgr.getInstance(context) + tvAppHost.text = "HOST地址:" + SharedPrefsMgr.getInstance() .getString(SharedPrefsConstants.HOST_ADDRESS) - tvAppContent.text = "APP升级数据:" + SharedPrefsMgr.getInstance(context) + tvAppContent.text = "APP升级数据:" + SharedPrefsMgr.getInstance() .getString(SharedPrefsConstants.APP_UPGRADE_CONTENT) tvCarInfo.text = diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt index 2c888da2b4..055e8ea5ae 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt @@ -73,6 +73,7 @@ import kotlinx.android.synthetic.main.view_sop_setting.view.scRunRedLightSop import kotlinx.android.synthetic.main.view_sop_setting.view.scShowBagRecordWindow import kotlinx.android.synthetic.main.view_sop_setting.view.scSpeedLimit import kotlinx.android.synthetic.main.view_sop_setting.view.scSweeperModeSwitch +import kotlinx.android.synthetic.main.view_sop_setting.view.scTakeOverRemind import kotlinx.android.synthetic.main.view_sop_setting.view.scTrafficLight import kotlinx.android.synthetic.main.view_sop_setting.view.scV2ISwitch import kotlinx.android.synthetic.main.view_sop_setting.view.scV2NSwitch @@ -121,7 +122,9 @@ internal class SOPSettingView @JvmOverloads constructor( mapSetting() //与车相关类设置 vehicleSetting() - //其他类别开关设置 + //美化模式类设置 + demoSetting() + //业务类别开关设置 otherSetting() } @@ -445,17 +448,9 @@ internal class SOPSettingView @JvmOverloads constructor( } /** - * 与车相关类设置 + * 美化模式类设置 */ - private fun vehicleSetting() { - //绕障类功能 - scObstacleAvoidance.isChecked = FunctionBuildConfig.isDetouring - scObstacleAvoidance.setOnCheckedChangeListener { _, isChecked -> - hmiAction("SOP 绕障类功能开关, ", isChecked) - CallerAutoPilotControlManager.sendDetouring(isChecked) - FunctionBuildConfig.isDetouring = isChecked - } - + private fun demoSetting(){ // 演示模式,上一次勾选的数据 scDemoMode.isChecked = FunctionBuildConfig.isDemoMode scDemoMode.setOnCheckedChangeListener { compoundButton, isChecked -> @@ -480,6 +475,34 @@ internal class SOPSettingView @JvmOverloads constructor( scDemoMode.isEnabled = false } + //是否展示被动触发的录包弹窗(自动驾驶下出现问题触发的录包) + scShowBagRecordWindow.isChecked = FunctionBuildConfig.isShowBagRecordWindow + scShowBagRecordWindow.setOnCheckedChangeListener { _, isChecked -> + FunctionBuildConfig.isShowBagRecordWindow = isChecked + hmiAction("SOP 是否展示录包弹窗, ", isChecked) + } + + //接管提醒 + scTakeOverRemind.isChecked = FunctionBuildConfig.isTakeoverRemind + scTakeOverRemind.setOnCheckedChangeListener { _, isChecked -> + FunctionBuildConfig.isTakeoverRemind = isChecked + hmiAction("SOP 是否展示接管提醒, ", isChecked) + } + + } + + /** + * 与车相关类设置 + */ + private fun vehicleSetting() { + //绕障类功能 + scObstacleAvoidance.isChecked = FunctionBuildConfig.isDetouring + scObstacleAvoidance.setOnCheckedChangeListener { _, isChecked -> + hmiAction("SOP 绕障类功能开关, ", isChecked) + CallerAutoPilotControlManager.sendDetouring(isChecked) + FunctionBuildConfig.isDetouring = isChecked + } + // 雨天模式,上一次勾选的数据 scRainMode.isChecked = FunctionBuildConfig.isRainMode scRainMode.setOnCheckedChangeListener { compoundButton, isChecked -> @@ -539,10 +562,87 @@ internal class SOPSettingView @JvmOverloads constructor( hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode) CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode) } + + //变道绕障的目标障碍物速度阈值 + tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s" + ivSpeedReduce.setOnClickListener { + if (FunctionBuildConfig.detouringSpeed <= 3) { + ToastUtils.showShort("阈值最小可为3 m/s") + } else { + FunctionBuildConfig.detouringSpeed-- + tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s" + } + hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed) + } + ivSpeedAdd.setOnClickListener { + if (FunctionBuildConfig.detouringSpeed >= 7) { + ToastUtils.showShort("阈值最大可为7 m/s") + } else { + FunctionBuildConfig.detouringSpeed++ + tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s" + } + hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed) + } + btnSpeedSet.setOnClickListener { + val isSuccess = + CallerAutoPilotControlManager.sendDetouringSpeed(FunctionBuildConfig.detouringSpeed.toDouble()) + if (isSuccess == true) { + ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置成功") + hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "成功") + } else { + ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置失败") + hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "失败") + } + } + + ivSpeedOverTakeReduce.setOnClickListener { + if (FunctionBuildConfig.overTakeSpeed <= 3) { + ToastUtils.showShort("阈值最小可为3 m/s") + } else { + FunctionBuildConfig.overTakeSpeed -= 0.5f + tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s" + } + hmiAction("SOP 超车目标障碍物速度阈值", FunctionBuildConfig.overTakeSpeed) + } + ivSpeedOverTakeAdd.setOnClickListener { + if (FunctionBuildConfig.overTakeSpeed >= 12.5) { + ToastUtils.showShort("阈值最大可为12.5 m/s") + } else { + FunctionBuildConfig.overTakeSpeed += 0.5f + tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s" + } + hmiAction("SOP 超车目标障碍物速度阈值", FunctionBuildConfig.overTakeSpeed) + } + btnSpeedOverTakeSet.setOnClickListener { + val isSuccess = + CallerAutoPilotControlManager.sendOvertakeMaxSpeed(FunctionBuildConfig.overTakeSpeed.toDouble()) + if (isSuccess == true) { + ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置成功") + hmiAction("SOP 超车目标障碍物速度阈值设置", "成功") + } else { + ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置失败") + hmiAction("SOP 超车目标障碍物速度阈值设置", "失败") + } + } + + if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { + tvSpeedThresholdTitle.visibility = View.GONE + ivSpeedReduce.visibility = View.GONE + tvSpeed.visibility = View.GONE + ivSpeedAdd.visibility = View.GONE + btnSpeedSet.visibility = View.GONE + + tvSpeedOverTakeLimit.visibility = View.GONE + ivSpeedOverTakeReduce.visibility = View.GONE + tvOverTakeLimit.visibility = View.GONE + ivSpeedOverTakeAdd.visibility = View.GONE + btnSpeedOverTakeSet.visibility = View.GONE + } + } - private var overTakeEditText: String = "" - private var overTakeEditDel = false +// private var overTakeEditText: String = "" +// private var overTakeEditDel = false /** * 其他类别开关设置 @@ -633,17 +733,10 @@ internal class SOPSettingView @JvmOverloads constructor( it.isChecked = CallerHmiManager.isTaxiUnmanedDriverLineRoutingVerifyMode() } else { it.isEnabled = false - it.visibility = View.GONE + it.visibility = View.INVISIBLE } } - //是否展示被动触发的录包弹窗(自动驾驶下出现问题触发的录包) - scShowBagRecordWindow.isChecked = FunctionBuildConfig.isShowBagRecordWindow - scShowBagRecordWindow.setOnCheckedChangeListener { _, isChecked -> - FunctionBuildConfig.isShowBagRecordWindow = isChecked - hmiAction("SOP 是否展示被动触发的录包弹窗, ", isChecked) - } - // 清扫车业务模式切换 scSweeperModeSwitch?.also { switchView -> switchView.isChecked = @@ -686,82 +779,6 @@ internal class SOPSettingView @JvmOverloads constructor( } } - //变道绕障的目标障碍物速度阈值 - tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s" - ivSpeedReduce.setOnClickListener { - if (FunctionBuildConfig.detouringSpeed <= 3) { - ToastUtils.showShort("阈值最小可为3 m/s") - } else { - FunctionBuildConfig.detouringSpeed-- - tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s" - } - hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed) - } - ivSpeedAdd.setOnClickListener { - if (FunctionBuildConfig.detouringSpeed >= 7) { - ToastUtils.showShort("阈值最大可为7 m/s") - } else { - FunctionBuildConfig.detouringSpeed++ - tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s" - } - hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed) - } - btnSpeedSet.setOnClickListener { - val isSuccess = - CallerAutoPilotControlManager.sendDetouringSpeed(FunctionBuildConfig.detouringSpeed.toDouble()) - if (isSuccess == true) { - ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置成功") - hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "成功") - } else { - ToastUtils.showShort("变道绕障的目标障碍物速度阈值设置失败") - hmiAction("SOP 变道绕障的目标障碍物速度阈值设置", "失败") - } - } - - ivSpeedOverTakeReduce.setOnClickListener { - if (FunctionBuildConfig.overTakeSpeed <= 3) { - ToastUtils.showShort("阈值最小可为3 m/s") - } else { - FunctionBuildConfig.overTakeSpeed -= 0.5f - tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s" - } - hmiAction("SOP 超车目标障碍物速度阈值", FunctionBuildConfig.overTakeSpeed) - } - ivSpeedOverTakeAdd.setOnClickListener { - if (FunctionBuildConfig.overTakeSpeed >= 12.5) { - ToastUtils.showShort("阈值最大可为12.5 m/s") - } else { - FunctionBuildConfig.overTakeSpeed += 0.5f - tvOverTakeLimit.text = "${FunctionBuildConfig.overTakeSpeed} m/s" - } - hmiAction("SOP 超车目标障碍物速度阈值", FunctionBuildConfig.overTakeSpeed) - } - btnSpeedOverTakeSet.setOnClickListener { - val isSuccess = - CallerAutoPilotControlManager.sendOvertakeMaxSpeed(FunctionBuildConfig.overTakeSpeed.toDouble()) - if (isSuccess == true) { - ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置成功") - hmiAction("SOP 超车目标障碍物速度阈值设置", "成功") - } else { - ToastUtils.showShort("SOP 超车目标障碍物速度阈值设置失败") - hmiAction("SOP 超车目标障碍物速度阈值设置", "失败") - } - } - - if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { - tvSpeedThresholdTitle.visibility = View.GONE - ivSpeedReduce.visibility = View.GONE - tvSpeed.visibility = View.GONE - ivSpeedAdd.visibility = View.GONE - btnSpeedSet.visibility = View.GONE - - tvSpeedOverTakeLimit.visibility = View.GONE - ivSpeedOverTakeReduce.visibility = View.GONE - tvOverTakeLimit.visibility = View.GONE - ivSpeedOverTakeAdd.visibility = View.GONE - btnSpeedOverTakeSet.visibility = View.GONE - } - val virtualTaskPullTaskInterval = CallerUnmannedListenerManager.getVirtualTaskPullTaskInterval() rbFive.isChecked = virtualTaskPullTaskInterval == 5 rbFifteen.isChecked = virtualTaskPullTaskInterval == 15 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/BusOperationView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/BusOperationView.kt index e7eb56f079..39afee1416 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/BusOperationView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/BusOperationView.kt @@ -10,7 +10,7 @@ import com.mogo.eagle.core.data.temp.EventLogout import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.StringUtils import kotlinx.android.synthetic.main.view_och_bus_operation.view.* import org.greenrobot.eventbus.EventBus @@ -28,7 +28,7 @@ class BusOperationView @JvmOverloads constructor( init { LayoutInflater.from(context).inflate(R.layout.view_och_bus_operation,this,true) context?.let { - actvAccountPhone.text = phoneMask(SharedPrefsMgr.getInstance(it).getString("och_account","")) + actvAccountPhone.text = phoneMask(SharedPrefsMgr.getInstance().getString("och_account","")) } clickPersonalRightView() clickQRBtn() @@ -69,7 +69,7 @@ class BusOperationView @JvmOverloads constructor( override fun onAttachedToWindow() { super.onAttachedToWindow() context?.let { - actvAccountPhone.text = phoneMask(SharedPrefsMgr.getInstance(it).getString("och_account","")) + actvAccountPhone.text = phoneMask(SharedPrefsMgr.getInstance().getString("och_account","")) } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/PncActionsView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/PncActionsView.kt index ff4e37b641..0615fac9b9 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/PncActionsView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/PncActionsView.kt @@ -42,6 +42,7 @@ class PncActionsView @JvmOverloads constructor( private val bgResources: Int private val txtSize: Float + private val txtStyle: Int init { LayoutInflater.from(context).inflate(R.layout.view_pnc_actions, this, true) @@ -54,13 +55,14 @@ class PncActionsView @JvmOverloads constructor( R.styleable.PncActionsView_pnc_size, resources.getDimension(R.dimen.dp_34) ) + txtStyle = a.getResourceId(R.styleable.PncActionsView_pnc_txt_style,0) + tvHmiPncActions.setTextAppearance(txtStyle) a.recycle() } override fun onAttachedToWindow() { super.onAttachedToWindow() tvHmiPncActions.setTextSize(COMPLEX_UNIT_PX, txtSize) - CallerAutoPilotStatusListenerManager.addListener(TAG, this) CallerPlanningActionsListenerManager.addListener(TAG, this) CallerTrafficLightListenerManager.addListener(TAG, this) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/SteeringBrakeView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/SteeringBrakeView.kt index fff7dc45ea..a0249df86a 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/SteeringBrakeView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/SteeringBrakeView.kt @@ -15,7 +15,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84Lis import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.Utils import kotlinx.android.synthetic.main.view_steering_brake.view.* @@ -48,7 +48,7 @@ class SteeringBrakeView(context: Context, attrs: AttributeSet?) : ConstraintLayo override fun onChassisLocationWGS84(gnssInfo: MogoLocation) { //设置刹车信息,小于默认认为是刹车 //todo emArrow 优化sp获取,不要每次回调都去调用sp brakeLight = - if (gnssInfo.acceleration < SharedPrefsMgr.getInstance(Utils.getApp()).getFloat( + if (gnssInfo.acceleration < SharedPrefsMgr.getInstance().getFloat( MoGoConfig.BRAKE_ACCELERATION_THRESHOLD, -2.5f ) ) { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/TakeOverView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/TakeOverView.kt index adfc3f1438..e65679db5c 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/TakeOverView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/TakeOverView.kt @@ -239,51 +239,64 @@ class TakeOverView @JvmOverloads constructor( * M1平行驾驶异常提示 */ private fun showM1ParallelDrivingWarning(poiType: String,content: String,tts: String){ - //消息盒子提示 - saveMsgBox( - MsgBoxBean( - MsgBoxType.V2X, V2XMsg(poiType, content, tts) + //异常提醒均在开启美化模式后不弹出、不语音提示 + if(!FunctionBuildConfig.isDemoMode && FunctionBuildConfig.isTakeoverRemind){ + //消息盒子提示 + saveMsgBox( + MsgBoxBean( + MsgBoxType.V2X, V2XMsg(poiType, content, tts) + ) ) - ) - //提示音播报 - if(canSound){ - val countDownTimer = object : CountDownTimer(3000, 1000){ - override fun onTick(p0: Long) { - try { - SoundPoolUtils.getSoundPool().playSoundWithRedId(context,R.raw.weak_net_tips) - }catch (e: Exception){ - e.printStackTrace() + //提示音播报 + if(canSound){ + val countDownTimer = object : CountDownTimer(3000, 1000){ + override fun onTick(p0: Long) { + try { + SoundPoolUtils.getSoundPool().playSoundWithRedId(context,R.raw.weak_net_tips) + }catch (e: Exception){ + e.printStackTrace() + } } - } - override fun onFinish() { - canSound = true - } + override fun onFinish() { + canSound = true + } + } + countDownTimer.start() + canSound = false } - countDownTimer.start() - canSound = false } } private fun showParallelDrivingWarning(poiType: String,content: String,tts: String){ - CallerHmiManager.warningV2X(poiType, content, tts, - object : IMoGoWarningStatusListener { - override fun onShow() { - takeOver = true - ThreadUtils.runOnUiThread{ - visibility = View.VISIBLE + if(!FunctionBuildConfig.isDemoMode && FunctionBuildConfig.isTakeoverRemind){ + //异常提醒均在开启美化模式后不弹出、不语音提示 + //消息盒子提示 + saveMsgBox( + MsgBoxBean( + MsgBoxType.V2X, V2XMsg(poiType, content, tts) + ) + ) + //接管图像+语音提示 + CallerHmiManager.warningV2X(poiType, content, tts, + object : IMoGoWarningStatusListener { + override fun onShow() { + takeOver = true + ThreadUtils.runOnUiThread{ + visibility = View.VISIBLE + } } - } - override fun onDismiss() { - takeOver = false - ThreadUtils.runOnUiThread{ - visibility = View.GONE + override fun onDismiss() { + takeOver = false + ThreadUtils.runOnUiThread{ + visibility = View.GONE + } } } - } - ,isFromObu = false) + ,isFromObu = false) + } } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/DriverMonitorView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/DriverMonitorView.kt index bb612f1cc8..99b5e682d6 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/DriverMonitorView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/DriverMonitorView.kt @@ -5,9 +5,9 @@ import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater import com.mogo.cloud.live.manager.LiveStreamManagerImpl -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.cloud.trafficlive.api.ITrafficCarLiveCallBack import com.mogo.cloud.trafficlive.api.MoGoAiCloudTrafficLive +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.Logger @@ -107,7 +107,7 @@ class DriverMonitorView : // 这里知只是了初始化下直播SDK,防止直接调用观看直播时候还未登录问题 LiveStreamManagerImpl.getInstance( context.applicationContext as Application?, - MoGoAiCloudClientConfig.getInstance().sn, + SharedPrefsMgr.getInstance().sn, false ) } ?: let { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ParallelDriveView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ParallelDriveView.kt index f835356bef..b6fd4aa4a3 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ParallelDriveView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ParallelDriveView.kt @@ -11,7 +11,7 @@ import android.view.animation.LinearInterpolator import android.widget.ImageView import android.widget.TextView import androidx.constraintlayout.widget.ConstraintLayout -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.voice.AIAssist import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.api.autopilot.IMoGoParallelDrivingActionsListener @@ -26,7 +26,6 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.ToastUtils -import com.zhjt.mogo.adas.data.bean.UnableLaunchReason import mogo.yycp.paralleldriving.protocol.ParallelDrivingRequest.ParallelRequest import mogo.yycp.paralleldriving.protocol.ParallelTaskProcessNoticeOuterClass @@ -366,7 +365,7 @@ class ParallelDriveView @JvmOverloads constructor( } private fun reqParaDrive() { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn val parallelRequest = ParallelRequest.newBuilder() .setSn(sn) .setType(2)// 2:鹰眼请求 @@ -379,7 +378,7 @@ class ParallelDriveView @JvmOverloads constructor( } private fun cancelParaDrive() { - val sn = MoGoAiCloudClientConfig.getInstance().sn + val sn = SharedPrefsMgr.getInstance().sn val parallelRequest = ParallelRequest.newBuilder() .setSn(sn) .setType(2)// 2:鹰眼请求 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/RomaPassengerView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/RomaPassengerView.kt index bcf61a42a9..354eb0ef1c 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/RomaPassengerView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/RomaPassengerView.kt @@ -34,6 +34,8 @@ class RomaPassengerView @JvmOverloads constructor( private var openRes: Int = 0 private var normalRes: Int = 0 + private var controlVisible = true + init { if(DeviceUtils.isLenovoModel() || DeviceUtils.isEB5Model()){ LayoutInflater.from(context).inflate(R.layout.view_roma_passenger_bg, this, true) @@ -71,6 +73,9 @@ class RomaPassengerView @JvmOverloads constructor( override fun romaViewStatus(status: Boolean) { ThreadUtils.runOnUiThread { if(status){ + if(!controlVisible){ + return@runOnUiThread + } this.visibility = View.VISIBLE } else { this.visibility = View.GONE @@ -82,6 +87,7 @@ class RomaPassengerView @JvmOverloads constructor( * 外部调用visible时进行判断 */ fun updateVisible(visible: Boolean){ + controlVisible = visible if(visible){ if(CallerMapRomaListener.isRange()){ this.visibility = View.VISIBLE diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/xiaozhi/XiaoZhiStateManager.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/xiaozhi/XiaoZhiStateManager.kt new file mode 100644 index 0000000000..a01bdfbbe7 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/xiaozhi/XiaoZhiStateManager.kt @@ -0,0 +1,35 @@ +package com.mogo.eagle.core.function.hmi.xiaozhi + +import android.content.Context +import com.mogo.eagle.core.function.api.hmi.xiaozhi.IXiaoZhiStateManager +import com.mogo.eagle.core.function.api.hmi.xiaozhi.event.Event +import com.mogo.eagle.core.function.api.hmi.xiaozhi.listener.OnXiaoZhiStateChangeListener +import com.mogo.eagle.core.function.api.hmi.xiaozhi.state.State +import java.util.concurrent.CopyOnWriteArrayList + +internal class XiaoZhiStateManager: IXiaoZhiStateManager { + + private val listeners by lazy { CopyOnWriteArrayList() } + + override fun init(context: Context?) {} + + override fun addListener(listener: OnXiaoZhiStateChangeListener) { + if (listeners.contains(listener)) { + return + } + listeners.add(listener) + } + + override fun removeListener(listener: OnXiaoZhiStateChangeListener) { + if (!listeners.contains(listener)) { + return + } + listeners.remove(listener) + } + + override fun notify(event: Event, state: State) { + listeners.forEach { + it.onChanged(event, state) + } + } +} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java index 5c98f74e04..aaa5e660f9 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java @@ -35,11 +35,11 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { return; } start = System.currentTimeMillis(); + //启动业务 + CallerStartUpManager.initStageOne(); // Crash 日志收集 initCrashConfig(); initLogConfig(); - //启动业务 - CallerStartUpManager.initStageOne(); initTipToast(); initModules(); @@ -77,12 +77,12 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); + AbsMogoApplication.sApp = this; ThreadOptInitializer.init(); /*如果是主进程**/ // if (ProcessUtils.isMainProcess(this)) { AppLaunchTimeUtils.beginTimeCalculate(AppLaunchTimeUtils.COLD_START); // } BoostMultiDex.install(base); - AbsMogoApplication.sApp = this; } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/PassengerLauncherActivity.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/PassengerLauncherActivity.java index 41d252124d..62d4d09530 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/PassengerLauncherActivity.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/PassengerLauncherActivity.java @@ -25,7 +25,7 @@ import com.mogo.eagle.core.function.call.setting.CallerSkinModeListenerManager; import com.mogo.eagle.core.function.hmi.R; import com.mogo.eagle.core.function.main.moujie.BluetoothMonitorReceiver; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; +import com.mogo.commons.storage.SharedPrefsMgr; import com.rousetime.android_startup.model.CostTimesModel; import com.zhjt.service.chain.ChainLog; @@ -199,7 +199,7 @@ public class PassengerLauncherActivity extends MainActivity implements IMogoInte isConnectedMethod.setAccessible(true); // boolean isConnected = (boolean) isConnectedMethod.invoke(device, (Object[]) null); if (device.getName().equals("MINI_KEYBOARD")) { - SharedPrefsMgr.getInstance(getContext()).putString("BLUETOOTH", device.getName()); + SharedPrefsMgr.getInstance().putString("BLUETOOTH", device.getName()); } } catch (NoSuchMethodException e) { e.printStackTrace(); diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/moujie/BluetoothMonitorReceiver.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/moujie/BluetoothMonitorReceiver.java index a968560284..fe838ac6f0 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/moujie/BluetoothMonitorReceiver.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/moujie/BluetoothMonitorReceiver.java @@ -5,10 +5,6 @@ import android.bluetooth.BluetoothDevice; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; -import android.util.Log; -import android.widget.Toast; - -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; import org.greenrobot.eventbus.EventBus; @@ -45,11 +41,11 @@ public class BluetoothMonitorReceiver extends BroadcastReceiver { case BluetoothDevice.ACTION_ACL_CONNECTED: // Toast.makeText(context, "蓝牙设备已连接", Toast.LENGTH_SHORT).show(); -// SharedPrefsMgr.getInstance(context).putBoolean("BLUETOOTH", true); +// SharedPrefsMgr.getInstance().putBoolean("BLUETOOTH", true); break; case BluetoothDevice.ACTION_ACL_DISCONNECTED: -// SharedPrefsMgr.getInstance(context).putBoolean("BLUETOOTH", false); +// SharedPrefsMgr.getInstance().putBoolean("BLUETOOTH", false); // Toast.makeText(context, "蓝牙设备已断开", Toast.LENGTH_SHORT).show(); EventBus.getDefault().post(new ConnectBluetoothEvent()); break; diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/radio_button_normal_background_right.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/radio_button_normal_background_right.xml index cacee166bb..888b1a143c 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/radio_button_normal_background_right.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/radio_button_normal_background_right.xml @@ -1,7 +1,7 @@ - + diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/setting_toggle_button_background.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/setting_toggle_button_background.xml index 6dda1e9b28..0251939415 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/setting_toggle_button_background.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/setting_toggle_button_background.xml @@ -1,7 +1,7 @@ - + diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/traffic_light_bg_taxi_p.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/traffic_light_bg_taxi_p.xml index 52301a645b..6a76b42c41 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/traffic_light_bg_taxi_p.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/traffic_light_bg_taxi_p.xml @@ -2,6 +2,6 @@ - + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/turn_light_background_taxi_p.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/turn_light_background_taxi_p.xml index 282410a3ec..cbbeee5a59 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/turn_light_background_taxi_p.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/turn_light_background_taxi_p.xml @@ -1,5 +1,5 @@ - + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_passenger_msg_box_v2x.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_passenger_msg_box_v2x.xml index d521d54f62..be936c2d1c 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_passenger_msg_box_v2x.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_passenger_msg_box_v2x.xml @@ -4,7 +4,7 @@ android:layout_width="@dimen/dp_600" android:layout_height="@dimen/dp_138" xmlns:app="http://schemas.android.com/apk/res-auto" - android:background="#FFCEDCF7" + android:background="#8CF5FAFF" app:roundLayoutRadius="24dp" android:layout_marginTop="16dp" android:layout_marginBottom="16dp" diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_passenger_msg_box_voice.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_passenger_msg_box_voice.xml index 99c1aab2e6..af9bfb6567 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_passenger_msg_box_voice.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_passenger_msg_box_voice.xml @@ -21,7 +21,7 @@ android:layout_marginBottom="@dimen/dp_54" android:layout_marginStart="@dimen/dp_49" android:layout_marginEnd="@dimen/dp_49" - android:maxWidth="@dimen/dp_502" + android:maxWidth="@dimen/dp_462" android:textStyle="bold" android:gravity="start" app:layout_constraintStart_toStartOf="parent" @@ -40,7 +40,7 @@ android:layout_marginBottom="@dimen/dp_54" android:layout_marginStart="@dimen/dp_49" android:layout_marginEnd="@dimen/dp_49" - android:maxWidth="@dimen/dp_502" + android:maxWidth="@dimen/dp_462" android:textStyle="bold" android:gravity="start" app:layout_constraintStart_toStartOf="parent" diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml index 92488dd246..3824188819 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml @@ -286,6 +286,92 @@ + + + + + + + + + + + + + + + + + + + + + - - + + app:layout_constraintLeft_toLeftOf="@id/vehicleGuideLine" + app:layout_constraintRight_toRightOf="parent" + app:layout_constraintTop_toBottomOf="@id/tvVehicleTitle" /> + app:layout_constraintTop_toBottomOf="@id/scRainMode" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + app:layout_constraintTop_toBottomOf="@id/rgFusionMode"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + app:layout_constraintTop_toBottomOf="@+id/rgPullTime"> + + + diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt index dc042c5a1d..55f6691d06 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt @@ -7,6 +7,7 @@ import androidx.lifecycle.* import androidx.lifecycle.Lifecycle.Event import androidx.lifecycle.Lifecycle.Event.ON_DESTROY import com.alibaba.android.arouter.facade.annotation.Route +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.constants.MogoServicePaths import com.mogo.eagle.core.data.map.* import com.mogo.eagle.core.function.angle.scenes.CrossRoad @@ -18,6 +19,7 @@ import com.mogo.eagle.core.function.call.autopilot.* import com.mogo.eagle.core.function.call.map.* import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager.OnRoadListener import com.mogo.eagle.core.utilcode.kotlin.* +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.zhidaoauto.map.data.road.StopLine import com.zhidaoauto.map.sdk.open.tools.* import kotlinx.coroutines.* @@ -222,7 +224,7 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider { Log.d(TAG, "--- doRealVisualAngleChange --- 2 ---") delay(delay) Log.d(TAG, "--- doRealVisualAngleChange --- 3 ---") - doChangeAngle(Record(target, triggerTime = triggerTime)) + doChangeAngle(Record(target, triggerTime = triggerTime), displayed) }.also { itx -> itx.invokeOnCompletion { if (it is CancellationException) { @@ -247,33 +249,42 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider { } } Log.d(TAG, "--- doRealVisualAngleChange --- 10 ---") - doChangeAngle(Record(target, triggerTime = triggerTime)) + doChangeAngle(Record(target, triggerTime = triggerTime), displayed) } } } - private fun doChangeAngle(record: Record) { - val angle = record.target.angle + private fun doChangeAngle(target: Record, previous: Record? = null) { + val angle = target.target.angle CallerMapUIServiceManager.getMapUIController()?.also { - Log.d(TAG, "--- doChangeAngle ---: ${record.target}") - if (record.target !is Default) { - record.isDisplay = true + Log.d(TAG, "--- doChangeAngle ---: ${target.target}") + if (target.target !is Default) { + target.isDisplay = true synchronized(queue) { - queue += record + queue += target } } - if (record.target is Default && roadEventFlag) { + if (target.target is Default && roadEventFlag) { roadEventFlag = false it.setLockMode(true) } - if (record.target is RoadEvent) { - it.setLockMode(false) - roadEventFlag = true - scope.launch { - it.animateTo(0.0 ,0.0,1f, - record.target.poi_angle.toFloat(),11.5f,28f,3000,record.target.isGps) + if (target.target is RoadEvent) { + //taxi乘客屏,使用的新地图效果,切了视角也看不到 + if (!AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) { + roadEventFlag = true + it.setLockMode(false) + scope.launch { + it.animateTo(0.0 ,0.0,1f, - target.target.poi_angle.toFloat(),11.5f,28f,3000,target.target.isGps) + } } - } else { + if (target.target is Default && previous != null && (previous.target is RoadEvent)) { + Log.d(TAG, "==== doChangeAngle === 1 ===") + if (AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) { + Log.d(TAG, "==== doChangeAngle === 2 ===") + return + } + } it.changeMapVisualAngle(angle, null) } } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/ai/net/AiCloudIdentifyNetWorkModel.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/ai/net/AiCloudIdentifyNetWorkModel.kt index fad2bd1230..f11544d6f0 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/ai/net/AiCloudIdentifyNetWorkModel.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/ai/net/AiCloudIdentifyNetWorkModel.kt @@ -1,7 +1,7 @@ package com.mogo.eagle.core.function.business.ai.net -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.constants.HostConst.getEagleHost +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.BaseResponse import com.mogo.eagle.core.function.business.ai.AiCloudIdentifyDataManager.Companion.END_METRE import com.mogo.eagle.core.function.business.ai.AiCloudIdentifyDataManager.Companion.START_METRE @@ -32,7 +32,7 @@ class AiCloudIdentifyNetWorkModel private constructor() { loader { apiCall { val map = mutableMapOf() - map["sn"] = MoGoAiCloudClientConfig.getInstance().sn + map["sn"] = SharedPrefsMgr.getInstance().sn map["status"] = dataReceive map["startMetre"] = START_METRE map["endMetre"] = END_METRE diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/collect/MoGoMapDataCollectProvider.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/collect/MoGoMapDataCollectProvider.kt index bc88adddbd..bd4faebe6b 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/collect/MoGoMapDataCollectProvider.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/collect/MoGoMapDataCollectProvider.kt @@ -5,7 +5,7 @@ import android.text.TextUtils import com.alibaba.android.arouter.facade.annotation.Route import com.mogo.cloud.passport.IMoGoTokenCallback import com.mogo.cloud.passport.MoGoAiCloudClient -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.constants.MogoServicePaths import com.mogo.eagle.core.data.map.MogoLocation @@ -67,7 +67,7 @@ class MoGoMapDataCollectProvider : IMoGoMapDataCollectProvider, OnTaskListener, } }) executor.get()?.setOnTaskListener(this) - val carSn = MoGoAiCloudClientConfig.getInstance().sn + val carSn = SharedPrefsMgr.getInstance().sn if (!TextUtils.isEmpty(carSn)) { executor.get()?.setCarSn(carSn) } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackerSourceFilterHelper.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackerSourceFilterHelper.kt index 2afb97b82f..13c4c0f747 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackerSourceFilterHelper.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackerSourceFilterHelper.kt @@ -4,6 +4,8 @@ import android.annotation.SuppressLint import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.enums.TrafficTypeEnum import com.mogo.eagle.core.function.call.biz.CallerFuncBizListenerManager +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isPassenger +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isTaxi import mogo.telematics.pad.MessagePad.* object TrackerSourceFilterHelper { @@ -41,6 +43,11 @@ object TrackerSourceFilterHelper { } fun getDefaultColor(data: TrackedObject): String { + if (isTaxi(FunctionBuildConfig.appIdentityMode) && + isPassenger(FunctionBuildConfig.appIdentityMode) + ) { + return "" + } var color = "" if (!FunctionBuildConfig.isDrawUnknownIdentifyData && data.type == TrafficTypeEnum.TYPE_TRAFFIC_ID_WEI_ZHI.type @@ -72,6 +79,13 @@ object TrackerSourceFilterHelper { } } + // pnc预警 + WarningHelper.getPncColor(data.uuid.toString()) { + if (it.isNotBlank()) { + color = it + } + } + //僵尸车 if (data.addAttribute == AdditionalAttribute.ATTR_ZOMBIE) { color = "#7A8499FF" @@ -82,12 +96,6 @@ object TrackerSourceFilterHelper { CallerFuncBizListenerManager.invokeAttrZombieAnalyticsEvent() } - // pnc预警 - WarningHelper.getPncColor(data.uuid.toString()) { - if (it.isNotBlank()) { - color = it - } - } return color } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/routeoverlay/RouteOverlayDrawer.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/routeoverlay/RouteOverlayDrawer.java index e0f1da6702..1e461cdb7e 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/routeoverlay/RouteOverlayDrawer.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/routeoverlay/RouteOverlayDrawer.java @@ -8,15 +8,23 @@ import android.os.Handler; import android.os.HandlerThread; import android.util.Log; import androidx.core.util.Pools; + +import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.map.MogoLatLng; import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84ListenerManager; import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; import com.mogo.eagle.core.utilcode.util.DrivingDirectionUtils; import com.mogo.map.overlay.IMoGoOverlayManager; import com.mogo.map.overlay.core.Level; import com.mogo.map.overlay.line.Polyline; +import com.zhidaoauto.map.sdk.open.tools.MapTools; + +import java.util.ArrayList; import java.util.LinkedList; import java.util.List; + +import kotlin.Pair; import mogo.telematics.pad.MessagePad; public class RouteOverlayDrawer { @@ -32,6 +40,9 @@ public class RouteOverlayDrawer { private static final int COLOR_LIGHT = Color.parseColor("#BAEBF5"); + //用于taxi乘客屏渐变颜色集合 + private static List colors = null; + private RouteOverlayDrawer() { // 渐变色 mogoOverlayManager = CallerMapUIServiceManager.INSTANCE.getOverlayManager(); @@ -110,7 +121,25 @@ public class RouteOverlayDrawer { isExcept = true; return; } - RouteStrategy.INSTANCE.start(); + boolean isColorfulStrategy = !AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) || !AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode); + if (isColorfulStrategy) { + RouteStrategy.INSTANCE.start(); + } else { + if (colors == null) { + ArrayList> temps = new ArrayList<>(); + temps.add(new Pair<>(0, 51)); + temps.add(new Pair<>(10, 102)); + temps.add(new Pair<>(30, 51)); + temps.add(new Pair<>(100, 0)); + List alphas = MapTools.INSTANCE.getColorAlpha(temps); + if (alphas != null && !alphas.isEmpty()) { + colors = new ArrayList<>(); + for (int i : alphas) { + colors.add(Color.argb(i, 48,203,251)); + } + } + } + } for (int i = 0; i < total; i++) { MessagePad.TrajectoryPoint route = null; try { @@ -137,7 +166,9 @@ public class RouteOverlayDrawer { acquire.acc = route.getAcceleration(); acquire.speed = route.getVelocity(); pps.add(acquire); - RouteStrategy.INSTANCE.check(route.getVelocity(), route.getAcceleration(), routeList.size()); + if (isColorfulStrategy) { + RouteStrategy.INSTANCE.check(route.getVelocity(), route.getAcceleration(), routeList.size()); + } } double lon = CallerChassisLocationWGS84ListenerManager.INSTANCE.getChassisLocationWGS84().getLongitude(); double lat = CallerChassisLocationWGS84ListenerManager.INSTANCE.getChassisLocationWGS84().getLatitude(); @@ -155,7 +186,9 @@ public class RouteOverlayDrawer { lat = CallerChassisLocationWGS84ListenerManager.INSTANCE.getChassisLocationWGS84().getLatitude(); long angle = isPointOnCarFront(lon, lat, bearing, first.lon, first.lat); if (angle >= 90) { - RouteStrategy.INSTANCE.remove(first.acc); + if (isColorfulStrategy) { + RouteStrategy.INSTANCE.remove(first.acc); + } pools.release(first); points.poll(); } @@ -173,10 +206,7 @@ public class RouteOverlayDrawer { self.lon = lon; } points.addFirst(self); - RouteStrategy.INSTANCE.end(); - Strategy strategy = RouteStrategy.INSTANCE.getStrategy(); - List colors = strategy.getColors(); - boolean isLightOn = strategy instanceof ColorfulStrategy && ((ColorfulStrategy) strategy).isLightOn(); + Polyline.Options.Builder builder; if (mPolylineOptions == null) { builder = new Polyline.Options.Builder("router_overlay", Level.GUIDE_ROUTE_LINE) @@ -186,15 +216,24 @@ public class RouteOverlayDrawer { } else { builder = mPolylineOptions.builder(); } - builder.points(points); - builder.colors(colors); - if (isLightOn) { - builder.setLightOn(true); + + if (isColorfulStrategy) { + RouteStrategy.INSTANCE.end(); + Strategy strategy = RouteStrategy.INSTANCE.getStrategy(); + List colors = strategy.getColors(); + boolean isLightOn = strategy instanceof ColorfulStrategy && ((ColorfulStrategy) strategy).isLightOn(); + builder.colors(colors); + builder.setLightOn(isLightOn); builder.setLightColor(COLOR_LIGHT); builder.setLightSpeed(0.5f); - } else { - builder.setLightOn(false); + } else { + if (colors != null && !colors.isEmpty()) { + builder.colors(colors); + builder.setIsGradient(true); + builder.setLightOn(false); + } } + builder.points(points); builder.setVisible(true); Polyline.Options options = builder.build(); if (mPolylineOptions == null) { diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt index 4a663b8a58..fdc6dea1bc 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt @@ -604,7 +604,7 @@ class OverMapView @JvmOverloads constructor( * 显示V2X事件的Marker */ private fun showV2XEventMarkers(v2XEventData: List?) { - if (v2XEventData == null || v2XEventData.isEmpty()) return + if (v2XEventData.isNullOrEmpty()) return clearV2XMarkers() val markerOptionsList = ArrayList() for (v2xEvent in v2XEventData) { diff --git a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt index dc23edb3eb..83bd1a85c3 100644 --- a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt +++ b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt @@ -13,11 +13,11 @@ import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.cloud.passport.location.ICurrentLocation import com.mogo.cloud.passport.location.SimpleLocation import com.mogo.cloud.socket.SocketBuildConfig -import com.mogo.commons.AbsMogoApplication import com.mogo.commons.constants.SharedPrefsConstants import com.mogo.commons.debug.DebugConfig import com.mogo.commons.module.status.MogoStatusManager import com.mogo.commons.network.NetConfigUtils +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.utils.MogoAnalyticUtils import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_CLOUD_INIT @@ -38,8 +38,11 @@ import com.mogo.eagle.core.function.startup.stageone.secret.IPassportSecret import com.mogo.eagle.core.function.startup.stageone.secret.PassPortSecret import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_MAIN -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr -import com.mogo.eagle.core.utilcode.util.* +import com.mogo.eagle.core.utilcode.util.AppUtils +import com.mogo.eagle.core.utilcode.util.DeviceUtils +import com.mogo.eagle.core.utilcode.util.ProcessUtils +import com.mogo.eagle.core.utilcode.util.ThreadPoolService +import com.mogo.eagle.core.utilcode.util.TimeUtils import com.rousetime.android_startup.AndroidStartup import com.zhjt.service.chain.ChainLog import kotlin.properties.Delegates @@ -109,10 +112,13 @@ class HttpDnsStartUp : AndroidStartup() { when (DebugConfig.getNetMode()) { DebugConfig.NET_MODE_DEV -> clientConfig.netMode = MoGoAiCloudClientConfig.HTTP_DNS_ENV_DEV + DebugConfig.NET_MODE_QA -> clientConfig.netMode = MoGoAiCloudClientConfig.HTTP_DNS_ENV_QA + DebugConfig.NET_MODE_DEMO -> clientConfig.netMode = MoGoAiCloudClientConfig.HTTP_DNS_ENV_DEMO + else -> clientConfig.netMode = MoGoAiCloudClientConfig.HTTP_DNS_ENV_RELEASE } // 设置是否是第三APP登录 @@ -217,6 +223,8 @@ class HttpDnsStartUp : AndroidStartup() { override fun onTokenGot(token: String, sn: String) { clientConfig.token = token clientConfig.sn = sn + SharedPrefsMgr.getInstance().putToken(token) + SharedPrefsMgr.getInstance().putSn(sn) // 由于存在token过期问题,在更新后会回调至此处,增加二次判定 if (!gotToken) { CallerLogger.d("$M_MAIN$TAG", "onTokenGot token : $token , sn :$sn") @@ -255,11 +263,11 @@ class HttpDnsStartUp : AndroidStartup() { if (FunctionBuildConfig.isSecure) { context?.let { val authStatus = - SharedPrefsMgr.getInstance(it) + SharedPrefsMgr.getInstance() .getBoolean("securityKey-${DebugConfig.getNetMode()}", false) if (authStatus) { // clientConfig设置auth值,并带入header - clientConfig.authPubKey = SharedPrefsMgr.getInstance(it) + clientConfig.authPubKey = SharedPrefsMgr.getInstance() .getString("securityKey-${DebugConfig.getNetMode()}", "") return@let } @@ -280,12 +288,12 @@ class HttpDnsStartUp : AndroidStartup() { "onSuccess securityKey:$securityKey , thread:${Thread.currentThread().name}" ) clientConfig.securityKey = securityKey - SharedPrefsMgr.getInstance(it) + SharedPrefsMgr.getInstance() .putString( "securityKey-${DebugConfig.getNetMode()}", securityKey ) - SharedPrefsMgr.getInstance(it) + SharedPrefsMgr.getInstance() .putBoolean("securityKey-${DebugConfig.getNetMode()}", true) } @@ -409,20 +417,11 @@ class HttpDnsStartUp : AndroidStartup() { private fun getDefaultSimpleLocation(): SimpleLocation { val ciyCode = - SharedPrefsMgr.getInstance( - AbsMogoApplication.getApp() - ) - .getString(SharedPrefsConstants.LOCATION_CITY_CODE) + SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.LOCATION_CITY_CODE) val latitude = - SharedPrefsMgr.getInstance( - AbsMogoApplication.getApp() - ) - .getString(SharedPrefsConstants.LOCATION_LATITUDE) + SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.LOCATION_LATITUDE) val longitude = - SharedPrefsMgr.getInstance( - AbsMogoApplication.getApp() - ) - .getString(SharedPrefsConstants.LOCATION_LONGITUDE) + SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.LOCATION_LONGITUDE) return try { SimpleLocation( ciyCode, latitude.toDouble(), longitude.toDouble() diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt index fe245caf17..77412a2db3 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt @@ -22,6 +22,17 @@ object FunctionBuildConfig { @JvmField var isDemoMode = false + /** + * 6.2.6版本增加接管提醒开关 + * 控制掉自驾、接管类的消息是否展示(包括系统信息接管提醒、fm紧急停车提醒、平行驾驶接管提醒) + * 开关开启时,展示以上接管提醒 + * 开关关闭时,不展示以上接管提醒 + * 默认开启 + */ + @Volatile + @JvmField + var isTakeoverRemind = true + /** * 是否是雨天模式 * 默认关闭 @@ -186,13 +197,13 @@ object FunctionBuildConfig { var isDrawPointCloudData = false /** - * 自车是否展示光圈 + * 自车是否展示光圈(6.2.6版本改为默认展示) * true - 展示 * false - 不展示 */ @Volatile @JvmField - var isDisplayAnimEnable = false + var isDisplayAnimEnable = true /** * 地图是否忽略判断条件直接绘制工控机引导线数据&全局路径规划 @@ -229,7 +240,7 @@ object FunctionBuildConfig { var isReportWarning = true /** - * 是否展示被动触发的录包弹窗(自动驾驶下出现问题触发的录包) + * 是否展示录包弹窗(主动+被动),6.2.6版本之前只控制是否展示被动录包 */ @Volatile @JvmField diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumNew.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumNew.kt index 1b75421eb7..7706c91269 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumNew.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumNew.kt @@ -1,6 +1,8 @@ package com.mogo.eagle.core.data.enums import com.mogo.eagle.core.data.R +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils /** @@ -516,37 +518,37 @@ enum class EventTypeEnumNew( TYPE_UNABLE_TAKEOVER( "UNABLE_TAKEOVER", "平行驾驶无法接管", - "远程无法介入,注意随时接管", + "远程无法介入,注意随时接管!可尝试重启app", R.drawable.icon_warning_take_over, - "远程无法介入,注意随时接管", - "远程无法介入,注意随时接管" + "远程无法介入,注意随时接管!可尝试重启app", + "远程无法介入,注意随时接管!可尝试重启app" ), //同步异常结束 TYPE_EXCEPTION_EXIT_SYNC( "EXCEPTION_EXIT_SYNC", "同步异常结束", - "远程介入失败,注意随时接管", + "远程介入失败,注意随时接管!", R.drawable.icon_warning_take_over, - "远程介入失败,注意随时接管", - "远程介入失败,注意随时接管" + "远程介入失败,注意随时接管!", + "远程介入失败,注意随时接管!" ), //异常请人工驾驶 TYPE_PARALLEL_EXCEPTION_MANUAL_DRIVING( "PARALLEL_EXCEPTION_MANUAL_DRIVING", "异常请人工驾驶", - "即将靠边停车,注意随时接管", + "即将靠边停车,注意随时接管!", R.drawable.icon_warning_take_over, - "即将靠边停车,注意随时接管", - "即将靠边停车,注意随时接管" + "即将靠边停车,注意随时接管!", + "即将靠边停车,注意随时接管!" ), //平行驾驶异常结束 TYPE_EXCEPTION_EXIT_PARALLEL_DRIVING( "EXCEPTION_EXIT_PARALLEL_DRIVING", "平行驾驶异常结束", - "可能应急停车,注意随时接管", + "可能应急停车,注意随时接管!", R.drawable.icon_warning_take_over, - "可能应急停车,注意随时接管", - "可能应急停车,注意随时接管" + "可能应急停车,注意随时接管!", + "可能应急停车,注意随时接管!" ), TYPE_VIP_IDENTIFICATION_PASS("20022", "VIP通行", "", R.drawable.icon_warning_v2x_vip_turn_light, "VIP车辆优先通行,已为您变为绿灯", "VIP车辆优先通行,已为您变为绿灯"), @@ -735,9 +737,15 @@ enum class EventTypeEnumNew( FOURS_ICE.poiType -> R.raw.v2x_daolujiebing FOURS_PONDING.poiType -> R.raw.v2x_daolujishui GHOST_PROBE.poiType -> R.raw.v2x_guzhangqiuzhu - TYPE_SOCKET_ROAD_SHIGONG.poiType -> R.raw.v2x_shigong_warning + TYPE_SOCKET_ROAD_SHIGONG.poiType -> R.raw.v2x_shigong_warning// 施工气泡 TYPE_SOCKET_ROAD_JINGZHI.poiType -> R.raw.v2x_zhangai - TYPE_SOCKET_ROAD_SHIGU.poiType -> R.raw.v2x_shigu_sanjiaopai + TYPE_SOCKET_ROAD_SHIGU.poiType -> { + if (AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) { + R.raw.v2x_shigu_sanjiaopai + } else { + R.raw.taxi_sanjiaopai + } + } TYPE_SOCKET_ROAD_CONGESTION.poiType -> R.raw.v2x_yongdu else -> 0 } 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 685caa9ec0..d58e416597 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 @@ -1,6 +1,8 @@ package com.mogo.eagle.core.data.enums import com.mogo.eagle.core.data.R +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils /** @@ -99,6 +101,27 @@ enum class TrafficTypeEnum( R.raw.v2x_shigong_warning, R.raw.v2x_shigong_warning, R.raw.v2x_shigong_warning + ), + TYPE_TRAFFIC_ID_LUCE_TA_CHE( + 103, + "路侧他车", + R.raw.lucexiaoche, + R.raw.lucexiaoche, + R.raw.lucexiaoche + ), + TYPE_TRAFFIC_ID_LUCE_BUS( + 106, + "路侧大巴", + R.raw.lucedaba, + R.raw.lucedaba, + R.raw.lucedaba + ), + TYPE_TRAFFIC_ID_LUCE_TRUCK( + 108, + "路侧卡车", + R.raw.lucedaba, + R.raw.lucedaba, + R.raw.lucedaba ); companion object { @@ -118,6 +141,80 @@ enum class TrafficTypeEnum( else -> TYPE_TRAFFIC_ID_WEI_ZHI } } + + @JvmStatic + fun getMarker3DRes(type: Int): Int { + // Taxi和Bus使用不同的模型 + if (AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) { + return when (type) { + TYPE_TRAFFIC_ID_WEI_ZHI.type -> R.raw.traffic_xiankuang + TYPE_TRAFFIC_ID_PEOPLE.type -> R.raw.taxi_traffic_people + TYPE_TRAFFIC_ID_BICYCLE.type -> R.raw.taxi_traffic_zixingche + TYPE_TRAFFIC_ID_TA_CHE.type -> R.raw.taxi_traffic_tachexiaoche + TYPE_TRAFFIC_ID_MOTO.type -> R.raw.taxi_traffic_motuoche + TYPE_TRAFFIC_ID_BUS.type -> R.raw.taxi_traffic_daba + TYPE_TRAFFIC_ID_TRUCK.type -> R.raw.taxi_traffic_daba + TYPE_TRAFFIC_ID_CAMERA.type -> R.raw.shexiangtou + TYPE_TRAFFIC_ID_SPECIAL_VEHICLE.type -> R.raw.special_vehicle + TYPE_TRAFFIC_ID_DAO_LU_SHI_GONG.type -> R.raw.v2x_shigong_warning + TYPE_TRAFFIC_ID_LUCE_TA_CHE.type -> R.raw.lucexiaoche + TYPE_TRAFFIC_ID_LUCE_BUS.type -> R.raw.lucedaba + TYPE_TRAFFIC_ID_LUCE_TRUCK.type -> R.raw.lucedaba + else -> R.raw.traffic_xiankuang + } + } else { + return when (type) { + TYPE_TRAFFIC_ID_WEI_ZHI.type -> R.raw.traffic_xiankuang + TYPE_TRAFFIC_ID_PEOPLE.type -> R.raw.xingren + TYPE_TRAFFIC_ID_BICYCLE.type -> R.raw.traffic_zixingche_day + TYPE_TRAFFIC_ID_TA_CHE.type -> R.raw.traffic_tachexiaoche_day + TYPE_TRAFFIC_ID_MOTO.type -> R.raw.traffic_motuoche_day + TYPE_TRAFFIC_ID_BUS.type -> R.raw.traffic_daba_day + TYPE_TRAFFIC_ID_TRUCK.type -> R.raw.traffic_daba_day + TYPE_TRAFFIC_ID_CAMERA.type -> R.raw.shexiangtou + TYPE_TRAFFIC_ID_SPECIAL_VEHICLE.type -> R.raw.special_vehicle + TYPE_TRAFFIC_ID_DAO_LU_SHI_GONG.type -> R.raw.v2x_shigong_warning + else -> R.raw.traffic_xiankuang + } + } + } + + @JvmStatic + fun getMarkerNight3DRes(type: Int): Int { + // Taxi和Bus使用不同的模型 + if (AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) { + return when (type) { + TYPE_TRAFFIC_ID_WEI_ZHI.type -> R.raw.traffic_xiankuang + TYPE_TRAFFIC_ID_PEOPLE.type -> R.raw.taxi_traffic_people + TYPE_TRAFFIC_ID_BICYCLE.type -> R.raw.taxi_traffic_zixingche + TYPE_TRAFFIC_ID_TA_CHE.type -> R.raw.taxi_traffic_tachexiaoche + TYPE_TRAFFIC_ID_MOTO.type -> R.raw.taxi_traffic_motuoche + TYPE_TRAFFIC_ID_BUS.type -> R.raw.taxi_traffic_daba + TYPE_TRAFFIC_ID_TRUCK.type -> R.raw.taxi_traffic_daba + TYPE_TRAFFIC_ID_CAMERA.type -> R.raw.shexiangtou + TYPE_TRAFFIC_ID_SPECIAL_VEHICLE.type -> R.raw.special_vehicle + TYPE_TRAFFIC_ID_DAO_LU_SHI_GONG.type -> R.raw.v2x_shigong_warning + TYPE_TRAFFIC_ID_LUCE_TA_CHE.type -> R.raw.lucexiaoche + TYPE_TRAFFIC_ID_LUCE_BUS.type -> R.raw.lucedaba + TYPE_TRAFFIC_ID_LUCE_TRUCK.type -> R.raw.lucedaba + else -> R.raw.traffic_xiankuang + } + } else { + return when (type) { + TYPE_TRAFFIC_ID_WEI_ZHI.type -> R.raw.traffic_xiankuang + TYPE_TRAFFIC_ID_PEOPLE.type -> R.raw.xingren_night + TYPE_TRAFFIC_ID_BICYCLE.type -> R.raw.traffic_zixingche + TYPE_TRAFFIC_ID_TA_CHE.type -> R.raw.traffic_tachexiaoche + TYPE_TRAFFIC_ID_MOTO.type -> R.raw.traffic_motuoche + TYPE_TRAFFIC_ID_BUS.type -> R.raw.traffic_daba + TYPE_TRAFFIC_ID_TRUCK.type -> R.raw.traffic_daba + TYPE_TRAFFIC_ID_CAMERA.type -> R.raw.shexiangtou + TYPE_TRAFFIC_ID_SPECIAL_VEHICLE.type -> R.raw.special_vehicle + TYPE_TRAFFIC_ID_DAO_LU_SHI_GONG.type -> R.raw.v2x_shigong_warning + else -> R.raw.traffic_xiankuang + } + } + } } } \ No newline at end of file diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/multidisplay/TelematicConstant.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/multidisplay/TelematicConstant.kt index e7105b12e0..72b3b57eb3 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/multidisplay/TelematicConstant.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/multidisplay/TelematicConstant.kt @@ -11,6 +11,7 @@ class TelematicConstant { const val SHOW_TRAFFIC_LIGHT = 101 const val HIDE_TRAFFIC_LIGHT = 102 const val CONTROL_PASSENGER_DRIVER_MONITOR = 105 + const val V2N_AI_ROAD_DATA_TO_PASSENGER = 106 // V2N老链路云端下发给司机屏的数据,转发给乘客端 const val OBU_RUNREDLIGHT_WARNING = 200 //闯红灯预警开关 const val OBU_GREENWAVE_WARNING = 201 //绿波通行开关 diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotActionsListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotActionsListener.kt index 096dae25fb..e5e02056e0 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotActionsListener.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotActionsListener.kt @@ -1,5 +1,6 @@ package com.mogo.eagle.core.function.api.autopilot +import com.zhjt.mogo.adas.data.bean.UnableLaunchData import com.zhjt.mogo.adas.data.bean.UnableLaunchReason @@ -8,5 +9,5 @@ import com.zhjt.mogo.adas.data.bean.UnableLaunchReason */ interface IMoGoAutopilotActionsListener { - fun onAutopilotAbility(isAutopilotAbility: Boolean, unableAutopilotReasons: ArrayList?) + fun onAutopilotAbility(isAutopilotAbility: Boolean, unableLaunchData: UnableLaunchData?, unableAutopilotReasons: ArrayList?) } \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoHmiProvider.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoHmiProvider.kt index 62b9dced0e..fc5e2a7874 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoHmiProvider.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoHmiProvider.kt @@ -8,6 +8,9 @@ import com.mogo.eagle.core.data.enums.WarningDirectionEnum import com.mogo.eagle.core.data.map.Infrastructure import com.mogo.eagle.core.data.biz.notice.NoticeNormalData import com.mogo.eagle.core.data.biz.notice.NoticeTrafficStylePushData +import com.mogo.eagle.core.function.api.hmi.xiaozhi.event.Event +import com.mogo.eagle.core.function.api.hmi.xiaozhi.listener.OnXiaoZhiStateChangeListener +import com.mogo.eagle.core.function.api.hmi.xiaozhi.state.State /** * @author xiaoyuzhou @@ -200,4 +203,18 @@ interface IMoGoHmiProvider :IProvider{ */ fun setTaxiUnmanedDriverLineRoutingVerifyMode(isMode: Boolean) + /** + * 添加小智形象展示的状态监听 + */ + fun registerXiaoZhiStatusChangeListener(listener: OnXiaoZhiStateChangeListener) + + /** + * 移除小智形象展示的状态监听 + */ + fun unRegisterXiaoZhiStatusChangedListener(listener: OnXiaoZhiStateChangeListener) + + /** + * 通知小智形象要变化了 + */ + fun notifyXiaoZhiStatusChanged(event: Event, state: State) } \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/IXiaoZhiStateManager.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/IXiaoZhiStateManager.kt new file mode 100644 index 0000000000..7c203a5d54 --- /dev/null +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/IXiaoZhiStateManager.kt @@ -0,0 +1,15 @@ +package com.mogo.eagle.core.function.api.hmi.xiaozhi + +import com.alibaba.android.arouter.facade.template.IProvider +import com.mogo.eagle.core.function.api.hmi.xiaozhi.event.Event +import com.mogo.eagle.core.function.api.hmi.xiaozhi.listener.OnXiaoZhiStateChangeListener +import com.mogo.eagle.core.function.api.hmi.xiaozhi.state.State + +interface IXiaoZhiStateManager : IProvider { + + fun addListener(listener: OnXiaoZhiStateChangeListener) + + fun removeListener(listener: OnXiaoZhiStateChangeListener) + + fun notify(event: Event, state: State) +} \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/event/Event.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/event/Event.kt new file mode 100644 index 0000000000..5052fd4a8e --- /dev/null +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/event/Event.kt @@ -0,0 +1,6 @@ +package com.mogo.eagle.core.function.api.hmi.xiaozhi.event + +enum class Event { + + V2N +} \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/listener/OnXiaoZhiStateChangeListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/listener/OnXiaoZhiStateChangeListener.kt new file mode 100644 index 0000000000..97ae556a32 --- /dev/null +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/listener/OnXiaoZhiStateChangeListener.kt @@ -0,0 +1,9 @@ +package com.mogo.eagle.core.function.api.hmi.xiaozhi.listener + +import com.mogo.eagle.core.function.api.hmi.xiaozhi.event.Event +import com.mogo.eagle.core.function.api.hmi.xiaozhi.state.State + +interface OnXiaoZhiStateChangeListener { + + fun onChanged(event: Event, state: State) +} \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/state/State.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/state/State.kt new file mode 100644 index 0000000000..022a0375e2 --- /dev/null +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/xiaozhi/state/State.kt @@ -0,0 +1,8 @@ +package com.mogo.eagle.core.function.api.hmi.xiaozhi.state + +enum class State { + + START, + DOING, + STOP +} \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotActionsListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotActionsListenerManager.kt index b505754b46..4efbc322c0 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotActionsListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotActionsListenerManager.kt @@ -2,6 +2,7 @@ package com.mogo.eagle.core.function.call.autopilot import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotActionsListener import com.mogo.eagle.core.function.call.base.CallerBase +import com.zhjt.mogo.adas.data.bean.UnableLaunchData import com.zhjt.mogo.adas.data.bean.UnableLaunchReason @@ -11,7 +12,14 @@ import com.zhjt.mogo.adas.data.bean.UnableLaunchReason object CallerAutopilotActionsListenerManager : CallerBase() { @Volatile private var isConnected = false + + @Volatile private var isAutopilotAbility: Boolean = false + + @Volatile + private var unableLaunchData: UnableLaunchData? = null + + @Volatile private var unableAutopilotReasons: ArrayList? = null init { @@ -38,6 +46,15 @@ object CallerAutopilotActionsListenerManager : CallerBase? + isAutopilotAbility: Boolean, + unableLaunchData: UnableLaunchData, + unableAutopilotReasons: ArrayList? ) { if (isConnected) { var isEquals = true @@ -73,6 +92,7 @@ object CallerAutopilotActionsListenerManager : CallerBase() { private var congestionTmp: MogoV2X.RSI_PB? = null private var parkingViolationTmp: MogoV2X.RSM_PB? = null + class V2NCarTypeCheck { + companion object { + + @JvmStatic + fun verifyCarType(): Boolean { +// val appIdentityMode = FunctionBuildConfig.appIdentityMode +// return AppIdentityModeUtils.isTaxi(appIdentityMode) || //Taxi司乘屏 +// AppIdentityModeUtils.isBus(appIdentityMode) || //公交司乘屏 +// AppIdentityModeUtils.isM2(appIdentityMode) || //B2接驳司乘屏 +// AppIdentityModeUtils.isJL(appIdentityMode) //B1接驳司乘屏 + return true + } + } + } + override fun doSomeAfterAddListener(tag: String, listener: IMoGoV2XListener) { if (eventCountTmp >= 0) { - if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { + if (verifyCarType() && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { listener.onV2nGlobalPathEvents(eventCountTmp, constructTmp, triangleTmp, congestionTmp, parkingViolationTmp) } } @@ -37,7 +53,7 @@ object CallerV2XListenerManager : CallerBase() { parkingViolationTmp = parkingViolation M_LISTENERS.forEach { val listener = it.value - if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { + if (verifyCarType() && FunctionBuildConfig.v2nMainSwitch && FunctionBuildConfig.isNewV2NData) { listener.onV2nGlobalPathEvents(eventCount, construct, triangle, congestion, parkingViolation) } } diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt index c72f51addc..7270a55fda 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt @@ -13,6 +13,9 @@ import com.mogo.eagle.core.data.enums.WarningDirectionEnum.ALERT_WARNING_NON import com.mogo.eagle.core.data.map.Infrastructure import com.mogo.eagle.core.function.api.hmi.warning.IMoGoHmiProvider import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener +import com.mogo.eagle.core.function.api.hmi.xiaozhi.event.Event +import com.mogo.eagle.core.function.api.hmi.xiaozhi.listener.OnXiaoZhiStateChangeListener +import com.mogo.eagle.core.function.api.hmi.xiaozhi.state.State /** * @author xiaoyuzhou @@ -294,4 +297,24 @@ object CallerHmiManager { hmiProviderApi?.setTaxiUnmanedDriverLineRoutingVerifyMode(isMode) } + /** + * 添加小智形象展示的状态监听 + */ + fun registerXiaoZhiStatusChangeListener(listener: OnXiaoZhiStateChangeListener) { + hmiProviderApi?.registerXiaoZhiStatusChangeListener(listener) + } + + /** + * 移除小智形象展示的状态监听 + */ + fun unRegisterXiaoZhiStatusChangedListener(listener: OnXiaoZhiStateChangeListener) { + hmiProviderApi?.unRegisterXiaoZhiStatusChangedListener(listener) + } + + /** + * 通知小智形象要变化了 + */ + fun notifyXiaoZhiStatusChanged(event: Event, state: State) { + hmiProviderApi?.notifyXiaoZhiStatusChanged(event, state) + } } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/msgbox/CallerMsgBoxManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/msgbox/CallerMsgBoxManager.kt index 1701c70b95..b453929178 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/msgbox/CallerMsgBoxManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/msgbox/CallerMsgBoxManager.kt @@ -29,6 +29,13 @@ object CallerMsgBoxManager { providerApi?.saveMsg(bean) } + /** + * 存储含有pb的数据到消息盒子(区别与上述方法中的trace write) + */ + fun saveMsgBoxHasPB(bean: MsgBoxBean){ + providerApi?.saveMsg(bean) + } + /** * 删除所有消息盒子中的数据 */ diff --git a/core/mogo-core-res/src/main/res/layout/item_notice_video.xml b/core/mogo-core-res/src/main/res/layout/item_notice_video.xml index 9bb2686408..1b6f4c391b 100644 --- a/core/mogo-core-res/src/main/res/layout/item_notice_video.xml +++ b/core/mogo-core-res/src/main/res/layout/item_notice_video.xml @@ -1,5 +1,6 @@ diff --git a/core/mogo-core-res/src/main/res/raw/lucedaba.nt3d b/core/mogo-core-res/src/main/res/raw/lucedaba.nt3d new file mode 100644 index 0000000000..29a31ddaf7 Binary files /dev/null and b/core/mogo-core-res/src/main/res/raw/lucedaba.nt3d differ diff --git a/core/mogo-core-res/src/main/res/raw/lucexiaoche.nt3d b/core/mogo-core-res/src/main/res/raw/lucexiaoche.nt3d new file mode 100644 index 0000000000..9fa14617f8 Binary files /dev/null and b/core/mogo-core-res/src/main/res/raw/lucexiaoche.nt3d differ diff --git a/core/mogo-core-res/src/main/res/raw/taxi_sanjiaopai.nt3d b/core/mogo-core-res/src/main/res/raw/taxi_sanjiaopai.nt3d new file mode 100644 index 0000000000..8ab4409214 Binary files /dev/null and b/core/mogo-core-res/src/main/res/raw/taxi_sanjiaopai.nt3d differ diff --git a/core/mogo-core-res/src/main/res/raw/taxi_sanjiaozui.nt3d b/core/mogo-core-res/src/main/res/raw/taxi_sanjiaozui.nt3d new file mode 100644 index 0000000000..9db52cc348 Binary files /dev/null and b/core/mogo-core-res/src/main/res/raw/taxi_sanjiaozui.nt3d differ diff --git a/core/mogo-core-res/src/main/res/raw/taxi_traffic_daba.nt3d b/core/mogo-core-res/src/main/res/raw/taxi_traffic_daba.nt3d new file mode 100644 index 0000000000..35902e22e3 Binary files /dev/null and b/core/mogo-core-res/src/main/res/raw/taxi_traffic_daba.nt3d differ diff --git a/core/mogo-core-res/src/main/res/raw/taxi_traffic_motuoche.nt3d b/core/mogo-core-res/src/main/res/raw/taxi_traffic_motuoche.nt3d new file mode 100644 index 0000000000..57801b356e Binary files /dev/null and b/core/mogo-core-res/src/main/res/raw/taxi_traffic_motuoche.nt3d differ diff --git a/core/mogo-core-res/src/main/res/raw/taxi_traffic_people.nt3d b/core/mogo-core-res/src/main/res/raw/taxi_traffic_people.nt3d new file mode 100644 index 0000000000..be0e089d6d Binary files /dev/null and b/core/mogo-core-res/src/main/res/raw/taxi_traffic_people.nt3d differ diff --git a/core/mogo-core-res/src/main/res/raw/taxi_traffic_tachexiaoche.nt3d b/core/mogo-core-res/src/main/res/raw/taxi_traffic_tachexiaoche.nt3d new file mode 100644 index 0000000000..f97b54052e Binary files /dev/null and b/core/mogo-core-res/src/main/res/raw/taxi_traffic_tachexiaoche.nt3d differ diff --git a/core/mogo-core-res/src/main/res/raw/taxi_traffic_zixingche.nt3d b/core/mogo-core-res/src/main/res/raw/taxi_traffic_zixingche.nt3d new file mode 100644 index 0000000000..2bca319119 Binary files /dev/null and b/core/mogo-core-res/src/main/res/raw/taxi_traffic_zixingche.nt3d differ diff --git a/core/mogo-core-res/src/main/res/values/dimens.xml b/core/mogo-core-res/src/main/res/values/dimens.xml index 4c2241bb52..1cd0ceedec 100644 --- a/core/mogo-core-res/src/main/res/values/dimens.xml +++ b/core/mogo-core-res/src/main/res/values/dimens.xml @@ -1024,6 +1024,7 @@ 999dp 1000dp 1100dp + 1125dp 1200dp 1300dp 1600dp diff --git a/core/mogo-core-res/src/main/res/values/ids.xml b/core/mogo-core-res/src/main/res/values/ids.xml index fc995c989e..95e122fa17 100644 --- a/core/mogo-core-res/src/main/res/values/ids.xml +++ b/core/mogo-core-res/src/main/res/values/ids.xml @@ -1,4 +1,8 @@ + + + + \ No newline at end of file diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/DeviceIdUtils.java b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/DeviceIdUtils.java deleted file mode 100644 index d143e4f954..0000000000 --- a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/DeviceIdUtils.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.mogo.eagle.core.utilcode.util; - -import android.Manifest; -import android.content.Context; -import android.content.pm.PackageManager; -import android.media.MediaDrm; -import android.os.Build; -import android.provider.Settings; -import android.telephony.TelephonyManager; -import android.text.TextUtils; - -import androidx.core.content.ContextCompat; - -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; - -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.UUID; - -public final class DeviceIdUtils { - - public static final String KEY_DEVICE_ID = "deviceId"; - - private DeviceIdUtils() { - } - - private static void saveDeviceId(Context context, String deviceId) { - SharedPrefsMgr.getInstance(context).putString(KEY_DEVICE_ID, deviceId); - } - - public static String getDeviceId(Context context) { - if (context == null) { - throw new NullPointerException("context must not be null."); - } - - final Context appContext = context.getApplicationContext(); - String deviceId = SharedPrefsMgr.getInstance(context).getString(KEY_DEVICE_ID); - - if (TextUtils.isEmpty(deviceId)) { - deviceId = getDeviceIdInternal(appContext); - if (TextUtils.isEmpty(deviceId)) { - if (ContextCompat.checkSelfPermission(context, Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED) { - deviceId = ((TelephonyManager) appContext.getSystemService(Context.TELEPHONY_SERVICE)).getSimSerialNumber(); - } - if (TextUtils.isEmpty(deviceId)) { - deviceId = getDeviceSerial(); - if (TextUtils.isEmpty(deviceId) || deviceId.equalsIgnoreCase("unknown")) { - deviceId = getAndroidId(appContext); - if (TextUtils.isEmpty(deviceId)) { - deviceId = String.valueOf(System.currentTimeMillis()); - } - } - } - } - saveDeviceId(appContext, deviceId); - } - - return deviceId; - } - - private static String getDeviceIdInternal(Context context) { - String id = ""; - - if (ContextCompat.checkSelfPermission(context, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) { - return id; - } - - TelephonyManager telephonymanager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); - if (telephonymanager != null) { - id = telephonymanager.getDeviceId(); - if (TextUtils.isEmpty(id)) { - id = ""; - } - } - return id; - } - - private static String getAndroidId(Context context) { - String s = ""; - s = Settings.Secure.getString(context.getContentResolver(), "android_id"); - if (TextUtils.isEmpty(s)) { - s = ""; - } - return s; - } - - private static String getDeviceSerial() { - String serial = "unknown"; - try { - Class clazz = Class.forName("android.os.Build"); - Class paraTypes = Class.forName("java.lang.String"); - Method method = clazz.getDeclaredMethod("getString", paraTypes); - if (!method.isAccessible()) { - method.setAccessible(true); - } - serial = (String) method.invoke(new Build(), "ro.serialno"); - } catch (ClassNotFoundException | NoSuchMethodException | InvocationTargetException | IllegalAccessException e) { - e.printStackTrace(); - } - return serial; - } - - /** - * 获取数字版权管理设备ID - * - * @return WidevineID,可能为空 - */ - public static String getWidevineID(Context context) { - try { - //See https://stackoverflow.com/questions/16369818/how-to-get-crypto-scheme-uuid - //You can find some UUIDs in the https://github.com/google/ExoPlayer source code - final UUID WIDEVINE_UUID = new UUID(0xEDEF8BA979D64ACEL, 0xA3C827DCD51D21EDL); - MediaDrm mediaDrm = new MediaDrm(WIDEVINE_UUID); - byte[] widevineId = mediaDrm.getPropertyByteArray(MediaDrm.PROPERTY_DEVICE_UNIQUE_ID); - if (widevineId == null) { - return ""; - } - StringBuilder sb = new StringBuilder(); - for (byte aByte : widevineId) { - sb.append(String.format("%02x", aByte)); - } - return sb.toString(); - } catch (Exception | Error e) { - e.printStackTrace(); - } - return ""; - } - - /** - * 获取数字版权管理设备ID,进行MD5加密,获取32位的唯一标记,给后台生成SN - * - * @return WidevineID,可能为空 - */ - public static String getWidevineIDWithMd5(Context context) { - try { - String widevineId = getWidevineID(context); - if (!TextUtils.isEmpty(widevineId)) { - widevineId = EncryptUtils.encryptHmacMD5ToString(widevineId, "MoGoAuto"); - return widevineId; - } else { - return getDeviceId(context); - } - } catch (Exception | Error e) { - e.printStackTrace(); - } - return getDeviceId(context); - } - -} \ No newline at end of file diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/DeviceUtils.java b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/DeviceUtils.java index 8c02fce617..7068f5bf0a 100644 --- a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/DeviceUtils.java +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/DeviceUtils.java @@ -312,12 +312,12 @@ public final class DeviceUtils { return Build.MANUFACTURER; } - public static Boolean isLenovoModel(){ + public static Boolean isLenovoModel() { return getModel().contains("Lenovo") || getBrand().contains("Lenovo"); } - public static Boolean isEB5Model(){ - return getModel().contains("R.5.LA"); + public static Boolean isEB5Model() { + return getModel().contains("R.5.LA") || getProductBoard().contains("kona") || getProductBoard().contains("kalama"); } /** @@ -625,6 +625,17 @@ public final class DeviceUtils { return serial; } + public static String getProductBoard() { + String productBoard = "null"; + try { + Class c = Class.forName("android.os.SystemProperties"); + Method get = c.getMethod("get", String.class); + productBoard = (String) get.invoke(c, "ro.product.board"); + } catch (Exception e) { + e.printStackTrace(); + } + return productBoard; + } /** * 获取 机器型号 diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/VLogUtils.kt b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/VLogUtils.kt index 76db51ac95..b5dd7e3e54 100644 --- a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/VLogUtils.kt +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/VLogUtils.kt @@ -1,5 +1,7 @@ package com.mogo.eagle.core.utilcode.util +import android.os.Handler +import android.os.HandlerThread import android.util.Log import com.apm.insight.log.VLog @@ -7,31 +9,58 @@ class VLogUtils { companion object { + private val handler by lazy { + HandlerThread("vlog_record").let { + it.start() + Handler(it.looper) + } + } + @JvmStatic fun d(tag: String, msg: String, max: Int = 4096) { - handleMsg(msg, max).forEach { - VLog.d(tag, it) + val time = System.currentTimeMillis() + handler.post { + runCatching { + handleMsg("time:$time, msg:$msg", max).forEach { + VLog.d(tag, it) + } + } } } @JvmStatic fun v(tag: String, msg: String, max: Int = 4096) { - handleMsg(msg, max).forEach { - VLog.v(tag, it) + val time = System.currentTimeMillis() + handler.post { + runCatching { + handleMsg("time:$time, msg:$msg", max).forEach { + VLog.v(tag, it) + } + } } } @JvmStatic fun w(tag: String, msg: String, max: Int = 4096) { - handleMsg(msg, max).forEach { - VLog.w(tag, it) + val time = System.currentTimeMillis() + handler.post { + runCatching { + handleMsg("time:$time, msg:$msg", max).forEach { + VLog.w(tag, it) + } + } } } @JvmStatic fun e(tag: String, msg: String, max: Int = 4096) { - handleMsg(msg, max).forEach { - VLog.e(tag, it) + val time = System.currentTimeMillis() + handler.post { + runCatching { + handleMsg("time:$time, msg:$msg", max).forEach { + VLog.e(tag, it) + } + } } } diff --git a/core/mogo-core-utils/src/test/java/com/mogo/eagle/core/utilcode/ExampleUnitTest.kt b/core/mogo-core-utils/src/test/java/com/mogo/eagle/core/utilcode/ExampleUnitTest.kt index da8eadb279..7f1b8e8a0e 100644 --- a/core/mogo-core-utils/src/test/java/com/mogo/eagle/core/utilcode/ExampleUnitTest.kt +++ b/core/mogo-core-utils/src/test/java/com/mogo/eagle/core/utilcode/ExampleUnitTest.kt @@ -1,7 +1,6 @@ package com.mogo.eagle.core.utilcode import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils -import com.zhidao.thirdlogin.utils.Aes import org.junit.Assert.* import org.junit.Test diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/constants/HostConst.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/constants/HostConst.java index 8e8b994df7..9e89e920e7 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/constants/HostConst.java +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/constants/HostConst.java @@ -5,10 +5,10 @@ import com.mogo.eagle.core.data.config.FunctionBuildConfig; public class HostConst { public static final String HOST_DEV = "https://eagle-qa.zhidaozhixing.com"; - public static final String HOST_RELEASE = "http://eagle-mis.zhidaozhixing.com"; + public static final String HOST_RELEASE = "https://eagle-mis.zhidaozhixing.com"; public static final String HOST_EAGLE_QA = "https://eagle-dns-qa.zhidaozhixing.com/"; - public static final String HOST_EAGLE_RELEASE = "http://eagle-dns.zhidaozhixing.com/"; + public static final String HOST_EAGLE_RELEASE = "https://eagle-dns.zhidaozhixing.com/"; public static String getHost() { String host = HOST_RELEASE; diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/network/ParamsUtil.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/network/ParamsUtil.java index 302a01be68..590306fff7 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/network/ParamsUtil.java +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/network/ParamsUtil.java @@ -6,10 +6,9 @@ import android.text.TextUtils; import androidx.annotation.NonNull; import androidx.collection.ArrayMap; -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.debug.DebugConfig; -import com.mogo.commons.storage.SpStorage; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.network.Constants; import com.mogo.eagle.core.network.LocationHelper; import com.mogo.eagle.core.network.ServerParam; @@ -41,8 +40,8 @@ public class ParamsUtil { params.put(ServerParam.CELL_ID, DeviceUtils.getCellId()); // params.put( ServerParam.DISPLAY_ID, DeviceUtil.getSystemVersion() ); - params.put(ServerParam.SN, MoGoAiCloudClientConfig.getInstance().getSn()); - params.put(ServerParam.TICKET, SpStorage.getTicket()); + params.put(ServerParam.SN, SharedPrefsMgr.getInstance().getSn()); + params.put(ServerParam.TICKET, SharedPrefsMgr.getInstance().getToken()); return params; } @@ -77,7 +76,7 @@ public class ParamsUtil { map.put("debug", DebugConfig.isDebug() ? 1 : 0); String fota = DeviceUtils.getFotaVersion(); map.put("systemversion", TextUtils.isEmpty(fota) ? DebugConfig.getProductFlavor() : fota); - map.put("sn", MoGoAiCloudClientConfig.getInstance().getSn()); + map.put("sn", SharedPrefsMgr.getInstance().getSn()); return map; } diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/storage/SharedPrefsMgr.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/storage/SharedPrefsMgr.java similarity index 67% rename from core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/storage/SharedPrefsMgr.java rename to foudations/mogo-commons/src/main/java/com/mogo/commons/storage/SharedPrefsMgr.java index 23f32a03d4..f625bdbf29 100644 --- a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/storage/SharedPrefsMgr.java +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/storage/SharedPrefsMgr.java @@ -1,22 +1,30 @@ -package com.mogo.eagle.core.utilcode.mogo.storage; +package com.mogo.commons.storage; import android.content.Context; import android.content.SharedPreferences; +import android.text.TextUtils; +import android.util.Log; import java.util.Set; import androidx.annotation.NonNull; +import com.mogo.cloud.passport.SpStorage; +import com.mogo.commons.AbsMogoApplication; + public class SharedPrefsMgr { private static final String File_Name = "app_shared_pref"; private static SharedPrefsMgr sInstance; private static SharedPreferences sSharedPrefs; - public synchronized static SharedPrefsMgr getInstance( @NonNull Context context ) { + private String sn; + private String token; + + public synchronized static SharedPrefsMgr getInstance() { if ( sInstance == null ) { try { - sInstance = new SharedPrefsMgr( context.getApplicationContext() ); + sInstance = new SharedPrefsMgr(AbsMogoApplication.getApp()); } catch ( Exception e ) { sInstance = new SharedPrefsMgr(); } @@ -36,7 +44,63 @@ public class SharedPrefsMgr { } } - public void putString( String key, String value ) { + public void putSn(String value ) { + try { + sn = value; + SharedPreferences.Editor editor = sSharedPrefs.edit(); + editor.putString( "sn", value ); + editor.apply(); + } catch ( Exception e ) { + } + } + + private String getDeviceSn(){ + try { + return sSharedPrefs.getString( "sn", "" ); + } catch ( Exception e ) { + return ""; + } + } + + public String getSn() { + if (sn != null && !sn.isEmpty()) { + return sn; + } + if (TextUtils.isEmpty(SpStorage.getSn())) { + Log.e("SharedPrefsMgr", "本地 SN 获取失败……"); + } + return getDeviceSn(); + } + + public void putToken(String value ){ + try { + token = value; + SharedPreferences.Editor editor = sSharedPrefs.edit(); + editor.putString( "token", value ); + editor.apply(); + } catch ( Exception e ) { + } + } + + public String getToken() { + if (token != null && !token.isEmpty()) { + return token; + } + if (TextUtils.isEmpty(SpStorage.getToken())) { + Log.e("SharedPrefsMgr", "本地 Token 获取失败……"); + } + return getDeviceToken(); + } + + private String getDeviceToken(){ + try { + return sSharedPrefs.getString( "token", "" ); + } catch ( Exception e ) { + return ""; + } + } + + public void putString(String key, String value ) { try { SharedPreferences.Editor editor = sSharedPrefs.edit(); editor.putString( key, value ); diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/storage/SpStorage.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/storage/SpStorage.java deleted file mode 100644 index 7a80d52978..0000000000 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/storage/SpStorage.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.mogo.commons.storage; - -import com.mogo.commons.AbsMogoApplication; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; - -/** - * @author congtaowang - * @since 2020-01-03 - *

- * sp 公共缓存区域 - */ -public class SpStorage { - - public static String getTicket() { - return SharedPrefsMgr.getInstance( AbsMogoApplication.getApp() ).getString( "token" ); - } - - public static void setTicket( String ticket ) { - SharedPrefsMgr.getInstance( AbsMogoApplication.getApp() ).putString( "token", ticket ); - } - - public static String getNavigationTarget(){ - return SharedPrefsMgr.getInstance( AbsMogoApplication.getApp() ).getString( "naviTarget" ); - } - - public static void setNavigationTarget( String naviTarget ) { - SharedPrefsMgr.getInstance( AbsMogoApplication.getApp() ).putString( "naviTarget", naviTarget ); - } -} diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/utils/MogoAnalyticUtils.kt b/foudations/mogo-commons/src/main/java/com/mogo/commons/utils/MogoAnalyticUtils.kt index 14a63addb2..d6218e7a82 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/utils/MogoAnalyticUtils.kt +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/utils/MogoAnalyticUtils.kt @@ -7,7 +7,7 @@ import com.elegant.analytics.Analytics import com.elegant.analytics.AnalyticsConfig import com.elegant.analytics.IAnalyticsParamsProvider import com.elegant.analytics.UploadMode -import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.utilcode.util.AppUtils @@ -56,7 +56,7 @@ object MogoAnalyticUtils { fun getAnalyticsCustomParams(isDebug: Boolean): Map { val map: MutableMap = ArrayMap() map["debug"] = if (isDebug) 1 else 0 - map["sn"] = MoGoAiCloudClientConfig.getInstance().sn + map["sn"] = SharedPrefsMgr.getInstance().sn map["app_version"] = AppUtils.getAppVersionName() map["app_identity_mode"] = FunctionBuildConfig.appIdentityMode diff --git a/gradle.properties b/gradle.properties index da17647d8b..dc6c29b175 100644 --- a/gradle.properties +++ b/gradle.properties @@ -61,27 +61,27 @@ bytex.ASM_API=ASM7 ################ 外部依赖引用 ################ # loglib -LOGLIB_VERSION=1.10.7 +LOGLIB_VERSION=1.10.8 ######## MogoAiCloudSDK Version ######## # 网络请求LOGLIB_VERSION -MOGO_NETWORK_VERSION=1.4.7.20 +MOGO_NETWORK_VERSION=1.4.7.23 # 鉴权 -MOGO_PASSPORT_VERSION=1.4.7.20 +MOGO_PASSPORT_VERSION=1.4.7.23 # 长链接 -MOGO_SOCKET_VERSION=1.4.7.20 +MOGO_SOCKET_VERSION=1.4.7.23 # 数据采集 -MOGO_REALTIME_VERSION=1.4.7.20 +MOGO_REALTIME_VERSION=1.4.7.23 # 直播推流 -MOGO_LIVE_VERSION=1.4.7.20 +MOGO_LIVE_VERSION=1.4.7.23 # 直播拉流 -MOGO_TRAFFICLIVE_VERSION=1.4.7.20 +MOGO_TRAFFICLIVE_VERSION=1.4.7.23 # 定位服务 -MOGO_LOCATION_VERSION=1.4.7.20 +MOGO_LOCATION_VERSION=1.4.7.23 # 远程通讯模块 -MOGO_TELEMATIC_VERSION=1.4.7.20 +MOGO_TELEMATIC_VERSION=1.4.7.23 ######## MogoAiCloudSDK Version ######## # 自研地图 -MAP_SDK_VERSION=3.3.2.2 +MAP_SDK_VERSION=3.3.3.14 MAP_SDK_DATA_VERSION=1.0.0.7 MAP_SDK_OPERATION_VERSION=1.1.4.1 # websocket @@ -150,28 +150,28 @@ MATRIX_VERSION=2.0.8 # 测试模式司机端版本号 NOOP_DRIVER_VERSION=3.2.0 # 公交模式司机端版本号 -BUS_DRIVER_VERSION=6.2.5 +BUS_DRIVER_VERSION=6.2.6 # 公交模式乘客端端版本号 -BUS_PASSENGER_VERSION=5.2.5 +BUS_PASSENGER_VERSION=5.2.6 # 接驳模式司机端版本号 -SHUTTLE_DRIVER_VERSION=6.2.5 +SHUTTLE_DRIVER_VERSION=6.2.6 # 接驳模式乘客端端版本号 -SHUTTLE_PASSENGER_VERSION=5.2.5 +SHUTTLE_PASSENGER_VERSION=5.2.6 # 出租车模式司机端版本号 -TAXI_DRIVER_VERSION=6.2.5 +TAXI_DRIVER_VERSION=6.2.6 # 出租车模式乘客端端版本号 -TAXI_PASSENGER_VERSION=5.2.5 +TAXI_PASSENGER_VERSION=5.2.6 # 出租车模式司机端版本号 -TAXIUNMANNED_DRIVER_VERSION=6.2.5 +TAXIUNMANNED_DRIVER_VERSION=6.2.6 # 出租车模式乘客端端版本号 -TAXIUNMANNED_PASSENGER_VERSION=5.2.5 +TAXIUNMANNED_PASSENGER_VERSION=5.2.6 # 包车模式司机端版本号 -CHARTER_DRIVER_VERSION=6.2.5 +CHARTER_DRIVER_VERSION=6.2.6 # 包车模式乘客端端版本号 -CHARTER_PASSENGER_VERSION=5.2.5 +CHARTER_PASSENGER_VERSION=5.2.6 # 支持云控清扫车模式司机端版本号 -SWEEPERCLOUD_DRIVER_VERSION=6.2.5 +SWEEPERCLOUD_DRIVER_VERSION=6.2.6 # 清扫车模式司机端版本号 -SWEEPEROPERATE_DRIVER_VERSION=6.2.5 +SWEEPEROPERATE_DRIVER_VERSION=6.2.6 diff --git a/gradle/bytex/bytex_lancetx.gradle b/gradle/bytex/bytex_lancetx.gradle index 6120e724c7..2f9e8ef35c 100644 --- a/gradle/bytex/bytex_lancetx.gradle +++ b/gradle/bytex/bytex_lancetx.gradle @@ -14,13 +14,9 @@ LancetX { ] } weaveGroup { - crash_fix { enable true } - memory_leak { - enable true - } textview_opt { enable true } @@ -31,7 +27,7 @@ LancetX { enable rootProject.isJunkDetectEnable() } view_pressed_state { - enable false + enable true } } } diff --git a/gradle/ext.gradle b/gradle/ext.gradle index c363c59b68..95a1cbe4c3 100644 --- a/gradle/ext.gradle +++ b/gradle/ext.gradle @@ -1,7 +1,7 @@ ext { gradle_version = '3.5.3' kotlin_plugin_version = '1.5.30' - plugin_version = '10.0.0_mogo' + plugin_version = '10.0.10_mogo' service_chain_version = '5.3.14' lancetx_plugin_version = '10.0.4_mogo' } \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/shaders/fMogo_Shader.glsl b/libraries/mapmodule/src/main/assets/shaders/fMogo_Shader.glsl index fb09ea5922..de74e89e78 100644 --- a/libraries/mapmodule/src/main/assets/shaders/fMogo_Shader.glsl +++ b/libraries/mapmodule/src/main/assets/shaders/fMogo_Shader.glsl @@ -38,10 +38,22 @@ uniform float waveVel; uniform vec4 waveColor; uniform float waveTime; in highp float waveOff; + +uniform bool isLeadLine; +uniform bool isLeadLineShowArrow; +uniform bool isLeadLineShowBright; +uniform float leadLineArrowTime; +uniform float leadLineWaveVel; +uniform vec4 leadLineWaveColor; +uniform float leadLineWaveTime; +in highp float leadLineWaveOff; +uniform float leadLineTotalUVY; +uniform bool isLeadLineUseWorldPos; out vec4 fragColor; in float distanceFromCamera; in float guideLineTexY; - +in float leadLineTexY; +in vec2 leadLineFlowLightUV; uniform bool isFogEnable; uniform vec3 fogColor; uniform float fogStart; @@ -57,6 +69,21 @@ uniform float blurStart; uniform float blurEnd; uniform float blurDensity; uniform float zoom; +uniform bool isScaleInSkybox; +uniform bool isRoadbed; +uniform vec4 roadbedMixColor1; +uniform vec4 roadbedMixColor2; +uniform bool isGreenBelt; +uniform vec4 greenBeltMixColor1; +uniform vec4 greenBeltMixColor2; +uniform bool isPlane; +uniform vec4 planeMixColor1; +uniform vec4 planeMixColor2; +uniform bool isMorning; +uniform bool isEvening; +uniform bool isDaytime; +uniform bool isBuilding; +in vec4 ndc; void setSpotLightColor(){ //聚光灯光照效果 lowp float r_base= 4.0; lowp float r_max = spotRadius * 32.0; @@ -106,6 +133,10 @@ void setColor(){ fragColor = _color; } void setTex(){ + if(isScaleInSkybox){ + if(_uv.y<0.0 || _uv.y>1.0) + discard; + } fragColor = texture(texId,_uv); } float getShadowOffset(float x, float y) @@ -141,6 +172,48 @@ highp float k = clamp(cos(waveTime/20.0*waveVel-waveOff), 0.0,1.0); k = clamp(pow(k, 25.0),0.02,0.98); fragColor = mix(_color,waveColor,k); } +void setLeadLine(){ + fragColor = _color; + if(isLeadLineShowBright){ + float posFac = leadLineTexY / leadLineTotalUVY; //当前位置距起始位置的长度,在引导线总长度中的比例 + float flowLightIntensity0 = 0.0; //流光强度因子 + if(posFac>=0.0 && posFac<0.15) //流光强度根据距离变化 + flowLightIntensity0 = mix(0.4,0.7,smoothstep(0.0,0.15,posFac)); + else + flowLightIntensity0 = mix(0.7,0.0,smoothstep(0.15,1.0,posFac)); + float flowLightIntensity1 = clamp(cos(leadLineWaveTime/20.0*leadLineWaveVel-leadLineFlowLightUV.y), 0.0,1.0); + flowLightIntensity1 = pow(flowLightIntensity1, 25.0); + if (flowLightIntensity1 > 0.98) flowLightIntensity1 = 1.0; + else if (flowLightIntensity1 < 0.02) flowLightIntensity1 = 0.0; + fragColor = mix(fragColor,leadLineWaveColor,flowLightIntensity1*flowLightIntensity0); + } + bool isArrowPixel = false; + if(isLeadLineShowArrow){ + if(_uv.y>-10.0){ + vec2 scaleUV = _uv; + scaleUV.y += leadLineArrowTime; + float m = mod(scaleUV.y,5.0); + if(m>=0.0 && m<1.0){ + scaleUV.x = (scaleUV.x - 0.5)*1.8 + 0.5; //对箭头在x方向上缩放 + if(scaleUV.x>=0.0 && scaleUV.x<=1.0){ + vec4 c = texture(texId,scaleUV); + if(c.a>0.0){ + isArrowPixel = true; + float k = smoothstep(-10.0,-6.0,_uv.y); + fragColor.rgb = mix(fragColor.rgb,c.rgb,c.a*k); + } + } + } + } + } + if(!isArrowPixel){ //对引导线x方向两侧模糊,排除箭头像素 + float dis2Center = abs(_uv.x-0.5); + const float q = 0.2; //模糊范围 + const float minAlpha = 0.3; //最边缘的透明度 + if(dis2Center>q) + fragColor.a*=(1.0-smoothstep(q,0.5,dis2Center))*(1.0-minAlpha)+minAlpha; + } +} void setSignalLine(){ if(signalLineObj==0){ if(signalLineStep==0 && _uv.y>1.0) @@ -168,8 +241,7 @@ void setLinearFog() float distanceFromCamera = length(posInEye-cameraPos); if(distanceFromCamera0){ @@ -96,8 +125,19 @@ void setGuideLine(){ } void main() { + if(isBuilding){ + _uv = uv; + } worldPos = (modelMat * pos).xyz; setPosInEye(); + if(isLeadLine){ + setTex(); + setColor(); + setLeadLine(); + gl_Position = projMat*viewMat*modelMat * pos; + ndc = gl_Position; + return; + } if(isRenderDivider){ vec4 pos0 = projMat*viewMat*modelMat * vec4(dividerPos0,1.0); vec4 pos1 = projMat*viewMat*modelMat * vec4(dividerPos1,1.0); @@ -126,5 +166,7 @@ void main() setSignalLine(); if(isGuideLine) setGuideLine(); + gl_Position = projMat*viewMat*modelMat * pos; + ndc = gl_Position; } \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/shaders/vSkyBox_Shader.glsl b/libraries/mapmodule/src/main/assets/shaders/vSkyBox_Shader.glsl index 4f02bf8822..fc78ccfe59 100644 --- a/libraries/mapmodule/src/main/assets/shaders/vSkyBox_Shader.glsl +++ b/libraries/mapmodule/src/main/assets/shaders/vSkyBox_Shader.glsl @@ -3,10 +3,14 @@ precision mediump float; uniform mat4 modelMat; uniform mat4 viewMat; uniform mat4 projMat; +uniform bool isTest; layout( location = 0) in vec4 pos; out vec3 _uv; void main() { - gl_Position = (projMat * viewMat * modelMat * pos).xyww; + if(isTest) + gl_Position = (projMat * viewMat * modelMat * pos).xyzw; + else + gl_Position = (projMat * viewMat * modelMat * pos).xyww; _uv = pos.xyz; } \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/style/connector_lineDay.png b/libraries/mapmodule/src/main/assets/style/connector_lineDay.png index d34e6ebfcd..8da673fd78 100644 Binary files a/libraries/mapmodule/src/main/assets/style/connector_lineDay.png and b/libraries/mapmodule/src/main/assets/style/connector_lineDay.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/100-120-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/100-120-speed.png new file mode 100644 index 0000000000..ec5054b5ce Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/100-120-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/16-19_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/16-19_white.png new file mode 100644 index 0000000000..558bc23266 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/16-19_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/16-19_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/16-19_yellow.png new file mode 100644 index 0000000000..c33000b391 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/16-19_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/16_18.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/16_18.png new file mode 100644 index 0000000000..3781dd6740 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/16_18.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-19_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-19_white.png new file mode 100644 index 0000000000..15b1b42d40 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-19_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-19_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-19_yellow.png new file mode 100644 index 0000000000..d3e41b6ccd Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-19_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-20_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-20_white.png new file mode 100644 index 0000000000..9c088de47b Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-20_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-20_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-20_yellow.png new file mode 100644 index 0000000000..5c4425af71 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/17-20_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/1730-1930-white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/1730-1930-white.png new file mode 100644 index 0000000000..4895fc30ce Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/1730-1930-white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/1730-1930-yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/1730-1930-yellow.png new file mode 100644 index 0000000000..248e737821 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/1730-1930-yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/40-speed-white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/40-speed-white.png new file mode 100644 index 0000000000..bb0a246575 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/40-speed-white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/40-speed-yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/40-speed-yellow.png new file mode 100644 index 0000000000..6bdd37f989 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/40-speed-yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/415_1.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/415_1.png new file mode 100644 index 0000000000..1119936e5a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/415_1.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/416.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/416.png new file mode 100644 index 0000000000..54b4fd54e3 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/416.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/6-20_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/6-20_white.png new file mode 100644 index 0000000000..91100d8ec2 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/6-20_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/6-22_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/6-22_white.png new file mode 100644 index 0000000000..b210f0a54a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/6-22_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/60-100-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/60-100-speed.png new file mode 100644 index 0000000000..1416657c66 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/60-100-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/60-80-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/60-80-speed.png new file mode 100644 index 0000000000..2ac13d6028 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/60-80-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/60-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/60-speed.png new file mode 100644 index 0000000000..6f49d09568 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/60-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-10-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-10-speed.png new file mode 100644 index 0000000000..619a89fe7c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-10-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-22.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-22.png new file mode 100644 index 0000000000..1e771e45de Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-22.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-9_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-9_white.png new file mode 100644 index 0000000000..c0c1698851 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-9_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-9_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-9_yellow.png new file mode 100644 index 0000000000..c72e383182 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/7-9_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/80-100-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/80-100-speed.png new file mode 100644 index 0000000000..8469614925 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/80-100-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/80-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/80-speed.png new file mode 100644 index 0000000000..f764ae51d6 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/80-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/90-120-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/90-120-speed.png new file mode 100644 index 0000000000..e11daa89be Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/90-120-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/AcrossLane.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/AcrossLane.png new file mode 100644 index 0000000000..adf58d144a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/AcrossLane.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/BigRectForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/BigRectForbidArea.png new file mode 100644 index 0000000000..cb65fa5828 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/BigRectForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/BigSquareForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/BigSquareForbidArea.png new file mode 100644 index 0000000000..028fd4f105 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/BigSquareForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ForbidArea.png new file mode 100644 index 0000000000..b4e5bbb09e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ParkingLotSign.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ParkingLotSign.png new file mode 100644 index 0000000000..7416165e3d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ParkingLotSign.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ReversibleLane.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ReversibleLane.png new file mode 100644 index 0000000000..10aee51edb Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ReversibleLane.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/Rhombus.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/Rhombus.png new file mode 100644 index 0000000000..3b9cd2432b Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/Rhombus.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/School.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/School.png new file mode 100644 index 0000000000..10b1981c47 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/School.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SmaRectForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SmaRectForbidArea.png new file mode 100644 index 0000000000..a413245d89 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SmaRectForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SmaSquareForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SmaSquareForbidArea.png new file mode 100644 index 0000000000..e86d4702a8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SmaSquareForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump1_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump1_red.png new file mode 100644 index 0000000000..8eb59e4286 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump1_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump1_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump1_white.png new file mode 100644 index 0000000000..639c5503a1 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump1_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump1_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump1_yellow.png new file mode 100644 index 0000000000..970a9b97fd Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump1_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump2_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump2_red.png new file mode 100644 index 0000000000..471ad03b6e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump2_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump2_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump2_white.png new file mode 100644 index 0000000000..a340429b36 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump2_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump2_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump2_yellow.png new file mode 100644 index 0000000000..f9c2ffeb99 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump2_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump3_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump3_red.png new file mode 100644 index 0000000000..9fd95da302 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump3_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump3_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump3_white.png new file mode 100644 index 0000000000..fee7cf6166 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump3_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump3_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump3_yellow.png new file mode 100644 index 0000000000..55e8fe663a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump3_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump4_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump4_red.png new file mode 100644 index 0000000000..752f41eeb9 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump4_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump4_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump4_white.png new file mode 100644 index 0000000000..b558db79da Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump4_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump4_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump4_yellow.png new file mode 100644 index 0000000000..3d59690706 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump4_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump5_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump5_red.png new file mode 100644 index 0000000000..ad5aa7c5ce Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump5_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump5_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump5_white.png new file mode 100644 index 0000000000..780fe3edbd Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump5_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump5_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump5_yellow.png new file mode 100644 index 0000000000..0900c8e46f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/SpeedBump5_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/Triangle.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/Triangle.png new file mode 100644 index 0000000000..19d58e3bb7 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/Triangle.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump1_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump1_red.png new file mode 100644 index 0000000000..26540f589f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump1_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump1_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump1_white.png new file mode 100644 index 0000000000..369ad00b66 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump1_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump1_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump1_yellow.png new file mode 100644 index 0000000000..2eaffd3e21 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump1_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump2_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump2_red.png new file mode 100644 index 0000000000..057c835059 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump2_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump2_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump2_white.png new file mode 100644 index 0000000000..4910f0e515 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump2_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump2_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump2_yellow.png new file mode 100644 index 0000000000..bcd0be6bf5 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump2_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump3_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump3_red.png new file mode 100644 index 0000000000..dedb2a8b81 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump3_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump3_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump3_white.png new file mode 100644 index 0000000000..da9591f15d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump3_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump3_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump3_yellow.png new file mode 100644 index 0000000000..feda70ed7d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump3_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump4_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump4_red.png new file mode 100644 index 0000000000..70f8f5aa61 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump4_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump4_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump4_white.png new file mode 100644 index 0000000000..792a4e7e8c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump4_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump4_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump4_yellow.png new file mode 100644 index 0000000000..85552e04e0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump4_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump5_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump5_red.png new file mode 100644 index 0000000000..71845fb3aa Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump5_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump5_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump5_white.png new file mode 100644 index 0000000000..53dcf20baf Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump5_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump5_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump5_yellow.png new file mode 100644 index 0000000000..0bece0e9ba Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/UnSpeedBump5_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/VerticalLane.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/VerticalLane.png new file mode 100644 index 0000000000..16b5b21bae Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/VerticalLane.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/WithBusAcross.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/WithBusAcross.png new file mode 100644 index 0000000000..1440d94f9f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/WithBusAcross.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/WithBusVertical.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/WithBusVertical.png new file mode 100644 index 0000000000..16b5b21bae Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/WithBusVertical.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/battery.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/battery.png new file mode 100644 index 0000000000..f1da3b374a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/battery.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_cross_left.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_cross_left.png new file mode 100644 index 0000000000..185407aa47 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_cross_left.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_cross_right.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_cross_right.png new file mode 100644 index 0000000000..2163faa775 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_cross_right.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_LL.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_LL.png new file mode 100644 index 0000000000..804a18b616 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_LL.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_left.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_left.png new file mode 100644 index 0000000000..adc906ced7 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_left.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_right.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_right.png new file mode 100644 index 0000000000..1f1a172071 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_right.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_right_down.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_right_down.png new file mode 100644 index 0000000000..55ada63c09 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bicycle_vertical_right_down.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bus.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bus.png new file mode 100644 index 0000000000..6300f3af11 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bus.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busLaneAcross.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busLaneAcross.png new file mode 100644 index 0000000000..366c7f38c6 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busLaneAcross.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busLaneVertical.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busLaneVertical.png new file mode 100644 index 0000000000..dc545cf304 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busLaneVertical.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busStation.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busStation.png new file mode 100644 index 0000000000..8176386662 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busStation.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busStop.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busStop.png new file mode 100644 index 0000000000..efc25574af Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busStop.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busTransitLaneV.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busTransitLaneV.png new file mode 100644 index 0000000000..7ae2cb3d64 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/busTransitLaneV.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bus_Rapid_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bus_Rapid_white.png new file mode 100644 index 0000000000..702d22ba8c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bus_Rapid_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bus_Rapid_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bus_Rapid_yellow.png new file mode 100644 index 0000000000..fc851ceb4d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/bus_Rapid_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/carpeople.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/carpeople.png new file mode 100644 index 0000000000..4d00789ad6 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/carpeople.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comityPedestrianC.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comityPedestrianC.png new file mode 100644 index 0000000000..a4f1ccbb3c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comityPedestrianC.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comityPedestrianCShu.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comityPedestrianCShu.png new file mode 100644 index 0000000000..03d5b0fa79 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comityPedestrianCShu.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comity_Pedestrian.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comity_Pedestrian.png new file mode 100644 index 0000000000..061d909dbe Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comity_Pedestrian.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comity_PedestrianShu.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comity_PedestrianShu.png new file mode 100644 index 0000000000..a2883290dc Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/comity_PedestrianShu.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/divider15_left.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/divider15_left.png new file mode 100644 index 0000000000..f4c9b68ac0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/divider15_left.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/divider15_right.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/divider15_right.png new file mode 100644 index 0000000000..a69defc03c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/divider15_right.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/exit.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/exit.png new file mode 100644 index 0000000000..26d8002ddb Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/exit.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/goStraightTurnRightLeft.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/goStraightTurnRightLeft.png new file mode 100644 index 0000000000..5f18e4c678 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/goStraightTurnRightLeft.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraight.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraight.png new file mode 100644 index 0000000000..e47c770a7e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraight.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightleft.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightleft.png new file mode 100644 index 0000000000..e76913f9fd Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightleft.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightleftright.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightleftright.png new file mode 100644 index 0000000000..ce81a74093 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightleftright.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightleftround.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightleftround.png new file mode 100644 index 0000000000..fdfa403376 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightleftround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightrightround.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightrightround.png new file mode 100644 index 0000000000..5536c5297b Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightrightround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightrightturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightrightturn.png new file mode 100644 index 0000000000..ddc069fdb0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/gostraightrightturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/hov.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/hov.png new file mode 100644 index 0000000000..9557865592 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/hov.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ice.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ice.png new file mode 100644 index 0000000000..cf7e6376af Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/ice.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftleftround.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftleftround.png new file mode 100644 index 0000000000..122a006c85 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftleftround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftrightturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftrightturn.png new file mode 100644 index 0000000000..d4b5a24ac9 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftrightturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftround.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftround.png new file mode 100644 index 0000000000..95b4536dfc Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftturn.png new file mode 100644 index 0000000000..45613cece0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftwaitturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftwaitturn.png new file mode 100644 index 0000000000..67dd20451f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/leftwaitturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/motorVehiclesC.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/motorVehiclesC.png new file mode 100644 index 0000000000..380c6b1815 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/motorVehiclesC.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noCrossLine.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noCrossLine.png new file mode 100644 index 0000000000..e7e6798085 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noCrossLine.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noLeftOrTurn.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noLeftOrTurn.png new file mode 100644 index 0000000000..739b43768c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noLeftOrTurn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noStopMarking.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noStopMarking.png new file mode 100644 index 0000000000..4f4794b68d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noStopMarking.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noTurn.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noTurn.png new file mode 100644 index 0000000000..b63d967ce5 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noTurn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noleftturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noleftturn.png new file mode 100644 index 0000000000..b0fbb66ce1 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/noleftturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/onlyTaxi.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/onlyTaxi.png new file mode 100644 index 0000000000..18b6616da2 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/onlyTaxi.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/plane.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/plane.png new file mode 100644 index 0000000000..40baafc631 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/plane.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/policeSpecialV.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/policeSpecialV.png new file mode 100644 index 0000000000..a04ff59982 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/policeSpecialV.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightrightround.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightrightround.png new file mode 100644 index 0000000000..228546513d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightrightround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightround.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightround.png new file mode 100644 index 0000000000..07d5c7699d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightturn.png new file mode 100644 index 0000000000..5c2e751ddf Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightwaitturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightwaitturn.png new file mode 100644 index 0000000000..27be89f406 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/rightwaitturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/road.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/road.png new file mode 100644 index 0000000000..189052a312 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/road.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/schoolZone_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/schoolZone_white.png new file mode 100644 index 0000000000..10b1981c47 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/schoolZone_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/schoolZone_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/schoolZone_yellow.png new file mode 100644 index 0000000000..398b418e05 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/schoolZone_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/sideRoad.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/sideRoad.png new file mode 100644 index 0000000000..416eeb43d9 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/sideRoad.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/stop.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/stop.png new file mode 100644 index 0000000000..5705cf6c46 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/stop.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/throughWordsV_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/throughWordsV_white.png new file mode 100644 index 0000000000..6926910472 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/throughWordsV_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/throughWordsV_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/throughWordsV_yellow.png new file mode 100644 index 0000000000..744374c5c6 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/throughWordsV_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/tourRoad.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/tourRoad.png new file mode 100644 index 0000000000..9455fb431a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/tourRoad.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/walk.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/walk.png new file mode 100644 index 0000000000..8e0e5826bb Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/walk.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/waternormals.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/waternormals.png new file mode 100644 index 0000000000..a3bd6f74fb Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/waternormals.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra.png new file mode 100644 index 0000000000..dbb2c139dd Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing1.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing1.png new file mode 100644 index 0000000000..27bcacb57e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing1.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing10.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing10.png new file mode 100644 index 0000000000..7a239089e3 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing10.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing11.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing11.png new file mode 100644 index 0000000000..412df5d51a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing11.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing12.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing12.png new file mode 100644 index 0000000000..2f15d8af99 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing12.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing13.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing13.png new file mode 100644 index 0000000000..498d64e5b8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing13.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing2.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing2.png new file mode 100644 index 0000000000..7ea0e12a6c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing2.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing3.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing3.png new file mode 100644 index 0000000000..7b061a85c0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing3.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing4.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing4.png new file mode 100644 index 0000000000..d142e854aa Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing4.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing5.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing5.png new file mode 100644 index 0000000000..e5064edd2c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing5.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing6.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing6.png new file mode 100644 index 0000000000..ba0f71646a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing6.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing7.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing7.png new file mode 100644 index 0000000000..99e6906cf6 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing7.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing8.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing8.png new file mode 100644 index 0000000000..fad46892bb Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing8.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing9.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing9.png new file mode 100644 index 0000000000..43e3d74cad Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_crossing9.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_polygon.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_polygon.png new file mode 100644 index 0000000000..af2f101c30 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_polygon.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_three.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_three.png new file mode 100644 index 0000000000..67c7aabd42 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zebra_three.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zhuan.png b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zhuan.png new file mode 100644 index 0000000000..93a32186e0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/bus_day_mode/zhuan.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/100-120-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/100-120-speed.png new file mode 100644 index 0000000000..1fd3c9f330 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/100-120-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/16-19_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/16-19_white.png new file mode 100644 index 0000000000..5e50920596 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/16-19_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/16-19_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/16-19_yellow.png new file mode 100644 index 0000000000..0400f30a9d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/16-19_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/16_18.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/16_18.png new file mode 100644 index 0000000000..4d044f127e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/16_18.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-19_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-19_white.png new file mode 100644 index 0000000000..f62406b25c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-19_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-19_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-19_yellow.png new file mode 100644 index 0000000000..53dc75a8ee Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-19_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-20_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-20_white.png new file mode 100644 index 0000000000..606e43065e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-20_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-20_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-20_yellow.png new file mode 100644 index 0000000000..911786b709 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/17-20_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/1730-1930-white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/1730-1930-white.png new file mode 100644 index 0000000000..7c64d0a127 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/1730-1930-white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/1730-1930-yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/1730-1930-yellow.png new file mode 100644 index 0000000000..0241761507 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/1730-1930-yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/40-speed-white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/40-speed-white.png new file mode 100644 index 0000000000..ca096832b3 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/40-speed-white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/40-speed-yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/40-speed-yellow.png new file mode 100644 index 0000000000..535ae318af Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/40-speed-yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/415_1.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/415_1.png new file mode 100644 index 0000000000..5a918bf8ba Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/415_1.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/416.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/416.png new file mode 100644 index 0000000000..54b4fd54e3 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/416.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/6-20_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/6-20_white.png new file mode 100644 index 0000000000..74ad75864f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/6-20_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/6-22_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/6-22_white.png new file mode 100644 index 0000000000..d2029b049a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/6-22_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/60-100-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/60-100-speed.png new file mode 100644 index 0000000000..81d619019f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/60-100-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/60-80-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/60-80-speed.png new file mode 100644 index 0000000000..bf7c679a28 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/60-80-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/60-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/60-speed.png new file mode 100644 index 0000000000..260705aac1 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/60-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-10-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-10-speed.png new file mode 100644 index 0000000000..9290ca01aa Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-10-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-22.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-22.png new file mode 100644 index 0000000000..c946836c79 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-22.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-9_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-9_white.png new file mode 100644 index 0000000000..f5f0cb19ac Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-9_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-9_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-9_yellow.png new file mode 100644 index 0000000000..7e70040803 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/7-9_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/80-100-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/80-100-speed.png new file mode 100644 index 0000000000..da18e38eb8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/80-100-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/80-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/80-speed.png new file mode 100644 index 0000000000..63ce8a3a77 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/80-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/90-120-speed.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/90-120-speed.png new file mode 100644 index 0000000000..87eb4fc538 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/90-120-speed.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/AcrossLane.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/AcrossLane.png new file mode 100644 index 0000000000..fe875320b2 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/AcrossLane.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/BigRectForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/BigRectForbidArea.png new file mode 100644 index 0000000000..04447381b3 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/BigRectForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/BigSquareForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/BigSquareForbidArea.png new file mode 100644 index 0000000000..e2f2a92483 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/BigSquareForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ForbidArea.png new file mode 100644 index 0000000000..27f445ac45 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ParkingLotSign.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ParkingLotSign.png new file mode 100644 index 0000000000..1c5cc64aa0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ParkingLotSign.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ReversibleLane.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ReversibleLane.png new file mode 100644 index 0000000000..5208543c33 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ReversibleLane.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/Rhombus.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/Rhombus.png new file mode 100644 index 0000000000..ed94fe9a6f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/Rhombus.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/School.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/School.png new file mode 100644 index 0000000000..04bfa62d02 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/School.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SmaRectForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SmaRectForbidArea.png new file mode 100644 index 0000000000..a044ad9433 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SmaRectForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SmaSquareForbidArea.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SmaSquareForbidArea.png new file mode 100644 index 0000000000..569fe3ae25 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SmaSquareForbidArea.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump1_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump1_red.png new file mode 100644 index 0000000000..af6dbf4c2c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump1_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump1_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump1_white.png new file mode 100644 index 0000000000..5a73e24cf2 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump1_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump1_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump1_yellow.png new file mode 100644 index 0000000000..0ea9262d51 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump1_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump2_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump2_red.png new file mode 100644 index 0000000000..d43e23fd0e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump2_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump2_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump2_white.png new file mode 100644 index 0000000000..8451237091 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump2_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump2_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump2_yellow.png new file mode 100644 index 0000000000..f1cee41f04 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump2_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump3_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump3_red.png new file mode 100644 index 0000000000..5f20b6a8da Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump3_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump3_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump3_white.png new file mode 100644 index 0000000000..3cc073dabd Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump3_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump3_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump3_yellow.png new file mode 100644 index 0000000000..fc2270ea91 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump3_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump4_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump4_red.png new file mode 100644 index 0000000000..e250587648 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump4_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump4_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump4_white.png new file mode 100644 index 0000000000..651a76806c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump4_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump4_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump4_yellow.png new file mode 100644 index 0000000000..555c991250 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump4_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump5_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump5_red.png new file mode 100644 index 0000000000..d58e6d164b Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump5_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump5_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump5_white.png new file mode 100644 index 0000000000..6d0c11f2c8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump5_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump5_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump5_yellow.png new file mode 100644 index 0000000000..bcf978f155 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/SpeedBump5_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/Triangle.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/Triangle.png new file mode 100644 index 0000000000..6fc527ea32 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/Triangle.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump1_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump1_red.png new file mode 100644 index 0000000000..7c53c387ac Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump1_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump1_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump1_white.png new file mode 100644 index 0000000000..b53564c0ce Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump1_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump1_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump1_yellow.png new file mode 100644 index 0000000000..a08b371913 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump1_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump2_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump2_red.png new file mode 100644 index 0000000000..74167571c2 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump2_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump2_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump2_white.png new file mode 100644 index 0000000000..9e945dc79f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump2_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump2_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump2_yellow.png new file mode 100644 index 0000000000..2d1ef43055 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump2_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump3_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump3_red.png new file mode 100644 index 0000000000..37359f300c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump3_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump3_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump3_white.png new file mode 100644 index 0000000000..4a12b27854 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump3_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump3_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump3_yellow.png new file mode 100644 index 0000000000..8837b6499d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump3_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump4_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump4_red.png new file mode 100644 index 0000000000..063cc71ee5 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump4_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump4_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump4_white.png new file mode 100644 index 0000000000..c0f27d8068 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump4_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump4_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump4_yellow.png new file mode 100644 index 0000000000..3d1f394ba0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump4_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump5_red.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump5_red.png new file mode 100644 index 0000000000..15310a0b17 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump5_red.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump5_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump5_white.png new file mode 100644 index 0000000000..a7b290422a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump5_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump5_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump5_yellow.png new file mode 100644 index 0000000000..be61174e4c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/UnSpeedBump5_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/VerticalLane.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/VerticalLane.png new file mode 100644 index 0000000000..16b5b21bae Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/VerticalLane.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/WithBusAcross.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/WithBusAcross.png new file mode 100644 index 0000000000..d55a5c2564 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/WithBusAcross.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/WithBusVertical.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/WithBusVertical.png new file mode 100644 index 0000000000..ff5ebd1413 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/WithBusVertical.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/battery.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/battery.png new file mode 100644 index 0000000000..f1da3b374a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/battery.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_cross_left.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_cross_left.png new file mode 100644 index 0000000000..575f2290f8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_cross_left.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_cross_right.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_cross_right.png new file mode 100644 index 0000000000..2c54317a64 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_cross_right.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_LL.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_LL.png new file mode 100644 index 0000000000..001ce5b514 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_LL.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_left.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_left.png new file mode 100644 index 0000000000..fd29f99c8e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_left.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_right.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_right.png new file mode 100644 index 0000000000..4a8df3c400 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_right.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_right_down.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_right_down.png new file mode 100644 index 0000000000..71417e0ebd Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bicycle_vertical_right_down.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bus.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bus.png new file mode 100644 index 0000000000..b60b511792 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bus.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busLaneAcross.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busLaneAcross.png new file mode 100644 index 0000000000..dca55e8210 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busLaneAcross.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busLaneVertical.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busLaneVertical.png new file mode 100644 index 0000000000..0686b377bf Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busLaneVertical.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busStation.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busStation.png new file mode 100644 index 0000000000..b0431009df Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busStation.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busStop.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busStop.png new file mode 100644 index 0000000000..c591fc0c55 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busStop.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busTransitLaneV.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busTransitLaneV.png new file mode 100644 index 0000000000..560b1be926 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/busTransitLaneV.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bus_Rapid_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bus_Rapid_white.png new file mode 100644 index 0000000000..f25a1ebd15 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bus_Rapid_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bus_Rapid_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bus_Rapid_yellow.png new file mode 100644 index 0000000000..729f2fa9fa Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/bus_Rapid_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/carpeople.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/carpeople.png new file mode 100644 index 0000000000..cf5865ca74 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/carpeople.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comityPedestrianC.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comityPedestrianC.png new file mode 100644 index 0000000000..067e1e375a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comityPedestrianC.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comityPedestrianCShu.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comityPedestrianCShu.png new file mode 100644 index 0000000000..a77f811fec Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comityPedestrianCShu.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comity_Pedestrian.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comity_Pedestrian.png new file mode 100644 index 0000000000..44e6a74cd0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comity_Pedestrian.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comity_PedestrianShu.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comity_PedestrianShu.png new file mode 100644 index 0000000000..6cac49cefb Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/comity_PedestrianShu.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/divider15_left.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/divider15_left.png new file mode 100644 index 0000000000..5fe9cd25c4 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/divider15_left.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/divider15_right.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/divider15_right.png new file mode 100644 index 0000000000..94ff2048d4 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/divider15_right.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/exit.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/exit.png new file mode 100644 index 0000000000..b98f961eb4 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/exit.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/goStraightTurnRightLeft.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/goStraightTurnRightLeft.png new file mode 100644 index 0000000000..eb705a71cc Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/goStraightTurnRightLeft.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraight.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraight.png new file mode 100644 index 0000000000..fa143c3896 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraight.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightleft.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightleft.png new file mode 100644 index 0000000000..87a76d7904 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightleft.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightleftright.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightleftright.png new file mode 100644 index 0000000000..80ef043cc5 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightleftright.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightleftround.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightleftround.png new file mode 100644 index 0000000000..69dbc91545 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightleftround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightrightround.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightrightround.png new file mode 100644 index 0000000000..167ef816d0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightrightround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightrightturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightrightturn.png new file mode 100644 index 0000000000..022044ae62 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/gostraightrightturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/hov.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/hov.png new file mode 100644 index 0000000000..9daf485e4e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/hov.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ice.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ice.png new file mode 100644 index 0000000000..cf7e6376af Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/ice.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftleftround.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftleftround.png new file mode 100644 index 0000000000..299d6b9a95 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftleftround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftrightturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftrightturn.png new file mode 100644 index 0000000000..52b8a360df Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftrightturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftround.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftround.png new file mode 100644 index 0000000000..87db9a4e2f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftturn.png new file mode 100644 index 0000000000..d1666de043 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftwaitturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftwaitturn.png new file mode 100644 index 0000000000..699fffc733 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/leftwaitturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/motorVehiclesC.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/motorVehiclesC.png new file mode 100644 index 0000000000..aa812adf18 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/motorVehiclesC.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noCrossLine.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noCrossLine.png new file mode 100644 index 0000000000..f8d2cfa9c3 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noCrossLine.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noLeftOrTurn.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noLeftOrTurn.png new file mode 100644 index 0000000000..c9e074222c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noLeftOrTurn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noStopMarking.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noStopMarking.png new file mode 100644 index 0000000000..a011c3bc51 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noStopMarking.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noTurn.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noTurn.png new file mode 100644 index 0000000000..698a9641c5 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noTurn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noleftturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noleftturn.png new file mode 100644 index 0000000000..d3931d8c86 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/noleftturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/onlyTaxi.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/onlyTaxi.png new file mode 100644 index 0000000000..ef0f9b5760 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/onlyTaxi.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/plane.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/plane.png new file mode 100644 index 0000000000..40baafc631 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/plane.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/policeSpecialV.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/policeSpecialV.png new file mode 100644 index 0000000000..c15499af04 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/policeSpecialV.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightrightround.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightrightround.png new file mode 100644 index 0000000000..c427571f0a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightrightround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightround.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightround.png new file mode 100644 index 0000000000..9609e214c8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightround.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightturn.png new file mode 100644 index 0000000000..6d1746ea0a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightwaitturn.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightwaitturn.png new file mode 100644 index 0000000000..ecb4ad75bc Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/rightwaitturn.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/road.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/road.png new file mode 100644 index 0000000000..189052a312 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/road.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/schoolZone_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/schoolZone_white.png new file mode 100644 index 0000000000..7e591c2002 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/schoolZone_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/schoolZone_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/schoolZone_yellow.png new file mode 100644 index 0000000000..7f25f23219 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/schoolZone_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/sideRoad.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/sideRoad.png new file mode 100644 index 0000000000..416eeb43d9 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/sideRoad.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/stop.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/stop.png new file mode 100644 index 0000000000..add8223248 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/stop.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/throughWordsV_white.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/throughWordsV_white.png new file mode 100644 index 0000000000..efeab068f2 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/throughWordsV_white.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/throughWordsV_yellow.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/throughWordsV_yellow.png new file mode 100644 index 0000000000..0ef9187b90 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/throughWordsV_yellow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/tourRoad.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/tourRoad.png new file mode 100644 index 0000000000..9455fb431a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/tourRoad.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/walk.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/walk.png new file mode 100644 index 0000000000..8e0e5826bb Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/walk.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/waternormals.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/waternormals.png new file mode 100644 index 0000000000..a3bd6f74fb Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/waternormals.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra.png new file mode 100644 index 0000000000..3e83e0793a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing1.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing1.png new file mode 100644 index 0000000000..27bcacb57e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing1.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing10.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing10.png new file mode 100644 index 0000000000..7a239089e3 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing10.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing11.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing11.png new file mode 100644 index 0000000000..412df5d51a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing11.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing12.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing12.png new file mode 100644 index 0000000000..2f15d8af99 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing12.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing13.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing13.png new file mode 100644 index 0000000000..498d64e5b8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing13.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing2.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing2.png new file mode 100644 index 0000000000..7ea0e12a6c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing2.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing3.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing3.png new file mode 100644 index 0000000000..7b061a85c0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing3.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing4.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing4.png new file mode 100644 index 0000000000..d142e854aa Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing4.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing5.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing5.png new file mode 100644 index 0000000000..e5064edd2c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing5.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing6.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing6.png new file mode 100644 index 0000000000..ba0f71646a Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing6.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing7.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing7.png new file mode 100644 index 0000000000..99e6906cf6 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing7.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing8.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing8.png new file mode 100644 index 0000000000..fad46892bb Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing8.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing9.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing9.png new file mode 100644 index 0000000000..43e3d74cad Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_crossing9.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_polygon.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_polygon.png new file mode 100644 index 0000000000..af2f101c30 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_polygon.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_three.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_three.png new file mode 100644 index 0000000000..67c7aabd42 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zebra_three.png differ diff --git a/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zhuan.png b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zhuan.png new file mode 100644 index 0000000000..93a32186e0 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/hd_res/taxi_day_mode/zhuan.png differ diff --git a/libraries/mapmodule/src/main/assets/style/leadLineArrow.png b/libraries/mapmodule/src/main/assets/style/leadLineArrow.png new file mode 100644 index 0000000000..b843415398 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/leadLineArrow.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/cloudy/negx.png b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/negx.png new file mode 100644 index 0000000000..a50cbce157 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/negx.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/cloudy/negy.png b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/negy.png new file mode 100644 index 0000000000..a50cbce157 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/negy.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/cloudy/negz.png b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/negz.png new file mode 100644 index 0000000000..e1fef07df2 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/negz.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/cloudy/posx.png b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/posx.png new file mode 100644 index 0000000000..a50cbce157 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/posx.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/cloudy/posy.png b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/posy.png new file mode 100644 index 0000000000..a50cbce157 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/posy.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/cloudy/posz.png b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/posz.png new file mode 100644 index 0000000000..a50cbce157 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/cloudy/posz.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/daytime/1.png b/libraries/mapmodule/src/main/assets/style/skybox/daytime/1.png new file mode 100644 index 0000000000..b09c541274 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/daytime/1.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/daytime/2.png b/libraries/mapmodule/src/main/assets/style/skybox/daytime/2.png new file mode 100644 index 0000000000..ec446b517f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/daytime/2.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/daytime/3.png b/libraries/mapmodule/src/main/assets/style/skybox/daytime/3.png new file mode 100644 index 0000000000..91691ebfcf Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/daytime/3.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/daytime/4.png b/libraries/mapmodule/src/main/assets/style/skybox/daytime/4.png new file mode 100644 index 0000000000..96547ffd06 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/daytime/4.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/evening/1.png b/libraries/mapmodule/src/main/assets/style/skybox/evening/1.png new file mode 100644 index 0000000000..651e214ee8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/evening/1.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/evening/2.png b/libraries/mapmodule/src/main/assets/style/skybox/evening/2.png new file mode 100644 index 0000000000..c5baa218f4 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/evening/2.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/evening/3.png b/libraries/mapmodule/src/main/assets/style/skybox/evening/3.png new file mode 100644 index 0000000000..a765a4494f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/evening/3.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/evening/4.png b/libraries/mapmodule/src/main/assets/style/skybox/evening/4.png new file mode 100644 index 0000000000..efb081433d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/evening/4.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/morning/1.png b/libraries/mapmodule/src/main/assets/style/skybox/morning/1.png new file mode 100644 index 0000000000..651e214ee8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/morning/1.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/morning/2.png b/libraries/mapmodule/src/main/assets/style/skybox/morning/2.png new file mode 100644 index 0000000000..c5baa218f4 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/morning/2.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/morning/3.png b/libraries/mapmodule/src/main/assets/style/skybox/morning/3.png new file mode 100644 index 0000000000..a765a4494f Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/morning/3.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/morning/4.png b/libraries/mapmodule/src/main/assets/style/skybox/morning/4.png new file mode 100644 index 0000000000..efb081433d Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/morning/4.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/sunny/negx.png b/libraries/mapmodule/src/main/assets/style/skybox/sunny/negx.png new file mode 100644 index 0000000000..c64ed5f485 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/sunny/negx.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/sunny/negy.png b/libraries/mapmodule/src/main/assets/style/skybox/sunny/negy.png new file mode 100644 index 0000000000..8b0153383e Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/sunny/negy.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/sunny/negz.png b/libraries/mapmodule/src/main/assets/style/skybox/sunny/negz.png new file mode 100644 index 0000000000..e1fef07df2 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/sunny/negz.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/sunny/posx.png b/libraries/mapmodule/src/main/assets/style/skybox/sunny/posx.png new file mode 100644 index 0000000000..339a3361d8 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/sunny/posx.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/sunny/posy.png b/libraries/mapmodule/src/main/assets/style/skybox/sunny/posy.png new file mode 100644 index 0000000000..9ddf68767c Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/sunny/posy.png differ diff --git a/libraries/mapmodule/src/main/assets/style/skybox/sunny/posz.png b/libraries/mapmodule/src/main/assets/style/skybox/sunny/posz.png new file mode 100644 index 0000000000..a50cbce157 Binary files /dev/null and b/libraries/mapmodule/src/main/assets/style/skybox/sunny/posz.png differ diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/alpha.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/alpha.cfg new file mode 100644 index 0000000000..e5c107d175 --- /dev/null +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/alpha.cfg @@ -0,0 +1,50 @@ +alpha.tex.path.11.出口.0=/hd_res/bus_day_mode/exit.png +alpha.tex.path.11.前方学校.1=/hd_res/bus_day_mode/schoolZone_white.png +alpha.tex.path.11.前方学校.2=/hd_res/bus_day_mode/schoolZone_yellow.png +alpha.tex.path.11.公交专用.0=/hd_res/bus_day_mode/WithBusVertical.png +alpha.tex.path.11.潮汐车道.0=/hd_res/bus_day_mode/ReversibleLane.png +alpha.tex.path.11.公交车道.0=/hd_res/bus_day_mode/busLaneVertical.png +alpha.tex.path.11.公交车.0=/hd_res/bus_day_mode/bus.png +alpha.tex.path.11.快速公交专用线.1=/hd_res/bus_day_mode/bus_Rapid_white.png +alpha.tex.path.11.快速公交专用线.2=/hd_res/bus_day_mode/bus_Rapid_yellow.png +alpha.tex.path.11.借道区.1=/hd_res/bus_day_mode/throughWordsV_white.png +alpha.tex.path.11.借道区.2=/hd_res/bus_day_mode/throughWordsV_yellow.png +alpha.tex.path.11.公交停靠.0=/hd_res/bus_day_mode/busStop.png +alpha.tex.path.11.警务专用.0=/hd_res/bus_day_mode/policeSpecialV.png +alpha.tex.path.11.礼让行人.1=/hd_res/bus_day_mode/comity_PedestrianShu.png +alpha.tex.path.11.礼让行人.2=/hd_res/bus_day_mode/comityPedestrianCShu.png +alpha.tex.path.11.人行道.0=/hd_res/bus_day_mode/sideRoad.png +alpha.tex.path.11.观光车专用道.0=/hd_res/bus_day_mode/tourRoad.png +alpha.tex.path.12.BATTERY.0=/hd_res/bus_day_mode/battery.png +alpha.tex.path.12.WALK.0=/hd_res/bus_day_mode/walk.png +alpha.tex.path.12.车让人.0=/hd_res/bus_day_mode/carpeople.png +alpha.tex.path.12.公交专用.0=/hd_res/bus_day_mode/WithBusAcross.png +alpha.tex.path.12.公交车道.0=/hd_res/bus_day_mode/busLaneAcross.png +alpha.tex.path.12.礼让行人.1=/hd_res/bus_day_mode/comity_Pedestrian.png +alpha.tex.path.12.礼让行人.2=/hd_res/bus_day_mode/comityPedestrianC.png +alpha.tex.path.12.停.0=/hd_res/bus_day_mode/stop.png +alpha.tex.path.12.请勿越线.2=/hd_res/bus_day_mode/noCrossLine.png +alpha.tex.path.22.7-22.0=/hd_res/bus_day_mode/7-22.png +alpha.tex.path.22.7-9.1=/hd_res/bus_day_mode/7-9_white.png +alpha.tex.path.22.7-9.2=/hd_res/bus_day_mode/7-9_yellow.png +alpha.tex.path.22.17-19.1=/hd_res/bus_day_mode/17-19_white.png +alpha.tex.path.22.17-19.2=/hd_res/bus_day_mode/17-19_yellow.png +alpha.tex.path.22.16-19.1=/hd_res/bus_day_mode/16-19_white.png +alpha.tex.path.22.16-19.2=/hd_res/bus_day_mode/16-19_yellow.png +alpha.tex.path.22.17-20.1=/hd_res/bus_day_mode/17-20_white.png +alpha.tex.path.22.17-20.2=/hd_res/bus_day_mode/17-20_yellow.png +alpha.tex.path.22.6-20.0=/hd_res/bus_day_mode/6-20_white.png +alpha.tex.path.22.6-22.0=/hd_res/bus_day_mode/6-22_white.png +alpha.tex.path.22.7:30-9:30.1=/hd_res/bus_day_mode/1730-1930-white.png +alpha.tex.path.22.7:30-9:30.2=/hd_res/bus_day_mode/1730-1930-yellow.png +alpha.tex.path.22.7-10.0=/hd_res/bus_day_mode/7-10-speed.png +alpha.tex.path.22.16:00-18:00.1=/hd_res/bus_day_mode/16_18.png +alpha.tex.path.31.60-80.0=/hd_res/bus_day_mode/60-80-speed.png +alpha.tex.path.31.80-100.0=/hd_res/bus_day_mode/80-100-speed.png +alpha.tex.path.31.100-120.0=/hd_res/bus_day_mode/100-120-speed.png +alpha.tex.path.31.60-100.0=/hd_res/bus_day_mode/60-100-speed.png +alpha.tex.path.31.90-120.0=/hd_res/bus_day_mode/90-120-speed.png +alpha.tex.path.32.80.0=/hd_res/bus_day_mode/80-speed.png +alpha.tex.path.32.60.0=/hd_res/bus_day_mode/60-speed.png +alpha.tex.path.32.40.1=/hd_res/bus_day_mode/40-speed-white.png +alpha.tex.path.32.40.2=/hd_res/bus_day_mode/40-speed-yellow.png \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/arrow.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/arrow.cfg new file mode 100644 index 0000000000..50a122cec5 --- /dev/null +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/arrow.cfg @@ -0,0 +1,65 @@ +arrow.tex.path.201=/hd_res/bus_day_mode/gostraight.png +arrow.tex.path.202=/hd_res/bus_day_mode/gostraightleft.png +arrow.tex.path.203=/hd_res/bus_day_mode/gostraightrightturn.png +arrow.tex.path.204=/hd_res/bus_day_mode/gostraightleftround.png +arrow.tex.path.220=/hd_res/bus_day_mode/gostraightrightround.png +arrow.tex.path.205=/hd_res/bus_day_mode/leftturn.png +arrow.tex.path.206=/hd_res/bus_day_mode/leftleftround.png +arrow.tex.path.207=/hd_res/bus_day_mode/leftwaitturn.png +arrow.tex.path.208=/hd_res/bus_day_mode/rightturn.png +arrow.tex.path.209=/hd_res/bus_day_mode/rightwaitturn.png +arrow.tex.path.210=/hd_res/bus_day_mode/leftrightturn.png +arrow.tex.path.211=/hd_res/bus_day_mode/leftround.png +arrow.tex.path.212=/hd_res/bus_day_mode/noleftturn.png +arrow.tex.path.215=/hd_res/bus_day_mode/gostraightleftright.png +arrow.tex.path.402=/hd_res/bus_day_mode/bicycle_cross_right.png +arrow.tex.path.412=/hd_res/bus_day_mode/bicycle_vertical_right.png +arrow.tex.path.408=/hd_res/bus_day_mode/bicycle_vertical_left.png +arrow.tex.path.410=/hd_res/bus_day_mode/bicycle_cross_left.png +arrow.tex.path.411=/hd_res/bus_day_mode/motorVehiclesC.png +arrow.tex.path.413=/hd_res/bus_day_mode/bicycle_vertical_LL.png +arrow.tex.path.404=/hd_res/bus_day_mode/bicycle_vertical_right_down.png +arrow.tex.path.508=/hd_res/bus_day_mode/Rhombus.png +arrow.tex.path.509=/hd_res/bus_day_mode/Triangle.png +arrow.tex.path.511.1=/hd_res/bus_day_mode/SpeedBump1_white.png +arrow.tex.path.511.2=/hd_res/bus_day_mode/SpeedBump1_yellow.png +arrow.tex.path.511.4=/hd_res/bus_day_mode/SpeedBump1_red.png +arrow.tex.path.501.1=/hd_res/bus_day_mode/SpeedBump2_white.png +arrow.tex.path.501.2=/hd_res/bus_day_mode/SpeedBump2_yellow.png +arrow.tex.path.501.4=/hd_res/bus_day_mode/SpeedBump2_red.png +arrow.tex.path.502.1=/hd_res/bus_day_mode/SpeedBump3_white.png +arrow.tex.path.502.2=/hd_res/bus_day_mode/SpeedBump3_yellow.png +arrow.tex.path.502.4=/hd_res/bus_day_mode/SpeedBump3_red.png +arrow.tex.path.512.1=/hd_res/bus_day_mode/SpeedBump4_white.png +arrow.tex.path.512.2=/hd_res/bus_day_mode/SpeedBump4_yellow.png +arrow.tex.path.512.4=/hd_res/bus_day_mode/SpeedBump4_red.png +arrow.tex.path.517.4=/hd_res/bus_day_mode/SpeedBump5_red.png +arrow.tex.path.517.1=/hd_res/bus_day_mode/SpeedBump5_white.png +arrow.tex.path.517.2=/hd_res/bus_day_mode/SpeedBump5_yellow.png +arrow.tex.path.603=/hd_res/bus_day_mode/BigSquareForbidArea.png +arrow.tex.path.604=/hd_res/bus_day_mode/SmaSquareForbidArea.png +arrow.tex.path.605=/hd_res/bus_day_mode/BigRectForbidArea.png +arrow.tex.path.606=/hd_res/bus_day_mode/SmaRectForbidArea.png +arrow.tex.path.513.1=/hd_res/bus_day_mode/UnSpeedBump1_white.png +arrow.tex.path.513.2=/hd_res/bus_day_mode/UnSpeedBump1_yellow.png +arrow.tex.path.513.4=/hd_res/bus_day_mode/UnSpeedBump1_red.png +arrow.tex.path.514.1=/hd_res/bus_day_mode/UnSpeedBump2_white.png +arrow.tex.path.514.2=/hd_res/bus_day_mode/UnSpeedBump2_yellow.png +arrow.tex.path.514.4=/hd_res/bus_day_mode/UnSpeedBump2_red.png +arrow.tex.path.515.1=/hd_res/bus_day_mode/UnSpeedBump3_white.png +arrow.tex.path.515.2=/hd_res/bus_day_mode/UnSpeedBump3_yellow.png +arrow.tex.path.515.4=/hd_res/bus_day_mode/UnSpeedBump3_red.png +arrow.tex.path.516.1=/hd_res/bus_day_mode/UnSpeedBump4_white.png +arrow.tex.path.516.2=/hd_res/bus_day_mode/UnSpeedBump4_yellow.png +arrow.tex.path.516.4=/hd_res/bus_day_mode/UnSpeedBump4_red.png +arrow.tex.path.518.4=/hd_res/bus_day_mode/UnSpeedBump5_red.png +arrow.tex.path.518.1=/hd_res/bus_day_mode/UnSpeedBump5_white.png +arrow.tex.path.518.2=/hd_res/bus_day_mode/UnSpeedBump5_yellow.png +arrow.tex.path.719=/hd_res/bus_day_mode/busTransitLaneV.png +arrow.tex.path.721=/hd_res/bus_day_mode/hov.png +arrow.tex.path.608=/hd_res/bus_day_mode/noStopMarking.png +arrow.tex.path.219=/hd_res/bus_day_mode/noLeftOrTurn.png +arrow.tex.path.722=/hd_res/bus_day_mode/ParkingLotSign.png +arrow.tex.path.415=/hd_res/bus_day_mode/415_1.png +arrow.tex.path.416=/hd_res/bus_day_mode/416.png +arrow.tex.path.214=/hd_res/bus_day_mode/noTurn.png \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/building.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/building.cfg new file mode 100644 index 0000000000..01cf71312b --- /dev/null +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/building.cfg @@ -0,0 +1,18 @@ + +building.icon.path.type.6=/building/加油站.png;465682 //路径;颜色 +building.icon.path.type.30=/building/医院.png;465682 +building.icon.path.type.35=/building/警察局.png;465682 +building.icon.path.type.36=/building/邮局.png;465682 +building.icon.path.type.37=/building/市政府.png;465682 +building.icon.path.type.39=/building/法院.png;465682 +building.icon.path.type.40=/building/政府机构.png;465682 +building.icon.path.type.41=/building/社区活动中心.png;465682 +building.icon.path.type.42=/building/购物中心.png;465682 +building.icon.path.type.44=/building/银行.png;465682 +building.icon.path.type.66=/building/商业设施.png;465682 +building.icon.path.type.67=/building/展览馆.png;465682 +building.icon.path.type.68=/building/火车站.png;465682 +building.icon.path.type.69=/building/公交站.png;465682 +building.icon.path.type.71=/building/飞机场.png;465682 +building.icon.path.type.75=/building/紧急医疗服务.png;465682 +building.icon.path.type.99=/building/mogo.png;465682 \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/common.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/common.cfg new file mode 100644 index 0000000000..ed35c15918 --- /dev/null +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/bus_day/common.cfg @@ -0,0 +1,68 @@ +backGround=B0BED1 //背景色 +road=80,92,112 //路面颜色 +arrow.color.fac=0.95 //箭头颜色因子 +alphaNumeric.color.fac=1.0 //地标颜色因子 +zebra.color.fac=0.98 //斑马线颜色因子 +spotLight=2.5;0.5;1 //聚光灯 半径;亮度;偏移 +shadow=70,85,107,200 //阴影颜色 +greenBelt=6C8C86;9EBDB4 //绿化带 底部颜色;顶部颜色 +dividerLine=228,233,250;228,233,250;1.0 //白色;黄色;颜色因子 +pole=8999B0;4E617E //灯杆渐变颜色 +guardBar=9FB4C8;7C8EA5;B8C8E1 //隔离带颜色 +roadPile=1.0,0.84,0.23;0.18,0.18,0.18;0.25,0.25,0.25 //路桩颜色 +bridgePier=d2d6e4;979aa4 //桥墩颜色 +cable=D2E3FC;D2E3FC;D2E3FC;D2E3FC //电缆颜色1;电缆颜色2;光缆颜色1;光缆颜色2 +area.type.2=D0E7DD //绿地颜色 +area.type.3.color.pure=99C0E7 //水系颜色 +area.type.3.color.gradient=C5E5FE;7CB0E2 //水系颜色,渐变 +area.type.3.ring.width=50 //水系环宽度 +area.type.4=37485E //路面铺装颜色 +area.type.101=B0BED1 //区域块颜色 +regional=889DB5 //人行步道颜色 +building=7fA3B7D0;D0E3FB //建筑物底部颜色;顶部颜色 +camera=BCC3D0 //摄像头颜色 +trafficLight=BCC3D0 //交通灯颜色 +rsu.type.1=BCC3D0 //雷达颜色 +rsu.type.2=BCC3D0 //mec颜色 +rsu.type.3=BCC3D0 //rsu颜色 +//光照 环境光;漫反射;高光;高光的光泽度 +selfCar.light=0.8,0.8,0.8;0.2,0.2,0.2;0.8,0.8,0.8;100.0 //自车 +otherCar.light=0.7,0.7,0.7;0.1,0.1,0.1;0.3,0.3,0.3;11.0 //他车 +others.light=0.7,0.7,0.7;0.1,0.1,0.1;0.6,0.6,0.6;12.0 //除自车和他车外的其他3d锚点 +fog=d0e4ff;40;80;0.8 //雾颜色,起始距离,结束距离,密度 +skybox.lookat=0;-13;8.5;0;0;3; 0;1;0 //天空盒lookat参数 +skybox.proj=60;0.1;100 //天空盒fov,近平面,远平面 +grayscale=#9EC1DFFF +building.text.color=555555 +building.text.size=100 +station.text.color=0.0,0.0,1.0,1.0 +station.text.size=150 +cable.wave.color=0.5,0.8,1.0,1.0 +cable.wave.vel=1.8 +road.tex.path=/hd_res/bus_day_mode/road.png +zebra.tex.path=/hd_res/bus_day_mode/zebra.png +plane.tex.path=/hd_res/bus_day_mode/plane.png +building.tex.path=/hd_res/bus_day_mode/zhuan.png +divider.15.left.tex.path=/hd_res/bus_day_mode/divider15_left.png +divider.15.right.tex.path=/hd_res/bus_day_mode/divider15_right.png +skybox.2d.tex.path=/skyDay.png +road.isGradient=false +road.gradientColor=ffB5C8E6;00B5C8E6 +road.gradientColor_morning=00f2c3b1;fff2c3b1 +road.gradientColor_daytime=ffB5C8E6;00B5C8E6 +road.gradientColor_evening=00f2c3b1;fff2c3b1 +greenbelt.isGradient=false +greenbelt.gradientColor=ffE5F0E8;00E5F0E8 +greenbelt.gradientColor_morning=00f2c3b1;fff2c3b1 +greenbelt.gradientColor_daytime=ffE5F0E8;00E5F0E8 +greenbelt.gradientColor_evening=00f2c3b1;fff2c3b1 +plane.isGradient=false +plane.gradientColor=ffB5C8E6;00B5C8E6 +plane.gradientColor_morning=00f2c3b1;fff2c3b1 +plane.gradientColor_daytime=ffB5C8E6;00B5C8E6 +plane.gradientColor_evening=00f2c3b1;fff2c3b1 + + + + + diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/day/building.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/day/building.cfg index 642c8e9660..01cf71312b 100644 --- a/libraries/mapmodule/src/main/assets/style/style/normal/vr/day/building.cfg +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/day/building.cfg @@ -1,18 +1,18 @@ -building.icon.path.type.6=/building/加油站.png;555555 //路径;颜色 -building.icon.path.type.30=/building/医院.png;555555 -building.icon.path.type.35=/building/警察局.png;555555 -building.icon.path.type.36=/building/邮局.png;555555 -building.icon.path.type.37=/building/市政府.png;555555 -building.icon.path.type.39=/building/法院.png;555555 -building.icon.path.type.40=/building/政府机构.png;555555 -building.icon.path.type.41=/building/社区活动中心.png;555555 -building.icon.path.type.42=/building/购物中心.png;555555 -building.icon.path.type.44=/building/银行.png;555555 -building.icon.path.type.66=/building/商业设施.png;555555 -building.icon.path.type.67=/building/展览馆.png;555555 -building.icon.path.type.68=/building/火车站.png;555555 -building.icon.path.type.69=/building/公交站.png;555555 -building.icon.path.type.71=/building/飞机场.png;555555 -building.icon.path.type.75=/building/紧急医疗服务.png;555555 -building.icon.path.type.99=/building/mogo.png;555555 \ No newline at end of file +building.icon.path.type.6=/building/加油站.png;465682 //路径;颜色 +building.icon.path.type.30=/building/医院.png;465682 +building.icon.path.type.35=/building/警察局.png;465682 +building.icon.path.type.36=/building/邮局.png;465682 +building.icon.path.type.37=/building/市政府.png;465682 +building.icon.path.type.39=/building/法院.png;465682 +building.icon.path.type.40=/building/政府机构.png;465682 +building.icon.path.type.41=/building/社区活动中心.png;465682 +building.icon.path.type.42=/building/购物中心.png;465682 +building.icon.path.type.44=/building/银行.png;465682 +building.icon.path.type.66=/building/商业设施.png;465682 +building.icon.path.type.67=/building/展览馆.png;465682 +building.icon.path.type.68=/building/火车站.png;465682 +building.icon.path.type.69=/building/公交站.png;465682 +building.icon.path.type.71=/building/飞机场.png;465682 +building.icon.path.type.75=/building/紧急医疗服务.png;465682 +building.icon.path.type.99=/building/mogo.png;465682 \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/day/common.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/day/common.cfg index 94726723a3..6da84511e3 100644 --- a/libraries/mapmodule/src/main/assets/style/style/normal/vr/day/common.cfg +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/day/common.cfg @@ -29,8 +29,8 @@ rsu.type.3=BCC3D0 //rsu颜色 selfCar.light=0.8,0.8,0.8;0.2,0.2,0.2;0.8,0.8,0.8;100.0 //自车 otherCar.light=0.7,0.7,0.7;0.1,0.1,0.1;0.3,0.3,0.3;11.0 //他车 others.light=0.7,0.7,0.7;0.1,0.1,0.1;0.6,0.6,0.6;12.0 //除自车和他车外的其他3d锚点 -fog=BFD9FD;30;70;0.8 //雾颜色,起始距离,结束距离,密度 -skybox.lookat=0;-13;10; 0;0;5; 0;1;0 //天空盒lookat参数 +fog=d0e4ff;40;80;0.8 //雾颜色,起始距离,结束距离,密度 +skybox.lookat=0;-13;8.5;0;0;3; 0;1;0 //天空盒lookat参数 skybox.proj=60;0.1;100 //天空盒fov,近平面,远平面 grayscale=#9EC1DFFF building.text.color=555555 @@ -46,8 +46,31 @@ building.tex.path=/hd_res/day_mode/zhuan.png divider.15.left.tex.path=/hd_res/day_mode/divider15_left.png divider.15.right.tex.path=/hd_res/day_mode/divider15_right.png skybox.2d.tex.path=/skyDay.png - - +road.isGradient=false +road.gradientColor=B5C8E6 +road.gradientColor_morning=B5C8E6 +road.gradientColor_daytime=B5C8E6 +road.gradientColor_night=B5C8E6 +greenbelt.isGradient=false +greenbelt.gradientColor=E5F0E8 +greenbelt.gradientColor_morning=E5F0E8 +greenbelt.gradientColor_daytime=E5F0E8 +greenbelt.gradientColor_night=E5F0E8 +road.isGradient=false +road.gradientColor=ffB5C8E6;00B5C8E6 +road.gradientColor_morning=00f2c3b1;fff2c3b1 +road.gradientColor_daytime=ffB5C8E6;00B5C8E6 +road.gradientColor_evening=00f2c3b1;fff2c3b1 +greenbelt.isGradient=false +greenbelt.gradientColor=ffE5F0E8;00E5F0E8 +greenbelt.gradientColor_morning=00f2c3b1;fff2c3b1 +greenbelt.gradientColor_daytime=ffE5F0E8;00E5F0E8 +greenbelt.gradientColor_evening=00f2c3b1;fff2c3b1 +plane.isGradient=false +plane.gradientColor=ffB5C8E6;00B5C8E6 +plane.gradientColor_morning=00f2c3b1;fff2c3b1 +plane.gradientColor_daytime=ffB5C8E6;00B5C8E6 +plane.gradientColor_evening=00f2c3b1;fff2c3b1 diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/night/building.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/night/building.cfg index 642c8e9660..c86405e0d6 100644 --- a/libraries/mapmodule/src/main/assets/style/style/normal/vr/night/building.cfg +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/night/building.cfg @@ -1,18 +1,18 @@ -building.icon.path.type.6=/building/加油站.png;555555 //路径;颜色 -building.icon.path.type.30=/building/医院.png;555555 -building.icon.path.type.35=/building/警察局.png;555555 -building.icon.path.type.36=/building/邮局.png;555555 -building.icon.path.type.37=/building/市政府.png;555555 -building.icon.path.type.39=/building/法院.png;555555 -building.icon.path.type.40=/building/政府机构.png;555555 -building.icon.path.type.41=/building/社区活动中心.png;555555 -building.icon.path.type.42=/building/购物中心.png;555555 -building.icon.path.type.44=/building/银行.png;555555 -building.icon.path.type.66=/building/商业设施.png;555555 -building.icon.path.type.67=/building/展览馆.png;555555 -building.icon.path.type.68=/building/火车站.png;555555 -building.icon.path.type.69=/building/公交站.png;555555 -building.icon.path.type.71=/building/飞机场.png;555555 -building.icon.path.type.75=/building/紧急医疗服务.png;555555 -building.icon.path.type.99=/building/mogo.png;555555 \ No newline at end of file +building.icon.path.type.6=/building/加油站.png;e6e6e6 //路径;颜色 +building.icon.path.type.30=/building/医院.png;e6e6e6 +building.icon.path.type.35=/building/警察局.png;e6e6e6 +building.icon.path.type.36=/building/邮局.png;e6e6e6 +building.icon.path.type.37=/building/市政府.png;e6e6e6 +building.icon.path.type.39=/building/法院.png;e6e6e6 +building.icon.path.type.40=/building/政府机构.png;e6e6e6 +building.icon.path.type.41=/building/社区活动中心.png;e6e6e6 +building.icon.path.type.42=/building/购物中心.png;e6e6e6 +building.icon.path.type.44=/building/银行.png;e6e6e6 +building.icon.path.type.66=/building/商业设施.png;e6e6e6 +building.icon.path.type.67=/building/展览馆.png;e6e6e6 +building.icon.path.type.68=/building/火车站.png;e6e6e6 +building.icon.path.type.69=/building/公交站.png;e6e6e6 +building.icon.path.type.71=/building/飞机场.png;e6e6e6 +building.icon.path.type.75=/building/紧急医疗服务.png;e6e6e6 +building.icon.path.type.99=/building/mogo.png;e6e6e6 \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/night/common.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/night/common.cfg index 036b6994cd..c8a7d2ef28 100644 --- a/libraries/mapmodule/src/main/assets/style/style/normal/vr/night/common.cfg +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/night/common.cfg @@ -19,7 +19,7 @@ area.type.3.ring.width=50 //水系环宽度 area.type.4=37485E //路面铺装颜色 area.type.101=3C4A69 //区域块颜色 regional=323E58 //人行步道颜色 -building=4D23344E;4B5E89 //建筑物底部颜色;顶部颜色 +building=23344E;4B5E89 //建筑物底部颜色;顶部颜色 camera=0 //摄像头颜色 trafficLight=0 //交通灯颜色 rsu.type.1=0 //雷达颜色 @@ -30,9 +30,9 @@ selfCar.light=0.6,0.6,0.6;0.1,0.1,0.1;0.6,0.6,0.6;12.0 //自车 otherCar.light=0.4,0.4,0.4;0.1,0.1,0.1;0.6,0.6,0.6;12.0 //他车 others.light=0.4,0.4,0.4;0.1,0.1,0.1;0.6,0.6,0.6;12.0 //除自车和他车外的其他3d锚点 fog=BFD9FD;35;70;0.8 //雾颜色,起始距离,结束距离,密度 -skybox.lookat=0;-13;8; 0;0;5; 0;1;0 //天空盒lookat参数 +skybox.lookat=0;-13;8.5;0;0;3; 0;1;0 //天空盒lookat参数 skybox.proj=60;0.1;100 //天空盒fov,近平面,远平面 -grayscale=#9EC1DFFF +grayscale=#BCCCDAFF building.text.color=0.8,0.8,0.8,1.0 building.text.size=100 station.text.color=0.0,0.0,1.0,1.0 @@ -46,6 +46,21 @@ building.tex.path=/hd_res/night_mode/zhuan.png divider.15.left.tex.path=/hd_res/night_mode/divider15_left.png divider.15.right.tex.path=/hd_res/night_mode/divider15_right.png skybox.2d.tex.path=/skyNight.png +road.isGradient=false +road.gradientColor=ffB5C8E6;00B5C8E6 +road.gradientColor_morning=00f2c3b1;fff2c3b1 +road.gradientColor_daytime=ffB5C8E6;00B5C8E6 +road.gradientColor_evening=00f2c3b1;fff2c3b1 +greenbelt.isGradient=false +greenbelt.gradientColor=ffE5F0E8;00E5F0E8 +greenbelt.gradientColor_morning=00f2c3b1;fff2c3b1 +greenbelt.gradientColor_daytime=ffE5F0E8;00E5F0E8 +greenbelt.gradientColor_evening=00f2c3b1;fff2c3b1 +plane.isGradient=false +plane.gradientColor=ffB5C8E6;00B5C8E6 +plane.gradientColor_morning=00f2c3b1;fff2c3b1 +plane.gradientColor_daytime=ffB5C8E6;00B5C8E6 +plane.gradientColor_evening=00f2c3b1;fff2c3b1 diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/alpha.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/alpha.cfg new file mode 100644 index 0000000000..0bb9ddc38e --- /dev/null +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/alpha.cfg @@ -0,0 +1,50 @@ +alpha.tex.path.11.出口.0=/hd_res/taxi_day_mode/exit.png +alpha.tex.path.11.前方学校.1=/hd_res/taxi_day_mode/schoolZone_white.png +alpha.tex.path.11.前方学校.2=/hd_res/taxi_day_mode/schoolZone_yellow.png +alpha.tex.path.11.公交专用.0=/hd_res/taxi_day_mode/WithBusVertical.png +alpha.tex.path.11.潮汐车道.0=/hd_res/taxi_day_mode/ReversibleLane.png +alpha.tex.path.11.公交车道.0=/hd_res/taxi_day_mode/busLaneVertical.png +alpha.tex.path.11.公交车.0=/hd_res/taxi_day_mode/bus.png +alpha.tex.path.11.快速公交专用线.1=/hd_res/taxi_day_mode/bus_Rapid_white.png +alpha.tex.path.11.快速公交专用线.2=/hd_res/taxi_day_mode/bus_Rapid_yellow.png +alpha.tex.path.11.借道区.1=/hd_res/taxi_day_mode/throughWordsV_white.png +alpha.tex.path.11.借道区.2=/hd_res/taxi_day_mode/throughWordsV_yellow.png +alpha.tex.path.11.公交停靠.0=/hd_res/taxi_day_mode/busStop.png +alpha.tex.path.11.警务专用.0=/hd_res/taxi_day_mode/policeSpecialV.png +alpha.tex.path.11.礼让行人.1=/hd_res/taxi_day_mode/comity_PedestrianShu.png +alpha.tex.path.11.礼让行人.2=/hd_res/taxi_day_mode/comityPedestrianCShu.png +alpha.tex.path.11.人行道.0=/hd_res/taxi_day_mode/sideRoad.png +alpha.tex.path.11.观光车专用道.0=/hd_res/taxi_day_mode/tourRoad.png +alpha.tex.path.12.BATTERY.0=/hd_res/taxi_day_mode/battery.png +alpha.tex.path.12.WALK.0=/hd_res/taxi_day_mode/walk.png +alpha.tex.path.12.车让人.0=/hd_res/taxi_day_mode/carpeople.png +alpha.tex.path.12.公交专用.0=/hd_res/taxi_day_mode/WithBusAcross.png +alpha.tex.path.12.公交车道.0=/hd_res/taxi_day_mode/busLaneAcross.png +alpha.tex.path.12.礼让行人.1=/hd_res/taxi_day_mode/comity_Pedestrian.png +alpha.tex.path.12.礼让行人.2=/hd_res/taxi_day_mode/comityPedestrianC.png +alpha.tex.path.12.停.0=/hd_res/taxi_day_mode/stop.png +alpha.tex.path.12.请勿越线.2=/hd_res/taxi_day_mode/noCrossLine.png +alpha.tex.path.22.7-22.0=/hd_res/taxi_day_mode/7-22.png +alpha.tex.path.22.7-9.1=/hd_res/taxi_day_mode/7-9_white.png +alpha.tex.path.22.7-9.2=/hd_res/taxi_day_mode/7-9_yellow.png +alpha.tex.path.22.17-19.1=/hd_res/taxi_day_mode/17-19_white.png +alpha.tex.path.22.17-19.2=/hd_res/taxi_day_mode/17-19_yellow.png +alpha.tex.path.22.16-19.1=/hd_res/taxi_day_mode/16-19_white.png +alpha.tex.path.22.16-19.2=/hd_res/taxi_day_mode/16-19_yellow.png +alpha.tex.path.22.17-20.1=/hd_res/taxi_day_mode/17-20_white.png +alpha.tex.path.22.17-20.2=/hd_res/taxi_day_mode/17-20_yellow.png +alpha.tex.path.22.6-20.0=/hd_res/taxi_day_mode/6-20_white.png +alpha.tex.path.22.6-22.0=/hd_res/taxi_day_mode/6-22_white.png +alpha.tex.path.22.7:30-9:30.1=/hd_res/taxi_day_mode/1730-1930-white.png +alpha.tex.path.22.7:30-9:30.2=/hd_res/taxi_day_mode/1730-1930-yellow.png +alpha.tex.path.22.7-10.0=/hd_res/taxi_day_mode/7-10-speed.png +alpha.tex.path.22.16:00-18:00.1=/hd_res/taxi_day_mode/16_18.png +alpha.tex.path.31.60-80.0=/hd_res/taxi_day_mode/60-80-speed.png +alpha.tex.path.31.80-100.0=/hd_res/taxi_day_mode/80-100-speed.png +alpha.tex.path.31.100-120.0=/hd_res/taxi_day_mode/100-120-speed.png +alpha.tex.path.31.60-100.0=/hd_res/taxi_day_mode/60-100-speed.png +alpha.tex.path.31.90-120.0=/hd_res/taxi_day_mode/90-120-speed.png +alpha.tex.path.32.80.0=/hd_res/taxi_day_mode/80-speed.png +alpha.tex.path.32.60.0=/hd_res/taxi_day_mode/60-speed.png +alpha.tex.path.32.40.1=/hd_res/taxi_day_mode/40-speed-white.png +alpha.tex.path.32.40.2=/hd_res/taxi_day_mode/40-speed-yellow.png \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/arrow.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/arrow.cfg new file mode 100644 index 0000000000..373a161b05 --- /dev/null +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/arrow.cfg @@ -0,0 +1,65 @@ +arrow.tex.path.201=/hd_res/taxi_day_mode/gostraight.png +arrow.tex.path.202=/hd_res/taxi_day_mode/gostraightleft.png +arrow.tex.path.203=/hd_res/taxi_day_mode/gostraightrightturn.png +arrow.tex.path.204=/hd_res/taxi_day_mode/gostraightleftround.png +arrow.tex.path.220=/hd_res/taxi_day_mode/gostraightrightround.png +arrow.tex.path.205=/hd_res/taxi_day_mode/leftturn.png +arrow.tex.path.206=/hd_res/taxi_day_mode/leftleftround.png +arrow.tex.path.207=/hd_res/taxi_day_mode/leftwaitturn.png +arrow.tex.path.208=/hd_res/taxi_day_mode/rightturn.png +arrow.tex.path.209=/hd_res/taxi_day_mode/rightwaitturn.png +arrow.tex.path.210=/hd_res/taxi_day_mode/leftrightturn.png +arrow.tex.path.211=/hd_res/taxi_day_mode/leftround.png +arrow.tex.path.212=/hd_res/taxi_day_mode/noleftturn.png +arrow.tex.path.215=/hd_res/taxi_day_mode/gostraightleftright.png +arrow.tex.path.402=/hd_res/taxi_day_mode/bicycle_cross_right.png +arrow.tex.path.412=/hd_res/taxi_day_mode/bicycle_vertical_right.png +arrow.tex.path.408=/hd_res/taxi_day_mode/bicycle_vertical_left.png +arrow.tex.path.410=/hd_res/taxi_day_mode/bicycle_cross_left.png +arrow.tex.path.411=/hd_res/taxi_day_mode/motorVehiclesC.png +arrow.tex.path.413=/hd_res/taxi_day_mode/bicycle_vertical_LL.png +arrow.tex.path.404=/hd_res/taxi_day_mode/bicycle_vertical_right_down.png +arrow.tex.path.508=/hd_res/taxi_day_mode/Rhombus.png +arrow.tex.path.509=/hd_res/taxi_day_mode/Triangle.png +arrow.tex.path.511.1=/hd_res/taxi_day_mode/SpeedBump1_white.png +arrow.tex.path.511.2=/hd_res/taxi_day_mode/SpeedBump1_yellow.png +arrow.tex.path.511.4=/hd_res/taxi_day_mode/SpeedBump1_red.png +arrow.tex.path.501.1=/hd_res/taxi_day_mode/SpeedBump2_white.png +arrow.tex.path.501.2=/hd_res/taxi_day_mode/SpeedBump2_yellow.png +arrow.tex.path.501.4=/hd_res/taxi_day_mode/SpeedBump2_red.png +arrow.tex.path.502.1=/hd_res/taxi_day_mode/SpeedBump3_white.png +arrow.tex.path.502.2=/hd_res/taxi_day_mode/SpeedBump3_yellow.png +arrow.tex.path.502.4=/hd_res/taxi_day_mode/SpeedBump3_red.png +arrow.tex.path.512.1=/hd_res/taxi_day_mode/SpeedBump4_white.png +arrow.tex.path.512.2=/hd_res/taxi_day_mode/SpeedBump4_yellow.png +arrow.tex.path.512.4=/hd_res/taxi_day_mode/SpeedBump4_red.png +arrow.tex.path.517.4=/hd_res/taxi_day_mode/SpeedBump5_red.png +arrow.tex.path.517.1=/hd_res/taxi_day_mode/SpeedBump5_white.png +arrow.tex.path.517.2=/hd_res/taxi_day_mode/SpeedBump5_yellow.png +arrow.tex.path.603=/hd_res/taxi_day_mode/BigSquareForbidArea.png +arrow.tex.path.604=/hd_res/taxi_day_mode/SmaSquareForbidArea.png +arrow.tex.path.605=/hd_res/taxi_day_mode/BigRectForbidArea.png +arrow.tex.path.606=/hd_res/taxi_day_mode/SmaRectForbidArea.png +arrow.tex.path.513.1=/hd_res/taxi_day_mode/UnSpeedBump1_white.png +arrow.tex.path.513.2=/hd_res/taxi_day_mode/UnSpeedBump1_yellow.png +arrow.tex.path.513.4=/hd_res/taxi_day_mode/UnSpeedBump1_red.png +arrow.tex.path.514.1=/hd_res/taxi_day_mode/UnSpeedBump2_white.png +arrow.tex.path.514.2=/hd_res/taxi_day_mode/UnSpeedBump2_yellow.png +arrow.tex.path.514.4=/hd_res/taxi_day_mode/UnSpeedBump2_red.png +arrow.tex.path.515.1=/hd_res/taxi_day_mode/UnSpeedBump3_white.png +arrow.tex.path.515.2=/hd_res/taxi_day_mode/UnSpeedBump3_yellow.png +arrow.tex.path.515.4=/hd_res/taxi_day_mode/UnSpeedBump3_red.png +arrow.tex.path.516.1=/hd_res/taxi_day_mode/UnSpeedBump4_white.png +arrow.tex.path.516.2=/hd_res/taxi_day_mode/UnSpeedBump4_yellow.png +arrow.tex.path.516.4=/hd_res/taxi_day_mode/UnSpeedBump4_red.png +arrow.tex.path.518.4=/hd_res/taxi_day_mode/UnSpeedBump5_red.png +arrow.tex.path.518.1=/hd_res/taxi_day_mode/UnSpeedBump5_white.png +arrow.tex.path.518.2=/hd_res/taxi_day_mode/UnSpeedBump5_yellow.png +arrow.tex.path.719=/hd_res/taxi_day_mode/busTransitLaneV.png +arrow.tex.path.721=/hd_res/taxi_day_mode/hov.png +arrow.tex.path.608=/hd_res/taxi_day_mode/noStopMarking.png +arrow.tex.path.219=/hd_res/taxi_day_mode/noLeftOrTurn.png +arrow.tex.path.722=/hd_res/taxi_day_mode/ParkingLotSign.png +arrow.tex.path.415=/hd_res/taxi_day_mode/415_1.png +arrow.tex.path.416=/hd_res/taxi_day_mode/416.png +arrow.tex.path.214=/hd_res/taxi_day_mode/noTurn.png \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/building.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/building.cfg new file mode 100644 index 0000000000..01cf71312b --- /dev/null +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/building.cfg @@ -0,0 +1,18 @@ + +building.icon.path.type.6=/building/加油站.png;465682 //路径;颜色 +building.icon.path.type.30=/building/医院.png;465682 +building.icon.path.type.35=/building/警察局.png;465682 +building.icon.path.type.36=/building/邮局.png;465682 +building.icon.path.type.37=/building/市政府.png;465682 +building.icon.path.type.39=/building/法院.png;465682 +building.icon.path.type.40=/building/政府机构.png;465682 +building.icon.path.type.41=/building/社区活动中心.png;465682 +building.icon.path.type.42=/building/购物中心.png;465682 +building.icon.path.type.44=/building/银行.png;465682 +building.icon.path.type.66=/building/商业设施.png;465682 +building.icon.path.type.67=/building/展览馆.png;465682 +building.icon.path.type.68=/building/火车站.png;465682 +building.icon.path.type.69=/building/公交站.png;465682 +building.icon.path.type.71=/building/飞机场.png;465682 +building.icon.path.type.75=/building/紧急医疗服务.png;465682 +building.icon.path.type.99=/building/mogo.png;465682 \ No newline at end of file diff --git a/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/common.cfg b/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/common.cfg new file mode 100644 index 0000000000..586c54c8bd --- /dev/null +++ b/libraries/mapmodule/src/main/assets/style/style/normal/vr/taxi_day/common.cfg @@ -0,0 +1,71 @@ +backGround=D9E9FF //背景色 +road=C4D8F5 //路面颜色 +arrow.color.fac=0.95 //箭头颜色因子 +alphaNumeric.color.fac=1.0 //地标颜色因子 +zebra.color.fac=0.98 //斑马线颜色因子 +spotLight=2.5;0;1 //聚光灯 半径;亮度;偏移 +shadow=4C7793AB //阴影颜色 +greenBelt=D0E6EC;D9EAF4 //绿化带 底部颜色;顶部颜色 +dividerLine=E3F2FF;E1E2C4;1.0 //白色;黄色;颜色因子 +pole=9FB6D6;9FB6D6 //灯杆渐变颜色 +guardBar=CCE0FA;C4D9F7;CEE1FB //隔离带颜色 底,中, 顶 +roadPile=E6D4A1;7F96B5;B3C4DC //路桩颜色 +bridgePier=d2d6e4;979aa4 //桥墩颜色 +cable=D2E3FC;D2E3FC;D2E3FC;D2E3FC //电缆颜色1;电缆颜色2;光缆颜色1;光缆颜色2 +area.type.2=D0E7DD //绿地颜色 +area.type.3.color.pure=B5DFF8 //水系颜色 +area.type.3.color.gradient=C5E5FE;7CB0E2 //水系颜色,渐变 +area.type.3.ring.width=50 //水系环宽度 +area.type.4=D1E1F8 //路面铺装颜色 +area.type.101=D9E9FF //区域块颜色 +regional=D1E1F8 //人行步道颜色 +building=BBCEE9;E0EDFC //建筑物底部颜色;顶部颜色 +camera=9FB6D6 //摄像头颜色 +trafficLight=9FB6D6 //交通灯颜色 +rsu.type.1=9FB6D6 //雷达颜色 +rsu.type.2=9FB6D6 //mec颜色 +rsu.type.3=9FB6D6 //rsu颜色 +//光照 环境光;漫反射;高光;高光的光泽度 +selfCar.light=0.8,0.8,0.8;0.2,0.2,0.2;0.1,0.1,0.1;100.0 //自车 +otherCar.light=0.7,0.7,0.7;0.02,0.02,0.02;0.15,0.15,0.15;11.0 //他车 +others.light=0.7,0.7,0.7;0.1,0.1,0.1;0.6,0.6,0.6;12.0 //除自车和他车外的其他3d锚点 +skybox.lookat=0;-13;8.5;0;0;3; 0;1;0 //天空盒lookat参数 +skybox.proj=60;0.1;100 //天空盒fov,近平面,远平面 +grayscale=#A3C4EAFF +building.text.color=555555 +building.text.size=100 +station.text.color=0.0,0.0,1.0,1.0 +station.text.size=150 +cable.wave.color=0.5,0.8,1.0,1.0 +cable.wave.vel=1.8 +road.tex.path=/hd_res/taxi_day_mode/road.png +zebra.tex.path=/hd_res/taxi_day_mode/zebra.png +plane.tex.path=/hd_res/taxi_day_mode/plane.png +building.tex.path=/hd_res/taxi_day_mode/zhuan.png +divider.15.left.tex.path=/hd_res/taxi_day_mode/divider15_left.png +divider.15.right.tex.path=/hd_res/taxi_day_mode/divider15_right.png +skybox.2d.tex.path=/skyDay.png +road.isGradient=true +road.gradientColor=66B5C8E6;00B5C8E6 +road.gradientColor_morning=00f2c3b1;66f2c3b1 +road.gradientColor_daytime=66B5C8E6;00B5C8E6 +road.gradientColor_evening=00f2c3b1;66f2c3b1 +greenbelt.isGradient=true +greenbelt.gradientColor=66E5F0E8;00E5F0E8 +greenbelt.gradientColor_morning=00f2c3b1;66f2c3b1 +greenbelt.gradientColor_daytime=66E5F0E8;00E5F0E8 +greenbelt.gradientColor_evening=00f2c3b1;66f2c3b1 +plane.isGradient=true +plane.gradientColor=66B5C8E6;00B5C8E6 +plane.gradientColor_morning=00f2c3b1;66f2c3b1 +plane.gradientColor_daytime=66B5C8E6;00B5C8E6 +plane.gradientColor_evening=00f2c3b1;66f2c3b1 +fog=C4E1FF;20;65;0.9 //雾颜色,起始距离,结束距离,密度 +fog_morning=D6CFDC;20;65;0.9 //雾颜色,起始距离,结束距离,密度 +fog_daytime=C4E1FF;20;65;0.9 //雾颜色,起始距离,结束距离,密度 +fog_evening=D6CFDC;20;65;0.9 //雾颜色,起始距离,结束距离,密度 + + + + + diff --git a/libraries/mapmodule/src/main/java/com/autonavi/nge/map/MapEngine.kt b/libraries/mapmodule/src/main/java/com/autonavi/nge/map/MapEngine.kt index fbc8938589..ad3946f1f3 100644 --- a/libraries/mapmodule/src/main/java/com/autonavi/nge/map/MapEngine.kt +++ b/libraries/mapmodule/src/main/java/com/autonavi/nge/map/MapEngine.kt @@ -1025,6 +1025,10 @@ class MapEngine { setStyleName("night") else if(styleMode== MapAutoApi.MAP_STYLE_DAY_VR) setStyleName("day") + else if(styleMode== MapAutoApi.MAP_STYLE_DAY_VR_BUS) + setStyleName("bus_day") + else if(styleMode== MapAutoApi.MAP_STYLE_DAY_VR_TAXI) + setStyleName("taxi_day") } private external fun loadJni(projectDir: String, mapView: MapView?,assetManager: AssetManager?): Long diff --git a/libraries/mapmodule/src/main/java/com/autonavi/nge/map/MapView.kt b/libraries/mapmodule/src/main/java/com/autonavi/nge/map/MapView.kt index 9b169862a5..82c21aceec 100644 --- a/libraries/mapmodule/src/main/java/com/autonavi/nge/map/MapView.kt +++ b/libraries/mapmodule/src/main/java/com/autonavi/nge/map/MapView.kt @@ -596,7 +596,7 @@ class MapView(context: Context, private val mMapStyleParams: IMapStyleParams, pr } if (isRenderFirst) { isRenderFirst = false - if(mMapStyleParams.getStyleMode() == MapAutoApi.MAP_STYLE_NIGHT_VR || mMapStyleParams.getStyleMode() == MapAutoApi.MAP_STYLE_DAY_VR) { + if(mMapStyleParams.getStyleMode() >= MapAutoApi.MAP_STYLE_NIGHT_VR) { mMapController?.setMapViewVisualAngle(mMapStyleParams.getVrAngleDefaultMode()) } mHandler.sendEmptyMessage(INIT_COMPLETE) @@ -720,16 +720,16 @@ class MapView(context: Context, private val mMapStyleParams: IMapStyleParams, pr } mMapEngine.setIsEnableShadow(mMapStyleParams.isShadowEnable()) loadOverCallbak() - if(mMapStyleParams.getHDVisibileArray().isNotEmpty()){ - mMapEngine.setHDTypeVisibile(mMapStyleParams.getHDVisibileArray()) - } +// if(mMapStyleParams.getHDVisibileArray().isNotEmpty()){ +// mMapEngine.setHDTypeVisibile(mMapStyleParams.getHDVisibileArray()) +// } //默认锁车模式 mMapEngine.setLockSelfCar(true) mMapController?.setMapStyle(styleMode) mMapEngine.setScreenToOriginDis(mMapStyleParams.getCarPosition()) - if (mMapStyleParams.getStyleMode() == MapAutoApi.MAP_STYLE_NIGHT_VR || mMapStyleParams.getStyleMode() == MapAutoApi.MAP_STYLE_DAY_VR) { + if (mMapStyleParams.getStyleMode() >= MapAutoApi.MAP_STYLE_NIGHT_VR) { if (DEBUG) { Log.i(TAG, "mapop-surfaceop----onSurfaceCreated:,Vr") } @@ -779,7 +779,7 @@ class MapView(context: Context, private val mMapStyleParams: IMapStyleParams, pr return true } if (isCanZoom) { - if(mMapStyleParams.isSwitchViewAngle() && (mMapStyleParams.getStyleMode() == MapAutoApi.MAP_STYLE_NIGHT_VR || mMapStyleParams.getStyleMode() == MapAutoApi.MAP_STYLE_DAY_VR)){ + if(mMapStyleParams.isSwitchViewAngle() && (mMapStyleParams.getStyleMode() >= MapAutoApi.MAP_STYLE_NIGHT_VR)){ var type = mMapStyleParams.getVrAngleDefaultMode() when(mMapStyleParams.getVrAngleMode()){ mMapStyleParams.getVrAngleDefaultMode()->{ @@ -1151,10 +1151,10 @@ class MapView(context: Context, private val mMapStyleParams: IMapStyleParams, pr } fun onMapFocusChanging() { -// if (DEBUG) { -// Log.i(TAG, "mapop--onMapFocusChanging") -// } -// mHandler.sendEmptyMessage(FOCUS_CHANGE) + if (DEBUG) { + Log.i(TAG, "mapop--onMapFocusChanging") + } + mHandler.sendEmptyMessage(FOCUS_CHANGE) } fun onMapZoomChanging(zoomIndex: Float) { @@ -1168,23 +1168,23 @@ class MapView(context: Context, private val mMapStyleParams: IMapStyleParams, pr } fun onMapRAngleChanging(angle:Float) { -// if (DEBUG) { -// Log.i(TAG, "mapop--onMapRAngleChanging") -// } -// val msg = Message.obtain() -// msg.what = ROTATE_CHANGE -// msg.obj = angle -// mHandler.sendMessage(msg) + if (DEBUG) { + Log.i(TAG, "mapop--onMapRAngleChanging:${angle}") + } + val msg = Message.obtain() + msg.what = ROTATE_CHANGE + msg.obj = angle + mHandler.sendMessage(msg) } fun onMapDAngleChanging(angle:Float) { -// if (DEBUG) { -// Log.i(TAG, "mapop--onMapDAngleChanging:${angle}") -// } -// val msg = Message.obtain() -// msg.what = DAngle_CHANGE -// msg.obj = angle -// mHandler.sendMessage(msg) + if (DEBUG) { + Log.i(TAG, "mapop--onMapDAngleChanging:${angle}") + } + val msg = Message.obtain() + msg.what = DAngle_CHANGE + msg.obj = angle + mHandler.sendMessage(msg) } override fun loadP( diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/map/MapController.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/map/MapController.kt index 1e828eadd5..61b3a263e2 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/map/MapController.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/map/MapController.kt @@ -993,13 +993,14 @@ class MapController(private var context: Context?, private val mMapView: IMapVie } mMapStyleParams.setVrPerspectiveMode(arrays[0]) mMapStyleParams.setVrEyeHeight(arrays[1]) - if(mMapStyleParams.getVrAngleMode()==ConstantExt.MAP_STYLE_VR_BRIDGE){ - var fac = 100.0f/(arrays[0]*8f)/20f - var lookAtZ = alt + 5.0f - var cameraHeight = arrays[2] + lookAtZ - arrays[2]=cameraHeight*fac; - mMapView.getMapEngine().setScreenToOriginDis(lookAtZ*fac) - } + //底层读取中心线的高度,暂时不用轨迹的高度 +// if(mMapStyleParams.getVrAngleMode()==ConstantExt.MAP_STYLE_VR_BRIDGE){ +// var fac = 100.0f/(arrays[0]*8f)/20f +// var lookAtZ = alt + 5.0f +// var cameraHeight = arrays[2] + lookAtZ +// arrays[2]=cameraHeight*fac; +// mMapView.getMapEngine().setScreenToOriginDis(lookAtZ*fac) +// } if (lastAnimZoom == arrays[0] && lastOverLookAngle == arrays[1] && lastEyeHeight == arrays[2]) { mMapView.getMapEngine() @@ -1371,7 +1372,7 @@ class MapController(private var context: Context?, private val mMapView: IMapVie -1 ) delay(1000) - mMapView.getMapEngine().setCfgKeyVal("isSkyBoxFastChange", "disable") + //mMapView.getMapEngine().setCfgKeyVal("isSkyBoxFastChange", "disable") mMapView.getMapEngine().setCfgKeyVal(ConstantExt.FOG, "enable") mMapView.getMapEngine().setCfgKeyVal(ConstantExt.SKYBOX, "enable") } diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/map/MapStyleHelper.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/map/MapStyleHelper.kt index 7fc22d1a00..ecac45f8cc 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/map/MapStyleHelper.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/map/MapStyleHelper.kt @@ -19,7 +19,7 @@ object MapStyleHelper { private val TAG = javaClass.simpleName //更新样式时版本+1 - val currentStyleVersion = 67 + val currentStyleVersion = 68 private var copyJob:Job? = null diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/panel/PanelBtnLocation.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/panel/PanelBtnLocation.kt index 70bb50915c..696c999c86 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/panel/PanelBtnLocation.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/panel/PanelBtnLocation.kt @@ -56,7 +56,7 @@ class PanelBtnLocation(context: Context?,private val mMapController: IMapControl setPos(0, 20, 10, 25) setMyGravity(Gravity.BOTTOM or Gravity.RIGHT) val style = mMapController.getMapStyleParams().getStyleMode() - if(style == MapAutoApi.MAP_STYLE_DAY || style == MapAutoApi.MAP_STYLE_DAY_VR){ + if(style == MapAutoApi.MAP_STYLE_DAY || style >= MapAutoApi.MAP_STYLE_DAY_VR){ btn_pos.setImageResource(R.mipmap.icon_location_day) }else{ btn_pos.setImageResource(R.mipmap.icon_location_night) diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/panel/PanelZoom.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/panel/PanelZoom.kt index 8b1c8f866e..977111b9c8 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/panel/PanelZoom.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/panel/PanelZoom.kt @@ -51,7 +51,7 @@ class PanelZoom(context: Context?,private val mMapController:IMapController) : P setMyGravity(Gravity.RIGHT or Gravity.BOTTOM) setPos(0, 165, 0, 25) val style = mMapController.getMapStyleParams().getStyleMode() - if(style == MapAutoApi.MAP_STYLE_DAY || style == MapAutoApi.MAP_STYLE_DAY_VR){ + if(style == MapAutoApi.MAP_STYLE_DAY || style >= MapAutoApi.MAP_STYLE_DAY_VR){ img_zoom_in.setImageResource(R.mipmap.icon_zoom_in_day) img_zoom_out.setImageResource(R.mipmap.icon_zoom_out_day) }else{ diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/road/RoadHelper.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/road/RoadHelper.kt index 3fe85ab91f..2ea1d605f5 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/road/RoadHelper.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/road/RoadHelper.kt @@ -517,13 +517,15 @@ class RoadHelper private constructor() { roadRectInfos.angle = buf.long / 1e8 val rectList = ArrayList() val size = buf.int - for (i in 0 until size step 8) { - val rect = RoadRect() - rect.topLeft = LonLatPoint(buf.long / 1e8, buf.long / 1e8) - rect.topRight = LonLatPoint(buf.long / 1e8, buf.long / 1e8) - rect.bottomLeft = LonLatPoint(buf.long / 1e8, buf.long / 1e8) - rect.bottomRight = LonLatPoint(buf.long / 1e8, buf.long / 1e8) - rectList.add(rect) + if(size > 0 && size % 8 == 0) { + for (i in 0 until size step 8) { + val rect = RoadRect() + rect.topLeft = LonLatPoint(buf.long / 1e8, buf.long / 1e8) + rect.topRight = LonLatPoint(buf.long / 1e8, buf.long / 1e8) + rect.bottomLeft = LonLatPoint(buf.long / 1e8, buf.long / 1e8) + rect.bottomRight = LonLatPoint(buf.long / 1e8, buf.long / 1e8) + rectList.add(rect) + } } roadRectInfos.roadRects = rectList if (CompileConfig.DEBUG) { diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/utils/ColorUtil.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/utils/ColorUtil.kt new file mode 100644 index 0000000000..9e3ed3428f --- /dev/null +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/inner/utils/ColorUtil.kt @@ -0,0 +1,24 @@ +package com.zhidaoauto.map.sdk.inner.utils + + +object ColorUtil { + fun getColor(segments: List>): List? { + val gradientColors = mutableListOf() + + for (i in 0 until segments.size - 1) { + val (startPercent, startColor) = segments[i] + val (endPercent, endColor) = segments[i + 1] + + for (j in startPercent until endPercent step 10) { + val percent = (j - startPercent).toFloat() / (endPercent - startPercent).toFloat() + val interpolatedAlpha= startColor + (endColor - startColor) * percent + gradientColors.add(interpolatedAlpha.toInt()) + } + } + + // Add the last color + gradientColors.add(segments.last().second) + + return gradientColors + } +} \ No newline at end of file diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/MapAutoApi.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/MapAutoApi.kt index 88170ef2b1..3f63097744 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/MapAutoApi.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/MapAutoApi.kt @@ -53,10 +53,8 @@ object MapAutoApi { const val MAP_STYLE_NIGHT_NAV = 4 //夜间导航模式 const val MAP_STYLE_NIGHT_VR = 5 //夜间VR模式 const val MAP_STYLE_DAY_VR = 6 //白天VR - const val MAP_STYLE_VR_ROAM = 7 //漫游模式 - const val MAP_STYLE_VR_TRANS = 8//过渡模式 - const val MAP_STYLE_VR_ERHAI_B2 = 9//洱海模式 - const val MAP_STYLE_VR_SKY_BOX = 10 //天空盒模式 + const val MAP_STYLE_DAY_VR_BUS = 7 //小巴车白天VR + const val MAP_STYLE_DAY_VR_TAXI = 8 //TAXI白天VR const val MAP_STYLE_VR_ANGLE_NEAR = 0 const val MAP_STYLE_VR_ANGLE_MIDDLE = 1 @@ -65,6 +63,11 @@ object MapAutoApi { const val MAP_STYLE_VR_ANGLE_TOP = 4 const val MAP_STYLE_VR_ANGLE_CROSS = 5 const val MAP_STYLE_VR_ANGLE_MIDDLE_XIAOBA = 6 + const val MAP_STYLE_VR_ROAM = 7 //漫游模式 + const val MAP_STYLE_VR_TRANS = 8//过渡模式 + const val MAP_STYLE_VR_ERHAI_B2 = 9//洱海模式 + const val MAP_STYLE_VR_SKY_BOX = 10 //天空盒模式 + const val ROAM_DIS_1KM = 1000f diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/location/MyLocationStyle.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/location/MyLocationStyle.kt index 368431d0a2..b1fbe14624 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/location/MyLocationStyle.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/location/MyLocationStyle.kt @@ -44,7 +44,7 @@ class MyLocationStyle( private var locationCount = 0 private var is3D: Boolean = false private var carId: Int = 0 - private var isDisplayAnim: Boolean = false + private var isDisplayAnim: Boolean = true private var mMarker: Marker? = null private var lastExecuteTime = -1L @@ -76,7 +76,7 @@ class MyLocationStyle( init { car3DResId = mMapStyleParams?.getLocationIcon3DRes() ?: R.raw.car carResId = mMapStyleParams?.getLocationIconRes() ?: R.mipmap.map_custom_self_car_night - isDisplayAnim = mMapStyleParams?.isDisplayAnim()?: false + isDisplayAnim = mMapStyleParams?.isDisplayAnim()?: true } fun getSelfMarker(): Marker? { @@ -90,7 +90,7 @@ class MyLocationStyle( if (isDisplayAnim) { mMarker?.getMarkeOptions()?.let { it.animMarkerRes(guangquanResId, mMapController).animWaitFrame(animWaitFrame) - .period(animPeriod) + .period(animPeriod).animScale(0.85f) mMarker?.setMarkerOptions(it) } } else { @@ -181,7 +181,7 @@ class MyLocationStyle( if (isDisplayAnim) { markerOptions?.animWaitFrame(animWaitFrame)?.period(animPeriod) - ?.animType(1)?.anchorType(1) + ?.animType(1)?.anchorType(1)?.animScale(0.85f) markerOptions?.animMarkerRes(guangquanResId, mMapController) } else { //待增加删除之前动画模型的逻辑 @@ -230,6 +230,7 @@ class MyLocationStyle( .animType(1) .anchorType(1) .animWaitFrame(animWaitFrame) + .animScale(0.85f) .period(animPeriod) if (isDisplayAnim) { options.animMarkerRes(guangquanResId, mMapController) diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/Marker.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/Marker.kt index ff584aed22..d62723fef6 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/Marker.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/Marker.kt @@ -118,6 +118,13 @@ public class Marker(private var markerOptions: MarkerOptions,private var mMapCon mMapController?.updateAnchorProperty(id,"scale","${markerOptions?.scale ?: scale}") } + + fun setAnimScale(animScale: Float) { + markerOptions.animScale(animScale) + mMapController?.updateAnchorProperty(id,"animScale","${markerOptions?.animScale ?: animScale}") + } + + fun getClickable(): Boolean { return markerOptions.isClickable()!! } diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/MarkerOptions.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/MarkerOptions.kt index dd4fa0fc03..f8fd225863 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/MarkerOptions.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/MarkerOptions.kt @@ -120,6 +120,8 @@ class MarkerOptions { var averageFlag: Int = 1 + var animScale = 1f + constructor(mapController: IMapController?) { this.id = mapController?.getRecycleId() ?: UUID.randomUUID().toString() @@ -148,6 +150,7 @@ class MarkerOptions { markerInfoName ="" controlAngle = false vrIcon = false + animScale = 1f icons.clear() } @@ -588,6 +591,11 @@ class MarkerOptions { return this } + fun animScale(animScale: Float): MarkerOptions{ + this.animScale = animScale + return this + } + fun getPosition(): LonLatPoint? { return originLonLatPoint } diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/MarkerSimpleData.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/MarkerSimpleData.kt index fd59cefb33..74d6e8dfbe 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/MarkerSimpleData.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/marker/MarkerSimpleData.kt @@ -26,7 +26,7 @@ class MarkerSimpleData { var text: String = "" //状态 var status: Int = 0 - //置灰 + //置灰 0 不置灰 1 置灰 var grayScale: Int = 0 diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/poyline/PolylineOptions.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/poyline/PolylineOptions.kt index 5d29f02733..021bc7a8d2 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/poyline/PolylineOptions.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/poyline/PolylineOptions.kt @@ -75,6 +75,8 @@ class PolylineOptions { private var isBright = false + private var isArrow = false + constructor(mapController: IMapController?){ this.mMapController = mapController id = UUID.randomUUID().toString() @@ -86,7 +88,14 @@ class PolylineOptions { this.lineWidth = lineWidth.toFloat() this.lonLatPoints = lonLatPoints } + fun setIsArrow(b: Boolean): PolylineOptions{ + this.isArrow = b + return this + } + fun getIsArrow(): Boolean{ + return isArrow + } fun color(color: Int): PolylineOptions{ this.color = color return this @@ -306,6 +315,7 @@ class PolylineOptions { ", useTexture=" + useTexture + ", maxIndex=" + maxIndex + ", isFacade=" + isFacade + + ", isArrow=" + isArrow + '}' } } \ No newline at end of file diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/tools/MapTools.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/tools/MapTools.kt index c10727886d..956e29fd73 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/tools/MapTools.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/tools/MapTools.kt @@ -7,6 +7,7 @@ import com.zhidaoauto.map.data.point.LonLatPoint import com.zhidaoauto.map.sdk.inner.CompileConfig.DEBUG import com.zhidaoauto.map.sdk.inner.abs.IMapController import com.zhidaoauto.map.sdk.inner.proxy.CommonProxy +import com.zhidaoauto.map.sdk.inner.utils.ColorUtil import com.zhidaoauto.map.sdk.inner.utils.MathUtils import kotlin.math.abs import kotlin.math.absoluteValue @@ -314,4 +315,8 @@ object MapTools { return MathUtils.isInRegion(lon, lat, list) } + fun getColorAlpha(segments: List>): List?{ + return ColorUtil.getColor(segments) + } + } \ No newline at end of file diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/tools/TaskManager.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/tools/TaskManager.kt index 5691c863ef..ce9bf7ebb6 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/tools/TaskManager.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/tools/TaskManager.kt @@ -457,7 +457,7 @@ class TaskManager private constructor() { val array = (trackStr + trackStr1).split(",") val list = ArrayList() for( i in 0 until array.size step 2){ - list.add(LonLatPoint(array[i].toDouble(),array[i+1].toDouble())) + list.add(LonLatPoint(array[i].toDoubleOrNull()?:0.0,array[i+1].toDoubleOrNull()?:0.0)) } mapAutoView.getMapAutoViewHelper()?.setRoamTrajectory(list) } @@ -680,8 +680,8 @@ class TaskManager private constructor() { if (it.status == 1) { RoadHelper.getInstance() ?.getCrossRoadById( - it.tile_id.toInt(), - it.cross_id.toLong(), + it.tile_id.toIntOrNull()?:1, + it.cross_id.toLongOrNull()?:1L, object : IResult> { override fun result( @@ -719,7 +719,7 @@ class TaskManager private constructor() { }) } - monitorGetZebraLine(lonlatPoint, mapAutoView) +// monitorGetZebraLine(lonlatPoint, mapAutoView) } fun monitorDelLine() { @@ -820,9 +820,9 @@ class TaskManager private constructor() { while (buffreader != null && buffreader.readLine().also { line = it } != null) { val lines = line!!.split(",") val lonLatPoint = LonLatPoint() - lonLatPoint.longitude = lines[1].trim().toDouble() - lonLatPoint.latitude = lines[2].trim().toDouble() - lonLatPoint.angle = lines[4].trim().toDouble() + lonLatPoint.longitude = lines[1].trim().toDoubleOrNull()?:0.0 + lonLatPoint.latitude = lines[2].trim().toDoubleOrNull()?:0.0 + lonLatPoint.angle = lines[4].trim().toDoubleOrNull()?:0.0 list.add(lonLatPoint) } trackMap[index] = list @@ -876,17 +876,17 @@ class TaskManager private constructor() { var angle: Double var type: Int if (i == 0) { - id = other[1].trim().toLong() - lon = other[2].trim().toDouble() - lat = other[3].trim().toDouble() - angle = other[5].trim().toDouble() - type = other[7].trim().toInt() + id = other[1].trim().toLongOrNull()?:1L + lon = other[2].trim().toDoubleOrNull()?:0.0 + lat = other[3].trim().toDoubleOrNull()?:0.0 + angle = other[5].trim().toDoubleOrNull()?:0.0 + type = other[7].trim().toIntOrNull()?:1 } else { - id = other[0].trim().toLong() - lon = other[1].trim().toDouble() - lat = other[2].trim().toDouble() - angle = other[4].trim().toDouble() - type = other[6].trim().toInt() + id = other[0].trim().toLongOrNull()?:1L + lon = other[1].trim().toDoubleOrNull()?:0.0 + lat = other[2].trim().toDoubleOrNull()?:0.0 + angle = other[4].trim().toDoubleOrNull()?:0.0 + type = other[6].trim().toIntOrNull()?:1 } if (i == count - 1) { centerMarkerOptions.lon = lon diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoView.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoView.kt index 2b07edd8db..58bc5cdd24 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoView.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoView.kt @@ -186,7 +186,7 @@ open class MapAutoView : FrameLayout, LonLatPointListener, ITraffic,ILockLocatio val isWeatherEnable = typedArray.getBoolean(R.styleable.MapAutoView_isWeatherEnable, true) val locationIcon3DRes = typedArray.getResourceId(R.styleable.MapAutoView_locationIcon3DRes, R.raw.car) val locationIconRes = typedArray.getResourceId(R.styleable.MapAutoView_locationIconRes, R.mipmap.map_custom_self_car_night) - val isDisplayAnim = typedArray.getBoolean(R.styleable.MapAutoView_isDisplayAnim, false) + val isDisplayAnim = typedArray.getBoolean(R.styleable.MapAutoView_isDisplayAnim, true) typedArray.recycle() val mapStyleParams = MapStyleParams() mapStyleParams.setZoom(zoom) diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoViewHelper.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoViewHelper.kt index f0aefc0cd2..5c578b505f 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoViewHelper.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapAutoViewHelper.kt @@ -427,7 +427,7 @@ class MapAutoViewHelper(mapAutoView: MapAutoView) { /** * 设置地图模式 * - * @param stylemode 视图模式 0: 日间模式 1:夜间模式 2:SATEL模式 3:日间导航模式 4:夜间导航模式 + * @param stylemode 视图模式 0: 日间模式 1:夜间模式 2:SATEL模式 3:日间导航模式 4:夜间导航模式 5:夜间vr模式 6 默认白天模式 7 小巴车白天VR 8 Taxi白天 */ fun setMapStyle(stylemode: Int) { if (CompileConfig.DEBUG) { diff --git a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapStyleParams.kt b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapStyleParams.kt index 27aaa3710c..c97ec09675 100644 --- a/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapStyleParams.kt +++ b/libraries/mapmodule/src/main/java/com/zhidaoauto/map/sdk/open/view/MapStyleParams.kt @@ -101,7 +101,7 @@ class MapStyleParams: IMapStyleParams { private var isWeatherEnable = false //是否使用光圈 - private var isDisplayAnim = false + private var isDisplayAnim = true companion object { diff --git a/libraries/mapmodule/src/main/res/raw/guangquan.nt3d b/libraries/mapmodule/src/main/res/raw/guangquan.nt3d index 7185ca3b61..c0743182de 100644 Binary files a/libraries/mapmodule/src/main/res/raw/guangquan.nt3d and b/libraries/mapmodule/src/main/res/raw/guangquan.nt3d differ diff --git a/libraries/mapmodule/src/main/res/values/attrs.xml b/libraries/mapmodule/src/main/res/values/attrs.xml index 81fdb632bb..79d339c0eb 100644 --- a/libraries/mapmodule/src/main/res/values/attrs.xml +++ b/libraries/mapmodule/src/main/res/values/attrs.xml @@ -23,6 +23,8 @@ + + diff --git a/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/UnableLaunchData.java b/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/UnableLaunchData.java new file mode 100644 index 0000000000..8dcbf8d2be --- /dev/null +++ b/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/UnableLaunchData.java @@ -0,0 +1,104 @@ +package com.zhjt.mogo.adas.data.bean; + +import com.google.protobuf.GeneratedMessageV3; +import com.google.protobuf.InvalidProtocolBufferException; +import com.google.protobuf.util.JsonFormat; + +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import function_state_management.FSMStatusReasonQueryOuterClass; +import system_master.SsmInfo; +import system_master.SystemStatusInfo; + +/** + * 检测到不能启动自动驾驶的数据 + * 此类目前主要用于启动自驾命令下发后的域控数据记录 + */ +public class UnableLaunchData { + /** + * 所使用的检测版本 + */ + public final String abilityVersion; + + /** + * 老底盘数据 + * null表示未用到此数据 + * TODO 不需要底盘数据,如果底盘数据存在不能启动自驾的原因会限制启动自驾命令的下发 + */ +// public final VehicleStateOuterClass.VehicleState vehicleState; + + /** + * 新底盘数据 + * null表示未用到此数据 + * TODO 不需要底盘数据,如果底盘数据存在不能启动自驾的原因会限制启动自驾命令的下发 + */ +// public final ChassisStatesOuterClass.ChassisStates chassisStates; + + /** + * 老SSM数据 + * null表示未用到此数据 + */ + public final SystemStatusInfo.StatusInfo statusInfo; + + /** + * 新SSM数据 + * null表示未用到此数据 + */ + public final SsmInfo.SsmStatusInf ssmInfo; + public final FSMStatusReasonQueryOuterClass.FSMStatusReasonRespond fsmStatusReasonRespond;//FSM数据 + + public UnableLaunchData(String abilityVersion, + SystemStatusInfo.StatusInfo statusInfo, + SsmInfo.SsmStatusInf ssmInfo, + FSMStatusReasonQueryOuterClass.FSMStatusReasonRespond fsmStatusReasonRespond) { + this.abilityVersion = abilityVersion; + this.statusInfo = statusInfo; + this.ssmInfo = ssmInfo; + this.fsmStatusReasonRespond = fsmStatusReasonRespond; + } + + public String getJson() { + JSONObject jsonObject = new JSONObject(); + try { + jsonObject.put("ability_version", abilityVersion); + JSONArray array = new JSONArray(); + if (statusInfo != null) { + arrayPut(array, statusInfo.getClass().getName(), statusInfo.getAutoPilotReady(), statusInfo.getAutoPilotUnreadyReason()); + } + if (ssmInfo != null) { + arrayPut(array, ssmInfo.getClass().getName(), ssmInfo.getAutoPilotReady(), ssmInfo.getAutoPilotUnreadyReason()); + } + if (fsmStatusReasonRespond != null) { + arrayPut(array, fsmStatusReasonRespond); + } + if (array.length() > 0) { + jsonObject.put("data", array); + } + } catch (JSONException | InvalidProtocolBufferException e) { + e.printStackTrace(); + } + return jsonObject.toString(); + } + + private void arrayPut(JSONArray array, String name, boolean isReady, String reason) throws JSONException { + JSONObject objectParse = new JSONObject(); + objectParse.put("auto_pilot_ready", isReady); + if (reason != null) { + objectParse.put("auto_pilot_unready_reason", reason); + } + JSONObject object = new JSONObject(); + object.put("name", name); + object.put("parse", objectParse); + array.put(object); + } + + private void arrayPut(JSONArray array, GeneratedMessageV3 message) throws JSONException, InvalidProtocolBufferException { + JSONObject object = new JSONObject(); + object.put("name", message.getClass().getName()); +// object.put("original", ByteUtil.byteArrToHex(message.toByteArray(), false)); + object.put("parse", new JSONObject(JsonFormat.printer().print(message))); + array.put(object); + } +} diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/ByteUtil.java b/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/utils/ByteUtil.java similarity index 98% rename from libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/ByteUtil.java rename to libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/utils/ByteUtil.java index 794ba88e8e..015f877f82 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/ByteUtil.java +++ b/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/utils/ByteUtil.java @@ -1,10 +1,7 @@ -package com.zhidao.support.adas.high.common; +package com.zhjt.mogo.adas.utils; import java.math.BigInteger; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; public class ByteUtil { private static final String TAG = ByteUtil.class.getSimpleName(); diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java index db9b3f1d65..8956740bb5 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java @@ -23,7 +23,7 @@ import androidx.annotation.Nullable; import com.google.protobuf.InvalidProtocolBufferException; import com.zhidao.support.adas.high.bean.VersionCompatibility; import com.zhidao.support.adas.high.common.AutopilotReview; -import com.zhidao.support.adas.high.common.ByteUtil; +import com.zhjt.mogo.adas.utils.ByteUtil; import com.zhidao.support.adas.high.common.Constants; import com.zhidao.support.adas.high.common.CupidLogUtils; import com.zhidao.support.adas.high.common.Define; diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java index 4fe125cf46..f5e77e84b6 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java @@ -10,6 +10,7 @@ import com.zhjt.mogo.adas.data.AdasConstants; import com.zhjt.mogo.adas.data.AiCloudTask; import com.zhjt.mogo.adas.data.bean.AdasParam; import com.zhjt.mogo.adas.data.bean.AutopilotStatistics; +import com.zhjt.mogo.adas.data.bean.UnableLaunchData; import com.zhjt.mogo.adas.data.bean.UnableLaunchReason; import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable; import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask; @@ -469,15 +470,16 @@ public interface OnAdasListener { * 是否有能力启动自动驾驶 * * @param isAutopilotAbility 是否能启动自动驾驶 + * @param unableLaunchData 原始数据 * @param unableAutopilotReasons 不能启动自动驾驶原因 */ - void onAutopilotAbility(boolean isAutopilotAbility, @Nullable ArrayList unableAutopilotReasons); + void onAutopilotAbility(boolean isAutopilotAbility, @NonNull UnableLaunchData unableLaunchData, @Nullable ArrayList unableAutopilotReasons); /** * 是否有能力启动平行驾驶 * - * @param isParallelDrivingAbility 是否能启动平行驾驶 + * @param isParallelDrivingAbility 是否能启动平行驾驶 */ void onParallelDrivingAbility(boolean isParallelDrivingAbility); diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility230.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility230.java index 8414533e3c..49f8901946 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility230.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility230.java @@ -1,7 +1,9 @@ package com.zhidao.support.adas.high.common.autopilot.ability; +import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import com.zhjt.mogo.adas.data.bean.UnableLaunchData; import com.zhjt.mogo.adas.data.bean.UnableLaunchReason; import java.util.ArrayList; @@ -25,7 +27,7 @@ public class AutopilotAbility230 { private OnAutopilotAbilityListener listener; protected interface OnAutopilotAbilityListener { - void onAutopilotAbility(boolean isAutopilotAbility, @Nullable ArrayList unableAutopilotReasons); + void onAutopilotAbility(boolean isAutopilotAbility, @NonNull UnableLaunchData unableLaunchData, @Nullable ArrayList unableAutopilotReasons); } protected AutopilotAbility230() { @@ -68,7 +70,7 @@ public class AutopilotAbility230 { } if (listener != null) { - listener.onAutopilotAbility(isAutopilotAbility, unableAutopilotReasons); + listener.onAutopilotAbility(isAutopilotAbility, new UnableLaunchData(this.getClass().getSimpleName(), null, null, null), unableAutopilotReasons); } } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility250.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility250.java index d818fedbaf..26edab1848 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility250.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility250.java @@ -1,9 +1,11 @@ package com.zhidao.support.adas.high.common.autopilot.ability; +import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.zhidao.support.adas.high.AdasManager; import com.zhidao.support.adas.high.common.CupidLogUtils; +import com.zhjt.mogo.adas.data.bean.UnableLaunchData; import com.zhjt.mogo.adas.data.bean.UnableLaunchReason; import java.util.ArrayList; @@ -36,7 +38,7 @@ public class AutopilotAbility250 { private OnAutopilotAbilityListener listener; protected interface OnAutopilotAbilityListener { - void onAutopilotAbility(boolean isAutopilotAbility, @Nullable ArrayList unableAutopilotReasons); + void onAutopilotAbility(boolean isAutopilotAbility, @NonNull UnableLaunchData unableLaunchData, @Nullable ArrayList unableAutopilotReasons); void onStatusQuery(); @@ -171,7 +173,7 @@ public class AutopilotAbility250 { } } if (listener != null) { - listener.onAutopilotAbility(isAutopilotAbility, unableAutopilotReasons); + listener.onAutopilotAbility(isAutopilotAbility, new UnableLaunchData(this.getClass().getSimpleName(), statusInfo, null, null), unableAutopilotReasons); } } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility330.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility330.java index 005851b51c..e8c95dc670 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility330.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility330.java @@ -2,10 +2,12 @@ package com.zhidao.support.adas.high.common.autopilot.ability; import android.text.TextUtils; +import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.zhidao.support.adas.high.AdasManager; import com.zhidao.support.adas.high.common.CupidLogUtils; +import com.zhjt.mogo.adas.data.bean.UnableLaunchData; import com.zhjt.mogo.adas.data.bean.UnableLaunchReason; import java.util.ArrayList; @@ -34,7 +36,7 @@ public class AutopilotAbility330 { private OnAutopilotAbilityListener listener; protected interface OnAutopilotAbilityListener { - void onAutopilotAbility(boolean isAutopilotAbility, @Nullable ArrayList unableAutopilotReasons); + void onAutopilotAbility(boolean isAutopilotAbility, @NonNull UnableLaunchData unableLaunchData, @Nullable ArrayList unableAutopilotReasons); void onStatusQuery(); @@ -147,7 +149,7 @@ public class AutopilotAbility330 { } } if (listener != null) { - listener.onAutopilotAbility(isAutopilotAbility, unableAutopilotReasons); + listener.onAutopilotAbility(isAutopilotAbility, new UnableLaunchData(this.getClass().getSimpleName(), statusInfo, null, null), unableAutopilotReasons); } } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility350And360.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility350And360.java index c139b59ca2..900e064b18 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility350And360.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility350And360.java @@ -1,9 +1,11 @@ package com.zhidao.support.adas.high.common.autopilot.ability; +import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.zhidao.support.adas.high.AdasManager; import com.zhidao.support.adas.high.common.CupidLogUtils; +import com.zhjt.mogo.adas.data.bean.UnableLaunchData; import com.zhjt.mogo.adas.data.bean.UnableLaunchReason; import java.util.ArrayList; @@ -31,7 +33,7 @@ public class AutopilotAbility350And360 { private OnAutopilotAbilityListener listener; protected interface OnAutopilotAbilityListener { - void onAutopilotAbility(boolean isAutopilotAbility, @Nullable ArrayList unableAutopilotReasons); + void onAutopilotAbility(boolean isAutopilotAbility, @NonNull UnableLaunchData unableLaunchData, @Nullable ArrayList unableAutopilotReasons); } @@ -146,7 +148,7 @@ public class AutopilotAbility350And360 { } } if (listener != null) { - listener.onAutopilotAbility(isAutopilotAbility, unableAutopilotReasons); + listener.onAutopilotAbility(isAutopilotAbility, new UnableLaunchData(this.getClass().getSimpleName(), null, statusInfo, null), unableAutopilotReasons); } } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility360.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility360.java index 0e26874210..bd7aecb4f8 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility360.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility360.java @@ -2,10 +2,12 @@ package com.zhidao.support.adas.high.common.autopilot.ability; import android.text.TextUtils; +import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.zhidao.support.adas.high.AdasManager; import com.zhidao.support.adas.high.common.CupidLogUtils; +import com.zhjt.mogo.adas.data.bean.UnableLaunchData; import com.zhjt.mogo.adas.data.bean.UnableLaunchReason; import java.util.ArrayList; @@ -27,7 +29,7 @@ public class AutopilotAbility360 { private OnAutopilotAbilityListener listener; protected interface OnAutopilotAbilityListener { - void onAutopilotAbility(boolean isAutopilotAbility, @Nullable ArrayList unableAutopilotReasons); + void onAutopilotAbility(boolean isAutopilotAbility, @NonNull UnableLaunchData unableLaunchData, @Nullable ArrayList unableAutopilotReasons); } @@ -119,7 +121,7 @@ public class AutopilotAbility360 { } } if (listener != null) { - listener.onAutopilotAbility(isAutopilotAbility, unableAutopilotReasons); + listener.onAutopilotAbility(isAutopilotAbility, new UnableLaunchData(this.getClass().getSimpleName(), null, statusInfo, fsmStatusReasonRespond), unableAutopilotReasons); } } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbilityManager.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbilityManager.java index 8f0c11c4f7..932d456523 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbilityManager.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbilityManager.java @@ -4,12 +4,14 @@ import android.os.Handler; import android.os.Message; import android.util.Log; +import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.zhidao.support.adas.high.AdasManager; import com.zhidao.support.adas.high.OnAdasListener; import com.zhidao.support.adas.high.common.Constants; import com.zhidao.support.adas.high.common.CupidLogUtils; +import com.zhjt.mogo.adas.data.bean.UnableLaunchData; import com.zhjt.mogo.adas.data.bean.UnableLaunchReason; import java.util.ArrayList; @@ -151,9 +153,9 @@ public class AutopilotAbilityManager implements AutopilotAbility230.OnAutopilotA } @Override - public void onAutopilotAbility(boolean isAutopilotAbility, @Nullable ArrayList unableAutopilotReasons) { + public void onAutopilotAbility(boolean isAutopilotAbility, @NonNull UnableLaunchData unableLaunchData, @Nullable ArrayList unableAutopilotReasons) { if (listener != null) { - listener.onAutopilotAbility(isAutopilotAbility, unableAutopilotReasons); + listener.onAutopilotAbility(isAutopilotAbility, unableLaunchData, unableAutopilotReasons); } } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/msg/AiCloudTaskMessage.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/msg/AiCloudTaskMessage.java index ff1e29de81..a450114b28 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/msg/AiCloudTaskMessage.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/msg/AiCloudTaskMessage.java @@ -6,7 +6,7 @@ import com.google.protobuf.ByteString; import com.google.protobuf.InvalidProtocolBufferException; import com.zhidao.support.adas.high.AdasChannel; import com.zhidao.support.adas.high.OnAdasListener; -import com.zhidao.support.adas.high.common.ByteUtil; +import com.zhjt.mogo.adas.utils.ByteUtil; import com.zhidao.support.adas.high.common.CupidLogUtils; import com.zhidao.support.adas.high.protocol.RawData; import com.zhjt.mogo.adas.data.AiCloudTask; diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawData.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawData.java index fef1bf24f3..2aaa8b8bee 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawData.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawData.java @@ -1,6 +1,6 @@ package com.zhidao.support.adas.high.protocol; -import com.zhidao.support.adas.high.common.ByteUtil; +import com.zhjt.mogo.adas.utils.ByteUtil; import com.zhidao.support.adas.high.common.ProtocolStatus; import mogo.telematics.pad.MessagePad; diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawPack.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawPack.java index feca7af37e..0a2154162b 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawPack.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawPack.java @@ -1,6 +1,6 @@ package com.zhidao.support.adas.high.protocol; -import com.zhidao.support.adas.high.common.ByteUtil; +import com.zhjt.mogo.adas.utils.ByteUtil; import com.zhidao.support.adas.high.common.Constants; import java.util.concurrent.atomic.AtomicLong; diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawUnpack.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawUnpack.java index e198a01d69..5129a5c568 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawUnpack.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/protocol/RawUnpack.java @@ -1,6 +1,6 @@ package com.zhidao.support.adas.high.protocol; -import com.zhidao.support.adas.high.common.ByteUtil; +import com.zhjt.mogo.adas.utils.ByteUtil; import com.zhidao.support.adas.high.common.Constants; import com.zhidao.support.adas.high.common.ProtocolStatus; diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java index d2c205aae1..6b0039dcca 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java @@ -15,7 +15,7 @@ import androidx.annotation.NonNull; import com.google.protobuf.InvalidProtocolBufferException; import com.zhidao.support.adas.high.AdasChannel; -import com.zhidao.support.adas.high.common.ByteUtil; +import com.zhjt.mogo.adas.utils.ByteUtil; import com.zhidao.support.adas.high.common.CupidLogUtils; import com.zhidao.support.adas.high.common.ReceiveTimeoutManager; import com.zhidao.support.adas.high.common.ReconnectManager; diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/VisualAngleMode.kt b/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/VisualAngleMode.kt index 5d8a37aac7..6d6e1e1116 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/VisualAngleMode.kt +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/VisualAngleMode.kt @@ -37,7 +37,22 @@ enum class VisualAngleMode(val code: Int) : IMogoMapVisualAngle { /** * 漫游模式 */ - MAP_STYLE_VR_ROMA(7); + MAP_STYLE_VR_ROMA(7), + + /** + * 过渡模式 + */ + MAP_STYLE_VR_TRANS(8), + + /** + * 洱海模式 + */ + MAP_STYLE_VR_ERHAI_B2(9), + + /** + * 天空盒模式 + */ + MAP_STYLE_VR_SKY_BOX(10); override val isLongSight: Boolean get() = code == MODE_LONG_SIGHT.code diff --git a/libraries/mogo-map/build.gradle b/libraries/mogo-map/build.gradle index f7052af23d..1569e6c489 100644 --- a/libraries/mogo-map/build.gradle +++ b/libraries/mogo-map/build.gradle @@ -59,10 +59,12 @@ dependencies { if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { + implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogomapapi implementation rootProject.ext.dependencies.mogocommons implementation rootProject.ext.dependencies.mogo_core_function_call } else { + implementation project(':core:mogo-core-data') implementation project(':libraries:mogo-map-api') implementation project(':foudations:mogo-commons') implementation project(':core:mogo-core-function-call') diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.kt b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.kt index b44e5bd196..447b706eab 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.kt +++ b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.kt @@ -10,6 +10,7 @@ import android.text.TextUtils import android.view.MotionEvent import android.view.View import com.autonavi.nge.map.OnMapScreenShotListener +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.deva.chain.ChainConstant import com.mogo.eagle.core.data.enums.TrafficTypeEnum import com.mogo.eagle.core.data.map.MogoLatLng @@ -22,6 +23,7 @@ import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager.invoke import com.mogo.eagle.core.function.call.map.CallerMapRomaListener.invokeMapRomaRange import com.mogo.eagle.core.function.call.map.CallerMapRomaListener.invokeMapRomaStatus import com.mogo.eagle.core.function.call.map.CallerMapScreenListenerManager +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.i @@ -64,7 +66,7 @@ import kotlin.properties.Delegates class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIController, OnMapLoadedListener, OnMapClickListener, OnMapTouchListener, OnMarkClickListener, OnMapStyleListener, OnMapViewVisualAngleChangeListener, OnRoadInfoListener, - ILog, OnRoamStatusListener, OnRoadSideFenceRegionListener,OnMapScreenShotListener { + ILog, OnRoamStatusListener, OnRoadSideFenceRegionListener, OnMapScreenShotListener { companion object { private const val TAG = "AMapViewWrapper" @@ -126,7 +128,7 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle mMapView.setOnRoamStatusListener(this) mMapView.setOnMapViewVisualAngleChangeListener(this) mMapView.setOnRoadInfoListener(this, 1) - mMapView.setOnRoadSideFenceRegionListener(this,5000) + mMapView.setOnRoadSideFenceRegionListener(this, 5000) mMapView.registerScreenListener(this) registerLogListener(this, mMapView.getEventController()) d(M_MAP + TAG, "initListeners - setOnMapStyleListener - view $mMapView") @@ -197,7 +199,7 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle override fun onMapLoaded() { i(M_MAP + TAG, "onMapLoaded: ") if (checkAMapView()) { - val hdVisibleArray = intArrayOf( + val hdVisibleArray = arrayListOf( HDTypes.DIVIDER.type, HDTypes.ROAD_AREA.type, HDTypes.STOP_LINE.type, @@ -216,8 +218,16 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle HDTypes.regional.type, HDTypes.geometricLinear.type, HDTypes.geometricSurface.type, - HDTypes.poi.type) - mMapView.getMapAutoViewHelper()!!.setHDTypeVisible(hdVisibleArray) + HDTypes.poi.type + ) + if (AppIdentityModeUtils.isTaxiPassenger( + FunctionBuildConfig.appIdentityMode + ) + ) { + hdVisibleArray.add(HDTypes.CABLE.type) + hdVisibleArray.add(HDTypes.SIGNAL_LINE.type) + } + mMapView.getMapAutoViewHelper()!!.setHDTypeVisible(hdVisibleArray.toIntArray()) loadPreVehicleModel() } } @@ -610,7 +620,7 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle if (count >= 3) { return@post } - handler.postDelayed({ changeCurrentIcon(iconId) },300L) + handler.postDelayed({ changeCurrentIcon(iconId) }, 300L) reChangeIconCount.set(0) } } @@ -656,15 +666,19 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle MapAutoApi.MAP_STYLE_DAY, MapAutoApi.MAP_STYLE_DAY_NAV -> { mCurrentUI = EnumMapUI.MAP_STYLE_DAY_NAV } + MapAutoApi.MAP_STYLE_NIGHT -> { mCurrentUI = EnumMapUI.MAP_STYLE_NIGHT } + MapAutoApi.MAP_STYLE_NIGHT_NAV -> { mCurrentUI = EnumMapUI.MAP_STYLE_NIGHT_NAV } + MapAutoApi.MAP_STYLE_NIGHT_VR -> { mCurrentUI = EnumMapUI.MAP_STYLE_NIGHT_VR } + MapAutoApi.MAP_STYLE_DAY_VR -> { mCurrentUI = EnumMapUI.MAP_STYLE_DAY_VR } @@ -741,6 +755,18 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle TrafficTypeEnum.TYPE_TRAFFIC_ID_TRUCK, "添加感知模型到地图中……preVehicleStrTruck=" ) + addPreVehicleModelWeiZhi( + TrafficTypeEnum.TYPE_TRAFFIC_ID_LUCE_TA_CHE, + "添加感知模型到地图中……preVehicleStrLuceTaChe=" + ) + addPreVehicleModelWeiZhi( + TrafficTypeEnum.TYPE_TRAFFIC_ID_LUCE_BUS, + "添加感知模型到地图中……preVehicleStrLuceBus=" + ) + addPreVehicleModelWeiZhi( + TrafficTypeEnum.TYPE_TRAFFIC_ID_LUCE_TRUCK, + "添加感知模型到地图中……preVehicleStrTruck=" + ) } } @@ -753,9 +779,15 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle private fun addPreVehicleModelWeiZhi(typeTrafficId: TrafficTypeEnum, logMsg: String) { // 根据当前的地图皮肤模式动态替换 val preVehicleStrWeiZhi: String? = if (isDayMode) { - map.addPreVehicleModel(typeTrafficId.type, typeTrafficId.traffic3DIconId) + map.addPreVehicleModel( + typeTrafficId.type, + TrafficTypeEnum.getMarker3DRes(typeTrafficId.type) + ) } else { - map.addPreVehicleModel(typeTrafficId.type, typeTrafficId.traffic3DNightIconId) + map.addPreVehicleModel( + typeTrafficId.type, + TrafficTypeEnum.getMarkerNight3DRes(typeTrafficId.type) + ) } d(M_MAP + TAG, logMsg + preVehicleStrWeiZhi) if (preVehicleStrWeiZhi == null) { @@ -893,7 +925,7 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle } override fun getMapScreenShot() { - if(checkAMapView()){ + if (checkAMapView()) { mMapView.getMapAutoViewHelper()?.toScreen() } } @@ -905,6 +937,7 @@ class AMapViewWrapper(mMapView: MapAutoView) : IMogoMapView, IMogoMapUIControlle } return MODE_MEDIUM_SIGHT } + /** * 高精地图屏幕截图 */ diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/location/GDLocationClient.kt b/libraries/mogo-map/src/main/java/com/mogo/map/location/GDLocationClient.kt index c76c7271f4..fda36e748c 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/location/GDLocationClient.kt +++ b/libraries/mogo-map/src/main/java/com/mogo/map/location/GDLocationClient.kt @@ -13,7 +13,7 @@ import com.mogo.eagle.core.data.deva.chain.ChainConstant import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_HTTP_DNS_CITY_CODE import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.function.call.map.CallerGaoDeMapLocationListenerManager -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.CoordinateTransform import com.mogo.eagle.core.utilcode.util.TimeUtils import com.zhjt.service.chain.ChainLog @@ -119,18 +119,18 @@ class GDLocationClient private constructor() : AMapLocationListener, if (cityCode != null && cityCode.isNotEmpty()) { if (mCityCode.isEmpty() || mCityCode != cityCode) { setCityCode(cityCode) - SharedPrefsMgr.getInstance(AbsMogoApplication.getApp()) + SharedPrefsMgr.getInstance() .putString(SharedPrefsConstants.LOCATION_CITY_CODE, cityCode) } } // 缓存经纬度 - SharedPrefsMgr.getInstance(AbsMogoApplication.getApp()) + SharedPrefsMgr.getInstance() .putString( SharedPrefsConstants.LOCATION_LATITUDE, aMapLocation.latitude.toString() ) - SharedPrefsMgr.getInstance(AbsMogoApplication.getApp()) + SharedPrefsMgr.getInstance() .putString( SharedPrefsConstants.LOCATION_LONGITUDE, aMapLocation.longitude.toString() diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/utils/ObjectUtils.java b/libraries/mogo-map/src/main/java/com/mogo/map/utils/ObjectUtils.java index 328e7af299..4706f1d71a 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/utils/ObjectUtils.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/utils/ObjectUtils.java @@ -6,6 +6,7 @@ import android.text.TextUtils; import android.view.View; import com.mogo.eagle.core.data.map.MogoLatLng; +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; import com.mogo.map.overlay.line.Polyline; import com.mogo.map.overlay.point.Point; import com.mogo.map.uicontroller.MapCameraPosition; @@ -17,6 +18,7 @@ import com.zhidaoauto.map.sdk.open.marker.MarkerOptions; import com.zhidaoauto.map.sdk.open.marker.MarkerSimpleData; import com.zhidaoauto.map.sdk.open.poyline.PolylineOptions; import com.zhidaoauto.map.sdk.open.view.MapAutoView; +import com.mogo.eagle.core.data.config.FunctionBuildConfig; import java.util.ArrayList; import java.util.List; @@ -133,12 +135,28 @@ public class ObjectUtils { try { markerOptions = new MarkerSimpleData(); markerOptions.setId(aiData.getUuid().hashCode()); - markerOptions.setMarkerType(aiData.getType()); + markerOptions.setColor("#00FF00FF"); + int type = aiData.getType(); + if(AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && + AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)){ + if(type == 3){ + type = 103; + }else if(type == 6){ + type = 106; + }else if(type == 8){ + type = 108; + } + if (type != 103 && type != 106 && type != 108) { + markerOptions.setColor("#90ABCAFF"); + }else{ + markerOptions.setColor(""); + } + } + markerOptions.setMarkerType(type); markerOptions.setRotateAngle((float) aiData.getHeading()); markerOptions.setLat(aiData.getWgslat()); markerOptions.setLon(aiData.getWgslon()); markerOptions.setTime(Double.valueOf(aiData.getSatelliteTime()).longValue()); - markerOptions.setColor("#00FF00FF"); } catch (Exception e) { e.printStackTrace(); } diff --git a/settings.gradle b/settings.gradle index bca109b8dd..873102c46d 100644 --- a/settings.gradle +++ b/settings.gradle @@ -67,8 +67,8 @@ include ':OCH:taxi:passenger' include ':OCH:taxi:unmanned-driver' include ':OCH:taxi:unmanned-passenger' -include(':OCH:mogo-och-common-module') -include ':OCH:mogo-och-data' +include(':OCH:common:common') +include ':OCH:common:data' include ':OCH:sweeper:driver' diff --git a/test/crashreport-apmbyte/src/main/java/com/mogo/test/crashreport/apm/ApmCrashReportProvider.java b/test/crashreport-apmbyte/src/main/java/com/mogo/test/crashreport/apm/ApmCrashReportProvider.java index 15053e52cf..d5f24521ed 100644 --- a/test/crashreport-apmbyte/src/main/java/com/mogo/test/crashreport/apm/ApmCrashReportProvider.java +++ b/test/crashreport-apmbyte/src/main/java/com/mogo/test/crashreport/apm/ApmCrashReportProvider.java @@ -17,7 +17,7 @@ import com.mogo.eagle.core.function.api.devatools.apm.IApmEnvProvider; import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager; import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; +import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.util.CommonUtils; import com.mogo.eagle.core.utilcode.util.DeviceUtils; import com.mogo.eagle.core.utilcode.util.GsonUtils; @@ -87,7 +87,7 @@ public class ApmCrashReportProvider implements ITestCrashReportProvider { .dynamicParams(new MonitorCrash.Config.IDynamicParams() { @Override public String getDid() {//返回空会使用内部默认的did - String sn = SharedPrefsMgr.getInstance(context).getString("sn"); + String sn = SharedPrefsMgr.getInstance().getString("sn"); if (sn != null && !sn.isEmpty()) { return sn; } else { @@ -103,11 +103,11 @@ public class ApmCrashReportProvider implements ITestCrashReportProvider { //应用崩溃后会执行这里,可选,添加业务自定义数据,在崩溃详情页->现场数据展示->自定义数据 .customData(crashType -> { //车辆所在位置 - mCityCode = SharedPrefsMgr.getInstance(context).getString(SharedPrefsConstants.LOCATION_CITY_CODE); - mLat = SharedPrefsMgr.getInstance(context).getString(SharedPrefsConstants.LOCATION_LATITUDE); - mLogt = SharedPrefsMgr.getInstance(context).getString(SharedPrefsConstants.LOCATION_LONGITUDE); + mCityCode = SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.LOCATION_CITY_CODE); + mLat = SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.LOCATION_LATITUDE); + mLogt = SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.LOCATION_LONGITUDE); //车辆信息 - String carInfoString = SharedPrefsMgr.getInstance(context).getString(SharedPrefsConstants.CAR_INFO); + String carInfoString = SharedPrefsMgr.getInstance().getString(SharedPrefsConstants.CAR_INFO); if (carInfoString != null && !carInfoString.isEmpty()) { mInfo = GsonUtils.fromJson(carInfoString, CarInfo.class); } diff --git a/tts/tts-pad/src/main/java/com/mogo/tts/pad/PadTTS.java b/tts/tts-pad/src/main/java/com/mogo/tts/pad/PadTTS.java index 095aa2c1fb..5a6e57490f 100644 --- a/tts/tts-pad/src/main/java/com/mogo/tts/pad/PadTTS.java +++ b/tts/tts-pad/src/main/java/com/mogo/tts/pad/PadTTS.java @@ -24,8 +24,8 @@ import com.aispeech.export.engines.AILocalTTSEngine; import com.aispeech.export.intent.AILocalTTSIntent; import com.aispeech.export.listeners.AITTSListener; import com.aispeech.lite.AuthType; +import com.elegant.utils.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.util.ThreadUtils; import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.tts.base.IMogoTTS; diff --git a/tts/tts-zhi/src/main/java/com/mogo/tts/pad/ZhiTTS.java b/tts/tts-zhi/src/main/java/com/mogo/tts/pad/ZhiTTS.java index 4f02500a14..f22ac83b28 100644 --- a/tts/tts-zhi/src/main/java/com/mogo/tts/pad/ZhiTTS.java +++ b/tts/tts-zhi/src/main/java/com/mogo/tts/pad/ZhiTTS.java @@ -8,8 +8,8 @@ import android.provider.Settings; import androidx.annotation.MainThread; +import com.elegant.utils.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.tts.base.IMogoTTS; import com.mogo.tts.base.IMogoTTSCallback; @@ -140,12 +140,18 @@ public class ZhiTTS implements IMogoTTS, OnTtsListener { @MainThread public void speakTTSVoiceWithLevel(String text, int ttsLevel) { CallerLogger.d(TAG, "speakTTSVoiceWithLevel"); + if(!initStatus.get()){ + return; + } ZDTtsManager.getInstance().speak(text, getZhiLevel(ttsLevel)); } @MainThread public void speakTTSVoiceWithLevel(String text, int ttsLevel, IMogoTTSCallback callBack) { CallerLogger.d(TAG, "speakTTSVoiceWithLevel"); + if(!initStatus.get()){ + return; + } ZDTtsManager.getInstance().speak(text, getZhiLevel(ttsLevel), new ITtsListener() { @Override public void onTtsStart(String s, String s1) throws RemoteException {}