SlideShare uma empresa Scribd logo
1 de 51
Baixar para ler offline
Android Wear 
introduction, concepts and case-study
Agenda 
• Android Wear Introduction 
• Capabilities and User Interface 
• How to create Android Wear UX 
• Development case study 
• Make your application android-wear ready 
• Potential Use Cases
Android Wear Concept 
• Android extension for wearables 
• Automatic, specific, glanceable information, with zero or low 
interaction! 
• Showing users information and functionality just when they need it
Android Wear Basics 
• Require android >= 4.3 on phone (or tablet) 
• Require android-wear companion app on phone 
• Phone and wearable communicate with each other via bluetooth. 
• Wearable uses handheld device internet connection and GPS. 
• Currently available sensors on wearables are 
Compass, Accelerometer, Gyroscope, Heart Rate Sensor (Samsung only)
Android Wear Capabilities 
• Generate notifications from phone and react them on 
wearables. 
• Embed voice capabilities for getting user input. 
• Create standalone apps for wearable (like compass, steps 
counter etc) 
• Almost whole android sdk is available for development!
Android Wear UX
Android Wear UX 
Considerations
Android Wear UX 
Considerations 
• Glanceable 
• Can user see it in split second?
Android Wear UX 
Considerations 
• Big Gestures 
• Use it without focusing on watch!
Android Wear UX 
Considerations 
• Launched Automatically 
• Right information at right time
Android Wear UX 
Considerations 
• Do one thing, do it fast 
• Show absolute minimum, 
actionable information
Android Wear UX 
Considerations 
• Is it time to disturb? 
• It is on wrist, its always visible, its difficult to avoid! 
• Buzz the watch fewer times that you would do on 
phone!
Android UX Applied 
Lets see some examples 
http://time.com/2964389/android-wear-watch-review/
Development Case-Study
Android Wear case study 
Why we did this 
• Keep ourselves updated, so we can help our clients better. 
• Wearable has a lot of potential to grow. 
• Android Wear is the first disciplined approach from Google to bring 
Android to wearables 
• Explore Android Wear; discover use-cases and create a good example 
app that cannot be done without Watch!
Android Wear case study 
Problem: 
If you use computer for 3-4 hours a day and sit continuously 
in a similar posture, you are at risk of RSI (Repetitive Strain 
Injury). 
What is RSI: 
Repetitive strain injury (RSI) is a condition where pain and 
other symptoms occur in an area of the body which has 
done repetitive tasks (often the arms or hands).
Break Timer 
How to avoid RSI: 
There can be several techniques, the most basic one is to take 
regular breaks! 
The Solution: 
Break Timer sits silently on your wrist and remind you to take 
break if you have been typing for long intervals. 
Uses the accelerometer available on watch to see if you are 
continuously typing.
Break Timer - case study
Break Timer - case study
Break Timer - case study 
Typing indicator
How to make your app 
wear-ready
How to make your app 
wear-ready 
• Integration Method 
• Potential issues during development 
• Coding Tips
Enhanced Notifications 
• Single Notification 
• Can have multiple 
actions 
• Appears by default, 
with only action “Open 
on phone”.
Single Notification 
NotificationCompat.Builder notificationBuilder = 
new NotificationCompat.Builder(this) 
.setSmallIcon(R.drawable.ic_event) 
.setLargeIcon(BitmapFactory.decodeResource( 
getResources(), R.drawable.notif_background)) 
.setContentTitle(eventTitle) 
.setContentText(eventLocation) 
.setContentIntent(viewPendingIntent) 
.addAction(R.drawable.ic_reply, 
getString(R.string.map), replyPendingIntent) 
.setStyle(bigStyle);
Enhanced Notifications 
• Stacking Notification 
• Instead of displaying 
multiple notifications, 
stack them together in 
one group
Stacking Notification 
final static String GROUP_KEY_EMAILS = "group_key_emails"; 
! 
// Build the notification, setting the group appropriately 
Notification notif = new NotificationCompat.Builder(mContext) 
.setContentTitle("New mail from " + sender1) 
.setContentText(subject1) 
.setSmallIcon(R.drawable.new_mail); 
.setGroup(GROUP_KEY_EMAILS) 
.build();
Enhanced Notifications 
• Add Pages to Notification 
• To provide more 
information without 
requiring users to open 
your app on their phone, 
you can add pages to 
the notification.
Add Pages to Notification 
// Create builder for the main notification 
NotificationCompat.Builder mainPage = new NotificationCompat.Builder(this) ………… 
// Create a big text style for the second page 
BigTextStyle secondPageStyle = new NotificationCompat.BigTextStyle(); 
secondPageStyle.setBigContentTitle("Page 2") 
.bigText("A lot of text..."); 
// Create second page notification 
Notification secondPageNotification = new NotificationCompat.Builder(this) 
.setStyle(secondPageStyle).build(); 
// Add second page with wearable extender and extend the main notification 
Notification twoPageNotification = new WearableExtender() 
.addPage(secondPageNotification) 
.extend(notificationBuilder) 
.build(); 
// Issue the notification 
notificationManager.notify(notificationId, twoPageNotification);
Enhanced Notifications 
Full Screen Notification with embedded Activity 
Notification mNotification = new NotificationCompat.Builder(context) 
.setSmallIcon(R.drawable.appicon) 
….. 
.setCustomSizePreset(NotificationCompat.WearableExtender.SIZE_FULL_SCREEN) 
.setDisplayIntent(displayPendingIntent).build()
Enhanced Notifications 
• Custom Button • Default Open Button
Communication 
• Sending and Syncing Data 
private GoogleApiClient mGoogleApiClient; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
mGoogleApiClient = new GoogleApiClient.Builder(this) 
.addApi(Wearable.API) 
.addConnectionCallbacks(new GoogleApiClient.ConnectionCallbacks() { 
@Override 
public void onConnected(Bundle bundle) { 
Log.d(TAG, "Google Api Client connected"); 
} 
! 
@Override 
public void onConnectionSuspended(int i) { 
} 
}).build(); 
mGoogleApiClient.connect(); 
}
How to make your app 
wear-ready 
• Integration Method 
• Potential issues during development 
• Coding Tips
Potential Issues 
• Redundant Permissions 
• Cached APK 
• Problems with emulators 
• No accelerometer 
• Round emulator is not as good as square counter 
part.
Potential Issues 
• Redundant Permissions 
• Include all permissions in your handheld 
device that you need to use in watch. 
• Otherwise, it will not auto install the 
embedded apk
Problems faced 
• APK cache 
• After lot of try and error, we found that the 
handheld device was somehow caching and 
pushing old APK to watch
Problems faced 
• Round emulator is not as good as the 
square counter part. 
Round emulator being 
displayed as square
How to make your app 
wear-ready 
• Integration Method 
• Potential issues during development 
• Coding Tips
Coding Tips 
• Use common module for keeping models and constants.
Coding Tips 
• Should implement some logic on both mobile 
and watch to handle disconnect issues
Coding Tips 
• Embedded Activity in notification with different sizes 
Notification mNotification = new NotificationCompat.Builder(context) 
.setSmallIcon(R.drawable.appicon) 
….. 
.setCustomSizePreset(NotificationCompat.WearableExtender.SIZE_FULL_SCREEN) 
.setDisplayIntent(displayPendingIntent).build()
Potential Use Cases
Potential Use Cases 
Health Industry 
• Wearables makes it easy to measure body movements and other aspects! 
• Patient data can be embedded on wearable. 
• Continuous monitoring of patient is possible including, 
• Their heart-beat 
• Intensity of activity 
• Fall detection
Potential Use Cases 
Workspace 
• Help your employees being healthy. 
• Research towards working patterns. 
• Other automations like attendance, secure entrance.
Potential Use Cases 
Gaming 
• Use your wearable as Game controller. 
• Can ask user to perform some physical activity.
Recap 
• Android Wear is an android extension for wearables, maintained by Google. 
• The major concept is to avoid distractions and keep the interaction with gadgets to 
minimum 
• Android-wear is only meant to work with its companion device. 
• Since wearables are attached to body, they can provide additional useful context related 
to user’s current physical state or health. 
• Its easier to integrate Android Wear functionality in your app, though you need to think 
wisely. 
• The additional data and positioning creates many potential use cases in several industries 
for example health, employment and gaming.
Thank you 
https://play.google.com/store/apps/details? 
id=com.media2359.breaktimer 
Case Study Blog 
http://2359media.com/android-for-wearables-opportunities-and-limitations- 
of-watch-apps/

