Articles of google maps android api 2

在Android应用程序中使用GeoServer中的getTileURL

我们刚刚开始使用Android上的Google地图,并且已经设置GeoServer来提供我们想要在地图上添加叠加层的图块。 到目前为止,我已经遵循了几个教程和参考开始。 获取MyLocation 在Android上设置WMS WMS参考 问题 :虽然我在TileProviderFactory的getTileUrl函数中生成的url确实会返回一个png图像,但是当我设置断点并将其复制并粘贴到浏览器中时,它不会作为覆盖层载入到地图上Android设备。 从我所能看到的内容中没有发现任何错误,在阅读完本文之后,我不确定是否会有任何错误,因为他们已经指出错误正在被消除。 我想知道的是,如果你能看到我的代码中的任何直接的问题,或者有任何的debuggingbuild议,我将能够判断应用程序是否真正与我的GeoServer通信来检索图像。 我查看了GeoServer上的日志,看起来好像只有我的浏览器请求正在通过,并没有收到来自Android的任何请求(这是有点难以分辨,因为我们有其他的应用程序也使用服务器)。 Android手机通过WiFi和手机连接,并启用了GPS。 作为最后的手段,我已经尝试改变贴图叠加zIndex并将其设置为可见,但这似乎没有任何区别。 编辑:在这一点上,Android设备绝对不与GeoServer通信。 编辑2:能够加载静态图像从网站(像这样 )作为覆盖,发现我得到了以下例外testingHTTP请求到形成的URL: W/System.err(10601): java.net.SocketException: The operation timed out W/System.err(10601): at org.apache.harmony.luni.platform.OSNetworkSystem .connectStreamWithTimeoutSocketImpl(Native Method) W/System.err(10601): at org.apache.harmony.luni.net.PlainSocketImpl .connect(PlainSocketImpl.java:244) W/System.err(10601): at org.apache.harmony.luni.net.PlainSocketImpl .connect(PlainSocketImpl.java:533) W/System.err(10601): at java.net.Socket .connect(Socket.java:1074) W/System.err(10601): at org.apache.http.conn.scheme.PlainSocketFactory .connectSocket(PlainSocketFactory.java:119) 谢谢。 MapTestActivity public class MapTestActivity extends FragmentActivity implements LocationListener, LocationSource{ private GoogleMap mMap; […]

在Android谷歌地图中绘制4K多段线

我正在开发Android设备的应用程序。 主要function是在地图上绘制多段线,以显示每条街道上城市的交通情况。 不幸的是,当我绘制3K多段线时,根据屏幕大小和缩放级别缩小数量 – 我的地图变得非常慢…我没有提及绘制所有线条的时间。 也许你知道更有效的方法来标记街道或在地图上画线? 我也在考虑切换到OSM,但我从来没有使用它,我不知道它有多高效。 我在Samsung Galaxy Note 10.1上debugging应用程序,App使用Map API v2 我的代码绘制多段线: Polyline line; List<Float> coordinatesStart; List<Float> coordinatesEnd; LatLng start; LatLng end; List<List<Float>> coordinates; int polylinesNumber = 0; for(Features ftr : features){ coordinates = ftr.geometry.coordinates; for(int i = 0; i<coordinates.size()-1; i++){ coordinatesStart = coordinates.get(i); coordinatesEnd = coordinates.get(i+1); start = new LatLng(coordinatesStart.get(1), coordinatesStart.get(0)); end […]

毕加索图片加载问题在GoogleMap.InfoWindowAdapter

我正在使用Google Maps Api,并希望在单击标记时在InfoWindow中显示图像。 我实现了它,但毕加索有一个问题。 当我点击一个标记,infoWindow显示出来,imageView显示占位符图像。 如果我再次点击同一个标记,毕加索成功加载图像。 我必须点击两次,太奇怪了。 截图更好的理解: 首先点击标记: 当我再次点击时: 有我的代码如下: InfoWindowAdapter(毕加索载入中) mMap.setInfoWindowAdapter(new GoogleMap.InfoWindowAdapter() { @Override public View getInfoWindow(Marker marker) { return null; } @Override public View getInfoContents(Marker marker) { View myContentsView = getLayoutInflater().inflate(R.layout.map_info_content, null); ImageView imageView = (ImageView) myContentsView.findViewById(R.id.imgView_map_info_content); Picasso.with(MainActivity.this) .load(marker.getSnippet()) .placeholder(R.drawable.ic_placeholder) .into(imageView); return myContentsView; } }); 设置标记(使用片段传递图像url) for (MediaFeedData item : mItemList) { […]

Google Play上的Android Studio:缺lessGoogle Play服务

我使用的是Ubuntu 14,Android Studio 0.8.6。 我使用Genymotion来运行应用程序,我得到的回应是: W/GooglePlayServicesUtil﹕ Google Play services is missing. 尝试了在Android Studio中导入Google Play服务库的解决scheme,也是从Android Studio和Google Play服务中导入的 。 从Android SDKpipe理器安装了以下软件包:Android支持库,Android支持库,Google Play服务,Google Repository。 我正在尝试运行Android Studio默认活动(地图活动)。 这是清单文件: <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MapsActivity" android:label="@string/title_activity_maps" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="@string/google_maps_key" /> </application> <uses-permission android:name="android.permission.INTERNET" /> […]

Google Maps Utility:如何从ClusterManager获取所有标记<?>?

对不起我的英语不好 我尝试了ClusterManager<?>.getMarkerCollection().getMarkers()方法,但它返回空集合。 我在我的应用程序Google Maps Utility Library 。 每次屏幕旋转后,我创buildAsynkTask并在后台线程从数据库读取数据,并添加项目到ClusterManager : cursor.moveToFirst(); while (!cursor.isAfterLast()) { SomeData row = readSomeDataRow(cursor); clusterManager.addItem(new ClusterItemImpl(row)); cursor.moveToNext(); } 当AsyncTask完成其工作(即在主线程中)时,我尝试从ClusterManager获取所有标记: clusterManager.cluster(); // cluster manager returns empty collection \|/ markers = clusterManager.getMarkerCollection().getMarkers(); 但是ClusterManager返回空集合。 可能在我调用getMarkers()的那一刻, ClusterManager却没有在地图上放置标记,稍后会做(可能在后台线程中)。 如果是这样的话,那我该怎么抓住那一刻呢?

使用android融合位置API,MyLocation上不显示蓝点和圆圈

我正在使用LocationManager来跟踪用户当前位置,现在,在将位置pipe理器更改为FusedLocation API后,即使在设置了map.setMyLocationEnabled(true)之后,也不会显示蓝点和圆圈。 我可以看到地图片段右上angular的当前位置图标,但点击它却什么都不做。 我将代码恢复到了LocationManager,现在我能够看到指向我当前位置的蓝点。 使用Fused Location API会出现什么问题?

Android Maps ClusteredMarkers – 不显示非集群?

我从这里使用Google Maps Android标记集群实用程序,并从我的服务器收到的列表中添加一堆项目(约700)。 我已经解决了最初的错误,我可以看到这些簇,然后放大它们,看到它们变成了单独的标记。 但是,有一些项目与其他项目相距甚远,所以即使在最大限度缩小的情况下,它们也绝不会聚集在一起。 出于某种原因,这些项目不会显示在我的地图上 – 不是当我放大时,而不是当我缩小。 我已经检查了坐标,他们是真实的,在我开始使用集群之前,我可以看到这些项目没有问题,所以我假设我在集群代码中做了一些错误。 这里是一些代码: private void setUpClusterer() { // Initialize the manager with the context and the map mClusterManager = new ClusterManager<>(getActivity(), map); vendorRenderer = new VendorRenderer(); mClusterManager.setRenderer(vendorRenderer); mClusterManager.setOnClusterClickListener(this); mClusterManager.setOnClusterItemClickListener(this); //point the maps listeners at the listeners implemented by the cluster manager map.setOnCameraChangeListener(mClusterManager); map.setOnMarkerClickListener(mClusterManager); //add items to the cluster […]

带有GPS语音指示的Android应用程序

我正在尝试为Android创build一个旅游应用程序。 我需要用户以语音为导向。 我一直在看googlemaps Android API但没有关于语音方向。 你知道这个解决方法吗? 有没有其他的API / SDK可以用来实现? 提前致谢。

如何在谷歌地图上显示MarkerIcon和标题,就像Google Apps一样?

当我在Google Maps Android应用程序中find最近的餐馆时,餐厅名称默认显示在标记图标附近。 (请参阅Google图片)。 但在我的应用程序中,当我search最近的餐馆时,我需要做同样的事情,我只能显示标记图标。 (请参阅我的应用程序图像)。 谷歌图片: 我的应用图片: 部分解决scheme:在这里我find了部分解决scheme,我们通过使用canvas绘制文本来获得这个。 我用下面的代码引用这些链接在这里和这里,但canvas绘图切割我的文字。 请参阅附加图像TextDrawn图像 Marker myLocMarker = map.addMarker(new MarkerOptions() .position(myLocation) .icon(BitmapDescriptorFactory.fromBitmap(writeTextOnDrawable(R.drawable.bluebox, "your text goes here")))); private Bitmap writeTextOnDrawable(int drawableId, String text) { Bitmap bm = BitmapFactory.decodeResource(context.getResources(), drawableId) .copy(Bitmap.Config.ARGB_8888, true); Paint paint = new Paint(); paint.setStyle(Paint.Style.FILL); paint.setColor(Color.BLACK); paint.setTextAlign(Paint.Align.CENTER); paint.setLinearText(true); paint.setAntiAlias(true); paint.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD)); paint.setTextSize(35); Rect textRect = new Rect(); paint.getTextBounds(text, 0, […]

谷歌地图API中的标记的GIFtypes的animationANDROID

我想要实现一个标记animation,如GIFanimation。 我有两个应该同时闪烁的图像。 我没有发现任何可以实现这一点在Android中。 我试图做的是,创build一个每1秒运行的处理程序,并且我正在设置标记的图标。 但它不起作用。 请引导我正确的方向。 我现在的代码如下。 Handler handler = new Handler(); Boolean marker_color_bool = true; //adding marker and sending the marker instance to marker_animation() method where handler is called. MarkerOptions marker = new MarkerOptions() .title(delivery_center_name) .snippet("This is the " + delivery_center_name + " location") .position(location) .icon(BitmapDescriptorFactory.fromResource(R.drawable.red_marker)); google_map.addMarker(marker); marker_animation(marker); marker_animation()方法 private final int ONE_SECONDS = […]