SlideShare a Scribd company logo
Hack your Business 
with android + 
beacons + big data 
Tushar Choudhary 
Mobile consultant, Xebia
Agenda 
What, Why & How 
Bluetooth versus BLE 
Beacons & GPS 
Case Study 
Android & Beacons 
Dummy App
Beacons : What They Are ? How 
They work ? Why They are 
Important ?
What are Beacons ? 
• Beacons are small piece of hardware devices 
that can emit and receive BLE signals.
Beacons
Bluetooth Technology ? 
• Radio 
• Software Stack
Bluetooth LE : What is it ? 
A Specification With 
A New Radio, New Software stack & New Profile 
Architecture 
• Used to create Bluetooth LE chipsets - e.g. 
contact chipsets 
• Chipsets are embedded in the devices
Bluetooth Classic Vs Bluetooth LE 
Voice Data Audio Video State 
Bluetooth X Y Y X X 
BLE X X X X Y
Bluetooth Classic Vs Bluetooth LE 
Bluetooth BLE 
Connection Connection Oriented Connectionless 
Data Payload 2 Mbps ~ 100 Kbps 
Power 
Consumption 
High Low 
Transmission File Transmission State Transmission
Currently Supported by devices : 
GOOGLE Nexus 4,5,7,10 
GPS Cameras 
Security Equipments Laptops
90% of devices will be BLE enabled 
by 2018
Beacons/BLE : How They Work ? 
• BLE enabled devices or Beacons can transmits 
small packets of data. 
• This wakes up a “listener/receiver” to let it 
know that it’s there. 
• Which then lets you calculate the proximity to 
the Beacon and show relevant information to 
visitors.
Beacon Data Packet
Why are Beacons important ? 
Advantage to Developers 
Before BLE After BLE 
An app would need to be running 
in the foreground or background 
to communicate with a BLE 
device. 
An app can be launched into 
background if a specific BLE 
device is recognized.
Beacons & GPS 
• Beacons can be thought as an extension of 
location technology. 
• It’s lot like GPS but uses a lot less battery. 
• GPS does not work well once you go inside 
but Bluetooth LE works.
Beacons & GPS 
GPS is a Location Technology 
Bluetooth LE is a Proximity Technology.
Beacons : Proximity
Why Proximity Matters ? 
We can now deliver the content and 
experiences to users based on precise 
proximity to things in physical world
Customer Passes By a Retail 
Store
Customer Receives Notifications and 
Offers
Indoor Navigation : Showing the 
Route
Indoor Navigation : Showing the 
Route
Indoor Navigation : Showing the 
Route
Indoor Navigation : Showing the 
Route
Indoor Navigation : Showing the 
Route
Presence Detection via Proximity
Navigating Customer
Showing Other Offers
Pushing Notifications
Case Study : Retail Business 
• Greet Customers when they arrive. 
• Send special offers and coupons at specific 
locations on store. 
• Offer personal pricing. 
• Implementing proximity driven ad-screen.
Real-Time 
Analytics & Statistics
Real-Time 
Analytics & Statistics
Statistics & Analytics : Retail Business 
• Aggregate and analyze behavior and traces of 
the customers. 
• Analyze interests and shopping decisions of 
your customers -‐ in your shop but even off 
location. 
• Be able to take action on customers behavior 
and feedbacks.
Statistics & Analytics : Retail Business 
• Increase in-store visitor experience. 
• Optimize Target Online Marketing. 
• Have meaningful dashboards at your 
fingertips 
• Run cross-dataset analysis, do peer 
comparisons, and generate actionable report
Android Beacons 
Supported on Android API >= 4.2 
• All android devices above 4.2 have BLE enabled in 
itselves. 
• They can act as a Receiver/Listener and can wake up 
once supported application receives a signal 
• Android Devices having version > 4.4 i.e. Android-L 
devices can also act as a BLE Transmitter
Android Beacons & Support Libraries 
Android Beacon Library: 
https://github.com/AltBeacon/android-beacon-library-reference 
Smart Gatt Library: 
https://github.com/movisens/SmartGattLib 
Bluetooth LE Library Android: 
https://github.com/alt236/Bluetooth-LE-Library---Android
Practical Use Case 
Luggage Tracker
Use Case : Luggage Tracker 
1. Implement a broadcast receiver to catch 
broadcasts for turning bluetooth on and off. 
2. Start a service when bluetooth turns on. 
3. Stop service when bluetooth turns off 
4. Register a listener to listen for nearby beacon 
devices
Implementing Broadcast Receiver 
@Override 
public void onReceive(Context context, Intent intent) { 
// TODO Auto-generated method stub 
if 
(BluetoothAdapter.ACTION_STATE_CHANGED.equals(intent.getAction())) { 
int state = 
intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, -1); 
Intent i; 
switch (state) { 
case BluetoothAdapter.STATE_OFF: 
if (MyBeaconService.isStarted) { 
i = new Intent(context, 
MyBeaconIntentService.class); 
i.putExtra("StartBeaconService", 
false); 
context.stopService(i); 
} 
Log.i(TAG, "Bluetooth State : OFF"); 
break; 
case BluetoothAdapter.STATE_ON: 
Log.i(TAG, "Bluetooth State : ON"); 
if (!MyBeaconService.isStarted) { 
i = new Intent(context, 
MyBeaconIntentService.class); 
i.putExtra("StartBeaconService", 
true); 
context.startService(i); 
}
Registering Ranging Listener in 
Service’s onCreate() method 
@Override 
public void onCreate() { 
super.onCreate(); 
beaconManager.setMonitoringListener(new 
BeaconManager.MonitoringListener() { 
@Override 
public void onExitedRegion(Region arg0) { 
// TODO Auto-generated method stub 
Util.postNotification(getBaseContext(), 
"Alert Luggage Tracker", 
notificationManager, 1, 
AllDemosActivity.class); 
} 
@Override 
public void onEnteredRegion(Region arg0, List<Beacon> 
arg1) { 
// TODO Auto-generated method stub 
}}); 
}
Connecting to BeaconManager’s Service 
in Service’s onStartCommand() 
@Override 
public int onStartCommand(Intent intent, int flags, int startId) { 
beaconManager.connect(new 
BeaconManager.ServiceReadyCallback() { 
@Override 
public void onServiceReady() { 
try { 
beaconManager.startMonitoring(BEACONS); 
} catch (RemoteException e) { 
Log.e(TAG, "Cannot start 
ranging", e); 
} catch (Exception e) { 
e.printStackTrace(); 
} 
} 
}); 
return START_NOT_STICKY; 
}
Technical pitfalls of Beacons ? 
• Bluetooth must be turned on. 
• Your app must be installed on users devices. 
• You can't trigger mobile beacon or iBeacon to trigger 
installation of an app. 
• Location services must be enabled for the specific 
application. 
• To download real data we must have an app connected 
via internet connection.
Hack your business  android+beacons+big data

More Related Content

PDF
Core Bluetooth and BLE 101
PDF
About BLE server profile
PPTX
Ble overview and_implementation
DOCX
Assistive Technology_Research
PPTX
Android & Beacons
PPT
Free Download Powerpoint Slides
PPT
Introduction to beacon
PPTX
Beacons in Context
Core Bluetooth and BLE 101
About BLE server profile
Ble overview and_implementation
Assistive Technology_Research
Android & Beacons
Free Download Powerpoint Slides
Introduction to beacon
Beacons in Context

Similar to Hack your business android+beacons+big data (20)

PDF
Ten Mindblowing Ibeacon Case Studies
PPTX
Mobile Beacons 101
PDF
Beacosystem Talk @ MongoDB User Group Dublin @sos100
PDF
Developing Beacons with Bluetooth® Low Energy (BLE) Technology
PDF
Developing Beacons with Bluetooth® Low Energy (BLE) Technology
PDF
Developing Beacons with Bluetooth® Low Energy (BLE) Technology
PDF
Developing Beacons with Bluetooth® Low Energy (BLE) Technology
PDF
LocalSocial O Reilly Webcast Slides - A Tour of the Beacosystem
PDF
Beacon Basics
PDF
BBL AXA Lille - Nearable and the Eddystone Quest
PPTX
Beacons
PDF
Beacosystem Tour for GDG Dublin - Sean O Sullivan
PPTX
iBeacon Reality Check _ Essential Considerations for an iBeacon Deployment
PDF
Bluetooth LE & iBeacons by Javier Chávarri (NSBarcelona)
PPTX
Using BLE to Enhance User Engagement - ConnectJS
PDF
What are Beacons and How do they Work?
PDF
LocalSocial XCake iBeacon Slides Q3 2015
PPTX
Beacon
PDF
A Quick Guide to Beacon Basics
PDF
Iljaitsch vectorform ble_i_beacon_140401
Ten Mindblowing Ibeacon Case Studies
Mobile Beacons 101
Beacosystem Talk @ MongoDB User Group Dublin @sos100
Developing Beacons with Bluetooth® Low Energy (BLE) Technology
Developing Beacons with Bluetooth® Low Energy (BLE) Technology
Developing Beacons with Bluetooth® Low Energy (BLE) Technology
Developing Beacons with Bluetooth® Low Energy (BLE) Technology
LocalSocial O Reilly Webcast Slides - A Tour of the Beacosystem
Beacon Basics
BBL AXA Lille - Nearable and the Eddystone Quest
Beacons
Beacosystem Tour for GDG Dublin - Sean O Sullivan
iBeacon Reality Check _ Essential Considerations for an iBeacon Deployment
Bluetooth LE & iBeacons by Javier Chávarri (NSBarcelona)
Using BLE to Enhance User Engagement - ConnectJS
What are Beacons and How do they Work?
LocalSocial XCake iBeacon Slides Q3 2015
Beacon
A Quick Guide to Beacon Basics
Iljaitsch vectorform ble_i_beacon_140401

Recently uploaded (20)

PPTX
history of c programming in notes for students .pptx
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Nekopoi APK 2025 free lastest update
PPTX
Transform Your Business with a Software ERP System
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Understanding Forklifts - TECH EHS Solution
PDF
System and Network Administration Chapter 2
PDF
How Creative Agencies Leverage Project Management Software.pdf
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
AI in Product Development-omnex systems
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
System and Network Administraation Chapter 3
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
history of c programming in notes for students .pptx
VVF-Customer-Presentation2025-Ver1.9.pptx
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Design an Analysis of Algorithms I-SECS-1021-03
2025 Textile ERP Trends: SAP, Odoo & Oracle
Nekopoi APK 2025 free lastest update
Transform Your Business with a Software ERP System
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Understanding Forklifts - TECH EHS Solution
System and Network Administration Chapter 2
How Creative Agencies Leverage Project Management Software.pdf
Odoo POS Development Services by CandidRoot Solutions
AI in Product Development-omnex systems
Operating system designcfffgfgggggggvggggggggg
System and Network Administraation Chapter 3
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Which alternative to Crystal Reports is best for small or large businesses.pdf
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx

Hack your business android+beacons+big data

  • 1. Hack your Business with android + beacons + big data Tushar Choudhary Mobile consultant, Xebia
  • 2. Agenda What, Why & How Bluetooth versus BLE Beacons & GPS Case Study Android & Beacons Dummy App
  • 3. Beacons : What They Are ? How They work ? Why They are Important ?
  • 4. What are Beacons ? • Beacons are small piece of hardware devices that can emit and receive BLE signals.
  • 6. Bluetooth Technology ? • Radio • Software Stack
  • 7. Bluetooth LE : What is it ? A Specification With A New Radio, New Software stack & New Profile Architecture • Used to create Bluetooth LE chipsets - e.g. contact chipsets • Chipsets are embedded in the devices
  • 8. Bluetooth Classic Vs Bluetooth LE Voice Data Audio Video State Bluetooth X Y Y X X BLE X X X X Y
  • 9. Bluetooth Classic Vs Bluetooth LE Bluetooth BLE Connection Connection Oriented Connectionless Data Payload 2 Mbps ~ 100 Kbps Power Consumption High Low Transmission File Transmission State Transmission
  • 10. Currently Supported by devices : GOOGLE Nexus 4,5,7,10 GPS Cameras Security Equipments Laptops
  • 11. 90% of devices will be BLE enabled by 2018
  • 12. Beacons/BLE : How They Work ? • BLE enabled devices or Beacons can transmits small packets of data. • This wakes up a “listener/receiver” to let it know that it’s there. • Which then lets you calculate the proximity to the Beacon and show relevant information to visitors.
  • 14. Why are Beacons important ? Advantage to Developers Before BLE After BLE An app would need to be running in the foreground or background to communicate with a BLE device. An app can be launched into background if a specific BLE device is recognized.
  • 15. Beacons & GPS • Beacons can be thought as an extension of location technology. • It’s lot like GPS but uses a lot less battery. • GPS does not work well once you go inside but Bluetooth LE works.
  • 16. Beacons & GPS GPS is a Location Technology Bluetooth LE is a Proximity Technology.
  • 18. Why Proximity Matters ? We can now deliver the content and experiences to users based on precise proximity to things in physical world
  • 19. Customer Passes By a Retail Store
  • 21. Indoor Navigation : Showing the Route
  • 22. Indoor Navigation : Showing the Route
  • 23. Indoor Navigation : Showing the Route
  • 24. Indoor Navigation : Showing the Route
  • 25. Indoor Navigation : Showing the Route
  • 30. Case Study : Retail Business • Greet Customers when they arrive. • Send special offers and coupons at specific locations on store. • Offer personal pricing. • Implementing proximity driven ad-screen.
  • 31. Real-Time Analytics & Statistics
  • 32. Real-Time Analytics & Statistics
  • 33. Statistics & Analytics : Retail Business • Aggregate and analyze behavior and traces of the customers. • Analyze interests and shopping decisions of your customers -‐ in your shop but even off location. • Be able to take action on customers behavior and feedbacks.
  • 34. Statistics & Analytics : Retail Business • Increase in-store visitor experience. • Optimize Target Online Marketing. • Have meaningful dashboards at your fingertips • Run cross-dataset analysis, do peer comparisons, and generate actionable report
  • 35. Android Beacons Supported on Android API >= 4.2 • All android devices above 4.2 have BLE enabled in itselves. • They can act as a Receiver/Listener and can wake up once supported application receives a signal • Android Devices having version > 4.4 i.e. Android-L devices can also act as a BLE Transmitter
  • 36. Android Beacons & Support Libraries Android Beacon Library: https://github.com/AltBeacon/android-beacon-library-reference Smart Gatt Library: https://github.com/movisens/SmartGattLib Bluetooth LE Library Android: https://github.com/alt236/Bluetooth-LE-Library---Android
  • 37. Practical Use Case Luggage Tracker
  • 38. Use Case : Luggage Tracker 1. Implement a broadcast receiver to catch broadcasts for turning bluetooth on and off. 2. Start a service when bluetooth turns on. 3. Stop service when bluetooth turns off 4. Register a listener to listen for nearby beacon devices
  • 39. Implementing Broadcast Receiver @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub if (BluetoothAdapter.ACTION_STATE_CHANGED.equals(intent.getAction())) { int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, -1); Intent i; switch (state) { case BluetoothAdapter.STATE_OFF: if (MyBeaconService.isStarted) { i = new Intent(context, MyBeaconIntentService.class); i.putExtra("StartBeaconService", false); context.stopService(i); } Log.i(TAG, "Bluetooth State : OFF"); break; case BluetoothAdapter.STATE_ON: Log.i(TAG, "Bluetooth State : ON"); if (!MyBeaconService.isStarted) { i = new Intent(context, MyBeaconIntentService.class); i.putExtra("StartBeaconService", true); context.startService(i); }
  • 40. Registering Ranging Listener in Service’s onCreate() method @Override public void onCreate() { super.onCreate(); beaconManager.setMonitoringListener(new BeaconManager.MonitoringListener() { @Override public void onExitedRegion(Region arg0) { // TODO Auto-generated method stub Util.postNotification(getBaseContext(), "Alert Luggage Tracker", notificationManager, 1, AllDemosActivity.class); } @Override public void onEnteredRegion(Region arg0, List<Beacon> arg1) { // TODO Auto-generated method stub }}); }
  • 41. Connecting to BeaconManager’s Service in Service’s onStartCommand() @Override public int onStartCommand(Intent intent, int flags, int startId) { beaconManager.connect(new BeaconManager.ServiceReadyCallback() { @Override public void onServiceReady() { try { beaconManager.startMonitoring(BEACONS); } catch (RemoteException e) { Log.e(TAG, "Cannot start ranging", e); } catch (Exception e) { e.printStackTrace(); } } }); return START_NOT_STICKY; }
  • 42. Technical pitfalls of Beacons ? • Bluetooth must be turned on. • Your app must be installed on users devices. • You can't trigger mobile beacon or iBeacon to trigger installation of an app. • Location services must be enabled for the specific application. • To download real data we must have an app connected via internet connection.