From 8ec55f0b48d0114980904dbd68ecd504f8b3ff42 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 27 Jul 2020 14:55:52 +0800 Subject: [PATCH] fix bug of dialog dismiss --- .../authorize/authprovider/biz/MogoAuthorizeProvider.kt | 8 +++++--- .../authorize/authprovider/launcher/MogoMainAuthorize.kt | 4 +++- .../src/main/java/com/mogo/module/main/MainActivity.java | 3 ++- .../java/com/mogo/service/auth/IMogoAuthManager.java | 9 +++++++-- 4 files changed, 17 insertions(+), 7 deletions(-) diff --git a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeProvider.kt b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeProvider.kt index 76b7977927..beac0c0246 100644 --- a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeProvider.kt +++ b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeProvider.kt @@ -15,7 +15,6 @@ import com.mogo.module.authorize.authprovider.launcher.MogoMainAuthorize.Compani import com.mogo.service.MogoServicePaths import com.mogo.service.auth.IMogoAuthManager import com.mogo.service.module.IMogoModuleLifecycle -import com.mogo.service.module.ModuleType import com.mogo.utils.logger.Logger @Route(path = MogoServicePaths.PATH_AGREEMENT) @@ -63,7 +62,7 @@ class MogoAuthorizeProvider : IMogoAuthManager { return null } - override fun resetContext(context: Context?) { + override fun showAuth(context: Context?) { mContext = context if (mogoAuthShow.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_MAIN)) { mogoAuthShow.invokeAuthorizeForShow(mContext!!) @@ -74,11 +73,14 @@ class MogoAuthorizeProvider : IMogoAuthManager { } } + override fun dismiss() { + mogoAuthShow.hideAuthorizeView() + } + override fun init(context: Context) { //todo 引导判断暂时去掉 后续引导流程更改完再放开 // todo if (isDeviceOfD() && hasGuide() && mogoAuthShow.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_MAIN)) { // todo F系列暂时没有授权功能 1.1需求中添加 全量上 - } override fun getAppPackage(): String? { diff --git a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/launcher/MogoMainAuthorize.kt b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/launcher/MogoMainAuthorize.kt index cec3e22d62..964594e655 100644 --- a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/launcher/MogoMainAuthorize.kt +++ b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/launcher/MogoMainAuthorize.kt @@ -68,7 +68,9 @@ class MogoMainAuthorize private constructor() : MogoAuthorizeManagerImpl(), IMog } fun hideAuthorizeView() { - authorizeDialog?.dismiss() + if (authorizeDialog != null && authorizeDialog!!.isShowing) { + authorizeDialog?.dismiss() + } } private fun pushLayoutToMainWindow(tag: String) { 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 92a2814aeb..ca02b01d8a 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 @@ -115,7 +115,7 @@ public class MainActivity extends MvpActivity< MainView, MainPresenter > impleme mServiceApis = ( IMogoServiceApis ) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation(); } mServiceApis.getShareManager().resetContext(this); - mServiceApis.getAuthManagerApi().resetContext(this); + mServiceApis.getAuthManagerApi().showAuth(this); mMogoStatusManager = mServiceApis.getStatusManagerApi(); mMogoStatusManager.setMainPageLaunchedStatus( TAG, true ); AutopilotServiceManage.getInstance().init( getContext() ); @@ -245,6 +245,7 @@ public class MainActivity extends MvpActivity< MainView, MainPresenter > impleme super.onPause(); mMogoStatusManager.setMainPageResumeStatus( TAG, false ); mMogoStatusManager.setMainPageLaunchedStatus( TAG, false ); + mServiceApis.getAuthManagerApi().dismiss(); if ( shouldCloseADASPanel() ) { mServiceApis.getAdasControllerApi().closeADAS(); } diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/auth/IMogoAuthManager.java b/services/mogo-service-api/src/main/java/com/mogo/service/auth/IMogoAuthManager.java index a8d2bac05d..0c22c0bd45 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/auth/IMogoAuthManager.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/auth/IMogoAuthManager.java @@ -7,7 +7,12 @@ import com.mogo.service.module.IMogoModuleProvider; public interface IMogoAuthManager extends IMogoModuleProvider { /** - * 重置授权页面弹起时展示View Context + * 弹起授权页面 展示View Context */ - void resetContext(Context context); + void showAuth(Context context); + + /** + * 关闭授权页面 + */ + void dismiss(); }