際際滷

際際滷Share a Scribd company logo
Wearables development with Xamarin
Who are we?
Jonah Hulselmans
@jonahhulselmans
Gert Cominotto
@GertCominotto
gert-cominotto.be
 Xamarin
 Microsoft Band
 Apple Watch
 Android Wear
 Wearable Overview
 Code reuse
 Lessons learned / Heads up / Conclusion
 Q&A
Overview
Xamarin FormsXamarin
Microsoft Band
 Fitness Band, not a watch
 Compatible with WP, Android & iOS
 TILES TILES TILES!!!
 Microsoft Health App (Important!)
Microsoft Band
 Sensors
 Accelerometer
 Gyroscope
 Distance
 Heart Rate
 Pedometer
 Skin Temperature
 UV
 Band Contact (worn / not worn)
 Calories
 Galvanic Skin Response (Band2)
 Ambient Light (Band2)
 Barometer (Band2)
 Altimeter (Band2)
Microsoft Band
 Tools
 SDK
 Native SDK
 Xamarin Components
 Web Tile SDK
 Cloud API (Health Data API)
 Emulator?
 No code runs on the band
Developing for the Microsoft Band
What can you do with it?
Access sensors Tiles Personalization
 Pair it with your phone / pc via Bluetooth
Connecting to the device
Connection Demo
Accessing Sensors
DEMOSensors Demo
 Create & Manage Custom Tiles
 Tile notifications
 Dialogs
 Messages
 Custom layouts
Tiles
Tiles Demo
 You can change your bands colors and theme 
Personalization
NO Demo!
 Background Tasks
 Only on Windows Phone (8.1 & 10)
 Custom Tile Events
 Requires Microsoft Health App
What else can you do?
Custom Tile Event Demo
Apple Watch
Apple Watch
 38mm and 42mm
 Apple Pay
 Fitness / Health
 Notifications
 Apps
Apple Watch sensors
 Heart rate sensor
 Accelerometer
 Gyroscope
 Ambient light sensor
Developing for the Apple Watch
 xCode / Xamarin Studio / Visual Studio
 Simulator
 Xamarin.iOS
 Watch OS 1 apps run on iPhone
 (Watch OS 2 apps run on the watch)
What can you do with it?
Notifications Glances App
Notifications
Short looks Long looks
Notifications demo
Deploy apps to the Apple Watch
 xCode and Xamarin Studio or Visual Studio
 Apple Watch is paired to your iPhone
 Provisioning profiles are setup correctly
 Deploy the app to your iPhone
Communication
 Call a method against the parent app
 WKInterfaceController.OpenParentApplication (from watch extensions)
 HandleWatchKitExtensionRequest (parent app)
 Share a storage location with the parent iPhone app
 NSUserDefaults
 WormHoleSharp
 https://github.com/Clancey/WormHoleSharp
Android Wear
 Stock Android!
 Works with Android & iOS
 Round or Square design
 Focus on
 Telling Time (Watch Faces)
 Notifications
 Google Now
 Apps
Android Wear
Android Wear Sensors (Varies per device)
 Tools
 Emulator?
 SDK
 Native SDK Android
 Xamarin.Android
 Code runs on the device
 Communicate with phone via APIs
Developing for Android Wear
What can you do with it?
Notifications Companion Apps Watch Faces
 Install Android Wear App on your device
 Follow the steps on the device to Pair it
Connecting to the device
Connection Demo
 Create Notifications
 Add Actions
 Wearable Specific Notifications / Actions
Notifications
Notifications Demo
 Main differences:
 Wearable apps are relatively small in size and functionality compared to
phone apps.
 Users don't download apps directly onto the wearable.
 2 Modes -> Interactive and Ambient
Companion Apps
Companion App Demo
 MessageApi
 Send messages to other nodes. (Small payloads)
 DataApi
 Send data to other nodes (Bigger payloads like assets)