Mais conteúdo relacionado

Mais procurados

Android Wear Development
Android Wear DevelopmentAndroid Wear Development
Android Wear Development
Johnny Sung
 
Augmented Reality - A look before you leap
Augmented Reality - A look before you leapAugmented Reality - A look before you leap
Augmented Reality - A look before you leap
Gnana Sundar Rajendiran
 

Mais procurados (10)

See Androids Fighting: Connect Salesforce with Your Android Wear Watch
See Androids Fighting: Connect Salesforce with Your Android Wear WatchSee Androids Fighting: Connect Salesforce with Your Android Wear Watch
See Androids Fighting: Connect Salesforce with Your Android Wear Watch
 
Android Wear Development
Android Wear DevelopmentAndroid Wear Development
Android Wear Development
 
Introduction to Android Wear
Introduction to Android WearIntroduction to Android Wear
Introduction to Android Wear
 
Hieu Xamarin iOS9, Android M 3-11-2015
Hieu Xamarin iOS9, Android M  3-11-2015Hieu Xamarin iOS9, Android M  3-11-2015
Hieu Xamarin iOS9, Android M 3-11-2015
 
Cyworld AppStore Overview
Cyworld AppStore OverviewCyworld AppStore Overview
Cyworld AppStore Overview
 
Android wear
Android wearAndroid wear
Android wear
 
