HMS Map Kit-聚类

HMS Map Kit - Clustering

我想将 Google 地图功能迁移到 HMS。大多数部分很容易迁移到华为,但我有集群功能,我使用 ClusterItemClusterManagerDefaultClusterRenderer 我的 GoogleMap 显示集群如果地图上有很多标记,则将标记作为一个标记。

HMS 中缺少此功能。我找到了 MarkerHWMarkerCluster,但它完全不同的系统和 HWMarkerCluster 甚至在为 Android 导入的 类 选项中都找不到。仅针对 Javascript API.

找到

如果HMS有其他选择,有什么建议吗?因为我正在阅读 Map Kit 文档一个小时,但我找不到任何东西。

这是标记集群的文档。 https://developer.huawei.com/consumer/en/doc/development/HMS-Guides/hms-map-drawonthemap#h2-1586915875534

它适用于少量标记。 只需添加 .clusterable(true)

或者,您可以使用我为聚类创建的库,它可以无延迟地渲染 10,000 个标记。

https://github.com/hunterxxx/huawei-map-clustering

Clustering的功能,可以参考@的文档。我还想添加一个有用的工具,它基于Google的开源工具,适配华为地图集群管理器。建议集成该工具对标记进行聚类

用法:

  1. 打开Gradle,点击library->Tasks->build ->assemble.
  2. 在 运行 之后,在 library/build/outputs/aar/ 路径中找到来自 Github 的 3rd-maps-utils-2.1.0-yyyyMMdd.aar 文件。
  3. 将 3rd-maps-utils-2.1.0-yyyyMMdd.aar 文件复制到您自己的 app/libs/ 路径。
  4. 在项目 build.gradle 文件中添加以下代码。
allprojects {
       repositories {
              ...
              flatDir {
                     dirs 'libs'
              }
       }
}
  1. 在应用 build.gradle 文件中添加以下代码。
dependencies {
    implementation(name: '3rd-maps-utils-2.1.0-yyyyMMdd', ext: 'aar')
    ...
}