diff --git a/libraries/map-amap/src/main/res/values-xhdpi/dimens.xml b/libraries/map-amap/src/main/res/values-xhdpi/dimens.xml index 9c08d26451..e296400581 100644 --- a/libraries/map-amap/src/main/res/values-xhdpi/dimens.xml +++ b/libraries/map-amap/src/main/res/values-xhdpi/dimens.xml @@ -1,6 +1,6 @@ - 370px - 78px - 120px + 360px + 63px + 96px \ No newline at end of file diff --git a/libraries/map-amap/src/main/res/values/dimens.xml b/libraries/map-amap/src/main/res/values/dimens.xml index d8d50de3af..5c0178abb7 100644 --- a/libraries/map-amap/src/main/res/values/dimens.xml +++ b/libraries/map-amap/src/main/res/values/dimens.xml @@ -1,7 +1,7 @@ 60px - 33px - 50px - 146px + 36px + 53px + 194px \ No newline at end of file diff --git a/modules/mogo-module-common/src/main/res/drawable-ldpi/module_common_my_location_bg.png b/modules/mogo-module-common/src/main/res/drawable-ldpi/module_common_my_location_bg.png new file mode 100644 index 0000000000..27036dbe7c Binary files /dev/null and b/modules/mogo-module-common/src/main/res/drawable-ldpi/module_common_my_location_bg.png differ diff --git a/modules/mogo-module-common/src/main/res/drawable-mdpi/module_common_my_location_bg.png b/modules/mogo-module-common/src/main/res/drawable-mdpi/module_common_my_location_bg.png new file mode 100644 index 0000000000..27036dbe7c Binary files /dev/null and b/modules/mogo-module-common/src/main/res/drawable-mdpi/module_common_my_location_bg.png differ diff --git a/modules/mogo-module-common/src/main/res/drawable-xhdpi/module_common_my_location_bg.png b/modules/mogo-module-common/src/main/res/drawable-xhdpi/module_common_my_location_bg.png new file mode 100644 index 0000000000..b74dde69b2 Binary files /dev/null and b/modules/mogo-module-common/src/main/res/drawable-xhdpi/module_common_my_location_bg.png differ diff --git a/modules/mogo-module-common/src/main/res/layout/module_common_my_location.xml b/modules/mogo-module-common/src/main/res/layout/module_common_my_location.xml index 690f7b6c48..41f7e8c7d0 100644 --- a/modules/mogo-module-common/src/main/res/layout/module_common_my_location.xml +++ b/modules/mogo-module-common/src/main/res/layout/module_common_my_location.xml @@ -5,7 +5,7 @@ android:id="@+id/module_map_amap_my_location_bg_iv" android:layout_width="@dimen/module_map_amap_my_location_bg_size" android:layout_height="@dimen/module_map_amap_my_location_bg_size" - android:src="@drawable/map_api_ic_current_location2"/> + android:src="@drawable/module_common_my_location_bg"/> implements Weathe private void requestCarModelList() { Map params = new HashMap<>(8); - params.put("sn", Utils.getSn()); -// params.put("sn", "ZD802B1932L00617"); +// params.put("sn", Utils.getSn()); + params.put("sn", "ZD802B1932L00617"); mNetWork.create(UserInfoNetApiServices.class, DztHttpConstant.getBaseUrl()). requestCarModelList(params). subscribeOn(Schedulers.io()). diff --git a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_upload_road_condition_bkg.xml b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_upload_road_condition_bkg.xml index 5fe60723c9..f2a8033f4b 100644 --- a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_upload_road_condition_bkg.xml +++ b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_upload_road_condition_bkg.xml @@ -2,13 +2,13 @@ - + - + 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 4918dd6b32..4446c317a0 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 @@ -103,8 +103,8 @@ impleme super.onResume(); mMogoStatusManager.setMainPageResumeStatus( TAG, true ); mMogoStatusManager.setMainPageLaunchedStatus( TAG, true ); + mMogoStatusManager.setMainPageIsBackgroundStatus( TAG, false ); if ( mCoverUpLayout.getVisibility() != View.VISIBLE ) { mServiceApis.getAdasControllerApi().showADAS(); } @@ -310,6 +311,7 @@ public class MainActivity extends MvpActivity< MainView, MainPresenter > impleme @Override protected void onStop() { super.onStop(); + mMogoStatusManager.setMainPageIsBackgroundStatus( TAG, true ); } @Override @@ -356,6 +358,7 @@ public class MainActivity extends MvpActivity< MainView, MainPresenter > impleme mServiceApis.getMapServiceApi().getHostListenerRegister().unregisterHostNaviListener(); mServiceApis.getMapServiceApi().getHostListenerRegister().unregisterHostMapListener(); mMogoStatusManager.setMainPageLaunchedStatus( TAG, false ); + mMogoStatusManager.setMainPageIsBackgroundStatus( TAG, false ); mMogoFragmentManager.unregisterMainFragmentStackTransactionListener(); mMogoFragmentManager = null; mServiceApis.getMapServiceApi().getMapViewInstanceHandler().destroy(); diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/SchemeIntent.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/SchemeIntent.java index 08b519fed8..09839d91eb 100644 --- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/SchemeIntent.java +++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/SchemeIntent.java @@ -151,6 +151,7 @@ public class SchemeIntent implements IMogoStatusChangedListener { if (TextUtils.isEmpty(type)) { return; } + Log.d("语音打开事件面板type",type); switch (type) { case TYPE_NAVI: handleNaviIntent(target); @@ -163,12 +164,15 @@ public class SchemeIntent implements IMogoStatusChangedListener { break; case TYPE_SHOW_ONLINE_CAR_PANEL: handleShowOnlineCarPanel(target); + break; case TYPE_SHOW_HISTORY_PANEL: - handleShowSharePanel(0); + handleShowEventPanel(0); + break; case TYPE_SHOW_SURROUNDING_PANEL: - handleShowSharePanel(1); + handleShowEventPanel(1); + break; case TYPE_SHOW_SHARE_PANEL: - handleShowSharePanel(2); + handleShowEventPanel(2); break; default: break; @@ -224,8 +228,8 @@ public class SchemeIntent implements IMogoStatusChangedListener { /* * 语音打开事件面板 * */ - private void handleShowSharePanel(int item) { - Logger.d(TAG, "语音打开事件面板"); + private void handleShowEventPanel(int item) { + Logger.d(TAG, "语音打开事件面板" + String.valueOf(item)); mApis.getEventPanelManager().showPanelWithSelectedItem(item); } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java index a27ce3c033..a41cde3874 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java @@ -6,14 +6,11 @@ import android.content.Intent; import android.content.IntentFilter; import android.location.Location; import android.net.ConnectivityManager; -import android.net.wifi.WifiManager; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.text.TextUtils; -import android.util.Log; import android.view.MotionEvent; -import android.view.View; import androidx.annotation.NonNull; @@ -48,7 +45,6 @@ import com.mogo.module.service.launchercard.LauncherCardRefresher; import com.mogo.module.service.marker.MapMarkerManager; import com.mogo.module.service.network.RefreshCallback; import com.mogo.module.service.network.RefreshModel; -import com.mogo.module.service.network.bean.TtsConfigEntity; import com.mogo.module.service.ttsConfig.TtsConfigModleData; import com.mogo.module.service.network.bean.HomeCompanyDistanceForPushData; import com.mogo.module.service.network.bean.HomeCompanyDistanceForPushResponse; @@ -63,7 +59,6 @@ import com.mogo.service.fragmentmanager.FragmentStackTransactionListener; import com.mogo.service.fragmentmanager.IMogoFragmentManager; import com.mogo.service.intent.IMogoIntentListener; import com.mogo.service.intent.IMogoIntentManager; -import com.mogo.service.launcher.IMogoLauncher; import com.mogo.service.map.IMogoMapService; import com.mogo.service.module.IMogoActionManager; import com.mogo.service.module.IMogoRegisterCenter; @@ -78,12 +73,12 @@ import com.mogo.utils.logger.Logger; import com.mogo.utils.network.RequestOptions; import com.mogo.utils.network.utils.GsonUtil; import com.zhidao.carchattingprovider.CallChattingProviderConstant; +import com.zhidao.carchattingprovider.ICallChatResponse; import com.zhidao.carchattingprovider.ICallProviderResponse; import com.zhidao.carchattingprovider.ICarsChattingProvider; import com.zhidao.smartv2x.common.utils.LoggerUtils; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import org.json.JSONObject; import java.util.List; @@ -256,13 +251,13 @@ public class MogoServices implements IMogoMapListener, /** * 手动刷新回调 */ - private RefreshCallback mCustomRefreshCallback = new RefreshCallback< MarkerResponse >() { + private RefreshCallback mCustomRefreshCallback = new RefreshCallback() { @Override - public void onSuccess( MarkerResponse o ) { - MapMarkerManager.getInstance().onSyncMarkerResponse( o ); + public void onSuccess(MarkerResponse o) { + MapMarkerManager.getInstance().onSyncMarkerResponse(o); mLoopRequest = false; // 用户手动操作地图刷新成功后,设置状态为 true,引发延时策略 - mStatusManager.setUserInteractionStatus( ServiceConst.TYPE, true, true ); + mStatusManager.setUserInteractionStatus(ServiceConst.TYPE, true, true); } @Override @@ -338,12 +333,16 @@ public class MogoServices implements IMogoMapListener, } mIsMainPageFirstResume = false; LauncherCardRefresher.getInstance(mContext).stop(); - playAppTts(); - } else { unregisterInternalUnWakeupWords(); stopAutoRefreshStrategy(); + } + } + + @Override + public void onMainPageIsBackgroundStatusChanged(boolean isBackground) { + if (isBackground) { closeAllPanel(); } } @@ -402,96 +401,10 @@ public class MogoServices implements IMogoMapListener, */ private void closeAllPanel() { LoggerUtils.log("zy=======stop"); - // TODO @钟超 需要修改下kotlin的校验 - mCallProviderResponse = new ICallProviderResponse(){ + mCallProviderResponse = new ICallChatResponse() { @Override - public void mute(boolean b) { - - } - - @Override - public void matchInvokeResult(boolean b, @NotNull String s) { - - } - - @Override - public void match(@NotNull String s) { - - } - - @Override - public void invokeCallData(@NotNull String s) { - - } - - @Override - public void hangUp(boolean b) { - - } - - @Override - public void error(@NotNull String s) { - - } - - @Override - public void cancelMatch(boolean b) { - - } - - @Override - public void call(@NotNull String s) { - - } - - @Override - public void userWindowStatus(boolean b) { - - } - - @Override - public void userInfoCallBack(@Nullable String s, @Nullable String s1) { - - } - - @Override - public void isOnLine(boolean b, @Nullable String s) { - - } - - @Override - public void isFriend(boolean b) { - - } - - @Override - public void invisibleUser(boolean b) { - - } - - @Override - public void hideUserWindowError(@NotNull String s) { - - } - - @Override - public void canCall(boolean b) { - - } - - @Override - public void callInvokeError(@NotNull String s) { - - } - - @Override - public void addFriend(boolean b) { - - } - - @Override - public void callWindowStatus( boolean b ) { - + public void hideUserWindowError(@NotNull String errorMsg) { + LoggerUtils.log("zy=======errorMsg:" + errorMsg); } }; MogoApisHandler.getInstance().getApis().getShareManager().dismissShareDialog(); @@ -582,58 +495,58 @@ public class MogoServices implements IMogoMapListener, } private void initWorkThread() { - mThreadHandler = new Handler( WorkThreadHandler.getInstance().getLooper() ) { + mThreadHandler = new Handler(WorkThreadHandler.getInstance().getLooper()) { @Override - public void handleMessage( Message msg ) { - super.handleMessage( msg ); - if ( msg.what == ServiceConst.MSG_MAP_CHANGED ) { - if ( msg.obj instanceof RefreshObject ) { - RefreshObject ro = ( ( RefreshObject ) msg.obj ); - if ( invokeRefreshWhenTranslationByUser( ro.mLonLat ) ) { - notifyRefreshData( ro.mLonLat, ro.mRadius, ro.mCallback ); + public void handleMessage(Message msg) { + super.handleMessage(msg); + if (msg.what == ServiceConst.MSG_MAP_CHANGED) { + if (msg.obj instanceof RefreshObject) { + RefreshObject ro = ((RefreshObject) msg.obj); + if (invokeRefreshWhenTranslationByUser(ro.mLonLat)) { + notifyRefreshData(ro.mLonLat, ro.mRadius, ro.mCallback); mLastCustomRefreshCenterLocation = ro.mLonLat; } } - } else if ( msg.what == ServiceConst.MSG_REQUEST_DATA ) { - if ( msg.obj instanceof RefreshObject ) { - RefreshObject ro = ( ( RefreshObject ) msg.obj ); - if ( ro.mLonLat == null ) { + } else if (msg.what == ServiceConst.MSG_REQUEST_DATA) { + if (msg.obj instanceof RefreshObject) { + RefreshObject ro = ((RefreshObject) msg.obj); + if (ro.mLonLat == null) { invokeAutoRefreshStrategy(); - Logger.w( TAG, "lonLat is null." ); + Logger.w(TAG, "lonLat is null."); return; } - mRefreshModel.refreshExplorerWayData( ro.mLonLat, ro.mRadius, ro.mAmount, ro.mCallback ); - MapMarkerManager.getInstance().getOnlineCarDataByAutoRefreshStrategy( ro.mLonLat ); + mRefreshModel.refreshExplorerWayData(ro.mLonLat, ro.mRadius, ro.mAmount, ro.mCallback); + MapMarkerManager.getInstance().getOnlineCarDataByAutoRefreshStrategy(ro.mLonLat); - Logger.i( TAG, "刷新半径 = %s, 点 = %s, zoomLevel = %s, amount = %s", ro.mRadius, ro.mLonLat, mLastZoomLevel, ro.mAmount ); + Logger.i(TAG, "刷新半径 = %s, 点 = %s, zoomLevel = %s, amount = %s", ro.mRadius, ro.mLonLat, mLastZoomLevel, ro.mAmount); } - } else if ( msg.what == ServiceConst.MSG_LOCK_CAR ) { - if ( mStatusManager.isSearchUIShow() ) { + } else if (msg.what == ServiceConst.MSG_LOCK_CAR) { + if (mStatusManager.isSearchUIShow()) { return; } - mStatusManager.setUserInteractionStatus( TAG, true, false ); + mStatusManager.setUserInteractionStatus(TAG, true, false); mUiController.recoverLockMode(); } } }; } - private void registerMogoReceiver( Context context ) { - if ( context == null ) { + private void registerMogoReceiver(Context context) { + if (context == null) { return; } - List< MogoModule > modules = MogoModulePaths.getModules(); - if ( modules.isEmpty() || modules == null ) { + List modules = MogoModulePaths.getModules(); + if (modules.isEmpty() || modules == null) { return; } - mAIAssistReceiver = new MogoReceiver( context ); + mAIAssistReceiver = new MogoReceiver(context); IntentFilter filter = new IntentFilter(); - if ( modules != null && !modules.isEmpty() ) { - for ( MogoModule module : modules ) { - if ( TextUtils.isEmpty( module.getBroadcastAction() ) ) { + if (modules != null && !modules.isEmpty()) { + for (MogoModule module : modules) { + if (TextUtils.isEmpty(module.getBroadcastAction())) { continue; } - filter.addAction( module.getBroadcastAction() ); + filter.addAction(module.getBroadcastAction()); } } filter.addAction(MogoReceiver.VOICE_ACTION); @@ -717,30 +630,30 @@ public class MogoServices implements IMogoMapListener, } private void stopAutoRefreshStrategy() { - stopAutoRefreshStrategy( true ); + stopAutoRefreshStrategy(true); } - private void stopAutoRefreshStrategy( boolean stopOnlineCarRefresh ) { - mHandler.removeMessages( ServiceConst.MSG_TYPE_REFRESH_DECREASE ); - if ( stopOnlineCarRefresh ) { + private void stopAutoRefreshStrategy(boolean stopOnlineCarRefresh) { + mHandler.removeMessages(ServiceConst.MSG_TYPE_REFRESH_DECREASE); + if (stopOnlineCarRefresh) { MapMarkerManager.getInstance().stopAutoRefresh(); } } @Override - public void onLockMap( boolean isLock ) { - mThreadHandler.removeMessages( ServiceConst.MSG_LOCK_CAR ); - if ( !isLock ) { - mThreadHandler.sendEmptyMessageDelayed( ServiceConst.MSG_LOCK_CAR, ServiceConst.DEFAULT_AUTO_REFRESH_WHEN_INTERRUPT ); + public void onLockMap(boolean isLock) { + mThreadHandler.removeMessages(ServiceConst.MSG_LOCK_CAR); + if (!isLock) { + mThreadHandler.sendEmptyMessageDelayed(ServiceConst.MSG_LOCK_CAR, ServiceConst.DEFAULT_AUTO_REFRESH_WHEN_INTERRUPT); } } @Override - public void onMapChanged( MogoLatLng latLng, float zoom, float tilt, float bearing ) { + public void onMapChanged(MogoLatLng latLng, float zoom, float tilt, float bearing) { - MapMarkerManager.getInstance().syncLocation( latLng.lon, latLng.lat ); + MapMarkerManager.getInstance().syncLocation(latLng.lon, latLng.lat); - if ( mIsCameraInited ) { + if (mIsCameraInited) { mLastZoomLevel = zoom; mLastCustomRefreshCenterLocation = latLng; mIsCameraInited = false; @@ -750,26 +663,26 @@ public class MogoServices implements IMogoMapListener, // 部分非用户操作导致地图视图变化:绘线、圈点等不触发用户刷新 // 消费状态 - if ( mStatusManager.isUserInteracted() ) { + if (mStatusManager.isUserInteracted()) { mLastCustomRefreshCenterLocation = latLng; mLastZoomLevel = zoom; - Logger.d( TAG, "user interacted" ); + Logger.d(TAG, "user interacted"); return; } // v2x // adas 状态下不做任何操作 - if ( mStatusManager.isV2XShow() ) { + if (mStatusManager.isV2XShow()) { mLastCustomRefreshCenterLocation = latLng; mLastZoomLevel = zoom; - Logger.d( TAG, "user v2x show" ); + Logger.d(TAG, "user v2x show"); return; } // 搜索页面显示时不做任何策略 - if ( mStatusManager.isSearchUIShow() ) { + if (mStatusManager.isSearchUIShow()) { mLastCustomRefreshCenterLocation = latLng; mLastZoomLevel = zoom; - Logger.d( TAG, "user search Ui show" ); + Logger.d(TAG, "user search Ui show"); return; } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/StatusChangedAdapter.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/StatusChangedAdapter.java index b452702a33..8b86e558bf 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/StatusChangedAdapter.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/StatusChangedAdapter.java @@ -24,6 +24,9 @@ abstract class StatusChangedAdapter implements IMogoStatusChangedListener { case MAIN_PAGE_RESUME: onMainPageResumeStatusChanged( isTrue ); break; + case MAIN_PAGE_IS_BACKGROUND: + onMainPageIsBackgroundStatusChanged( isTrue ); + break; case SEEK_HELPING: onSeekHelpingStatusChanged( isTrue ); break; @@ -42,6 +45,8 @@ abstract class StatusChangedAdapter implements IMogoStatusChangedListener { public abstract void onMainPageResumeStatusChanged( boolean resume ); + public abstract void onMainPageIsBackgroundStatusChanged( boolean isBackground ); + public abstract void onSeekHelpingStatusChanged( boolean isSeekingHelping ); public abstract void onAccStatusChanged( boolean accOn ); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/unwake/GlobalUnwakeManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/unwake/GlobalUnwakeManager.java index b16b7957e7..00c3f832c4 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/unwake/GlobalUnwakeManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/unwake/GlobalUnwakeManager.java @@ -3,6 +3,7 @@ package com.mogo.module.service.unwake; import android.content.Context; import android.content.Intent; import android.net.Uri; +import android.util.Log; import com.alibaba.android.arouter.facade.annotation.Route; import com.alibaba.android.arouter.facade.template.IProvider; @@ -73,16 +74,21 @@ public class GlobalUnwakeManager implements IProvider, IMogoIntentListener, IMog MogoApisHandler.getInstance().getApis().getShareManager().onGlobalUnwake(intentStr, intent); break; case VOICE_QUERY_HISTORY_INDEX: + Log.d("语音指令","VOICE_QUERY_HISTORY_INDEX"); Intent startForHis = new Intent( Intent.ACTION_VIEW ); startForHis.addFlags( Intent.FLAG_ACTIVITY_NEW_TASK ); startForHis.setData( Uri.parse( "mogo://launcher/main/switch2?type=showHistoryPanel" ) ); context.startActivity( startForHis ); + break; case VOICE_QUERY_SURROUNDING_INDEX: + Log.d("语音指令","VOICE_QUERY_SURROUNDING_INDEX"); Intent startForSurrounding = new Intent( Intent.ACTION_VIEW ); startForSurrounding.addFlags( Intent.FLAG_ACTIVITY_NEW_TASK ); startForSurrounding.setData( Uri.parse( "mogo://launcher/main/switch2?type=showSurroundingPanel" ) ); context.startActivity( startForSurrounding ); + break; case VOICE_QUERY_HEART_INDEX: + Log.d("语音指令","VOICE_QUERY_HEART_INDEX"); Intent start = new Intent( Intent.ACTION_VIEW ); start.addFlags( Intent.FLAG_ACTIVITY_NEW_TASK ); start.setData( Uri.parse( "mogo://launcher/main/switch2?type=showSharePanel" ) ); diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XSocketManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XSocketManager.java index 36c68f8619..ad0a8980a6 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XSocketManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XSocketManager.java @@ -1,5 +1,6 @@ package com.mogo.module.v2x; +import com.mogo.commons.debug.DebugConfig; import com.mogo.module.v2x.listener.V2XMessageListener_401003; import com.mogo.module.v2x.listener.V2XMessageListener_401005; import com.mogo.module.v2x.listener.V2XMessageListener_401006; @@ -55,7 +56,10 @@ public class V2XSocketManager { Logger.d(MODULE_NAME, "开始注册Socket通道...."); register401011(); register401012(); - register401005(); + // M1 不基于地图的版本不接收道路求助,原因是车机内置地图版本不一样 + if (DebugConfig.isMapBased()) { + register401005(); + } register401007(); register401009(); // TODO 这里是前瞻需求,量产版本需要注释 diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XEventPanelFragment.kt b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XEventPanelFragment.kt index d7b1318b1a..6898259774 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XEventPanelFragment.kt +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XEventPanelFragment.kt @@ -9,6 +9,7 @@ import android.text.Spanned import android.text.style.AbsoluteSizeSpan import android.text.style.ForegroundColorSpan import android.text.style.StyleSpan +import android.util.Log import android.view.View import android.widget.ImageView import android.widget.RadioButton @@ -256,24 +257,23 @@ class V2XEventPanelFragment : MvpFragment mV2XScenarioHistoryFragment.ttsForVoiceCheckout() + 1 -> mV2XSurroundingFragment.ttsForVoiceCheckout() + else -> mV2XShareEventsFragment.ttsForVoiceCheckout() + } + } catch (e: java.lang.Exception) { + } + } else { showPanel() selectWithItem(item) } } - private fun initDetail() { mDetailRecyclerView!!.addItemDecoration(SpacesItemDecoration(resources.getDimension(R.dimen.share_item_padding).toInt())) mSurroundingDetailAdapter = V2XSurroundingDetailAdapter(activity, markerExploreWays) @@ -347,10 +347,14 @@ class V2XEventPanelFragment : MvpFragment { try { + mV2XScenarioHistoryFragment.fromVoice = true mRbScenarioHistory?.isChecked = true } catch (e: java.lang.Exception) { e.printStackTrace() @@ -358,6 +362,7 @@ class V2XEventPanelFragment : MvpFragment { try { + mV2XSurroundingFragment.fromVoice = true mRbSurroundingEvent?.isChecked = true } catch (e: java.lang.Exception) { e.printStackTrace() @@ -365,6 +370,7 @@ class V2XEventPanelFragment : MvpFragment { try { + mV2XShareEventsFragment.fromVoice = true mRbShareEvents?.isChecked = true } catch (e: java.lang.Exception) { e.printStackTrace() @@ -376,6 +382,7 @@ class V2XEventPanelFragment : MvpFragment { private String TAG = "ScenarioHistoryFragment"; - + public Boolean fromVoice = false; private V2XListEmptyView mEmptyView; private LinearLayout mClHistoryList; private RecyclerView mRecyclerView; @@ -128,6 +128,10 @@ public class V2XScenarioHistoryFragment mClHistoryList.setVisibility(View.GONE); } mV2XScenarioHistoryAdapter.notifyDataSetChanged(); + if (fromVoice == true){ + ttsForVoiceCheckout(); + fromVoice = false; + } ttsForHistoryFirstToday(); } }); diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XShareEventsFragment.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XShareEventsFragment.java index 9e0574e707..b270254009 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XShareEventsFragment.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XShareEventsFragment.java @@ -105,7 +105,7 @@ public class V2XShareEventsFragment extends MvpFragment poiInfosList = new ArrayList<>(); private IMogoServiceApis mApis; private NetworkLoadingView mloadingImage; - + public Boolean fromVoice = false; @Override protected int getLayoutId() { @@ -199,6 +199,10 @@ public class V2XSurroundingFragment extends MvpFragment { - Logger.i(V2XConst.MODULE_NAME, "疲劳驾驶POI查询结果为: " + GsonUtil.jsonFromObject(drivingShowEntity)); + // M1 不基于地图的版本没有疲劳检测,原因是车机内置地图版本不一样 + if (DebugConfig.isMapBased()) { + // 只有自研车机才有疲劳驾驶检测 + if (DebugConfig.getCarMachineType() == DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE) { + V2XAlarmServer.getFatigueDrivingShow(location, drivingShowEntity -> { + Logger.i(V2XConst.MODULE_NAME, "疲劳驾驶POI查询结果为: " + GsonUtil.jsonFromObject(drivingShowEntity)); - String style = V2XServiceManager.getMoGoStatusManager().isMainPageOnResume() ? "1" : "2"; - trackWithType(V2XPoiTypeEnum.ALERT_FATIGUE_DRIVING, drivingShowEntity.getLon(), drivingShowEntity.getLat(), style); + String style = V2XServiceManager.getMoGoStatusManager().isMainPageOnResume() ? "1" : "2"; + trackWithType(V2XPoiTypeEnum.ALERT_FATIGUE_DRIVING, drivingShowEntity.getLon(), drivingShowEntity.getLat(), style); - V2XMessageEntity v2XMessageEntity = new V2XMessageEntity<>(); - v2XMessageEntity.setType(V2XMessageEntity.V2XTypeEnum.ALERT_FATIGUE_DRIVING); - v2XMessageEntity.setContent(drivingShowEntity); - v2XMessageEntity.setShowState(drivingShowEntity.isShowWindow()); - // 广播给ADAS Launcher - ADASUtils.broadcastToADAS(V2XServiceManager.getContext(), drivingShowEntity); - V2XScenarioManager.getInstance().handlerMessage(v2XMessageEntity); - }); + V2XMessageEntity v2XMessageEntity = new V2XMessageEntity<>(); + v2XMessageEntity.setType(V2XMessageEntity.V2XTypeEnum.ALERT_FATIGUE_DRIVING); + v2XMessageEntity.setContent(drivingShowEntity); + v2XMessageEntity.setShowState(drivingShowEntity.isShowWindow()); + // 广播给ADAS Launcher + ADASUtils.broadcastToADAS(V2XServiceManager.getContext(), drivingShowEntity); + V2XScenarioManager.getInstance().handlerMessage(v2XMessageEntity); + }); + } } // 巡航处理 diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/HeartLikeView.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/HeartLikeView.java index 817d7c67f6..cb659d2f97 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/HeartLikeView.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/HeartLikeView.java @@ -4,6 +4,7 @@ import android.animation.Animator; import android.animation.AnimatorInflater; import android.animation.AnimatorSet; import android.content.Context; +import android.content.res.TypedArray; import android.util.AttributeSet; import android.view.View; import android.widget.ImageView; @@ -36,8 +37,16 @@ public class HeartLikeView extends LinearLayout implements Animator.AnimatorList public HeartLikeView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); - inflate(context, R.layout.view_heart_like, this); - mIllegalParkingLike = findViewById(R.id.ivIllegalParkingLike); + TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.HeartLikeView, defStyleAttr, + 0); + boolean showGrayBack = typedArray.getBoolean(R.styleable.HeartLikeView_showGrayBack, false); + if (showGrayBack) { + inflate(context, R.layout.view_heart_like_gray_back, this); + mIllegalParkingLike = findViewById(R.id.ivLikeForGrayBack); + } else { + inflate(context, R.layout.view_heart_like, this); + mIllegalParkingLike = findViewById(R.id.ivIllegalParkingLike); + } setOnClickListener(v -> { if (!isAnimator) { diff --git a/modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_history_heart_back.png b/modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_gray_back_heart.png similarity index 100% rename from modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_history_heart_back.png rename to modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_gray_back_heart.png diff --git a/modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_heart_like_for_gray_back.png b/modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_heart_like_for_gray_back.png new file mode 100644 index 0000000000..f3709207db Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_heart_like_for_gray_back.png differ diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi/icon_heart_like_for_gray_back.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi/icon_heart_like_for_gray_back.png new file mode 100644 index 0000000000..728ef1d32d Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi/icon_heart_like_for_gray_back.png differ diff --git a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history.xml b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history.xml index c61b839713..43783d6c62 100644 --- a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history.xml +++ b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_scennario_history.xml @@ -81,7 +81,7 @@ android:textSize="@dimen/panel_list_item_title_size" app:layout_constraintBottom_toBottomOf="@+id/tagEventType" app:layout_constraintStart_toEndOf="@+id/tagEventType" - app:layout_constraintTop_toTopOf="@+id/tagEventType" />¬ + app:layout_constraintTop_toTopOf="@+id/tagEventType" /> + app:layout_constraintTop_toTopOf="parent" + app:showGrayBack="true" /> diff --git a/modules/mogo-module-v2x/src/main/res/layout/view_heart_like_gray_back.xml b/modules/mogo-module-v2x/src/main/res/layout/view_heart_like_gray_back.xml new file mode 100644 index 0000000000..4ed769eea6 --- /dev/null +++ b/modules/mogo-module-v2x/src/main/res/layout/view_heart_like_gray_back.xml @@ -0,0 +1,14 @@ + + + + + \ No newline at end of file diff --git a/modules/mogo-module-v2x/src/main/res/values/style.xml b/modules/mogo-module-v2x/src/main/res/values/style.xml index 41038019b1..0918a68fcb 100644 --- a/modules/mogo-module-v2x/src/main/res/values/style.xml +++ b/modules/mogo-module-v2x/src/main/res/values/style.xml @@ -7,4 +7,8 @@ + + + + \ No newline at end of file diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/IMogoStatusManager.java b/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/IMogoStatusManager.java index f4655180d0..77a7055d18 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/IMogoStatusManager.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/IMogoStatusManager.java @@ -81,6 +81,13 @@ public interface IMogoStatusManager extends IProvider { */ boolean isMainPageOnResume(); + /** + * 主页是否在后台运行 + * + * @return true-在后台,false-不在后台 + */ + boolean isMainPageIsBackground(); + /** * 小智语音是否准备完毕 * @@ -208,6 +215,14 @@ public interface IMogoStatusManager extends IProvider { */ void setMainPageResumeStatus( String tag, boolean resume ); + /** + * 主页 后台运行 状态 + * + * @param tag 控制来源 + * @param isBackground true-在后台运行,false-不在后台运行(也可能是挂了) + */ + void setMainPageIsBackgroundStatus( String tag, boolean isBackground ); + /** * 设置小智语音状态 * diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/StatusDescriptor.java b/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/StatusDescriptor.java index 42d71b3283..d33b78ea0c 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/StatusDescriptor.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/StatusDescriptor.java @@ -55,6 +55,11 @@ public enum StatusDescriptor { */ MAIN_PAGE_RESUME, + /** + * 主页 isBackground 状态 + */ + MAIN_PAGE_IS_BACKGROUND, + /** * 小智语音状态 */ diff --git a/services/mogo-service/src/main/java/com/mogo/service/impl/statusmanager/MogoStatusManager.java b/services/mogo-service/src/main/java/com/mogo/service/impl/statusmanager/MogoStatusManager.java index 62c6076ff4..3244314524 100644 --- a/services/mogo-service/src/main/java/com/mogo/service/impl/statusmanager/MogoStatusManager.java +++ b/services/mogo-service/src/main/java/com/mogo/service/impl/statusmanager/MogoStatusManager.java @@ -96,6 +96,11 @@ public class MogoStatusManager implements IMogoStatusManager { return get_bool_val( StatusDescriptor.MAIN_PAGE_RESUME ); } + @Override + public boolean isMainPageIsBackground() { + return get_bool_val( StatusDescriptor.MAIN_PAGE_IS_BACKGROUND ); + } + @Override public boolean isAIAssistReady() { return get_bool_val( StatusDescriptor.AI_ASSIST_READY ); @@ -199,6 +204,13 @@ public class MogoStatusManager implements IMogoStatusManager { Logger.i( TAG, "setMainPageResumeStatus " + resume + " cost " + ( System.currentTimeMillis() - start ) + "ms" ); } + @Override + public void setMainPageIsBackgroundStatus(String tag, boolean isBackground) { + final long start = System.currentTimeMillis(); + doSetStatus( tag, StatusDescriptor.MAIN_PAGE_IS_BACKGROUND, isBackground ); + Logger.i( TAG, "setMainPageIsBackgroundStatus " + isBackground + " cost " + ( System.currentTimeMillis() - start ) + "ms" ); + } + @Override public void setAIAssistReady( String tag, boolean ready ) { doSetStatus( tag, StatusDescriptor.AI_ASSIST_READY, ready ); diff --git a/modules/mogo-module-service/src/main/res/drawable-xhdpi/service_car_pannel_call_nomal_light.png b/skin/mogo-skin-light/src/main/module-common-res/drawable-xhdpi/service_car_pannel_call_nomal_light.png similarity index 100% rename from modules/mogo-module-service/src/main/res/drawable-xhdpi/service_car_pannel_call_nomal_light.png rename to skin/mogo-skin-light/src/main/module-common-res/drawable-xhdpi/service_car_pannel_call_nomal_light.png diff --git a/modules/mogo-module-service/src/main/res/drawable-xhdpi/service_car_pannel_call_pressed_light.png b/skin/mogo-skin-light/src/main/module-common-res/drawable-xhdpi/service_car_pannel_call_pressed_light.png similarity index 100% rename from modules/mogo-module-service/src/main/res/drawable-xhdpi/service_car_pannel_call_pressed_light.png rename to skin/mogo-skin-light/src/main/module-common-res/drawable-xhdpi/service_car_pannel_call_pressed_light.png diff --git a/modules/mogo-module-service/src/main/res/drawable-xhdpi/service_car_pannel_detials_nomal_light.png b/skin/mogo-skin-light/src/main/module-common-res/drawable-xhdpi/service_car_pannel_detials_nomal_light.png similarity index 100% rename from modules/mogo-module-service/src/main/res/drawable-xhdpi/service_car_pannel_detials_nomal_light.png rename to skin/mogo-skin-light/src/main/module-common-res/drawable-xhdpi/service_car_pannel_detials_nomal_light.png diff --git a/modules/mogo-module-service/src/main/res/drawable-xhdpi/service_car_pannel_detials_pressed_light.png b/skin/mogo-skin-light/src/main/module-common-res/drawable-xhdpi/service_car_pannel_detials_pressed_light.png similarity index 100% rename from modules/mogo-module-service/src/main/res/drawable-xhdpi/service_car_pannel_detials_pressed_light.png rename to skin/mogo-skin-light/src/main/module-common-res/drawable-xhdpi/service_car_pannel_detials_pressed_light.png diff --git a/modules/mogo-module-service/src/main/res/drawable/selector_service_car_pannel_call_light.xml b/skin/mogo-skin-light/src/main/module-common-res/drawable/selector_service_car_pannel_call_light.xml similarity index 100% rename from modules/mogo-module-service/src/main/res/drawable/selector_service_car_pannel_call_light.xml rename to skin/mogo-skin-light/src/main/module-common-res/drawable/selector_service_car_pannel_call_light.xml diff --git a/modules/mogo-module-service/src/main/res/drawable/selector_service_car_pannel_detials_light.xml b/skin/mogo-skin-light/src/main/module-common-res/drawable/selector_service_car_pannel_detials_light.xml similarity index 100% rename from modules/mogo-module-service/src/main/res/drawable/selector_service_car_pannel_detials_light.xml rename to skin/mogo-skin-light/src/main/module-common-res/drawable/selector_service_car_pannel_detials_light.xml diff --git a/skin/mogo-skin-light/src/main/module-v2x-res/drawable-ldpi/v2x_panel_close_press_light.png b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-ldpi/v2x_panel_close_press_light.png new file mode 100644 index 0000000000..e5084551a3 Binary files /dev/null and b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-ldpi/v2x_panel_close_press_light.png differ diff --git a/skin/mogo-skin-light/src/main/module-v2x-res/drawable-mdpi/icon_history_heart_back_light.png b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-mdpi/icon_history_heart_back_light.png deleted file mode 100644 index 20b806a8cb..0000000000 Binary files a/skin/mogo-skin-light/src/main/module-v2x-res/drawable-mdpi/icon_history_heart_back_light.png and /dev/null differ diff --git a/skin/mogo-skin-light/src/main/module-v2x-res/drawable-mdpi/v2x_panel_close_press_light.png b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-mdpi/v2x_panel_close_press_light.png new file mode 100644 index 0000000000..e5084551a3 Binary files /dev/null and b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-mdpi/v2x_panel_close_press_light.png differ diff --git a/skin/mogo-skin-light/src/main/module-v2x-res/drawable-xhdpi/icon_gray_back_heart_light.png b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-xhdpi/icon_gray_back_heart_light.png new file mode 100644 index 0000000000..76868e80f5 Binary files /dev/null and b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-xhdpi/icon_gray_back_heart_light.png differ diff --git a/skin/mogo-skin-light/src/main/module-v2x-res/drawable-xhdpi/icon_history_heart_back_light.png b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-xhdpi/icon_history_heart_back_light.png deleted file mode 100644 index 63d3c57392..0000000000 Binary files a/skin/mogo-skin-light/src/main/module-v2x-res/drawable-xhdpi/icon_history_heart_back_light.png and /dev/null differ diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi/v2x_panel_close_press_light.png b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-xhdpi/v2x_panel_close_press_light.png similarity index 100% rename from modules/mogo-module-v2x/src/main/res/drawable-xhdpi/v2x_panel_close_press_light.png rename to skin/mogo-skin-light/src/main/module-v2x-res/drawable-xhdpi/v2x_panel_close_press_light.png diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_selector_colse_light.xml b/skin/mogo-skin-light/src/main/module-v2x-res/drawable/v2x_selector_colse_light.xml similarity index 100% rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_selector_colse_light.xml rename to skin/mogo-skin-light/src/main/module-v2x-res/drawable/v2x_selector_colse_light.xml