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

增加计算2点距离

上级 284d2f06
......@@ -7,6 +7,8 @@ import com.amap.api.location.AMapLocation;
import com.amap.api.location.AMapLocationClient;
import com.amap.api.location.AMapLocationClientOption;
import com.amap.api.location.AMapLocationListener;
import com.amap.api.location.CoordinateConverter;
import com.amap.api.location.DPoint;
import java.util.Map;
......@@ -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 {
}
public void destroy() {
if(null != locationClient) {
if (null != locationClient) {
locationClient.onDestroy();
locationClient = null;
}
}
/**
* 定位回调
*
......
......@@ -54,6 +54,11 @@ class AMapFlutterLocation {
_methodChannel.invokeMethod('stopLocation', {'pluginKey': _pluginKey});
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>
///apiKey的申请请参考高德开放平台官网<br>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论