Merge remote-tracking branch 'origin/dev_robotaxi-d-app-module_2120_221017_2.12.0' into test_robotaxi-d-app-module_2120_221017_2.12.0.1
This commit is contained in:
@@ -29,7 +29,8 @@ object BusSendTripInfoManager{
|
||||
arrivalStopName: String,
|
||||
isLastStop: Boolean) {
|
||||
d(SceneConstant.M_BUS + "BusSendTripInfoManager", "type: "+ type
|
||||
+", lineName: "+ lineName + ", stationName: "+arrivalStopName+", isLastStop: "+isLastStop)
|
||||
+", lineName: "+ lineName +", departureStopName: "+ departureStopName
|
||||
+ ", arrivalStopName: "+arrivalStopName+", isLastStop: "+isLastStop)
|
||||
CallerAutoPilotManager.sendTripInfo(type,lineName,departureStopName, arrivalStopName, isLastStop)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -811,6 +811,7 @@ public class TaxiModel {
|
||||
}
|
||||
if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.ArriveAtEnd.getCode()){
|
||||
if (FunctionBuildConfig.isDemoMode) {
|
||||
CallerLogger.INSTANCE.d(M_TAXI + TAG, "setIPCDemoMode:false");
|
||||
CallerAutoPilotManager.INSTANCE.setIPCDemoMode(false);
|
||||
}
|
||||
|
||||
|
||||
@@ -620,6 +620,7 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
|
||||
|
||||
public void onCurrentOrderCancelDone() {
|
||||
//去除起终点
|
||||
saveOrderState = -1;
|
||||
if (mCurrentOrder != null){
|
||||
setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,mCurrentOrder.startSitePoint,R.raw.star_marker);
|
||||
setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,mCurrentOrder.endSitePoint,R.raw.end_marker);
|
||||
|
||||
@@ -107,8 +107,24 @@ internal object BadCaseManager : LifecycleEventObserver {
|
||||
if(ClickUtils.isFastClick()){
|
||||
if(NetworkUtils.isConnected()){
|
||||
if(BadCaseConfig.dockerVersion!=null){
|
||||
val caseListDialog = CaseListDialog(activity)
|
||||
caseListDialog.show()
|
||||
//兼容老MAP版本
|
||||
if(BadCaseConfig.dockerVersion!!.contains("2.3.0")
|
||||
|| BadCaseConfig.dockerVersion!!.contains("2.4.0")
|
||||
|| BadCaseConfig.dockerVersion!!.contains("2.5.0")
|
||||
|| BadCaseConfig.dockerVersion!!.contains("2.6.0")
|
||||
|| BadCaseConfig.dockerVersion!!.contains("2.8.0")){
|
||||
val initiativeBadCaseWindow = InitiativeBadCaseWindow(activity)
|
||||
initiativeBadCaseWindow.setClickListener(object: InitiativeBadCaseWindow.ClickListener{
|
||||
override fun closeWindow() {
|
||||
initiativeBadCaseWindow.hideFloatWindow()
|
||||
}
|
||||
|
||||
})
|
||||
initiativeBadCaseWindow.showFloatWindow(null)
|
||||
}else{
|
||||
val caseListDialog = CaseListDialog(activity)
|
||||
caseListDialog.show()
|
||||
}
|
||||
}else{
|
||||
ToastUtils.showShort("工控机连接状态异常")
|
||||
}
|
||||
|
||||
@@ -174,19 +174,27 @@ internal class BadCaseConfigView @JvmOverloads constructor(
|
||||
override fun onAutopilotRecordConfig(config: MessagePad.RecordDataConfig) {
|
||||
super.onAutopilotRecordConfig(config)
|
||||
ThreadUtils.runOnUiThread {
|
||||
config.recordTypesList.iterator().forEach {
|
||||
if (it.id != 99){
|
||||
val topicList = ArrayList<TopicEntity>()
|
||||
it.topicsList.iterator().forEach {
|
||||
topicList.add(TopicEntity(it,true,false))
|
||||
if(BadCaseConfig.dockerVersion!!.contains("2.3.0")
|
||||
|| BadCaseConfig.dockerVersion!!.contains("2.4.0")
|
||||
|| BadCaseConfig.dockerVersion!!.contains("2.5.0")
|
||||
|| BadCaseConfig.dockerVersion!!.contains("2.6.0")
|
||||
|| BadCaseConfig.dockerVersion!!.contains("2.8.0")){
|
||||
rvTemplate.visibility = View.GONE
|
||||
}else{
|
||||
config.recordTypesList.iterator().forEach {
|
||||
if (it.id != 99){
|
||||
val topicList = ArrayList<TopicEntity>()
|
||||
it.topicsList.iterator().forEach {
|
||||
topicList.add(TopicEntity(it,true,false))
|
||||
}
|
||||
recordTypesList.add(RecordTypeEntity(it.id,it.desc,topicList))
|
||||
}
|
||||
recordTypesList.add(RecordTypeEntity(it.id,it.desc,topicList))
|
||||
}
|
||||
}
|
||||
if(recordTypesList.size>1){
|
||||
rvTemplate.visibility = View.VISIBLE
|
||||
recordTemplateAdapter?.setData(recordTypesList)
|
||||
recordTemplateAdapter?.notifyDataSetChanged()
|
||||
if(recordTypesList.size>1){
|
||||
rvTemplate.visibility = View.VISIBLE
|
||||
recordTemplateAdapter?.setData(recordTypesList)
|
||||
recordTemplateAdapter?.notifyDataSetChanged()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -163,6 +163,7 @@ public class CaseTopicListDialog extends Dialog implements IMoGoAutopilotRecordL
|
||||
ToastUtils.showShort("Topic设置成功");
|
||||
if(recordType.getId() == 0){
|
||||
//自定义Topic
|
||||
BadCaseConfig.customTopicList.clear();
|
||||
BadCaseConfig.customTopicList.addAll(addTopicList);
|
||||
}
|
||||
addTopicList.clear();
|
||||
@@ -184,11 +185,13 @@ public class CaseTopicListDialog extends Dialog implements IMoGoAutopilotRecordL
|
||||
@Override
|
||||
public void onAutopilotRecordConfig(MessagePad.RecordDataConfig config) {
|
||||
ThreadUtils.runOnUiThread(() -> {
|
||||
Log.i("houyanli","AllTopicsCount="+config.getAllTopicsCount());
|
||||
if(config.getAllTopicsCount()>0){
|
||||
for(int index=0;index<config.getAllTopicsCount();index++){
|
||||
if(!recordType.getTopicsList().contains(config.getAllTopics(index))){
|
||||
allTopicList.add(new TopicEntity(config.getAllTopics(index),false,true));
|
||||
}
|
||||
Log.i("houyanli","topic="+config.getAllTopics(index));
|
||||
}
|
||||
recordType.getTopicsList().addAll(allTopicList);
|
||||
topicListAdapter.setData(recordType.getTopicsList());
|
||||
|
||||
@@ -331,7 +331,7 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList
|
||||
return true
|
||||
}
|
||||
|
||||
fun showFloatWindow(recordCaseEntity: RecordCaseEntity) {
|
||||
fun showFloatWindow(recordCaseEntity: RecordCaseEntity?) {
|
||||
if (mFloatLayout.parent == null) {
|
||||
val metrics = DisplayMetrics()
|
||||
// 默认固定位置,靠屏幕右边缘的中间
|
||||
@@ -340,8 +340,13 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList
|
||||
mWindowParams!!.y = metrics.heightPixels / 2 - getSysBarHeight(mActivity)-350
|
||||
mWindowManager!!.addView(mFloatLayout, mWindowParams)
|
||||
//开启录包
|
||||
CallerAutoPilotManager.recordPackage(recordCaseEntity.caseId,Random(SystemClock.elapsedRealtime()).nextInt(),
|
||||
BadCaseConfig.totalDuration, BadCaseConfig.previousDuration,recordCaseEntity.topicList)
|
||||
if(recordCaseEntity!=null){
|
||||
CallerAutoPilotManager.recordPackage(recordCaseEntity.caseId,Random(SystemClock.elapsedRealtime()).nextInt(),
|
||||
BadCaseConfig.totalDuration, BadCaseConfig.previousDuration,recordCaseEntity.topicList)
|
||||
}else{
|
||||
CallerAutoPilotManager.recordPackage(BadCaseConfig.type,Random(SystemClock.elapsedRealtime()).nextInt(),
|
||||
BadCaseConfig.totalDuration, BadCaseConfig.previousDuration)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -147,7 +147,7 @@ class SOPSettingView @JvmOverloads constructor(
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
ivSpeedReduce.setOnClickListener {
|
||||
if (FunctionBuildConfig.detouringSpeed <= 3) {
|
||||
ToastUtils.showShort("阈值小可为3 m/s")
|
||||
ToastUtils.showShort("阈值最小可为3 m/s")
|
||||
} else {
|
||||
FunctionBuildConfig.detouringSpeed--
|
||||
tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s"
|
||||
|
||||
@@ -196,6 +196,7 @@ public class MainActivity extends MvpActivity<MainView, MainPresenter> implement
|
||||
|
||||
@Override
|
||||
public void onWindowFocusChanged(boolean hasFocus) {
|
||||
super.onWindowFocusChanged(hasFocus);
|
||||
if (hasFocus) {
|
||||
// 统计代码
|
||||
final Map<String, Object> properties = new HashMap<>();
|
||||
|
||||
@@ -66,6 +66,6 @@ interface IMoGoAutopilotStatusListener {
|
||||
/**
|
||||
* 平行驾驶
|
||||
*/
|
||||
const val STATUS_PARALLEL_DRIVING = 3
|
||||
const val STATUS_PARALLEL_DRIVING = 7
|
||||
}
|
||||
}
|
||||
@@ -70,6 +70,12 @@ public abstract class MvpActivity<V extends IView, P extends Presenter<V>> exten
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onWindowFocusChanged(boolean hasFocus) {
|
||||
super.onWindowFocusChanged(hasFocus);
|
||||
BarUtils.hideStatusBarAndSticky(this.getWindow());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean dispatchTouchEvent(MotionEvent ev) {
|
||||
if (ev.getAction() == MotionEvent.ACTION_DOWN && enableDispatchTouchEventToDismissSoftKeyBoard()) {
|
||||
|
||||
@@ -23,6 +23,7 @@ enum PilotMode {
|
||||
MODE_AUTO_DRIVE = 1;
|
||||
MODE_STEER_ONLY = 2;
|
||||
MODE_SPEED_ONLY = 3;
|
||||
MODE_REMOTE_DRIVE = 6;
|
||||
}
|
||||
|
||||
enum LongitudeDrivingMode {
|
||||
|
||||
@@ -143,11 +143,11 @@ message GnssInfo
|
||||
// message definition for MessageType: MsgTypeAutopilotState
|
||||
message AutopilotState
|
||||
{
|
||||
uint32 state = 1; //0: 不可用(abandoned), 1:ready, 2:自动驾驶中,3:平行驾驶
|
||||
uint32 state = 1; //0: 不可用(abandoned), 1:ready, 2:自动驾驶中, 7:平行驾驶中
|
||||
uint32 camera = 2; //camera节点状态 1:开启,0:关闭
|
||||
uint32 radar = 3; //雷达节点状态 1:开启,0:关闭
|
||||
uint32 rtk = 4; //RTK节点状态 1:开启,0:关闭
|
||||
uint32 autopilotMode = 5; //自动驾驶状态 0: 非自动驾驶,1: 自动驾驶,2平行驾驶
|
||||
uint32 autopilotMode = 5; //自动驾驶状态 0: 非自动驾驶,1: 自动驾驶
|
||||
double speed = 6; //惯导车速 m/s
|
||||
string reason = 7; //不可用原因(abandoned)
|
||||
}
|
||||
|
||||
@@ -15,6 +15,8 @@ import system_master.SystemStatusInfo;
|
||||
* 是否可以启动自动驾驶能力检测
|
||||
* 目前监控了底盘的一些状态和查询节点状态应答的数据
|
||||
* 没有使用监控事件报告的原因是因为,部分异常没进行正常恢复通知,例如收到了异常监控数据,但是异常恢复之后没有恢复的通知
|
||||
*
|
||||
* 此定时器不能停止 鹰眼中存在UI更新依赖循环查询系统状态
|
||||
*/
|
||||
public class AutopilotAbilityManager {
|
||||
private static final String TAG = AutopilotAbilityManager.class.getSimpleName();
|
||||
|
||||
@@ -77,11 +77,13 @@ public class AMapMarkerWrapper implements IMogoMarker, Observer {
|
||||
mMogoMarkerOptions.deleteObservers();
|
||||
mMogoMarkerOptions = null;
|
||||
}
|
||||
if ( mMarker != null ) {
|
||||
mMarker.remove();
|
||||
mMarker.setMObject( null );
|
||||
mMarker.setOnInfoWindowClickListener( null );
|
||||
mMarker = null;
|
||||
synchronized (this) {
|
||||
if ( mMarker != null ) {
|
||||
mMarker.remove();
|
||||
mMarker.setMObject( null );
|
||||
mMarker.setOnInfoWindowClickListener( null );
|
||||
mMarker = null;
|
||||
}
|
||||
}
|
||||
mMogoInfoWindowAdapter = null;
|
||||
mMogoMarkerClickListener = null;
|
||||
|
||||
Reference in New Issue
Block a user