This commit is contained in:
wangcongtao
2020-04-14 14:42:05 +08:00
parent 00dcc08075
commit 813b41c6fd
3 changed files with 17 additions and 13 deletions

View File

@@ -3,6 +3,7 @@ package com.mogo.module.gps.simulator;
import com.alibaba.android.arouter.launcher.ARouter;
import com.mogo.commons.AbsMogoApplication;
import com.mogo.map.MogoLatLng;
import com.mogo.map.location.MogoLocation;
import com.mogo.map.navi.IMogoCarLocationChangedListener;
import com.mogo.map.navi.IMogoNavi;
import com.mogo.service.IMogoServiceApis;
@@ -33,6 +34,7 @@ public class WebSocketManager {
private IMogoNavi mNavi;
private JWebSocketClient mClient;
private URI mUri;
private IMogoServiceApis mServiceApis;
private ExecutorService mService;
@@ -48,7 +50,7 @@ public class WebSocketManager {
}
private WebSocketManager() {
final IMogoServiceApis mServiceApis = ( IMogoServiceApis ) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation();
mServiceApis = ( IMogoServiceApis ) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation();
mNavi = mServiceApis.getMapServiceApi().getNavi( AbsMogoApplication.getApp() );
mUri = URI.create( "ws://152.136.10.223:4001/realtimeLocations-ws" );
mClient = new JWebSocketClient( mUri ) {
@@ -107,10 +109,12 @@ public class WebSocketManager {
if ( mClient == null ) {
return;
}
mNavi.setUseExtraGPSData( true );
mService.execute( () -> {
try {
mClient.connectBlocking();
} catch ( InterruptedException e ) {
Logger.d( TAG, "connectBlocking done." );
} catch ( Exception e ) {
Logger.e( TAG, e, "error." );
}
} );
@@ -123,13 +127,15 @@ public class WebSocketManager {
}
public void disConnect() {
try {
mService.execute( () -> {
mClient.close();
} );
} catch ( Exception e ) {
Logger.e( TAG, e, "error." );
}
mNavi.setUseExtraGPSData( false );
mService.execute( () -> {
try {
mClient.closeBlocking();
Logger.d( TAG, "close done." );
} catch ( InterruptedException e ) {
Logger.e( TAG, e, "error." );
}
} );
}
public static void destroy() {