SlideShare une entreprise Scribd logo
1  sur  27
Tomás Ruiz-López
Software Design Manager at
Everyware Technologies
@tomasruizlopez
@everywaretech /everywaretech
http://www.everywaretech.es
Android Wear
From your pocket to your wrist with
#gandroid
Android Wear
#gandroid
Android Wear
Suggest
The context stream
#gandroid
Android Wear
Suggest
The context stream
Notifications
#gandroid
Android Wear
Suggest
The context stream
Notifications
Images
#gandroid
Android Wear
Suggest
The context stream
Notifications
Actions
Images
#gandroid
Android Wear
Suggest
The context stream
Demand
The cue card
Notifications
Actions
Images
#gandroid
Android Wear
Suggest
The context stream
Demand
The cue card
Notifications
Actions
Images
Voice Reply
#gandroid
1 2 3 4
Android Wear
An overview of
API
#gandroid
1 2 3 4
Android Wear
An overview of
API
#gandroid
Eventbox
free on Google Play
1
2 3 4Creating
Notifications
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
#gandroid
#gandroid
#gandroid
#gandroid
1
2 3 4Creating
Notifications
NotificationCompat.Builder notificationBuilder =	
	 new NotificationCompat.Builder(this)	
	 .setSmallIcon(R.drawable.event)	
	 .setContentTitle(eventTitle)	
	 .setContentText(eventLocation)	
	 .setContentIntent(viewPendingIntent)	
.setBigIcon(R.drawable.background);	
Add Background Icon
#gandroid
#gandroid
1
2 3 4Creating
Notifications
NotificationCompat.Builder notificationBuilder =	
	 new NotificationCompat.Builder(this)	
	 .setSmallIcon(R.drawable.event)	
	 .setContentTitle(eventTitle)	
	 .setContentText(eventLocation)	
	 .setContentIntent(viewPendingIntent)	
.setBigIcon(R.drawable.background);	
	 .addAction(R.drawable.maps,
context.getResources().getString(R.string.maps), 	
mapPendingIntent);	
Add Actions
#gandroid
#gandroid
1
2
3 4Receiving
Voice
Input
<?xml version="1.0" encoding="utf-8"?>	
<resources>	
<string-array name="reply_choices">	
<item>Yes</item>	
<item>No</item>	
<item>Maybe</item>	
</string-array>	
</resources>
#gandroid
1
2
3 4Receiving
Voice
Input
String replyLabel = getResources()	
	 	 .getString(R.string.reply_label);	
String[] replyChoices = 	
	 getResources().getStringArray(R.array.reply_choices);	
!
RemoteInput remoteInput = new
RemoteInput.Builder(EXTRA_VOICE_REPLY)	
.setLabel(replyLabel)	
.setChoices(replyChoices)	
.build();
#gandroid
1
2
3 4Receiving
Voice
Input
String replyLabel = getResources()	
	 	 .getString(R.string.reply_label);	
String[] replyChoices = 	
	 getResources().getStringArray(R.array.reply_choices);	
!
RemoteInput remoteInput = new
RemoteInput.Builder(EXTRA_VOICE_REPLY)	
.setLabel(replyLabel)	
.setChoices(replyChoices)	
.build();
#gandroid
1 2
3
4
Adding
Pages
BigTextStyle secondPageStyle = new NotificationCompat.BigTextStyle();	
secondPageStyle.setBigContentTitle("Title")	
.bigText("Content");	
!
// Create second page notification	
Notification secondPageNotification =	
new NotificationCompat.Builder(context)	
.setStyle(secondPageStyle)	
.build();	
!
// Create main notification and add the second page	
Notification twoPageNotification =	
new WearableNotifications.Builder(builder)	
.addPage(secondPageNotification)	
.build();
#gandroid
#gandroid
1 2 3
4
Stacking
Notifications
final String GROUP_KEY = "group_key";	
!
NotificationCompat.Builder builder = new NotificationCompat.Builder(this)	
.setContentTitle("Title")	
.setContentText("Text")	
.setSmallIcon(R.drawable.event);	
!
Notification notif = new WearableNotifications.Builder(builder)	
.setGroup(GROUP_KEY)	
.build();
#gandroid
1 2 3
4
Stacking
Notifications
final String GROUP_KEY = "group_key";	
!
NotificationCompat.Builder builder = new NotificationCompat.Builder(this)	
.setContentTitle("Title")	
.setContentText("Text")	
.setSmallIcon(R.drawable.event);	
!
Notification notif = new WearableNotifications.Builder(builder)	
.setGroup(GROUP_KEY)	
.build();
#gandroid
Tomás Ruiz-López
Software Design Manager at
Everyware Technologies
@tomasruizlopez
@everywaretech /everywaretech
http://www.everywaretech.es
Questions?
Thanks for your attention!
#gandroid
Tomás Ruiz-López
Software Design Manager at
Everyware Technologies
@tomasruizlopez
@everywaretech /everywaretech
http://www.everywaretech.es
Android Wear
From your pocket to your wrist with
#gandroid

