Search…
Integrate the User SDK
Integrate the User SDK into your application

Prerequisites

Get Started

Integrate the iOS SDK

To use User SDK in an iOS app you need to install SudoUser pod via CocoaPods.
Install CocoaPods by running the following command:
shell
1
sudo gem install cocoapods
Copied!
Initialize CocoaPods for your app project by running the following command from the project's root directory:
shell
1
pod init
Copied!
Open the created Podfile in a text editor and add SudoUser pod as a dependency to your app target.
Podfile
1
target 'YOUR-APP-NAME' do
2
use_frameworks!
3
​
4
pod 'SudoUser'
5
​
6
# other pods
7
end
Copied!
Install pod dependencies by running the following command:
shell
1
pod install --repo-update
Copied!

SDK Configuration

Before starting to use SudoUserClient you must configure it using the configuration information provided to you for your instance of the Sudo Platform. Download and install your project's SDK configuration file before proceeding.
Instantiating and initializing a client:
Swift
1
do {
2
let client: SudoUserClient = try DefaultSudoUserClient(keyNamespace: "<your-application-name>")
3
catch let error {
4
// Handle initialization error. An error might be thrown due to invalid
5
// or missing confiugration file.
6
}
Copied!
You only need one client instance for a given user per device. Instantiating multiple clients with the same configuration and using them at the same time may cause unexpected runtime errors to occur.

Integrate the Android SDK

To use User SDK in an Android app you need to add SudoUser library as a dependency to your project.
Edit the app module Gradle script (build.gradle) and add SudoUser library as a dependency.
Gradle
1
dependencies {
2
api 'com.sudoplatform:sudouser:$latest_version'
3
}
Copied!
The latest version of the SDK can be found at SDK Releases.
Edit AndroidManifest.xml to add the following app permissions:
Diff
1
<?xml version="1.0" encoding="utf-8"?>
2
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3
+ xmlns:tools="http://schemas.android.com/tools"
4
package="com.sudoplatform.sampleapp">
5
​
6
+ <uses-permission android:name="android.permission.INTERNET" />
7
+ <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
8
+ <uses-permission android:name="android.permission.WAKE_LOCK" />
9
+ <uses-permission android:name="android.permission.READ_PHONE_STATE" />
10
+ <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
11
+ <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
12
​
13
<application
14
+ tools:replace="android:allowBackup"
15
+ android:allowBackup="false"
Copied!
The Sudo Platform services enforce that the client passes SafetyNet attestation validation in order to successfully register a new user. A part of this validation is checking the attestation result is produced by an app/module that's signed by a known signing certificate. In order to pass this validation your signing certificate's fingerprint must be uploaded via the admin console.
To obtain the signing certificate's fingerprint, run the following command:
shell
1
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android | grep SHA256 | tr -d : | awk '{print($2)}' | xxd -r -p | base64
Copied!
The output of the above command and the package name of the module using SafetyNet API must be uploaded to the admin console.

SDK Configuration

Before starting to use SudoUserClient you must configure it using the configuration information provided to you for your instance of the Sudo Platform. Download and install your project's SDK configuration file before proceeding.
Instantiating and initializing a client:
Kotlin
1
val client = SudoUserClient.builder(appContext)
2
.setNamespace("<your-application-name>")
3
.build()
Copied!
You only need one client instance for a given user per device. Instantiating multiple clients with the same configuration and using them at the same time may cause unexpected runtime errors to occur.

Integrate the JS SDK

To use the Sudo User SDK in a Web or Node.js project, you must add @sudoplatform/sudo-user as a dependency to your project.
1
yarn add '@sudoplatform/sudo-user'
2
# or
3
npm install --save '@sudoplatform/sudo-user'
Copied!

SDK Configuration

Before starting to use SudoUserClient you must configure it using the configuration information provided to you for your instance of the Sudo Platform. Download and install your project's SDK configuration file before proceeding.
Instantiating and initializing a client:
TypeScript
1
import { DefaultConfigurationManager } from '@sudoplatform/sudo-common'
2
​
3
// Set configuration (content of file downloaded in previous step) in the configuration manager
4
DefaultConfigurationManager.getInstance().setConfig(configJson)
5
​
6
// Instantiate and initialize the client
7
const client = new DefaultSudoUserClient()
Copied!
Last modified 8mo ago