%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
New trends on research and software development techniques for wearable devices
1. Tomás Ruiz-López
Software Design Manager @tomasruizlopez
@everywaretech /everywaretech
http://www.everywaretech.es
Carlos Rodríguez Domínguez
Chief Technology Officer @carlosrodrigdom
New trends on research and !
software development techniques !
for wearable devices
Ph.D. Program on Information and Communication Technologies!
University of Granada
17. 70%
15%
48%
People aware of the existence
of wearable devices
People already using wearable
devices
Owners of wearable devices
are 18-34 years old
18. 300$ Average price of a wearable
device
By !
market
957$ Industrial!
134$ Pets Animals
By body!
location
1117$ Legs!
92$ Hands
19. 57% Self-monitoring and health
concerns
35%Supplement their smartphone
addiction
Reasons to buy
20. 72% Wearable devices are too
expensive
62%Wearable devices are not too
fashionable
Reasons NOT to buy
53% Would like wearable devices to
look more like jewelry
21. Is it compatible with !
my smartphone?
Is it easy to!
set up?
Is it easy to put on?!
Is it accurate?
Will the battery last?!
How long?
Is it comfortable!
to wear?
Is it cool?!
Do I look dumb?!
Is it fashionable?
28. Hands-free!
Voice / gesture control. Avoid distractions.
Context-aware!
Use sensors to proactively infer the user’s needs
Always-on!
Low power consumption. Fast wake up. Background processing
Always connected!
Use wireless technologies to communicate with other devices.
Market!
Manufacturing by both big and small companies
Enhancing!
Augment knowledge, facilitate learning or enhance experience
Development platform!
Software makes wearable devices meaningful
29. Accelerometer
Components
Touch Interface
Respiratory Monitor
Pressure Sensor
Muscle Contraction Sensor
FM Tuner
Buzzer
Blood Pressure Meter
Audio Jack
Barometer
Magnetometer
Textile Strain Sensor
Pedometer
DLP Display
Depth Camera
E-Paper Display
Microphone
Vibrator
Thermometer
Backlight
LED Display
Altimeter
Bone Conduction Speaker/Mic
ECG Sensor
Clock
Photo/Video Camera
Perspiration SensorInfrared Sensor
UV Light Sensor
Galvanometer
Skin Impedance Sensor
Oximeter
GPS
Gyroscope
30. Some of what you can find on the!
Market!
(or about to be released)
31. Smart Cap!
EDAN SAFE PTY LTD
- Fatigue monitoring system (EdenSafe!
Universal Fatigue Algorithm)!
- Keep truck drivers safe!
- EEG sensors on the brim!
- Sends information to an operator!
- Audio alarm when the user starts !
falling asleep
32. SensoGlove!
SENSOGLOVE
- Smart glove designed for golfers!
- Detects intensity of the grip when!
holding the club or driver!
- Data analysis in real-time!
- Audio and visual feedback to the user!
to know if they are holding the club!
correctly
33. Voyce Dog Monitor!
VOYCE
- Measures key vital signs and overall!
health in dogs!
- Heart rate, respiratory rate, calories…!
- iOS and Android apps to check data
34. Fit Guard!
FORCE IMPACT TECHNOLOGIES
- Detection of head injuries in athletes!
- Accelerometer to detect head movement!
and compute the force of the head impact!
- Analyze severity of head injuries!
- Sends data to companion app
35. June!
NENATMO
- Monitor the user’s UV exposure during th
day and alert when it has exceeded the!
recommended limit!
- Can be worn on the wrist, neck or chest!
- Companion app shows data about sun!
exposure and advices for skin protection
36. Shine!
MISFIT
- Motion-tracking wearable device!
- Records activity levels and sleep!
- Can be worn or embedded in some piece
of clothing the company sells!
- Sends data to a companion app and !
shares results with friends
37. Achillex!
XYBERMIND
- Ankle wrap (around running shoes) and!
vest!
- Measures impact forces, degree of !
pronation and orientation of the foot!
- Used in retail environments!
- Shows information to help customers!
decide which shoes to purchase
38. Lechal Shoe!
LECHAL
- User navigation through vibration!
- Bluetooth enabled insole!
- Additional fitness functions!
- Control from smartphone!
- Alert if the smartphone is missing
39. Nex Band!
MIGHTYCAST
- Band with pluggable modules with LEDs!
for user feedback!
- Mainly for gaming and entertainment!
purposes!
- User customizable
40. PequeAlarma!
INTERACTIVE TOYS + EVERYWARE
TECHNOLOGIES
- Monitor children proximity!
- Trigger an alarm if child is going further!
from a predefined distance!
- Additionally checks temperature and!
falls to water
41. Inivisibility Glasses!
AVG
- Glasses with infrared LEDs!
- Not visible to human eye but visible to!
cameras!
- Make face recognition algorithms not!
work properly!
- Focus on guaranteeing privacy
42. Swarm!
MICROSOFT
- Scarf to help people with autism or!
visual and hearing impairments!
- Modules with biometric sensors that are!
able to heat up or vibrate!
- Connect via Bluetooth to the smartphone
57. Live Cards
Currently cooking for 1683 peopleOk Glass, find a
Breaking!
Service
Service <service
android:name="es.everywaretech.breakingglass.BreakingService"
android:label="@string/app_name"
android:enabled="true"
android:exported="true">
<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_start" />
</service>
Android Manifest
<trigger command="FIND_A_RECIPE" />
xml/voice_trigger_start.xml
High-frequency rendering
58. Currently cooking for 1683 people
Breaking!
Service
Service
Breaking!
Drawer
Direct Rendering !
Callback
Breaking!
View
View
Breaking!
Activity
Activity
action
Live!
Card
Live Card
Live Cards
Ok Glass, find a
High-frequency rendering
59. Currently cooking for 1683 people
Live CardsHigh-frequency rendering
liveCard = new LiveCard(this, LIVE_CARD_TAG);
!
callback = new BreakingDrawer(this);
liveCard.setDirectRenderingEnabled(true).getSurfaceHolder().addCallback(callback);
!
Intent menuIntent = new Intent(this, BreakingActivity.class);
menuIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
liveCard.setAction(PendingIntent.getActivity(this, 0, menuIntent, 0));
liveCard.attach(this);
!
liveCard.publish(PublishMode.REVEAL);
BreakingService
62. Static Cards
adapter = new RecipeAdapter(createCards(this));
scrollView = new CardScrollView(this);
scrollView.setAdapter(adapter);
scrollView.activate();
setContentView(scrollView);
setCardScrollerListener();
RecipeActivity.onCreate()
Card c = new Card(context);
c.setImageLayout(Card.ImageLayout.FULL);
c.setText("Your blue meth-candy is ready");
c.setFootnote("Tap to start selling it");
c.addImage(R.drawable.background_01);
RecipeActivity.createCards()
63. Notifications
Recipe!
Activity
Activity
Alarm!
Manager
Selling!
Service
Service
Intent intent = new Intent(this, SellingBroadcastReceiver.class);
PendingIntent pending = PendingIntent.getBroadcast(this,
(int) System.currentTimeMillis(), intent,
PendingIntent.FLAG_CANCEL_CURRENT);
AlarmManager am = (AlarmManager) this.getSystemService(
Context.ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP,
System.currentTimeMillis() + 20*1000,
pending);
Selling!
Broadcast!
Receiver
Broadcast Receiver
time goes by…
65. Live CardsLow-frequency rendering
// Get an instance of a live card
liveCard = new LiveCard(this, LIVE_CARD_TAG);
!
// Inflate a layout into a remote view
liveCardView = new RemoteViews(getPackageName(), R.layout.selling_view);
!
// Publish the live card
liveCard.publish(PublishMode.REVEAL);
!
// Queue the update text runnable
handler.post(mUpdateLiveCardRunnable);
74. NotificationCompat.Builder notificationBuilder =
new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.event)
.setContentTitle(eventTitle)
.setContentText(eventLocation)
.setContentIntent(viewPendingIntent);
!
// Get an instance of the NotificationManager service
NotificationManagerCompat notificationManager =
NotificationManagerCompat.from(this);
!
// Build the notification and issues it with notification manager.
notificationManager.notify(notificationId, notificationBuilder.build());
Send Notifications as usual
97. UI Elements
Text input!
(again, no keyboard!)
Labels
Switches
Buttons
Menu!
(Force Touch)
Sliders
Images!
(tint + animation)
Maps
Pin or image Timers
98. Layout
Groups of controls
No absolute positioning!!!!
Groups of groups
Horizontal or vertical groups
Dynamic or static sizes
Tables
Custom cells (with groups inside)
105. Development of custom long-looks
Static Dynamic
Different
notifications
for the same
app!
106. Development of custom long-looks
Static long-looks
One dynamic label + unlimited!
static labels
Defined at the design-time (no code!!)
No interactive controls (apart from dismissal button)
All images must be known at compilation time
107. Development of custom long-looks
Dynamic long-looks
The interface can change at runtime
Custom actions and interactive controls
Remotely downloaded resources (including images)
111. Eventbox Glance
Top group!
(Event Date
+Time)
Bottom group!
(Conference +
event info)
Upcoming event information from latest conference!
that we accessed from the iPhone app
113. iPhone app extension!! (for now)
Can share data with iPhone (app groups)
Handoff: start on the Watch and finish on the iPhone!
(or viceversa)
May not work without paired iPhone