Android On Your Sleeve - DroidCon Montreal 2015
Android On Your Sleeve - DroidCon Montreal 2015Android On Your Sleeve - DroidCon Montreal 2015
Android On Your Sleeve - DroidCon Montreal 2015
 
Droidcon Turin 2015 - Android wear sdk introduction
Droidcon Turin 2015 - Android wear sdk introductionDroidcon Turin 2015 - Android wear sdk introduction
Droidcon Turin 2015 - Android wear sdk introduction
 
Android wear SDK introduction
Android wear SDK introductionAndroid wear SDK introduction
Android wear SDK introduction
 
Augmented Reality - A look before you leap
Augmented Reality - A look before you leapAugmented Reality - A look before you leap
Augmented Reality - A look before you leap
 

Semelhante a Break Timer: Android-wear introduction and application case-study

Android wear and Cardboard
Android wear and CardboardAndroid wear and Cardboard
Android wear and Cardboard
mharkus
 
Mobile Application Development -Lecture 09 & 10.pdf
Mobile Application Development -Lecture 09 & 10.pdfMobile Application Development -Lecture 09 & 10.pdf
Mobile Application Development -Lecture 09 & 10.pdf
AbdullahMunir32
 

Semelhante a Break Timer: Android-wear introduction and application case-study (20)

GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...
GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...
GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...
 
Android Wear, a developer's perspective
Android Wear, a developer's perspectiveAndroid Wear, a developer's perspective
Android Wear, a developer's perspective
 
Dm36678681
Dm36678681Dm36678681
Dm36678681
 
Android Jumpstart Jfokus
Android Jumpstart JfokusAndroid Jumpstart Jfokus
Android Jumpstart Jfokus
 
"It's Time" - Android Wear codelab - GDG MeetsU - L'Aquila
"It's Time" - Android Wear codelab - GDG MeetsU - L'Aquila"It's Time" - Android Wear codelab - GDG MeetsU - L'Aquila
"It's Time" - Android Wear codelab - GDG MeetsU - L'Aquila
 
Introduction to Android Wear
Introduction to Android WearIntroduction to Android Wear
Introduction to Android Wear
 
Android Wear - Manuel Vicente Vivo
Android Wear - Manuel Vicente VivoAndroid Wear - Manuel Vicente Vivo
Android Wear - Manuel Vicente Vivo
 
Exercises broadcast receiver,incoming phone call
Exercises broadcast receiver,incoming phone callExercises broadcast receiver,incoming phone call
Exercises broadcast receiver,incoming phone call
 
Android wear and Cardboard
Android wear and CardboardAndroid wear and Cardboard
Android wear and Cardboard
 
Android Evolution, AppForum 2014, Brussels, Friedger Müffke
Android Evolution, AppForum 2014, Brussels, Friedger MüffkeAndroid Evolution, AppForum 2014, Brussels, Friedger Müffke
Android Evolution, AppForum 2014, Brussels, Friedger Müffke
 
June 2014 - Android wear
June 2014 - Android wearJune 2014 - Android wear
June 2014 - Android wear
 
Build your own remote control. Droidcon greece 2016
Build your own remote control. Droidcon greece 2016Build your own remote control. Droidcon greece 2016
Build your own remote control. Droidcon greece 2016
 
Android by Swecha
Android by SwechaAndroid by Swecha
Android by Swecha
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
 
Synapseindia android application development tutorial
Synapseindia android application development tutorialSynapseindia android application development tutorial
Synapseindia android application development tutorial
 
