{"id":11620,"date":"2016-02-23T18:16:07","date_gmt":"2016-02-23T17:16:07","guid":{"rendered":"http:\/\/www.devapp.it\/wordpress\/?p=11620"},"modified":"2016-06-07T14:53:25","modified_gmt":"2016-06-07T12:53:25","slug":"google-directions-api-e-android-una-libreria-per-gestirle-facilmente","status":"publish","type":"post","link":"https:\/\/www.devapp.it\/wordpress\/google-directions-api-e-android-una-libreria-per-gestirle-facilmente\/","title":{"rendered":"Google Directions API e Android: una libreria per gestirle facilmente"},"content":{"rendered":"<p>Google Maps non offre solo le mappe pi\u00f9 celebri del mondo ma si circonda\u00a0di un insieme di web services che permettono di arricchirle con informazioni urbanistiche, stradali e culturali utilissime. Gli sviluppatori possono sfruttare questo universo di dati tramite API, alcune pi\u00f9 comodamente tramite librerie altre da raggiungere con invocazioni REST.<\/p>\n<p>Le <a href=\"https:\/\/developers.google.com\/maps\/documentation\/directions\/intro\" target=\"_blank\">Directions API<\/a> offrono indicazioni sui tragitti che possono essere intrapresi per raggiungere una destinazione partendo da un luogo specifico, entrambi\u00a0descritti tramite coordinate terrestri latitudine\/longitudine. Per raccogliere tali informazioni e raffigurarle in maniera rapida in un&#8217;app Android \u00e8 disponibile su GitHub una\u00a0<a href=\"https:\/\/github.com\/jd-alexander\/Google-Directions-Android\" target=\"_blank\">libreria<\/a>\u00a0apposita che facilita molto il lavoro.<\/p>\n<p>La si pu\u00f2 integrare in Android Studio tramite Gradle con la seguente direttiva:<\/p>\n<pre class=\"lang:java decode:true\">compile 'com.github.jd-alexander:library:1.0.7'<\/pre>\n<p>e\u00a0nella figura seguente di vede un esempio di utilizzo che porta a visualizzare una strada da seguire su una Google Map:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11624 size-full\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2015\/12\/google-directions-api-e-android-una-libreria-per-gestirle-facilmente_01.jpg\" alt=\"google-directions-api-e-android-una-libreria-per-gestirle-facilmente_01\" width=\"339\" height=\"358\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2015\/12\/google-directions-api-e-android-una-libreria-per-gestirle-facilmente_01.jpg 339w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2015\/12\/google-directions-api-e-android-una-libreria-per-gestirle-facilmente_01-284x300.jpg 284w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2015\/12\/google-directions-api-e-android-una-libreria-per-gestirle-facilmente_01-300x317.jpg 300w\" sizes=\"auto, (max-width: 339px) 100vw, 339px\" \/><\/p>\n<p>L&#8217;interrogazione alle API verr\u00e0 risolta tramite un oggetto Routing:<\/p>\n<pre class=\"lang:java decode:true\"> Routing routing = new Routing.Builder()\r\n                    .travelMode(\/* Travel Mode *\/)\r\n                    .withListener(\/* Listener that delivers routing results.*\/)\r\n                    .waypoints(\/*waypoints*\/)\r\n                    .build();\r\n        routing.execute();<\/pre>\n<p>in cui specificheremo modalit\u00e0 di attraversamento del percorso (a piedi, in auto, etc.), alcuni waypoints (le posizioni\u00a0che segnano il\u00a0tragitto) e soprattutto l&#8217;oggetto listener che tratter\u00e0 la risposta ricevuta.<\/p>\n<p>La libreria appare come un progetto funzionale e curato che ha superato gi\u00e0 la versione 1.0 ricevendo\u00a0buoni consensi. Basta un&#8217;app con una Google Map all&#8217;interno per provarla,\u00a0quindi cosa aspettare ancora ?<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Google Maps non offre solo le mappe pi\u00f9 celebri del mondo ma si circonda\u00a0di un insieme di&#8230;<\/p>\n","protected":false},"author":561,"featured_media":11802,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[30,534],"tags":[1279,1243,1562,1617,1618],"class_list":["post-11620","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-materiale-open-source","category-news","tag-api-google","tag-api-google-maps","tag-creare-app-android","tag-google-map","tag-librerie-android-developers"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/11620","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/users\/561"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/comments?post=11620"}],"version-history":[{"count":8,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/11620\/revisions"}],"predecessor-version":[{"id":12096,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/11620\/revisions\/12096"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media\/11802"}],"wp:attachment":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media?parent=11620"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/categories?post=11620"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/tags?post=11620"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}