wip back to school webinars - make your android app rock-n- roll with haptics presented by immersion
TRANSCRIPT
©2011 Immersion Corporation–Confidential1
NASDAQ: IMMR
Adding MOTIV UHL haptic effects to your Android application
September 2011
Bob Heubel & Richard Mar presenting
2©2011 Immersion Corporation–Confidential
Agenda – We will answer these questions:
Who is Immersion? What is haptics? How can Haptics be applied to Android apps? What is Immersion’s MOTIV Platform for
Android? How do you code the MOTIV Universal Haptic
Layer (UHL) into your apps? Where do you find additional MOTIV
resources? What is the meaning of life? (time permitting)
3©2011 Immersion Corporation–Confidential
Before we start, you should...
As an experienced Android developer, you should have these tools installed on your machine:
Java SE Eclipse Android SDK Android Developer Tools
Additionally, you will need…
Download latest Immersion UHL to your PC http://www.immersion.com/MOTIVsdk
Install “UHL Effect Preview” application from the Android Market
©2011 Immersion Corporation–Confidential4
5©2011 Immersion Corporation–Confidential
Who is Immersion?
Company Highlights
3
Immersion: The Haptics Company
Worldwide Support – Offices in EU, Korea, Taiwan,
Japan, US & Canada
World Class Customer Base
Samsung, Nokia, LG, Sony, Microsoft,
Logitech, Lexus, BMW, CAE…
Established in Large andRapidly Growing Markets
– Our tech is in 750+ million devices– Mobile phones, game controllers, auto,
industrial, casino, other portable devices
Strong Intellectual Property
Portfolio of 1,200+ granted and pending patents in the field of Haptics related to both hardware and software
Technology LeaderDeveloping haptics
solutions since 1993
NASDAQ: IMMR
©2011 Immersion Corporation–Confidential
7©2011 Immersion Corporation–Confidential
What is haptics?
8©2011 Immersion Corporation–Confidential
The Science of Haptics
Haptic interfaces simulate real-world forces
Feeling a real
bump on a surface
Feeling a Haptic
simulation of a bump
on a surface
Vs.
Haptics is the science concerned with how people explore their environment through their sense of touch (tactile feedback)
9©2011 Immersion Corporation–Confidential
The Science of Haptics Role of touch is often underestimated. We rely
extensively on touch to perform many tasks, like:– Controlling the movement of objects including our own bodies– Perceiving the world around us through the objects we interact
with
Haptic interactions rely on mechanical signals like:– Applied forces– Applied torques– Movement of objects– Geometry and mass of objects– Stiffness and texture of materials
Haptic interfaces use actuators (motors) to create haptic sensations that simulate real-world interactions
Common Haptic Device Examples
10©2011 Immersion Corporation–Confidential
Force-feedback and rumble feedback gaming
11
©2011 Immersion Corporation–Confidential
The Benefits of Haptics Provides an enhanced user-experience that is more
engaging, intuitive and personal On touchscreen devices, Haptics assists in hand-eye
coordination--confirming task or data input completion or acceptance by the UI elements
More fun for gaming and entertainment apps Opens up a new communication channel that can be
used with or without audio or visual cues...– Example, using vibe patterns to identify callers without
use of sound.– Example, using vibe patterns to as navi-cues to
navigate while walking through the city, without the need for looking at your handset GPS map.
12
©2011 Immersion Corporation–Confidential
Virtual keypads & keyboards that feel like mechanical
buttons
“Enzo’s Pinball” by Haptify let’s you feel the pinball collisions, bumpers & flippers
“Solo” by Coding Caveman lets you feel each string of the guitar as you
strum
More Examples of Applied Haptics
13
©2011 Immersion Corporation–Confidential
Immersion’s Haptic Technologiesfor the Android Platform
14
©2011 Immersion Corporation–Confidential
Immersion’s Haptic Technologies
Developer tools and resources (MOTIV SDK) Universal Haptic Layer (UHL) that contains a
library of 124 pre-made effects for developers Software emulator included with MOTIV SDK that
allows consistent playback in haptic experience across all Android devices
Embedded software player technology (TouchSense) for OEMs to use that allows the highest quality Haptic playback possible
What does the MOTIV SDK do for you? Saves you time developing effects that feel
good across all Android devices and platforms, not just a single device or platform version (1.6 or higher)
Allows you to have more than simple motor on/off vibration control, like ramps, staccato repeats and complicated patterns
Consistent vibe effects across ALL Android devices. Devices with TouchSense embedded player
technology will feel the best (1/4 billion devices to date) but the MOTIV emulator creates compatibility support on all other Android devices. Code once!
15
Example – Benefits of MOTIV SDK Using standard Google vibrate () you must
define motor “on” durations for each device type– Not useful, not effective for gaming– Very time consuming to code– Your effect may feel fine on one Android device but
horrible on another, due to differences in vibe motors
Using MOTIV, we abstract this level for you – You choose an effect you want from a library – It will automatically feel consistent across all devices
whether it is an explosion, click, or bounce– We call this our Universal Haptic Layer (UHL)
16
17
©2011 Immersion Corporation–Confidential
Immersion MOTIV PlatformUniversal Haptic Layer
(UHL)
Adding UHL Haptics to an Android Application
19
©2011 Immersion Corporation–Confidential
Universal Haptic Layer
Available for download on www.immersion.com/MOTIVsdk
Verbose documentation at http://www.immersion.com/MOTIVuhl
Free Effect Preview App Available from the Android
Market now Allows you to feel the
library on any Android device
Provides code sample for each vibe launcher effect
Awesome on Android handsets with embedded TouchSense player installed by the OEMs
Good on all other Android handsets and tablets allowing vibe control not available with standard Google vibe ()
20©2011 Immersion Corporation–Confidential
UHL Library of Effects in Preview App
21
The UHL library contains 124 pre-designed effects. For design purposes, these effects are grouped into categories:
Selection confirmation effects Scroll effects Alert/Alarm effects Animation Transition effects Game effects Texture effects
©2011 Immersion Corporation–Confidential
UHL Effect Preview App on Android Market
22©2011 Immersion Corporation–Confidential
23
©2011 Immersion Corporation–Confidential
Code Demo: Integrating UHL Haptics into an
Android sample application
24
©2011 Immersion Corporation–Confidential
You should... As an experienced Android developer, you
should have practical experience with Eclipse and:
Android architecture The life cycle of components Event handling Debugging and application Deploying an application to a device
Download Resources
Download latest Immersion UHL to your PC http://www.immersion.com/MOTIVsdk
Install latest “UHL Effect Preview” application from Android Market
©2011 Immersion Corporation–Confidential25
For additional information, visit the Immersion website: http://www2.immersion.com/developers/index.php?option=com_content&view=article&id=495&Itemid=812
Add UHL to Eclipse project
• Extract UHL_x_x_xx.zip somewhere• Copy extracted libImmEmulatorJ.so file to your Eclipse
project libs/armeabi folder (create folders if necessary)• In Eclipse, refresh project to see
libs/armeabi/libImmEmulatorJ.so• Navigate to Project > Properties > Build Path >
Configure Build Path…• Click on Add External JARs…• Browse to location of extracted UHL.jar file
©2011 Immersion Corporation–Confidential26
Add Import Statement Import the Launcher class wherever the Launcher will be used
import com.immersion.uhl.Launcher;
Add Launcher Member• Add a Launcher member to the main Activity class or other
application-wide class
private Launcher m_launcher;
©2011 Immersion Corporation–Confidential27
Instantiate Launcher Instantiate the Launcher object once, usually in the main Activity
onCreate function
try{
m_launcher = new Launcher(this);}catch (RuntimeException e){
Log.e(“My App”, e.getMessage());}
Use MOTIV UHL Effect Preview App
©2011 Immersion Corporation–Confidential28
Use the Effect Preview application from the Android Market to feel the built-in effects and determine which effect IDs to use in your application.
Play Effect Play a haptic effect
try{
m_launcher.play(Launcher.BOUNCE_100);}catch (RuntimeException e) {}
Use Effect Preview Application on your target Android phone to choose effect.
30
Stop Effect• Stop the haptic effect.
try{
m_launcher.stop();}catch (RuntimeException e) {}
Add this to Activity onPause function in case a phone call is received.
In a nutshell, that’s it!If you can handle the setting up your Eclipse
environment and understand the last five slides…
Then you should be able to add cool UHL effects to your applications.
But let’s review the steps within the Eclipse environment itself through the creation of a simple rolling ball demo application just to make sure you understand.
31
32
©2011 Immersion Corporation–Confidential
Rolling BallDemo App Example
(within Eclipse)
33
©2011 Immersion Corporation–Confidential
We talked about...
Who is Immersion? What is haptics? How can Haptics be applied to Android apps? What is Immersion’s MOTIV Platform for
Android? How do you code the MOTIV Universal Haptic
Layer (UHL) into your apps? Where do you find additional MOTIV
resources?
Additional Resources http://www.immersion.com/MOTIVsdk
Developer guidehttp://www.immersion.com/MOTIVguide
Reference dochttp://www.immersion.com/MOTIVref
Sample codehttp://www.immersion.com/MOTIVcode
Forumhttp://www.immersion.com/MOTIVforum
MOTIV Studio (Only for advanced custom effect design)http://www.immersion.com/MOTIVsdk
.
Immersion’s Got Apps Campaign
Immersion Building a Wall of Haptic Apps for Mobile World Congress (MWC ‘12) in Barcelona, Spain.– Show us your apps using the Immersion MOTIV UHL
SDK and add “Integrated with Immersion MOTIV Haptic Effects” to your description page
– Launch in Android Market or any other Android app store
– If your app is compelling, we’ll help you promote it and demo it at Mobile World Congress – Feb 2012 and other tradeshows
– AND drive connection to our OEM / Carrier partners Contact us at [email protected] to
participate
35
Immersion to Promo Your Cool Haptic Apps
Inclusion in Immersion’s outreach to over 30 major technology & review channels including:– Engadget, PC World, AndroidPolice, Appolicious,
VentureBeat/GameBeat, Android Central, etc…
Highlight of your app in Immersion’s Feature App section of their Developer’s site (developer.immersion.com)
Inclusion in Immersion’s publicly issued press releases
Potential inclusion on Immersion promotional videos/animations
Demos to Immersion’s major OEM partners for bundling opportunties
Inclusion in Immersion demonstrations at upcoming tradeshows and conferences like AnDevCon, MWC, etc.
36©2011 Immersion Corporation–Confidential
37
©2011 Immersion Corporation–Confidential
Thank you!
NASDAQ: IMMR
September 2011
Bob Heubel & Richard Mar presenting