the glass class - tutorial1 - introduction to glassware development

32
The Glass Class: Introduction to Glassware Development with Mirror API & GDK July 7 th 11 th 2014 Mark Billinghurst, Gun Lee HIT Lab NZ University of Canterbury

Upload: gun-lee

Post on 28-Jan-2015

109 views

Category:

Technology


1 download

DESCRIPTION

Tutorial 1: Introduction to Glassware Development The Glass Class at HIT Lab NZ Learn how to program and develop for Google Glass. https://www.youtube.com/watch?v=dTYRtbP5xkg&list=PLsIGb72j1WOlLFoJqkhyugDv-juTEAtas http://arforglass.org http://www.hitlabnz.org

TRANSCRIPT

Page 1: The Glass Class - Tutorial1 - Introduction to Glassware Development

The Glass Class:

Introduction to Glassware

Development with Mirror API & GDK

July 7th – 11th 2014

Mark Billinghurst, Gun Lee

HIT Lab NZ

University of Canterbury

Page 2: The Glass Class - Tutorial1 - Introduction to Glassware Development

An Introduction to

Glassware Development with

Mirror API & GDK

Gun Lee

* Images in the slides are from variety of sources,

including http://developer.android.com and http://developers.google.com/glass

Page 3: The Glass Class - Tutorial1 - Introduction to Glassware Development

Glassware

https://glass.google.com/glassware

Page 4: The Glass Class - Tutorial1 - Introduction to Glassware Development

Timeline Metaphor

Page 5: The Glass Class - Tutorial1 - Introduction to Glassware Development

A Card in the Timeline

Page 6: The Glass Class - Tutorial1 - Introduction to Glassware Development

Glassware and Timeline

Page 7: The Glass Class - Tutorial1 - Introduction to Glassware Development

Glassware and Timeline

Static Cards

Static content with text, HTML, images, and (link to)

video.

e.g. notification messages, news clip

Live Cards

Dynamic content updated frequently.

e.g. compass, timer

Immersions

Takes over the whole control, out from timeline.

e.g. interactive game

Page 8: The Glass Class - Tutorial1 - Introduction to Glassware Development

Glassware Development

Mirror API

Server programming, online/web application

Static cards / timeline management

GDK

Android programming, Java (+ C/C++)

Live cards & Immersions

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

Page 9: The Glass Class - Tutorial1 - Introduction to Glassware Development

Mirror API

REST API

Java servlet, PHP, Go,

Python, Ruby, .NET

Timeline based apps

Static cards

- Text, HTML, media attachment (image & video)

- Standard and custom menu items

Manage timeline

- Subscribe to timeline notifications

- Sharing with contacts

- Location based services

Page 10: The Glass Class - Tutorial1 - Introduction to Glassware Development

Mirror API based Web App

3. Insert a static card

User sees the card

Glassware Web app

https://developers.google.com/glass/develop/mirror/stories

Page 11: The Glass Class - Tutorial1 - Introduction to Glassware Development

https://developers.google.com/glass/develop/mirror/stories

Page 12: The Glass Class - Tutorial1 - Introduction to Glassware Development

https://developers.google.com/glass/develop/mirror/stories

Page 13: The Glass Class - Tutorial1 - Introduction to Glassware Development

Develop with Mirror API

Create a project on Google APIs Console

Prepare a web server

https callback for OAuth 2.0

Minimum storage for credentials

Create a web application

Java servlet, PHP, Go, Python, Ruby, .NET

Implement Oauth 2.0 authentication

Use Mirror API to make REST API calls

- Wrapper classes/methods provided

Page 14: The Glass Class - Tutorial1 - Introduction to Glassware Development

Mirror API in Raw HTTP

Page 15: The Glass Class - Tutorial1 - Introduction to Glassware Development

Mirror API Java

Python

PHP

Page 16: The Glass Class - Tutorial1 - Introduction to Glassware Development

Example

Page 20: The Glass Class - Tutorial1 - Introduction to Glassware Development

Example

On your Glass

Page 21: The Glass Class - Tutorial1 - Introduction to Glassware Development

GDK

Glass Development Kit

Android 4.4.2 + Glass specific APIs

Use standard Android Development Tools

Page 22: The Glass Class - Tutorial1 - Introduction to Glassware Development

GDK

GDK add-on features

Timeline and cards

Menu and UI

Touch pad and gesture

Media (sound, camera and voice input)

Page 23: The Glass Class - Tutorial1 - Introduction to Glassware Development

Live Cards vs. Immersions

Live cards display frequently updated

information to the left of the Glass clock.

Integrate rich content into the timeline

Simple text/images to full-blown 3D graphics

Immersions let you build a user

experience outside of the timeline.

Build interactive experiences

Extra control, less user input constraints

Page 24: The Glass Class - Tutorial1 - Introduction to Glassware Development

Live Cards

Page 25: The Glass Class - Tutorial1 - Introduction to Glassware Development

Immersions

Page 26: The Glass Class - Tutorial1 - Introduction to Glassware Development

Live Cards vs. Immersions

Page 27: The Glass Class - Tutorial1 - Introduction to Glassware Development

Develop with GDK

Android 4.4.2 (API 19) GDK Preview from the

Android SDK Manager.

Project settings:

Minimum and Target SDK Versions: 19

Compile with: GDK Preview

Theme: None (allows the Glass theme to be applied.)

GDK samples

File > New Project > Android Sample Project

On Glass, turn on USB debugging

Settings > Device Info > Turn on debug

Page 28: The Glass Class - Tutorial1 - Introduction to Glassware Development

Example

Launch with voice trigger

Android App with a full-screen Activity

No theme (Glass system theme applied.)

Handle touch input

Page 29: The Glass Class - Tutorial1 - Introduction to Glassware Development

Example

Page 30: The Glass Class - Tutorial1 - Introduction to Glassware Development

Example

Page 31: The Glass Class - Tutorial1 - Introduction to Glassware Development

Summary

Use Mirror API if you need ...

Use GDK if you need ...

Or use both

Page 32: The Glass Class - Tutorial1 - Introduction to Glassware Development

More Information

Website

https://developers.google.com/glass

http://arforglass.org

http://www.hitlabnz.org

Gun Lee

[email protected]

Mark Billinghurst

[email protected]