Skip to content


Version 5.0.15

  • Change: Targeting Android 12: added bluetooth permissions ("android.permission.BLUETOOTH", "android.permission.BLUETOOTH_ADMIN", "android.permission.BLUETOOTH_CONNECT", "android.permission.BLUETOOTH_SCAN") to sdk's manifest. BackgroundScanBroadcastReceiver's PendingIntent - or-ing also FLAG_MUTABLE.

  • Bug Fix: DFU Controller - performing readall after authorization - reporting connection errors that happened during the authorization phase

  • Change: SecureConfigMapper - support for applying roomNumber onto beacons.

  • Change: Config - added roomNumber and irRoomNumber properties.

  • Change: Added ImageStreamer functionality - stream pictures from beacons equipped with a thermal camera sensor module (e.g. Portal Beam).

  • Change: Added support for NANO_SERIES, ASSET_TAG_2, ANCHOR_BEACON_2 models.

Version 5.0.14

  • Bug Fix: Event Collector - ignoring serializing -1 battery level

  • Change: set exported=false attribute for in the sdk's manifest

  • Change: DfuController - differentiating fatal and recoverable errors. Introduced attempts of issuing the Erase command on fatal dfu errors.

Version 5.0.13

  • Bug Fix: DFUController - Correct calculation of transaction chunk based on mtu size.

Version 5.0.12

  • Bug Fix: BaseTelemetryEvent / FullTelemetryEvent including correct timestamps and rssi values. EventCollector correctly triggers lastSeen / batteryLevel value changes in other API layers.

Version 5.0.11

  • Change: DFUController: rolled back transaction indexing introduced in 5.0.10. Introduced support for "subpackaged" firmware files for beacons that send their last firmware offset relative to the start of subpackage and not relative to the start of the entire file.

  • Change: SecureGattController - negotating bigger mtu value of the established connection; DFUController: utilizing queried mtu value as a base for sending firmware file's chunks.

  • Change: Added Anchor_Beacon and Asset_Tag models

  • Bug Fix: AbstractDeviceDiscoverer - removed concatenateMacs util method causing ConcurrentModificationException

Version 5.0.10

  • Change: DFUController: introduced indexes to transactions uploading firmware.

Version 5.0.9

  • Bug Fix: corrected source archive to be recognizable by Android Studio

  • Change: Modified Device model to include lastSeen value.


  • internal changes in build scripts (unimportant to the community)

Version 5.0.8

  • Bug Fix: Fixed missing javadoc and source archives

Version 5.0.7

  • Change: Dropped support for determining beacon features based on firmware revision (DeviceUtils)

Version 5.0.6

  • Change: firmware version - introduced unknown firmware version if passed empty string or null

Version 5.0.5

  • Change: Added support for location frame 2.5 (added getLocation() method to ISecureProfile interface representing location object if it is not null)

Versions 5.0.3, 5.0.4

  • internal changes in build scripts (unimportant to the community)

Version 5.0.2

  • Change: Added support for Android scan filters to support scanning in the background.

  • Change: Internal change - Android Oreo and bigger automatically use the following startScan method, taking PendingIntent as its argument; lower Androids (higher than Lollipop) still use this startScan method

  • Change: Added the possibility to pass a notification object, automatically transforming ProximityService into ForegroundService (see methods setForegroundNotification(Notification, int) and clearForegroungNotification() on ProximityManager interface), giving more robust BLE scanning experience

  • Change: Internal change - collecting "richer" beacon telemetry information (instead of sending simply the current batterylevel, most of the fields visible in the KontaktTelemetry object are now uploaded as well)

  • Change: CreateConfigRequestExecutor: added skipPrefix - custom configuration with field names starting with the prefix are not processed to be prefixed with "customConfiguration." string

Version 5.0.1

  • Change: Device model enum includes new Kio devices

  • Change: Uploading Kontakt Telemetry to the new Kio telemetry processing environment

  • Change: SecureCommandType allows to request BLINK_30S & BLINK_10S commands to be applied to a beacon

Version 5.0.0

  • Change: Changed KontaktTelemetry object to contain new fields broadcasted by new Kio beacons.

