我有一个非常大的 KML 文件(大约 600mb)数据压缩在一个 20mb KMZ 文件中。此数据表示 map 中的点,每个点都是圣保罗市内的一棵树。我正在尝试在 Android 应用程序中重写这张 map ,使用 Google Maps API
并尝试将 KmlLayer
加载到其中。
问题是:Google Maps API 只接受最大尺寸的 KML 文件,<10MB。
我尝试通过使用将 KMZ 加载到 map 中
layer = new KmlLayer(mMap, R.raw.map_arvores, getApplicationContext());
以下包提供的实用程序:
com.google.maps.android:android-maps-utils:0.4.4
但是完全没有成功, map 显示正确,但是 KMZ 中存在的绿点没有加载到 map 中。
如何将大型 KML/KMZ 文件加载到 Google Maps API map 中?
最佳答案
Google map 中的 KML 大小有限制。文件(KML 或 KMZ)不能大于 3MB,如果是 KMZ,未压缩的 KML 不能大于 10MB。 KML 中也有 1000 个要素的限制。此处提供更多详细信息: https://developers.google.com/maps/documentation/javascript/kmllayer#restrictions
您可能需要考虑将数据子集提供给 map 的选项,或者通过地理拆分并针对缩小 View 细化数据,或者在缩小时使用某种聚类。
关于java - 将大 KML 文件加载到 Google map 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44794448/