【发布时间】:2016-12-12 10:20:26
【问题描述】:
我正在尝试获取我的 android 手机的当前位置并将其显示在地图上。它适用于另一台设备,但如果我的设备的 GPS 已打开,我的设备仅显示世界地图。这是我的代码:
if(locationManagerCheck .isLocationServiceAvailable()){
if (googleMap == null) {
try {
googleMap = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
} catch (Exception e) {
Toast.makeText(getApplicationContext(),
e.getMessage(), Toast.LENGTH_SHORT)
.show();
}
if (googleMap == null) {
Toast.makeText(getApplicationContext(),
"Harita oluşturulamadı", Toast.LENGTH_SHORT)
.show();
} else {
googleMap.setMyLocationEnabled(true);
googleMap.setOnMyLocationChangeListener(new GoogleMap.OnMyLocationChangeListener() {
@Override
public void onMyLocationChange(Location location) {
double latitude = location.getLatitude();
double longitude = location.getLongitude();
LatLng latLng = new LatLng(latitude, longitude);
googleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng, 15));
googleMap.setOnMyLocationChangeListener(null);
// MarkerOptions marker = new MarkerOptions().position(new LatLng(latitude, longitude)).title("Konumunuz");
//marker.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_YELLOW));
//googleMap.addMarker(marker);
}
});
}}
}else{
locationManagerCheck .createLocationServiceError(Anasayfa.this);
}
请指导。
【问题讨论】:
-
您的手机操作系统版本是多少? 6.0或以上?
-
我的手机是6.0,我在4.4上试过,它可以找到位置,但在我的手机上只显示地图
-
对于 Android 6,您必须在运行时请求权限。
-
感谢它与运行时权限一起使用 :)