Releases: hypertrack/sdk-ios
Releases · hypertrack/sdk-ios
5.8.1
5.8.0
Added
- Support for Motion & Activity detection
- If your app asks for permission and the user grants it, you will have better activity detection in polylines
5.7.0
Added
- Support for on-device geofencing via new
HyperTrack.orders["my_order"].isInsideGeofence
property- To learn more about how to best use this new feature see our guide here: https://developer.hypertrack.com/docs/clock-in-out-tagging#verify-shift-presence-before-starting-work
Example use for worker clock in:
func handlePresence(
_ isInsideResult: Result<Bool, HyperTrackLocationError>
) {
switch isInsideResult {
case .success(let isInside):
if isInside {
// allow worker to clock in for the shift
} else {
// "to clock in you must be at order destination"
}
case .failure(let error):
// resolve any tracking errors to obtain geofence presence
}
// check if a worker is inside an order's geofence
handlePresence(HyperTrack.orders["my_order"].isInsideGeofence)
// or, listen to order.isInsideGeofence changes
HyperTrack.subscribeToOrders { orders in
handlePresence(orders["my_order"].isInsideGeofence)
}
- Added partial support for Motion Activity
- Our SDK doesn’t ask for motion permission
- For SDK 5.7.0 and above,
NSMotionUsageDescription
in yourInfo.plist
is required (even if permission is not asked).
Changed
- Changed the
OrderStatus
enum to a struct to support future cases without introducing API breaking changes
5.6.0
Added
-
🆕 New
HyperTrack.workerHandle
property can 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
metadata
to identify workers, we suggest usingworkerHandle
for this purpose instead. 👈
- We observed our customers identify worker devices via
-
Exposed a new
HyperTrackSwizzlingDidReceiveRemoteNotificationEnabled
Info.plist key that can be used to specifically disable swizzling of theUIApplicationDelegate.application(_:didReceiveRemoteNotification:fetchCompletionHandler:)
method.
5.5.4
Changed
- Improved documentation for
addGeotag()
methods
Fixed
- Protect against calling push completion handler multiple times
- Fixes and improvements for internal error reporting
- Fixed a bug that led to a small event loss
5.5.3
Added
- Added missing
NSPrivacyCollectedDataType
s toPrivacyInfo.xcprivacy
manifest file- CrashData, DiagnosticData, PerformanceData, DeviceID, UserID, CoarseLocation, PreciseLocation
5.0.7-privacy-manifest2
Added
- Added missing
NSPrivacyCollectedDataType
s toPrivacyInfo.xcprivacy
manifest file- CrashData, DiagnosticData, PerformanceData, DeviceID, UserID, CoarseLocation, PreciseLocation
5.5.2
Fixed
- Fixed an edge case when a battery update would be skipped
5.5.1
Added
- Bundle the Apple Privacy Manifest file as part of the SDK xcframework
- This change is required for all apps that depend on our SDK to pass AppStore review.
- More info in the announcement and Apple docs about Privacy manifest files
Changed
- Background Location Indicator (Blue Pill)
- Default behaviour has been changed to hidden on devices with "Always" location permission
- Previously the indicator would always show, now only for devices with "While Using" permission
- As part of this change we had to lower the location distance filter
5.0.7-privacy-manifest
Added
- iOS: Bundle the Apple Privacy Manifest file as part of the SDK xcframework
- This change is required for all apps that depend on our SDK to pass AppStore review.
- More info in the announcement and Apple docs about Privacy manifest files