Construyendo una app Android sobre la nube App Engine

21
GDG DevFest Lima 27 y 28 de Octubre, 2012 Facultad de Medicina - USMP #devfestlima http://devfestlima.gdglima.pe

Transcript of Construyendo una app Android sobre la nube App Engine

Page 1: Construyendo una app Android sobre la nube App Engine

GDG DevFest Lima 27 y 28 de Octubre, 2012Facultad de Medicina - USMP

#devfestlimahttp://devfestlima.gdglima.pe

Page 2: Construyendo una app Android sobre la nube App Engine

Sponsors

#devfestlimahttp://devfestlima.gdglima.pe

Page 3: Construyendo una app Android sobre la nube App Engine

Organizadores

#devfestlimahttp://devfestlima.gdglima.pe

Page 4: Construyendo una app Android sobre la nube App Engine

Datos de expositor: David Motta BaldarragoMail: [email protected]+: +DavidMottaTwitter: @dmotta

Construyendo una App Android sobre la Nube App Engine

(Google Cloud EndPoints/Messaging)

Page 5: Construyendo una app Android sobre la nube App Engine

Introduccion a Google Cloud EndPoint David Motta (Peru)

Arquitectura de una solución con EndPoints David Motta (Peru)

Pre Requisitos para iniciar el codeLab. David Motta (Peru)

Pasos para implementar servicios Rest con EndPoint David Motta (Peru)

David Motta (Peru)

David Motta (Peru)

Agenda

#devfestlimahttp://devfestlima.gdglima.pe

Page 6: Construyendo una app Android sobre la nube App Engine

Introduccion a Google Cloud EndPoints● Fácil de crear una API escalable y alojado en App Engine, aprovechando la

infraestructura de Google API.

● Permite definir lógica de negocio en App Engine y acceder a traves del API (REST) desde múltiples plataformas Android, iOS y JS.

● Tiene muchas de las mismas características y herramientas de los APIs de Google (Google Maps, Plus, Docs, Drive,etc), y esto lo hace muy fácil de usar.○ Soporte OAuth 2.0.○ Soporte de escalabilidad provista por AppEngine.○ APIs Console, manejo de tu api.○ APIs Explorer, listar los servicios(Rest) y probarlos desde la web.

#devfestlimahttp://devfestlima.gdglima.pe

Page 7: Construyendo una app Android sobre la nube App Engine

Arquitectura de una solución con EndPoints

#devfestlimahttp://devfestlima.gdglima.pe

Page 8: Construyendo una app Android sobre la nube App Engine

Bien, dejaremos de hablar y a Codear!

Page 9: Construyendo una app Android sobre la nube App Engine

Que vamos a construir?● En este lab desarrollaremos lo siguiente:

○ 1 API que realice (crear, obtener, y listar) datos de un smartphone .○ Desarrollar una App Android que consuma este API.

#devfestlimahttp://devfestlima.gdglima.pe

Page 10: Construyendo una app Android sobre la nube App Engine

Pre Requisitos para iniciar el codeLab.● Se necesita que estés familiarizado e Instalado App Engine SDK y Eclipse.

● Tener la ultima version de Google Plugin for Eclipse

● Instalar Android SDK

● Instalar ADT Plugin for Eclipse

● Android 2.3 o mayor, Instalar Android SDK Manager

#devfestlimahttp://devfestlima.gdglima.pe

Page 11: Construyendo una app Android sobre la nube App Engine

Paso 1, Crear un proyecto App Engine● Tener el entorno listo, haber cumplido los pre requisitos indicados.

● En eclipse, File> New> Google> seleccionar Web Application Project>

Next.

● Ingresar en Project name: AppBackEnd , Package: pe.gdglima.devfestlima.

appbackend, check en Use Google App Engine

● Finalmente clic en finish.

● Clic derecho en la aplicación Run As> Web Application

● Verificar que la aplicación este corriendo en http://localhost:8888/

● Regresar a eclipse y parar la aplicación.#devfestlimahttp://devfestlima.gdglima.pe

Page 12: Construyendo una app Android sobre la nube App Engine

Paso 2, Crear una clase Entidad.● Clic derecho en el proyecto > new > Class.

● Ingresar los valores en package: pe.gdglima.

devfestlima.appbackend.bo, Name: SmartPhone,

luego clic en finish.

● Crear atributos de la clase y generar sus

métodos de acceso getter/setter.

#devfestlimahttp://devfestlima.gdglima.pe

Page 13: Construyendo una app Android sobre la nube App Engine

Paso 3, Convertir en una Clase Persiste● Usar las anotacion que AppEngine provee:

○ @PersistenceCapable

○ @PrimaryKey

○ @Persistent

#devfestlimahttp://devfestlima.gdglima.pe

Page 14: Construyendo una app Android sobre la nube App Engine

Anotaciones en EndPoint● A través de anotaciones le diremos al SDK de como deben responder a los

request del API.

○ @Api: anotacion que indica que la clase es un API.

○ @ApiMethod: anotacion que indica al metodo que es un método del API.

○ @Named: anotacion que indica al argumento del metodo, que es el

nombre del parametro en un Request.

#devfestlimahttp://devfestlima.gdglima.pe

Page 15: Construyendo una app Android sobre la nube App Engine

Paso 4, Crear la clase EndPoint● Clic derecho en la clase SmartPhone.java > Google > Generate Cloud

Endpoint Classs.

● Abrimos la clase generada SmartPhoneEndpoint.java.

● Verificar la anotacion @Api y añadir la version del api. @Api(name =

"smartphoneendpoint", version="v1").

● Verificamos que nos género métodos CRUD y listar.

#devfestlimahttp://devfestlima.gdglima.pe

Page 16: Construyendo una app Android sobre la nube App Engine

Paso 5, Implementar los servicios del API● Implementar el registrarSmartPhone, obtenerSmartPhone y

listarSmartPhones. Usar las anotaciones @ApiMethod y @Named

● Añadir las anotación al registrar:@ApiMethod(httpMethod = "POST", name = "smartphoneendpoint.insert", path =

"smartphoneendpoint/insert")

● Añadir las anotación al obtener:@ApiMethod(httpMethod = "GET", name = "smartphoneendpoint.get", path =

"smartphoneendpoint/get/{id}")

● Añadir las anotación al listar:@ApiMethod(httpMethod = "GET", name = "smartphoneendpoint.list", path =

"smartphoneendpoint/list")

#devfestlimahttp://devfestlima.gdglima.pe

Page 18: Construyendo una app Android sobre la nube App Engine

<Preguntas?>

devfestlima.gdglima.pe/#moderator

Page 19: Construyendo una app Android sobre la nube App Engine

Google DevRel LatAm South Region

¡PARTICIPA DE LA COMUNIDAD EN ESPAÑOL!

1. Academic Developer TG - ADTG2. Envía tus artículos a LookThisCode.3. Participa de Developers Live en Español.

Page 20: Construyendo una app Android sobre la nube App Engine

{Gracias por participar!}http://devfestlima.gdglima.pe

[email protected]

@gdglima

Page 21: Construyendo una app Android sobre la nube App Engine