Version 4.0.3

  • Change: Added support for new Kio beacon models

Version 4.0.0

  • Change: Removed support for nRF51-based devices (Beacon, Tough Beacon, USB Beacon) with firmware < 4.0

Version 3.3.3

  • New Feature: Temperature offset property in Config model class.
  • New Feature: DeviceUtils class for checking device's abilities & features.
  • Bug Fix: Resolving telemetry for shuffled devices.
  • Bug Fix: Fixed scanning issues.
  • Bug Fix: Internal and GitHub issues fixes

Version 3.3.2

  • New Feature: SecureProfileParser - support for Kontakt telemetry parsing.
  • New Feature: SecureProfile - telemetry property added.
  • New Feature: KontaktCloud - new Places and Receivers API endpoints.
  • New Feature: Order ID in Device model class.
  • Bug Fix: Fixed network parsing issues.
  • Bug Fix: ActivityCheckConfiguration - fixed equals method.
  • Bug Fix: Secure profile discovery fixes.

Version 3.3.1

  • Bug Fix: Fixed issues related to SecureProfile discovery onUpdated() callback.

Version 3.3.0

  • Change: Add accessors for currently set filters and spaces.
  • Change: SpaceListener can now be set independently of iBeacon/Eddystone listeners.

Version 3.2.3

  • Bug Fix: Fixed issue where onScanStop() callback was not called properly.

