Un atlas en la palma de la mano
Upcoming SlideShare
Loading in...5
×
 

Un atlas en la palma de la mano

on

  • 1,442 views

Codelab sobre Google Maps impartida en Google DevFest 2012 de Barcelona.

Codelab sobre Google Maps impartida en Google DevFest 2012 de Barcelona.

Statistics

Views

Total Views
1,442
Views on SlideShare
1,425
Embed Views
17

Actions

Likes
0
Downloads
21
Comments
0

3 Embeds 17

https://twitter.com 12
http://www.linkedin.com 3
https://www.linkedin.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

CC Attribution License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Un atlas en la palma de la mano Un atlas en la palma de la mano Presentation Transcript

  • Un atlas en lapalma de lamanoIncluyendo mapas enAndroid por J. M. Pereira
  • Presentación http://www.ingens-developments.com/ http://androcode.es/Jose Manuel Pereira (@JMPergar) Ismael Reyes (@kix2902)
  • Contenido Google Maps en apps Android  android-mapviewballoons  Polaris OpenStreetMap en Android  OSMDroid y OSMDroidBonusPack  MapsForge
  • Nuestra app conGoogle Maps Incluir la API de Google en el proyecto. Incluir com.google.android.maps.MapView en nuestro layout. <com.google.android.maps.MapView android:id="@+id/mapview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:apiKey="@string/googlemap_key" android:clickable="true" /> Configurar Manifest.  Indicar el uso de la librería. <uses-library android:name="com.google.android.maps" />  Indicar permiso de acceso a internet. <uses-permission android:name="android.permission.INTERNET" /> Extender de MapActivity.
  • Obteniendo el Maps API key Obtenemos la firma de desarrollo  Windows Vista y Windows 7  c:users<user>.androiddebug.keystore  Windows XP  c:Documents and Settings<user>.androiddebug.keystore  OSX y Linux  ~/.android/debug.keystore Obtenemos la huella MD5 de la firma con keytool keytool –list –alias androiddebugkey –keystore debug.keystore –storepass android –keypass android Certificate fingerprint (MD5): 94:1E:43:49:87:73:BB:E6:A6:88:D7:20:F1:8E:B5:98 NOTA: Es necesario tener instalado el JDK. Con el JDK7 añadir el parámetro –v. Registrar la firma  https://developers.google.com/android/maps-api-signup
  • Controlando nuestros mapas MapView (findViewById)  setBuiltInZoomControls(boolean)  setSatellite(boolean) MapController (MapView.getController)  setCenter(GeoPoint)  setZoom(int)  animateTo(GeoPoint)
  • Controlando nuestros mapas GeoPoint  Representa un punto en el mapa  Indicado en microgrados enteros  Para convertir: GeoPoint centro = new GeoPoint((int)(37.380882 * 1E6), (int)(-5.986958 * 1E6));  Para obtener la geolocalización:  http://tools.freeside.sk/geolocator/geolocator.html  https://maps.google.es/
  • Poblando nuestros mapas Capas o Overlays  MapView.getOverlays() MyLocationOverlay  enableMyLocation()  enableCompass()  Activarlos en onResume() y desactivarlos en onPause. MapView.postInvalidate() para actualizar
  • Poblando nuestros mapas API Overlay  http://androcode.es/2011/12/usando- apviews-desde-el-principio/ android-mapviewballoons  http://androcode.es/2012/09/mapviews-2- globos-de-informacion/ Polaris de Cyrill Mottier
  • Polaris de Cyrill Mottier Proyecto Librería  https://github.com/cyrilmottier/Polaris ¿Qué nos ofrece?  Burbujas de información  Double tap on map  Double tap on map balloon  Una manera fácil de hacerlo
  • Polaris de Cyrill Mottier Creamos y enlazamos el proyecto  URL de descarga del proyecto Incorporamos la View  com.cyrilmottier.polaris.PolarisMapView Extends MapActivity mPolarisMapView.onStart() y mPolarisMapView.onStop()
  • Poblando Polaris PolarisMapView posee métodos similares a MapView y MapController. Class Annotation (new Annotation(GeoPoint, String, String)  Title  Snippet  Marker (Annotation.setMarker(Drawable))  MapViewUtils.boundMarkerCenterBottom mPolarisMapView.setAnnotations(List<Annotation>, int) No usar getOverlays(), addOverlay(), removeOverlay() y metodos similares, ya que afectan al ciclo de vida de Polaris.
  • Poblando Polaris implements OnAnnotationSelectionChangedListener mPolarisMapView.setOnAnnotationSelectionChangedListener(this); @Override  onAnnotationClicked  onAnnotationSelected  onAnnotationDeselected onAnnotationSelected  Añadiendo imagen al globo de informaciónif (!TextUtils.isEmpty(annotation.getSnippet())) { calloutView.setLeftAccessoryView(getLayoutInflater().inflate(R.layout.accessory, calloutView, false));} else { calloutView.setLeftAccessoryView(null);}<?xml version="1.0" encoding="utf-8"?><ImageView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_launcher" />
  • Más Polaris setUserTrackingButtonEnabled(true)  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />  <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> Post ofcial  http://android.cyrilmottier.com/?p=824
  • OpenStreetMap en Android No existe librería oficial Gratis pero con limitaciones Mapas Offline OSMDroid y OSMDroidBonusPack  Bajo rendimiento  http://androcode.es/tag/osmdroid/ MapsForge  Mapas vectoriales y themes  Rendimiento muy bueno  Poco madura  http://www.ingens-networks.com/blog/?tag=/MapsForge
  • ¡GRACIAS A TODOS!jm.pereira.g@gmail.com @JMPergar ismael.kix2902@gmail.com @kix2902