Articles of android maps v2

使用地理编码器和Android Google Maps API v2获取经度和纬度

我正在使用Google Maps API v2 for android并且正常运行。 但是,我正在尝试使用地理编码器来获取地址的经度和纬度,但没有成功。 它改变了从v2做到这一点的方式? 我正在使用传统的代码 Geocoder gc = new Geocoder(context); //… List list = gc.getFromLocationName(“1600 Amphitheatre Parkway, Mountain View, CA”, 1); Address address = list.get(0); double lat = address.getLatitude(); double lng = address.getLongitude(); //… 始终返回强制关闭,Log不解决任何问题。 当使用try / catch块时,打开地图但总是使用相同的位置使用Internet权限,我已经包含在项目中COARSE_LOCATION我已经使用了位于此处和其他站点的各种代码,但没有成功。 先谢谢你。

如何在Android Map v2上更改标记的位置

我需要做以下事情:我在地图上有一个标记,我需要改变它的位置。 所以我尝试了以下内容: MarkerOptions a = new MarkerOptions() .position(new LatLng(50,6))); map.addMarker(a); a.position(new LatLng(50,5)); 其中map是GoogleMap 。 我想我必须刷新地图或平等吗?

如何提高Android地理围栏进入/退出通知的一致性?

我正在使用内置的地理围栏API(播放服务)并且结果好坏参半。 看起来在设置地理围栏之后,即使GPS打开,进入/退出的通知也非常不一致,并且具有最新位置(LocationClient已连接,在后台运行。)我开始监控(轮询)位置更改和调试文本字段中的距离,并且即使基于设备注册的位置和地理围栏的位置(我在技术上在地理围栏的内部/外部),通常有时会触发通知,有时也不会。 有什么方法可以让它更具可预测性? 我几乎想要放弃这个api并根据设备位置的轮询实现我自己的(电池耗尽)地理围栏。

在LatLngBounds构建器上设置最大缩放级别

我的搜索中没有find答案,有几个答案,但它们对我不起作用。 我在地图上有2个标记,我正在使用LatLngBounds构建器,以便让相机缩放到正确的缩放级别以包含它们。 一切都按预期工作,除了一件事,当2个标记真的很接近时,地图非常非常放大,很好,这种缩放水平没有任何意义。 LatLngBounds.Builder builder = new LatLngBounds.Builder(); builder.include(firstMarker.getPosition()); builder.include(secondMarker.getPosition()); LatLngBounds bounds = builder.build(); CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(bounds, markerPadding); 有没有办法强制一定程度的变焦,之后相机不会变焦? 这样可以避免地图放大/缩小。 基本上我使用15.0f作为缩放级别。 如果点太远,我希望变焦适合它们。 如果点越来越近,我不希望缩放级别超过15.0f。

是什么让我的地图片段加载缓慢?

绩效提升: 以前我将所有图像保存在drawable文件夹中,这可能是地图首次加载缓慢的原因,当在屏幕上绘制标记时,图像可能不适合屏幕大小。 现在我将图像保存在drawable-mdpi , drawable-hdpi等中,应用程序比以前更顺畅。 希望能帮助到你 原始问题: 我在片段中创建了一个地图,源代码可以在下面find。 第一次加载时,地图片段缓慢。 如果我去任何其他片段并再次单击地图片段,它将加载快速并且不再有slug。 谁能告诉我这里发生了什么? 谢谢! fragment_map.xml,id是map MyMapFragment.java(包含onCreateView和setUpMapIfNeeded ) @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { try { rootView = inflater.inflate(R.layout.fragment_map, container, false); } catch (InflateException e) { /* map is already there, just return view as it is */ Log.e(TAG, “inflateException”); } setUpMapIfNeeded(); return rootView; […]

单击android map v2后不要捕捉到标记

目前,Android Map v2会在点击后捕捉到标记位置。 我想禁用此行为,但看不到任何选项。 有人知道如何解决这个问题吗?

在DialogActivity中使用时,MapFragment会获得深色叠加

我正在尝试使用@android:style/Theme.DeviceDefault.Light.Dialog.NoActionBar主题在Activity显示Android Maps v2 API的@android:style/Theme.DeviceDefault.Light.Dialog.NoActionBar 。 这很好用。 但是,地图会出现黑暗叠加层: 当我将主题更改为@android:style/Theme.DeviceDefault.Light.NoActionBar ,地图显示为它应该: 这是我的xml布局文件: 这里发生了什么?

Android中的’debug.keystore’和’release.keystore’有什么区别?

最近,我正在使用Android Maps V2。 我遇到了debug.keystore和release.keystore 。 它们之间有什么区别? 为什么我们必须同时使用?

在旋转和背面恢复MapView的状态

背景 我有一个更大的应用程序,我有新的谷歌地图API的几个问题。 我试图用不同的问题描述它,但由于它看起来太复杂,我决定开始一个新项目,尽可能简单并尝试重现问题。 所以在这里。 情况 我正在使用Fragments并希望将MapView放入其中。 我不想使用MapFragment 。 我准备的示例项目可能不是很漂亮,但我试图让它尽可能简单,它必须包含原始应用程序中的一些元素(再次简化)。 我有一个Activity和我的自定义Fragment with MapView以编程方式添加。 Map包含一些点/ Markers 。 单击Marker ,显示InfoWindow并单击它会导致在内容中显示下一个Fragment (带有replace()函数)。 问题 我有两个问题: 当显示带Markers的Map ,屏幕旋转导致Class not found when unmarshalling使用我的自定义MyMapPoint类Class not found when unmarshalling错误时MyMapPoint类 – 我不知道为什么以及它意味着什么。 我单击Marker然后单击InfoWindow 。 在此之后我按下硬件后退按钮。 现在我可以看到Map但没有Markers并且以0,0点为中心。 代码 主要活动 public class MainActivity extends FragmentActivity { private ArrayList mPoints = new ArrayList(); @Override protected void onCreate(Bundle savedInstanceState) […]

mapFragment.getMapAsync(this) – NullPointerException

我正在使用com.google.android.gms:play-services-maps:7.5.0版Google地图服务。 当试图调用下面的内容时,我得到java.lang.NullPointerException: Attempt to invoke virtual method ‘void com.google.android.gms.maps.SupportMapFragment.getMapAsync(com.google.android.gms.maps.OnMapReadyCallback)’ on a null object reference 。 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { SupportMapFragment mapFragment = (SupportMapFragment) getActivity().getSupportFragmentManager() .findFragmentById(R.id.map); mapFragment.getMapAsync(this); //error return inflater.inflate(R.layout.fragment_example_map, container, false); } fragment_example_map.xml文件: