diff --git a/gradle.properties b/gradle.properties index 8c5d7dbf54..5be1790a77 100644 --- a/gradle.properties +++ b/gradle.properties @@ -34,8 +34,8 @@ MAP_CUSTOM_VERSION=1.2.1.5 MAP_AUTONAVI_VERSION=1.2.1.5 MOGO_MAP_VERSION=1.2.1.5 MOGO_MAP_API_VERSION=1.2.1.5 -MOGO_SERVICE_VERSION=1.2.1.5 -MOGO_SERVICE_API_VERSION=1.2.1.5 +MOGO_SERVICE_VERSION=1.2.1.6 +MOGO_SERVICE_API_VERSION=1.2.1.6 MOGO_CONNECTION_VERSION=1.2.1.5 MOGO_MODULE_APPS_VERSION=1.2.1.5 MOGO_MODULE_NAVI_VERSION=1.2.1.5 @@ -60,11 +60,11 @@ MOGO_MODULE_MAIN_INDEPENDENT_VERSION = 1.2.1.5 ## 工程外部模块 # 探路 -MOGO_MODULE_TANLU_VERSION=1.1.0.1-SNAPSHOT +MOGO_MODULE_TANLU_VERSION=1.2.1.1 # 车聊聊 -CARCHATTING_VERSION=1.0.6 +CARCHATTING_VERSION=1.0.7 # 车聊聊接口 -CARCHATTINGPROVIDER_VERSION=1.0.6 +CARCHATTINGPROVIDER_VERSION=1.0.7 # 视频引导 MOGO_MODULE_GUIDESHOW_VERSION=1.0.2-SNAPSHOT # 视频引导接口 @@ -78,7 +78,7 @@ MOGO_MODULE_PUSH_VERSION=1.0.1 # 广告资源位 MOGO_MODULE_AD_CARD_VERSION=1.0.1 # 探路上报和分享模块 -TANLULIB_VERSION=1.0.2-SNAPSHOT +TANLULIB_VERSION=1.2.1.1 ## 产品库必备配置 applicationId=com.mogo.launcer diff --git a/modules/mogo-module-authorize/src/main/res/layout/module_authorize_fragment.xml b/modules/mogo-module-authorize/src/main/res/layout/module_authorize_fragment.xml index 5e5992f151..c8b7f7aa56 100644 --- a/modules/mogo-module-authorize/src/main/res/layout/module_authorize_fragment.xml +++ b/modules/mogo-module-authorize/src/main/res/layout/module_authorize_fragment.xml @@ -151,6 +151,8 @@ android:layout_height="0px" android:layout_marginBottom="@dimen/dp_160" android:scrollbarSize="@dimen/dp_207" + android:layout_marginTop="@dimen/dp_54" + android:scrollbarTrackHorizontal="@drawable/module_authorize_scrollbar" android:scrollbarThumbVertical="@drawable/module_authorize_scrollbar" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/EventDispatchCenter.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/EventDispatchCenter.java index 9416d12b43..f3fec2a330 100644 --- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/EventDispatchCenter.java +++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/EventDispatchCenter.java @@ -1,6 +1,5 @@ package com.mogo.module.main; -import android.content.Intent; import android.location.Location; import android.view.MotionEvent; @@ -21,11 +20,6 @@ import com.mogo.map.navi.MogoNaviInfo; import com.mogo.map.navi.MogoTraffic; import com.mogo.map.uicontroller.EnumMapUI; import com.mogo.module.main.registercenter.MogoRegisterCenterHandler; -import com.mogo.module.service.receiver.AccStatusReceiver; -import com.mogo.module.service.receiver.MogoReceiver; -import com.mogo.service.intent.IMogoIntentListener; -import com.mogo.service.intent.IMogoIntentManager; -import com.mogo.service.module.IMogoModuleLifecycle; import com.mogo.utils.logger.Logger; import java.util.Iterator; @@ -43,8 +37,7 @@ public class EventDispatchCenter implements IMogoCarLocationChangedListener2, IMogoMapListener, IMogoNaviListener2, - IMogoLocationListener, - IMogoIntentListener { + IMogoLocationListener { private static volatile EventDispatchCenter sInstance; @@ -66,12 +59,6 @@ public class EventDispatchCenter implements private static final String TAG = "DispatchCenter"; - public void registerReceiver( IMogoIntentManager intentManager ) { - intentManager.registerIntentListener( Intent.ACTION_POWER_CONNECTED, this ); - intentManager.registerIntentListener( Intent.ACTION_POWER_DISCONNECTED, this ); - intentManager.registerIntentListener( AccStatusReceiver.ACTION_NWD_ACC, this ); - } - @Override public boolean onMarkerClicked( IMogoMarker marker ) { IMogoMarkerClickListener listener = MogoRegisterCenterHandler.getInstance().getMarkerListener( marker.getOwner() ); @@ -437,32 +424,6 @@ public class EventDispatchCenter implements Logger.i( TAG, "onLocationChanged event cost " + ( System.currentTimeMillis() - start ) + "ms" ); } - @Override - public void onIntentReceived( String intentStr, Intent intent ) { - - Iterator< IMogoModuleLifecycle > iterator = MogoRegisterCenterHandler.getInstance().getLifecycleListeners(); - if ( Intent.ACTION_POWER_CONNECTED.equals( intentStr ) ) { - while ( iterator.hasNext() ) { - IMogoModuleLifecycle lifecycle = iterator.next(); - if ( lifecycle != null ) { - lifecycle.accOn(); - } - } - } else if ( Intent.ACTION_POWER_DISCONNECTED.equals( intentStr ) ) { - } else if ( AccStatusReceiver.ACTION_NWD_ACC.equals( intentStr ) ) { - int state = intent.getByteExtra( AccStatusReceiver.PARAM_ACC_STATUS, ( byte ) 0 ); - if ( state == 1 ) { - while ( iterator.hasNext() ) { - IMogoModuleLifecycle lifecycle = iterator.next(); - if ( lifecycle != null ) { - lifecycle.accOn(); - } - } - } - } - } - - @Override public void onArriveDestination() { Iterator< IMogoNaviListener > iterator = MogoRegisterCenterHandler.getInstance().getNaviListeners(); diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/cards/MogoModulesManager.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/cards/MogoModulesManager.java index 876d4c01d2..71d7303ea9 100644 --- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/cards/MogoModulesManager.java +++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/cards/MogoModulesManager.java @@ -60,7 +60,6 @@ public class MogoModulesManager implements MogoModulesHandler { throw new NullPointerException( "activity can't be null." ); } this.mActivity = activity; - EventDispatchCenter.getInstance().registerReceiver( apis.getIntentManagerApi() ); } private Context getContext() { diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/service/MogoMainService.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/service/MogoMainService.java index ce556acb4c..3a979612ae 100644 --- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/service/MogoMainService.java +++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/service/MogoMainService.java @@ -27,7 +27,7 @@ public * * 描述 */ -@Route( path = "/service/base/info" ) +@Route(path = "/service/base/info") class MogoMainService extends Service implements IMogoLocationListener { private static final String TAG = "MogoMainService"; @@ -40,11 +40,11 @@ class MogoMainService extends Service implements IMogoLocationListener { @Override public void onCreate() { - Logger.d( TAG, "基本服务启动" ); - mServiceApis = ( IMogoServiceApis ) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation(); + Logger.d(TAG, "基本服务启动"); + mServiceApis = (IMogoServiceApis) ARouter.getInstance().build(MogoServicePaths.PATH_SERVICE_APIS).navigation(); initAndStartLocation(); initGpsSimulatorListener(); - UiThreadHandler.postDelayed( () -> { + UiThreadHandler.postDelayed(() -> { loadBaseModules(); startTanluService(); initADAS(); @@ -54,49 +54,53 @@ class MogoMainService extends Service implements IMogoLocationListener { @Nullable @Override - public IBinder onBind( Intent intent ) { + public IBinder onBind(Intent intent) { return null; } @Override - public int onStartCommand( Intent intent, int flags, int startId ) { + public int onStartCommand(Intent intent, int flags, int startId) { return START_STICKY; } private void initAndStartLocation() { - Logger.d( TAG, "开始定位" ); - mLocationClient = mServiceApis.getMapServiceApi().getSingletonLocationClient( AbsMogoApplication.getApp() ); - mLocationClient.addLocationListener( this ); - mLocationClient.start( 2_000L ); + Logger.d(TAG, "开始定位"); + mLocationClient = mServiceApis.getMapServiceApi().getSingletonLocationClient(AbsMogoApplication.getApp()); + mLocationClient.addLocationListener(this); + mLocationClient.start(2_000L); } private void initGpsSimulatorListener() { - mServiceApis.getMapServiceApi().getNavi( this ).registerCarLocationChangedListener( EventDispatchCenter.getInstance() ); + mServiceApis.getMapServiceApi().getNavi(this).registerCarLocationChangedListener(EventDispatchCenter.getInstance()); } private void loadBaseModules() { - Logger.d( TAG, "加载基本模块" ); + Logger.d(TAG, "加载基本模块"); MogoModulesManager.getInstance().loadBaseModule(); } private void startTanluService() { - MainService.Companion.launchService( getApplicationContext(), "0" ); + UiThreadHandler.postDelayed(() -> { + Logger.d(TAG, "startTanluService ---------- "); + MainService.Companion.launchService(getApplicationContext(), "0"); + }, 58_000L + ); } private void initADAS() { - mServiceApis.getAdasControllerApi().init( AbsMogoApplication.getApp() ); + mServiceApis.getAdasControllerApi().init(AbsMogoApplication.getApp()); } @Override - public void onLocationChanged( MogoLocation location ) { - EventDispatchCenter.getInstance().onLocationChanged( location ); + public void onLocationChanged(MogoLocation location) { + EventDispatchCenter.getInstance().onLocationChanged(location); } @Override public void onDestroy() { super.onDestroy(); - if ( mLocationClient != null ) { - mLocationClient.removeLocationListener( this ); + if (mLocationClient != null) { + mLocationClient.removeLocationListener(this); mLocationClient.stop(); mLocationClient.destroy(); mLocationClient = null; diff --git a/services/mogo-service-api/build.gradle b/services/mogo-service-api/build.gradle index 8dc15e3ab2..1dd01dd7ee 100644 --- a/services/mogo-service-api/build.gradle +++ b/services/mogo-service-api/build.gradle @@ -27,6 +27,11 @@ android { } } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + } dependencies { diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoModuleLifecycle.java b/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoModuleLifecycle.java index 7234996fbe..cde9743e80 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoModuleLifecycle.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoModuleLifecycle.java @@ -6,6 +6,7 @@ package com.mogo.service.module; *