Communication Demo
Communication Demo
Wearable Overview
Microsoft Band Apple Watch Android Wear
Runs on Device No No Yes
User Input No Yes (Touch & Voice) Yes (Touch & Voice)
Sensors Yes Yes (Depending on Device)
Phone Requirements Bluetooth LE
(Windows, iOS & Android)
iOS 8.2 Bluetooth LE
(Android 4.3)
Publishing No separate store
WebTiles via Health App
No separate store
Deployed with Phone app
No separate store
Deployed with Phone app
 Not a great idea
 Too different architecture and capabilities
 Different way of connecting to devices
 Very custom experience per wearable
 But I deem it possible
Code Reuse
 The Xamarin Nuget packages didnt support UWP 10 at first
 UWP App is coming in the next couple of weeks
 By far the easiest to develop for
 Excellent for when using sensors
 With more background tasks capabilities, good future
Lessons learned / Heads up / Conclusion
Microsoft Band
 Feels sluggish (Watch OS 1)
 Xamarin does not yet support watch OS 2
 (only on alpha channel)
 Certificates + provisioning profiles
 Disable Enable device-specific builds in the watchKitExtensions
project
Lessons learned / Heads up / Conclusion
Apple Watch
 Android wearable emulator = utter crap!
 If the Android emulator isnt starting:
 emulator -avd ExampleVDName -debug-all -noaudio -nocache -wipe-data -dns-server 8.8.8.8
 Real device debugging isnt much better (long deploy times)
Lessons learned / Heads up / Conclusion
Android
Q & A
IS HIRING AN ANDROID DEV!
Ad

Recommended

