Google Directions API は、2012 年 7 月 27 日以降 KML データの提供を停止しました。そのため、開発者は JSON またはXML形式
JSON:
JSON データを解析するには、次の 6 つのクラスを作成できます:
Parser.java: のインターフェースを定義します。 parsing.
XMLParser.java: XML 解析の基本クラスを提供します。
Segment.java: ルートのセグメントを表します。
Route .java: 全体を表しますRoute.
GoogleParser.java: Google JSON データを解析します。
RouteOverlay.java: 地図オーバーレイ上にルートを描画します。
XML:
または、XML を使用することもできます解析のために、GoogleParser.java を次のものに置き換えます:
XMLParser.java: Google XML データを解析します。
これらのクラスを使用するには、次のクラスを作成できます。コード:
private Route directions(GeoPoint start, GeoPoint dest) { Parser parser; String jsonURL = "https://developers.google.com/maps/documentation/directions/#JSON"; // API URL StringBuffer sBuf = new StringBuffer(jsonURL); sBuf.append("?origin="); sBuf.append(start.getLatitudeE6()/1E6); sBuf.append(','); sBuf.append(start.getLongitudeE6()/1E6); sBuf.append("&destination="); sBuf.append(dest.getLatitudeE6()/1E6); sBuf.append(','); sBuf.append(dest.getLongitudeE6()/1E6); sBuf.append("&sensor=true&mode=driving"); parser = new GoogleParser(sBuf.toString()); Route r = parser.parse(); return r; }
次に、次のコードを onCreate() 関数に追加します:
MapView mapView = (MapView) findViewById(R.id.mapview); Route route = directions(new GeoPoint((int)(26.2*1E6),(int)(50.6*1E6)), new GeoPoint((int)(26.3*1E6),(int)(50.7*1E6))); RouteOverlay routeOverlay = new RouteOverlay(route, Color.BLUE); mapView.getOverlays().add(routeOverlay); mapView.invalidate();
以上がGoogle Directions API が KML データの提供を停止したのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。