Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Andromeda: An Android Framework for Sensor-based Applications
1. Andromeda
An Android Framework for
Sensor-based Applications
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
2. Outline
• Overview
• Andromeda Project
Features
Architecture
Benefits & Limitations
Roadmap
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
3. Overview
• The development of sensor-based applications can
be considered the new “mobile feature app killer”
• They are used for various applications category:
– Games
– Maps & LBS applications
– Utilities
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
4. Overview
• Developing sensor-based apps can be very cumbersome :
– Sensors data handling is very complex (regarding internal calcula)
• Have to handle the acceletarion and orientation sensors data on X, Y and
Z axes
– There is a lack of development patterns for this kind of apps
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
5. Overview
• Developing sensor-based using Andromeda
Framework:
– The Developer does not need to know detailed information
about the sensor
– It is not necessary to worry about the values of the X, Y
and Z axes
• Andromeda provides a mechanism to detect
movements known by the framework
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
6. Andromeda Project
• Andromeda is being developed as part of our Immersion Course
Program (specialization course on software development).
– Scholarship alliance between academic and business entities.
• Motorola
• CIn-UFPE (Informatics Center at Federal University of Pernambuco)
• C.E.S.A.R (Centro de Estudos e Sistemas Avançados do Recife)
• It is an acronym for Android Motion Effects Detection
Architecture.
• Encourages sensor application development using the Google
Android Platform
• It is a specific framework for sensor-based applications for
Android
• The Andromeda main purpose is:
“ To create an additional layer to ease complex sensor
data handling for client applications ”
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
7. Features
• Support for various Android SDK versions.
– SDK 1.1
– SDK 1.5 (Cupcake)
– SDK 1.6 (Donut)
• Integrated to OpenIntents to connect with the Sensor simulator
using the Android emulator
• Detects the following motion effects:
– Shake to the left
– Shake to the right
– Shake up
– Shake down
• Developed using the main design patterns:
– Observer (Java listeners)
– Factory Method (for Adapters dynamic instantiations)
– Adapter (to support various Sensor API SDK changes)
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
8. Andromeda Architecture
Client
Broadcast
Activities Services
Receiver
SensorFramework
registerListener(…) and unregisterListener()
SensorAdapterFactory
SensorAdapter createAdapter(SensorManager sensorManager)
SensorAdapter <Abstract Class>
SensorListenerAdapter SensorEventListenerAdapter
SensorListener SensorEventListener
Android 1.1 Android 1.5
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
9. The Big Picture
Notify Client “onChange()”
Andromeda
Client
notifies sensor events Framework
Applications
via getSystemService() Framework
implements SensorListener
onSensorChanged()
Android OS
Hardware Sensors
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
10. Benefits & Limitations
• Benefits:
– Ease of development and increase productivity
for sensor-based applications
– Define a more human-like sensor-based API
– Flexible adaptation for previous and incoming
Android SDK versions support
• Limitations:
– Explosion of combination of human
movements
• Combined movements implies in high complexity
– Number of movements to be detected
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
11. Roadmap
• Supports Java Annotations to eliminate
boilerplate code
• Integration with the Android
Instrumentation API in order to support
automated tests for sensor-based
applications
• Promote Andromeda architecture to support
the Eclipse RCP (Rich Client Platform) Plug-
in Architecture
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
12. Roadmap
• More human gesture detection:
– Ex: turn over, double shake, etc
• Sensor callibration relatively to the
underlying androphone
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
13. Do you want to know more
about Andromeda?
Andromeda Project Team
Marcelo Alves
malves.info@gmail.com
Ramon Rabello
ramon.rabello@gmail.com
Stefano Malinconico
stefanocmalinconico@gmail.com
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11
14. WE HOPE YOU ENJOY AND
THANKS FOR LISTENING!
Thursday, October 29, DroidCon '09, Dahlem Cube, Berlin -
2009 Germany
sábado, 19 de novembro de 11