310 likes | 495 Views
Google Glass Fun with C#, Java and more …. Getting started with Google Glass. Introductions. About Me. Technologist, Futurist, and Glass Explorer.
E N D
Google Glass Fun with C#, Java and more… Getting started with Google Glass
About Me Technologist, Futurist, and Glass Explorer Walter Quesada is a Software Engineer with over 18 years of experience architecting and developing solutions for SMB’s to Fortune 500 companies. Currently working on proof-of-concepts for new and emerging technologies such as Google Glass and Bluetooth Low Energy applications. Find out more on his personal blog at http://qnovations.com Walter Quesada Enjoying some butterbeer
About Google Glass Overview Google Glass is a wearable computer with an optical head-mounted display (OHMD) that is being developed by Google in the Project Glass research and development project, with a mission of producing a mass-market ubiquitous computer. Google Glass displays information in a smartphone-like hands-free format, that can communicate with the Internet via natural language voice commands. Source: http://en.wikipedia.org/wiki/Google_Glass
About Google Glass Specifications Source: http://en.wikipedia.org/wiki/Google_Glass
About Google Glass Tooling • API’s, IDE’s and more… • Mirror API (JSON, REST, OAuth) • Glass Development Kit Sneak Peek (GDK, Native) • Android Developer Tools (ADT, eclipse) • Android Studio (JetBrainsIntelliJ IDEA) • No Emulators (Some hacks out there) • Screen Monitors (asm.jar, droidAtScreen.jar) • Wearscript JS (http://www.wearscript.com)
About Google Glass Design • A UX paradigm shift… • Learn the principles of Glass design • See how the Glass UI works • UI patterns • Understand the Glass style • Implement best practices in your Glassware Source: https://developers.google.com/glass/design
Glass Warning Safety First • Be aware of your surroundings… • Driving (Accidents, Tickets) • Banned (Bars, Restaurants, Movie Theatres) • Shady characters (Mugged, Theft)
Make the Case Convergence Age • Key points… • 177 million wearables projected by 2018 (Cisco) • B2B, Industrial, Gov applications are the way to go… • Think about existing clients/employer use cases, create value… • Firefighters, Surgery, Virtual Classrooms, Airlines, what else?
Getting Glass Get Invited • Explorer Program • $1,500 (Free Shipping) • Wait List • 1 Per Order • Choice of 5 colors • 30 Day Refund • Additional Items from $50 to $225. • Google I/O 2014 • Might be available
Getting Glass eBay • Not recommended • Explorer Program Code • $5+ for Invite Code • Move fast, expires in 7 days! • Device (perfectly legal!) • Over $1,500 • Do your due diligence • Good luck!
Unboxing Glass Contents • Like a opening birthday gift… • Device (headset) • Twist-on Active Shade • Mono Earbud • Pouch • Charger & Cable
Connecting Glass Synchronize • Downloads, USB, WiFi… • MyGlass app for Android and iOS… sorry WP • QR Code to setup Wi-Fi (if not on Android or iOS) • USB cord for loading apk’s (Turn on debugging!)
Known Issues Beta • Highly experimental… • Bright light! (Hard to see screen in direct sun light) • Overheats (Video, charging while on) • API changes (getLiveCard is now createLiveCard, etc) • No Built-in Contextual Voice Commands • No 3G (Tethering or Wi-Fi required) • Worst Desktop Web Site browsing experience • iPhone Screen Cast doesn’t support touch • SDK limitations (ACTION_CALL does not work!) • Google Play not available Go to http://stackoverflow.com/questions/tagged/google-glass and https://code.google.com/p/google-glass-api/issues/list for more known issues and workarounds.
Developing Glass Source: https://developers.google.com/glass/develop
Developing Glass Source: https://developers.google.com/glass/develop
User Interface Source: https://developers.google.com/glass/develop
Touch Gestures Enum Values Gesture.LONG_PRESS Gesture.SWIPE_DOWN Gesture.SWIPE_LEFT Gesture.SWIPE_RIGHT Gesture.SWIPE_UP Gesture.TAP Gesture.THREE_LONG_PRESS Gesture.THREE_TAP Gesture.TWO_LONG_PRESS Gesture.TWO_SWIPE_DOWN Gesture.TWO_SWIPE_LEFT Gesture.TWO_SWIPE_RIGHT Gesture.TWO_SWIPE_UP Gesture.TWO_TAP Source: https://developers.google.com/glass/develop/gdk/reference/com/google/android/glass/touchpad/Gesture
Voice Input ok glass SpeechRecognizer RecognizerIntent Source: https://developers.google.com/glass/develop/gdk/input/voice
Location and Sensors LocationManagerlocationManager; // initialized elsewhere // This example requests fine accuracy and requires altitude, but // these criteria could be whatever you want. Criteria criteria = new Criteria(); criteria.setAccuracy(Criteria.ACCURACY_FINE); criteria.setAltitudeRequired(true); List<String> providers = locationManager.getProviders( criteria, true /* enabledOnly */); for (String provider : providers) { locationManager.requestLocationUpdates(provider, minTime, minDistance, listener); } Source: https://developers.google.com/glass/develop/gdk/location-sensors
Location and Sensors The following Android API sensors are supported on Glass: Sensor.TYPE_ACCELEROMETER Sensor.TYPE_GRAVITY Sensor.TYPE_GYROSCOPE Sensor.TYPE_LIGHT Sensor.TYPE_LINEAR_ACCELERATION Sensor.TYPE_MAGNETIC_FIELD Sensor.TYPE_ORIENTATION(Deprecated, use SensorManager.getOrientation() instead.) Sensor.TYPE_ROTATION_VECTOR Source: https://developers.google.com/glass/develop/gdk/location-sensors
Camera • You have two options for capturing images or video: • Calling the built-in camera activity with startActivityForResult(). Use this option when possible. • Building your own logic with the Android Camera API. Follow these guidelines if you are using this method: • Take a picture on a camera button click and a video on a long click, just like Glass does. • Indicate to the user whether a picture was taken or a video was recorded. • Keep the screen on during capture. Source: https://developers.google.com/glass/develop/gdk/location-sensors
Camera Issues Scrambled Embedded Preview Camera.Parametersparams = camera.getParameters(); params.setPreviewFpsRange(30000, 30000); camera.setParameters(params); Source: http://stackoverflow.com/questions/20557686/glass-camera-preview-display-is-garbled Winky (< XE11) EyeGesture (XE12) import com.google.android.glass.eye.EyeGesture import com.google.android.glass.eye.EyeGestureManager Source: https://github.com/kaze0/winky Source: http://stackoverflow.com/questions/21175631/accessing-rear-facing-camera-on-glass Source: http://www.engadget.com/2013/05/02/google-glass-developer-eye-wink Source: https://developers.google.com/glass/develop/gdk/location-sensors
Developing Glass GDK Sneak Peek • Pick one IDE! • ADT/eclipse • Android Studio • Android SDK (API 15) and GDK Sneak Peek
Developing Glass Mirror API • JSON, REST, OAuth • Any language (C#, PHP, Node.js, VB6, etc…) • Download MirrorQuickStart .NET project • Create Google Glass Project (name, URL, etc)* • Update Models/Config.cs Source: https://cloud.google.com/console/project
Resources This presentation and source code is available online. • Download at http://qnovations.com/codecamp Contact information… • Twitter: http://twitter.com/waltque • LinkedIn: http://linkedin.com/in/waltq • Email: wquesada@live.com