Installation
- Add the package to your project's packages folder.
- Add the PasserelleXRClient prefab to the root of the first scene in your build settings. The Client script will call DontDestroyOnLoad on itself so it is active for the lifetime of the application.
Android
Our SDK uses a custom android library to communicate with the android layer on the device. The dependencies of this library are resolved by the gradle build system. The following text blocks should be added to a custom launcher template in your project to make builds succeed:
- Add this to the top level of the launcher template.
//needed to resolve conflics between dependencies of the Passerelle Unity SDK
configurations.all {
resolutionStrategy {
eachDependency { details ->
// Force a specific version of Kotlin standard library
if (details.requested.group == 'org.jetbrains.kotlin' && details.requested.name.startsWith('kotlin-stdlib')) {
details.useVersion '1.8.22'
details.because 'Avoid duplicate Kotlin stdlib classes from multiple versions'
}
}
}
}
- Add this under the 'dependencies' block.
//dependencies of the Passerelle Unity SDK
implementation 'com.opentok.android:opentok-android-sdk:2.28.3'
implementation 'org.eclipse.january:org.eclipse.january:2.2.2'
implementation 'org.apache.commons:commons-lang3:3.9'
implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'commons-io:commons-io:2.16.1'
implementation 'net.sourceforge.streamsupport:streamsupport-minifuture:1.7.4'
implementation 'com.fasterxml.jackson.core:jackson-core:2.13.2'
implementation 'com.fasterxml.jackson.core:jackson-databind:2.13.2'
- Add this under the 'android' block
packagingOptions {
//needed to resolve conflics between dependencies of the Passerelle Unity SDK
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/notice.txt'
exclude 'META-INF/ASL2.0'
}
AndroidX
Older unity versions may require you to explicitly enable AndroidX in a custom gradleTemplate.properties file when attempting to build. Simply add android.useAndroidX=true
to this file to resolve the issue.