里凌 虜旅留虜 龍流侶亮留
里凌 虜旅留虜 龍流侶亮留
Akis Ampelas
The #1 Skill for Game Designers and How to Practice It
The #1 Skill for Game Designers and How to Practice It
Roberto Dillon
Wearables with C# and Xamarin
Wearables with C# and Xamarin
Craig Dunn
Android Wear Applications in C# with Xamarin
Android Wear Applications in C# with Xamarin
James Montemagno
Developing Your First Android Wear App
Developing Your First Android Wear App
James Montemagno
Apple Watch Development w/ Xamarin Watch Kit
Apple Watch Development w/ Xamarin Watch Kit
Tom Soderling
Wearables meetup
Wearables meetup
Perfecto Mobile
Build your own remote control. Droidcon greece 2016
Build your own remote control. Droidcon greece 2016
Jesus Gumiel
Break Timer: Android-wear introduction and application case-study
Break Timer: Android-wear introduction and application case-study
Umair Vatao
Android wear
Android wear
Mohammed Sonnet Khan
Developing For Android Wear - Part 2
Developing For Android Wear - Part 2
Justin Munger
Building for android wear Depth and Flexibility.
Building for android wear Depth and Flexibility.
Ketan Raval
Android Wearable App
Android Wearable App
Mindfire Solutions
Android wear SDK introduction
Android wear SDK introduction
Tiziano Basile
Droidcon Turin 2015 - Android wear sdk introduction
Droidcon Turin 2015 - Android wear sdk introduction
Michelantonio Trizio
Apple Watch Development with Xamarin Watch Kit
Apple Watch Development with Xamarin Watch Kit
Tom Soderling
Android wear - CC Mobile
Android wear - CC Mobile
JWORKS powered by Ordina
[MobConf] Programming wearables in c#
[MobConf] Programming wearables in c#
Nish Anil
Android Wear Virtual Digital Assistant on your wrist
Android Wear Virtual Digital Assistant on your wrist
Endeavour Software Technologies
Android Wear Development for beginners
Android Wear Development for beginners
Moyinoluwa Adeyemi
Infinum Android Talks #09 - Android Wear UI
Infinum Android Talks #09 - Android Wear UI
Infinum
Developing for android wear
Developing for android wear
Thomas Oldervoll
Android Wear Development
Android Wear Development
Takahiro (Poly) Horikawa
Android Wear, a developer's perspective
Android Wear, a developer's perspective
Sebastian Vieira
Android Wearable App Development - 1
Android Wearable App Development - 1
Ketan Raval
Wearables Presentation from Queensland C# Mobile Developers August 2016
Wearables Presentation from Queensland C# Mobile Developers August 2016
Glenn Stephens
Apple Watch and Xamarin (NoVA Mobile C# Dev Group 4/8/15)
Apple Watch and Xamarin (NoVA Mobile C# Dev Group 4/8/15)
Ed Snider
Android Wear from zero to hero
Android Wear from zero to hero
Roberto Orgiu
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
Smarter Aviation Data Management: Lessons from Swedavia Airports and Sweco
Smarter Aviation Data Management: Lessons from Swedavia Airports and Sweco
Safe Software

More Related Content

Similar to Developing for Wearables with Xamarin (20)

Break Timer: Android-wear introduction and application case-study
Break Timer: Android-wear introduction and application case-study
Umair Vatao
Android wear
Android wear
Mohammed Sonnet Khan
Developing For Android Wear - Part 2
Developing For Android Wear - Part 2
Justin Munger
Building for android wear Depth and Flexibility.
Building for android wear Depth and Flexibility.
Ketan Raval
Android Wearable App
Android Wearable App
Mindfire Solutions
Android wear SDK introduction
Android wear SDK introduction
Tiziano Basile
Droidcon Turin 2015 - Android wear sdk introduction
Droidcon Turin 2015 - Android wear sdk introduction
Michelantonio Trizio
Apple Watch Development with Xamarin Watch Kit
Apple Watch Development with Xamarin Watch Kit
Tom Soderling
Android wear - CC Mobile
Android wear - CC Mobile
JWORKS powered by Ordina
[MobConf] Programming wearables in c#
[MobConf] Programming wearables in c#
Nish Anil
Android Wear Virtual Digital Assistant on your wrist
Android Wear Virtual Digital Assistant on your wrist
Endeavour Software Technologies
Android Wear Development for beginners
Android Wear Development for beginners
Moyinoluwa Adeyemi
Infinum Android Talks #09 - Android Wear UI
Infinum Android Talks #09 - Android Wear UI
Infinum
Developing for android wear
Developing for android wear
Thomas Oldervoll
Android Wear Development
Android Wear Development
Takahiro (Poly) Horikawa
Android Wear, a developer's perspective
Android Wear, a developer's perspective
Sebastian Vieira
Android Wearable App Development - 1
Android Wearable App Development - 1
Ketan Raval
Wearables Presentation from Queensland C# Mobile Developers August 2016
Wearables Presentation from Queensland C# Mobile Developers August 2016
Glenn Stephens
Apple Watch and Xamarin (NoVA Mobile C# Dev Group 4/8/15)
Apple Watch and Xamarin (NoVA Mobile C# Dev Group 4/8/15)
Ed Snider
Android Wear from zero to hero
Android Wear from zero to hero
Roberto Orgiu
Break Timer: Android-wear introduction and application case-study
Break Timer: Android-wear introduction and application case-study
Umair Vatao
Developing For Android Wear - Part 2
Developing For Android Wear - Part 2
Justin Munger
Building for android wear Depth and Flexibility.
Building for android wear Depth and Flexibility.
Ketan Raval
Android wear SDK introduction
Android wear SDK introduction
Tiziano Basile
Droidcon Turin 2015 - Android wear sdk introduction
Droidcon Turin 2015 - Android wear sdk introduction
Michelantonio Trizio
Apple Watch Development with Xamarin Watch Kit
Apple Watch Development with Xamarin Watch Kit
Tom Soderling
[MobConf] Programming wearables in c#
[MobConf] Programming wearables in c#
Nish Anil
Android Wear Development for beginners
Android Wear Development for beginners
Moyinoluwa Adeyemi
Infinum Android Talks #09 - Android Wear UI
Infinum Android Talks #09 - Android Wear UI
Infinum
Developing for android wear
Developing for android wear
Thomas Oldervoll
Android Wear, a developer's perspective
Android Wear, a developer's perspective
Sebastian Vieira
Android Wearable App Development - 1
Android Wearable App Development - 1
Ketan Raval
Wearables Presentation from Queensland C# Mobile Developers August 2016
Wearables Presentation from Queensland C# Mobile Developers August 2016
Glenn Stephens
Apple Watch and Xamarin (NoVA Mobile C# Dev Group 4/8/15)
Apple Watch and Xamarin (NoVA Mobile C# Dev Group 4/8/15)
Ed Snider
Android Wear from zero to hero
Android Wear from zero to hero
Roberto Orgiu

Recently uploaded (20)

10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
Smarter Aviation Data Management: Lessons from Swedavia Airports and Sweco
Smarter Aviation Data Management: Lessons from Swedavia Airports and Sweco
Safe Software
2025_06_18 - OpenMetadata Community Meeting.pdf
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
digitaljignect
From Manual to Auto Searching- FME in the Driver's Seat
From Manual to Auto Searching- FME in the Driver's Seat
Safe Software
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
yosra Saidani
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik
Curietech AI in action - Accelerate MuleSoft development
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
The Future of Product Management in AI ERA.pdf
The Future of Product Management in AI ERA.pdf
Alyona Owens
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
OpenPOWER Foundation & Open-Source Core Innovations
OpenPOWER Foundation & Open-Source Core Innovations
IBM
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
cnc-processing-centers-centateq-p-110-en.pdf
cnc-processing-centers-centateq-p-110-en.pdf
AmirStern2
MuleSoft for AgentForce : Topic Center and API Catalog
MuleSoft for AgentForce : Topic Center and API Catalog
shyamraj55
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
UserCon Belgium: Honey, VMware increased my bill
UserCon Belgium: Honey, VMware increased my bill
stijn40
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
Smarter Aviation Data Management: Lessons from Swedavia Airports and Sweco
Smarter Aviation Data Management: Lessons from Swedavia Airports and Sweco
Safe Software
2025_06_18 - OpenMetadata Community Meeting.pdf
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
digitaljignect
From Manual to Auto Searching- FME in the Driver's Seat
From Manual to Auto Searching- FME in the Driver's Seat
Safe Software
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
yosra Saidani
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik
Curietech AI in action - Accelerate MuleSoft development
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
The Future of Product Management in AI ERA.pdf
The Future of Product Management in AI ERA.pdf
Alyona Owens
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
OpenPOWER Foundation & Open-Source Core Innovations
OpenPOWER Foundation & Open-Source Core Innovations
IBM
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
cnc-processing-centers-centateq-p-110-en.pdf
cnc-processing-centers-centateq-p-110-en.pdf
AmirStern2
MuleSoft for AgentForce : Topic Center and API Catalog
MuleSoft for AgentForce : Topic Center and API Catalog
shyamraj55
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
UserCon Belgium: Honey, VMware increased my bill
UserCon Belgium: Honey, VMware increased my bill
stijn40
Ad

Developing for Wearables with Xamarin

  • 2. Who are we? Jonah Hulselmans @jonahhulselmans Gert Cominotto @GertCominotto gert-cominotto.be
  • 3. Xamarin Microsoft Band Apple Watch Android Wear Wearable Overview Code reuse Lessons learned / Heads up / Conclusion Q&A Overview
  • 6. Fitness Band, not a watch Compatible with WP, Android & iOS TILES TILES TILES!!! Microsoft Health App (Important!) Microsoft Band
  • 7. Sensors Accelerometer Gyroscope Distance Heart Rate Pedometer Skin Temperature UV Band Contact (worn / not worn) Calories Galvanic Skin Response (Band2) Ambient Light (Band2) Barometer (Band2) Altimeter (Band2) Microsoft Band
  • 8. Tools SDK Native SDK Xamarin Components Web Tile SDK Cloud API (Health Data API) Emulator? No code runs on the band Developing for the Microsoft Band
  • 9. What can you do with it? Access sensors Tiles Personalization
  • 10. Pair it with your phone / pc via Bluetooth Connecting to the device
  • 14. Create & Manage Custom Tiles Tile notifications Dialogs Messages Custom layouts Tiles
  • 16. You can change your bands colors and theme Personalization
  • 18. Background Tasks Only on Windows Phone (8.1 & 10) Custom Tile Events Requires Microsoft Health App What else can you do?
  • 21. Apple Watch 38mm and 42mm Apple Pay Fitness / Health Notifications Apps
  • 22. Apple Watch sensors Heart rate sensor Accelerometer Gyroscope Ambient light sensor
  • 23. Developing for the Apple Watch xCode / Xamarin Studio / Visual Studio Simulator Xamarin.iOS Watch OS 1 apps run on iPhone (Watch OS 2 apps run on the watch)
  • 24. What can you do with it? Notifications Glances App
  • 27. Deploy apps to the Apple Watch xCode and Xamarin Studio or Visual Studio Apple Watch is paired to your iPhone Provisioning profiles are setup correctly Deploy the app to your iPhone
  • 28. Communication Call a method against the parent app WKInterfaceController.OpenParentApplication (from watch extensions) HandleWatchKitExtensionRequest (parent app) Share a storage location with the parent iPhone app NSUserDefaults WormHoleSharp https://github.com/Clancey/WormHoleSharp
  • 30. Stock Android! Works with Android & iOS Round or Square design Focus on Telling Time (Watch Faces) Notifications Google Now Apps Android Wear
  • 31. Android Wear Sensors (Varies per device)
  • 32. Tools Emulator? SDK Native SDK Android Xamarin.Android Code runs on the device Communicate with phone via APIs Developing for Android Wear
  • 33. What can you do with it? Notifications Companion Apps Watch Faces
  • 34. Install Android Wear App on your device Follow the steps on the device to Pair it Connecting to the device
  • 36. Create Notifications Add Actions Wearable Specific Notifications / Actions Notifications
  • 38. Main differences: Wearable apps are relatively small in size and functionality compared to phone apps. Users don't download apps directly onto the wearable. 2 Modes -> Interactive and Ambient Companion Apps
  • 40. MessageApi Send messages to other nodes. (Small payloads) DataApi Send data to other nodes (Bigger payloads like assets) Communication Demo
  • 42. Wearable Overview Microsoft Band Apple Watch Android Wear Runs on Device No No Yes User Input No Yes (Touch & Voice) Yes (Touch & Voice) Sensors Yes Yes (Depending on Device) Phone Requirements Bluetooth LE (Windows, iOS & Android) iOS 8.2 Bluetooth LE (Android 4.3) Publishing No separate store WebTiles via Health App No separate store Deployed with Phone app No separate store Deployed with Phone app
  • 43. Not a great idea Too different architecture and capabilities Different way of connecting to devices Very custom experience per wearable But I deem it possible Code Reuse
  • 44. The Xamarin Nuget packages didnt support UWP 10 at first UWP App is coming in the next couple of weeks By far the easiest to develop for Excellent for when using sensors With more background tasks capabilities, good future Lessons learned / Heads up / Conclusion Microsoft Band
  • 45. Feels sluggish (Watch OS 1) Xamarin does not yet support watch OS 2 (only on alpha channel) Certificates + provisioning profiles Disable Enable device-specific builds in the watchKitExtensions project Lessons learned / Heads up / Conclusion Apple Watch
  • 46. Android wearable emulator = utter crap! If the Android emulator isnt starting: emulator -avd ExampleVDName -debug-all -noaudio -nocache -wipe-data -dns-server 8.8.8.8 Real device debugging isnt much better (long deploy times) Lessons learned / Heads up / Conclusion Android
  • 47. Q & A
  • 48. IS HIRING AN ANDROID DEV!

Editor's Notes

  • #9: Visual Studio / Xamarin Studio No Emulator SDK Native SDK for iOS, Android and Windows Xamarin Components for iOS and Android Web Tile SDK: for quickly delivering information to the Band from any Web source in just a few easy steps (bit.ly/1h94CjZ) Cloud API (Microsoft) for accessing RESTful APIs with comprehensive fitness and health data in an easy-to- consume JSON format (bit.ly/1MIBOL7) You have 2 ways to create an app for the Band: - You can create a WebTile, this is a tile that you can submit to the tile store which can be accessed through the Microsoft Health App. These Tiles are small applications that dont need a separate app on your phone because they run through the Microsoft Health App. - You can create an iOS, Android or Windows app and inside your app, you can create a tile on the Band. Your app is in charge of adding data / notifications to the band app, so all the logic from the band app is inside your phone app.
  • #15: Dialogs: => Popups with content that can be dismissed. => Content of the popup is not saved to the wearable Messages: => These are notifications that are sent and stored in a specific tile, and a tile can keep up to 8 messages at a time. Messages can display a dialog, too. See this as a queue with a fixed size of 8. First in, first out when more than 8 messages are sent.
  • #19: Background Task (Only Windows Phone 8.1 at the moment) Custom Tile Events (Requires Microsoft Health App)
  • #24: Watch OS 1: With the original Apple Watch, apps were installed on the iPhone. From there, the Watch extension would remain on the phone, and an interface would be moved over to the watch. Then, the extension on the phone would connect to networks, process information, and transmit it back and forth to the interface on the Watch. It worked but it was limited, and it was slow. Watch OS 2: The extension moves over to join the interface, and to run natively on the Watch. Speed improvements because basic processing no longer requires a round trip to the phone. It increases functionality because apps can now access the Watchs hardware.
  • #25: Notifications Are a major use-case for the Apple Watch. Both local and remote notifications are supported. Interaction with notifications occurs in two stages, called Short- and Long-Look. Short looks appear briefly, giving the user just enough time to see what the notification is about and which app sent it. Long looks provide more detail about an incoming notification. The long look appears when the users wrist remains raised or when the user taps the short look. Glances Glances are non-interactive, single-page UIs that are intended to provide summary or crucial data. When a glance is tapped it will open the main Watch app App
  • #31: Android Wear experience will be the same no matter what smartwatch you decide to slap on your wrist and, great news, it means your chosen tech-timepiece will work with any Android handset. You'll get notified for incoming texts, WhatsApp messages, tweets you're mentioned in, Facebook updates, emails and more. The whole shebang. Google Now powers a great deal of what you'll see popping up on your Android Wear smartwatch, but just like Google Now on your smartphone, it's still a work in progress. At times the intuitive notifications are genius traffic concerns for your journey home, updated football scores for a team you search for a lot, the weather for the day ahead when you wake up 足 but you'll also see some right old random nonsense cropping up too. Google Now updates, like notifications about incoming messages, are presented in card style, with updates from the same app or regarding the same subject nicely stacked. Apps are installed through your phone (and the regular Google Play store). Apps that have Wear compatibility will either link up with your smartwatch and offer you control options (such as navigating your Spotify tracks or getting turn by turn directions from Google Maps) The apps, and default actions, are managed using the smartphone Android Wear app
  • #33: Visual Studio / Xamarin Studio Emulator available
  • #34: NOTIFICATIONS: Lazy, but very effective! Uses Notification.WearableExtender Custom Backgrounds Actions specific for Wear Remote Input Voice Input Predefined actions Pages, Stacking, and More! COMPANION APPS Companion App Android app that runs on a wearable New Themes New UI Widgets -> Wearable UI Library BoxInsetLayout CircledImageView WearableListView More
  • #36: Connect via USB cable Adjust USB Options on Mobile Phone to PTP Start Android Wear Emulator in Visual Studio adb -d forward tcp:5601 tcp:5601 Real Device: adb forward tcp:4444 localabstract:/adb-hub adb connect localhost:4444
  • #38: https://developer.android.com/training/wearables/notifications/creating.html
  • #39: Wearable apps are relatively small in size and functionality compared to handheld apps. They contain only what makes sense on the wearable, which is usually a small subset of the corresponding handheld app. In general, you should carry out operations on the handheld when possible and send the results to the wearable. Users don't download apps directly onto the wearable. Instead, you bundle the wearable app inside the handheld app. When users install the handheld app, the system automatically installs the wearable app. However, for development purposes, you can still install the wearable app directly to the wearable. To conserve power on a wearable device, you can enable ambient mode for your Wear app. Devices transition from interactive to ambient mode when the user is idle on an activity or when the user covers the screen with their palm. Wearable apps that can transition into ambient mode are called always-on apps. The following describes the two modes of operation for always-on apps: Interactive Use full color with fluid animation in this mode. The app is also responsive to input. Ambient Render the screen with grayscale graphics and do not present any input cues in this mode. This display mode is only supported on devices running Android 5.1 or higher.
  • #40: https://developer.android.com/training/wearables/apps/index.html
  • #41: DataApi exposes an API for components to read or write data items and assets. A DataItem provides data storage with automatic syncing between the handheld and wearable. Asset is used for sending blobs of data such as images. You attach assets to DataItems and the system automatically takes care of the transfer for you. MessageApi exposes an API for components to send messages to other nodes. Messages should generally contain small payloads. You should use Assests with DataApi to store larger data.