diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java index 2afba379f1..56f72c9746 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java @@ -1,8 +1,10 @@ package com.mogo.module.extensions.entrance; import android.content.Intent; +import android.content.SharedPreferences; import android.graphics.Rect; import android.os.Bundle; +import android.os.Handler; import android.text.TextUtils; import android.util.TypedValue; import android.view.LayoutInflater; @@ -16,6 +18,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.constraintlayout.widget.ConstraintLayout; import androidx.constraintlayout.widget.ConstraintSet; +import androidx.constraintlayout.widget.Group; import com.alibaba.android.arouter.launcher.ARouter; import com.bumptech.glide.request.RequestOptions; @@ -26,7 +29,6 @@ import com.mogo.commons.voice.AIAssist; import com.mogo.map.MogoLatLng; import com.mogo.map.listener.IMogoMapListener; import com.mogo.map.location.IMogoLocationClient; -import com.mogo.map.location.MogoLocation; import com.mogo.map.marker.IMogoMarkerManager; import com.mogo.map.navi.IMogoAimlessModeListener; import com.mogo.map.navi.IMogoNavi; @@ -51,6 +53,7 @@ import com.mogo.module.extensions.utils.TopViewAnimHelper; import com.mogo.module.share.manager.ServiceApisManager; import com.mogo.service.IMogoServiceApis; import com.mogo.service.analytics.IMogoAnalytics; +import com.mogo.service.connection.IMogoOnMessageListener; import com.mogo.service.entrance.ButtonIndex; import com.mogo.service.fragmentmanager.IFragmentProvider; import com.mogo.service.fragmentmanager.IMogoFragmentManager; @@ -174,10 +177,14 @@ public class EntranceFragment extends MvpFragment seekHelpGroup.setVisibility(View.GONE)); + } } } @@ -880,6 +896,36 @@ public class EntranceFragment extends MvpFragment seekHelpNoticeListener = + new IMogoOnMessageListener() { + @Override + public Class target() { + return String.class; + } + + @Override + public void onMsgReceived(String obj) { + if(mStatusManager.isSeekHelping()) { + int seekNum = SharedPrefsMgr.getInstance(getContext()).getInt("seek_help_num", 0); + final int finalSeekNum = seekNum++; + SharedPrefsMgr.getInstance(getContext()).putInt("seek_help_num", seekNum); + handler.post(() -> { + seekHelpGroup.setVisibility(View.VISIBLE); + seekHelpNum.setText("" + finalSeekNum); + }); + } + } + }; + + private Handler handler = new Handler(); + + private void listenSeekNumber(){ + mApis.getSocketManagerApi(getContext()).registerOnMessageListener(SEEK_HELP_NOTICE_NUM_MSG_TYPE, seekHelpNoticeListener); + mStatusManager.registerStatusChangedListener(TAG,StatusDescriptor.SEEK_HELPING,this); + } + @Override public void onDestroy() { super.onDestroy(); @@ -892,11 +938,13 @@ public class EntranceFragment extends MvpFragment + + + + + \ No newline at end of file diff --git a/modules/mogo-module-extensions/src/main/res/layout/include_navi_info_panle.xml b/modules/mogo-module-extensions/src/main/res/layout/include_navi_info_panle.xml index 289e64c9d9..3bea94c0eb 100644 --- a/modules/mogo-module-extensions/src/main/res/layout/include_navi_info_panle.xml +++ b/modules/mogo-module-extensions/src/main/res/layout/include_navi_info_panle.xml @@ -2,7 +2,8 @@ + tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout" + > + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-extensions/src/main/res/layout/module_ext_layout_entrance.xml b/modules/mogo-module-extensions/src/main/res/layout/module_ext_layout_entrance.xml index 290f28af62..5e92507d0d 100644 --- a/modules/mogo-module-extensions/src/main/res/layout/module_ext_layout_entrance.xml +++ b/modules/mogo-module-extensions/src/main/res/layout/module_ext_layout_entrance.xml @@ -9,6 +9,11 @@ + + 31px 10px + + 44px + 1060px + 100px + 30px + 34px + 20px + 40px \ No newline at end of file diff --git a/modules/mogo-module-extensions/src/main/res/values/dimens.xml b/modules/mogo-module-extensions/src/main/res/values/dimens.xml index bc7e325604..2c1cfff501 100644 --- a/modules/mogo-module-extensions/src/main/res/values/dimens.xml +++ b/modules/mogo-module-extensions/src/main/res/values/dimens.xml @@ -162,4 +162,12 @@ 14px 8px + + 25px + 25px + 16px + 56px + 18px + 10px + 22px \ No newline at end of file diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt b/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt index 8eb55c6bf3..d1b6bf781b 100644 --- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt +++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/manager/SeekHelpManager.kt @@ -170,6 +170,8 @@ object SeekHelpManager { // 接口请求成功,内部同步v2x状态,通知adas,改变自车图标 ServiceApisManager.serviceApis.statusManagerApi.setSeekHelping("ShareDialog", true) SharedPrefsMgr.getInstance(context!!).putLong("seek_help_time", System.currentTimeMillis()) + SharedPrefsMgr.getInstance(context!!).putInt("seek_help_num", 0) + isSeekHelp = true aiAssist?.speakTTSVoice("已发布求助信息,将为你通知其他车主") toast("已发布求助信息,将为你通知其他车主")