diff --git a/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasAutoPilotManager.java b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasAutoPilotManager.java index 7feeb97d74..01ba17f44b 100644 --- a/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasAutoPilotManager.java +++ b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasAutoPilotManager.java @@ -1,6 +1,8 @@ package com.mogo.module.adas; import android.content.Context; +import android.content.Intent; +import android.provider.Settings; import com.mogo.module.adas.entity.AdasAutoPilotLocReceiverBean; import com.mogo.module.adas.model.AdasServiceModel; @@ -11,10 +13,6 @@ import com.mogo.utils.logger.Logger; import com.zhidao.support.adas.high.bean.AutopilotRoute; import com.zhidao.support.adas.high.bean.AutopilotStatus; -import static com.mogo.module.adas.model.AdasServiceModel.DISPATCH_RESULT_AFFIRM; -import static com.mogo.module.adas.model.AdasServiceModel.DISPATCH_RESULT_MANUAL_CANCEL; -import static com.mogo.module.adas.model.AdasServiceModel.DISPATCH_RESULT_TIMER_CANCEL; - //负责监听自动驾驶状态并进行状态上报,自动驾驶路线上报,接收调度指令展示指令弹窗 public class AdasAutoPilotManager implements IMogoOnMessageListener , IAdasDataListener @@ -23,7 +21,7 @@ public class AdasAutoPilotManager implements IMogoOnMessageListener= 0) { + if (TIMER > 0) { TIMER--; + Logger.d(TAG,"timer : " + TIMER); tvTimer.setText(String.valueOf(TIMER)); - handler.sendEmptyMessage(MSG_TYPE_TIMER); + handler.sendEmptyMessageDelayed(MSG_TYPE_TIMER,1000L); } else { hideDialog(); } @@ -46,17 +45,19 @@ public class DispatchRemindDialog extends BaseFloatDialog { setContentView(R.layout.dialog_adas_dispatch_remind); tvTimer = findViewById(R.id.module_adas_dispatch_remind_timer); tvLoc = findViewById(R.id.module_adas_dispatch_remind_loc); - tvAffirm = (Button)findViewById(R.id.module_adas_dispatch_remind_affirm); - tvCancel = (Button)findViewById(R.id.module_adas_dispatch_remind_cancel); + Button btnAffirm = (Button) findViewById(R.id.module_adas_dispatch_remind_affirm); + Button btnCancel = (Button) findViewById(R.id.module_adas_dispatch_remind_cancel); tvTimer.setText(String.valueOf(TIMER)); - tvAffirm.setOnClickListener(v -> { + btnAffirm.setOnClickListener(v -> { if (mListener != null) { mListener.affirm(); + dismissDialog(); } }); - tvCancel.setOnClickListener(v -> { + btnCancel.setOnClickListener(v -> { if (mListener != null) { mListener.cancel(true); + dismissDialog(); } }); } @@ -67,12 +68,16 @@ public class DispatchRemindDialog extends BaseFloatDialog { tvLoc.setText(locContent); } - public void hideDialog() { + private void hideDialog() { if (mListener != null) { mListener.cancel(false); } - mListener = null; + dismissDialog(); + } + + private void dismissDialog(){ handler.removeMessages(MSG_TYPE_TIMER); + TIMER = 10; dismiss(); } diff --git a/modules/mogo-module-adas/src/main/res/drawable/module_adas_left_corner_bg.xml b/modules/mogo-module-adas/src/main/res/drawable/module_adas_left_corner_bg.xml new file mode 100644 index 0000000000..53c3ce246e --- /dev/null +++ b/modules/mogo-module-adas/src/main/res/drawable/module_adas_left_corner_bg.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/modules/mogo-module-adas/src/main/res/drawable/module_adas_right_corner_bg.xml b/modules/mogo-module-adas/src/main/res/drawable/module_adas_right_corner_bg.xml new file mode 100644 index 0000000000..dcb069b238 --- /dev/null +++ b/modules/mogo-module-adas/src/main/res/drawable/module_adas_right_corner_bg.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/modules/mogo-module-adas/src/main/res/layout/dialog_adas_dispatch_remind.xml b/modules/mogo-module-adas/src/main/res/layout/dialog_adas_dispatch_remind.xml index 341f49c864..9051de90f7 100644 --- a/modules/mogo-module-adas/src/main/res/layout/dialog_adas_dispatch_remind.xml +++ b/modules/mogo-module-adas/src/main/res/layout/dialog_adas_dispatch_remind.xml @@ -3,7 +3,7 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="@dimen/adas_dispatch_remind_dialog_width" android:layout_height="@dimen/adas_dispatch_remind_dialog_height" - android:background="@color/adas_dispatch_remind_background"> + android:background="@drawable/module_adas_bg_shape"> diff --git a/modules/mogo-module-adas/src/main/res/values/colors.xml b/modules/mogo-module-adas/src/main/res/values/colors.xml index 9da2da7c82..df6777f132 100644 --- a/modules/mogo-module-adas/src/main/res/values/colors.xml +++ b/modules/mogo-module-adas/src/main/res/values/colors.xml @@ -5,5 +5,6 @@ #8E9DD4 #4D000000 #66B8BFE8 + #AFB3C7 \ No newline at end of file diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java index 92e8179ba4..237d507a45 100644 --- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java +++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java @@ -62,6 +62,7 @@ public class MainActivity extends MvpActivity implement FragmentStackTransactionListener { protected static final String TAG = "MainActivity"; + private static final int REQUEST_CODE_DIALOG = 100; protected IMogoServiceApis mServiceApis; protected IMogoFragmentManager mMogoFragmentManager; @@ -112,7 +113,6 @@ public class MainActivity extends MvpActivity implement @Override protected void initViews() { - getWindow().setBackgroundDrawable(null); mApps = findViewById(R.id.module_main_id_apps_fragment_container); @@ -140,6 +140,9 @@ public class MainActivity extends MvpActivity implement if (CallChatApi.getInstance().getApiProvider() != null) { CallChatApi.getInstance().getApiProvider().initVehicleTeamContainer("init", R.id.module_main_id_message_history_fragment_container, this); } + //申请悬浮窗权限 + Intent intent=new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION); + startActivityForResult(intent, REQUEST_CODE_DIALOG); } // 隐藏布局 @@ -486,4 +489,9 @@ public class MainActivity extends MvpActivity implement builder.show(); } + @Override + protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { + super.onActivityResult(requestCode, resultCode, data); + + } }