The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
14.0.6 - 2025-11-18
- Updated HyperTrack SDK iOS to 5.12.1
14.0.5 - 2025-11-10
- Fixed HyperTrack SDK iOS version to 5.12.0
14.0.4 - 2025-10-13
RCT-Follydependency (to ensure React Native0.80+compatibility)
- Updated HyperTrack SDK iOS to 5.11.4
14.0.3 - 2025-09-30
- Updated HyperTrack SDK Android to 7.12.0
14.0.2 - 2025-03-06
14.0.1 - 2025-03-04
14.0.0 - 2025-02-04
Order.isInsideGeofenceis now an async fuction that returns the value at the moment when it called (instead of the constant value at the time ofgetOrdersbeing called)- Updated HyperTrack SDK iOS to 5.11.0
- Updated HyperTrack SDK Android to 7.11.0
- Wrong order of Orders in
HyperTrack.getOrders()on iOS - Error on
HyperTrack.getOrders()/HyperTrack.subscribeToOrders()on Android when assigning multiple orders to the worker
13.8.0 - 2025-01-21
- New
HyperTrack.getAllowMockLocation()andHyperTrack.setAllowMockLocation()methods which can be used to allow mocking location data.- Check the Test with mock locations guide for more information.
- Note: To avoid issues related to race conditions in your code use this API only if modifying the compiled
HyperTrackAllowMockLocationAndroidManifest.xml/Info.plist value is insufficient for your needs.- Example: if for some reason you aren't able to recompile with
HyperTrackAllowMockLocationset toYES/truefor your prod app QA mock location tests and need to set up the value in runtime.
- Example: if for some reason you aren't able to recompile with
13.7.1 - 2024-12-05
13.7.0 - 2024-11-22
13.6.4 - 2024-11-17
- Dependency conflict for
RCT-Follylibrary when New Architecture is enabled (removed the fixed folly version)
13.6.3 - 2024-11-13
13.6.2 - 2024-09-24
- Updated HyperTrack SDK Android to 7.8.3
13.6.1 - 2024-09-11
- Fixed issue that prevented device registration if the Activity Service plugin wasn't provided
- Updated HyperTrack SDK Android to 7.8.2
13.6.0 - 2024-09-05
- Support for Motion & Activity detection
- If your app asks for the Motion & Activity permission (for iOS) or the Activity Recognition permission (for Android) and the user grants it, you will have better activity detection in polylines
- Use new Activity service plugin
hypertrack-sdk-react-native-plugin-android-activity-service-google(See Plugins)
13.5.1 - 2024-09-02
- Serialization issue with
Order.isInsideGeofence
13.5.0 - 2024-08-21
- Support for on-device geofencing via new
HyperTrack.orders.get("my_order_handle").isInsideGeofenceproperty- To learn more about how to best use this new feature see our guide here: Verify shift presence before starting work
Example use for worker clock in:
// check worker presence synchronously
let activeOrders = await HyperTrack.getOrders()
let currentOrder = activeOrders.get("current_order")
if (currentOrder !== undefined) { handlePresence(currentOrder) }
else { console.log("'current_order' not found") }
// or subscribe to the changes in orders to get the status updates
HyperTrack.subscribeToOrders(orders => {
let let currentOrder = activeOrders.get("current_order")
if (currentOrder !== undefined) { handlePresence(currentOrder) }
else { console.log("'current_order' not found") }
})
// handle worker presence inside the order destination geofence
function handlePresence(isInsideGeofence: Result<boolean, LocationError>) {
switch (isInsideGeofence.type) {
case 'success':
if (isInsideGeofence.value) {
// allow worker to clock in for the shift
} else {
// "to clock in you must be at order destination"
}
break;
case 'failure':
// resolve errors to check for presence
break;
}
}13.4.0 - 2024-06-13
- New
setWorkerHandleandgetWorkerHandlecan be used to identify workers- We observed our customers identify worker devices via
HyperTrack.metadata, so we decided to make it a first class citizen in our API. - If you previously used
metadatato identify workers, we suggest usingworkerHandlefor this purpose instead.
- We observed our customers identify worker devices via
- Updated HyperTrack SDK Android to 7.6.0
13.3.5 - 2024-06-05
- Updated HyperTrack SDK iOS to 5.6.0
13.3.4 - 2024-05-24
- Updated HyperTrack SDK Android to 7.5.5
13.3.3 - 2024-05-14
13.3.2 - 2024-04-30
- Updated HyperTrack SDK iOS to 5.5.3
13.3.1 - 2024-04-24
13.3.0 - 2024-04-19
- New
addGeotagmethod that haveorderHandleandorderStatusparameters. You can use this API when users need to clock in/out of work in your app to honor their work time (see Clock in/out Tagging guide for more info)
13.2.3 - 2024-02-27
- Updated HyperTrack SDK Android to 7.4.3
13.2.2 - 2024-02-14
- Updated HyperTrack SDK Android to 7.4.2
13.2.1 - 2024-02-13
13.2.0 - 2024-02-06
- Fixed a serialization issue with dynamic publishable key implementation
13.1.0 - 2024-01-29
13.0.0 - 2024-01-24
- New Dynamic publishable key API allows to set the publishable key later in the app lifecycle. It should be used only when there is no other way around it and it's impossible to know the publishable key in advance at the build time. Please contact us if this matches your use case
- Remove async from
setIsAvailable,setIsTracking,setMetadata,setNamemethods
12.1.0 - 2024-01-17
- Mitigates SDK cache file corruption that led to some Android devices loading to
device_idvalues with all zeroes. - [iOS] Optimized querying the Location Manager to reduce impact on battery life and main thread performance.
- Reduced network traffic.
12.0.0 - 2023-12-12
- Now the SDK uses the Plugin architecture. You need to add additionall NPM dependencies for the plugins for the SDK to work properly. See Plugins and Migration Guide for more information.
- Updated HyperTrack Android SDK to 7.0.11
11.0.11 - 2023-12-11
11.0.10 - 2023-11-20
11.0.9 - 2023-11-10
11.0.8 - 2023-11-08
11.0.7 - 2023-10-19
- Lazily initialize event listener subscriptions
11.0.6 - 2023-10-12
- Updated HyperTrack iOS SDK to 5.0.4
11.0.5 - 2023-10-10
11.0.4 - 2023-10-06
- Updated HyperTrack Android SDK to 7.0.5
11.0.3 - 2023-10-04
- Updated HyperTrack Android SDK to 7.0.4
11.0.2 - 2023-09-28
11.0.1 - 2023-09-20
- Fixed setting wrong object format for
setMetadata()
11.0.0 - 2023-09-14
locate()to ask for one-time user locationsubscribeToLocation()to subscribe to user location updatesgetErrors()getName()getMetadata()- HyperTrackError types:
noExemptionFromBackgroundStartRestrictionspermissionsNotificationsDenied
- Updated HyperTrack Android SDK to 7.0.1
- Add Android SDK plugins (
location-services-google-19-0-1andpush-service-firebase) - Updated HyperTrack iOS SDK to 5.0.1
- The whole HyperTrack API is now static
- Changed the way to provide publishableKey (you need to add
HyperTrackPublishableKeymeta-dataitem to yourAndroidManifest.xml) - Renamed HyperTrackError types:
gpsSignalLosttolocationSignalLostlocationPermissionsDeniedtopermissionsLocationDeniedlocationPermissionsInsufficientForBackgroundtopermissionsLocationInsufficientForBackgroundlocationPermissionsNotDeterminedtopermissionsLocationNotDeterminedlocationPermissionsProvisionaltolocationPermissionsProvisionallocationPermissionsReducedAccuracytopermissionsLocationReducedAccuracylocationPermissionsRestrictedtopermissionsLocationRestricted
- Renamed
isAvailable()togetIsAvailable() - Renamed
isTracking()togetIsTracking() - Renamed
setAvailability()tosetIsAvailable(boolean) - Changed
startTracking()andstopTracking()tosetIsTracking(boolean) - Renamed
subscribeToTracking()tosubscribeToIsTracking() - Renamed
subscribeToAvailability()tosubscribeToIsAvailable()
initialize()method (the API is now static)SdkInitParams(the config now should be done with theAndroidManifestmetadata andInfo.plist)- Motion Activity permissions are not required for tracking anymore
- HyperTrackError types:
motionActivityPermissionsDeniedmotionActivityServicesDisabledmotionActivityServicesUnavailablemotionActivityPermissionsRestrictednetworkConnectionUnavailable
sync()method
10.0.3 - 2023-08-04
- Propagating Android exception stacktrace to JS API
10.0.2 - 2023-06-16
- Updated HyperTrack iOS SDK to 4.16.1
10.0.1 - 2023-06-13
- Updated HyperTrack Android SDK to 6.4.2
10.0.0 - 2023-06-06
- Updated HyperTrack Android SDK to 6.4.1
getLocationreturn type toResult<Location, LocationError>
addGeotagandgetLocationwrong return type that is different from the one in the API docs (introduced in 9.2.0)
9.2.2 - 2023-06-01
- Updated HyperTrack iOS SDK to 4.16.0
9.2.1 - 2023-05-19
- Fixed
addGeotag(with expected location) return type
9.2.0 - 2023-05-18
- Breaking change: Changed
addGeotagreturn type toResult<Location, LocationError> - HyperTrack iOS SDK updated to 4.15.0
addGeotagwith expected location
9.1.1 - 2023-03-30
- Removed types re-export to fix issues with some build configurations
9.1.0 - 2023-03-21
automaticallyRequestPermissionsparam toinitialize()
9.0.0 - 2023-02-17
- Updated HyperTrack iOS SDK to 4.14.0
- Updated HyperTrack Android SDK to 6.4.0
createInstance()renamed toinitialize()getDeviceID()renamed togetDeviceId()syncDeviceSettings()renamed tosync()setDeviceName()renamed tosetName()subscribeToErrors()callback now has param type (HyperTrackError)getLocationreturn typeLocationErrornow has different structure
initialize()configuration params for- Debug logging
- Background location permissions request for Android
- Mock locations
subscribeToAvailability()
automaticallyRequestPermissionsparam frominitialize()enableDebugLogging()(useinitialize()paramloggingEnabledistead)setTripMarker()(useaddGeotaginstead)
8.2.2 - 2022-10-10
- Deployment target for iOS changed to 11, to comply with native iOS SDK.
8.2.1 - 2022-09-27
enableDebugLogging()now doesn't cause an infinite loop when called.
8.2.0 - 2022-09-23
- Updated Android SDK to 6.3.0 and iOS SDK to 4.13.0
- When the Android app is uninstalled completely from the device and then installed back, the device_id will change. This improves the stability of the data coming from the SDK. Now this behavior is the same between Android SDK and iOS SDK.
- If the user simulates locations when it's prohibited, the SDK still passes real locations through if there are any.
- Decreased the time sensitivity for first location detection. Results in fewer
location_unavailableoutages when tracking starts on Android.
- Now, all logs in Android SDK are disabled by default and can be enabled by enableDebugLogging()
8.1.0 - 2022-08-30
- Updated Android SDK to 6.2.2 that is compabible with any native library (React Native C++) and reduces the SDK size too. SDK should now add only 4MB to the compressed app's size, when downloaded from Google Play instead of 17 MB on 8.0.0.
8.0.0 - 2022-08-05
- New interface for listeners.
- Reference documentation.
- TypeScript support.
- Updated React Native from 0.63.3 to 0.69.1
7.19.1 - 2022-07-27
- Fixed React Native C++ incompatibility issue with Android SDK 6.2.0
7.19.0 - 2022-07-18
- Updated HyperTrack Android SDK to 6.2.0 and iOS SDK to 4.12.4
7.18.4 - 2022-06-15
- Updated HyperTrack Android SDK to 6.1.4
7.18.3 - 2022-06-15
- Updated HyperTrack Android SDK to 6.1.3
7.18.2 - 2022-06-13
- Updated HyperTrack iOS SDK to 4.12.3
7.18.1 - 2022-06-10
- Updated HyperTrack iOS SDK to 4.12.1 to fix a regression in tracking listener
7.18.0 - 2022-06-09
- Updated HyperTrack Android SDK to 6.1.2 and iOS SDK to 4.12.0
7.17.0 - 2022-06-03
- Updated HyperTrack Android SDK to 6.1.1
7.16.0 - 2022-05-03
- Updated HyperTrack Android SDK to 6.0.4
7.16.0 - 2022-05-03
- Updated HyperTrack Android SDK to 6.0.4
7.15.0 - 2022-04-29
- Current location getter returns either the current location of the device or an outage reason for why current location is unavailable.
7.14.0 - 2022-03-24
- Updated HyperTrack Android SDK to 6.0.2
7.13.0 - 2022-01-05
- Updated iOS SDK to 4.9.0
7.12.1 - 2021-11-11
- Updated Android SDK to 5.4.5
7.12.0 - 2021-10-29
- Updated Android SDK to 5.4.4
7.11.0 - 2021-10-28
- Updated Android SDK to 5.4.3
7.10.0 - 2021-08-04
- Updated Android SDK to 5.4.0
7.9.0 - 2021-07-07
- Updated Android SDK to v5.2.5
7.8.1 - 2021-06-11
- Accidently removed import added back.
7.8.0 - 2021-06-11
- Updated Android SDK to v5.2.2
7.7.0 - 2021-05-29
- Updated Android SDK to v5.1.0
7.6.0 - 2021-05-07
- Updated Android SDK to v4.12.0
7.5.0 - 2021-04-26
7.4.0 - 2021-04-02
- Updated Android SDK to v4.11.0
- SDK won't navigate to Settings showing "Select
Allow Alwaysoption" snackbar on Android 11 and later.
7.3.0 - 2021-03-04
- Updated Android SDK to v4.10.0
7.2.0 - 2020-12-23
- Updated iOS SDK to v4.7.0
- iOS plugin runtime error notification.
7.1.0 - 2020-11-17
7.0.1 - 2020-10-07
- Added
hypertrack-sdk-react-native.podspectopackage.jsonfile.
- Updated iOS SDK to
4.5.1.
7.0.0 - 2020-10-02
- Updated react-native to version
0.63.3. - Updated Android SDK to
4.6.0.
- Remove startsTracking API from createInstance.
/**
* Initialize the HyperTrack SDK
* @param {string} publishableKey - A unique String that is used to identify your account with HyperTrack.
- * @param {boolean} startsTracking - Should the SDK start tracking immediately after initialization.
* @param {boolean} automaticallyRequestPermissions - If true, SDK automatically triggers location and motion activity permissions dialogs when tracking starts.
*/
- async createInstance(publishableKey, startsTracking = true, automaticallyRequestPermissions = true): Promise<HyperTrackAPI> {
- await HyperTrack.initialize(publishableKey, startsTracking, automaticallyRequestPermissions);
+ async createInstance(publishableKey, automaticallyRequestPermissions = true): Promise<HyperTrackAPI> {
+ await HyperTrack.initialize(publishableKey, false, automaticallyRequestPermissions);
return new HyperTrackAPI();
},6.6.0 - 2020-07-24
- Updated react-native to version
0.61.4. - Updated Android SDK to
4.5.2.
6.5.1 - 2020-07-20
- Updated Android SDK to
4.5.1.
6.5.0 - 2020-07-16
- Updated Android SDK to
4.5.0.
6.4.0 - 2020-07-14
- Only send events when there are listeners in iOS wrapper.
- Reject promise properly and with error code during iOS initialization.
- Fixed regression where syncDeviceSettings was removed from iOS SDK wrapper.
6.3.0 - 2020-07-13
- Control permission dialogs on iOS.
/**
* Initialize the HyperTrack SDK
* @param {string} publishableKey - A unique String that is used to identify your account with HyperTrack.
* @param {bool} startsTracking - Should the SDK start tracking immediately after initialization.
+ * @param {boolean} automaticallyRequestPermissions - If true, SDK automatically triggers location and motion activity permissions dialogs when tracking starts.
*/
- async createInstance(publishableKey, startsTracking = true): Promise<HyperTrackAPI> {
+ async createInstance(publishableKey, startsTracking = true, automaticallyRequestPermissions = true): Promise<HyperTrackAPI> {
- await HyperTrack.initialize(publishableKey, startsTracking);
+ await HyperTrack.initialize(publishableKey, startsTracking, automaticallyRequestPermissions);
return new HyperTrackAPI();
},6.2.2 - 2020-04-14
- Updated Android dependency repos.
6.2.1 - 2020-01-08
- RN SDK wrapper now supports native iOS
4.0.xSDK.
6.1.0 - 2019-09-30
- Adding sync device settings
- Updated Android SDK to
3.4.7.
6.0.0 - 2019-09-17
- Updated interface with promises and split name and metadata
- Updated react-native to version
0.59.9.
5.0.5 - 2019-08-29
- Updated Android SDK to
3.4.5.
5.0.4 - 2019-08-23
- Updated Android SDK to
3.3.4and stop tracking events.
5.0.3 - 2019-08-22
- Make deviceID change with publishable key.
5.0.2 - 2019-08-15
- Fixed Android wrapper permissions handling in initialize and startTracking.
5.0.1 - 2019-08-15
- Expose critical errors and update the integration.
4.1.1 - 2019-08-08
- Bump Android SDK version to
3.3.1.
4.1.0 - 2019-08-07
- Make
getDeviceIDconsistent between Android and iOS wrappers.
4.0.2 - 2019-08-06
- Fixed null context exception in Android wrapper.
4.0.1 - 2019-07-29
- Added an option to start tracking right after initialization.
/**
* Initialize the HyperTrack SDK
* @param {string} publishableKey - A unique String that is used to identify your account with HyperTrack.
+ * @param {bool} startsTracking - Should the SDK start tracking immediately after initialization
*/
initialize(publishableKey) {
- RNHyperTrack.initialize(publishableKey);
+ RNHyperTrack.initialize(publishableKey, startsTracking);
},3.0.0 - 2019-07-23
- Backups key for Android SDK
- Bump Android SDK version to 3.3.0 and switch to trip markers for native calls.
2.0.0 - 2019-07-17
sendCustomEventwas renamed tosetTripMarker.
1.0.2 - 2019-07-04
- Added silent push notifications.
1.0.1 - 2019-06-26
- Added HyperTrack repository to repos list.
1.0.0 - 2019-06-07
Initial release.