Android位置和Google设置

时间:2013-02-27 13:11:49

标签: android google-maps android-maps google-maps-android-api-2

所以我使用自己的掌上电脑设备开发这个应用程序已经有几个星期了,今天我试图将Google地图置于我应用中当前用户位置的中心位置

map.setMyLocationEnabled(true); //Locate the current position of the user

上面的setLocationEnabled(true)通常应该在地图上显示用户的位置,当按下GPS按钮时,它将放大它。然而,在我添加以下代码之后,这不再起作用,它不再显示用户的位置,我也注意到“Google设置”已经安装到我的设备上,之后环顾四周是谷歌的更新,所以它可能不会代码本身。但我不知道谷歌设置是否是原因。

LocationManager service = (LocationManager) getSystemService(LOCATION_SERVICE);
    Criteria criteria = new Criteria();
    String provider = service.getBestProvider(criteria, false);
    Location location = service.getLastKnownLocation(provider);
    LatLng userLocation = new LatLng(location.getLatitude(),location.getLongitude());
    map.moveCamera(CameraUpdateFactory.newLatLngZoom(userLocation, 15));

即使在评论出这段代码之后,问题仍然存在。我不知道如何解决这个问题,我希望有人可以帮助我。我不确定这是否与代码本身或仅仅是我的设备有关,它实际上根本没有获得用户的位置,即使它在过去几周工作并且它没有给出任何错误或警告即使按下地图上的GPS按钮,也不会出现任何错误或警告。

编辑:我尝试使用我的代码的较旧工作版本用于此应用程序,它仍然无法使用户位置出现在地图上。

感谢。

1 个答案:

答案 0 :(得分:0)

为什么你不使用:

map.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(map.getMyLocation().getLatitude(),map.getMyLocation().getLongitude()), 15));

地图会存储您的实际位置,因此您不需要LocationManager课程。