Contenu connexe

Tendances

Android is going to Go! Android and Golang
Android is going to Go! Android and GolangAndroid is going to Go! Android and Golang
Android is going to Go! Android and GolangAlmog Baku
 
What is flutter and why should i care? Lightning talk
What is flutter and why should i care? Lightning talkWhat is flutter and why should i care? Lightning talk
What is flutter and why should i care? Lightning talkSergi Martínez
 
The Post-Production Cycle - Game Software Project Management
The Post-Production Cycle - Game Software Project ManagementThe Post-Production Cycle - Game Software Project Management
The Post-Production Cycle - Game Software Project ManagementSimeon Pashley
 
Cross-Platform Mobile Apps with Ruby, MWRC
Cross-Platform Mobile Apps with Ruby, MWRCCross-Platform Mobile Apps with Ruby, MWRC
Cross-Platform Mobile Apps with Ruby, MWRCSarah Allen
 
Focusing on A and E in Chromatic Scale - Jenia Barabanov
Focusing on A and E in Chromatic Scale - Jenia BarabanovFocusing on A and E in Chromatic Scale - Jenia Barabanov
Focusing on A and E in Chromatic Scale - Jenia BarabanovWix Engineering
 
A good intro to Flutter and its magic
A good intro to Flutter and its magicA good intro to Flutter and its magic
A good intro to Flutter and its magicTarek Alabd
 
Android Bazaar and Conference 2011 Summer 2011.07.17
Android Bazaar and Conference 2011 Summer 2011.07.17Android Bazaar and Conference 2011 Summer 2011.07.17
Android Bazaar and Conference 2011 Summer 2011.07.17Takashi EGAWA
 
Null safety in dart and flutter , the whole story!
Null safety in dart and flutter , the whole story!Null safety in dart and flutter , the whole story!
Null safety in dart and flutter , the whole story!Ahmed Abu Eldahab
 
Top 10 programming langauges crossed decades
Top 10 programming langauges crossed decadesTop 10 programming langauges crossed decades
Top 10 programming langauges crossed decadeszarigatongy
 
Mobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google FlutterMobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google FlutterAhmed Abu Eldahab
 
접근성(Accessibility)과 안드로이드
접근성(Accessibility)과 안드로이드접근성(Accessibility)과 안드로이드
접근성(Accessibility)과 안드로이드GDG Korea
 
critical reflection 2
critical reflection 2critical reflection 2
critical reflection 2bribri1010
 
Android Wear-What's new in android
Android Wear-What's new in android Android Wear-What's new in android
Android Wear-What's new in android Hiroshi Hashimoto
 
Lukoh's Portfolio
Lukoh's PortfolioLukoh's Portfolio
Lukoh's PortfolioLukoh Nam
 

Tendances (20)

Android is going to Go! Android and Golang
Android is going to Go! Android and GolangAndroid is going to Go! Android and Golang
Android is going to Go! Android and Golang
 
What is flutter and why should i care? Lightning talk
What is flutter and why should i care? Lightning talkWhat is flutter and why should i care? Lightning talk
What is flutter and why should i care? Lightning talk
 
Equipment List
Equipment List Equipment List
Equipment List
 
Google VRとDaydreamの最近の話
Google VRとDaydreamの最近の話Google VRとDaydreamの最近の話
Google VRとDaydreamの最近の話
 
The Post-Production Cycle - Game Software Project Management
The Post-Production Cycle - Game Software Project ManagementThe Post-Production Cycle - Game Software Project Management
The Post-Production Cycle - Game Software Project Management
 
Cross-Platform Mobile Apps with Ruby, MWRC
Cross-Platform Mobile Apps with Ruby, MWRCCross-Platform Mobile Apps with Ruby, MWRC
Cross-Platform Mobile Apps with Ruby, MWRC
 
Focusing on A and E in Chromatic Scale - Jenia Barabanov
Focusing on A and E in Chromatic Scale - Jenia BarabanovFocusing on A and E in Chromatic Scale - Jenia Barabanov
Focusing on A and E in Chromatic Scale - Jenia Barabanov
 
A good intro to Flutter and its magic
A good intro to Flutter and its magicA good intro to Flutter and its magic
A good intro to Flutter and its magic
 
Android Bazaar and Conference 2011 Summer 2011.07.17
Android Bazaar and Conference 2011 Summer 2011.07.17Android Bazaar and Conference 2011 Summer 2011.07.17
Android Bazaar and Conference 2011 Summer 2011.07.17
 
