All Projects → Bridouille → Android Beacon Scanner

Bridouille / Android Beacon Scanner

A simple android iBeacon, AltBeacon, Eddystone and RuuviTag beacon scanner

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Android Beacon Scanner

Reactivebeacons
Android library scanning BLE beacons nearby with RxJava
Stars: ✭ 171 (-38.27%)
Mutual labels:  ble, ibeacon
IoT-iBeacon
An Ionic app for indoor localization and navigation using BLE iBeacons.
Stars: ✭ 39 (-85.92%)
Mutual labels:  ble, ibeacon
Okble
An easy-to-use BLE library for android. 简单易用的android BLE library
Stars: ✭ 109 (-60.65%)
Mutual labels:  ble, ibeacon
Androidblemanager
android BLE device scan and connect manager
Stars: ✭ 174 (-37.18%)
Mutual labels:  ble, ibeacon
Beacon Keeper
Simple android library for working with iBeacons in background
Stars: ✭ 141 (-49.1%)
Mutual labels:  ble, ibeacon
path planning GAN
Path Planning using Generative Adversarial Network (GAN)
Stars: ✭ 36 (-87%)
Mutual labels:  ble, ibeacon
homekit-compatible-temperature-and-humidity-sensor
Build a HomeKit-compatible Bluetooth Temperature and Humidity Sensor
Stars: ✭ 17 (-93.86%)
Mutual labels:  ble
SpO2-BLE-for-Android
A demo for the Oximeters with 4.0BLE inside.
Stars: ✭ 29 (-89.53%)
Mutual labels:  ble
bluetooth-manager
Java Bluetooth Manager. A library/framework for managing bluetooth adapters, bluetooth devices, GATT services and characteristics
Stars: ✭ 75 (-72.92%)
Mutual labels:  ble
ruuvitag-demo
Demo of reading Bluetooth Low Energy sensor measurements of RuuviTag environmental sensors and feeding them to MQTT, a database and dashboards
Stars: ✭ 14 (-94.95%)
Mutual labels:  ble
goble
Bluetooth Low Energy for Go
Stars: ✭ 43 (-84.48%)
Mutual labels:  ble
pxt-bluetooth-gamepad
BLE HID Gamepad module for micro:bit
Stars: ✭ 20 (-92.78%)
Mutual labels:  ble
zhe
Lighter-than-air, peer-to-peer, bounded, non-blocking, non-threaded, etc., publish-subscribe networking
Stars: ✭ 44 (-84.12%)
Mutual labels:  ble
stm32wb55
Implementation of bluetooth-hci for STM32WB5x wireless SoC
Stars: ✭ 18 (-93.5%)
Mutual labels:  ble
Arduino-BLE-MIDI
MIDI over Bluetooth Low Energy (BLE-MIDI) 1.0 for Arduino
Stars: ✭ 133 (-51.99%)
Mutual labels:  ble
JDY-08
JDY-08 Bluetooth transparent transmission module, with resource for KiCAD
Stars: ✭ 48 (-82.67%)
Mutual labels:  ble
react-native-ibeacon-simulator
Simulate device act as an iBeacon, or transmit as an iBeacon signal from your phone
Stars: ✭ 48 (-82.67%)
Mutual labels:  ibeacon
tapit-app
App which lets two people share their social media details by simply putting one phone on top of the other ("tapping"). Currently in development by Nikita Mounier.
Stars: ✭ 18 (-93.5%)
Mutual labels:  ibeacon
IOS-DFU-Library
OTA DFU Library for Mac and iOS, compatible with nRF5x SoCs
Stars: ✭ 400 (+44.4%)
Mutual labels:  ble
ESP32 BLE OTA Arduino
OTA update on ESP32 via BLE
Stars: ✭ 41 (-85.2%)
Mutual labels:  ble

🌀 Android Beacon Scanner

A simple android beacon scanner that can recognize iBeacons, AltBeacons, Eddystone beacons (UID and URL, with or without TLM) and RuuviTags available on Google Play.

Available for android 5.0+ and smartphones with Bluetooth LE.

🔑 Features

This app will scan for beacons near you! ✌️

For all Beacons:

  • The type of beacon (iBeacon, AltBeacon, Eddystone or RuuviTag)
  • The approximation of the distance with the beacon (this is based on the RSSI value received and is NOT accurate)
  • The beacon address and manufacturer code
  • The RSSI and TX values
  • The last time the beacon has been seen

For iBeacons and AltBeacons:

  • UUID
  • Major
  • Minor

For Eddystone-UID beacons:

  • NamespaceID
  • InstanceID
  • TLM data sent if any

For Eddystone-URL and RuuviTag

  • Clickable URL
  • TLM data sent if any

For RuuviTag:

  • Air Pressure
  • Temperature
  • Humidity

It can display several frames emitted by a single beacon, allowing you to see if a beacon emits multiple frames types (for example radius network beacons can emit iBeacon and AltBeacon at the same time)!

  • You can also log the scans of the beacons to an endpoint via a HTTP POST request.

🔧 Installation setup

  1. This project uses Firebase Analytics and Firebase Crash reporting, therefore it needs a google-services.json files in the app directory. To get it you need to create a Firebase project in the Firebase console and go to the project settings and download the google-services.json file from there.
  2. You'll see there is a signingConfigs.release in the app/build.gradle that contains variable that you didn't declare beacon_scanner_key_password, beacon_scanner_store_file, beacon_scanner_store_password. Either you create those 3 keys in your ~/.gradle/gradle.properties files or you can simply remove this configuration if you're not interested in having a release signing configuration. Make sure to remove it in the release and preRelease buildTypes as well.
  3. That's it, the app should now compile!

📘 Main libraries used

  • AltBeacon
    • Scanning for beacons nearby
    • Making the difference between iBeacons, AltBeacons and Eddystone beacons
    • Easily getting data emitted by the beacons (UUID, major, minor, namespaceID...)
  • Room
    • Local database wrapper
  • Retrofit
    • Network calls for POSTing to an endpoint
  • RxJava (& RxAndroid)
    • Easy threading and network calls abstraction
  • Dagger 2
    • Dependency injections into activities
  • FlexBox Layout
    • Easily display a list of size-varying fields
  • TapTargetView
    • Material design discovery feature made easy
  • Timber
    • A logger with a small, extensible API which provides utility on top of Android's normal Log class
  • Material dialog
    • Dialog API in Kotlin

License

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

This software is available under the Apache License 2.0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].