MULTISOUP

MULTISOUP

MULTISOUP

Staff Blog

Introduction example

2017.11.25

Google Maps API 用 JAVAライブラリ

JAVAライブラリ

みなさん、こんにちは。

Google Maps Geocodeing API や Directions API  などを JAVAで利用する時に便利なライブラリがあるのはご存知ですか?

実は、Google社から GitHubで公開されています!

https://github.com/googlemaps/google-maps-services-java

 

今回は、こちらのライブラリの使い方を解説していきたいと思います。

対象となるAPIは以下の7個になります。

API 説明
Directions API 2点間のルート(ノード座標、ルート距離、所要時間)を取得します。
Distance Matrix API N 対 N のルート距離、所要時間を一括で取得します。
Elevation API ある地点の標高を取得します。
Geocoding API 住所から緯度経度、緯度経度から住所を取得します。
Places API Google が所有する施設などの情報を取得します。
Roads API GPSなどで取得した位置情報を道路上にマッピングした緯度経度を取得します。
Time Zone API ある地点のタイムゾーン(時差)を取得します。

 

上記ライブラリを JAVA で利用するために、Maven または Gradle でライブラリを読み込む設定を行います。最新のバージョンは「0.2.5」のようです。

MAVENの場合

<dependency>
    <groupId>com.google.maps</groupId>
    <artifactId>google-maps-services</artifactId>
    <version>0.2.5</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-nop</artifactId>
    <version>1.7.25</version>
</dependency>

 

Gradle の場合

repositories {
    mavenCentral()
}
dependencies {
    compile 'com.google.maps:google-maps-services:0.2.5'
    compile 'org.slf4j:slf4j-nop:1.7.25'
}

 

 

では、実際のプログラム方法を解説します。

まず最初に認証を行い、 GeoApiContext を生成します。この処理は、各APIで共通となります。

 

GeoApiContext の生成

//APIキーを使用する場合(スタンダードプラン用)
GeoApiContext context = new GeoApiContext.Builder()
    .apiKey({API_KEY}).build();
//クライアントIDとクリプトキーを使用する場合(プレミアムプラン用)
GeoApiContext context = new GeoApiContext.Builder()
    .enterpriseCredentials({クライアントID},  {クリプトキー}).build();

 

Geocoding API

GeocodingResult[] results = GeocodingApi.geocode(context, "東京都千代田区神田錦町3-11").await();

 

Directions API

LatLng origin= new LatLng(35.6, 139.6);
LatLng destination = new LatLng(35.7, 139.7);

DirectionsResult result = DirectionsApi.newRequest(context)
    .origin(origin)
    .destination(destination)
    .mode(TravelMode.DRIVING)
    .await();

 

Distance Matrix API

LatLng[] origins = new LatLng[2];
origins[0] = new LatLng(35.7, 139.7);
origins[1] = new LatLng(35.6, 136.6);

LatLng[] destinations = new com.google.maps.model.LatLng[2];
destinations [0] = new LatLng(35.8, 139.8);
destinations [1] = new LatLng(35.9, 136.9);

DistanceMatrix result = DistanceMatrixApi.newRequest(context)
    .origins(origins)
    .destinations(destinations)
    .mode(TravelMode.DRIVING)
    .await();

 

 

 

いかがでしょうか?

このように簡単なプログラムで 各 API を実行することができますので、私もよく利用しています!

ライブラリのクラスリファレンス 

 

ライブラリはその他にも、Python、Node.js、Go 言語用もあります。以下のサイトでご確認ください。

https://github.com/googlemaps

 

ではまた~。

 

【関連記事】こんな記事も読まれています

2016.06.22

山梨県立富士山世界遺産センター公式アプリ「ふじめぐり」

みなさん こんにちは!

本日(6/22)、山梨県立富士山世界遺産センターが開館しました!

今回は富士山世界遺産センターと「・・・

続きを読む

2017.11.05

JavaScript APIでカスタムコントロールを試す

みなさん、こんにちは。

Google Maps JavaScript API を使用して地図を表示し、地図上に検索用のテキストボックスを置・・・

続きを読む

2017.07.19

「関東一の祇園・熊谷うちわ祭り」の山車・屋台位置情報サイト公開!

みんさん、こんにちは!

暑い夏をいかがお過ごしですか?今回は、前回記事の山笠に引き続き、夏祭りネタにです^^

 ・・・

続きを読む

 - Google Maps APIs, Google Maps Directions API, Google Maps DistanceMatrix API, Google Maps Elevation API, Google Maps Geocoding API, Google Maps Roads API, Google Maps TimeZone API, Google Places API, スタッフ日記

お問い合わせお見積もりから開発のご相談まで、お気軽にお問い合わせください。

(※)は入力必須項目です。

当社では、お客様がお問い合わせの際に必要な個人情報または、 お問い合わせ内容等につきましては、
お問い合わせの回答の目的のみに利用します。

Google Maps for Work™に関するご質問やお見積りは、
マルティスープまでお気軽にお問い合わせください03-3518-9013 (受付時間:平日 9:00−18:00)