diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java index 3a95ccb761..7359d43664 100644 --- a/app/src/main/java/com/mogo/launcher/MogoApplication.java +++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java @@ -123,23 +123,19 @@ public class MogoApplication extends AbsMogoApplication { private void preparePassportEnvironment( IMogoServiceApis apis, Runnable after ) { apis.getPassportManagerApi().requestTicket( new IMogoTicketCallback() { @Override - public void onSuccess( String ticket ) { + public void onTicketGot( String ticket ) { Logger.d( TAG, "ticket = %s", ticket ); - SpStorage.setTicket( ticket ); - if ( after != null ) { - after.run(); - } } @Override public void onError( int code, String msg ) { Logger.w( TAG, "code = %s, msg = %s", code, msg ); - if ( !TextUtils.isEmpty( Utils.getSn() ) ) { - if ( after != null ) { - after.run(); - } - } else { - prepareBaseService(1_000L); + } + + @Override + public void onLoginSuccess( String token, String sn ) { + if ( after != null ) { + after.run(); } } } ); diff --git a/foudations/mogo-base-services-apk/src/main/java/com/mogo/base/services/passport/PassportManager.java b/foudations/mogo-base-services-apk/src/main/java/com/mogo/base/services/passport/PassportManager.java index 5090b53910..2a23051695 100644 --- a/foudations/mogo-base-services-apk/src/main/java/com/mogo/base/services/passport/PassportManager.java +++ b/foudations/mogo-base-services-apk/src/main/java/com/mogo/base/services/passport/PassportManager.java @@ -53,7 +53,7 @@ class PassportManager implements IMogoPassportManager { Logger.d( TAG, "success" ); SpStorage.setTicket( ticket ); if ( callback != null ) { - callback.onSuccess( ticket ); + callback.onTicketGot( ticket ); } } diff --git a/foudations/mogo-base-services-sdk/build.gradle b/foudations/mogo-base-services-sdk/build.gradle index 8b6cd89281..f2bd559880 100644 --- a/foudations/mogo-base-services-sdk/build.gradle +++ b/foudations/mogo-base-services-sdk/build.gradle @@ -34,7 +34,7 @@ dependencies { // 长链 implementation 'com.zhidao.socket:built-in-socket:1.0.15' // passport - implementation 'com.zhidao.tcloginsdk:tclogin:1.0.9' + implementation 'com.zhidao.tcloginsdk:tclogin:1.1.0' annotationProcessor 'com.elegant.spi:compiler:1.0.3' diff --git a/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/passport/PassportManager.java b/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/passport/PassportManager.java index 5ff405fa41..8f77ef1ecb 100644 --- a/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/passport/PassportManager.java +++ b/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/passport/PassportManager.java @@ -11,8 +11,9 @@ import com.mogo.service.passport.IMogoTicketCallback; import com.mogo.utils.logger.Logger; import com.zhidao.accountsdk.manager.CarPadClientManagerImpl; import com.zhidao.accountsdk.manager.TicketInfoCallback; -import com.zhidao.accountsdk.network.NetEnvironManager; import com.zhidao.tcloginsdk.LoginManager; +import com.zhidao.tcloginsdk.model.TokenData; +import com.zhidao.tcloginsdk.network.LoginCallback; public /** @@ -29,13 +30,14 @@ class PassportManager implements IMogoPassportManager { private static volatile PassportManager sInstance; - private PassportManager(){} + private PassportManager() { + } @Keep - public static PassportManager getInstance(){ - if( sInstance == null ){ - synchronized( PassportManager.class ) { - if( sInstance == null ){ + public static PassportManager getInstance() { + if ( sInstance == null ) { + synchronized ( PassportManager.class ) { + if ( sInstance == null ) { sInstance = new PassportManager(); } } @@ -43,30 +45,46 @@ class PassportManager implements IMogoPassportManager { return sInstance; } - public synchronized void release(){ + public synchronized void release() { sInstance = null; } @Override public void requestTicket( final IMogoTicketCallback callback ) { - getTicket( new TicketInfoCallback() { + LoginManager.getInstance( mContext ).login( DebugConfig.getCarMachineType() != DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE, DebugConfig.getProductFlavor(), new LoginCallback() { @Override - public void onSuccess( String ticket ) { - Logger.d( TAG, "success" ); - SpStorage.setTicket( ticket ); + public void onSuccess( TokenData.TokenResult result ) { if ( callback != null ) { - callback.onSuccess( ticket ); + callback.onLoginSuccess( result.token, result.sn ); } + getTicket( new TicketInfoCallback() { + @Override + public void onSuccess( String ticket ) { + Logger.d( TAG, "success" ); + SpStorage.setTicket( ticket ); + if ( callback != null ) { + callback.onTicketGot( ticket ); + } + } + + @Override + public void onFailure( int code ) { + Logger.d( TAG, "fail" ); + if ( callback != null ) { + callback.onError( code, "getTicket error." ); + } + } + } ); } @Override - public void onFailure( int code ) { - Logger.d( TAG, "fail" ); + public void onFailure( int code, String msg ) { if ( callback != null ) { - callback.onError( code, "error." ); + callback.onError( code, "login: " + msg ); } } } ); + } private void getTicket( TicketInfoCallback callback ) { @@ -96,6 +114,5 @@ class PassportManager implements IMogoPassportManager { mode = DebugConfig.NET_MODE_QA; } LoginManager.getInstance( context ).setNetEnviron( mode ); - LoginManager.getInstance( context ).login(DebugConfig.getCarMachineType() != DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE, DebugConfig.getProductFlavor()); } } diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/AbsMogoApplication.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/AbsMogoApplication.java index c38e5425c7..360dbb622b 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/AbsMogoApplication.java +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/AbsMogoApplication.java @@ -110,35 +110,6 @@ public class AbsMogoApplication extends Application { } -// private static void initAccountSdk() { -// int mode = DebugConfig.getNetMode(); -// if ( mode == DebugConfig.NET_MODE_DEMO ) { -// // 演示环境用 qa 的 -// mode = DebugConfig.NET_MODE_QA; -// } -// AccountClientManager.init( sApp, mode, NetEnvironManager.OS_2C, "os2.0-launcher" ); -// getTicket( new TicketInfoCallback() { -// @Override -// public void onSuccess( String ticket ) { -// SpStorage.setTicket( ticket ); -// Logger.w( TAG, "request ticket success" ); -// } -// -// @Override -// public void onFailure( int code, String msg ) { -// Logger.w( TAG, "request ticket error code = %d, msg = %s", code, msg ); -// } -// } ); -// } -// -// private static void getTicket( TicketInfoCallback callback ) { -// if ( DebugConfig.isLauncher() ) { -// AccountClientManager.getTicket( callback ); -// } else { -// AccountClientManager.getAppTicket( callback ); -// } -// } - private static void initNetConfig() { try { 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 0110f42f1f..61c20a0d37 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 @@ -152,7 +152,7 @@ public class EventDispatchCenter implements * * @param callback */ - void setMapLoadedCallback( Runnable callback ){ + void setMapLoadedCallback( Runnable callback ) { this.mMapLoadedCallback = callback; } @@ -162,6 +162,21 @@ public class EventDispatchCenter implements mMapLoadedCallback.run(); mMapLoadedCallback = null; } + + Iterator< IMogoMapListener > iterator = MogoRegisterCenterHandler.getInstance().getMapListeners(); + if ( iterator == null ) { + return; + } + while ( iterator.hasNext() ) { + IMogoMapListener listener = iterator.next(); + if ( listener != null ) { + try { + listener.onMapLoaded(); + } catch ( Exception e ) { + Logger.e( TAG, e, "error." ); + } + } + } } @Override @@ -466,46 +481,46 @@ public class EventDispatchCenter implements } @Override - public void showCarLocationInfo(CarLocationInfo info) { + public void showCarLocationInfo( CarLocationInfo info ) { Iterator< IMogoObuDataChangedListener > iterator = MogoRegisterCenterHandler.getInstance().getObuDataChangedListeners(); if ( iterator == null ) { return; } while ( iterator.hasNext() ) { - iterator.next().showCarLocationInfo(info); + iterator.next().showCarLocationInfo( info ); } } @Override - public void showOtherInfo(String info) { + public void showOtherInfo( String info ) { Iterator< IMogoObuDataChangedListener > iterator = MogoRegisterCenterHandler.getInstance().getObuDataChangedListeners(); if ( iterator == null ) { return; } while ( iterator.hasNext() ) { - iterator.next().showOtherInfo(info); + iterator.next().showOtherInfo( info ); } } @Override - public void showTrafficLightInfo(TrafficLightInfo info) { + public void showTrafficLightInfo( TrafficLightInfo info ) { Iterator< IMogoObuDataChangedListener > iterator = MogoRegisterCenterHandler.getInstance().getObuDataChangedListeners(); if ( iterator == null ) { return; } while ( iterator.hasNext() ) { - iterator.next().showTrafficLightInfo(info); + iterator.next().showTrafficLightInfo( info ); } } @Override - public void showCarEventInfo(CarEventInfo info) { + public void showCarEventInfo( CarEventInfo info ) { Iterator< IMogoObuDataChangedListener > iterator = MogoRegisterCenterHandler.getInstance().getObuDataChangedListeners(); if ( iterator == null ) { return; } while ( iterator.hasNext() ) { - iterator.next().showCarEventInfo(info); + iterator.next().showCarEventInfo( info ); } } } diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoModuleProvider.java b/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoModuleProvider.java index d53d29693b..59dad0341e 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoModuleProvider.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoModuleProvider.java @@ -59,6 +59,7 @@ public interface IMogoModuleProvider extends IProvider { * * @return */ + @Deprecated IMogoMapListener getMapListener(); /** diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/passport/IMogoTicketCallback.java b/services/mogo-service-api/src/main/java/com/mogo/service/passport/IMogoTicketCallback.java index 306e71c3bd..ace2fc6b05 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/passport/IMogoTicketCallback.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/passport/IMogoTicketCallback.java @@ -9,7 +9,9 @@ public */ interface IMogoTicketCallback { - void onSuccess( String ticket ); + void onTicketGot( String ticket ); void onError( int code, String msg ); + + void onLoginSuccess(String token, String sn); }