Construyendo una app Android sobre la nube App Engine

Post on 13-Jun-2015

170 views 3 download

Transcript of 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

Sponsors

#devfestlimahttp://devfestlima.gdglima.pe

Organizadores

#devfestlimahttp://devfestlima.gdglima.pe

Datos de expositor: David Motta BaldarragoMail: mdavid20@gmail.comG+: +DavidMottaTwitter: @dmotta

Construyendo una App Android sobre la Nube App Engine

(Google Cloud EndPoints/Messaging)

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

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

Arquitectura de una solución con EndPoints

#devfestlimahttp://devfestlima.gdglima.pe

Bien, dejaremos de hablar y a Codear!

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

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

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

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

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

○ @PersistenceCapable

○ @PrimaryKey

○ @Persistent

#devfestlimahttp://devfestlima.gdglima.pe

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

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

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

<Preguntas?>

devfestlima.gdglima.pe/#moderator

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.

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

gdglima@googlegroups.com

@gdglima