IOS SDK uses the SwiftUI API for UI rendering, networking is handled by Kotlin Multiplatform Mobile and this part of the SDK is same for Android and iOS. You can check external dependencies for this module here. Our tests show that SDK will increase your app approximately by 6MB in download size and 18MB in install size.
The Dateio SDK for iOS is supported from system version 14.0.
However, technically it should be possible to use even 13.0. Older versions are not supported due to technical restrictions.
Components can be easily integrated into the UIKit framework via UIHostingControllers.
The SDK can be added into your project manually or by Cocoapods / Swift Package Manager.
Dateio does not provide public access to its repository. To integrate using CocoaPods or Swift Package Manager, you must either use your private server (repository) or create a local package.
More detailed information can be found here:
The SDK is delivered in two files (DateioSDKiOS.xcframework, DateioSDKShared.xcframework). These files have to be added to the Xcode project. Don't forget to check the box Destination: Copy items if needed.


Next step is Embed and sign the SDK framework. Go to the Targets and click on desired project target and on tab General.

Find section Frameworks, Libraries, and Embedded Content, click on the DateioSDKiOS.xcframework and choose Embed & Sign in the dropdown menu. Click on the DateioSDKShared.framework and choose Embed & Sign in the dropdown menu.

Now, the FRAMEWORK_SEARCH_PATHS in build settings have to be updated. So go to the Targets and click on desired project target and on tab Build Settings. Search for parameter FRAMEWORK_SEARCH_PATHS and add path to directory where xcframeworks are located in the project.

The SDK can now be used in the project.
Usage of SDK UI components or views is pretty easy. Just import the SDK and use the specific component.
In the UIKit framework, the SwiftUI component from the SDK is wrapped into the UIHostingController and can be used directly.
Code above will render the same view as in the SwiftUI example below.
Example of using the SDK landing screen as a standalone view in UITabBarController in storyboard:

Example of InTabController:
First, the main scene is initialized here, where the UINavigationController is passed. Then the mainScene.showInTabView() function is called to set and insert the SDK landing view into the passed UINavigationController. In order not to display the custom back button in the navigation bar, it is necessary to set the value of var dateio_navigation_back_on_hp: Bool {get} to false (within the DateioSdkNavigationBarConfiguration configuration protocol implementation).
This code will render main landing screen (ScrollView with the SDK offers and search UI. The SDK loads data from API, renders UI including details and handles actions).
By this point, you will be able to run application and navigate into screens within SDK. Yet, it won't load any data. In next chapters you will find how to resolve this and how to customize your UI.