desvelando el gdk - droidcon spain

26
[email protected] [email protected] www.mundoglass.es @mundoglass_es Google Glass Development Kit

Upload: droidcon-spain

Post on 13-Jun-2015

280 views

Category:

Technology


4 download

DESCRIPTION

Conferencia ofrecida por Ander Martínez de Mundo Glass en Droidcon Spain. Droidcon Spain fue el primer evento donde se analizó el GDK, el Glass Development Kit. La versión preliminar del GDK que permitirá a los desarrolladores crear aplicaciones específicas para Google Glass. Hace solo unas semanas que Google liberó esta primera versión del kit de desarrollo de software para hacer las delicias de todos los developers que lo estaban esperando con ansias.

TRANSCRIPT

[email protected]

[email protected]

www.mundoglass.es@mundoglass_es

Google Glass Development Kit

Mundoglass

Laboratorio

Desarrollo

Open Source / Comunidad

Startup

Somos Explorers

Quienes somos Qué hacemos

Google Glass Development Kit

Mundoglass

Componentes GDK

Tipo Invocación por parte del usuario Elementos UI

GDK OK Glass + …. Live card

Mirror Elemento de menú Static card

GDK + Mirror Card en el timeline InmersiónServicio Glassware/Web

MundoglassCaracterísticas/Adaptaciones

Provider de localización

Intent de cámara

Intent de reconocimiento (RecognizerIntent)

Menú de opciones

Add-ons

Trigger de voz

Detección de Gestos (gesture detector) para el control del touchpad

Constructor de tarjetas y scroller de tarjetas

Live cards

Interfaz de Usuario

Mundoglass

Glass Themes / UI Widgets

GDK proporciona themes y widgets por defecto compatibles con el look&feel de Glass

Para usar look&Feel de glass, eliminar la declaración de <theme> en el Android Manifest al crear el proyecto.

Inmersions Live cards Static Cards

Interfaz de Usuario

Mundoglass

Low Freq. Rendering High Freq.

Visualización en silencio - inmediata

https://developers.google.com/glass/develop/gdk/ui/live-cards

Live cards

Touch Gestures - Voice Input - Location/Sensors

Mundoglass

Gestures

LONG_PRESS, SWIPE_DOWN, SWIPE_LEFT, SWIPE_RIGHT, SWIPE_UP, TAP, THREE_LONG_PRESS, THREE_TAP, TWO_LONG_PRESS, TWO_SWIPE_DOWN, TWO_SWIPE_LEFT, TWO_SWIPE_RIGHT, TWO_SWIPE_UP, TWO_TAP

Activity Gestures

Permite definir acciones en base a Gestos para una actividad

View Gestures

Permite definir acciones en base a Gestos para una vista en concreto.

Touch Gestures

Mundoglass

Triggers

Ok Glass

Glassware

How to

Voice Input

voice_trigger voice_prompt <trigger keyword=”@string/voice_triger”> <constraints…></trigger>

string.xml voice_trigger.xml

startActivityForResult -> Intent ACTION_RECOGNIZE_SPEECH

onActivityResult -> recuperaremos el texto obtenido (results)

Activity

<application..> <activity | service ...> <intent-filter> <action android:name=

"com.google.android.glass.action.VOICE_TRIGGER" /> </intent-filter> <meta-data android:name= "com.google.android.glass.VoiceTrigger" android:resource="@xml/voice_trigger" /> </activity | service>

AndroidManifest.xml

Mundoglass

Location

Glass: Location providers dinámicos incluyendo provider remotos vía Bluetooth-paired - MyGlass

Aproximaciones:

Criteria

Iterar

Sensores

Location and Sensors

TYPE_ACCELEROMETER

TYPE_GRAVITY

TYPE_GYROSCOPE

TYPE_LIGHT

TYPE_MAGNETIC_FIELD

TYPE_ORIENTATION (deprecated)

TYPE_ROTATION_VECTOR

TYPE_LINEAR_ACCELARITION

Location Manager - Location Provider - Criteria

Api Android

Instalación y despliegue GDK

Mundoglass

API Android estándar compilado para Glass + API extra específico para Glass

Disponible 19 Nov. 2013

¿GDK?

Instalación