Version 3.2.2

  • New Feature: Added Tags feature to KontaktCloud
  • New Feature: Added RSSI calibration features to offline configuration
  • Change: Force Scanning will now always be set to DISABLED for Android N or higher (Read More:

Version 3.2.1

  • New Feature: New KontaktDeviceConnection methods for reading Beacon PRO's sensors data.
  • Change: Filtering now works without any limitations for both normal and shuffled devices.
  • Change: Seting proximity or namespace as secure is now required ONLY for Beacon Pro devices. For typical smart beacon devices simply use proximity or namespace.
  • Change: New instances of ProximityManager, KontaktDeviceConnection and KontaktCloud are now obtained via Factories. For example: ProximityManager manager = ProximityManagerFactory.create();
  • Change: Renamed setKontaktSecureProfileListener() method to setSecureProfileListener for Proximity Manager
  • Change: Renamed ProximityManagerContract to simply ProximityManager

Version 3.2.0

  • New Feature: Beacon Pro support
  • New Feature: New endpoints in KontaktCloud
  • Change: Removed supportNonConnectableMode option from configuration
  • Change: New way of defining secure regions and namespaces (see Security section)
  • Change: Renamed builders methods names of some classes for consistency.
  • Bug Fix: Internal and Github issues fixes

Version 3.1.1

  • New Feature: Added support for non-connectable mode
  • New Feature: Added support for Card Beacon model
  • Change: By default, Eddystones are now reported discovered as soon as the first frame is scanned. It doesn't matter which frame it is. See Eddystone Frames Selection section for more details
  • Change: ActivityCheckConfiguration.DEFAULT type added. MINIMAL type values have been lowered
  • Change: Filters are now based on specific device class not advertising packet
  • Bug Fix: DeviceUpdateCallbackInterval now accepts long not int
  • Bug Fix: Fixed Eddystones distance and proximity estimation
  • Bug Fix: Fixed reported issues with onDeviceLost callback

Version 3.0.0

  • Change New API for ranging and monitoring devices
  • Change KontaktProximityManager has been removed. ProximityManager now handles both shuffled and normal devices
  • Change New API for Kontakt Cloud interactions
  • Bug Fix Fixed bugs considering TX Power and Interval when writing a batch Github Issue
  • Bug Fix Fixed "dalvikvm" Could not find class... Github Issue

Version 2.1.2

  • Change Added 'MAC Address' field into IDevice model
  • Change Added 'Model' field into IDevice model
  • Bug fix Fixed bugs affecting ranging and monitoring events

Version 2.1.0

  • Bug fix Events raising inconsistency
  • Bug fix Eddystone TLD parsing
  • New feature Security support
  • New feature Beacon battery monitoring
  • Improvement Simplify IBeaconConnection and EddystoneBeaconConnection into KontaktDeviceConnection
  • Improvement Updated KontaktApiClient to API version 8
  • Improvement Extended ProximityManager interface
  • Improvement KontaktDeviceConnection informs about bluetooth stack errors
  • Improvement High level KontaktProximityManager
  • Change Actions no longer available on IDevice
  • Improvement New way of fetching actions

Version 2.0.0

Released 21 July 2015

  • Bug fix Handling exception raised when a manual Bluetooth scan interruption is made. A working example can be found at kontakt-becon-admin-sample-app.
  • Bug fix Fixes for IBeaconFilters.

  • New feature Google's Edystone profile support including scanning, filtering and connection with parameters manipulation.

  • New feature Selection of event types while scanning.
  • New feature Selection of device profiles to be scanned.
  • New feature Asynchronous methods in KontaktApiClient.

  • Improvement Scan performance optimizations.

  • Removed Public API support.

  • Removed -ActionManager and ActionService. Actions will be redesigned with new approach in future releases.

Version 1.0.6

Released 19 March 2015

  • New feature Added support for Proximity REST API V5.0

REST API V5 deprecated Beacon resources and replaced them with the more generic Device resource. All /beacon/ endpoints are replaced by /device/ endpoints.

Device has been added to the SDK as an abstraction for Beacon.

Device now includes Cloud Beacons. You can interact with your CloudBeacon device in the same way as you could react with a Beacon in previous versions.

  • New feature CloudConfig entity. Similar to the standard Config, the CloudConfig is a batch of parameters that can be applied to your existing CloudBeacon entity in the Rest API. Use the applyCloudConfig(CloudConfig) method.

  • Deprecated Changelog We have deprecated the changelog package and its classes. You can use the ETag identifier your header to identify resource changes.

Version 1.0.5

Released 26 January 2015

{% note|info %} We skipped 1.0.3 & 1.0.4 to align custom and core sdk version numbers.

  • New feature Added HTTP ETag caching support for REST API calls.

  • New feature Added Crashlytics support

  • New feature Added support for Proximity REST API V4.0

  • Bug fix Fix for Dynamic action search - When ActionManager was configured with BeaconManager and the user entered a region, the action search request was not being cached correctly and ActionNotifier was not raising notifications.

Version 1.0.2

Released 17 December 2014

  • New feature Android V5.0 Lollipop support
    Just add the following line to your app manifest:

    ~~~ language-java ~~~

  • New feature Device filtering
    You can now add filters to limit the Beacons you monitor or range.

  • New feature Extend BeaconManager to support filtering
    BeaconManager methods startRanging() and startMonitoring() no longer need a region or region-set to be supplied. Without a supplied region, all Beacons will be ranged or monitored as soon as they come into range. This can be used in conjunction with the new device filters.

  • New feature RSSI Signal manipulation
    Added the ability for custom RSSI calculations. Developers can use the default RSSI calculation, a mean based calculation or add their own custom calculation. This will affect the value returned by getProximity() and getAccuracy().

  • New feature Scan performance
    Added support for Android Bluetooth LE scan settings.

    Developers can add engergy saving scanning modes to their apps. BeaconManager.setScanMode

  • New feature Support for Public Venues, Beacons and Actions
    This version added support for V4.0 of the Proximity REST API. This introduced the concept of Public Venues, Beacons and Actions.

  • New feature Debug logging
    We've added the ability to turn on logging for the Android SDK.

Version 1.0.1

Released 22 October 2014

  • New feature : Writing Profiles and Configs to Beacons. The BeaconConnection.applyConfig(), BeaconConnection.acceptProfile() methods now allow bulk Beacon updates.
  • New feature : Accessibility of SDK for Android versions lower than 4.3 - for clients who want to include interaction with Beacons as optional feature.
  • Fixed : The onRegionAbandoned callback was being raised repeatedly, this now is raised just once when a monitored region is abandoned.
  • Removed : getManager(String email, String password) method from ApiClient Class - the method is no longer supported.