提交 4ef29091 authored 作者: 张国庆's avatar 张国庆

增加计算2点距离

上级 284d2f06
...@@ -7,6 +7,8 @@ import com.amap.api.location.AMapLocation; ...@@ -7,6 +7,8 @@ import com.amap.api.location.AMapLocation;
import com.amap.api.location.AMapLocationClient; import com.amap.api.location.AMapLocationClient;
import com.amap.api.location.AMapLocationClientOption; import com.amap.api.location.AMapLocationClientOption;
import com.amap.api.location.AMapLocationListener; import com.amap.api.location.AMapLocationListener;
import com.amap.api.location.CoordinateConverter;
import com.amap.api.location.DPoint;
import java.util.Map; import java.util.Map;
...@@ -58,6 +60,18 @@ public class AMapLocationClientImpl implements AMapLocationListener { ...@@ -58,6 +60,18 @@ public class AMapLocationClientImpl implements AMapLocationListener {
} }
public static float calculateDistance(double lat1, double lon1, double lat2, double lon2) {
DPoint dPoint1 = new DPoint();
dPoint1.setLatitude(lat1);
dPoint1.setLongitude(lon1);
DPoint dPoint2 = new DPoint();
dPoint2.setLatitude(lat2);
dPoint2.setLongitude(lon2);
return CoordinateConverter.calculateLineDistance(dPoint1, dPoint2);
}
/** /**
* 停止定位 * 停止定位
*/ */
...@@ -70,11 +84,12 @@ public class AMapLocationClientImpl implements AMapLocationListener { ...@@ -70,11 +84,12 @@ public class AMapLocationClientImpl implements AMapLocationListener {
} }
public void destroy() { public void destroy() {
if(null != locationClient) { if (null != locationClient) {
locationClient.onDestroy(); locationClient.onDestroy();
locationClient = null; locationClient = null;
} }
} }
/** /**
* 定位回调 * 定位回调
* *
......
...@@ -54,6 +54,11 @@ class AMapFlutterLocation { ...@@ -54,6 +54,11 @@ class AMapFlutterLocation {
_methodChannel.invokeMethod('stopLocation', {'pluginKey': _pluginKey}); _methodChannel.invokeMethod('stopLocation', {'pluginKey': _pluginKey});
return; return;
} }
///计算2点之间的距离
Future<double> calculateDistance(double lat1, double lon1, double lat2, double lon2) async {
double result = await _methodChannel.invokeMethod('calculateDistance', {'lat1': lat1, 'lon1': lon1, 'lat2': lat2, 'lon2': lon2});
return result;
}
///设置Android和iOS的apikey,建议在weigdet初始化时设置<br> ///设置Android和iOS的apikey,建议在weigdet初始化时设置<br>
///apiKey的申请请参考高德开放平台官网<br> ///apiKey的申请请参考高德开放平台官网<br>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论