diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index a72d1b4092..fc5ea40cf1 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -177,30 +177,34 @@
-keep @kotlin.Metadata class *
-keepclasseswithmembers @kotlin.Metadata class * { *; }
+-dontwarn android.telephony.TelephonyManager.**
+-keep class android.telephony.TelephonyManager.**{*;}
+
#----------------------------------------第三方库----------------------------------------------
#-----高德地图-----
+
+#内置语音 V5.6.0之后
+-keep class com.alibaba.idst.nls.**{*;}
+-keep class com.google.**{*;}
+-keep class com.nlspeech.nlscodec.** {*;}
+-keep public class com.alibaba.mit.alitts.*{*;}
+-keep class com.alibaba.mit.alitts.** {*;}
+-dontwarn com.alibaba.mit.alitts.ICallback
+
#3D 地图 V5.0.0之后:
--keep class com.amap.api.maps.**{*;}
--keep class com.autonavi.**{*;}
--keep class com.amap.api.trace.**{*;}
+-keep class com.amap.api.maps.**{*;}
+-keep class com.autonavi.**{*;}
+-keep class com.amap.api.trace.**{*;}
#定位
+-keep class com.loc.** {*;}
-keep class com.amap.api.location.**{*;}
-keep class com.amap.api.fence.**{*;}
--keep class com.loc.**{*;}
-keep class com.autonavi.aps.amapapi.model.**{*;}
#搜索
-keep class com.amap.api.services.**{*;}
#导航
-keep class com.amap.api.navi.**{*;}
-#内置语音 V5.6.0之后
--keep class com.alibaba.idst.nls.**{*;}
--keep class com.google.**{*;}
--keep class com.nlspeech.nlscodec.** {*;}
--keep class com.alibaba.mit.alitts.** {*;}
-
--dontwarn android.telephony.**
--keep class android.telephony.TelephonyManager$CellInfoCallback
#-----Gson-----
-dontwarn sun.misc.**
@@ -340,6 +344,7 @@
-keep class com.zhidao.autopilot.support.**{*;}
-keep class com.zhidao.voice.library.**{*;}
-keep class com.zhidao.voicesdk.**{*;}
+-dontwarn com.elegant.network.**
diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java
index 0315d50b8a..e2b375ce99 100644
--- a/app/src/main/java/com/mogo/launcher/MogoApplication.java
+++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java
@@ -2,7 +2,6 @@ package com.mogo.launcher;
import android.content.Context;
import android.content.Intent;
-import android.os.Build;
import android.util.Log;
import com.alibaba.android.arouter.launcher.ARouter;
@@ -54,7 +53,7 @@ public class MogoApplication extends AbsMogoApplication {
Logger.init( BuildConfig.DEBUG ? LogLevel.DEBUG : LogLevel.OFF );
// MogoModulePaths.addModule(new MogoModule(PATH_GUIDE_FRAGMENT, PATH_GUIDE_MODULE_NAME));
- MogoModulePaths.addModule( new MogoModule( AuthorizeConstant.PATH_AGREEMENT_FRAGMENT, AuthorizeConstant.PATH_AGREEMENT_MODULE_NAME ) );
+ MogoModulePaths.addModule( new MogoModule( MogoServicePaths.PATH_AGREEMENT, AuthorizeConstant.PATH_AGREEMENT_MODULE_NAME ) );
//运营位卡片,需要默认显示,放在第一个加载
if ( DebugConfig.isLauncher() ) {
diff --git a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeManagerImpl.kt b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeManagerImpl.kt
index 6c91ab12fc..7fe63c7fdb 100644
--- a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeManagerImpl.kt
+++ b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeManagerImpl.kt
@@ -18,7 +18,7 @@ open abstract class MogoAuthorizeManagerImpl : IMogoAuthorizeInvoke {
override fun needAuthorize(tag: String): Boolean {
Logger.d(TAG, "===== needAuthorize update agreement in background")
- baseController.checkIfNeedAuthorize(tag.toAuthorizeType())
+// baseController.checkIfNeedAuthorize(tag.toAuthorizeType())
return needAuthorization(tag.toAuthorizeType())
}
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 1d28760113..76b7977927 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
@@ -9,22 +9,24 @@ import com.mogo.map.listener.IMogoMapListener
import com.mogo.map.location.IMogoLocationListener
import com.mogo.map.marker.IMogoMarkerClickListener
import com.mogo.map.navi.IMogoNaviListener
-import com.mogo.module.authorize.authprovider.invoke.AuthorizeConstant.Companion.PATH_AGREEMENT_FRAGMENT
import com.mogo.module.authorize.authprovider.invoke.AuthorizeConstant.Companion.PATH_AGREEMENT_MODULE_NAME
import com.mogo.module.authorize.authprovider.invoke.AuthorizeInvokerConstant.Companion.AUTHORIZE_TYPE_LAUNCHER_MAIN
import com.mogo.module.authorize.authprovider.launcher.MogoMainAuthorize.Companion.mogoAuthShow
+import com.mogo.service.MogoServicePaths
+import com.mogo.service.auth.IMogoAuthManager
import com.mogo.service.module.IMogoModuleLifecycle
-import com.mogo.service.module.IMogoModuleProvider
import com.mogo.service.module.ModuleType
import com.mogo.utils.logger.Logger
-@Route(path = PATH_AGREEMENT_FRAGMENT)
-class MogoAuthorizeProvider : IMogoModuleProvider {
+@Route(path = MogoServicePaths.PATH_AGREEMENT)
+class MogoAuthorizeProvider : IMogoAuthManager {
companion object {
const val TAG = "MogoAuthorizeProvider"
}
+ private var mContext:Context? = null
+
override fun createFragment(context: Context?, data: Bundle?): Fragment? {
return null
}
@@ -46,7 +48,7 @@ class MogoAuthorizeProvider : IMogoModuleProvider {
}
override fun getType(): Int {
- return ModuleType.TYPE_SERVICE
+ return 0
}
override fun getNaviListener(): IMogoNaviListener? {
@@ -61,12 +63,10 @@ class MogoAuthorizeProvider : IMogoModuleProvider {
return null
}
- override fun init(context: Context) {
- //todo 引导判断暂时去掉 后续引导流程更改完再放开
-// todo if (isDeviceOfD() && hasGuide() && mogoAuthShow.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_MAIN)) {
- // todo F系列暂时没有授权功能 1.1需求中添加 全量上
+ override fun resetContext(context: Context?) {
+ mContext = context
if (mogoAuthShow.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_MAIN)) {
- mogoAuthShow.invokeAuthorizeForShow(context)
+ mogoAuthShow.invokeAuthorizeForShow(mContext!!)
} else {
//首次进入Launcher同步一下授权状态,防止由于用户清除数据造成首次加载还会出现授权状态不同步问题
mogoAuthShow.updateAuthorizeStatus(AUTHORIZE_TYPE_LAUNCHER_MAIN)
@@ -74,6 +74,13 @@ class MogoAuthorizeProvider : IMogoModuleProvider {
}
}
+ override fun init(context: Context) {
+ //todo 引导判断暂时去掉 后续引导流程更改完再放开
+// todo if (isDeviceOfD() && hasGuide() && mogoAuthShow.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_MAIN)) {
+ // todo F系列暂时没有授权功能 1.1需求中添加 全量上
+
+ }
+
override fun getAppPackage(): String? {
return null
}
@@ -81,4 +88,5 @@ class MogoAuthorizeProvider : IMogoModuleProvider {
override fun getAppName(): String? {
return null
}
+
}
\ No newline at end of file
diff --git a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/invoke/AuthorizeConstant.kt b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/invoke/AuthorizeConstant.kt
index d41c4df56e..3da6930843 100644
--- a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/invoke/AuthorizeConstant.kt
+++ b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/invoke/AuthorizeConstant.kt
@@ -6,11 +6,6 @@ class AuthorizeConstant {
const val PROVIDER_MODULE = "/authorize/biz"
const val PROVIDER_LAUNCHER = "/authorize/showbiz"
- /**
- * 展示用户协议模块地址
- */
- const val PATH_AGREEMENT_FRAGMENT = "/agreement/showFragment"
-
/**
* provider模块实例名称(暂时仅有卡片用到)
*/
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 933e83abcf..13c2da0e65 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
@@ -2,15 +2,12 @@ package com.mogo.module.authorize.authprovider.launcher
import android.content.Context
import android.os.Looper
-import com.mogo.commons.AbsMogoApplication
import com.mogo.module.authorize.authprovider.biz.MogoAuthorizeManagerImpl
import com.mogo.module.authorize.authprovider.biz.MogoAuthorizeRegisterHandler
-import com.mogo.module.authorize.authprovider.invoke.AuthorizeInvokerConstant
import com.mogo.module.authorize.authprovider.invoke.AuthorizeInvokerConstant.Companion.AUTHORIZE_TYPE_LAUNCHER_MAIN
-import com.mogo.module.authorize.layout.AuthorizeLayout
+import com.mogo.module.authorize.layout.AuthorizeDialog
import com.mogo.module.authorize.model.proxy.toAuthorizeType
import com.mogo.module.authorize.util.SharedPreferenceUtil.hasAuth
-import com.mogo.module.common.wm.WindowManagerView
import com.mogo.utils.logger.Logger
class MogoMainAuthorize private constructor() : MogoAuthorizeManagerImpl(), IMogoAuthorizeMainProvider {
@@ -24,7 +21,9 @@ class MogoMainAuthorize private constructor() : MogoAuthorizeManagerImpl(), IMog
}
}
- private var windowManagerView: WindowManagerView? = null
+ private var mContext:Context? = null
+
+ private var authorizeDialog: AuthorizeDialog? = null
override fun hasRegister(tag: String): Boolean {
if (tag.isNullOrBlank()) return false
@@ -41,7 +40,8 @@ class MogoMainAuthorize private constructor() : MogoAuthorizeManagerImpl(), IMog
}
fun invokeAuthorizeForShow(context: Context) {
- pushLayoutToMainWindow(context, AUTHORIZE_TYPE_LAUNCHER_MAIN)
+ mContext = context
+// pushLayoutToMainWindow(AUTHORIZE_TYPE_LAUNCHER_MAIN)
}
fun showAuthorizeView(tag: String, forbiddenVoice: (() -> Unit), onError: ((String) -> Unit)) {
@@ -64,25 +64,23 @@ class MogoMainAuthorize private constructor() : MogoAuthorizeManagerImpl(), IMog
Logger.d(TAG, "ready to forbidden voice")
forbiddenVoice.invoke()
Logger.d(TAG, "ready to push fragment")
- pushLayoutToMainWindow(AbsMogoApplication.getApp().applicationContext,tag)
+// pushLayoutToMainWindow(tag)
}
fun hideAuthorizeView() {
- windowManagerView?.dismiss()
+ authorizeDialog?.dismiss()
}
- private fun pushLayoutToMainWindow(context: Context,tag: String) {
- if (windowManagerView == null) {
- val authorizeLayout = AuthorizeLayout(tag)
- val view = authorizeLayout.getLayoutView()
- windowManagerView = WindowManagerView.Builder(context).contentView(view).build()
+ private fun pushLayoutToMainWindow(tag: String) {
+ if (authorizeDialog == null) {
+ authorizeDialog = AuthorizeDialog(tag,mContext!!)
}
- if (windowManagerView!!.isShowing) {
+ if (authorizeDialog!!.isShowing) {
Logger.d(TAG, "User is operation authorization, do not repeat invoke")
return
} else {
Logger.d(TAG, "pushLayoutToMainWindow")
- windowManagerView!!.show()
+ authorizeDialog!!.show()
}
}
diff --git a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/layout/AuthorizeDialog.kt b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/layout/AuthorizeDialog.kt
new file mode 100644
index 0000000000..4dc7287746
--- /dev/null
+++ b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/layout/AuthorizeDialog.kt
@@ -0,0 +1,176 @@
+package com.mogo.module.authorize.layout
+
+import android.content.Context
+import android.text.Html
+import android.view.View
+import android.widget.Button
+import android.widget.TextView
+import androidx.constraintlayout.widget.ConstraintLayout
+import com.mogo.commons.AbsMogoApplication
+import com.mogo.module.authorize.R
+import com.mogo.module.authorize.util.AnalyticsUtil
+import com.mogo.module.authorize.voice.IVoiceAuthorizeIntentListener
+import com.mogo.module.authorize.voice.IVoiceCommandListener
+import com.mogo.module.authorize.voice.VoiceUtil
+import com.mogo.module.common.dialog.BaseFloatDialog
+import com.mogo.utils.logger.Logger
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.GlobalScope
+import kotlinx.coroutines.async
+import kotlinx.coroutines.withContext
+
+class AuthorizeDialog : BaseFloatDialog, View.OnClickListener, IVoiceCommandListener, IVoiceAuthorizeIntentListener {
+
+ private var mContext: Context? = null
+ private var invokeTag: String? = null
+
+ private var agreementId: Long = 0L
+
+ private var clTopParent: ConstraintLayout? = null
+ private var clErrorContainer: ConstraintLayout? = null
+ private var clLoadAuthorizeContainer: ConstraintLayout? = null
+ private var clContainer: ConstraintLayout? = null
+ private var clAuthorizeLoading: ConstraintLayout? = null
+ private var btnAgree: Button? = null
+ private var btnDisAgree: Button? = null
+ private var btnLoadingError: Button? = null
+ private var tvTitle: TextView? = null
+ private var tvContent: TextView? = null
+ private var tvButtonContent: TextView? = null
+ private var tvLastContent: TextView? = null
+
+ private var authorizeController: AuthorizeController? = null
+
+ constructor(invokeTag: String, context: Context) : super(context) {
+ mContext = context
+ this.invokeTag = invokeTag
+ initView()
+ }
+
+ private fun initView() {
+ setContentView(R.layout.module_authorize_fragment)
+ initViews()
+ }
+
+ fun initViews() {
+ Logger.d(AuthorizeLayout.TAG, "initView ")
+ AnalyticsUtil.track(AnalyticsUtil.INVOKE_TRACK_AUTHORIZE_SHOW)
+ init()
+ Logger.d(AuthorizeLayout.TAG, "invokeTag :$invokeTag")
+ authorizeController = AuthorizeController(invokeTag!!)
+ invokeAuthorizationContent()
+ VoiceUtil.registerAll(this, this)
+ }
+
+ private fun init() {
+ clTopParent = findViewById(R.id.clAuthorizeTopParent)
+ clErrorContainer = findViewById(R.id.clLoadingErrorContainer)
+ clLoadAuthorizeContainer = findViewById(R.id.clLoadingAuthorizeContainer)
+ clContainer = findViewById(R.id.clAuthorizeContainer)
+ clAuthorizeLoading = findViewById(R.id.clAuthorizeLoading)
+ btnAgree = findViewById(R.id.btnAuthorizeAgree)
+ btnDisAgree = findViewById(R.id.btnAuthorizeDisAgree)
+ btnLoadingError = findViewById(R.id.btnAuthorizeLoadingError)
+ tvTitle = findViewById(R.id.tvAuthorizeTitle)
+ tvContent = findViewById(R.id.tvAuthorizeContent)
+ tvButtonContent = findViewById(R.id.tvAuthorizeButtonContent)
+ tvLastContent = findViewById(R.id.tvAuthorizeLastContent)
+ btnAgree?.setOnClickListener(this)
+ btnDisAgree?.setOnClickListener(this)
+ btnLoadingError?.setOnClickListener(this)
+ clTopParent?.setOnClickListener(this)
+ clContainer?.setOnClickListener(this)
+ clErrorContainer?.setOnClickListener(this)
+ clLoadAuthorizeContainer?.setOnClickListener(this)
+ clAuthorizeLoading?.setOnClickListener(this)
+ }
+
+ private fun readyToAuthorize() {
+ clErrorContainer?.visibility = View.GONE
+ clLoadAuthorizeContainer?.visibility = View.VISIBLE
+ }
+
+ private fun showAuthorizationAgreementContent(
+ agreementId: Long,
+ agreementContent: String,
+ agreementTitle: String,
+ agreementBottom: String,
+ agreementLast: String) {
+ VoiceUtil.speak(AbsMogoApplication.getApp().applicationContext.resources.getString(R.string.module_authorize_agreement_tip), AbsMogoApplication.getApp().applicationContext, this)
+ this.agreementId = agreementId
+ clLoadAuthorizeContainer?.visibility = View.GONE
+ clContainer?.visibility = View.VISIBLE
+ tvTitle?.text = Html.fromHtml(agreementTitle)
+ GlobalScope.async(Dispatchers.IO) {
+ val spannable = Html.fromHtml(agreementContent)
+ withContext(Dispatchers.Main) {
+ tvContent?.text = spannable
+ }
+ }
+ tvButtonContent?.text = Html.fromHtml(agreementBottom)
+ tvLastContent?.text = Html.fromHtml(agreementLast)
+ }
+
+ private fun showAuthorizationError() {
+ clLoadAuthorizeContainer?.visibility = View.GONE
+ clErrorContainer?.visibility = View.VISIBLE
+ }
+
+ private fun voiceAuthorizeError() {
+ VoiceUtil.speak(AbsMogoApplication.getApp().applicationContext.getString(R.string.module_authorize_failed), AbsMogoApplication.getApp().applicationContext, this)
+ Logger.d(AuthorizeLayout.TAG, "onDestroy")
+ VoiceUtil.unregisterAll(AbsMogoApplication.getApp().applicationContext, this)
+ }
+
+ override fun onClick(v: View) {
+ when (v.id) {
+ R.id.btnAuthorizeAgree -> {
+ AnalyticsUtil.track(AnalyticsUtil.INVOKE_TRACK_AUTHORIZE_CLICK, hashMapOf("operation_type" to 1, "operation_result" to 1))
+ agreeAuthorize()
+ }
+ R.id.btnAuthorizeDisAgree -> {
+ AnalyticsUtil.track(AnalyticsUtil.INVOKE_TRACK_AUTHORIZE_CLICK, hashMapOf("operation_type" to 1, "operation_result" to 2))
+ disAgreeAuthorize()
+ }
+ R.id.clLoadingErrorContainer, R.id.btnAuthorizeLoadingError -> {
+ invokeAuthorizationContent()
+ }
+ R.id.clAuthorizeTopParent -> {
+ Logger.i(AuthorizeLayout.TAG, "dismiss authorizeView")
+ authorizeController?.onDestroy()
+ }
+ }
+ }
+
+ override fun onVoiceCmdAgree() {
+ AnalyticsUtil.track(AnalyticsUtil.INVOKE_TRACK_AUTHORIZE_CLICK, hashMapOf("operation_type" to 2, "operation_result" to 1))
+ agreeAuthorize()
+ }
+
+ override fun onVoiceCmdDisAgree() {
+ AnalyticsUtil.track(AnalyticsUtil.INVOKE_TRACK_AUTHORIZE_CLICK, hashMapOf("operation_type" to 2, "operation_result" to 2))
+ disAgreeAuthorize()
+ }
+
+ private fun agreeAuthorize() {
+ authorizeController?.agreeAuthorize(invokeTag!!, agreementId) {
+ voiceAuthorizeError()
+ }
+ }
+
+ private fun disAgreeAuthorize() {
+ authorizeController?.disAgreeAuthorize(invokeTag!!, agreementId) {
+ voiceAuthorizeError()
+ }
+ }
+
+ private fun invokeAuthorizationContent() {
+ authorizeController?.invokeAuthorizationContent(invokeTag!!, {
+ readyToAuthorize()
+ }, { id: Long, content: String, title: String, bottomContent: String, lastContent: String ->
+ showAuthorizationAgreementContent(id, content, title, bottomContent, lastContent)
+ }, {
+ showAuthorizationError()
+ })
+ }
+}
\ No newline at end of file
diff --git a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/layout/AuthorizeLayout.kt b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/layout/AuthorizeLayout.kt
index 37248c1cb1..adc6968eb1 100644
--- a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/layout/AuthorizeLayout.kt
+++ b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/layout/AuthorizeLayout.kt
@@ -50,11 +50,11 @@ class AuthorizeLayout(private val invokeTag: String) : View.OnClickListener, IVo
return layoutInflater
}
- private fun getLayoutId(): Int {
+ fun getLayoutId(): Int {
return R.layout.module_authorize_fragment
}
- private fun initViews(mRootView: View) {
+ fun initViews(mRootView: View) {
Logger.d(TAG, "initView ")
AnalyticsUtil.track(INVOKE_TRACK_AUTHORIZE_SHOW)
init(mRootView)
diff --git a/modules/mogo-module-authorize/src/main/res/layout-xhdpi-1920x1000/module_authorize_fragment.xml b/modules/mogo-module-authorize/src/main/res/layout-xhdpi-1920x1000/module_authorize_fragment.xml
index 43b33aa0c5..3365c3c4d6 100644
--- a/modules/mogo-module-authorize/src/main/res/layout-xhdpi-1920x1000/module_authorize_fragment.xml
+++ b/modules/mogo-module-authorize/src/main/res/layout-xhdpi-1920x1000/module_authorize_fragment.xml
@@ -151,7 +151,7 @@
android:layout_height="0px"
android:layout_marginBottom="@dimen/dp_139"
android:scrollbarSize="@dimen/dp_442"
- android:layout_marginTop="@dimen/dp_139"
+ android:layout_marginTop="@dimen/dp_35"
android:scrollbarTrackHorizontal="@drawable/module_authorize_scrollbar"
android:scrollbarThumbVertical="@drawable/module_authorize_scrollbar"
app:layout_constraintBottom_toBottomOf="parent"
diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/wm/DialogImpl.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/wm/DialogImpl.java
index 330249f65d..9afad4c28c 100644
--- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/wm/DialogImpl.java
+++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/wm/DialogImpl.java
@@ -16,6 +16,7 @@ class DialogImpl implements IWindowManagerView {
public void init(WindowManagerView.WMViewParams params) {
Logger.d("DialogImpl", "init====");
dialog = new BaseFloatDialog(params.mContext);
+ Logger.d("DialogImpl","params view : " + params.mContentView);
dialog.setContentView(params.mContentView);
}
diff --git a/modules/mogo-module-common/src/main/res/values-xhdpi/dimens.xml b/modules/mogo-module-common/src/main/res/values-xhdpi/dimens.xml
index d56caf71d6..17412b24d7 100644
--- a/modules/mogo-module-common/src/main/res/values-xhdpi/dimens.xml
+++ b/modules/mogo-module-common/src/main/res/values-xhdpi/dimens.xml
@@ -1016,7 +1016,9 @@
997px
998px
999px
+ 1000px
1300px
+ 1920px
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 854a27ff58..56f3d8aa44 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,6 +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);
mMogoStatusManager = mServiceApis.getStatusManagerApi();
mMogoStatusManager.setMainPageLaunchedStatus( TAG, true );
AutopilotServiceManage.getInstance().init( getContext() );
diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/IMogoServiceApis.java b/services/mogo-service-api/src/main/java/com/mogo/service/IMogoServiceApis.java
index 4580f14cf6..b43d44aa72 100644
--- a/services/mogo-service-api/src/main/java/com/mogo/service/IMogoServiceApis.java
+++ b/services/mogo-service-api/src/main/java/com/mogo/service/IMogoServiceApis.java
@@ -5,6 +5,7 @@ import android.content.Context;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.service.adas.IMogoADASController;
import com.mogo.service.analytics.IMogoAnalytics;
+import com.mogo.service.auth.IMogoAuthManager;
import com.mogo.service.cardmanager.IMogoCardManager;
import com.mogo.service.connection.IMogoSocketManager;
import com.mogo.service.datamanager.IMogoDataManager;
@@ -236,4 +237,10 @@ public interface IMogoServiceApis extends IProvider {
* @return
*/
IMogoPassportManager getPassportManagerApi();
+
+ /**
+ * 获取授权服务
+ * @return
+ */
+ IMogoAuthManager getAuthManagerApi();
}
diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java b/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java
index c9090a0edd..6f90c84d79 100644
--- a/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java
+++ b/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java
@@ -220,4 +220,10 @@ public class MogoServicePaths {
*/
@Deprecated
public static final String PATH_PASSPORT = "/passport/api";
+
+ /**
+ * 授权服务
+ */
+ @Deprecated
+ public static final String PATH_AGREEMENT = "/agreement/showFragment";
}
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
new file mode 100644
index 0000000000..a8d2bac05d
--- /dev/null
+++ b/services/mogo-service-api/src/main/java/com/mogo/service/auth/IMogoAuthManager.java
@@ -0,0 +1,13 @@
+package com.mogo.service.auth;
+
+import android.content.Context;
+
+import com.mogo.service.module.IMogoModuleProvider;
+
+public interface IMogoAuthManager extends IMogoModuleProvider {
+
+ /**
+ * 重置授权页面弹起时展示View Context
+ */
+ void resetContext(Context context);
+}
diff --git a/services/mogo-service/src/main/java/com/mogo/service/impl/MogoServiceApis.java b/services/mogo-service/src/main/java/com/mogo/service/impl/MogoServiceApis.java
index 7881bc7374..a623abbb69 100644
--- a/services/mogo-service/src/main/java/com/mogo/service/impl/MogoServiceApis.java
+++ b/services/mogo-service/src/main/java/com/mogo/service/impl/MogoServiceApis.java
@@ -9,6 +9,7 @@ import com.mogo.service.IMogoServiceApis;
import com.mogo.service.MogoServicePaths;
import com.mogo.service.adas.IMogoADASController;
import com.mogo.service.analytics.IMogoAnalytics;
+import com.mogo.service.auth.IMogoAuthManager;
import com.mogo.service.cardmanager.IMogoCardManager;
import com.mogo.service.connection.IMogoSocketManager;
import com.mogo.service.datamanager.IMogoDataManager;
@@ -200,6 +201,11 @@ public class MogoServiceApis implements IMogoServiceApis {
return getApiInstance( IMogoPassportManager.class, MogoServicePaths.PATH_PASSPORT );
}
+ @Override
+ public IMogoAuthManager getAuthManagerApi() {
+ return getApiInstance( IMogoAuthManager.class, MogoServicePaths.PATH_AGREEMENT );
+ }
+
private static < T extends IProvider > T getApiInstance( Class< T > clazz, String path ) {
T inst = SingletonsHolder.get( clazz );
if ( inst == null ) {