[6.8.4]
[fea] [sn 变化监听]
This commit is contained in:
@@ -30,6 +30,7 @@ import com.mogo.och.bridge.autopilot.location.OchLocationManager
|
||||
import com.mogo.och.common.module.biz.login.LoginStatusEnum
|
||||
import com.mogo.och.common.module.biz.login.LoginStatusEnum.Companion.valueOf
|
||||
import com.mogo.och.common.module.biz.login.LoginStatusManager
|
||||
import com.mogo.och.common.module.manager.cache.ISpCallback
|
||||
import com.mogo.och.common.module.manager.cache.OchSPManager
|
||||
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
|
||||
import com.mogo.och.common.module.manager.socket.lan.bean.BusCacheKey
|
||||
@@ -70,6 +71,13 @@ object LoginModel {
|
||||
}
|
||||
}
|
||||
|
||||
private val snChangeListener = object :ISpCallback{
|
||||
override fun snChange() {
|
||||
d(TAG, "sn 发生变化${OchSPManager.getSn()}")
|
||||
queryCarStatus(false)
|
||||
}
|
||||
}
|
||||
|
||||
init {
|
||||
mContext = AbsMogoApplication.getApp()
|
||||
IntentManager.getInstance()
|
||||
@@ -89,10 +97,14 @@ object LoginModel {
|
||||
}
|
||||
|
||||
fun setiTaxiLoginCallback(iTaxiLoginCallback: ITaxiLoginCallback?) {
|
||||
d(TAG,"setiTaxiLoginCallback")
|
||||
OchSPManager.addListener(TAG,snChangeListener)
|
||||
LoginModel.iTaxiLoginCallback = iTaxiLoginCallback
|
||||
}
|
||||
|
||||
fun release() {
|
||||
d(TAG,"release")
|
||||
OchSPManager.remove(TAG)
|
||||
iTaxiLoginCallback = null
|
||||
}
|
||||
|
||||
|
||||
@@ -136,7 +136,6 @@ object OchCommonServiceManager {
|
||||
context: Context,
|
||||
callback: OchCommonServiceCallback<DriverStatusQueryRespBean>?
|
||||
) {
|
||||
CallerLogger.d(TAG, "queryDriverServiceStatus:查询登录状态");
|
||||
val sn =
|
||||
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
|
||||
OchSPManager.getSn()
|
||||
@@ -148,8 +147,10 @@ object OchCommonServiceManager {
|
||||
return
|
||||
}
|
||||
if(FunctionBuildConfig.ochdebug){
|
||||
CallerLogger.d(TAG, "queryDriverServiceStatus:查询登录状态 ochdebug模式");
|
||||
return
|
||||
}
|
||||
CallerLogger.d(TAG, "queryDriverServiceStatus:查询登录状态${sn}");
|
||||
if (ProjectUtils.isMogo()) {
|
||||
ochLoginServiceMogo.queryDriverServiceStatusAndLoginStatus(
|
||||
MoGoAiCloudClientConfig.getInstance().serviceAppId,
|
||||
|
||||
6
OCH/common/common/src/main/java/com/mogo/och/common/module/manager/cache/ISpCallback.java
vendored
Normal file
6
OCH/common/common/src/main/java/com/mogo/och/common/module/manager/cache/ISpCallback.java
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
package com.mogo.och.common.module.manager.cache;
|
||||
|
||||
|
||||
public interface ISpCallback {
|
||||
default void snChange(){}
|
||||
}
|
||||
@@ -1,8 +1,32 @@
|
||||
package com.mogo.och.common.module.manager.cache
|
||||
|
||||
import com.mogo.commons.storage.SharedPrefsMgr
|
||||
import com.mogo.eagle.core.function.api.cloud.IMoGoCloudListener
|
||||
import com.mogo.eagle.core.function.call.cloud.CallerCloudListenerManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
|
||||
import com.mogo.och.common.module.utils.CallerBase
|
||||
import kotlin.properties.Delegates
|
||||
|
||||
object OchSPManager {
|
||||
object OchSPManager : IMoGoCloudListener, CallerBase<ISpCallback>() {
|
||||
|
||||
const val TAG = "${M_OCHCOMMON}OchSPManager"
|
||||
|
||||
private var ochSN: String by Delegates.observable("") { _, oldValue, newValue ->
|
||||
if (oldValue != newValue) {
|
||||
M_LISTENERS.forEach {
|
||||
it.value.snChange()
|
||||
}
|
||||
}
|
||||
}
|
||||
private var ochToken:String by Delegates.observable("") { _, oldValue, newValue ->
|
||||
if (oldValue != newValue) {
|
||||
}
|
||||
}
|
||||
|
||||
init {
|
||||
CallerCloudListenerManager.addListener(TAG,this)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun getSn(): String? {
|
||||
@@ -22,4 +46,18 @@ object OchSPManager {
|
||||
return SharedPrefsMgr.getInstance().getString(key,default)
|
||||
}
|
||||
|
||||
override fun tokenGot(token: String, sn: String) {
|
||||
CallerLogger.d(TAG,"获取token和sn:$sn")
|
||||
this.ochSN = sn
|
||||
this.ochToken = token
|
||||
}
|
||||
|
||||
override fun doSomeAfterAddListener(tag: String, listener: ISpCallback) {
|
||||
super.doSomeAfterAddListener(tag, listener)
|
||||
if(ochSN.isNotEmpty()){
|
||||
M_LISTENERS.forEach {
|
||||
it.value.snChange()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user