ibeacons for everyone, from ios to android
DESCRIPTION
Code: https://github.com/jamesmontemagno/iBeaconsEverywhere iBeacons are taking the world by storm allowing developers to leverage Bluetooth Low Energy to give their apps location support that can work just about anywhere including indoors. This give you the ability to enable any number of scenarios based upon device proximity that were never before possible. From retail stores to even sports including the Super Bowl and MLB, you will soon be finding iBeacons just about everywhere. Introduced as a core feature of iOS 7 iBeacon support has now found it's way to Android. You will learn what an iBeacon is, how they work, how you would want to use them, and how to get started making apps in both Android and iOS. All demonstrations will be coded in C#, but will be applicable to any iOS or Android developer in any language.TRANSCRIPT
![Page 1: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/1.jpg)
iBeacons for Everyone, from iOS to Android!
James MontemagnoDeveloper Evangelist, Xamarin@JamesMontemagno
www.Xamarin.com
![Page 2: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/2.jpg)
What is an iBeacon?
• Apple calls it:• “A new class of low-powered, low-cost
transmitters that can notify iOS 7 devices of their presence.”
• What does this mean?• Devices that can notify apps of exact
device proximity and location awareness that was never possible before.
![Page 3: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/3.jpg)
How do iBeacons Work?• Bluetooth 4.0 LE! (SMART)
• Low energy• Long battery life• 2.4Ghz Band
• Regions• Enter/Exit regions for notifications
• Ranging• Immediate, Near, Far
![Page 4: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/4.jpg)
“Fun” Bluetooth Specs
Spec Classic Bluetooth Bluetooth LE
Distance/Range (theoretical)
100 m (330ft) 50 m (160ft)
OTA Data 1-3 Mbit/s 1 Mbit/s
Application throughput
.7-2.1 Mbit/s .27 Mbit/s
Security 56/128-bit 128-bit AES
Peak current Consumption
<30 mA <15 mA
Power Consumption 1 mW .01 – .5 mW
Latency 100ms 6ms
Voice YES NO
![Page 5: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/5.jpg)
How does Bluetooth LE Work?• GATT (Generic Attribute Profile)
• UUIDs!• Flow:
--------------Attributes --------------
![Page 6: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/6.jpg)
What do we care about? (BLE vs iBeacon)• UUIDs
• Unique Identifier that each iBeacon has• Example: B9407F30-F5F8-466E-AFF9-25556B57FE6D
• Regions• Major & Minor• Unique region code that iBeacons can be
programmed to have.• Example: 2755, 1
![Page 7: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/7.jpg)
What can be an iBeacon?
• Your iOS 7.0 Device• iPhone 4S, iPad 3rd Gen+, iPad
Mini, iPod Touch 5th Gen+
![Page 8: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/8.jpg)
What can be an iBeacon?
• Cute Little Devices You Buy• More on this later
![Page 9: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/9.jpg)
What can be an iBeacon?
• NOT your Android device!
![Page 10: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/10.jpg)
What can find iBeacons?
• Your iOS 7.0 Device• iPhone 4S, iPad 3rd Gen+, iPad Mini, iPod Touch
5th Gen+
• Your Android Device• Well some of them… maybe… Android 4.3+• Nexus 5/4/7/10, HTC One & Max, Moto
G/X/RAZR/Ultra/Maxx/Mini, S4, Sony Xperia
• Nothing on Windows Phone or Windows 8 yet
![Page 11: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/11.jpg)
What can you do with iBeacons?
![Page 12: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/12.jpg)
In the House
![Page 13: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/13.jpg)
In Stadiums
![Page 14: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/14.jpg)
In Stores
![Page 15: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/15.jpg)
Apple Store
http://appleinsider.com/articles/13/12/06/first-look-using-ibeacon-location-awareness-at-an-apple-store
![Page 16: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/16.jpg)
What else???
• Museums• Scavenger Hunts• Athletics• Restaurants• About a gazillion other things!
![Page 17: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/17.jpg)
Why should I care?
• Differentiates your app• Clients will start to demand it• So many uses untapped for context aware
apps• Because they are cool• Because you should
• Or maybe not• If you want to
![Page 18: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/18.jpg)
Where to get iBeacons?
• Your iOS 7.0 Device• iPhone 4S, iPad 3rd Gen+, iPad Mini, iPod Touch 5th Gen+
• Estimote • 3 for $100, development kits• Battery Powered (2+ years, watch battery)• Super cute
• Radius Networks• $19 - $30 per beacon• USB powered
![Page 19: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/19.jpg)
iOS Demo
![Page 20: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/20.jpg)
What is Xamarin?Unique Approach
•Native User Interface•Native Performance•Shared code across
platforms•C# & .NET Framework•Full API Coverage
![Page 21: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/21.jpg)
iOS Demo
![Page 22: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/22.jpg)
How iOS 7.1 Changed Everything!
• Background Notifications!• Wait? It couldn’t do this???• Location Permissions (opt-out)
• Harder • Better• Faster• Stronger
• Aka bug fixes…
![Page 23: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/23.jpg)
State of Android iBeacons
• Is it built in?• Kind of, not really…• Samsung vs HTC vs Google• Android 4.3 Changes the Game
• Kind of a development hot mess…• Crippling Bug (Bluetooth has stopped working)
• Sometimes…?• Different Implementations
![Page 24: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/24.jpg)
Components/SDKs to the Rescue
Estimote SDK
Radius Networks iBeacon Service
![Page 25: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/25.jpg)
Android Demo
![Page 26: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/26.jpg)
Resources•Code: https://github.com/jamesmontemagno/iBeaconsEverywhere
•Xamarin.com •Estimote.com•Android Bluetooth Docs:• http://developer.android.com/guide/topics/connectivity/bluetooth-le.html
•iOS Beacons Docs: https://developer.apple.com/library/ios/documentation/
userexperience/conceptual/LocationAwarenessPG/RegionMonitoring/RegionMonitoring.html
• Or search for “Region Monitoring and iBeacon”
•Cool Raspberry-Pi project:• http://developer.radiusnetworks.com/2013/10/09/how-to-make-an-ibeacon-out-of-a-raspberry-pi.html
![Page 27: iBeacons for Everyone, From iOS to Android](https://reader035.vdocuments.mx/reader035/viewer/2022062617/54c84c4a4a7959474a8b45c0/html5/thumbnails/27.jpg)
Stalk Me:•Twitter: • @JamesMontemagno•Blog: • www.MotzCod.es•GitHub:• /JamesMontemagno•Email:• [email protected]