0
String url = "http://maps.google.com/maps/api/staticmap";url
           += "?zoom=13&size=" + width + "x" + height;url
           += "&maptype=roadmap";url
           += "&markers=color:red|label:A|"
           + lat
           + ","
           + lon; url
           += "&sensor=true";

我的第一次尝试是获取带有我的中心位置和缩放级别的静态地图,它有效,但是当我向 URL 添加标记时,我得到的是相同的图像但没有标记。

我在 Google Map API Doc 中做的完全一样,但我不知道出了什么问题。

有没有其他方法可以在 j2me 应用程序中显示地图?

4

1 回答 1

0

在 Java ME 应用程序中显示地图基本上有两种方法。您向地图服务器发出 HTTP 请求的方法最适合您只需要一张地图图像的情况。由于每次地图更新都需要更多的网络流量。如果您需要一系列图像、添加自定义标记或想要动态更新地图,最好使用使用切片服务器的专用库,缓存您的地图切片并在其上覆盖对象。这里描述了这背后的原因

我推荐的动态映射库是HERE Maps API for Java ME,正如您可以从名称中看出的那样,该 API 专门设计用于 Java ME 设备。

该 API 目前与诺基亚 Asha SDK 1.0 捆绑在一起,但尽管如此,它实际上是一个单独的独立插件,旨在与所有标准 Java ME 设备配合使用。

此处回答的类似 Stack Overflow 问题描述了如何下载它。

在地图上显示标记的代码可以在开发者指南中找到

map.setState(new MapDisplayState(new GeoCoordinate(51.477, 0.0, 0), 15));

MapStandardMarker marker = mapFactory.createStandardMarker(
        new GeoCoordinate(51.477, 0.0, 0), 10, "Hi!", 
        MapStandardMarker.BALLOON);
marker.setColor(0xFFFF0000);  // Color is red
map.addMapObject(marker);

作为隶属关系的通知,我应该顺便提一下,我确实为诺基亚工作。

于 2013-06-25T09:06:04.737 回答