Releases: Estimote/Android-Fleet-Management-SDK
The one with Maven Central
- Closing #43: Finally Estimote SDK is available on Maven Central (
com.estimote:sdk:0.8.7@aar
).
The one with robust authentication
Improvements:
- Authentication to beacon is more robust than ever (requires updating beacon to firmware 3.2.0).
The one with improved update
Improvements:
- Security improvements in the beacon authorization mechanism.
- Beacon update is more stable.
The one with material fixes
- This is mainly a bugfix release.
- Fixed (#109): Documentation Bug.
- Fixed (#117): Crash after update to 0.8 version.
- SDK demos are now using Material Design (h/t @RingoMckraken).
The one with Eddystone fixes
- Small fixes for Eddystone protocol.
The one with Eddystone
- Say hello to Eddystone - an open protocol BLE protocol from Google.
- Estimote Beacons can broadcast Eddystone protocol.
- In order to start playing with Eddystone you need to update firmware of your existing Estimote beacons to
3.1.1
. Easiest way is through Estimote app on Google Play. Than you can change broadcasting scheme on your beacon to Eddystone-URL or Eddystone-UID. - New in SDK:
- find nearby Eddystone beacons (
BeaconManager#startEddystoneScanning
)
- find nearby Eddystone beacons (
- configure Eddystone related properties:
- URL property of
Eddystone-URL
(seeBeaconConnection#eddystoneUrl
) - namespace & instance properties of
Eddystone-UID
(seeBeaconConnection#eddystoneNamepsace
,BeaconConnection#eddystoneInstance
)
- URL property of
- configure broadcasting scheme of beacon to
Estimote Default
,Eddystone-UID
orEddystone-URL
(seeBeaconConnection#broadcastingScheme
) - SDK Examples have been updated to showcase Eddystone support.
The one with nearables, power modes & flip to sleep
- Initial support for nearables. You can discover nearby nearables via
BeaconManager.startNearableDiscovery()
. With nearbles you can read temperature, motion, orientation without need to connect to it. Directly from discoveredNearable
class. - You can change basic & smart power mode in your beacon via
BeaconConnection
. Read more about power modes. - You can also change conditional broadcating in beacon (Flip To Sleep). It is great for development. Read more about Flip To Sleep.
android.hardware.bluetooth_le
feature is no longer required- Breaking changes (1.0 is approaching, bear with us):
- most of
BeaconConnection
s write* methods are gone, they are replaced with more appropriateProperty
class
- most of
// Before
connection.writeMajor(newMajor, callback);
connection.writeMinor(newMinor, callback);
// After: reading
connection.minor().get()
connection.major().get()
// After: writing in batch
connection.edit()
.set(connection.proximityUuid(), newUuid)
.set(connection.major(), newMajor)
.set(connection.minor(), newMinor)
.commit(callback);
The one with authentication fix
- Fixed authentication issues (#111).
The one with firmware update
- You can update update firmware in Estimote beacons from the SDK. There are several ways to do it:
- Use
BeaconOta
class to perform firmware update on selected beacon. - Use
BeaconConnection#updateBeacon
which triggers update on the beacon. See updated demos to see how it works. - You can also use Estimote app from Play Store to do that.
- Use
- Estimote SDK now includes also
android.permission.ACCESS_NETWORK_STATE
permission to determine internet connectivity. - Breaking changes (please bear with us, we are approaching stable 1.0 release):
BeaconConnection
'sConnectionCallback#onAuthenticated
method does not returnBeaconCharacteristics
object any more. You can read them directly onBeaconConnection
object.- For example read reading broadcasting power is just
connection.getBroadcastingPower()
.
The one with Cloud
-
From now Estimote SDK for Android is distributed as AAR archive rather than jar. That means that you do not need to change your
AndroidManifest.xml
. SDK'sAndroidManifest.xml
will be merged with your application'sAndroidManifest.xml
. See installation guide how to add library to your project. -
Welcome back! We have added support for Estimote Cloud. You can access it via
EstimoteCloud
class. Remember first to provide your App ID & App Token from App section of Estimote Cloud viaEstimoteSDK#initialize
method. -
From now all connections to beacons needs to be authorized. If a beacon is not registered to your account, you will not be able to connect to it.
-
Estimote SDK's
AndroidManifest.xml
usesBLUETOOTH
,BLUETOOTH_ADMIN
andINTERNET
permissions. -
Yes, there is single point of initialisation of the SDK.
// App ID & App Token can be taken from App section of Estimote Cloud. EstimoteSDK.initialize(applicationContext, appId, appToken); // Optional, debug logging. EstimoteSDK.enableDebugLogging(true);
-
All exceptions within the SDK has been unified and exposed in
com.estimote.sdk.exception
package. -
That means some breaking changes:
L
class is no longer available, in order to turn on debug logging useEstimoteSDK
class.BeaconConnection.ConnectionCallback
&BeaconConnection.WriteCallback
methods have been changed to contain apropriate exception when happens.