iOS Permissions
Permissions
The Fairmatic SDK needs the following permissions for its products to function smoothly:
Legend | Meaning |
---|---|
![]() | The permission is vital for this product to function. |
![]() | Lack of this permission may interfere with the product's functioning. |
![]() | The permission is not needed for the product to function. |
Product | Location | Activity |
---|---|---|
Trip Detection | ![]() | ![]() |
Trip Mileage | ![]() | ![]() |
Collision Detection | ![]() | ![]() |
Driving Behavior - Hard Brake | ![]() | ![]() |
Driving Behavior - Hard Turns | ![]() | ![]() |
Driving Behavior - Rapid Acceleration | ![]() | ![]() |
Driving Behavior - Overspeeding | ![]() | ![]() |
Driving Behavior - Phone Use | ![]() | ![]() |
Many SDK features are dependent on trip detection; therefore, Location Permission is needed for every feature.
SDK Errors
The Fairmatic SDK provides the following permission errors to indicate high-priority permission needs:
Error | Description |
---|---|
Always Location Access | locationPermissionNotAuthorized |
Precise Location | locationAccuracyAuthorizationReduced |
Location Disabled | locationServiceOff |
Low Power Mode | Low power mode adversely affects every feature of the Fairmatic SDK. |
Background App Refresh Disabled | This error does not affect Fairmatic services, but must be mandatorily provided. |
Activity Permission | activityPermissionNotAuthorized |
Handling Errors
We recommend acquiring permissions during an onboarding process that clearly explains why those permissions are needed. Here, we have demonstrated how to handle the case of location permission being denied.
The onboarding process for location permission in our in-house sample app is shown below for reference.
If an error is thrown after the onboarding process, a notification can indicate to the user that certain specific permission is needed. Use that notification to direct them to the correct permission screen or a screen describing why the permission is needed.
