diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 740794bd48..771c1f74d7 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -89,7 +89,6 @@ diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/OchBusFragment.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/OchBusFragment.java index 99163a9ab7..355e429cad 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/OchBusFragment.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/OchBusFragment.java @@ -163,7 +163,10 @@ public class OchBusFragment extends BaseOchFragment 5 ) { + if ( distance > ARRIVE_AT_START_STATION_DISTANCE ) { distance = CoordinateUtils.calculateLineDistance( station.lon, station.lat, MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLon(), MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLat() ); } - if ( distance <= 5 ) { + if ( distance <= ARRIVE_AT_START_STATION_DISTANCE ) { mIsArriveAtStartStation = true; unregisterCarLocationListener(); OCHTaxiUiController.getInstance().onArriveAtStartStation(); @@ -360,6 +365,7 @@ class MogoOCHTaxiModel { } ); return; } + Logger.d( TAG, "distance = %s", distance ); } /** @@ -417,6 +423,7 @@ class MogoOCHTaxiModel { @Override public void onMsgReceived( OCHTaxiOrderResponse obj ) { + Logger.d( TAG, "收到新订单" ); mCurrentOCHOrder = obj; cacheOrderInfo2Native( mCurrentOCHOrder ); Location location = MogoApisHandler.getInstance() @@ -522,6 +529,7 @@ class MogoOCHTaxiModel { @Override public void onStateChanged( int state, String reason ) { + Logger.d( TAG, "state = %s", state ); OCHTaxiUiController.getInstance().onAutoPilotStatusChanged( state, reason ); } } @@ -661,4 +669,20 @@ class MogoOCHTaxiModel { public OCHTaxiOrderResponse getCurrentOCHOrder() { return mCurrentOCHOrder; } + + /** + * 结束自动驾驶 + */ + public void cancelAutopilot(){ + try { + Logger.d( TAG, "结束自动驾驶" ); + MogoApisHandler.getInstance() + .getApis() + .getAdasControllerApi() + .cancelAutopilot(); + Logger.d( TAG, "结束自动驾驶" ); + } catch ( Exception e ) { + e.printStackTrace(); + } + } } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java index c68ebdb444..fe206ac76f 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java @@ -266,6 +266,7 @@ class OCHTaxiFragment extends BaseOchFragment< OCHTaxiView, OCHTaxiPresenter > i public void onSuccess( Object data ) { Logger.d( TAG, "更新状态成功" ); MogoOCHTaxiModel.getInstance().clearCurrentOCHOrder(); + MogoOCHTaxiModel.getInstance().cancelAutopilot(); OCHTaxiUiController.getInstance().removeFragment(); } diff --git a/OCH/mogo-och/src/main/java/com/mogo/och/BaseOchFragment.java b/OCH/mogo-och/src/main/java/com/mogo/och/BaseOchFragment.java index b9f5365860..0ad9f649e6 100644 --- a/OCH/mogo-och/src/main/java/com/mogo/och/BaseOchFragment.java +++ b/OCH/mogo-och/src/main/java/com/mogo/och/BaseOchFragment.java @@ -61,9 +61,9 @@ public abstract class BaseOchFragment> e @Override public void onClickImpl(View v) { // 如果能自动驾驶,就自动驾驶,不能就提示 - if (MogoApisHandler.getInstance().getApis().getAdasControllerApi().getAutopilotStatus() == IMogoAdasOCHCallback.STATUS_AUTOPILOT_ENABLE) { - restartAutopilot(); - } +// if (MogoApisHandler.getInstance().getApis().getAdasControllerApi().getAutopilotStatus() == IMogoAdasOCHCallback.STATUS_AUTOPILOT_ENABLE) { +// } + restartAutopilot(); } }); diff --git a/libraries/map-custom/build.gradle b/libraries/map-custom/build.gradle index fa504e51c5..0b4dd70b68 100644 --- a/libraries/map-custom/build.gradle +++ b/libraries/map-custom/build.gradle @@ -67,7 +67,7 @@ dependencies { implementation project(':foudations:mogo-commons') } - implementation 'com.zhidaoauto.machine:map:1.0.0-vr-8.0.5' + implementation 'com.zhidaoauto.machine:map:1.0.0-vr-8.0.7' // implementation 'com.zhidaoauto.machine:map:1.0.0-vr-test-3.4' } diff --git a/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/marker/AMapMarkerWrapper.java b/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/marker/AMapMarkerWrapper.java index 30ee988c50..5e50f5c9da 100644 --- a/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/marker/AMapMarkerWrapper.java +++ b/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/marker/AMapMarkerWrapper.java @@ -481,7 +481,8 @@ public class AMapMarkerWrapper implements IMogoMarker, Observer { return; } - mMarker.startSmooth( newPoints, ( int ) duration ); +// mMarker.startSmooth( newPoints, ( int ) duration ); + mMarker.addDynamicAnchorPostion( newPoints.get( newPoints.size() - 1 ), ( int ) duration ); } @Override diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java index b56f86dc19..b99999ee14 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java @@ -28,6 +28,7 @@ import com.mogo.module.common.dialog.WMDialog; import com.mogo.module.service.MarkerServiceHandler; import com.mogo.module.service.R; import com.mogo.module.service.uploadintime.SnapshotUploadInTime; +import com.mogo.service.adas.RemoteControlAutoPilotParameters; import com.mogo.service.adas.entity.ADASCarStateInfo; import com.mogo.service.entrance.ButtonIndex; import com.mogo.utils.CoordinateUtils; @@ -524,6 +525,16 @@ public class MockIntentHandler implements IntentHandler { .getAdasControllerApi() .onAutopilotArriveLike( intent.getIntExtra( "type", 8 ) ); break; + case 44: + RemoteControlAutoPilotParameters parameters = new RemoteControlAutoPilotParameters(); + parameters.vehicleType = 9; + parameters.startLatLon = new RemoteControlAutoPilotParameters.AutoPilotLonLat( 40.1690522746, 116.567374558 ); + parameters.endLatLon = new RemoteControlAutoPilotParameters.AutoPilotLonLat( 40.1651999405, 116.567217441 ); + MogoApisHandler.getInstance() + .getApis() + .getAdasControllerApi() + .aiCloudToAdasData( parameters ); + break; } } diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/adas/IMogoADASController.java b/services/mogo-service-api/src/main/java/com/mogo/service/adas/IMogoADASController.java index 8b5b351b7d..533643e747 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/adas/IMogoADASController.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/adas/IMogoADASController.java @@ -136,19 +136,41 @@ public interface IMogoADASController extends IProvider { */ void setAdasCarDataCallback( IMogoAdasCarDataCallback carDataCallback ); + /** + * 自动驾驶状态通知 + * @param callback + */ void addAdasOCHCallback( IMogoAdasOCHCallback callback ); + /** + * 移除自动驾驶通知 + */ void removeAdasOCHCallback(); void onAutopilotArriveLike( int type ); + /** + * 获取车辆自动驾驶状态 + * @return + */ int getAutopilotStatus(); void mockOchStatus( int state, String reason ); + /** + * 获取车身的定位纬度 + * @return + */ double getLastLat(); + /** + * 获取车身定位经度 + * @return + */ double getLastLon(); + /** + * 结束自动驾驶 + */ void cancelAutopilot(); }