SlideShare a Scribd company logo
1 of 26
+MatteoGazzurelli
Experimenting Monitoring
and Proximity techniques
using Android potential
and iBeacon devices
1
April, 9 2015
CEO / Android
Developer
DUCKMA Srl - Brescia
@gazzumatteo
duckma.com
• What iBeacon technology is and what is used for
• How we can use this technology to effectively track people’s movements in a
closed space like a room or a shop
• How we can push interesting content on their smartphone based on their
proximity to an object
• My Experiment
• Apps fully based on iBeacons
summar
y
What is an
iBeacon?from http://en.wikipedia.org/wiki/IBeacon
Enables a smartphone to perform actions when in close proximity to
an iBeacon.
iBeacon uses Bluetooth low energy proximity sensing to transmit
a universally unique identifier.
The identifier can be looked up to determine the device's physical
location or trigger an action.
Proximity
Marketing
Content Delivery
Gamification
Treasure
Hunt
Indoor
Location
WayFinding
iBeacon Use
Cases?from http://en.wikipedia.org/wiki/IBeacon
Monitoring
Enables your app to know when the device enters
and exits the range of beacons defined by the
region
Ranging
Gives you the exact list of beacons detected in a
given region, together with an estimated distance
from the device to each beacon.
iBeacon Monitoring and
Ranging
Entering
in region
UUID - Minor - Major -
Range
Conten
t
Beacon
App
Pushing Content
to Users
Server
Field Size Description
UUID 16 bytes
Application developers should define a UUID
specific to their app and deployment use
case.
Major 2 bytes
Further specifies a specific iBeacon and use
case. For example, this could define a sub-
region within a larger region defined by the
UUID.
Minor 2 bytes
Allows further subdivision of region or use
case, specified by the application developer.
UUID fb0b57a2-8228-44cd-913th-94a122ba1206 Minor 4563 Major 3457
iBeacon Advertisement
Indoor location:
Locate an object or people inside a building.
Way-finding:
Knowing where your desired location is, how to
get there from your present location.
Way Finding /
Indoor Location
from http://www.umich.edu/~wayfind/supplements/moreinfomain.htm
1) Download the library
2) Let your activity implements BeaconConsumer
3) Create your iBeacon identifier and a Region
mAllBeaconsRegion = new Region(UNIQUE_ID,
Identifier.parse(PROXIMITY_UUID), null, null);
beaconManager = BeaconManager.getInstanceForApplication(this);
beaconManager.getBeaconParsers().add(new BeaconParser()
.setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24"));
beaconManager.bind(this);
Alt Beacon Library
follow https://altbeacon.github.io/android-beacon-library/configure.html
Alt Beacon Library
4) Implement AltBeacon Methods
@Override
public void onBeaconServiceConnect() {
beaconManager.setMonitorNotifier(new MonitorNotifier() {
public void didEnterRegion(Region region) {}
public void didExitRegion(Region region) {}
public void didDetermineStateForRegion(int i, Region region) {}
5) Check if the device entered in a Beacon Region
beaconManager.setRangeNotifier(new RangeNotifier() {
@Override
public void didRangeBeaconsInRegion(final Collection<Beacon> beacons,
final Region region) {
}
follow https://altbeacon.github.io/android-beacon-library/configure.html
6) When entered in Region Send Notification
public void didRangeBeaconsInRegion(final Collection<Beacon> beacons,
final Region region) {
sendNotificationWear(beacon);
}
7) Send Notification to Android Wear
// Create a WearableExtender to add functionality for
wearables
// Build intent for notification content
// Get an instance of the NotificationManager service
// Build the notification and issues it with notification manager.
Wear Notification
follow http://d.android.com/wear
iBeacon Devices
CONS:
Closed Source
Work only with Estimote
Take time to fix distances
iBeacon Android
Libraries
PRO
Optimised for Estimote
Can program Estimote
Easy to use
CONS:
Cannot program iBeacons
General library
Less accurate distances
PRO
Works with all major iBeacons
Open Source
Good starting point
• Tried both libraries
• Monitoring (only Estimote)
• Ranging
• WayFinding
• Indoor Location (our way)
Our Experiment
Monitoring
/ Ranging
iBeacons
DEMO
Click for the video
Way
Finding
DEMO
Click for the video
Indoor location
(the easy way)
• No library for indoor location in Android
• AltBeacon / Estimote SDK
• No statistical assumptions
• Empirical data (based on many iterations)
• Approximation
How we made indoor location
Indoor
Locatio
n
DEMO
Click for the video
• Estimote (Win)
• Using iBeacons is very easy
• Indoor Location is not so easy
• iBeacon drains your Battery!
• iBeacon technology is not mature
Experiment
Results
Fingerprinting Triangulation Trilateration
• Other external components such as Wi-fi, Magnetic field…
• Signals theory (clean signal waves)
• Statistical Algorithms (Best fit, Monte Carlo Localisation)
Internal sensors (accelerometer compass)
Indoor location
(the correct - and hard - way)
Apps based on iBeacon
Why you don’t make
it for Android???
+MatteoGazzurell
i
Resources:
• Source Code Sample Experiment App:
github.com/gazzumatteo/iBeaconExperiments
• Bluetooth Le Guide:
d.android.com/guide/topics/connectivity/bluetooth-
le.html
• AltBeacon SDK
altbeacon.github.io/android-beacon-library
• Estimote SDK
https://github.com/Estimote/Android-SDK
Download the demo
Available on Google Play Store
(Tested only on Nexus 5 and Nexus 6)
+MatteoGazzurell
i

More Related Content

Similar to Droid con 2015 - experimenting monitoring and proximity techniques using android potential and ibeacon devices

Demystifying iBeacons
Demystifying iBeaconsDemystifying iBeacons
Demystifying iBeacons
Fred Brunel
 

Similar to Droid con 2015 - experimenting monitoring and proximity techniques using android potential and ibeacon devices (20)

Internet of things, and rise of ibeacons
Internet of things, and rise of ibeaconsInternet of things, and rise of ibeacons
Internet of things, and rise of ibeacons
 
14 569
14 569 14 569
14 569
 
Developing context aware applications with iBeacons technology
Developing context aware applications with iBeacons technologyDeveloping context aware applications with iBeacons technology
Developing context aware applications with iBeacons technology
 
iBeacon Bible 2.0
iBeacon Bible 2.0iBeacon Bible 2.0
iBeacon Bible 2.0
 
Gigigo Keynote - Geofences & iBeacons
Gigigo Keynote - Geofences & iBeaconsGigigo Keynote - Geofences & iBeacons
Gigigo Keynote - Geofences & iBeacons
 
Estimote beacons and simple Android application (full)
Estimote beacons and simple Android application (full)Estimote beacons and simple Android application (full)
Estimote beacons and simple Android application (full)
 
Using Beacons in a Mobile App - IoT Nearables
Using Beacons in a Mobile App - IoT NearablesUsing Beacons in a Mobile App - IoT Nearables
Using Beacons in a Mobile App - IoT Nearables
 
Telerik AppBuilder, Estimote Beacons, and the IoT - Presentation for TelerikNEXT
Telerik AppBuilder, Estimote Beacons, and the IoT - Presentation for TelerikNEXTTelerik AppBuilder, Estimote Beacons, and the IoT - Presentation for TelerikNEXT
Telerik AppBuilder, Estimote Beacons, and the IoT - Presentation for TelerikNEXT
 
Industrial Automation using unmanned Aerial vehicle
Industrial Automation using unmanned Aerial vehicleIndustrial Automation using unmanned Aerial vehicle
Industrial Automation using unmanned Aerial vehicle
 
Demystifying iBeacons
Demystifying iBeaconsDemystifying iBeacons
Demystifying iBeacons
 
[CocoaHeads Tricity] Estimote Beacons - world most popular iBeacon implementa...
[CocoaHeads Tricity] Estimote Beacons - world most popular iBeacon implementa...[CocoaHeads Tricity] Estimote Beacons - world most popular iBeacon implementa...
[CocoaHeads Tricity] Estimote Beacons - world most popular iBeacon implementa...
 
iBeacons & UX: What they are and why you should care
iBeacons & UX: What they are and why you should careiBeacons & UX: What they are and why you should care
iBeacons & UX: What they are and why you should care
 
Beacosystem Tour for GDG Dublin - Sean O Sullivan
Beacosystem Tour for GDG Dublin - Sean O Sullivan Beacosystem Tour for GDG Dublin - Sean O Sullivan
Beacosystem Tour for GDG Dublin - Sean O Sullivan
 
iBeacon-based indoor positioning system: from theory to practical deployment
iBeacon-based indoor positioning system: from theory to practical deployment iBeacon-based indoor positioning system: from theory to practical deployment
iBeacon-based indoor positioning system: from theory to practical deployment
 
Intro to iBeacon and Bluetooth Low Energy
Intro to iBeacon and Bluetooth Low EnergyIntro to iBeacon and Bluetooth Low Energy
Intro to iBeacon and Bluetooth Low Energy
 
Beacosystem Talk @ MongoDB User Group Dublin @sos100
Beacosystem Talk @ MongoDB User Group Dublin @sos100Beacosystem Talk @ MongoDB User Group Dublin @sos100
Beacosystem Talk @ MongoDB User Group Dublin @sos100
 
Introduction to Beacon technology
Introduction to Beacon technology Introduction to Beacon technology
Introduction to Beacon technology
 
ANALYSING THE POTENTIAL OF BLE TO SUPPORT DYNAMIC BROADCASTING SCENARIOS
ANALYSING THE POTENTIAL OF BLE TO SUPPORT DYNAMIC BROADCASTING SCENARIOSANALYSING THE POTENTIAL OF BLE TO SUPPORT DYNAMIC BROADCASTING SCENARIOS
ANALYSING THE POTENTIAL OF BLE TO SUPPORT DYNAMIC BROADCASTING SCENARIOS
 
ANALYSING THE POTENTIAL OF BLE TO SUPPORT DYNAMIC BROADCASTING SCENARIOS
ANALYSING THE POTENTIAL OF BLE TO SUPPORT DYNAMIC BROADCASTING SCENARIOSANALYSING THE POTENTIAL OF BLE TO SUPPORT DYNAMIC BROADCASTING SCENARIOS
ANALYSING THE POTENTIAL OF BLE TO SUPPORT DYNAMIC BROADCASTING SCENARIOS
 
Analysing the Potential of BLE to Support Dynamic Broadcasting Scenarios
Analysing the Potential of BLE to Support Dynamic Broadcasting ScenariosAnalysing the Potential of BLE to Support Dynamic Broadcasting Scenarios
Analysing the Potential of BLE to Support Dynamic Broadcasting Scenarios
 

More from Commit University

More from Commit University (20)

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdfBreaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
 
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdfAccelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
 
Slide-10years.pdf
Slide-10years.pdfSlide-10years.pdf
Slide-10years.pdf
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
 
Vue.js slots.pdf
Vue.js slots.pdfVue.js slots.pdf
Vue.js slots.pdf
 
Commit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptxCommit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptx
 
Sviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PASviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PA
 
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
 
Prisma the ORM that node was waiting for
Prisma the ORM that node was waiting forPrisma the ORM that node was waiting for
Prisma the ORM that node was waiting for
 
Decision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit UniversityDecision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit University
 
Component Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdfComponent Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdf
 
Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...
Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...
Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale ...
 
Prototipazione Low-Code con AWS Step Functions
Prototipazione Low-Code con AWS Step FunctionsPrototipazione Low-Code con AWS Step Functions
Prototipazione Low-Code con AWS Step Functions
 
KMM survival guide: how to tackle struggles between Kotlin and Swift
KMM survival guide: how to tackle struggles between Kotlin and SwiftKMM survival guide: how to tackle struggles between Kotlin and Swift
KMM survival guide: how to tackle struggles between Kotlin and Swift
 
Da Vuex a Pinia: come fare la migrazione
Da Vuex a Pinia: come fare la migrazioneDa Vuex a Pinia: come fare la migrazione
Da Vuex a Pinia: come fare la migrazione
 
Orchestrare Micro-frontend con micro-lc
Orchestrare Micro-frontend con micro-lcOrchestrare Micro-frontend con micro-lc
Orchestrare Micro-frontend con micro-lc
 
Fastify has defeated Lagacy-Code
Fastify has defeated Lagacy-CodeFastify has defeated Lagacy-Code
Fastify has defeated Lagacy-Code
 
SwiftUI vs UIKit
SwiftUI vs UIKitSwiftUI vs UIKit
SwiftUI vs UIKit
 

Recently uploaded

Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Christo Ananth
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Christo Ananth
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Recently uploaded (20)

Vivazz, Mieres Social Housing Design Spain
Vivazz, Mieres Social Housing Design SpainVivazz, Mieres Social Housing Design Spain
Vivazz, Mieres Social Housing Design Spain
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
 
Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01
 
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICSUNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
 
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and Properties
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
Call Girls Walvekar Nagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Walvekar Nagar Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Walvekar Nagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Walvekar Nagar Call Me 7737669865 Budget Friendly No Advance Booking
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdf
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
 

Droid con 2015 - experimenting monitoring and proximity techniques using android potential and ibeacon devices

  • 1. +MatteoGazzurelli Experimenting Monitoring and Proximity techniques using Android potential and iBeacon devices 1 April, 9 2015
  • 2. CEO / Android Developer DUCKMA Srl - Brescia @gazzumatteo duckma.com
  • 3. • What iBeacon technology is and what is used for • How we can use this technology to effectively track people’s movements in a closed space like a room or a shop • How we can push interesting content on their smartphone based on their proximity to an object • My Experiment • Apps fully based on iBeacons summar y
  • 4. What is an iBeacon?from http://en.wikipedia.org/wiki/IBeacon Enables a smartphone to perform actions when in close proximity to an iBeacon. iBeacon uses Bluetooth low energy proximity sensing to transmit a universally unique identifier. The identifier can be looked up to determine the device's physical location or trigger an action.
  • 6. Monitoring Enables your app to know when the device enters and exits the range of beacons defined by the region Ranging Gives you the exact list of beacons detected in a given region, together with an estimated distance from the device to each beacon. iBeacon Monitoring and Ranging
  • 7. Entering in region UUID - Minor - Major - Range Conten t Beacon App Pushing Content to Users Server
  • 8. Field Size Description UUID 16 bytes Application developers should define a UUID specific to their app and deployment use case. Major 2 bytes Further specifies a specific iBeacon and use case. For example, this could define a sub- region within a larger region defined by the UUID. Minor 2 bytes Allows further subdivision of region or use case, specified by the application developer. UUID fb0b57a2-8228-44cd-913th-94a122ba1206 Minor 4563 Major 3457 iBeacon Advertisement
  • 9. Indoor location: Locate an object or people inside a building. Way-finding: Knowing where your desired location is, how to get there from your present location. Way Finding / Indoor Location from http://www.umich.edu/~wayfind/supplements/moreinfomain.htm
  • 10. 1) Download the library 2) Let your activity implements BeaconConsumer 3) Create your iBeacon identifier and a Region mAllBeaconsRegion = new Region(UNIQUE_ID, Identifier.parse(PROXIMITY_UUID), null, null); beaconManager = BeaconManager.getInstanceForApplication(this); beaconManager.getBeaconParsers().add(new BeaconParser() .setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24")); beaconManager.bind(this); Alt Beacon Library follow https://altbeacon.github.io/android-beacon-library/configure.html
  • 11. Alt Beacon Library 4) Implement AltBeacon Methods @Override public void onBeaconServiceConnect() { beaconManager.setMonitorNotifier(new MonitorNotifier() { public void didEnterRegion(Region region) {} public void didExitRegion(Region region) {} public void didDetermineStateForRegion(int i, Region region) {} 5) Check if the device entered in a Beacon Region beaconManager.setRangeNotifier(new RangeNotifier() { @Override public void didRangeBeaconsInRegion(final Collection<Beacon> beacons, final Region region) { } follow https://altbeacon.github.io/android-beacon-library/configure.html
  • 12. 6) When entered in Region Send Notification public void didRangeBeaconsInRegion(final Collection<Beacon> beacons, final Region region) { sendNotificationWear(beacon); } 7) Send Notification to Android Wear // Create a WearableExtender to add functionality for wearables // Build intent for notification content // Get an instance of the NotificationManager service // Build the notification and issues it with notification manager. Wear Notification follow http://d.android.com/wear
  • 14. CONS: Closed Source Work only with Estimote Take time to fix distances iBeacon Android Libraries PRO Optimised for Estimote Can program Estimote Easy to use CONS: Cannot program iBeacons General library Less accurate distances PRO Works with all major iBeacons Open Source Good starting point
  • 15. • Tried both libraries • Monitoring (only Estimote) • Ranging • WayFinding • Indoor Location (our way) Our Experiment
  • 18. Indoor location (the easy way) • No library for indoor location in Android • AltBeacon / Estimote SDK • No statistical assumptions • Empirical data (based on many iterations) • Approximation How we made indoor location
  • 20. • Estimote (Win) • Using iBeacons is very easy • Indoor Location is not so easy • iBeacon drains your Battery! • iBeacon technology is not mature Experiment Results
  • 21. Fingerprinting Triangulation Trilateration • Other external components such as Wi-fi, Magnetic field… • Signals theory (clean signal waves) • Statistical Algorithms (Best fit, Monte Carlo Localisation) Internal sensors (accelerometer compass) Indoor location (the correct - and hard - way)
  • 22. Apps based on iBeacon Why you don’t make it for Android???
  • 24. Resources: • Source Code Sample Experiment App: github.com/gazzumatteo/iBeaconExperiments • Bluetooth Le Guide: d.android.com/guide/topics/connectivity/bluetooth- le.html • AltBeacon SDK altbeacon.github.io/android-beacon-library • Estimote SDK https://github.com/Estimote/Android-SDK
  • 25. Download the demo Available on Google Play Store (Tested only on Nexus 5 and Nexus 6)