PluginKit SDK Tutorials

List

Setting Up the Build Environment

  • Make sure Android Studio is installed.
  • Make sure to use Android API Level 25 or later.
  • Download and import the VIVE Wave™ PluginKit with VIVE Wave™ repository.
  • Add the required libraries in the build.gradle module. If creating a 64-bit build, check How to support 64-bit VR Device and 64 bit Support Limitation
apply from: "$projectDir/build_sdk.gradle"

buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.0'
        classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.50'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven {
            // assign your wavevr local respository
            url "your_SDK_local_path/repo"
        }
    }
}

Note

  • After Download Wave SDK, repository with wvr_pluginkit located at your_SDK_local_path/repo.

Also add the dependency with module build.gradle:

dependencies {
    api 'com.htc.vr:wvr_pluginkit:+'
}

Note

  • If using a VIVE Wave SDK version older than 3.2.0, you need wvr_pluginkit.aar to compile your project.
  • After Download Wave SDK, wvr_pluginkit.aar located at your_SDK_local_path/libs. See below:
apply from: "$projectDir/build_sdk.gradle"

repositories {
    flatDir{
        dirs 'libs'
    }
}
dependencies {
    compile 'com.htc.vr.aar:wvr_pluginkit.aar'
}

Selecting the Device

If there are several HMDs and controllers installed on your device at the same time, you need to select the HMD and controller that will be used by the VIVE Wave™ Settings AP.

Declaring VR DeviceServices

  1. Write the AndroidManifest.xml

To know what configurations should be set in AndroidManifest.xml, see Configure Device Capabilities.

  1. Implement : VRDeviceService
  2. Implement : VRDevice

Pluginkit SDK Samples

Wave VR provides a sample DeviceService in SDK/samples/wvr_simple_deviceservice. wvr_simple_deviceservice includes the HMD, controller, and external tracker.

External device properties for HMD

The pluginkit can acquire a set of specific device properties from the HMD device service. Refer to HMD external device propeties for more details.