mobile development for devices and iot

25
Mobile Development for Devices and IoT

Upload: wes-bailey

Post on 19-Jan-2017

215 views

Category:

Software


3 download

TRANSCRIPT

Page 1: Mobile Development for Devices and IoT

Mobile Development for Devices and IoT

Page 2: Mobile Development for Devices and IoT

I am going to curse

Page 3: Mobile Development for Devices and IoT

Notorious LiarMost famous song is about lying

Page 4: Mobile Development for Devices and IoT

Diving In- (void)peripheral:(CBPeripheral *)peripheral didDiscoverCharacteristicsForService:(CBService *)service error:(NSError *)error{ if ([service.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_HEART_RATE_SERVICE_UUID]]) { // 1 for (CBCharacteristic *aChar in service.characteristics) { // Request heart rate notifications if ([aChar.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_MEASUREMENT_CHARACTERISTIC_UUID]]) { // 2 [self.polarH7HRMPeripheral setNotifyValue:YES forCharacteristic:aChar]; NSLog(@"Found heart rate measurement characteristic"); } // Request body sensor location else if ([aChar.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_BODY_LOCATION_CHARACTERISTIC_UUID]]) { // 3 [self.polarH7HRMPeripheral readValueForCharacteristic:aChar]; NSLog(@"Found body sensor location characteristic"); } } } // Retrieve Device Information Services for the Manufacturer Name if ([service.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_DEVICE_INFO_SERVICE_UUID]]) { // 4 for (CBCharacteristic *aChar in service.characteristics) { if ([aChar.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_MANUFACTURER_NAME_CHARACTERISTIC_UUID]]) { [self.polarH7HRMPeripheral readValueForCharacteristic:aChar]; NSLog(@"Found a device manufacturer name characteristic"); } } }}

Page 5: Mobile Development for Devices and IoT

Inter·net of things noun noun: Internet of things 1) a proposed development of the Internet in which everyday objects have network

connectivity, allowing them to send and receive data.

Page 6: Mobile Development for Devices and IoT

Numbers25% of the apps are games

I was going to say more but everyone else has already put up everything

Page 7: Mobile Development for Devices and IoT
Page 8: Mobile Development for Devices and IoT

What is Sproutling?

A wearable band for your baby, a smart charger and a mobile app work together to not only monitor more effectively but learn and predict your baby's sleep habits and optimal sleep conditions

Page 9: Mobile Development for Devices and IoT

Ecosystem

BLE

WiFiBLE

Sproutling

WiFi or Cellular

Home Router

CloudInternet Telemetry

Identity

Device Mgmt

Page 10: Mobile Development for Devices and IoT

ExperienceDoes the user trust your app?How does your app provide feedback?Is your app easy to use with the devices?

Page 11: Mobile Development for Devices and IoT

UtilitarianSetup / Data EntryOnboardingTroubleshootingCustomer Support

Page 12: Mobile Development for Devices and IoT

Get ReadyIt is all your fault even if it is the device that messing you up

Page 13: Mobile Development for Devices and IoT

I18N/L10NMake sure that your app has a great experience across languages and cultures

Page 14: Mobile Development for Devices and IoT

Constantly BetterThere have been 4 updates since I purchased my Tesla and it now drives me to work and I can use my phone to pull my car of the garage

Page 15: Mobile Development for Devices and IoT

Brand SupportWhat do you do when your brand has multiple connected devices?How does your app compare and work into the Out of Box Experience (OBE)?

Page 16: Mobile Development for Devices and IoT

AndroidTreat android as a first class citizen on par with your iOS app

Page 17: Mobile Development for Devices and IoT

UV-curing solder mask to home-fabbed boards

Date

“Well you have true pub/sub with MQTT thats the biggest thing. MQTT was built around the notion of message queuing. Websockets were built from a need for unidirectional http communication thats at the highest level”

Chris Hein

Page 18: Mobile Development for Devices and IoT

UV-curing solder mask to home-fabbed boards

Date

Battery Life Analysis / Alignment

Page 19: Mobile Development for Devices and IoT

SecurityAre you thinking about it?How do you connect the backend?How do you connect to the device?When you interview, make sure you fake it!

Page 20: Mobile Development for Devices and IoT

LoggingLog all interactions with everything

Page 21: Mobile Development for Devices and IoT

TestingIntegration testing is hard to automate, take a lot of time and costly to changeMake sure you have great manual tests and scripts, seriouslyMake sure you performance and usability test!

Page 22: Mobile Development for Devices and IoT

TeamsHardware and software need to work together in perfect harmonySmall team communication is easyLarger teams need protocols and documentation to avoid running off the rails

Page 23: Mobile Development for Devices and IoT

Connection FatigueI wanna disconnect myself, do it I wanna disconnect myself, get it I wanna pull my brain stem out, do it I wanna disconnect myself right now

Page 24: Mobile Development for Devices and IoT

SummaryHopefully you learned a few things and are excited to start working in IoT because the robots are coming