lunes, 19 de agosto de 2013

Como usar GoogleMaps API v2 en emuladores

(English version here)

Hola amigos desde hace algunos meses he estado explorando la programación en la plataforma Android y uno de los aspectos más interesantes es el uso de los google maps.   Con el API v1 de google maps resultaba relativamente fácil utilizar mapas en nuestras aplicaciones (ver http://www.sgoliver.net/?p=1949), sin embargo con la salida del API v2 muchos desarrolladores nos hemos encontrado con problemas para testear las aplicaciones en los emuladores ofrecidos por la plataforma.

Afortunadamente, este tipo de problemas suelen encontrar su forma de solventarlos gracias a la perseverancia de usuarios con la necesidad de pasar el obstáculo, de ese modo yo mismo he estado buscando la forma de hacer funcionar el API v2 de google maps en los emuladores y con un poco de información encontrada por aqui y otra encontrada por allá logre hacer que me funcionen así que conociendo la necesidad de muchos deseo compartir los pasos que funcionaron para mi y espero que sean de ayuda para alguien más.

Bien, sin más preámbulos vamos a describir el proceso:

1. Actualizaciones


Lo primero que tuve que hacer fue actualizar el Android SDK Tools  y Android SDK Platform-tools.

desde el Android SDK Manager actualizar:

En Tools:
    Android SDK Tools a 22.0.5
    Android SDK Platform-tools a 18.0.1

En Android 4.1.2 (API 16)
    Instalar SDK Platform
    Samples for SDK (opcional)
    ARM EABI v7a System Image
    Intel x86 Atom System Image
    MIPS System Image
    Google APIs



2. Libreria google-play-services_lib



2.1 Descargar el google-play-service desde la siguiente ubicacion (con este es con el que me funciono, antes tenia instalado el que viene con el SDK pero creo que ese es una version mas reciente y los maps no funcionan con ese)


Descargar el archivo google-play-services.zip mediante el boton Download que hay en la esquina superior derecha




2.2 Descomprimir el contenido de google-play-services.zip en el directorio de su eleccion (<google-play-services-download-dir>)

2.3 En eclipse importar el proyecto google-play-service (Si ya existiera, eliminarlo para instalar esta version)

    a. File - Import - Existing project into workspace
    b. En Select root directory: <google-play-services-download-dir>/libproject/google-play-services_lib
    c. En Projects, seleccionar el proyecto: google-play-services_lib
    d. Marque la casilla: Copy projects into Workspace
    e. Finish



2.4 En el proyecto google-play-services_lib ir a propiedades - Android:

    a. en Project Build Target marque: Android 4.1.2
    b. en Library compruebe que Is library esta seleccionado
    c. haga un clean and build de este projecto que acaba de importar




3. Acciones en el Proyecto que usa los mapas



3.1 En el proyecto vaya a properties - Android

    a. en Project Build Target marque: Android 4.1.2
    b. en Library agregue la libreria google-play-services_lib



3.2 En la misma ventana de properties, vaya a Java Build Path - Libraries

3.3 Compruebe que se encuentran las librerias Android 4.1.2, Android Dependencies y Android Private Libraries



3.4 Acepte y cierre la ventana de propiedades

3.5 En el menu contextual del proyecto vaya a Android Tools - Add Support Library

3.6 Acepte la licencia

4. Configuracion del emulador

4.1 Crear un emulador con la siguiente configuracion:

    En el Android Virtual Device Manager:

    a. Device: 5.1” WVGA (480 x 800: mdpi)
    b. Target: Android 4.1.2 – API level 16
    c. CPU/ABI: ARM
    d. Deje el resto de valores por defecto



4.2 Inicie el emulador.



4.3 Descargue las siguientes aplicaciones (desde el pc o portatil que tiene el entorno de desarrollo):

    a. com.google.android.gms-1.apk (http://uploaded.net/file/bnzl1si4)
    b. com.android.vending-1.apk (http://www.androidfilehost.com/?fid=9390135922294521859)

4.4 Inicie un terminal e instale en el emulador las aplicaciones anteriores mediante estos comandos (el comando adb se encuentra en <Android-sdk_home>/platform-tools):

    a. adb -e install <path-to>/com.google.android.gms-1.apk
    b. adb -e install <path-to>/com.android.vending-1.apk



4.5 Se puede ver que la instalacion de los dos paquetes en el emulador ha sido exitosa, por lo tanto ahora si vemos las aplicaciones instaladas en el emulador podremos ver que tanto el Google Play Services (com.google.android.gms-1.apk) como el Google Play Store (com.android.vending-1.apk) estan instalados (Settings - Apps)




5. Ejecutar la aplicación


5.1 En este punto se supone que el proyecto esta bien configurado y tiene los permisos adecuados, para una referencia de como crear un proyecto Google maps API v2 visite http://www.sgoliver.net/blog/?p=3244

5.2 Haga un Clean and Build del proyecto.

5.3 Ejecute la aplicacion como Android Application






Enlaces:
http://stackoverflow.com/questions/15156301/google-play-services-out-of-date-requires-3025100-but-found-2012110/16891491#16891491
http://nemanjakovacevic.net/blog/english/2012/12/06/how-to-make-android-google-maps-v2-work-in-android-emulator/
http://langcongnghe.com/kien-thuc/android-running-google-maps-v2-on-android-emulator.html

No hay comentarios:

Publicar un comentario