Synapseindia android apps development tutorial
Synapseindia android apps  development tutorialSynapseindia android apps  development tutorial
Synapseindia android apps development tutorial
 
01 09 - graphical user interface - basic widgets
01  09 - graphical user interface - basic widgets01  09 - graphical user interface - basic widgets
01 09 - graphical user interface - basic widgets
 
Introduction to Wearable Development
Introduction to Wearable DevelopmentIntroduction to Wearable Development
Introduction to Wearable Development
 
Mobile Application Development -Lecture 09 & 10.pdf
Mobile Application Development -Lecture 09 & 10.pdfMobile Application Development -Lecture 09 & 10.pdf
Mobile Application Development -Lecture 09 & 10.pdf
 
Break Timer: android-wear case study and development tips
Break Timer: android-wear case study and development tipsBreak Timer: android-wear case study and development tips
Break Timer: android-wear case study and development tips
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 

Break Timer: Android-wear introduction and application case-study

  • 1. Android Wear introduction, concepts and case-study
  • 2. Agenda • Android Wear Introduction • Capabilities and User Interface • How to create Android Wear UX • Development case study • Make your application android-wear ready • Potential Use Cases
  • 3. Android Wear Concept • Android extension for wearables • Automatic, specific, glanceable information, with zero or low interaction! • Showing users information and functionality just when they need it
  • 4. Android Wear Basics • Require android >= 4.3 on phone (or tablet) • Require android-wear companion app on phone • Phone and wearable communicate with each other via bluetooth. • Wearable uses handheld device internet connection and GPS. • Currently available sensors on wearables are Compass, Accelerometer, Gyroscope, Heart Rate Sensor (Samsung only)
  • 5. Android Wear Capabilities • Generate notifications from phone and react them on wearables. • Embed voice capabilities for getting user input. • Create standalone apps for wearable (like compass, steps counter etc) • Almost whole android sdk is available for development!
  • 7. Android Wear UX Considerations
  • 8. Android Wear UX Considerations • Glanceable • Can user see it in split second?
  • 9. Android Wear UX Considerations • Big Gestures • Use it without focusing on watch!
  • 10. Android Wear UX Considerations • Launched Automatically • Right information at right time
  • 11. Android Wear UX Considerations • Do one thing, do it fast • Show absolute minimum, actionable information
  • 12. Android Wear UX Considerations • Is it time to disturb? • It is on wrist, its always visible, its difficult to avoid! • Buzz the watch fewer times that you would do on phone!
  • 13. Android UX Applied Lets see some examples http://time.com/2964389/android-wear-watch-review/
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 20. Android Wear case study Why we did this • Keep ourselves updated, so we can help our clients better. • Wearable has a lot of potential to grow. • Android Wear is the first disciplined approach from Google to bring Android to wearables • Explore Android Wear; discover use-cases and create a good example app that cannot be done without Watch!
  • 21. Android Wear case study Problem: If you use computer for 3-4 hours a day and sit continuously in a similar posture, you are at risk of RSI (Repetitive Strain Injury). What is RSI: Repetitive strain injury (RSI) is a condition where pain and other symptoms occur in an area of the body which has done repetitive tasks (often the arms or hands).
  • 22. Break Timer How to avoid RSI: There can be several techniques, the most basic one is to take regular breaks! The Solution: Break Timer sits silently on your wrist and remind you to take break if you have been typing for long intervals. Uses the accelerometer available on watch to see if you are continuously typing.
  • 23. Break Timer - case study
  • 24. Break Timer - case study
  • 25. Break Timer - case study Typing indicator
  • 26. How to make your app wear-ready
  • 27. How to make your app wear-ready • Integration Method • Potential issues during development • Coding Tips
  • 28. Enhanced Notifications • Single Notification • Can have multiple actions • Appears by default, with only action “Open on phone”.
  • 29. Single Notification NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this) .setSmallIcon(R.drawable.ic_event) .setLargeIcon(BitmapFactory.decodeResource( getResources(), R.drawable.notif_background)) .setContentTitle(eventTitle) .setContentText(eventLocation) .setContentIntent(viewPendingIntent) .addAction(R.drawable.ic_reply, getString(R.string.map), replyPendingIntent) .setStyle(bigStyle);
  • 30. Enhanced Notifications • Stacking Notification • Instead of displaying multiple notifications, stack them together in one group
  • 31. Stacking Notification final static String GROUP_KEY_EMAILS = "group_key_emails"; ! // Build the notification, setting the group appropriately Notification notif = new NotificationCompat.Builder(mContext) .setContentTitle("New mail from " + sender1) .setContentText(subject1) .setSmallIcon(R.drawable.new_mail); .setGroup(GROUP_KEY_EMAILS) .build();
  • 32. Enhanced Notifications • Add Pages to Notification • To provide more information without requiring users to open your app on their phone, you can add pages to the notification.
  • 33. Add Pages to Notification // Create builder for the main notification NotificationCompat.Builder mainPage = new NotificationCompat.Builder(this) ………… // Create a big text style for the second page BigTextStyle secondPageStyle = new NotificationCompat.BigTextStyle(); secondPageStyle.setBigContentTitle("Page 2") .bigText("A lot of text..."); // Create second page notification Notification secondPageNotification = new NotificationCompat.Builder(this) .setStyle(secondPageStyle).build(); // Add second page with wearable extender and extend the main notification Notification twoPageNotification = new WearableExtender() .addPage(secondPageNotification) .extend(notificationBuilder) .build(); // Issue the notification notificationManager.notify(notificationId, twoPageNotification);
  • 34. Enhanced Notifications Full Screen Notification with embedded Activity Notification mNotification = new NotificationCompat.Builder(context) .setSmallIcon(R.drawable.appicon) ….. .setCustomSizePreset(NotificationCompat.WearableExtender.SIZE_FULL_SCREEN) .setDisplayIntent(displayPendingIntent).build()
  • 35. Enhanced Notifications • Custom Button • Default Open Button
  • 36. Communication • Sending and Syncing Data private GoogleApiClient mGoogleApiClient; @Override protected void onCreate(Bundle savedInstanceState) { mGoogleApiClient = new GoogleApiClient.Builder(this) .addApi(Wearable.API) .addConnectionCallbacks(new GoogleApiClient.ConnectionCallbacks() { @Override public void onConnected(Bundle bundle) { Log.d(TAG, "Google Api Client connected"); } ! @Override public void onConnectionSuspended(int i) { } }).build(); mGoogleApiClient.connect(); }
  • 37. How to make your app wear-ready • Integration Method • Potential issues during development • Coding Tips
  • 38. Potential Issues • Redundant Permissions • Cached APK • Problems with emulators • No accelerometer • Round emulator is not as good as square counter part.
  • 39. Potential Issues • Redundant Permissions • Include all permissions in your handheld device that you need to use in watch. • Otherwise, it will not auto install the embedded apk
  • 40. Problems faced • APK cache • After lot of try and error, we found that the handheld device was somehow caching and pushing old APK to watch
  • 41. Problems faced • Round emulator is not as good as the square counter part. Round emulator being displayed as square
  • 42. How to make your app wear-ready • Integration Method • Potential issues during development • Coding Tips
  • 43. Coding Tips • Use common module for keeping models and constants.
  • 44. Coding Tips • Should implement some logic on both mobile and watch to handle disconnect issues
  • 45. Coding Tips • Embedded Activity in notification with different sizes Notification mNotification = new NotificationCompat.Builder(context) .setSmallIcon(R.drawable.appicon) ….. .setCustomSizePreset(NotificationCompat.WearableExtender.SIZE_FULL_SCREEN) .setDisplayIntent(displayPendingIntent).build()
  • 47. Potential Use Cases Health Industry • Wearables makes it easy to measure body movements and other aspects! • Patient data can be embedded on wearable. • Continuous monitoring of patient is possible including, • Their heart-beat • Intensity of activity • Fall detection
  • 48. Potential Use Cases Workspace • Help your employees being healthy. • Research towards working patterns. • Other automations like attendance, secure entrance.
  • 49. Potential Use Cases Gaming • Use your wearable as Game controller. • Can ask user to perform some physical activity.
  • 50. Recap • Android Wear is an android extension for wearables, maintained by Google. • The major concept is to avoid distractions and keep the interaction with gadgets to minimum • Android-wear is only meant to work with its companion device. • Since wearables are attached to body, they can provide additional useful context related to user’s current physical state or health. • Its easier to integrate Android Wear functionality in your app, though you need to think wisely. • The additional data and positioning creates many potential use cases in several industries for example health, employment and gaming.
  • 51. Thank you https://play.google.com/store/apps/details? id=com.media2359.breaktimer Case Study Blog http://2359media.com/android-for-wearables-opportunities-and-limitations- of-watch-apps/