java - 将大 KML 文件加载到 Google map 中

标签 java android google-maps google-maps-api-3 kml

我有一个非常大的 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/

相关文章:

java - 我如何知道守护进程是否从不同的线程停止

android - 无法解析配置 ':_armv7DebugCompile' 的所有依赖项

android - 如何在android中使用ormlite对外键执行级联删除

java - 当标记 android studio 触发时,如何获取我保存在 firebase 中的数据 latlng

android - 如何使用 new places sdk for android 查找附近的地方?

java - Spring 请求映射与正则表达式如 javax.ws.rs

javascript - JavaScript、Websockets 和 Java 的组合

没有 GUI 的 java 配置文件工具

android - coordinatorlayout 中的 actionbar 和布局相互重叠

javascript - 选择 JavaScript 数组中的最后一个元素