Merge branch 'qa_byd' into dev

This commit is contained in:
wangcongtao
2020-07-24 11:43:42 +08:00
15 changed files with 147 additions and 92 deletions

View File

@@ -2,7 +2,8 @@ package com.mogo.module.common.wm;
import android.app.Dialog;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import com.mogo.module.common.dialog.BaseFloatDialog;
import com.mogo.utils.logger.Logger;
@@ -12,12 +13,15 @@ import com.mogo.utils.logger.Logger;
*/
class DialogImpl implements IWindowManagerView {
private Dialog dialog;
private View contentView;
@Override
public void init(WindowManagerView.WMViewParams params) {
Logger.d("DialogImpl", "init====");
dialog = new BaseFloatDialog(params.mContext);
Logger.d("DialogImpl","params view : " + params.mContentView);
dialog.setContentView(params.mContentView);
contentView = params.mContentView;
Logger.d("DialogImpl", "params view : " + contentView);
dialog.setContentView(contentView);
}
@Override
@@ -32,6 +36,12 @@ class DialogImpl implements IWindowManagerView {
@Override
public void hide() {
/*
* 取得view的父组件然后移除view
*/
if (contentView != null) {
((ViewGroup) contentView.getParent()).removeView(contentView);
}
dialog.dismiss();
}
}

View File

@@ -152,7 +152,7 @@ public class EventDispatchCenter implements
*
* @param callback
*/
void setMapLoadedCallback( Runnable callback ){
void setMapLoadedCallback( Runnable callback ) {
this.mMapLoadedCallback = callback;
}
@@ -162,6 +162,21 @@ public class EventDispatchCenter implements
mMapLoadedCallback.run();
mMapLoadedCallback = null;
}
Iterator< IMogoMapListener > iterator = MogoRegisterCenterHandler.getInstance().getMapListeners();
if ( iterator == null ) {
return;
}
while ( iterator.hasNext() ) {
IMogoMapListener listener = iterator.next();
if ( listener != null ) {
try {
listener.onMapLoaded();
} catch ( Exception e ) {
Logger.e( TAG, e, "error." );
}
}
}
}
@Override
@@ -466,46 +481,46 @@ public class EventDispatchCenter implements
}
@Override
public void showCarLocationInfo(CarLocationInfo info) {
public void showCarLocationInfo( CarLocationInfo info ) {
Iterator< IMogoObuDataChangedListener > iterator = MogoRegisterCenterHandler.getInstance().getObuDataChangedListeners();
if ( iterator == null ) {
return;
}
while ( iterator.hasNext() ) {
iterator.next().showCarLocationInfo(info);
iterator.next().showCarLocationInfo( info );
}
}
@Override
public void showOtherInfo(String info) {
public void showOtherInfo( String info ) {
Iterator< IMogoObuDataChangedListener > iterator = MogoRegisterCenterHandler.getInstance().getObuDataChangedListeners();
if ( iterator == null ) {
return;
}
while ( iterator.hasNext() ) {
iterator.next().showOtherInfo(info);
iterator.next().showOtherInfo( info );
}
}
@Override
public void showTrafficLightInfo(TrafficLightInfo info) {
public void showTrafficLightInfo( TrafficLightInfo info ) {
Iterator< IMogoObuDataChangedListener > iterator = MogoRegisterCenterHandler.getInstance().getObuDataChangedListeners();
if ( iterator == null ) {
return;
}
while ( iterator.hasNext() ) {
iterator.next().showTrafficLightInfo(info);
iterator.next().showTrafficLightInfo( info );
}
}
@Override
public void showCarEventInfo(CarEventInfo info) {
public void showCarEventInfo( CarEventInfo info ) {
Iterator< IMogoObuDataChangedListener > iterator = MogoRegisterCenterHandler.getInstance().getObuDataChangedListeners();
if ( iterator == null ) {
return;
}
while ( iterator.hasNext() ) {
iterator.next().showCarEventInfo(info);
iterator.next().showCarEventInfo( info );
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -4,6 +4,7 @@ import android.content.Context;
import android.content.IntentFilter;
import android.os.Bundle;
import android.provider.Settings;
import android.view.MotionEvent;
import android.view.View;
import androidx.annotation.NonNull;
@@ -11,11 +12,14 @@ import androidx.fragment.app.Fragment;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.mogo.map.MogoLatLng;
import com.mogo.map.listener.IMogoMapListener;
import com.mogo.map.location.IMogoLocationListener;
import com.mogo.map.marker.IMogoMarker;
import com.mogo.map.marker.IMogoMarkerClickListener;
import com.mogo.map.model.MogoPoi;
import com.mogo.map.navi.IMogoNaviListener;
import com.mogo.map.uicontroller.EnumMapUI;
import com.mogo.module.common.entity.MarkerExploreWay;
import com.mogo.module.common.entity.MarkerShowEntity;
import com.mogo.module.common.entity.V2XMessageEntity;
@@ -53,7 +57,8 @@ import static com.mogo.module.v2x.V2XConst.MODULE_NAME;
@Route(path = V2XConst.PATH_V2X_UI)
public class V2XModuleProvider implements
IMogoModuleProvider,
IMogoStatusChangedListener {
IMogoStatusChangedListener,
IMogoMapListener {
private final String TAG = "V2XMocduleProvider";
private Context mContext;
@@ -125,6 +130,9 @@ public class V2XModuleProvider implements
handleAdas();
initData();
V2XServiceManager.getMogoRegisterCenter().registerMogoMapListener(V2XConst.MODULE_NAME, this);
// 注册广播接收场景弹窗使用的
SceneBroadcastReceiver localReceiver = new SceneBroadcastReceiver();
LocalBroadcastManager localBroadcastManager = LocalBroadcastManager.getInstance(context);
@@ -145,16 +153,12 @@ public class V2XModuleProvider implements
}
private void initData() {
//初始化获得自车求助状态
initCarForHelpStatus();
try {
// 查询ACC状态
SharedPrefsMgr.getInstance(V2XUtils.getApp()).putBoolean("descriptor_ACC_STATUS", isAccOn());
if (isAccOn()) {
// 记录开机时间
FatigueDrivingUtils.refreshAccOnTime();
initCarForHelpStatus();
// 刷新配置文件
refreshStrategyConfig();
} else {
@@ -293,4 +297,40 @@ public class V2XModuleProvider implements
}
});
}
@Override
public void onMapLoaded() {
//初始化获得自车求助状态
initCarForHelpStatus();
}
@Override
public void onTouch(MotionEvent motionEvent) {
}
@Override
public void onPOIClick(MogoPoi poi) {
}
@Override
public void onMapClick(MogoLatLng latLng) {
}
@Override
public void onLockMap(boolean isLock) {
}
@Override
public void onMapModeChanged(EnumMapUI ui) {
}
@Override
public void onMapChanged(MogoLatLng latLng, float zoom, float tilt, float bearing) {
}
}

View File

@@ -50,15 +50,19 @@ public class V2XSeekHelpButton implements IV2XButton {
@Override
public void show() {
registerVoice();
tv = V2XServiceManager.getMogoEntranceButtonController().getButton(ButtonIndex.BUTTON2);
tv.setText("取消\n求助");
tv.setVisibility(View.VISIBLE);
tv.setBackgroundResource(R.drawable.bg_v2x_event_live_show);
tv.setOnClickListener(v -> {
//调用取消求助接口
// TODO: 2020/5/18 回调,显示对话框
doAction();
});
try {
tv = V2XServiceManager.getMogoEntranceButtonController().getButton(ButtonIndex.BUTTON2);
tv.setText("取消\n求助");
tv.setVisibility(View.VISIBLE);
tv.setBackgroundResource(R.drawable.bg_v2x_event_live_show);
tv.setOnClickListener(v -> {
//调用取消求助接口
// TODO: 2020/5/18 回调,显示对话框
doAction();
});
} catch (Exception e) {
e.printStackTrace();
}
}
@Override

View File

@@ -86,11 +86,9 @@ public class V2XSeekHelpDialog extends ConstraintLayout implements View.OnClickL
try {
Logger.d(TAG, "使用windowManager实现");
if (!isShown) {
if (windowManager == null) {
windowManager = new WindowManagerView.Builder(
V2XServiceManager.getMogoEntranceButtonController().getButton(ButtonIndex.BUTTON2).getContext()
).contentView(this).build();
}
windowManager = new WindowManagerView.Builder(
V2XServiceManager.getMogoEntranceButtonController().getButton(ButtonIndex.BUTTON2).getContext()
).contentView(this).build();
windowManager.show();
isShown = true;
AIAssist.getInstance(V2XUtils.getApp()).speakTTSVoice("确定要解除求助状态吗");

View File

@@ -14,6 +14,7 @@
app:alignContent="flex_start"
app:alignItems="center"
app:flexDirection="row"
android:paddingStart="@dimen/dp_150"
app:flexWrap="wrap"
app:justifyContent="flex_start">