Installing the Apps SDK¶
iOS¶
Prerequisites
- iOS 11 or higher
CocoaPods¶
- In case you haven't, please install CocoaPods and follow these instructions to setup you project.
-
On your Podfile, add the following line:
platform :ios, '11.0' use_frameworks! pod 'UsercentricsUI', '2.11.3'
platform :ios, '11.0' use_frameworks! pod 'Usercentrics', '2.11.3'
-
On the root directory of your project, run the following command to install the pod.
pod install
-
Open your .xcworkspace file.
- 🚀 You are ready to start the SDK integration.
Swift Package Manager (SPM)¶
From Xcode 11 and above, you can use Swift Package Manager to install our SDK.
-
On Xcode, Select File > Swift Packages > Add Package Dependency.
-
Enter the package repository URLs:
https://bitbucket.org/usercentricscode/usercentrics-spm-sdk https://bitbucket.org/usercentricscode/usercentrics-spm-ui
https://bitbucket.org/usercentricscode/usercentrics-spm-sdk
-
Select the version you would like to use. We recommend sticking to "Up to Next Major" with "2.11.3" as minor version.
- 🚀 You are ready to start the SDK integration.
Manual¶
- Download and unzip the latest version of our SDKs: UsercentricsCore and UsercentricsUI.
- Drag and drop .xcframework file to your Xcode project.
- 🚀 You are ready to start the SDK integration.
Android¶
Prerequisites
- Android 4.1 (API 16) and higher
Gradle¶
-
If not present, add Maven Central repository URL to your top-level build.gradle file:
allprojects { repositories { mavenCentral() } }
-
Add the dependency to your app's build.gradle:
dependencies { implementation "com.usercentrics.sdk:usercentrics-ui:2.11.3" }
dependencies { implementation "com.usercentrics.sdk:usercentrics:2.11.3" }
-
🚀 You are ready to start the SDK integration.
Manual¶
- Download and the latest version of our SDKs: Usercentrics Core and Usercentrics UI.
- Note that we are using other libraries that may be required to be download, the POM file is available in both links above.
- In case the dependencies are being handled manually, move all .aar and .jar files to your project, if not, upload them to your Nexus solution.
- 🚀 You are ready to start the SDK integration.
Flutter¶
Prerequisites
- Android 4.1 (API 16) or higher with Kotlin 1.7 or higher
- iOS 11 or higher
- Dart 2.12 or higher
- Flutter 1.20 or higher
To meet the prerequisites:
Android with Kotlin version lower than 1.7
If you have an incompatible Kotlin version you may see the following error when you run app on Android:
e: Incompatible classes were found in dependencies. Remove them from the classpath or use '-Xskip-metadata-version-check' to suppress errors
android/build.gradle
file. Use a recent stable Kotlin version, for example: 1.5.31
.
Android version lower than 5.0 (API 21)
If you support an Android version lower than 5.0 (API 21) and you don't have the multidex enabled in your project, you may see the following error when you run your app on Android:
D8: Cannot fit requested classes in a single dex file (# methods: 66055 > 65536)
You can change the minimum version of your application to 5.0 (API 21). That configuration is usually in the android/app/build.gradle
file. Make sure that minSdkVersion
is 21
or higher.
Although Android 5.0 version already supports 99% of all devices, if you still want to have support for Android 4.1 (API 16) you have to do the following:
-
Add the multidex library to your application dependencies that is usually in the
android/app/build.gradle
file.implementation "androidx.multidex:multidex:2.0.1"
-
Enable the option in the application build
defaultConfig
. It is usually in the sameandroid/app/build.gradle
file.multiDexEnabled true
-
Make your application class initialize multidex. There are several options to do that, in Flutter the easiest way is to add it to the manifest. The manifest is usually located at
android/app/src/main/AndroidManifest.xml
.android:name="androidx.multidex.MultiDexApplication"
iOS version lower than 11
If you have a iOS target version lower than 11 or you have no version at all (it defaults to version 9) you may see the following error when you run your app on iOS:
[!] Automatically assigning platform `iOS` with version `9.0` on target `Runner` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.
-
Define or increase the version of your Podfile at least to version 11. It is usually located at
ios/Podfile
.platform :ios, '11.0'
-
Run
flutter pub get
again and open the iOS project using Xcode. It is usually located atios/Runner.xcworkspace
. Now, you have to select theRunner
project and change theDeployment Target
to the same version.
Pub.dev¶
-
Add Usercentrics to your project via pub.dev:
flutter pub add usercentrics_sdk
-
🚀 You are ready to start the SDK integration.