Ui Crunch #5 Android Wear
Ui Crunch #5 Android WearUi Crunch #5 Android Wear
Ui Crunch #5 Android Wear
 
Null safety in dart and flutter , the whole story!
Null safety in dart and flutter , the whole story!Null safety in dart and flutter , the whole story!
Null safety in dart and flutter , the whole story!
 
Top 10 programming langauges crossed decades
Top 10 programming langauges crossed decadesTop 10 programming langauges crossed decades
Top 10 programming langauges crossed decades
 
Mobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google FlutterMobile DevOps pipeline using Google Flutter
Mobile DevOps pipeline using Google Flutter
 
접근성(Accessibility)과 안드로이드
접근성(Accessibility)과 안드로이드접근성(Accessibility)과 안드로이드
접근성(Accessibility)과 안드로이드
 
critical reflection 2
critical reflection 2critical reflection 2
critical reflection 2
 
PPP slide show
PPP slide showPPP slide show
PPP slide show
 
What after BCA
What after BCAWhat after BCA
What after BCA
 
Android Wear-What's new in android
Android Wear-What's new in android Android Wear-What's new in android
Android Wear-What's new in android
 
Androidtraining
AndroidtrainingAndroidtraining
Androidtraining
 
Lukoh's Portfolio
Lukoh's PortfolioLukoh's Portfolio
Lukoh's Portfolio
 

Similaire à From your pocket to your wrist with Android Wear

Introduction to Android Wear
Introduction to Android WearIntroduction to Android Wear
Introduction to Android WearSebastian Mauer
 
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 introductionMichelantonio Trizio
 
Android wear SDK introduction
Android wear SDK introductionAndroid wear SDK introduction
Android wear SDK introductionTiziano Basile
 
"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'AquilaGiuseppe Cerratti
 
Introduction to Android App Development
Introduction to Android App DevelopmentIntroduction to Android App Development
Introduction to Android App DevelopmentTodd Burgess
 
Android Introduction
Android IntroductionAndroid Introduction
Android IntroductionAlfredo Torre
 
DEVIEW2013: Automating Performance Tests for Android Applications
DEVIEW2013: Automating Performance Tests for Android ApplicationsDEVIEW2013: Automating Performance Tests for Android Applications
DEVIEW2013: Automating Performance Tests for Android ApplicationsKyungmin Lee
 
Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009sullis
 
Android platform
Android platformAndroid platform
Android platformFarhad
 
Droidcon Greece '15 - Reverse Engineering in Android: Countermeasures and Tools
Droidcon Greece '15 - Reverse Engineering in Android: Countermeasures and ToolsDroidcon Greece '15 - Reverse Engineering in Android: Countermeasures and Tools
Droidcon Greece '15 - Reverse Engineering in Android: Countermeasures and ToolsDario Incalza
 
Introduction to Android - Mobile Portland
Introduction to Android - Mobile PortlandIntroduction to Android - Mobile Portland
Introduction to Android - Mobile Portlandsullis
 
FRIDA 101 Android
FRIDA 101 AndroidFRIDA 101 Android
FRIDA 101 AndroidTony Thomas
 
Android Wear Presentation
Android Wear PresentationAndroid Wear Presentation
Android Wear PresentationNanik Tolaram
 

Similaire à From your pocket to your wrist with Android Wear (20)

Introduction to Android Wear
Introduction to Android WearIntroduction to Android Wear
Introduction to Android Wear
 
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
 
Android Things - The IoT platform for everyone.
Android Things - The IoT platform for everyone. Android Things - The IoT platform for everyone.
Android Things - The IoT platform for everyone.
 
Ruby conf2012
Ruby conf2012Ruby conf2012
Ruby conf2012
 
Android Stsucture
Android StsuctureAndroid Stsucture
Android Stsucture
 
"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 App Development
Introduction to Android App DevelopmentIntroduction to Android App Development
Introduction to Android App Development
 
Android Introduction
Android IntroductionAndroid Introduction
Android Introduction
 
DEVIEW2013: Automating Performance Tests for Android Applications
DEVIEW2013: Automating Performance Tests for Android ApplicationsDEVIEW2013: Automating Performance Tests for Android Applications
DEVIEW2013: Automating Performance Tests for Android Applications
 
Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009
 
Android platform
Android platformAndroid platform
Android platform
 
Android platform
Android platformAndroid platform
Android platform
 
Droidcon Greece '15 - Reverse Engineering in Android: Countermeasures and Tools
Droidcon Greece '15 - Reverse Engineering in Android: Countermeasures and ToolsDroidcon Greece '15 - Reverse Engineering in Android: Countermeasures and Tools
Droidcon Greece '15 - Reverse Engineering in Android: Countermeasures and Tools
 
Introduction to Android - Mobile Portland
Introduction to Android - Mobile PortlandIntroduction to Android - Mobile Portland
Introduction to Android - Mobile Portland
 
