[英]Google Maps Android API v2 and current location
我正在使用JellyBean 4.2并在设备上进行测试。
单击myLocationButton时如何获取当前位置。
使用网络提供程序时,getMYLocation返回null。
我正在使用LocationManager获取当前位置,并参考Google文档https://developers.google.com/maps/documentation/android/start 。
在此之后,单击MyLocatiionButton不会带来任何更改
您需要将LocationSource添加到地图片段。 请参阅此答案作为一个单独的示例。
清单中是否设置了所有权限? 另外,您必须启用定位服务(状态栏中的gps图标是否显示?)。 设备需要一些时间来获取位置,因此请查看是否调用了onLocationChanged。
使用此代码ID可以正常工作。
private LocationManager locationManager;
private Location location;
private boolean hasGpsProvider, hasNetwrokProvider;
public Location getLocation(Context mContext) {
if (locationManager == null) {
locationManager = (LocationManager) mContext
.getSystemService(Context.LOCATION_SERVICE);
}
hasGpsProvider = locationManager
.isProviderEnabled(LocationManager.GPS_PROVIDER);
hasNetwrokProvider = locationManager
.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
if (hasGpsProvider) {
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER, 0, 100, locationListenerGps);
location = locationManager
.getLastKnownLocation(LocationManager.GPS_PROVIDER);
return location;
}
if (hasNetwrokProvider) {
locationManager.requestLocationUpdates(
LocationManager.NETWORK_PROVIDER, 0, 100,
locationListenerNetwork);
location = locationManager
.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
return location;
}
return location;
}
并致电
if (location != null) {
lat = location.getLatitude();
lng = location.getLongitude();
}
基本上,您应该做的是调用Google Directions API以获取道路坐标(许多Latlng点),然后在它们之间绘制一条折线。
U可以使用overview_polyline或腿和台阶。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.