For the complete documentation index, see llms.txt. This page is also available as Markdown.

iOS

Platform

iOS 15.0 or Higher

This is the minimum supported iOS version. If you support an older iOS version, you can still include the Sentiance SDK, however, detections will not run.

Xcode 26 or Higher

We recommend using the latest stable Xcode version and compiling against the latest iOS SDK version.


Permissions

Location

To collection location data in the background, the SDK requires the "Always" location permission. Additionally, Precise Location must be enabled in the app's location settings.

Motion & Fitness

To collect motion activity data (e.g. walking, running), the SDK requires the Motion & Fitness permission.

This permission is optional

When granted, this permission helps improve the quality of the detections. Therefore, it is highly recommended to ask the user to grant this permission.

Permission Considerations

Read more...

Apple provides some useful tips about requesting permissions as part of their Human Interface Guidelines. Below are some additional things to consider for an optimal user experience when requesting permissions:

Privacy

  • Request the permission only when your app clearly needs it.

  • Explain why your app needs the permission.

  • When your app requests permission for background locations or motion activities, a message will be shown to the user. You must configure this message by setting the value for the following keys in Info.plist:

    • NSLocationAlwaysUsageDescription

    • NSLocationWhenInUseUsageDescription

    • NSLocationAlwaysAndWhenInUseUsageDescription

    • NSMotionUsageDescription

  • Keep the text short and specific. Be polite so the user does not feel pressured. There’s no need to include your app name.

Consistency

  • Request a permission at launch only when necessary for your app to function.

  • Use the system-provided alerts.


Runtime

iOS Region Monitoring Limits

The Sentiance SDK uses the region monitoring feature provided by iOS. There is currently a per-app limit of 20 regions that can be monitored at any point in time. This limit is enforced by iOS.

For proper operation and detections, please ensure that the Sentiance SDK can monitor 2 regions at any given time. If the SDK does not obtain at least two geofences required for its internal operation, it will trigger an off-the-grid event.


Get started by including the SDK.

Last updated