Hands on Android
Hands on AndroidHands on Android
Hands on Android
 
Android gui framework
Android gui frameworkAndroid gui framework
Android gui framework
 
FRIDA 101 Android
FRIDA 101 AndroidFRIDA 101 Android
FRIDA 101 Android
 
Andriod apps
Andriod appsAndriod apps
Andriod apps
 
Android Wear Presentation
Android Wear PresentationAndroid Wear Presentation
Android Wear Presentation
 

Dernier

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 

Dernier (20)

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 

From your pocket to your wrist with Android Wear

  • 1. Tomás Ruiz-López Software Design Manager at Everyware Technologies @tomasruizlopez @everywaretech /everywaretech http://www.everywaretech.es Android Wear From your pocket to your wrist with #gandroid
  • 4. Android Wear Suggest The context stream Notifications #gandroid
  • 5. Android Wear Suggest The context stream Notifications Images #gandroid
  • 6. Android Wear Suggest The context stream Notifications Actions Images #gandroid
  • 7. Android Wear Suggest The context stream Demand The cue card Notifications Actions Images #gandroid
  • 8. Android Wear Suggest The context stream Demand The cue card Notifications Actions Images Voice Reply #gandroid
  • 9. 1 2 3 4 Android Wear An overview of API #gandroid
  • 10. 1 2 3 4 Android Wear An overview of API #gandroid Eventbox free on Google Play
  • 11. 1 2 3 4Creating Notifications 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 #gandroid
  • 15. 1 2 3 4Creating Notifications NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this) .setSmallIcon(R.drawable.event) .setContentTitle(eventTitle) .setContentText(eventLocation) .setContentIntent(viewPendingIntent) .setBigIcon(R.drawable.background); Add Background Icon #gandroid
  • 17. 1 2 3 4Creating Notifications NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this) .setSmallIcon(R.drawable.event) .setContentTitle(eventTitle) .setContentText(eventLocation) .setContentIntent(viewPendingIntent) .setBigIcon(R.drawable.background); .addAction(R.drawable.maps, context.getResources().getString(R.string.maps), mapPendingIntent); Add Actions #gandroid
  • 19. 1 2 3 4Receiving Voice Input <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="reply_choices"> <item>Yes</item> <item>No</item> <item>Maybe</item> </string-array> </resources> #gandroid
  • 20. 1 2 3 4Receiving Voice Input String replyLabel = getResources() .getString(R.string.reply_label); String[] replyChoices = getResources().getStringArray(R.array.reply_choices); ! RemoteInput remoteInput = new RemoteInput.Builder(EXTRA_VOICE_REPLY) .setLabel(replyLabel) .setChoices(replyChoices) .build(); #gandroid
  • 21. 1 2 3 4Receiving Voice Input String replyLabel = getResources() .getString(R.string.reply_label); String[] replyChoices = getResources().getStringArray(R.array.reply_choices); ! RemoteInput remoteInput = new RemoteInput.Builder(EXTRA_VOICE_REPLY) .setLabel(replyLabel) .setChoices(replyChoices) .build(); #gandroid
  • 22. 1 2 3 4 Adding Pages BigTextStyle secondPageStyle = new NotificationCompat.BigTextStyle(); secondPageStyle.setBigContentTitle("Title") .bigText("Content"); ! // Create second page notification Notification secondPageNotification = new NotificationCompat.Builder(context) .setStyle(secondPageStyle) .build(); ! // Create main notification and add the second page Notification twoPageNotification = new WearableNotifications.Builder(builder) .addPage(secondPageNotification) .build(); #gandroid
  • 24. 1 2 3 4 Stacking Notifications final String GROUP_KEY = "group_key"; ! NotificationCompat.Builder builder = new NotificationCompat.Builder(this) .setContentTitle("Title") .setContentText("Text") .setSmallIcon(R.drawable.event); ! Notification notif = new WearableNotifications.Builder(builder) .setGroup(GROUP_KEY) .build(); #gandroid
  • 25. 1 2 3 4 Stacking Notifications final String GROUP_KEY = "group_key"; ! NotificationCompat.Builder builder = new NotificationCompat.Builder(this) .setContentTitle("Title") .setContentText("Text") .setSmallIcon(R.drawable.event); ! Notification notif = new WearableNotifications.Builder(builder) .setGroup(GROUP_KEY) .build(); #gandroid
  • 26. Tomás Ruiz-López Software Design Manager at Everyware Technologies @tomasruizlopez @everywaretech /everywaretech http://www.everywaretech.es Questions? Thanks for your attention! #gandroid
  • 27. Tomás Ruiz-López Software Design Manager at Everyware Technologies @tomasruizlopez @everywaretech /everywaretech http://www.everywaretech.es Android Wear From your pocket to your wrist with #gandroid