Merge branch 'dev_robotaxi-d-app-module_260_220304_2.6.0' of gitlab.zhidaoauto.com:zhjt/AndroidApp/MoGoEagleEye into dev_robotaxi-d-app-module_260_220304_2.6.0
@@ -38,6 +38,8 @@ class OchBusConst {
|
||||
|
||||
// 上报心跳轮询ms
|
||||
const val LOOP_PERIOD_60S = 60 * 1000L
|
||||
// 开始服务启动自动驾驶等待时间(埋点上传)
|
||||
const val LOOP_PERIOD_15S = 15 * 1000L
|
||||
const val LOOP_PERIOD_1S = 1 * 1000L
|
||||
const val LOOP_DELAY = 100L
|
||||
|
||||
@@ -45,5 +47,14 @@ class OchBusConst {
|
||||
const val BUS_START_MAP_MAKER = "bus_start_map_maker";
|
||||
//终点UUID
|
||||
const val BUS_END_MAP_MAKER = "bus_end_map_maker";
|
||||
|
||||
// 埋点key:开始服务开启自动驾驶(成功/失败)
|
||||
const val EVENT_KEY_START_SERVICE = "event_key_och_bus_start_service"
|
||||
const val EVENT_PARAM_SN = "sn"
|
||||
const val EVENT_PARAM_TIME = "time"
|
||||
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_START_RESULT = "start_autopilot" // true/false
|
||||
}
|
||||
}
|
||||
@@ -374,11 +374,6 @@ public abstract class BaseOchBusTabFragment<V extends IView, P extends Presenter
|
||||
public void showAutopilotBiz() {
|
||||
getActivity().runOnUiThread(() -> {
|
||||
ctvAutopilotStatus.setVisibility(View.VISIBLE);
|
||||
if (isOperationStatus) {
|
||||
slidePanelView.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
slidePanelView.setVisibility(View.GONE);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -15,10 +15,13 @@ import com.mogo.commons.debug.DebugConfig;
|
||||
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.function.call.map.CallerHDMapManager;
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
|
||||
import com.mogo.eagle.core.utilcode.mogo.toast.TipToast;
|
||||
import com.mogo.map.MogoMarkerManager;
|
||||
import com.mogo.map.marker.IMogoMarker;
|
||||
import com.mogo.map.marker.MogoMarkerOptions;
|
||||
import com.mogo.module.common.constants.DataTypes;
|
||||
import com.mogo.och.bus.R;
|
||||
import com.mogo.och.bus.bean.OchBusStation;
|
||||
import com.mogo.och.bus.constant.OchBusConst;
|
||||
@@ -172,34 +175,34 @@ public class OchBusFragment extends BaseOchBusTabFragment<OchBusFragment, OchBus
|
||||
startStationFlagVisibility = View.VISIBLE;
|
||||
isArriveAtStartStation = true;
|
||||
mStartStationFlag.setText(getResources().getString(R.string.bus_arrive_to_end_start));
|
||||
// CallerLogger.INSTANCE.d("MapMaker= ","起点=");
|
||||
|
||||
setOrRemoveMapMaker(true, OchBusConst.BUS_START_MAP_MAKER, startStation.getLat()
|
||||
, startStation.getLon(), R.drawable.icon_station_start_end);
|
||||
, startStation.getLon());
|
||||
setOrRemoveMapMaker(true, OchBusConst.BUS_END_MAP_MAKER, endStation.getLat()
|
||||
, endStation.getLon(), R.drawable.icon_station_start_end);
|
||||
, endStation.getLon());
|
||||
} else if (currentStation > 0 && currentStation < stationList.size() - 1) {// 是否到达站点
|
||||
// CallerLogger.INSTANCE.d("MapMaker= ","中间=");
|
||||
isArriveAtStation = true;
|
||||
// mStartStationFlag.setText(getResources().getString(R.string.bus_arrive_to_end_start1));
|
||||
|
||||
setOrRemoveMapMaker(false, OchBusConst.BUS_START_MAP_MAKER, startStation.getLat()
|
||||
, startStation.getLon(), R.drawable.icon_station_start_end);
|
||||
, startStation.getLon());
|
||||
setOrRemoveMapMaker(true, OchBusConst.BUS_END_MAP_MAKER, endStation.getLat()
|
||||
, endStation.getLon(), R.drawable.icon_station_start_end);
|
||||
, endStation.getLon());
|
||||
} else if (currentStation == stationList.size() - 1) {// 是否到达终点
|
||||
// CallerLogger.INSTANCE.d("MapMaker= ","终点=");
|
||||
isArriveEndStation = true;
|
||||
nextStationName = "--";
|
||||
mStartStationFlag.setText(getResources().getString(R.string.bus_arrive_to_end_end));
|
||||
startStationFlagVisibility = View.VISIBLE;
|
||||
endStationFlagVisibility = View.INVISIBLE;
|
||||
|
||||
setOrRemoveMapMaker(false, OchBusConst.BUS_START_MAP_MAKER, startStation.getLat()
|
||||
, startStation.getLon(), R.drawable.icon_station_start_end);
|
||||
, startStation.getLon());
|
||||
|
||||
if (isArrived) {
|
||||
setOrRemoveMapMaker(false, OchBusConst.BUS_END_MAP_MAKER, endStation.getLat()
|
||||
, endStation.getLon(), R.drawable.icon_station_start_end);
|
||||
, endStation.getLon());
|
||||
} else {
|
||||
setOrRemoveMapMaker(true, OchBusConst.BUS_END_MAP_MAKER, endStation.getLat()
|
||||
, endStation.getLon(), R.drawable.icon_station_start_end);
|
||||
, endStation.getLon());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -292,11 +295,11 @@ public class OchBusFragment extends BaseOchBusTabFragment<OchBusFragment, OchBus
|
||||
//移除起点终点
|
||||
if (null != startStation) {
|
||||
setOrRemoveMapMaker(false, OchBusConst.BUS_START_MAP_MAKER, startStation.getLat()
|
||||
, startStation.getLon(), R.drawable.icon_station_start_end);
|
||||
, startStation.getLon());
|
||||
}
|
||||
if (null != endStation) {
|
||||
setOrRemoveMapMaker(false, OchBusConst.BUS_END_MAP_MAKER, endStation.getLat()
|
||||
, endStation.getLon(), R.drawable.icon_station_start_end);
|
||||
, endStation.getLon());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -317,20 +320,25 @@ public class OchBusFragment extends BaseOchBusTabFragment<OchBusFragment, OchBus
|
||||
*
|
||||
* @param isAdd
|
||||
* @param uuid
|
||||
* @param iconId
|
||||
*/
|
||||
private void setOrRemoveMapMaker(boolean isAdd, String uuid, double lat, double longi, int iconId) {
|
||||
private void setOrRemoveMapMaker(boolean isAdd, String uuid, double lat, double longi) {
|
||||
if (isAdd) {
|
||||
CallerLogger.INSTANCE.d("setMapMaker= ", uuid + "=latitude=" + lat + ",longitude=" + longi);
|
||||
MogoMarkerOptions options = new MogoMarkerOptions();
|
||||
options.anchorColor("#000000");//不设置报错,暂时随便设置个
|
||||
options.setGps(true);//使用wgs 必须设置true
|
||||
options.scale(0.15f);
|
||||
Bitmap bitmap = BitmapFactory.decodeResource(AbsMogoApplication.getApp().getResources(), iconId, null);
|
||||
options.icon(bitmap);
|
||||
options.latitude(lat);
|
||||
options.longitude(longi);
|
||||
MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).addMarker(uuid, options);
|
||||
|
||||
MogoMarkerOptions options = new MogoMarkerOptions()
|
||||
.owner(DataTypes.TYPE_MARKER_ADAS)
|
||||
.anchor(0.5f, 0.5f)
|
||||
.set3DMode(true)
|
||||
.gps(true)
|
||||
.controlAngle(true)
|
||||
.icon3DRes(R.raw.start_and_end)
|
||||
.latitude(lat)
|
||||
.longitude(longi);
|
||||
IMogoMarker marker = MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) .addMarker(uuid, options);
|
||||
marker.setRotateAngle(CallerHDMapManager.INSTANCE.getCenterLineInfo(
|
||||
longi,lat,-1)
|
||||
.getAngle()
|
||||
.floatValue());
|
||||
}else {
|
||||
CallerLogger.INSTANCE.d("RemoveMapMaker=",uuid+"=latitude="+lat+",longitude="+longi);
|
||||
MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).removeMarkers(uuid);
|
||||
|
||||
@@ -39,6 +39,7 @@ import com.mogo.och.bus.callback.SlidePannelHideCallback;
|
||||
import com.mogo.och.bus.constant.OchBusConst;
|
||||
import com.mogo.och.bus.net.OCHBusServiceManager;
|
||||
import com.mogo.och.bus.net.OCHServiceCallback;
|
||||
import com.mogo.och.bus.util.OchBusAnalyticsUtil;
|
||||
import com.mogo.och.bus.util.PinYinUtil;
|
||||
import com.mogo.service.IMogoServiceApis;
|
||||
import com.mogo.service.statusmanager.IMogoStatusChangedListener;
|
||||
@@ -445,6 +446,9 @@ public class OchBusOrderModel {
|
||||
CallerLogger.INSTANCE.d( M_BUS + TAG, "开启自动驾驶====" + currentAutopilot.toString()
|
||||
+" startLatLon="+currentStation.getName()+",endLatLon="+nextStation.getName());
|
||||
CallerAutoPilotManager.INSTANCE.startAutoPilot(currentAutopilot);
|
||||
|
||||
triggerStartServiceEvent(false);
|
||||
|
||||
if (mControllerStatusCallback != null) {
|
||||
mControllerStatusCallback.startOpenAutopilot();
|
||||
}
|
||||
@@ -841,4 +845,14 @@ public class OchBusOrderModel {
|
||||
OchBusModelLoopManager.getInstance().stopHeartbeatLoop();
|
||||
}
|
||||
}
|
||||
|
||||
public void triggerStartServiceEvent(boolean send) {
|
||||
if (stationList == null || currentStationIndex >= stationList.size()) {
|
||||
return;
|
||||
}
|
||||
OchBusStation currentStation = stationList.get( currentStationIndex -1);
|
||||
OchBusStation nextStation = stationList.get( currentStationIndex);
|
||||
OchBusAnalyticsUtil.triggerStartServiceEvent(send,
|
||||
currentStation.getName(), nextStation.getName(), currentLineId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -194,6 +194,7 @@ public class OchBusPresenter extends Presenter<OchBusFragment>
|
||||
currentAutopilotStatus = IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING;
|
||||
// 改变UI自动驾驶状态
|
||||
mView.onAutopilotStatusChanged(currentAutopilotStatus, isAnimateRunning);
|
||||
OchBusOrderModel.getInstance().triggerStartServiceEvent(true);
|
||||
}
|
||||
isAnimateRunning = false;
|
||||
break;
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
package com.mogo.och.bus.util;
|
||||
|
||||
import com.mogo.cloud.passport.MoGoAiCloudClientConfig;
|
||||
import com.mogo.eagle.core.function.call.analytics.AnalyticsManager;
|
||||
import com.mogo.eagle.core.utilcode.util.DateTimeUtils;
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler;
|
||||
import com.mogo.och.bus.constant.OchBusConst;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* OCH Bus埋点工具
|
||||
*
|
||||
* Created on 2022/3/24
|
||||
*/
|
||||
public class OchBusAnalyticsUtil {
|
||||
|
||||
/**
|
||||
* 触发'滑动出发'埋点流程:
|
||||
* 滑动出发(开启自动驾驶)后,15s内成功则发送成功埋点,否则发送失败埋点
|
||||
* @param send 是否直接发送埋点(15s内开启成功则直接发送成功埋点)
|
||||
*/
|
||||
public static void triggerStartServiceEvent(
|
||||
boolean send, String startName, String endName, int lineId) {
|
||||
|
||||
String sn = MoGoAiCloudClientConfig.getInstance().getSn();
|
||||
String dateTime = DateTimeUtils.getTimeText(
|
||||
System.currentTimeMillis(), DateTimeUtils.yyyy_MM_dd_HH_mm_ss);
|
||||
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put(OchBusConst.EVENT_PARAM_SN, sn);
|
||||
params.put(OchBusConst.EVENT_PARAM_TIME, dateTime);
|
||||
params.put(OchBusConst.EVENT_PARAM_START_NAME, startName);
|
||||
params.put(OchBusConst.EVENT_PARAM_END_NAME, endName);
|
||||
params.put(OchBusConst.EVENT_PARAM_LINE_ID, lineId);
|
||||
|
||||
Runnable runnable = () -> {
|
||||
// 15s内未开启,上报失败埋点
|
||||
params.put(OchBusConst.EVENT_PARAM_START_RESULT, false);
|
||||
AnalyticsManager.INSTANCE.track(OchBusConst.EVENT_KEY_START_SERVICE, params);
|
||||
};
|
||||
|
||||
if (send) {
|
||||
// 开启成功,上报埋点
|
||||
if (runnable != null && UiThreadHandler.getsUiHandler().hasCallbacks(runnable)) {
|
||||
UiThreadHandler.removeCallbacks(runnable);
|
||||
}
|
||||
params.put(OchBusConst.EVENT_PARAM_START_RESULT, true);
|
||||
AnalyticsManager.INSTANCE.track(OchBusConst.EVENT_KEY_START_SERVICE, params);
|
||||
} else {
|
||||
UiThreadHandler.postDelayed(runnable, OchBusConst.LOOP_PERIOD_15S);
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
OCH/mogo-och-bus/src/main/res/raw/start_and_end.nt3d
Normal file
@@ -275,6 +275,7 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback
|
||||
if (mCurrentOCHOrder != null) {
|
||||
queryCurOrderStatus();
|
||||
}
|
||||
recoverNaviInfo();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -600,6 +601,14 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback
|
||||
naviOrderStartToEnd();
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单结束或者取消的时候, 刷新导航标识位以及缓存的数据
|
||||
*/
|
||||
public void recoverNaviInfo(){
|
||||
SharedPrefsMgr.getInstance(mContext).remove(TaxiPassengerConst.SP_KEY_ORDER_SUM_DIS);
|
||||
TaxiPassengerNaviToDestinationModel.getInstance(mContext).setFirstcalculateDriveRoute(0);
|
||||
}
|
||||
|
||||
private void runOnUIThread(Runnable executor) {
|
||||
if (executor == null) {
|
||||
return;
|
||||
|
||||
@@ -140,7 +140,7 @@ public class BaseTaxiPassengerPresenter extends Presenter<TaxiPassengerBaseFragm
|
||||
CallerLogger.INSTANCE.d(M_TAXI_P+TAG,"updateOrderView = "+order.orderStatus);
|
||||
if (TaxiPassengerOrderStatusEnum.Cancel.getCode() == order.orderStatus){
|
||||
mView.showOrHideServingOrderFragment(false);
|
||||
recoverNaviInfo();
|
||||
TaxiPassengerModel.getInstance().recoverNaviInfo();
|
||||
return;
|
||||
}
|
||||
if (TaxiPassengerOrderStatusEnum.ArriveAtStartStation.getCode() == order.orderStatus
|
||||
@@ -149,7 +149,7 @@ public class BaseTaxiPassengerPresenter extends Presenter<TaxiPassengerBaseFragm
|
||||
return;
|
||||
}
|
||||
if (TaxiPassengerOrderStatusEnum.ArriveAtEndStation.getCode() == order.orderStatus){
|
||||
recoverNaviInfo();
|
||||
TaxiPassengerModel.getInstance().recoverNaviInfo();
|
||||
runOnUIThread(() ->{
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice(getContext().getString(R.string.taxi_p_arrive_end_tts));
|
||||
});
|
||||
@@ -165,11 +165,4 @@ public class BaseTaxiPassengerPresenter extends Presenter<TaxiPassengerBaseFragm
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单结束或者取消的时候, 刷新导航标识位以及缓存的数据
|
||||
*/
|
||||
public void recoverNaviInfo(){
|
||||
SharedPrefsMgr.getInstance(getContext()).remove(TaxiPassengerConst.SP_KEY_ORDER_SUM_DIS);
|
||||
TaxiPassengerNaviToDestinationModel.getInstance(getContext()).setFirstcalculateDriveRoute(0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -366,6 +366,18 @@ public class TaxiPassengerServingOrderFragment extends
|
||||
TaxiPassengerModel.getInstance().naviOrderStartToEnd();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onHiddenChanged(boolean hidden) {
|
||||
super.onHiddenChanged(hidden);
|
||||
|
||||
if (hidden){//fragment 隐藏, 导航取消
|
||||
clearPolyline();
|
||||
TaxiPassengerNaviToDestinationModel.getInstance(getContext()).destroyAmaNavi();
|
||||
}else { //fragment 显示, 导航开始
|
||||
TaxiPassengerModel.getInstance().naviOrderStartToEnd();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPause() {
|
||||
super.onPause();
|
||||
|
||||
@@ -30,7 +30,8 @@ class OCHTaxiConst {
|
||||
|
||||
// 上报心跳轮询ms
|
||||
const val LOOP_PERIOD_60S = 60 * 1000L
|
||||
|
||||
// 开始服务启动自动驾驶等待时间(埋点上传)
|
||||
const val LOOP_PERIOD_15S = 15 * 1000L
|
||||
// 轮询查询进行中/待服务订单的间隔时间 2秒
|
||||
const val LOOP_PERIOD_2S = 2 * 1000L
|
||||
// 轮询查询新到预约单 1秒
|
||||
@@ -48,5 +49,15 @@ class OCHTaxiConst {
|
||||
//演示:V 测试:内测
|
||||
const val DEMO_USER = "V"
|
||||
const val TEST_USER = "内测"
|
||||
|
||||
// 埋点key:开始服务开启自动驾驶(成功/失败)
|
||||
const val EVENT_KEY_START_SERVICE = "event_key_och_taxi_start_service"
|
||||
const val EVENT_PARAM_SN = "sn"
|
||||
const val EVENT_PARAM_TIME = "time"
|
||||
const val EVENT_PARAM_START_NAME = "start_name"
|
||||
const val EVENT_PARAM_END_NAME = "end_name"
|
||||
const val EVENT_PARAM_ORDER_NUMBER = "order_num"
|
||||
const val EVENT_PARAM_START_RESULT = "start_autopilot" // true/false
|
||||
|
||||
}
|
||||
}
|
||||
@@ -51,6 +51,7 @@ import com.mogo.och.taxi.constant.OrderStatusEnum;
|
||||
import com.mogo.och.taxi.constant.OrderTypeEnum;
|
||||
import com.mogo.och.taxi.network.OCHTaxiServiceCallback;
|
||||
import com.mogo.och.taxi.network.OCHTaxiServiceManagerNew;
|
||||
import com.mogo.och.taxi.utils.OchTaxiAnalyticsUtil;
|
||||
import com.mogo.och.taxi.utils.OrderUtil;
|
||||
import com.mogo.och.taxi.utils.PinYinUtil;
|
||||
import com.mogo.service.IMogoServiceApis;
|
||||
@@ -809,6 +810,10 @@ public class MogoOCHTaxiModelNew {
|
||||
CallerAutoPilotManager.INSTANCE.startAutoPilot(parameters);
|
||||
CallerLogger.INSTANCE.d(M_TAXI + TAG, "start autopilot with parameter: %s", GsonUtil.jsonFromObject(parameters)
|
||||
+ " ,startSiteName=" + mCurrentOCHOrder.startSiteAddr + " ,endSiteName=" + mCurrentOCHOrder.endSiteAddr);
|
||||
|
||||
OchTaxiAnalyticsUtil.triggerStartServiceEvent(false,
|
||||
mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, mCurrentOCHOrder.orderNo);
|
||||
|
||||
if (DebugConfig.isDebug()) {
|
||||
// TipToast.shortTip("Start autopilot!");
|
||||
}
|
||||
@@ -1005,6 +1010,10 @@ public class MogoOCHTaxiModelNew {
|
||||
// 当高频返回autopilot 2时,不重复调用订单状态变更
|
||||
mPrevAPStatus = state; // 每个状态单独赋值,解决无订单时已经是2的状态导致的新订单来时无法进入此逻辑更新状态
|
||||
updateOCHOrderStatus(OrderStatusEnum.OnTheWayToEndStation);
|
||||
|
||||
OchTaxiAnalyticsUtil.triggerStartServiceEvent(true,
|
||||
mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, mCurrentOCHOrder.orderNo);
|
||||
|
||||
if (FunctionBuildConfig.isDemoMode) {
|
||||
// 当美化模式(演示模式)开启时: 订单对应自动驾驶开启后,置true
|
||||
FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = true;
|
||||
@@ -1039,6 +1048,8 @@ public class MogoOCHTaxiModelNew {
|
||||
|
||||
@Override
|
||||
public void onAutopilotArriveAtStation(MessagePad.ArrivalNotification data) {
|
||||
CallerLogger.INSTANCE.i(M_TAXI + TAG, "onAutopilotArriveAtStation = " + data.toString());
|
||||
|
||||
if (data == null || !checkCurrentOCHOrder()
|
||||
|| (getCurOrderStatus() == OrderStatusEnum.ArriveAtEndStation)) {
|
||||
return;
|
||||
@@ -1070,7 +1081,7 @@ public class MogoOCHTaxiModelNew {
|
||||
* @param models
|
||||
*/
|
||||
public void updateOrderRoute(List<MessagePad.Location> models) {
|
||||
|
||||
if (null == mCurrentOCHOrder) return;
|
||||
List<OrderRouteUpdateReqBean.Result> points = CoordinateConverterFrom84ForList(mContext,models);
|
||||
|
||||
OCHTaxiServiceManagerNew.getInstance().updateOrderRoute(mContext, mCurrentOCHOrder.orderNo
|
||||
|
||||
@@ -22,12 +22,15 @@ import com.amap.api.navi.model.NaviLatLng;
|
||||
import com.mogo.commons.AbsMogoApplication;
|
||||
import com.mogo.commons.debug.DebugConfig;
|
||||
import com.mogo.commons.voice.AIAssist;
|
||||
import com.mogo.eagle.core.function.call.map.CallerHDMapManager;
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
|
||||
import com.mogo.eagle.core.utilcode.mogo.toast.TipToast;
|
||||
import com.mogo.eagle.core.utilcode.util.DateTimeUtils;
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler;
|
||||
import com.mogo.map.MogoMarkerManager;
|
||||
import com.mogo.map.marker.IMogoMarker;
|
||||
import com.mogo.map.marker.MogoMarkerOptions;
|
||||
import com.mogo.module.common.constants.DataTypes;
|
||||
import com.mogo.och.taxi.callback.IOCHTaxiNaviChangedCallback;
|
||||
import com.mogo.och.taxi.constant.OCHTaxiConst;
|
||||
import com.mogo.och.taxi.constant.OrderStatusEnum;
|
||||
@@ -368,35 +371,36 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem
|
||||
showNotice(mActivity.getString(R.string.module_och_taxi_new_order));
|
||||
startNaviToStartStation(false, mOrderStartStationLat, mOrderStartStationLng);
|
||||
showOrHideNavi(true);
|
||||
setOrRemoveMapMaker(true, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.drawable.icon_station_start_end);
|
||||
setOrRemoveMapMaker(true,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.drawable.icon_station_start_end);
|
||||
setOrRemoveMapMaker(true, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint);
|
||||
setOrRemoveMapMaker(true,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint);
|
||||
break;
|
||||
case Cancel:
|
||||
mOrderCancel.setVisibility(View.VISIBLE);
|
||||
showNotice(mActivity.getString(R.string.module_och_taxi_order_cancel));
|
||||
showOrHideNavi(false);
|
||||
setOrRemoveMapMaker(false, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.drawable.icon_station_start_end);
|
||||
setOrRemoveMapMaker(false,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.drawable.icon_station_start_end);
|
||||
setOrRemoveMapMaker(false, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint);
|
||||
setOrRemoveMapMaker(false,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint);
|
||||
break;
|
||||
case ArriveAtStartStation:
|
||||
mOrderCancel.setVisibility(View.VISIBLE);
|
||||
showNotice(mActivity.getString(R.string.module_och_taxi_order_status_ph_text));
|
||||
showOrHideNavi(false);
|
||||
setOrRemoveMapMaker(true, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.drawable.icon_station_start_end);
|
||||
setOrRemoveMapMaker(true,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.drawable.icon_station_start_end);
|
||||
setOrRemoveMapMaker(true, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint);
|
||||
setOrRemoveMapMaker(true,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint);
|
||||
break;
|
||||
case OnTheWayToEndStation:
|
||||
// showNotice("欢迎使用蘑菇智行");
|
||||
mOrderCancel.setVisibility(View.VISIBLE);
|
||||
showOrHideNavi(false);
|
||||
setOrRemoveMapMaker(false, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.drawable.icon_station_start_end);
|
||||
setOrRemoveMapMaker(true,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.drawable.icon_station_start_end);
|
||||
setOrRemoveMapMaker(false, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint);
|
||||
setOrRemoveMapMaker(true,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint);
|
||||
break;
|
||||
case ArriveAtEndStation:
|
||||
mOrderCancel.setVisibility(View.GONE);
|
||||
showNotice(mActivity.getString(R.string.module_och_taxi_order_complete_1));
|
||||
showOrHideNavi(false);
|
||||
setOrRemoveMapMaker(false,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.drawable.icon_station_start_end);
|
||||
setOrRemoveMapMaker(false, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint);
|
||||
setOrRemoveMapMaker(false,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint);
|
||||
break;
|
||||
case JourneyCompleted:
|
||||
mOrderCancel.setVisibility(View.GONE);
|
||||
@@ -522,20 +526,27 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem
|
||||
* @param isAdd
|
||||
* @param uuid
|
||||
* @param station
|
||||
* @param iconId
|
||||
*/
|
||||
private void setOrRemoveMapMaker(boolean isAdd, String uuid, List<Double> station, int iconId){
|
||||
private void setOrRemoveMapMaker(boolean isAdd, String uuid, List<Double> station){
|
||||
if (isAdd){
|
||||
CallerLogger.INSTANCE.d(M_TAXI + "setMapMaker= ",uuid+"=latitude="+station.get(1)+",longitude="+station.get(0));
|
||||
MogoMarkerOptions options = new MogoMarkerOptions();
|
||||
options.anchorColor("#000000");//不设置报错,暂时随便设置个
|
||||
options.setGps(true);//使用wgs 必须设置true
|
||||
options.scale(0.15f);
|
||||
Bitmap bitmap = BitmapFactory.decodeResource(mActivity.getResources(), iconId, null);
|
||||
options.icon(bitmap);
|
||||
options.latitude(station.get(1));
|
||||
options.longitude(station.get(0));
|
||||
MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) .addMarker(uuid, options);
|
||||
CallerLogger.INSTANCE.d(M_TAXI + "setMapMaker= ",uuid+"=latitude="
|
||||
+station.get(1)+",longitude="+station.get(0));
|
||||
|
||||
MogoMarkerOptions options = new MogoMarkerOptions()
|
||||
.owner(DataTypes.TYPE_MARKER_ADAS)
|
||||
.anchor(0.5f, 0.5f)
|
||||
.set3DMode(true)
|
||||
.gps(true)
|
||||
.controlAngle(true)
|
||||
.icon3DRes(R.raw.start_and_end)
|
||||
.latitude(station.get(1))
|
||||
.longitude(station.get(0));
|
||||
IMogoMarker marker = MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).addMarker(uuid, options);
|
||||
marker.setRotateAngle(CallerHDMapManager.INSTANCE.getCenterLineInfo(
|
||||
station.get(0),station.get(1),-1)
|
||||
.getAngle()
|
||||
.floatValue());
|
||||
|
||||
}else {
|
||||
CallerLogger.INSTANCE.d(M_TAXI + "RemoveMapMaker=",uuid+"=latitude="+station.get(1)+",longitude="+station.get(0));
|
||||
MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) .removeMarkers(uuid);
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
package com.mogo.och.taxi.utils;
|
||||
|
||||
import com.mogo.cloud.passport.MoGoAiCloudClientConfig;
|
||||
import com.mogo.eagle.core.function.call.analytics.AnalyticsManager;
|
||||
import com.mogo.eagle.core.utilcode.util.DateTimeUtils;
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler;
|
||||
import com.mogo.och.taxi.constant.OCHTaxiConst;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* OCH Taxi埋点工具
|
||||
*
|
||||
* Created on 2022/3/24
|
||||
*/
|
||||
public class OchTaxiAnalyticsUtil {
|
||||
|
||||
/**
|
||||
* 触发'开始服务'埋点流程:
|
||||
* 点击开始服务(开启自动驾驶)后,15s内成功则发送成功埋点,否则发送失败埋点
|
||||
* @param send 是否直接发送埋点(15s内开启成功则直接发送成功埋点)
|
||||
*/
|
||||
public static void triggerStartServiceEvent(
|
||||
boolean send, String startName, String endName, String orderNo) {
|
||||
|
||||
String sn = MoGoAiCloudClientConfig.getInstance().getSn();
|
||||
String dateTime = DateTimeUtils.getTimeText(
|
||||
System.currentTimeMillis(), DateTimeUtils.yyyy_MM_dd_HH_mm_ss);
|
||||
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put(OCHTaxiConst.EVENT_PARAM_SN, sn);
|
||||
params.put(OCHTaxiConst.EVENT_PARAM_TIME, dateTime);
|
||||
params.put(OCHTaxiConst.EVENT_PARAM_START_NAME, startName);
|
||||
params.put(OCHTaxiConst.EVENT_PARAM_END_NAME, endName);
|
||||
params.put(OCHTaxiConst.EVENT_PARAM_ORDER_NUMBER, orderNo);
|
||||
|
||||
Runnable runnable = () -> {
|
||||
// 15s内未开启,上报失败埋点
|
||||
params.put(OCHTaxiConst.EVENT_PARAM_START_RESULT, false);
|
||||
AnalyticsManager.INSTANCE.track(OCHTaxiConst.EVENT_KEY_START_SERVICE, params);
|
||||
};
|
||||
|
||||
if (send) {
|
||||
// 开启成功,上报埋点
|
||||
if (runnable != null && UiThreadHandler.getsUiHandler().hasCallbacks(runnable)) {
|
||||
UiThreadHandler.removeCallbacks(runnable);
|
||||
}
|
||||
params.put(OCHTaxiConst.EVENT_PARAM_START_RESULT, true);
|
||||
AnalyticsManager.INSTANCE.track(OCHTaxiConst.EVENT_KEY_START_SERVICE, params);
|
||||
} else {
|
||||
UiThreadHandler.postDelayed(runnable, OCHTaxiConst.LOOP_PERIOD_15S);
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
OCH/mogo-och-taxi/src/main/res/raw/start_and_end.nt3d
Normal file
@@ -19,7 +19,7 @@ adb pull /sdcard/Android/data/com.mogo.launcher.f/log/20211022
|
||||
|
||||
// (新的HMI)使用命令行触发 V2X 预警场景
|
||||
// 顶部弹窗场景,控制展示
|
||||
adb shell am broadcast -a com.hmi.v2x.notification --ez v2xIsShow true --es tag "200011" --ei v2xType 20011 --es alertContent "测试外部传入数据" --es ttsContent "测试TTS"
|
||||
adb shell am broadcast -a com.hmi.v2x.notification --ez v2xIsShow true --es tag "200012" --ei v2xType 20012 --es alertContent "测试外部传入数据2" --es ttsContent "测试TTS2"
|
||||
// 关闭顶部弹窗
|
||||
adb shell am broadcast -a com.hmi.v2x.notification --ez v2xIsShow false --es tag "200011"
|
||||
|
||||
|
||||
16
TestHmiWarning.sh
Executable file
@@ -0,0 +1,16 @@
|
||||
#!/bin/bash
|
||||
for index in `seq 300`;
|
||||
do
|
||||
b=$(( $index % 2 ))
|
||||
if [ $b = 0 ]
|
||||
then
|
||||
echo "200011"
|
||||
adb shell am broadcast -a com.hmi.v2x.notification --ez v2xIsShow true --es tag "200011" --ei v2xType 20011 --es alertContent "测试外部传入数据1" --es ttsContent "测试TTS1"
|
||||
else
|
||||
echo "200012"
|
||||
adb shell am broadcast -a com.hmi.v2x.notification --ez v2xIsShow true --es tag "200012" --ei v2xType 20012 --es alertContent "测试外部传入数据2" --es ttsContent "测试TTS2"
|
||||
fi
|
||||
sleep 0.5
|
||||
done
|
||||
|
||||
echo -e "\033[32m 恭喜你完成了所有 测试脚本 \033[0m"
|
||||
@@ -15,12 +15,13 @@ if (!isAndroidTestBuild()) {
|
||||
logLevel "DEBUG"
|
||||
}
|
||||
}
|
||||
//if (!isAndroidTestBuild()) {
|
||||
// apply plugin: 'chain.log.hook'
|
||||
// hooklog{
|
||||
// enableLoggerToServer true
|
||||
// }
|
||||
//}
|
||||
if (!isAndroidTestBuild()) {
|
||||
apply plugin: 'chain.log.hook'
|
||||
hooklog{
|
||||
enableTraceToServer false
|
||||
enableLoggerToLocal true
|
||||
}
|
||||
}
|
||||
|
||||
//if (!isAndroidTestBuild()) {
|
||||
// apply plugin: 'apm-plugin'
|
||||
@@ -232,8 +233,6 @@ dependencies {
|
||||
implementation rootProject.ext.dependencies.arouter
|
||||
implementation rootProject.ext.dependencies.boostmultidex
|
||||
|
||||
compileOnly rootProject.ext.dependencies.adasapi
|
||||
compileOnly rootProject.ext.dependencies.adasconfigapi
|
||||
debugImplementation rootProject.ext.dependencies.debugleakcanary
|
||||
releaseImplementation rootProject.ext.dependencies.releaseleakcanary
|
||||
|
||||
|
||||
@@ -58,5 +58,5 @@ dependencies {
|
||||
// api "com.zhidao.support.adas:high:1.2.1.2_bate21"
|
||||
implementation 'org.greenrobot:eventbus:3.2.0'
|
||||
implementation 'com.android.support:multidex:1.0.3'
|
||||
implementation 'com.mogo.cloud:telematic:1.3.31'
|
||||
implementation 'com.mogo.cloud:telematic:1.3.50'
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ buildscript {
|
||||
maven {
|
||||
url "https://artifact.bytedance.com/repository/byteX/"
|
||||
}
|
||||
mavenCentral()
|
||||
// mavenCentral()
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
@@ -57,7 +57,7 @@ allprojects {
|
||||
maven { url 'https://maven.aliyun.com/repository/google' }
|
||||
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
|
||||
maven { url 'https://maven.aliyun.com/repository/jcenter' }
|
||||
mavenCentral()
|
||||
// mavenCentral()
|
||||
maven { url 'http://nexus.zhidaoauto.com/repository/maven-releases/' }
|
||||
maven { url 'http://nexus.zhidaoauto.com/repository/maven-public/' }
|
||||
maven {
|
||||
|
||||
@@ -27,6 +27,7 @@ import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.telematic.MogoProtocolMsg
|
||||
import com.mogo.telematic.MogoProtocolMsg.NORMAL_DATA
|
||||
import com.mogo.telematic.MogoProtocolMsg.SYNC_MODE_STATUS
|
||||
import com.mogo.telematic.NSDNettyManager
|
||||
import com.mogo.telematic.client.listener.NettyClientListener
|
||||
import com.mogo.telematic.client.status.ConnectState
|
||||
@@ -56,7 +57,7 @@ class MoGoAutopilotProvider :
|
||||
get() = TAG
|
||||
|
||||
override fun init(context: Context) {
|
||||
MoGoHandAdasMsgManager.getInstance()
|
||||
MoGoHandAdasMsgManager.getInstance(context)
|
||||
CallerLogger.i("$M_ADAS_IMPL$TAG", "初始化工控机连接……")
|
||||
mContext = context
|
||||
// 初始化ADAS 域控制器
|
||||
@@ -90,13 +91,9 @@ class MoGoAutopilotProvider :
|
||||
override fun onChannelConnect(channel: Channel?) {
|
||||
val socketAddress = channel?.remoteAddress().toString()
|
||||
CallerLogger.d("$M_ADAS_IMPL$TAG", "Client ip is:${socketAddress}")
|
||||
synchronized(this@MoGoAutopilotProvider) {
|
||||
NSDNettyManager.getInstance().selectChannel(channel)
|
||||
var byteArray = if(FunctionBuildConfig.isDemoMode) byteArrayOf(1) else byteArrayOf(0)
|
||||
NSDNettyManager.getInstance().sendMogoProtocolMsgToClient(MogoProtocolMsg(3, byteArray.size, byteArray)
|
||||
) {
|
||||
CallerLogger.d("$M_ADAS_IMPL$TAG", "同步美化模式状态是否成功:${it.isSuccess}")
|
||||
}
|
||||
val byteArray = if(FunctionBuildConfig.isDemoMode) byteArrayOf(1) else byteArrayOf(0)
|
||||
NSDNettyManager.getInstance().sendMsgToSpecifiedClient(MogoProtocolMsg(SYNC_MODE_STATUS, byteArray.size, byteArray), channel) {
|
||||
CallerLogger.d("$M_ADAS_IMPL$TAG", "同步美化模式状态是否成功:${it.isSuccess}")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -210,6 +207,13 @@ class MoGoAutopilotProvider :
|
||||
}, 1000, TimeUnit.MILLISECONDS)
|
||||
}
|
||||
|
||||
/**
|
||||
* 断开与工控机的连接
|
||||
*/
|
||||
override fun disconnectIpc() {
|
||||
AdasManager.getInstance().disconnect()
|
||||
}
|
||||
|
||||
override fun onMapCollectStart(cmdId: Int, cmdTime: Long) {
|
||||
val result = recordPackage(2, cmdId)
|
||||
CallerLogger.d("$M_ADAS_IMPL$TAG", "开始记录包: [$cmdId, $result]")
|
||||
@@ -328,7 +332,7 @@ class MoGoAutopilotProvider :
|
||||
var byteArray = if (isEnable) byteArrayOf(1) else byteArrayOf(0)
|
||||
if (NSDNettyManager.getInstance().isServerStart) {
|
||||
NSDNettyManager.getInstance()
|
||||
.sendMsgToAllClients(MogoProtocolMsg(3, byteArray.size, byteArray))
|
||||
.sendMsgToAllClients(MogoProtocolMsg(SYNC_MODE_STATUS, byteArray.size, byteArray))
|
||||
} else {
|
||||
CallerLogger.d("$M_ADAS_IMPL$TAG", "同步美化模式状态时司机端Server未启动!")
|
||||
}
|
||||
@@ -368,4 +372,13 @@ class MoGoAutopilotProvider :
|
||||
override fun isConnected(): Boolean {
|
||||
return AdasManager.getInstance().ipcConnectionStatus == IPC_CONNECTION_STATUS.CONNECTED
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取协议版本
|
||||
*/
|
||||
override fun getProtocolVersion(): Int {
|
||||
return AdasManager.getInstance().protocolVersion
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -10,11 +10,15 @@ import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_C
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ROUTE
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_STATUS
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_TRAJECTORY
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_VEHICLE
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_WARN
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_CAR_STATE
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_RECT_DATA
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_ADAS
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_LOG_WEB_SOCKET_DATA
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_LOG_WEB_SOCKET_DATA_TRACKED
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_LOG_WEB_SOCKET_TRAJECTORY
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_LOG_WEB_SOCKET_VEHICLE
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_ADAS_IMPL
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.invokeArriveAtStation
|
||||
@@ -35,7 +39,6 @@ import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.module.common.MogoApisHandler
|
||||
import com.mogo.module.common.datacenter.SnapshotLocationDataCenter
|
||||
import com.mogo.module.service.MarkerServiceHandler
|
||||
import com.zhidao.support.adas.high.AdasManager
|
||||
import com.zhidao.support.adas.high.OnAdasListener
|
||||
import com.zhidao.support.adas.high.bean.IPCUpgradeStateInfo
|
||||
@@ -64,6 +67,7 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
|
||||
//车前引导线
|
||||
@ChainLog(
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_TRAJECTORY,
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_TRAJECTORY,
|
||||
@@ -94,8 +98,8 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
|
||||
//感知物体
|
||||
@ChainLog(
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA_TRACKED,
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_RECT_DATA,
|
||||
paramIndexes = [0, 1],
|
||||
@@ -112,8 +116,8 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
|
||||
//自车定位信息
|
||||
@ChainLog(
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT,
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_CAR_STATE,
|
||||
paramIndexes = [0, 1],
|
||||
@@ -127,16 +131,27 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
MogoApisHandler.getInstance().apis.adasControllerApi.lastLon = gnssInfo.longitude
|
||||
MogoApisHandler.getInstance().apis.adasControllerApi.satelliteTime =
|
||||
java.lang.Double.valueOf(gnssInfo.satelliteTime).toLong()
|
||||
|
||||
if (1 == FunctionBuildConfig.gpsProvider) {
|
||||
CallerMapUIServiceManager.getMapUIController()?.syncLocation2Map(
|
||||
gnssInfo
|
||||
)
|
||||
SnapshotLocationDataCenter.getInstance().syncAdasLocationInfo(gnssInfo)
|
||||
}
|
||||
//根据加速度判断 是否刹车
|
||||
CallerAutopilotVehicleStateListenerManager.invokeAutopilotBrakeLightByAcceleration(gnssInfo.acceleration)
|
||||
}
|
||||
}
|
||||
|
||||
//自车状态(底盘),车灯等。
|
||||
@ChainLog(
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_VEHICLE,
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_VEHICLE,
|
||||
paramIndexes = [0, 1],
|
||||
clientPkFileName = "sn"
|
||||
)
|
||||
override fun onVehicleState(
|
||||
header: MessagePad.Header,
|
||||
vehicleState: VehicleStateOuterClass.VehicleState?
|
||||
@@ -151,8 +166,8 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
|
||||
//自动驾驶状态
|
||||
@ChainLog(
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT,
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_STATUS,
|
||||
paramIndexes = [0, 1],
|
||||
@@ -189,8 +204,8 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
|
||||
//监控
|
||||
@ChainLog(
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT,
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_GUARDIAN,
|
||||
paramIndexes = [0, 1],
|
||||
@@ -222,28 +237,10 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
}
|
||||
}
|
||||
|
||||
//数据采集,badCase
|
||||
@ChainLog(
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_RECORD,
|
||||
paramIndexes = [0, 1],
|
||||
clientPkFileName = "sn"
|
||||
)
|
||||
override fun onRecordResult(
|
||||
header: MessagePad.Header,
|
||||
recordPanel: RecordPanelOuterClass.RecordPanel?
|
||||
) {
|
||||
if (recordPanel != null) {
|
||||
invokeAutopilotRecordResult(recordPanel)
|
||||
}
|
||||
}
|
||||
|
||||
//全局路径规划
|
||||
@ChainLog(
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT,
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ROUTE,
|
||||
paramIndexes = [0, 1],
|
||||
@@ -258,23 +255,41 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
}
|
||||
}
|
||||
|
||||
//预警信息
|
||||
//数据采集,badCase
|
||||
@ChainLog(
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT,
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_WARN,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_RECORD,
|
||||
paramIndexes = [0, 1],
|
||||
clientPkFileName = "sn"
|
||||
)
|
||||
override fun onRecordResult(
|
||||
header: MessagePad.Header,
|
||||
recordPanel: RecordPanelOuterClass.RecordPanel?
|
||||
) {
|
||||
if (recordPanel != null) {
|
||||
invokeAutopilotRecordResult(recordPanel)
|
||||
}
|
||||
}
|
||||
|
||||
//预警信息
|
||||
// @ChainLog(
|
||||
// linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT,
|
||||
// linkCode = CHAIN_LINK_ADAS,
|
||||
// endpoint = PAD,
|
||||
// nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_WARN,
|
||||
// paramIndexes = [0, 1],
|
||||
// clientPkFileName = "sn"
|
||||
// )
|
||||
override fun onWarn(header: MessagePad.Header, warn: MessagePad.Warn?) {
|
||||
invokeAutopilotWarnMessage(warn)
|
||||
}
|
||||
|
||||
//到站回调
|
||||
@ChainLog(
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT,
|
||||
linkCode = CHAIN_LINK_ADAS,
|
||||
linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA,
|
||||
endpoint = PAD,
|
||||
nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ARRIVE,
|
||||
paramIndexes = [0, 1],
|
||||
|
||||
@@ -1,18 +1,23 @@
|
||||
package com.mogo.eagle.core.function.autopilot.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig;
|
||||
import com.mogo.eagle.core.data.constants.MoGoConfig;
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotCarConfigListener;
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener;
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotVehicleStateListener;
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarConfigListenerManager;
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager;
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotVehicleStateListenerManager;
|
||||
import com.mogo.eagle.core.function.call.bindingcar.CallerBindingcarManager;
|
||||
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager;
|
||||
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.module.common.drawer.IdentifyDataDrawer;
|
||||
import com.zhidao.support.obu.ami.AmiClientManager;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -22,46 +27,86 @@ import chassis.Chassis;
|
||||
import mogo.telematics.pad.MessagePad;
|
||||
import record_cache.RecordPanelOuterClass;
|
||||
|
||||
import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_DEVA;
|
||||
|
||||
public class MoGoHandAdasMsgManager implements
|
||||
IMoGoAutopilotIdentifyListener,
|
||||
IMoGoAutopilotVehicleStateListener,
|
||||
IMoGoAutopilotCarConfigListener {
|
||||
IMoGoAutopilotCarConfigListener{
|
||||
|
||||
private final String TAG = "AdasEventManager";
|
||||
|
||||
private static volatile MoGoHandAdasMsgManager moGoHandAdasMsgManager;
|
||||
private Context mContext;
|
||||
|
||||
private MoGoHandAdasMsgManager() {
|
||||
private MoGoHandAdasMsgManager(Context context) {
|
||||
CallerAutopilotIdentifyListenerManager.INSTANCE.addListener(TAG, this);
|
||||
CallerAutopilotVehicleStateListenerManager.INSTANCE.addListener(TAG, this);
|
||||
CallerAutopilotCarConfigListenerManager.INSTANCE.addListener(TAG, this);
|
||||
mContext = context;
|
||||
}
|
||||
|
||||
public static MoGoHandAdasMsgManager getInstance() {
|
||||
public static MoGoHandAdasMsgManager getInstance(Context context) {
|
||||
if (moGoHandAdasMsgManager == null) {
|
||||
synchronized (MoGoHandAdasMsgManager.class) {
|
||||
if (moGoHandAdasMsgManager == null) {
|
||||
moGoHandAdasMsgManager = new MoGoHandAdasMsgManager();
|
||||
moGoHandAdasMsgManager = new MoGoHandAdasMsgManager(context);
|
||||
}
|
||||
}
|
||||
}
|
||||
return moGoHandAdasMsgManager;
|
||||
}
|
||||
|
||||
private int turnLightTimes = 0;
|
||||
private boolean isOnTurnLight = false;
|
||||
private int turnLight = 0;
|
||||
private volatile boolean isShowTurnLight = false;
|
||||
private int brakeLight = -1;
|
||||
|
||||
|
||||
private int setTurnLightState(int turn_light) {
|
||||
if (turn_light == 0) {
|
||||
if (isOnTurnLight) {
|
||||
if (turnLightTimes >= 10) {
|
||||
isOnTurnLight = false;
|
||||
turnLight = 0;
|
||||
}
|
||||
turnLightTimes++;
|
||||
}
|
||||
} else if (turn_light == 1) {
|
||||
turnLightTimes = 0;
|
||||
isOnTurnLight = true;
|
||||
turnLight = 1;
|
||||
} else if (turn_light == 2) {
|
||||
turnLightTimes = 0;
|
||||
isOnTurnLight = true;
|
||||
turnLight = 2;
|
||||
}
|
||||
return turnLight;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAutopilotLightSwitchData(Chassis.LightSwitch lightSwitch) {
|
||||
//can数据转发 转向灯状态 0是正常 1是左转 2是右转
|
||||
// if (lightSwitch != null) {
|
||||
// int turnLightNum = lightSwitch.getNumber();
|
||||
// AmiClientManager.getInstance().setTurnLightState(turnLightNum);
|
||||
// //设置转向灯
|
||||
// CallerHmiManager.INSTANCE.showTurnLight(turnLightNum);
|
||||
// }
|
||||
if (lightSwitch != null) {
|
||||
int state = setTurnLightState(lightSwitch.getNumber());
|
||||
if (state == 1 || state == 2) {
|
||||
isShowTurnLight = true;
|
||||
CallerHmiManager.INSTANCE.showBrakeLight(0);
|
||||
} else {
|
||||
isShowTurnLight = false;
|
||||
}
|
||||
// CallerLogger.INSTANCE.d(M_DEVA + TAG, "onAutopilotLightSwitchData -- newState:" + state + ",oldState:" + lightSwitch.getNumber());
|
||||
CallerHmiManager.INSTANCE.showTurnLight(state);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAutopilotBrakeLightData(boolean brakeLight) {
|
||||
//设置刹车信息 TODO 需要添加转向和删除的优先级
|
||||
// CallerHmiManager.INSTANCE.showBrakeLight(brakeLight ? 1 : 0);
|
||||
// CallerLogger.INSTANCE.d(M_DEVA + TAG, "onAutopilotBrakeLightData -- brakeLight = $brakeLight ---$isShowTurnLight");
|
||||
// if (!isShowTurnLight) {
|
||||
// CallerHmiManager.INSTANCE.showBrakeLight(brakeLight ? 1 : 0);
|
||||
// }
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -91,10 +136,28 @@ public class MoGoHandAdasMsgManager implements
|
||||
|
||||
@Override
|
||||
public void onAutopilotCarConfig(@NotNull MessagePad.CarConfigResp carConfigResp) {
|
||||
// if (carConfigResp != null && !TextUtils.isEmpty(carConfigResp.getMacAddress())) {
|
||||
// CallerBindingcarManager.getBindingcarProvider().getBindingcarInfo(carConfigResp.getMacAddress());
|
||||
// }
|
||||
|
||||
if (carConfigResp != null && !TextUtils.isEmpty(carConfigResp.getMacAddress())) {
|
||||
CallerLogger.INSTANCE.d(M_DEVA + TAG, " carConfigResp.getMacAddress() = " + carConfigResp.getMacAddress() + "--mac = " + carConfigResp.getMacAddress().replaceAll(".{2}(?=.)", "$0:"));
|
||||
CallerBindingcarManager.getBindingcarProvider().getBindingcarInfo(carConfigResp.getMacAddress());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据加速度判断是否刹车
|
||||
* @param acceleration
|
||||
*/
|
||||
@Override
|
||||
public void onAutopilotBrakeLightByAcceleration(double acceleration) {
|
||||
//设置刹车信息
|
||||
if (acceleration < SharedPrefsMgr.getInstance(mContext).getFloat(MoGoConfig.BRAKE_ACCELERATION_THRESHOLD,-2.5F)) {
|
||||
brakeLight = 1;
|
||||
} else {
|
||||
brakeLight = 0;
|
||||
}
|
||||
// CallerLogger.INSTANCE.d(M_DEVA + TAG, "onAutopilotBrakeLightByAcceleration -- acceleration = " + acceleration);
|
||||
if (!isShowTurnLight) {
|
||||
CallerHmiManager.INSTANCE.showBrakeLight(brakeLight);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,26 +1,30 @@
|
||||
package com.mogo.eagle.core.function.bindingcar;
|
||||
|
||||
import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.mogo.commons.constants.SharedPrefsConstants;
|
||||
import com.mogo.eagle.core.data.constants.MogoServicePaths;
|
||||
import com.mogo.eagle.core.function.api.bindingcar.BindingcarCallBack;
|
||||
import com.mogo.eagle.core.function.api.bindingcar.IMoGoBindingcarProvider;
|
||||
import com.mogo.eagle.core.function.bindingcar.network.BindingcarNetWorkManager;
|
||||
import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
|
||||
/**
|
||||
* @author Jing
|
||||
* @description 云公告公告
|
||||
* @since: 10/27/21
|
||||
* @author lixiaopeng
|
||||
* @description 绑定sn
|
||||
* @since: 3/26/22
|
||||
*/
|
||||
@Route(path = MogoServicePaths.PATH_BINDING_CAR)
|
||||
public class BindingcarProvider implements IMoGoBindingcarProvider {
|
||||
|
||||
private Context mContext;
|
||||
private volatile String mAddress;
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
@@ -30,6 +34,7 @@ public class BindingcarProvider implements IMoGoBindingcarProvider {
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -38,21 +43,20 @@ public class BindingcarProvider implements IMoGoBindingcarProvider {
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO 获取,每次连接请求一次
|
||||
* 获取macaddress,每次连接请求一次
|
||||
*
|
||||
* @param macAddress
|
||||
*/
|
||||
@Override
|
||||
public void getBindingcarInfo(String macAddress) {
|
||||
// Log.d("liyz", "macAddress = " + macAddress);
|
||||
// BindingcarNetWorkManager.getInstance().getBindingcarInfo(macAddress);
|
||||
mAddress = macAddress;
|
||||
BindingcarNetWorkManager.getInstance().getBindingcarInfo(mContext, macAddress);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void modifyCarInfo(BindingcarCallBack callBack) {
|
||||
BindingcarNetWorkManager.getInstance().modifyBindingcar("",callBack);
|
||||
BindingcarNetWorkManager.getInstance().modifyBindingcar(mAddress, callBack);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -2,11 +2,11 @@ package com.mogo.eagle.core.function.bindingcar.network;
|
||||
|
||||
import com.mogo.eagle.core.data.bindingcar.BindingcarInfo;
|
||||
import com.mogo.eagle.core.data.bindingcar.ModifyBindingcarInfo;
|
||||
import com.mogo.eagle.core.data.notice.NoticeTrafficStyleInfo;
|
||||
|
||||
import io.reactivex.Observable;
|
||||
import okhttp3.RequestBody;
|
||||
import retrofit2.http.Body;
|
||||
import retrofit2.http.Header;
|
||||
import retrofit2.http.Headers;
|
||||
import retrofit2.http.POST;
|
||||
|
||||
@@ -22,8 +22,8 @@ public interface BindingcarApiService {
|
||||
* @return {@link BindingcarInfo}
|
||||
*/
|
||||
@Headers("Content-Type:application/json;charset=UTF-8")
|
||||
@POST("/pad/selectPadByMac")
|
||||
Observable<BindingcarInfo> getBindingcarInfo(@Body RequestBody requestBody);
|
||||
@POST("pad/selectPadByMac")
|
||||
Observable<BindingcarInfo> getBindingcarInfo(@Header("access_token") String access_token, @Body RequestBody requestBody);
|
||||
|
||||
/**
|
||||
* 绑定和修改绑定车机
|
||||
@@ -31,7 +31,7 @@ public interface BindingcarApiService {
|
||||
* @return {@link ModifyBindingcarInfo}
|
||||
*/
|
||||
@Headers("Content-Type:application/json;charset=UTF-8")
|
||||
@POST("/pad/updatePadByMac")
|
||||
Observable<ModifyBindingcarInfo> modifyBindingcarInfo(@Body RequestBody requestBody);
|
||||
@POST("pad/updatePadByMac")
|
||||
Observable<ModifyBindingcarInfo> modifyBindingcarInfo(@Header("access_token") String access_token, @Body RequestBody requestBody);
|
||||
|
||||
}
|
||||
|
||||
@@ -1,14 +1,18 @@
|
||||
package com.mogo.eagle.core.function.bindingcar.network;
|
||||
|
||||
import android.util.Log;
|
||||
import android.content.Context;
|
||||
|
||||
import com.mogo.cloud.network.RetrofitFactory;
|
||||
import com.mogo.cloud.passport.MoGoAiCloudClientConfig;
|
||||
import com.mogo.commons.constants.SharedPrefsConstants;
|
||||
import com.mogo.eagle.core.data.bindingcar.BindingcarInfo;
|
||||
import com.mogo.eagle.core.data.bindingcar.ModifyBindingcarInfo;
|
||||
import com.mogo.eagle.core.function.api.bindingcar.BindingcarCallBack;
|
||||
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager;
|
||||
import com.mogo.eagle.core.network.MoGoRetrofitFactory;
|
||||
import com.mogo.eagle.core.network.utils.GsonUtil;
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
|
||||
import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr;
|
||||
import com.mogo.module.common.constants.HostConst;
|
||||
|
||||
import io.reactivex.Observer;
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||
@@ -19,19 +23,18 @@ import okhttp3.MediaType;
|
||||
import okhttp3.RequestBody;
|
||||
|
||||
/**
|
||||
* @author Jing
|
||||
* @description 云公告网络请求类
|
||||
* @since: 10/28/21
|
||||
* @author lixiaopeng
|
||||
* @description 绑定车机网络请求
|
||||
* @since: 3/25/22
|
||||
*/
|
||||
public class BindingcarNetWorkManager {
|
||||
private static volatile BindingcarNetWorkManager requestNoticeManager;
|
||||
private final BindingcarApiService mBindingcarApiService;
|
||||
private String token = "c4a2f30cebf64972bcd11577e1c07f86"; //中台做了接口适配,需要这个token
|
||||
private static final String TAG = "BindingcarNetWorkManager";
|
||||
|
||||
private BindingcarNetWorkManager() { //TODO
|
||||
// mBindingcarApiService = RetrofitFactory.INSTANCE.getInstance(NetConstants.DEVA_HOST)
|
||||
// .create(BindingcarApiService.class);
|
||||
|
||||
mBindingcarApiService = RetrofitFactory.INSTANCE.getInstance("http://cmdb.ee-private-dev.myghost.zhidaoauto.com/")
|
||||
private BindingcarNetWorkManager() {
|
||||
mBindingcarApiService = MoGoRetrofitFactory.getInstance(HostConst.BINDING_SN_HOST)
|
||||
.create(BindingcarApiService.class);
|
||||
}
|
||||
|
||||
@@ -46,85 +49,84 @@ public class BindingcarNetWorkManager {
|
||||
return requestNoticeManager;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取绑定的车辆信息
|
||||
*
|
||||
* @param macAddress mac地址 TODO
|
||||
*
|
||||
* @param macAddress mac地址
|
||||
*/
|
||||
public void getBindingcarInfo(String macAddress) {
|
||||
public void getBindingcarInfo(Context context, String macAddress) {
|
||||
String sn = MoGoAiCloudClientConfig.getInstance().getSn();
|
||||
BindingcarRequest request = new BindingcarRequest(sn, "48:b0:2d:3a:9c:19");
|
||||
BindingcarRequest request = new BindingcarRequest(macAddress, sn);
|
||||
RequestBody requestBody = RequestBody.create(MediaType.get("application/json;charset=UTF-8"), GsonUtil.jsonFromObject(request));
|
||||
mBindingcarApiService.getBindingcarInfo(requestBody)
|
||||
mBindingcarApiService.getBindingcarInfo(token, requestBody)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Observer<BindingcarInfo>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
Log.d("liyz", "getBindingcarInfo onSubscribe -----> ");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull BindingcarInfo info) {
|
||||
if (info != null && info.getData() != null) {
|
||||
Log.d("liyz", "getBindingcarInfo onNext info.getData() =" + info.getData().toString());
|
||||
CallerLogger.INSTANCE.d(TAG, "getBindingcarInfo onNext info.getData() =" + info.getData().toString());
|
||||
if (info.getData().getCompare() == 0) {
|
||||
CallerHmiManager.INSTANCE.showBindingcarDialog();
|
||||
} else if (info.getData().getCompare() == 3) {
|
||||
CallerHmiManager.INSTANCE.showModifyBindingcarDialog();
|
||||
}
|
||||
|
||||
SharedPrefsMgr.getInstance(context).putString(SharedPrefsConstants.CAR_MODE_TYPE, info.data.getSeries());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
Log.d("liyz", "getBindingcarInfo onError e = " + e.toString() + "---e.getMessage = " + e.getMessage());
|
||||
CallerLogger.INSTANCE.e(TAG, "getBindingcarInfo onError e = " + e.toString() + "---e.getMessage = " + e.getMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
Log.d("liyz", "getBindingcarInfo onComplete");
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 绑定和修改绑定车辆 TODO
|
||||
* 绑定和修改绑定车辆
|
||||
* mac: 48:b0:2d:3a:9c:19
|
||||
*/
|
||||
public void modifyBindingcar(String macAddress, BindingcarCallBack callBack) {
|
||||
String sn = MoGoAiCloudClientConfig.getInstance().getSn();
|
||||
BindingcarRequest request = new BindingcarRequest(sn, "48:b0:2d:3a:9c:19");
|
||||
BindingcarRequest request = new BindingcarRequest(macAddress, sn);
|
||||
RequestBody requestBody = RequestBody.create(MediaType.get("application/json;charset=UTF-8"), GsonUtil.jsonFromObject(request));
|
||||
mBindingcarApiService.modifyBindingcarInfo(requestBody)
|
||||
mBindingcarApiService.modifyBindingcarInfo(token, requestBody)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new Observer<ModifyBindingcarInfo>() {
|
||||
@Override
|
||||
public void onSubscribe(@NonNull Disposable d) {
|
||||
Log.d("liyz", "modifyBindingcar onSubscribe -----> ");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(@NonNull ModifyBindingcarInfo info) {
|
||||
if (info.getData() != null) {
|
||||
if (info != null) {
|
||||
callBack.callBackResult(info);
|
||||
CallerLogger.INSTANCE.d(TAG, "modifyBindingcar onNext code = " + info.code + "---msg = " + info.msg + "--info.toString() = " + info.toString());
|
||||
}
|
||||
Log.d("liyz", "modifyBindingcar onNext info " + info.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(@NonNull Throwable e) {
|
||||
Log.d("liyz", "modifyBindingcar onError e = " + e.toString() + "---e.getMessage = " + e.getMessage());
|
||||
CallerLogger.INSTANCE.e(TAG, "modifyBindingcar onError e = " + e.toString() + "---e.getMessage = " + e.getMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete() {
|
||||
Log.d("liyz", "modifyBindingcar onComplete ");
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.mogo.eagle.core.function.chat.facade.ui
|
||||
|
||||
import android.content.Context
|
||||
import android.media.AudioManager
|
||||
import android.view.Gravity
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.widget.FrameLayout
|
||||
@@ -28,10 +29,7 @@ import com.mogo.eagle.core.function.chat.facade.OnInComingCallback
|
||||
import com.mogo.eagle.core.function.chat.facade.bridge.BridgeApi
|
||||
import com.mogo.eagle.core.function.chat.facade.utils.log
|
||||
import com.mogo.eagle.core.function.chat.facade.voice.VoiceControlFacade.REQUEST_CLOUD_VOICE_CALL
|
||||
import com.mogo.eagle.core.utilcode.kotlin.lifeCycleScope
|
||||
import com.mogo.eagle.core.utilcode.kotlin.observe
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.eagle.core.utilcode.kotlin.safeCancel
|
||||
import com.mogo.eagle.core.utilcode.kotlin.*
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.GlideRoundedCornersTransform
|
||||
import com.mogo.eagle.core.utilcode.mogo.glide.GlideRoundedCornersTransform.CornerType.LEFT
|
||||
import kotlinx.coroutines.*
|
||||
@@ -247,10 +245,9 @@ internal class CallChatWindowManager {
|
||||
context.resources.getDimension(R.dimen.module_call_chat_state_incoming_hawk_eye_width).toInt(),
|
||||
context.resources.getDimension(R.dimen.module_call_chat_state_incoming_hawk_eye_height).toInt())
|
||||
.also {
|
||||
val x = context.resources.getDimension(R.dimen.module_call_chat_state_location_hawk_eye_x)
|
||||
val y = context.resources.getDimension(R.dimen.module_call_chat_state_location_hawk_eye_y)
|
||||
it.leftMargin = x.toInt()
|
||||
it.topMargin = y.toInt()
|
||||
it.gravity = Gravity.BOTTOM or Gravity.START
|
||||
it.marginStart = 40.PX
|
||||
it.bottomMargin = 168.PX
|
||||
}
|
||||
}
|
||||
|
||||
@@ -370,8 +367,9 @@ internal class CallChatWindowManager {
|
||||
context.resources.getDimension(R.dimen.module_call_chat_state_hawk_eye_height).toInt()
|
||||
)
|
||||
.also {
|
||||
it.leftMargin = context.resources.getDimension(R.dimen.module_call_chat_state_location_hawk_eye_x).toInt()
|
||||
it.topMargin = context.resources.getDimension(R.dimen.module_call_chat_state_location_hawk_eye_y).toInt()
|
||||
it.gravity = Gravity.BOTTOM or Gravity.START
|
||||
it.marginStart = 40.PX
|
||||
it.bottomMargin = 168.PX
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 3.9 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 5.1 KiB |
|
Before Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 8.6 KiB |
|
Before Width: | Height: | Size: 8.3 KiB |
|
Before Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 8.3 KiB |
|
Before Width: | Height: | Size: 3.9 KiB |
|
Before Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 3.9 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 5.1 KiB |
|
Before Width: | Height: | Size: 4.7 KiB |
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/module_callchatting_shape_gradient_blue_normal" android:state_pressed="false" />
|
||||
<item android:drawable="@drawable/module_callchatting_shape_gradient_blue_pressed" android:state_pressed="true" />
|
||||
</selector>
|
||||
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_16" />
|
||||
<gradient
|
||||
android:angle="0"
|
||||
android:endColor="#1F7EFF"
|
||||
android:startColor="#1E57A4" />
|
||||
|
||||
</shape>
|
||||
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_16" />
|
||||
<gradient
|
||||
android:angle="0"
|
||||
android:endColor="#1363A4"
|
||||
android:startColor="#164079" />
|
||||
|
||||
</shape>
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/module_callchatting_user_pop_call_bg_normal" android:state_pressed="false" />
|
||||
<item android:drawable="@drawable/module_callchatting_user_pop_call_bg_pressed" android:state_pressed="true" />
|
||||
</selector>
|
||||
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_16" />
|
||||
<gradient
|
||||
android:angle="0"
|
||||
android:endColor="#585E8B"
|
||||
android:startColor="#4A4C70" />
|
||||
|
||||
</shape>
|
||||
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_16" />
|
||||
<gradient
|
||||
android:angle="0"
|
||||
android:endColor="#383C5E"
|
||||
android:startColor="#373856" />
|
||||
|
||||
</shape>
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_30" />
|
||||
<solid android:color="#F710121E" />
|
||||
</shape>
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/module_carchatting_team_fragment_close_normal" android:state_pressed="false" />
|
||||
<item android:drawable="@drawable/module_carchatting_team_fragment_close_pressed" android:state_pressed="true" />
|
||||
</selector>
|
||||
@@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_30" />
|
||||
<gradient
|
||||
android:angle="180"
|
||||
android:endColor="#3F4057"
|
||||
android:startColor="#5E6079" />
|
||||
</shape>
|
||||
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:topLeftRadius="@dimen/module_call_chat_team_invitation_hawk_eye_bg_corner"
|
||||
android:bottomLeftRadius="@dimen/module_call_chat_team_invitation_hawk_eye_bg_corner"/>
|
||||
<gradient
|
||||
android:angle="135"
|
||||
android:endColor="#22E2FE"
|
||||
android:startColor="#005CFF" />
|
||||
</shape>
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/module_carchatting_team_invitation_hawk_eye_join_normal" android:state_pressed="false" />
|
||||
<item android:drawable="@drawable/module_carchatting_team_invitation_hawk_eye_join_pressed" android:state_pressed="true" />
|
||||
</selector>
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/module_carchatting_team_invitation_hawk_eye_refuse_normal" android:state_pressed="false" />
|
||||
<item android:drawable="@drawable/module_carchatting_team_invitation_hawk_eye_refuse_pressed" android:state_pressed="true" />
|
||||
</selector>
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/module_carchatting_team_invitation_join_normal" android:state_pressed="false" />
|
||||
<item android:drawable="@drawable/module_carchatting_team_invitation_join_pressed" android:state_pressed="true" />
|
||||
</selector>
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/module_carchatting_team_invitation_refuse_normal" android:state_pressed="false" />
|
||||
<item android:drawable="@drawable/module_carchatting_team_invitation_refuse_pressed" android:state_pressed="true" />
|
||||
</selector>
|
||||
@@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_11" />
|
||||
<gradient
|
||||
android:angle="180"
|
||||
android:endColor="#1DAAA5"
|
||||
android:startColor="#37DED9" />
|
||||
</shape>
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/module_carchatting_team_quit_normal" android:state_pressed="false" />
|
||||
<item android:drawable="@drawable/module_carchatting_team_quit_pressed" android:state_pressed="true" />
|
||||
</selector>
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_23" />
|
||||
<solid android:color="#FF1F2131" />
|
||||
</shape>
|
||||
@@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_11" />
|
||||
<gradient
|
||||
android:angle="180"
|
||||
android:endColor="#4E5069"
|
||||
android:startColor="#4E5069" />
|
||||
</shape>
|
||||
@@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<corners android:radius="@dimen/dp_11" />
|
||||
<gradient
|
||||
android:angle="180"
|
||||
android:endColor="#256BFF"
|
||||
android:startColor="#5CC1FF" />
|
||||
</shape>
|
||||
@@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="oval">
|
||||
<gradient
|
||||
|
||||
android:endColor="#595FA2"
|
||||
android:startColor="#43508E"></gradient>
|
||||
<size
|
||||
android:width="@dimen/dp_80"
|
||||
android:height="@dimen/dp_80" />
|
||||
</shape>
|
||||
@@ -1,42 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_margin="@dimen/module_call_chat_team_fragment_margin"
|
||||
android:elevation="@dimen/dp_10"
|
||||
android:background="@drawable/module_carchatting_team_fragment_bg"
|
||||
android:clickable="true"
|
||||
android:padding="@dimen/module_call_chat_team_fragment_padding">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_num"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="@dimen/module_call_chat_team_fragment_close_view_height"
|
||||
android:gravity="center_vertical"
|
||||
android:text="车队人数"
|
||||
android:textColor="@color/module_carchatting_white_color"
|
||||
android:textSize="@dimen/module_call_chat_team_fragment_num_text_size"
|
||||
app:layout_constraintBaseline_toBaselineOf="@+id/iv_close"
|
||||
app:layout_constraintStart_toStartOf="parent" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_close"
|
||||
android:layout_width="@dimen/module_call_chat_team_fragment_close_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_fragment_close_view_height"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/module_carchatting_team_fragment_close"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rv_teammates"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginTop="@dimen/module_call_chat_team_fragment_teammates__margin_top"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/iv_close" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -2,261 +2,55 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/module_carchatting_rl_call_view"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:layout_width="@dimen/module_call_chat_state_hawk_eye_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_hawk_eye_height"
|
||||
android:background="@drawable/module_carchatting_vr_calling_bg"
|
||||
android:orientation="vertical">
|
||||
android:background="@drawable/module_carchatting_vr_calling_bg">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/module_carchatting_rl_match_init_view"
|
||||
android:layout_width="@dimen/module_call_chat_view_match_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_hawk_eye_height"
|
||||
android:background="@drawable/module_callchatting_shape_gradient_blue"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_call_head"
|
||||
android:layout_width="@dimen/module_call_chat_calling_iv_hawk_eye_width_height"
|
||||
android:layout_height="@dimen/module_call_chat_calling_iv_hawk_eye_width_height"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@mipmap/module_carchatting_hawk_eye_default_head_img"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:layout_width="@dimen/module_call_chat_match_iv_width"
|
||||
android:layout_height="@dimen/module_call_chat_match_iv_height"
|
||||
android:layout_marginStart="@dimen/dp_16"
|
||||
android:src="@mipmap/module_callchatting_match"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_call_hangUp"
|
||||
android:layout_width="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_height="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_calling_iv_hawk_eye_margin_left_right"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@mipmap/module_carchatting_launcher_calling_hangup"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_view_margin_end"
|
||||
android:text="@string/module_car_chat_match_tip"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/module_call_chat_match_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/module_carchatting_rl_matching_view"
|
||||
android:layout_width="@dimen/module_call_chat_state_hawk_eye_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_hawk_eye_height"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
android:text="@string/module_car_chat_matching"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/module_call_chat_matching_textsize"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_tv_cancel_match"
|
||||
android:layout_width="@dimen/module_call_chat_state_hawk_eye_height"
|
||||
android:layout_height="match_parent"
|
||||
android:gravity="center"
|
||||
android:text="@string/module_car_chat_matching_cancel"
|
||||
android:textColor="@color/module_carchatting_red_color"
|
||||
android:textSize="@dimen/module_call_chat_matching_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<View
|
||||
android:layout_width="1px"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="@dimen/module_call_chat_match_view_line_margin_top_bottom"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_match_view_line_margin_top_bottom"
|
||||
android:background="@color/module_carchatting_match_line"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/module_carchatting_tv_cancel_match"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/module_carchatting_rl_call_view"
|
||||
android:layout_width="@dimen/module_call_chat_state_hawk_eye_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_hawk_eye_height"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_call_head"
|
||||
android:layout_width="@dimen/module_call_chat_calling_iv_hawk_eye_width_height"
|
||||
android:layout_height="@dimen/module_call_chat_calling_iv_hawk_eye_width_height"
|
||||
android:clickable="true"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@mipmap/module_carchatting_hawk_eye_default_head_img"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_call_hangUp"
|
||||
android:layout_width="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_height="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_calling_iv_hawk_eye_margin_left_right"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@mipmap/module_carchatting_launcher_calling_hangup"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_call_time"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_calling_text_hawk_eye_margin_top_bottom"
|
||||
android:text="@string/module_car_chat_matching_wait"
|
||||
android:textColor="@color/module_carchatting_hawk_eye_status_color"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_hawk_eye_time_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="@+id/module_carchatting_call_nickname" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_call_nickname"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_22"
|
||||
android:layout_marginTop="@dimen/module_call_chat_calling_text_hawk_eye_margin_top_bottom"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_hawk_eye_name_size"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_call_head"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/module_carchatting_team_rl_view"
|
||||
android:layout_width="@dimen/module_call_chat_state_hawk_eye_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_hawk_eye_height"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_iv_team_quit"
|
||||
android:layout_width="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_height="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_marginRight="@dimen/module_call_chat_calling_iv_hawk_eye_margin_left_right"
|
||||
android:src="@drawable/module_carchatting_team_quit"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/module_carchatting_team_ll_head"
|
||||
android:layout_width="@dimen/module_call_chat_team_ll_head_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_hawk_eye_height"
|
||||
android:gravity="center"
|
||||
android:visibility="invisible"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_team_num"
|
||||
android:layout_width="@dimen/module_call_chat_team_num_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_num_width"
|
||||
android:background="@drawable/module_carchatting_vr_team_num_bg"
|
||||
android:gravity="center"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/module_call_chat_team_num_text_size"
|
||||
android:visibility="gone" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head0"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_1_5"
|
||||
android:visibility="gone"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head1"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_head_view_left_margin"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_1"
|
||||
android:visibility="gone"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head2"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_head_view_left_margin"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_0_5"
|
||||
android:visibility="gone"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head3"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_head_view_left_margin4"
|
||||
android:layout_marginTop="@dimen/module_call_chat_team_head_view_top_margin"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_0_1"
|
||||
android:visibility="gone"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head4"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_head_view_left_margin"
|
||||
android:layout_marginTop="@dimen/module_call_chat_team_head_view_top_margin"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_0"
|
||||
android:visibility="gone"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
</LinearLayout>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_team_tv_info"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_team_info_margin_bottom"
|
||||
android:text="@string/module_car_chat_team_info"
|
||||
android:textColor="#7FFFFFFF"
|
||||
android:textSize="@dimen/module_call_chat_team_info_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_team_ll_head" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/module_call_chat_team_chatting_margin_top"
|
||||
android:text="@string/module_car_chat_team_calling"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/module_call_chat_team_chatting_text_size"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_team_ll_head"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_call_time"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_calling_text_hawk_eye_margin_top_bottom"
|
||||
android:text="@string/module_car_chat_matching_wait"
|
||||
android:textColor="@color/module_carchatting_hawk_eye_status_color"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_hawk_eye_time_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="@+id/module_carchatting_call_nickname" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_call_nickname"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_22"
|
||||
android:layout_marginTop="@dimen/module_call_chat_calling_text_hawk_eye_margin_top_bottom"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_hawk_eye_name_size"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_call_head"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -1,257 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="@dimen/module_call_chat_state_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_height"
|
||||
android:orientation="vertical">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/module_carchatting_rl_match_init_view"
|
||||
android:layout_width="@dimen/module_call_chat_view_match_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_height"
|
||||
android:background="@drawable/module_callchatting_shape_gradient_blue"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="@dimen/module_call_chat_match_iv_width"
|
||||
android:layout_height="@dimen/module_call_chat_match_iv_height"
|
||||
android:layout_marginStart="@dimen/module_call_chat_match_iv_left_margin"
|
||||
android:src="@mipmap/module_callchatting_match"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_view_margin_end"
|
||||
android:text="@string/module_car_chat_match_tip"
|
||||
android:textColor="@color/module_carchatting_white_color"
|
||||
android:textSize="@dimen/module_call_chat_match_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/module_carchatting_rl_matching_view"
|
||||
android:layout_width="@dimen/module_call_chat_state_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_height"
|
||||
android:background="@drawable/module_carchatting_launcher_calling_bg"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/module_call_chat_match_view_left_margin"
|
||||
android:text="@string/module_car_chat_matching"
|
||||
android:textColor="@color/module_carchatting_white_color"
|
||||
android:textSize="@dimen/module_call_chat_matching_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_tv_cancel_match"
|
||||
android:layout_width="90px"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_match_view_right_margin"
|
||||
android:gravity="center"
|
||||
android:text="@string/module_car_chat_matching_cancel"
|
||||
android:textColor="@color/module_carchatting_red_color"
|
||||
android:textSize="@dimen/module_call_chat_matching_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<View
|
||||
android:layout_width="1px"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="@dimen/module_call_chat_match_view_line_margin_top_bottom"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_match_view_right_margin"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_match_view_line_margin_top_bottom"
|
||||
android:background="@color/module_carchatting_match_line"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/module_carchatting_tv_cancel_match"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/module_carchatting_rl_call_view"
|
||||
android:layout_width="@dimen/module_call_chat_state_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_height"
|
||||
android:background="@drawable/module_carchatting_launcher_calling_bg"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_call_head"
|
||||
android:layout_width="@dimen/module_call_chat_calling_iv_width_height"
|
||||
android:layout_height="@dimen/module_call_chat_calling_iv_width_height"
|
||||
android:layout_marginStart="@dimen/module_call_chat_calling_iv_margin_left_right"
|
||||
android:clickable="true"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_call_hangUp"
|
||||
android:layout_width="@dimen/module_call_chat_calling_iv_width_height"
|
||||
android:layout_height="@dimen/module_call_chat_calling_iv_width_height"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_calling_iv_margin_left_right"
|
||||
android:src="@mipmap/module_carchatting_launcher_calling_hangup"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_call_time"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_calling_text_margin_top_bottom"
|
||||
android:text="@string/module_car_chat_matching_wait"
|
||||
android:textColor="@color/module_carchatting_status_color"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_time_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="@+id/module_carchatting_call_nickname" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_call_nickname"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_22"
|
||||
android:layout_marginTop="@dimen/module_call_chat_calling_text_margin_top_bottom"
|
||||
android:textColor="@color/module_carchatting_white_color"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_name_size"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_call_head"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/module_carchatting_team_rl_view"
|
||||
android:layout_width="@dimen/module_call_chat_state_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_height"
|
||||
android:background="@drawable/module_carchatting_launcher_calling_bg"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/module_carchatting_team_ll_head"
|
||||
android:layout_width="@dimen/dp_160"
|
||||
android:layout_height="@dimen/module_call_chat_state_height"
|
||||
android:gravity="center"
|
||||
android:visibility="invisible"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head0"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_1_5"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head1"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_head_view_left_margin"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_1"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head2"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_head_view_left_margin"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_0_5"
|
||||
android:visibility="gone"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head3"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_head_view_left_margin4"
|
||||
android:layout_marginTop="@dimen/module_call_chat_team_head_view_top_margin"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_0_1"
|
||||
android:visibility="gone"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head4"
|
||||
android:layout_width="@dimen/module_call_chat_team_head_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_head_view_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_head_view_left_margin"
|
||||
android:layout_marginTop="@dimen/module_call_chat_team_head_view_top_margin"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
android:translationZ="@dimen/dp_0"
|
||||
android:visibility="gone"
|
||||
app:civ_border_color="#FFFFFF"
|
||||
app:civ_border_width="2dp" />
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/module_call_chat_team_calling_left_margin"
|
||||
android:layout_marginTop="@dimen/module_call_chat_team_calling_top_margin"
|
||||
android:text="@string/module_car_chat_team_calling"
|
||||
android:textColor="@color/module_carchatting_nick_color"
|
||||
android:textSize="@dimen/module_call_chat_team_calling_size"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toTopOf="@id/module_carchatting_team_tv_info"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_team_ll_head" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_team_tv_info"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/module_call_chat_team_info_left_margin"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_team_info_bottom_margin"
|
||||
android:text="@string/module_car_chat_team_info"
|
||||
android:textColor="@color/module_carchatting_status_color"
|
||||
android:textSize="@dimen/module_call_chat_team_info_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_team_ll_head" />
|
||||
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_iv_team_quit"
|
||||
android:layout_width="@dimen/module_call_chat_team_quit_view_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_quit_view_height"
|
||||
android:layout_marginRight="@dimen/module_call_chat_team_quit_right_margin"
|
||||
android:src="@drawable/module_carchatting_team_quit"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -2,79 +2,69 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/module_carchatting_rl_incoming_view"
|
||||
android:layout_width="@dimen/module_call_chat_state_incoming_hawk_eye_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_incoming_hawk_eye_height"
|
||||
android:background="@drawable/module_carchatting_vr_calling_bg"
|
||||
android:orientation="vertical">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/module_carchatting_rl_incoming_view"
|
||||
android:layout_width="@dimen/module_call_chat_state_incoming_hawk_eye_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_incoming_hawk_eye_height"
|
||||
android:visibility="visible"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_call_head"
|
||||
android:layout_width="@dimen/module_call_chat_incoming_aisdk_tag_width"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@drawable/module_carchatting_aicloud_incoming"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_call_head"
|
||||
android:layout_width="@dimen/module_call_chat_incoming_aisdk_tag_width"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@drawable/module_carchatting_aicloud_incoming"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_incoming_answer"
|
||||
android:layout_width="@dimen/module_call_chat_hawk_eye_incoming_circle_btn_size"
|
||||
android:layout_height="@dimen/module_call_chat_hawk_eye_incoming_circle_btn_size"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_calling_iv_hawk_eye_margin_left_right"
|
||||
android:layout_marginRight="@dimen/module_call_chat_state_incoming_hawk_eye_call_margin_right"
|
||||
android:clickable="true"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@mipmap/module_callchatting_launcher_incoming_answer"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/module_carchatting_incoming_hangUp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_incoming_answer"
|
||||
android:layout_width="@dimen/module_call_chat_hawk_eye_incoming_circle_btn_size"
|
||||
android:layout_height="@dimen/module_call_chat_hawk_eye_incoming_circle_btn_size"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_calling_iv_hawk_eye_margin_left_right"
|
||||
android:layout_marginRight="@dimen/module_call_chat_state_incoming_hawk_eye_call_margin_right"
|
||||
android:clickable="true"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@mipmap/module_callchatting_launcher_incoming_answer"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/module_carchatting_incoming_hangUp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_incoming_hangUp"
|
||||
android:layout_width="@dimen/module_call_chat_hawk_eye_incoming_circle_btn_size"
|
||||
android:layout_height="@dimen/module_call_chat_hawk_eye_incoming_circle_btn_size"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_calling_iv_hawk_eye_margin_left_right"
|
||||
android:clickable="true"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@mipmap/module_callchatting_launcher_incoming_hangup"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_incoming_hangUp"
|
||||
android:layout_width="@dimen/module_call_chat_hawk_eye_incoming_circle_btn_size"
|
||||
android:layout_height="@dimen/module_call_chat_hawk_eye_incoming_circle_btn_size"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_calling_iv_hawk_eye_margin_left_right"
|
||||
android:clickable="true"
|
||||
android:scaleType="centerInside"
|
||||
android:src="@mipmap/module_callchatting_launcher_incoming_hangup"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_call_time"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_state_incoming_hawk_eye_margin_left"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_calling_text_hawk_eye_margin_top_bottom"
|
||||
android:text="请求语音通话..."
|
||||
android:textColor="@color/module_carchatting_hawk_eye_status_color"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_hawk_eye_time_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toRightOf="@+id/module_carchatting_call_head" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/module_call_chat_calling_text_hawk_eye_margin_top_bottom"
|
||||
android:text="云平台"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_hawk_eye_name_size"
|
||||
app:layout_constraintStart_toStartOf="@+id/module_carchatting_call_time"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_call_time"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_state_incoming_hawk_eye_margin_left"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_calling_text_hawk_eye_margin_top_bottom"
|
||||
android:text="请求语音通话..."
|
||||
android:textColor="@color/module_carchatting_hawk_eye_status_color"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_hawk_eye_time_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toRightOf="@+id/module_carchatting_call_head" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/module_call_chat_calling_text_hawk_eye_margin_top_bottom"
|
||||
android:text="云平台"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/module_call_chat_calling_text_hawk_eye_name_size"
|
||||
app:layout_constraintStart_toStartOf="@+id/module_carchatting_call_time"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -1,74 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="@dimen/module_call_chat_team_invitation_hawk_eye_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_invitation_hawk_eye_height"
|
||||
android:background="@drawable/module_carchatting_team_invitation_hawk_eye_bg"
|
||||
android:elevation="@dimen/dp_8">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="@dimen/dp_121"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginStart="@dimen/dp_31"
|
||||
android:layout_marginTop="@dimen/dp_22"
|
||||
android:layout_marginBottom="@dimen/dp_42"
|
||||
android:background="@drawable/module_carchatting_team_invitation_hawk_eye_header_bg"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_civ_head"
|
||||
android:layout_width="@dimen/dp_121"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginStart="@dimen/dp_31"
|
||||
android:layout_marginTop="@dimen/dp_22"
|
||||
android:layout_marginBottom="@dimen/dp_42"
|
||||
android:src="@drawable/module_carchatting_team_invitation_hawk_eye_head_default"
|
||||
android:scaleType="centerInside"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_iv_join"
|
||||
android:layout_width="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_height="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_team_invitation_join_hawk_eye_margin_right"
|
||||
android:layout_marginBottom="@dimen/dp_21"
|
||||
android:src="@drawable/module_carchatting_team_invitation_hawk_eye_join"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/module_carchatting_iv_refuse"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_iv_refuse"
|
||||
android:layout_width="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_height="@dimen/module_call_chat_hawk_eye_circle_btn_size"
|
||||
android:layout_marginBottom="@dimen/dp_21"
|
||||
android:layout_marginEnd="@dimen/module_call_chat_team_invitation_hawk_eye_padding"
|
||||
android:src="@drawable/module_carchatting_team_invitation_hawk_eye_refuse"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_tv_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/module_call_chat_team_invitation_content_margin_left"
|
||||
android:text="车友邀请你加入车队!"
|
||||
android:textColor="@color/module_carchatting_white_color"
|
||||
android:textSize="@dimen/module_call_chat_team_invitation_content_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginBottom="@dimen/dp_21"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_civ_head" />
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -1,75 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/module_call_chat_team_invitation_height"
|
||||
android:layout_margin="@dimen/module_common_shadow_width_pos"
|
||||
android:background="@drawable/module_carchatting_team_invitation_bg"
|
||||
android:elevation="@dimen/dp_8">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_civ_head"
|
||||
android:layout_width="@dimen/module_call_chat_team_invitation_height"
|
||||
android:layout_height="@dimen/module_call_chat_team_invitation_height"
|
||||
android:src="@drawable/module_carchatting_team_invitation_head_default"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_tv_title"
|
||||
android:layout_width="@dimen/module_call_chat_team_invitation_title_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_invitation_title_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_invitation_title_margin_left"
|
||||
android:layout_marginTop="@dimen/module_call_chat_team_invitation_title_margin_top"
|
||||
android:background="@drawable/module_carchatting_team_invitation_title_bg"
|
||||
android:gravity="center"
|
||||
android:text="车队邀请"
|
||||
android:textColor="@color/module_carchatting_white_color"
|
||||
android:textSize="@dimen/module_call_chat_team_invitation_title_text_size"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_civ_head"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_tv_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_invitation_content_margin_left"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_team_invitation_content_margin_bottom"
|
||||
android:text="车友邀请你加入车队!"
|
||||
android:textColor="@color/module_carchatting_white_color"
|
||||
android:textSize="@dimen/module_call_chat_team_invitation_content_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_civ_head" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_iv_join"
|
||||
android:layout_width="@dimen/module_call_chat_team_invitation_join_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_invitation_join_height"
|
||||
android:layout_marginRight="@dimen/module_call_chat_team_invitation_join_margin_right"
|
||||
android:src="@drawable/module_carchatting_team_invitation_join"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/module_carchatting_iv_refuse"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/module_carchatting_iv_refuse"
|
||||
android:layout_width="@dimen/module_call_chat_team_invitation_join_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_invitation_join_height"
|
||||
android:layout_marginRight="@dimen/module_call_chat_team_invitation_padding"
|
||||
android:src="@drawable/module_carchatting_team_invitation_refuse"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="ContentDescription" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
</LinearLayout>
|
||||
@@ -1,49 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/module_call_chat_team_teammate_height"
|
||||
android:layout_marginTop="@dimen/module_call_chat_team_teammate_margin"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_team_teammate_margin"
|
||||
android:background="@drawable/module_carchatting_team_teammate_bg"
|
||||
android:padding="@dimen/module_call_chat_team_teammate_padding">
|
||||
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/module_carchatting_civ_head"
|
||||
android:layout_width="@dimen/module_call_chat_team_teammate_head_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_teammate_head_height"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
app:civ_border_color="#4cffffff"
|
||||
app:civ_border_width="@dimen/module_call_chat_state_head_border"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_tv_nickname"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_team_teammate_nickname_margin_left"
|
||||
android:text="昵称"
|
||||
android:textColor="@color/module_carchatting_white_color"
|
||||
android:textSize="@dimen/module_call_chat_team_teammate_nickname_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/module_carchatting_civ_head"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/module_carchatting_tv_identity"
|
||||
android:layout_width="@dimen/module_call_chat_team_teammate_identity_width"
|
||||
android:layout_height="@dimen/module_call_chat_team_teammate_identity_height"
|
||||
android:background="@drawable/module_carchatting_team_teammate_follower_bg"
|
||||
android:gravity="center"
|
||||
android:text="身份"
|
||||
android:textColor="@color/module_carchatting_white_color"
|
||||
android:textSize="@dimen/module_call_chat_team_teammate_identity_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -1,105 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="@dimen/module_call_chat_user_state_x"
|
||||
android:layout_height="@dimen/module_call_chat_user_state_y"
|
||||
android:orientation="vertical">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/moduleCallChatBg"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="fitXY" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/moduleCallChatCoverBg"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="fitXY"
|
||||
android:src="@mipmap/module_carchatting_user_cover_bg" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/moduleCallChatUserClose"
|
||||
android:layout_width="@dimen/module_call_chat_state_close_icon_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_close_icon_width"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_state_close_margin"
|
||||
android:layout_marginTop="@dimen/module_call_chat_state_close_margin"
|
||||
android:src="@drawable/module_carchatting_team_fragment_close"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<de.hdodenhof.circleimageview.CircleImageView
|
||||
android:id="@+id/moduleCallChatUserHead"
|
||||
android:layout_width="@dimen/module_call_chat_state_user_head_width"
|
||||
android:layout_height="@dimen/module_call_chat_state_user_head_width"
|
||||
android:layout_marginTop="@dimen/module_call_chat_state_head_margin_top"
|
||||
android:src="@mipmap/module_carchatting_default_head_img"
|
||||
app:civ_border_color="#E8EEF9"
|
||||
app:civ_border_width="@dimen/module_call_chat_state_head_border"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/moduleCallChatUserNickName"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/module_call_chat_state_nick_name_margin_top"
|
||||
android:text="杨超越"
|
||||
android:textColor="@color/module_carchatting_nick_color"
|
||||
android:textSize="@dimen/module_call_chat_state_nick_name_size"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/moduleCallChatUserHead" />
|
||||
|
||||
<com.mogo.module.common.view.CustomRatingBar
|
||||
android:id="@+id/moduleCallChatRatingBar"
|
||||
style="@style/customHeartHeartRatingBarStyle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/module_call_chat_state_rating_margin_top"
|
||||
android:isIndicator="true"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/moduleCallChatUserNickName"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<com.mogo.module.carchatting.view.DrawableTextView
|
||||
android:id="@+id/moduleCallChatUserJoinTeam"
|
||||
android:layout_width="@dimen/module_call_chat_user_caller_x"
|
||||
android:layout_height="@dimen/module_call_chat_state_caller_height"
|
||||
android:layout_marginLeft="@dimen/module_call_chat_state_caller_margin_left_right"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_state_caller_margin_bottom"
|
||||
android:background="@drawable/module_callchatting_shape_gradient_blue"
|
||||
android:drawableLeft="@mipmap/module_callchatting_user_join_team"
|
||||
android:drawablePadding="@dimen/module_call_chat_state_caller_drawable_padding"
|
||||
android:gravity="center_vertical"
|
||||
android:text="@string/module_car_chat_user_join_team"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="@dimen/module_call_chat_state_caller_text_size"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/moduleCallChatUserCaller"
|
||||
android:layout_width="@dimen/module_call_chat_user_caller_x"
|
||||
android:layout_height="@dimen/module_call_chat_state_caller_height"
|
||||
android:layout_marginRight="@dimen/module_call_chat_state_caller_margin_left_right"
|
||||
android:layout_marginBottom="@dimen/module_call_chat_state_caller_margin_bottom"
|
||||
android:background="@drawable/module_callchatting_user_pop_call_bg"
|
||||
android:drawableLeft="@mipmap/module_callchatting_user_caller"
|
||||
android:drawablePadding="@dimen/module_call_chat_state_caller_drawable_padding"
|
||||
android:gravity="center_vertical"
|
||||
android:paddingLeft="@dimen/module_call_chat_state_caller_padding_left"
|
||||
android:text="@string/module_car_chat_user_caller"
|
||||
android:textColor="@color/module_carchatting_nick_color"
|
||||
android:textSize="@dimen/module_call_chat_state_caller_text_size"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
tools:visibility="visible" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
Before Width: | Height: | Size: 4.1 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 4.1 KiB |