@@ -1,10 +1,8 @@
package com.zhidao.adas.magic.ui ;
import android.content.Context ;
import android.content.DialogInterface ;
import android.content.Intent ;
import android.content.res.Configuration ;
import android.net.Uri ;
import android.os.Build ;
import android.os.Bundle ;
@@ -14,7 +12,6 @@ import android.text.Editable;
import android.text.TextUtils ;
import android.text.TextWatcher ;
import android.view.View ;
import android.view.WindowManager ;
import android.widget.AdapterView ;
import android.widget.ArrayAdapter ;
import android.widget.EditText ;
@@ -27,6 +24,7 @@ import android.widget.TextView;
import android.widget.Toast ;
import androidx.annotation.NonNull ;
import androidx.annotation.Nullable ;
import androidx.appcompat.app.AlertDialog ;
import androidx.appcompat.widget.AppCompatButton ;
import androidx.recyclerview.widget.GridLayoutManager ;
@@ -50,9 +48,16 @@ import com.zhidao.support.adas.high.bean.VersionCompatibility;
import com.zhidao.support.adas.high.common.Constants.IPC_CONNECTION_STATUS ;
import com.zhidao.support.adas.high.common.CupidLogUtils ;
import com.zhidao.support.adas.high.common.ProtocolStatus ;
import com.zhjt.mogo.adas.data.bean.AdasParam ;
import com.zhjt.mogo.adas.data.bean.AutopilotStatistics ;
import org.jetbrains.annotations.NotNull ;
import com.zhjt.mogo.adas.data.sweeper.SweeperCloudTask ;
import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable ;
import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask ;
import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume ;
import com.zhjt.mogo.adas.data.sweeper.task.big.SweeperBigTaskStatus ;
import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm ;
import com.zhjt.mogo.adas.data.sweeper.task.status.SweeperTaskStatus ;
import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop ;
import java.net.Inet4Address ;
import java.net.InetAddress ;
@@ -67,13 +72,13 @@ import java.util.Locale;
import java.util.Timer ;
import java.util.TimerTask ;
import chassis.ChassisStatesOuterClass ;
import function_state_management.FunctionStates ;
import bag_manager.BagManagerOuterClass ;
import chassis.ChassisStatesOuterClass ;
import chassis.VehicleStateOuterClass ;
import function_state_management.FunctionStates ;
import mogo.telematics.pad.MessagePad ;
import mogo.v2x.MogoV2X ;
import mogo.v2x.RoadOverviewEvents ;
import mogo_msg.MogoReportMsg ;
import perception.TrafficLightOuterClass ;
import planning.RoboSweeperTaskIndexOuterClass ;
@@ -107,7 +112,6 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas
private Timer timerAcc ;
private final List < TitleBean > titleBtnData = new ArrayList < > ( ) ;
private final List < IPCConnectState > connectStatusList = new ArrayList < > ( ) ;
private boolean isPad ;
private int connectStatus ;
private ListPopupWindow listPopupWindow ;
private FloatWindow floatWindow ;
@@ -119,9 +123,6 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas
super . onCreate ( savedInstanceState ) ;
setContentView ( R . layout . activity_main ) ;
initHandler ( ) ;
isPad = isPad ( this ) ;
if ( ! isPad )
getWindow ( ) . setFlags ( WindowManager . LayoutParams . FLAG_FULLSCREEN , WindowManager . LayoutParams . FLAG_FULLSCREEN ) ;
initView ( ) ;
initAdas ( ) ;
connectStatus = AdasManager . getInstance ( ) . getIpcConnectionStatus ( ) ;
@@ -342,6 +343,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas
private void initListData ( ) {
titleBtnData . add ( new TitleBean ( Constants . TITLE . SEND_RESTORATION ) ) ;
titleBtnData . add ( new TitleBean ( Constants . TITLE . SEND_ACCELERATED_SPEED_ADD_1 ) ) ;
titleBtnData . add ( new TitleBean ( Constants . TITLE . SEND_ACCELERATED_SPEED_1 ) ) ;
titleBtnData . add ( new TitleBean ( Constants . TITLE . SEND_ACCELERATED_SPEED_2 ) ) ;
titleBtnData . add ( new TitleBean ( Constants . TITLE . SEND_CHANGE_LANE_LEFT ) ) ;
@@ -586,11 +588,71 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas
}
@Override
public void onSweeperFutianCloudTask ( @NonNull MessagePad . Header header , @NonNull SweeperCloudTask . MessageType messageType , @Nullable String reqNo , long sysTime , @Nullable SweeperTask . TaskInfo taskInfo ) {
}
@Override
public void onSweeperFutianCloudTaskConfirm ( @NonNull MessagePad . Header header , @NonNull SweeperCloudTask . MessageType messageType , @Nullable String reqNo , long sysTime , @Nullable SweeperTaskConfirm . TaskConfirm taskConfirm ) {
}
@Override
public void onSweeperFutianCloudTaskStatus ( @NonNull MessagePad . Header header , @NonNull SweeperCloudTask . MessageType messageType , @Nullable String reqNo , long sysTime , @Nullable SweeperTaskStatus . TaskStatusPush taskStatusPush ) {
}
@Override
public void onSweeperFutianCloudTaskStop ( @NonNull MessagePad . Header header , @NonNull SweeperCloudTask . MessageType messageType , @Nullable String reqNo , long sysTime , @Nullable SweeperTaskStop . StopTaskReq stopTaskReq ) {
}
@Override
public void onSweeperFutianCloudTaskSuspendResume ( @NonNull MessagePad . Header header , @NonNull SweeperCloudTask . MessageType messageType , @Nullable String reqNo , long sysTime , @Nullable SweeperTaskSuspendResume . SuspendResumeTaskResp suspendResumeTaskResp ) {
}
@Override
public void onSweeperFutianCloudBootable ( @NonNull MessagePad . Header header , @NonNull SweeperCloudTask . MessageType messageType , @Nullable String reqNo , long sysTime , @Nullable SweeperBootable . IsBootableResp isBootableResp ) {
}
@Override
public void onSweeperFutianCloudBigTaskStatus ( @NonNull MessagePad . Header header , @NonNull SweeperCloudTask . MessageType messageType , @Nullable String reqNo , long sysTime , @Nullable SweeperBigTaskStatus . BigTaskStatusPush bigTaskStatusPush ) {
}
@Override
public void onSweeperFutianCloudTaskUnknown ( @NonNull MessagePad . Header header , @NonNull byte [ ] bytes ) {
}
@Override
public void onBagManagerCmd ( MessagePad . Header header , BagManagerOuterClass . BagManager bagManager ) {
}
@Override
public void onV2nCongestionEvent ( @NonNull MessagePad . Header header , @NonNull MogoV2X . RSI_PB rsi ) {
}
@Override
public void onV2nGlobalPathEvents ( @NonNull MessagePad . Header header , @NonNull RoadOverviewEvents . RoadOverviewData roadOverview , @Nullable MogoV2X . RSI_PB construct , @Nullable MogoV2X . RSI_PB triangle , @Nullable MogoV2X . RSI_PB congestion , @Nullable MogoV2X . RSM_PB parkingViolation ) {
}
@Override
public void onGetParamResp ( @NonNull MessagePad . Header header , @NonNull MessagePad . SetParamReq getParamResp , @NonNull AdasParam adasParam ) {
}
@Override
public void onM1StitchedVideo ( @NonNull MessagePad . Header header , @NonNull byte [ ] data ) {
}
@Override
public void onAutopilotAbility ( boolean isAutopilotAbility , String unableAutopilotReason ) {
@@ -669,18 +731,6 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas
return " 127.0.0.1 " ;
}
/**
* 判断当前设备是手机还是平板,代码来自 Google I/O App for Android
*
* @param context
* @return 平板返回 True, 手机返回 False
*/
public static boolean isPad ( Context context ) {
return ( context . getResources ( ) . getConfiguration ( ) . screenLayout
& Configuration . SCREENLAYOUT_SIZE_MASK )
> = Configuration . SCREENLAYOUT_SIZE_LARGE ;
}
@Override
public void onItemClick ( int position , TitleBean data ) {
@@ -693,6 +743,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas
case Constants . TITLE . SEND_RESTORATION :
updateItem ( Constants . TITLE . SEND_ACCELERATED_SPEED_2 , - 1 , null ) ;
updateItem ( Constants . TITLE . SEND_ACCELERATED_SPEED_1 , - 1 , null ) ;
updateItem ( Constants . TITLE . SEND_ACCELERATED_SPEED_ADD_1 , - 1 , null ) ;
sendAcc ( false , 0 . 0 ) ;
break ;
case Constants . TITLE . SEND_CHANGE_LANE_LEFT :
@@ -701,11 +752,18 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas
case Constants . TITLE . SEND_CHANGE_LANE_RIGHT :
AdasManager . getInstance ( ) . sendOperatorCmdChangeLaneRight ( ) ;
break ;
case Constants . TITLE . SEND_ACCELERATED_SPEED_ADD_1 :
updateItem ( Constants . TITLE . SEND_ACCELERATED_SPEED_1 , position , data ) ;
updateItem ( Constants . TITLE . SEND_ACCELERATED_SPEED_2 , position , data ) ;
sendAcc ( true , 1 ) ;
break ;
case Constants . TITLE . SEND_ACCELERATED_SPEED_1 :
updateItem ( Constants . TITLE . SEND_ACCELERATED_SPEED_ADD_1 , position , data ) ;
updateItem ( Constants . TITLE . SEND_ACCELERATED_SPEED_2 , position , data ) ;
sendAcc ( true , - 1 ) ;
break ;
case Constants . TITLE . SEND_ACCELERATED_SPEED_2 :
updateItem ( Constants . TITLE . SEND_ACCELERATED_SPEED_ADD_1 , position , data ) ;
updateItem ( Constants . TITLE . SEND_ACCELERATED_SPEED_1 , position , data ) ;
sendAcc ( true , - 2 ) ;
break ;
@@ -810,7 +868,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas
}
} ) ;
return true ;
} else if ( Constants . TITLE . SEND_ACCELERATED_SPEED_1 . equals ( data . name ) | | Constants . TITLE . SEND_ACCELERATED_SPEED_2 . equals ( data . name ) ) {
} else if ( Constants . TITLE . SEND_ACCELERATED_SPEED_ADD_1 . equals ( data . name ) | | Constants . TITLE . SEND_ACCELERATED_SPEED_ 1 . equals ( data . name ) | | Constants . TITLE . SEND_ACCELERATED_SPEED_2 . equals ( data . name ) ) {
AlertDialog . Builder builder = new AlertDialog . Builder ( MainActivity . this ) ;
builder . setTitle ( " ACC发送频率配置 " ) ;
View view = getLayoutInflater ( ) . inflate ( R . layout . dialog_time , null ) ;