# iOS

Here is a summary of the changes, fixes, and additions in IMS SDK release 1.15.0:

## Breaking Changes

* At the time of initialization of SDK, to use phone only or bluetooth trip validation, host app can pass `Feature.PhoneOnlyValidation` or `Feature.DeviceValidation` respectively to use the validation features.

### Scoring

* The elements of ScoringService and TripScores API are marked as optional and has additional components.

## Features

* Ability to pass the push notification token from the host application to the DriveSync® server so that IMS can push notifications to user's device outside of the app.
* Log files are uploaded every 24 hours by default unless \`stopScheduledLogUploader()\` is called by the host app. The intervalHours can be changed while calling \`startScheduledLogUploader(withIntervalHours)\` and pass in the intervalHours host app wants.

**\*\***\****NOTE:\****\*\* If the passed IntervalHours is 0 then the logs will be uploaded every 15 minutes interval.

### User

* New components have been added to the User API, and one of them is `EnrollmentModelType`, which allows the host app to use a specific type of trip detection.
* `EnrollmentModelType` has two values:

`MOBILE_FLEXIBLE` -> Phone Only Trip Detection User

`MOBILE_WITH_VEHICLE_IDENTIFIER` -> Wedge User

* New configuration features added for trip validation:

`PhoneOnlyValidation` - validates the start and end of the trip using phone only capabilities (CoreLocation, CoreMotion).

`DeviceValidation` - validates start and end of the trip by discovering the associated nearby devices.

## Refactoring

* Frameworks are distributed as `.xcframework` files.

## Known Issues

* The log uploader doesn’t upload logs on intervals if the app is killed.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sdk.ims.tech/releases/older-releases/1.15.0/ios.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
