Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
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 / Co...
Xamarin FormsXamarin
Microsoft Band
• Fitness Band, not a watch
• Compatible with WP, Android & iOS
• TILES TILES TILES!!!
• Microsoft Health App (Important!)...
• Sensors
• Accelerometer
• Gyroscope
• Distance
• Heart Rate
• Pedometer
• Skin Temperature
• UV
• Band Contact (worn / n...
• Tools
• SDK
• Native SDK
• Xamarin Components
• Web Tile SDK
• Cloud API (Health Data API)
• Emulator?
• No code runs on...
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 band’s 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 y...
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...
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
• Provis...
Communication
• Call a method against the parent app
• WKInterfaceController.OpenParentApplication (from watch extensions)...
Android Wear
• Stock Android!
• Works with Android & iOS
• Round or Square design
• Focus on
• Telling Time (Watch Faces)
• Notificatio...
Android Wear Sensors (Varies per device)
• Tools
• Emulator?
• SDK
• Native SDK Android
• Xamarin.Android
• Code runs on the device
• Communicate with phone via AP...
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 d...
Companion App Demo
• MessageApi
• Send messages to other nodes. (Small payloads)
• DataApi
• Send data to other nodes (Bigger payloads like a...
Communication Demo
Wearable Overview
Microsoft Band Apple Watch Android Wear
Runs on Device No No Yes
User Input No Yes (Touch & Voice) Yes (...
• Not a great idea
• Too different architecture and capabilities
• Different way of connecting to devices
• Very custom ex...
• The Xamarin Nuget packages didn’t support UWP 10 at first
• UWP App is coming in the next couple of weeks
• By far the e...
• Feels sluggish (Watch OS 1)
• Xamarin does not yet support watch OS 2
• (only on alpha channel)
• Certificates + provisi...
• Android wearable emulator = utter crap!
• If the Android emulator isn’t starting:
• emulator -avd ExampleVDName -debug-a...
Q & A
IS HIRING AN ANDROID DEV!
Próxima SlideShare
Cargando en…5
×

Developing for Wearables with Xamarin

807 visualizaciones

Publicado el

My colleague Jonah Hulselmans and me, gave a session about developing for Wearables like the Microsoft Band, Apple Watch and Android Wear with Xamarin. This sessions was given for MADN, a user group in Belgium that focuses on mobile development within the Microsoft Stack.

Publicado en: Tecnología
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Developing for Wearables with Xamarin

  1. 1. Wearables development with Xamarin
  2. 2. Who are we? Jonah Hulselmans @jonahhulselmans Gert Cominotto @GertCominotto gert-cominotto.be
  3. 3. • Xamarin • Microsoft Band • Apple Watch • Android Wear • Wearable Overview • Code reuse • Lessons learned / Heads up / Conclusion • Q&A Overview
  4. 4. Xamarin FormsXamarin
  5. 5. Microsoft Band
  6. 6. • Fitness Band, not a watch • Compatible with WP, Android & iOS • TILES TILES TILES!!! • Microsoft Health App (Important!) Microsoft Band
  7. 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. 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. 9. What can you do with it? Access sensors Tiles Personalization
  10. 10. • Pair it with your phone / pc via Bluetooth Connecting to the device
  11. 11. Connection Demo
  12. 12. Accessing Sensors
  13. 13. DEMOSensors Demo
  14. 14. • Create & Manage Custom Tiles • Tile notifications • Dialogs • Messages • Custom layouts Tiles
  15. 15. Tiles Demo
  16. 16. • You can change your band’s colors and theme … Personalization
  17. 17. NO Demo!
  18. 18. • Background Tasks • Only on Windows Phone (8.1 & 10) • Custom Tile Events • Requires Microsoft Health App What else can you do?
  19. 19. Custom Tile Event Demo
  20. 20. Apple Watch
  21. 21. Apple Watch • 38mm and 42mm • Apple Pay • Fitness / Health • Notifications • Apps
  22. 22. Apple Watch sensors • Heart rate sensor • Accelerometer • Gyroscope • Ambient light sensor • …
  23. 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. 24. What can you do with it? Notifications Glances App
  25. 25. Notifications Short looks Long looks
  26. 26. Notifications demo
  27. 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. 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
  29. 29. Android Wear
  30. 30. • Stock Android! • Works with Android & iOS • Round or Square design • Focus on • Telling Time (Watch Faces) • Notifications • Google Now • Apps Android Wear
  31. 31. Android Wear Sensors (Varies per device)
  32. 32. • Tools • Emulator? • SDK • Native SDK Android • Xamarin.Android • Code runs on the device • Communicate with phone via API’s Developing for Android Wear
  33. 33. What can you do with it? Notifications Companion Apps Watch Faces
  34. 34. • Install Android Wear App on your device • Follow the steps on the device to Pair it Connecting to the device
  35. 35. Connection Demo
  36. 36. • Create Notifications • Add Actions • Wearable Specific Notifications / Actions Notifications
  37. 37. Notifications Demo
  38. 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
  39. 39. Companion App Demo
  40. 40. • MessageApi • Send messages to other nodes. (Small payloads) • DataApi • Send data to other nodes (Bigger payloads like assets) Communication Demo
  41. 41. Communication Demo
  42. 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. 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. 44. • The Xamarin Nuget packages didn’t 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. 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. 46. • Android wearable emulator = utter crap! • If the Android emulator isn’t starting: • emulator -avd ExampleVDName -debug-all -noaudio -nocache -wipe-data -dns-server 8.8.8.8 • Real device debugging isn’t much better… (long deploy times) Lessons learned / Heads up / Conclusion Android
  47. 47. Q & A
  48. 48. IS HIRING AN ANDROID DEV!

×