(OLD) Advanced Device
NeuroID offers an Advanced Device Library that will collect additional signals for usage. The Advanced Device Library has been integrated into our core library (starting with iOS SDK 3.4.2, Android SDK 3.5.2 and React Native SDK 3.4.1.
iOS Installation
1. Installing the SDK
For SDK versions less than 3.4.2:
In your project Podfile
where you have pod "NeuroID"
, on the following line add pod "NeuroID/AdvancedDevice"
and re-run pod install
target 'Your App Name' do
pod 'NeuroID'
pod 'NeuroID/AdvancedDevice'
end
For SDK versions 3.4.2 or greater:
Follow the normal iOS SDK instructions here. After installation is complete, return here to continue to step 2 "Using AdvancedDevice Tracking".
2. Using the AdvancedDevice Tracking
In order to use the AdvanceDevice SDK in your iOS app please follow the setup instructions of the NeuroID iOS SDK with ONE exception.
3.1.0+
Locate your NeuroID.startSession("yourSessionID")
command and replace it with NeuroID.startSession("yourSessionID", true)
or NeuroID.startSession(nil, true)
. Passing a true
parameter indicates you would like to enable AdvancedDevice tracking
let startedResult = NeuroID.startSession("yourSessionID", true)
print("NeuroID started \(startedResult.started) with session ID \(startedResult.sessionID)")
<3.1.0
Locate your NeuroID.start()
command and replace it with NeuroID.start(true)
. Passing a true
parameter indicates you would like to enable AdvancedDevice tracking
NeuroID.start(true)
Android Installation
1. Installing the SDK
For SDK versions less than 3.5.2:
- Specify the repositories from where the dependencies are going to be resolved. They could be added either in your app-level
build.gradle
:
// Use this block ONLY for Gradle versions 7 or higher
android {
...
repositories {
...
maven { url 'https://maven.fpregistry.io/releases' }
maven { url 'https://jitpack.io' }
}
}
// Use this block ONLY if Gradle version is lower than 7.
allprojects {
repositories {
...
maven { url 'https://maven.fpregistry.io/releases' }
maven { url 'https://jitpack.io' }
}}
or in your project level settings.gradle
:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
maven { url 'https://maven.fpregistry.io/releases' }
maven { url 'https://jitpack.io' }
}
}
- Add the dependency to your
build.gradle
file. To see available versions, please visit [Released Versions] and choose v3.0.5 or higher.
dependencies {
implementation 'com.github.Neuro-ID:neuroid-android-sdk:android-advanced-device-sdk:vX.X.X'
}
When using the NeuroID Android SDK .aar files locally, the FPJS library has to added explicitly.
- Add the additional dependency to your
build.gradle
file.
dependencies {
implementation "com.fingerprint.android:pro:2.5.0"{
exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib'
}
}
Add the following ProGuard rule in your Proguard file (required for mimifyEnabled true releases).
-keep class com.neuroid.** { *; } -keep class retrofit2.** { *; } -keep class com.google.gson.** { *; }-keep class com.neuroid.** { *; }
For SDK version 3.5.2. or greater:
Follow the normal Android SDK instructions here. After installation is complete, return here to continue to step 2 "Using AdvancedDevice Tracking".
2. Using AdvancedDevice Tracking
1. Import NeuroID start()method that will enable the Advanced Device Signal capabilities
import com.neuroid.tracker.extensions.startSession // 3.1.0+
import com.neuroid.tracker.extensions.start // <3.1.0
2. Replace the NeuroID.start Command
In order to use the AdvanceDevice SDK in your Android app please follow the setup instructions of the NeuroID Android SDK with ONE exception.
3.1.0+
Locate your NeuroID.getInstance()?.startSession("yourSessionID")
command and replace it with NeuroID.getInstance()?.startSession("yourSessionID", true)
or NeuroID.getInstance()?.startSession(nil, true)
. Passing a true
parameter indicates you would like to enable AdvancedDevice tracking
var startedResult = NeuroID.getInstance()?.startSession("yourSessionID", true);
log.d("NeuroID","NeuroID started ${startedResult.started} with session ID ${startedResult.sessionID}");
<3.1.0
Locate your NeuroID.getInstance()?.start()
command and replace it with NeuroID.getInstance()?.start(true)
. Passing a true
parameter indicates you would like to enable AdvancedDevice tracking
NeuroID.getInstance()?.start(true)
Troubleshooting Tips
If build conflicts arise due to Kotlin versioning on the dependency then add the exclude option in the implementation.
dependencies {
implementation "com.fingerprint.android:pro:2.3.2"{
exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib'
}
}
React-Native Installation
1. Installing the SDK
v3.4.1+
Install the regular NeuroID React-Native SDK. The 3.4.1 version of the SDK includes the Advanced Device features found in the previously seperate NeuroID React-Native AdvanceDevice SDK. Link to the npm is here.
- Installing via npm
npm i neuroid-reactnative-sdk
OR - Adding
"neuroid-reactnative-sdk":"X.X.X"
to yourpackage.json
file and then runningyarn
/npm install
You will then need to run pod install
in the iOS
folder of your project.
Follow the configuration instructions here to initialize the SDK.
up to v3.4.0
Instead of installing the regular NeuroID React-Native SDK, please install ONLY the NeuroID React-Native AdvanceDevice SDK by either
- Installing via npm
npm i neuroid-reactnative-sdk-advanced-device
OR - Adding
"neuroid-reactnative-sdk-advanced-device":"X.X.X"
to yourpackage.json
file and then runningyarn
/npm install
You will then need to run pod install
in the iOS
folder of your project.
2. Update The Android Project
To use the AdvanceDevice SDK you will need to update the app-level build.gradle inside the Android Project of your React-Native App in two spots.
- The repositories section
- The dependencies section
// Use this block ONLY for Gradle versions 7 or higher
android {
...
repositories {
...
maven { url 'https://maven.fpregistry.io/releases' }
maven { url 'https://jitpack.io' }
}
}
...
dependencies {
implementation ("com.fingerprint.android:pro:2.5.0") {
exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib'
}
}
You will also need to add this line to your ProGuard file if you are obfuscating any variant of the app (debug, release, etc.).
-keep class com.neuroid.** { *; }
3. Using AdvancedDevice Tracking
In order to use the AdvanceDevice SDK in your React-Native app please follow the setup instructions of the NeuroID React-Native SDK with TWO exceptions.
- Update all your
import NeuroID from 'neuroid-reactnative-sdk'
to beimport NeuroID from 'neuroid-reactnative-sdk-advanced-device';
- Update the start method appropriately (see 3.10 and <3.1.0 instructions below)
3.1.0+
Locate your NeuroID.startSession("yourSessionID")
command and replace it with NeuroID.startSession("yourSessionID", true)
or NeuroID.startSession(nil, true)
. Passing a true
parameter indicates you would like to enable AdvancedDevice tracking
var startedResult = await NeuroID.startSession("yourSessionID", true);
log(`NeuroID","NeuroID started ${startedResult.started} with session ID ${startedResult.sessionID}`);
<3.1.0
Locate your NeuroID.getInstance()?.start()
command and replace it with NeuroID.getInstance()?.start(true)
. Passing a true
parameter indicates you would like to enable AdvancedDevice tracking
await NeuroID.start(true);
Updated 4 months ago