* 卡片生命周期 */ +@Deprecated public interface IMogoModuleLifecycle { /** diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/IMogoStatusChangedListener.java b/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/IMogoStatusChangedListener.java index 908af22c34..47a501fb53 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/IMogoStatusChangedListener.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/statusmanager/IMogoStatusChangedListener.java @@ -13,4 +13,14 @@ public interface IMogoStatusChangedListener { * @param isTrue true - accOn、adas ui show、voice ui show、push ui show、v2x ui show */ void onStatusChanged( StatusDescriptor descriptor, boolean isTrue ); + + /** + * 是否需要黏性状态: 先改变状态,后注册监听 + * + * @param descriptor 状态 + * @return 默认不需要 + */ + default boolean requestStickyStatus( StatusDescriptor descriptor ) { + return false; + } } 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 06a9ce1779..b7e0eed831 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 @@ -227,14 +227,21 @@ public class MogoStatusManager implements IMogoStatusManager { } @Override - public void registerStatusChangedListener( String tag, StatusDescriptor descriptor, IMogoStatusChangedListener listeners ) { - if ( listeners == null || descriptor == null ) { + public void registerStatusChangedListener( String tag, StatusDescriptor descriptor, IMogoStatusChangedListener listener ) { + if ( listener == null || descriptor == null ) { return; } if ( !mListeners.containsKey( descriptor ) ) { mListeners.put( descriptor, new ArrayList<>() ); } - mListeners.get( descriptor ).add( listeners ); + mListeners.get( descriptor ).add( listener ); + + if ( listener.requestStickyStatus( descriptor ) ) { + Boolean val = mStatus.get( descriptor ); + if ( val != null ) { + listener.onStatusChanged( descriptor, get_bool_val( descriptor ) ); + } + } } @Override