Android SDK Manager : Android 4.0.3 (API 15) SDK - Glass Development Kit Sneak Peek

Activar Glass USB debug: Settings -> Device Info -> Turn on Debug

Settings:

Minimum and Target SDK: 15

Compilar con: Glass Development Kit Sneak Peek

Temas/Themes: None (borrar themes de AndroidManifest.xml), permite aplicar Glass themes.

Importar Android sample projects (File->New Project->Android sample projects...)

Mundoglass

Desarrollo

adb, IDE, launchy

Validación de aplicaciones

https://developers.google.com/glass/distribute/index

Aplicaciones aprobadas por Google

Es un .apk que se descarga desde google.com/myglass

Proceso de validación contra webs en proceso.

Despliegue de aplicaciones nativas en Glass

Aplicaciones que usan GDK

MundoglassAplicaciones que usan GDK

Demos adaptadas a España:

Worldlens- Inmersión & offline & hardware

Strava - Livecards

Golf. Hay varios campos en la comunidad de Madrid que están mapeados.

Spellista - Inmersion

WorldGlassTv

GDK vs Mirror API

MundoglassGDK Sneak Peek vs Mirror API

Desde el primer día

Desarrollador backend (php, java, go, python…)

Static cards, manejar notificaciones, compartir elementos

Online

Ubicación cada 10 min.

Mirror API maduro/estable

MirrorDesde hace 2 semanas.

Desarrollador android/c/c++ NDK

Livecards, inmersions

Online/offline

Ubicación tiempo real

Acceso al hardware/sensores

GDK, 1era versión

¿Actualización GDK?

GDKDisponibilidad

Target

UI

Conectividad

Location

Vers.

vs

Mundoglass

Con Mirror:

- Notificaciones periódicas (mandando una tarjeta al timeline)

- Compartir (por ejemplo una foto a facebook)

Con GDK:

- Tareas en curso, que el usuario está haciendo y para las que necesita información actualizada en tiempo real

Ejemplo: Strava (información de progreso al ir en bici)

- Inmersiones (cogen “el foco” tanto de Glass como del usuario)

Nuestra experiencia

Patrones típicos de desarrollo

Otra forma de programar para Glass:OpenShades

Mundoglass

Herramientas y librerías para Glass

Open Source

Integra librerías disponibles para Android, como OpenCV

WearScript - (PhoneGap para Glass): Acceso a los sensores de Glass desde JavaScript

WebView para ejecución del JavaScript

- Permite desarrollar pruebas de concepto muy rápidamente

- Permite intercambio de scripts entre usuarios sin utilizar la plataforma de Google

Mundoglass

Ejemplo trivial:

// Stream camera images and all sensors to the WearScript Playground Webapp

function server() { WS.log('Welcome to WearScript'); // Escribir a log y consola WS.say('Welcome to WearScript'); // Texto-a-voz // Todos los sensores var sensors = ['gps', 'accelerometer', 'magneticField', 'orientation', 'gyroscope', 'light', 'gravity', 'linearAcceleration', 'rotationVector']; for (var i = 0; i < sensors.length; i++) WS.sensorOn(WS.sensor(sensors[i]), .15, 'cb'); WS.cameraOn(2); WS.dataLog(false, true, .15);}

https://github.com/OpenShades/wearscript

MundoglassY para terminar...

Primer Hackaton de Glass

Un día dedicado a disfrutar programando para el nuevo dispositivo.

- Equipos de 3 ó 4 personas (pueden venir formados o hacerse sobre la marcha).

- Aforo: 30 personas

- 4 Glass disponibles para probar

PREMIO:

- Una invitación para comprar Glass para cada miembro del equipo ganador.

- Para una de ellas (por sorteo) MundoGlass se encarga de todos los trámites de compra e importación - el ganador lo recoge en Madrid.

PARTICIPACIÓN:

15 euros por persona (incluye pizzas)

http://glasshackaton.eventbrite.es/ - clave: MUNDOGLASS

Mundoglass

Glass Developers

https://developers.google.com/glass/

OpenShades

http://www.openshades.com/

Referencias

[email protected]

[email protected]

www.mundoglass.es@mundoglass_es

¡¡¡Gracias!!!