diff --git a/app/build.gradle b/app/build.gradle index 1b06b49f12..110d231660 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -109,6 +109,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'false' } // f系列-分体机 f80x { @@ -123,6 +125,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'false' } // e系列,采用Launcher方案 e8xx { @@ -137,6 +141,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.commonLauncherAmapApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'false' } // 同上 em4 { @@ -151,6 +157,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.commonLauncherAmapApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'false' } // e系列-2+32,对标D系列2+32,采用独立app的形式 em3 { @@ -165,6 +173,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.commonIndependentAmapApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'false' } // e系列-1+16,对标D系列1+16,采用独立app形式 em1 { @@ -179,6 +189,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.commonIndependentAmapApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'false' } // d系列 d8xx { @@ -193,6 +205,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.commonIndependentAmapApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'true' } // d系列 2 + 32 d80x { @@ -207,6 +221,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.commonIndependentAmapApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'true' } // d系列 1+16 版本 d82x { @@ -221,6 +237,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.commonIndependentAmapApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'true' } // 比亚迪 bydauto { @@ -235,6 +253,8 @@ android { manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.bydautoIndependentApiValue] // 是否使用高德sdk自定义导航 buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'true' + // 是否加载引导模块 + buildConfigField 'boolean', 'LOAD_GUIDE_MODULE', 'false' } qa { dimension "env" diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java index 3b1b3cb600..32e9f221e8 100644 --- a/app/src/main/java/com/mogo/launcher/MogoApplication.java +++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java @@ -61,7 +61,9 @@ public class MogoApplication extends AbsMogoApplication { crashSystem.setDebug( BuildConfig.DEBUG ); Logger.init( BuildConfig.DEBUG ? LogLevel.DEBUG : LogLevel.OFF ); - MogoModulePaths.addModule(new MogoModule(PATH_GUIDE_FRAGMENT, PATH_GUIDE_MODULE_NAME)); + if ( DebugConfig.isLoadGuideModule() ) { + MogoModulePaths.addModule(new MogoModule(PATH_GUIDE_FRAGMENT, PATH_GUIDE_MODULE_NAME)); + } MogoModulePaths.addModule( new MogoModule( MogoServicePaths.PATH_AGREEMENT, AuthorizeConstant.PATH_AGREEMENT_MODULE_NAME ) ); if ( DebugConfig.isLauncher() ) { @@ -107,6 +109,7 @@ public class MogoApplication extends AbsMogoApplication { DebugConfig.setProductFlavor( BuildConfig.FLAVOR_product ); DebugConfig.setSocketAppId( BuildConfig.SOCKET_APP_ID ); DebugConfig.setRoadEventAnimated( BuildConfig.ROAD_EVENT_ANIMATED ); + DebugConfig.setLoadGuideModule( BuildConfig.LOAD_GUIDE_MODULE ); } @Override diff --git a/config.gradle b/config.gradle index 55b5f1e3fe..0a9540a611 100644 --- a/config.gradle +++ b/config.gradle @@ -160,7 +160,7 @@ targetSdkVersion : 22, gpssimulatornoop : "com.mogo.module:module-gps-simulator-noop:${MOGO_MODULE_GPS_SIMULATOR_NOOP_VERSION}", adasapi : "com.zhidao.autopilot.support:adas:1.0.1", - adasconfigapi : "com.zhidao.adasconfig:adasconfig:1.0.6", + adasconfigapi : "com.zhidao.adasconfig:adasconfig:1.0.8", // 个人中心的SDK personalsdk : "com.zhidaoauto.person.info:data:1.0.1", diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/debug/DebugConfig.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/debug/DebugConfig.java index 882654d243..79acb39060 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/debug/DebugConfig.java +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/debug/DebugConfig.java @@ -250,4 +250,15 @@ public class DebugConfig { public static void setRoadEventAnimated( boolean sRoadEventAnimated ) { DebugConfig.sRoadEventAnimated = sRoadEventAnimated; } + + + private static boolean sLoadGuideModule = false; + + public static void setLoadGuideModule( boolean sLoadGuideModule ) { + DebugConfig.sLoadGuideModule = sLoadGuideModule; + } + + public static boolean isLoadGuideModule() { + return sLoadGuideModule; + } } diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsPresenter.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsPresenter.java index d1a51e55a8..4c16eafb4b 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsPresenter.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsPresenter.java @@ -174,12 +174,7 @@ public class AppsPresenter extends Presenter< AppsView > { int page = 0; int counter = 0; for ( AppInfo appInfo : list ) { - if ( counter < AppsConst.TOTAL_SIZE_EACH_PAGE ) { - counter++; - } else { - page++; - counter = 0; - } + page = counter++ / AppsConst.TOTAL_SIZE_EACH_PAGE; if ( !result.containsKey( page ) ) { result.put( page, new ArrayList<>() ); } diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/glide/SkinAbleBitmapTarget.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/glide/SkinAbleBitmapTarget.java index 70a68303ed..c80c227e8e 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/glide/SkinAbleBitmapTarget.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/glide/SkinAbleBitmapTarget.java @@ -7,14 +7,9 @@ import android.widget.ImageView; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.bumptech.glide.load.Transformation; -import com.bumptech.glide.load.engine.Resource; -import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPoolAdapter; -import com.bumptech.glide.load.resource.bitmap.BitmapResource; import com.bumptech.glide.request.RequestOptions; import com.bumptech.glide.request.target.SimpleTarget; import com.bumptech.glide.request.transition.Transition; -import com.mogo.commons.AbsMogoApplication; public /** @@ -38,15 +33,7 @@ class SkinAbleBitmapTarget extends SimpleTarget< Bitmap > { public void onResourceReady( @NonNull Bitmap resource, @Nullable Transition< ? super Bitmap > transition ) { try { mTarget.setImageResource( 0 ); - if(mOptions.getTransformations().containsKey(Bitmap.class)) { - Transformation t = (Transformation) mOptions.getTransformations().get(Bitmap.class); - BitmapResource r = BitmapResource.obtain(resource, new BitmapPoolAdapter()); - Resource r2 = t.transform(AbsMogoApplication.getApp(), r, resource.getWidth(), - resource.getHeight()); - mTarget.setImageBitmap(r2.get()); - }else { - mTarget.setImageBitmap(resource); - } + mTarget.setImageBitmap(resource); } catch( Exception e ){ e.printStackTrace(); } 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 c93701df86..0d9a233eaf 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 @@ -544,7 +544,7 @@ public class EntranceFragment extends MvpFragment diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java index 54cc5110db..6339b4f7f8 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java @@ -335,6 +335,9 @@ public class MockIntentHandler implements IntentHandler { case 17: DebugConfig.setRequestOnlineCarData( intent.getBooleanExtra( "status", true ) ); break; + case 30: + MarkerServiceHandler.getMapService().getMapUIController().forceRender(); + break; } } diff --git a/services/mogo-service/src/main/java/com/mogo/service/impl/adas/MogoADASController.java b/services/mogo-service/src/main/java/com/mogo/service/impl/adas/MogoADASController.java index 5f9500e9d0..c18301d8de 100644 --- a/services/mogo-service/src/main/java/com/mogo/service/impl/adas/MogoADASController.java +++ b/services/mogo-service/src/main/java/com/mogo/service/impl/adas/MogoADASController.java @@ -10,6 +10,7 @@ import android.util.Log; import com.alibaba.android.arouter.facade.annotation.Route; import com.mogo.commons.AbsMogoApplication; +import com.mogo.commons.debug.DebugConfig; import com.mogo.map.MogoOverlayManager; import com.mogo.map.uicontroller.EnumMapUI; import com.mogo.module.common.utils.CarSeries; @@ -22,6 +23,7 @@ import com.mogo.service.statusmanager.IMogoStatusManager; import com.mogo.skin.support.SkinMode; import com.mogo.utils.UiThreadHandler; import com.mogo.utils.logger.Logger; +import com.mogo.utils.storage.SharedPrefsMgr; import com.zhidao.adasconfig.api.AdasConfigApiController; import com.zhidao.adasconfig.common.config.EnumCarChatIncognitoMode; import com.zhidao.adasconfig.common.config.EnumCarHeading; @@ -75,6 +77,13 @@ public class MogoADASController implements IMogoADASController { @Override public void showADAS() { + // TODO: 2020/9/4 和引导模块交互 + if ( DebugConfig.isLoadGuideModule() ) { + if ( !SharedPrefsMgr.getInstance( AbsMogoApplication.getApp() ).getBoolean( "HAS_GUIDE", false ) ) { + return; + } + } + Logger.d( TAG, Log.getStackTraceString( new Throwable() ) ); init( AbsMogoApplication.getApp() ); AutopilotServiceManage.getInstance().registerAutopilotServiceStatusListener( new IAutopilotServiceStatusListener() { @@ -205,6 +214,9 @@ public class MogoADASController implements IMogoADASController { @Override public void changeAdasControlMode( EnumMapUI ui ) { + if ( ui == null ) { + return; + } Logger.d( TAG, "new Mode: " + ui.name() ); switch ( ui ) { diff --git a/services/mogo-service/src/main/java/com/mogo/service/impl/imageloader/glide/GlideImageLoader.java b/services/mogo-service/src/main/java/com/mogo/service/impl/imageloader/glide/GlideImageLoader.java index 2924b04722..3fdf131786 100644 --- a/services/mogo-service/src/main/java/com/mogo/service/impl/imageloader/glide/GlideImageLoader.java +++ b/services/mogo-service/src/main/java/com/mogo/service/impl/imageloader/glide/GlideImageLoader.java @@ -9,13 +9,18 @@ import androidx.annotation.Nullable; import com.alibaba.android.arouter.facade.annotation.Route; import com.bumptech.glide.load.DataSource; +import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.engine.GlideException; +import com.bumptech.glide.load.engine.Resource; +import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPoolAdapter; +import com.bumptech.glide.load.resource.bitmap.BitmapResource; import com.bumptech.glide.request.RequestListener; import com.bumptech.glide.request.RequestOptions; import com.bumptech.glide.request.target.ImageViewTarget; import com.bumptech.glide.request.target.SimpleTarget; import com.bumptech.glide.request.target.Target; import com.bumptech.glide.request.transition.Transition; +import com.mogo.commons.AbsMogoApplication; import com.mogo.service.MogoServicePaths; import com.mogo.service.imageloader.IMogoImageLoaderListener; import com.mogo.service.imageloader.IMogoImageloader; @@ -79,7 +84,7 @@ public class GlideImageLoader implements IMogoImageloader { @Override public void displayImage( String url, MogoImageView imageView, int width, int height, final IMogoImageLoaderListener listener ) { - Logger.d(TAG, "url = %s", url); + Logger.d( TAG, "url = %s", url ); if ( listener != null ) { listener.onStart(); diff --git a/skin/mogo-skin-light/src/main/module-main-res/drawable/module_main_dw_left_frame_bkg_light.xml b/skin/mogo-skin-light/src/main/module-main-res/drawable/module_main_dw_left_frame_bkg_light.xml index 46fe20fe0d..f3c8c592ef 100644 --- a/skin/mogo-skin-light/src/main/module-main-res/drawable/module_main_dw_left_frame_bkg_light.xml +++ b/skin/mogo-skin-light/src/main/module-main-res/drawable/module_main_dw_left_frame_bkg_light.xml @@ -2,7 +2,7 @@ - + \ No newline at end of file