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 アプリケーションでマップを表示するには、基本的に 2 つの方法があります。マップ サーバーに HTTP リクエストを送信する方法は、1つのマップ イメージのみが必要な場合に最適です。マップを更新するたびに、より多くのネットワーク トラフィックが必要になるためです。一連の画像が必要な場合、カスタム マーカーを追加する場合、またはマップを動的に更新する場合は、タイル サーバーを使用してマップ タイルをキャッシュし、その上にオブジェクトをオーバーレイする専用ライブラリを使用する方がはるかに優れています。この背後にある理由はここで説明されています

私がお勧めするダイナミック マッピング ライブラリはHERE Maps API for Java MEです。名前からわかるように、この API は特に Java ME デバイスで動作するように設計されています。

API は現在、Nokia Asha SDK 1.0 にバンドルされていますが、実際には別の独立したプラグインであり、標準の Java ME デバイスのすべてで動作するように設計されています。

ここで回答された同様のスタック オーバーフローの質問では、ダウンロード方法について説明しています。

マップ上にマーカーを表示するコードは、開発者ガイドに記載されています

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);

所属のお知らせとして、私は Nokia で働いていることをついでに言及しておきます。

于 2013-06-25T09:06:04.737 に答える