💡 ArborXR's device SDK facilitates communication between the ArborXR client app and processes running on the same device. Native applications can integrate directly with our ISdkService.aidl
interface. Unity applications integrate our SdkBehaviour
class (see “Example Unity Script” below).
Setup
If you are using Unity 2019.x or lower
In your custom gradle templates, you will need set the
classpath
ofcom.android.tools.build:gradle
to at least3.6.0
Download the Unity Package here
Adding package to a Unity project
While in a Unity Project, open
Window
>Package Manager
From the add package button
+
(top left), selectadd package from disk
Navigate to and select the
package.json
file, and open
API Definition
getDeviceId()
Return Type: string
Description: UUID assigned to device by ArborXR
getDeviceTitle()
Return Type: string
Description: Title given to device by admin through the ArborXR Web Portal
getDeviceSerial()
Return Type: string
Description: Serial assigned to device by OEM
getDeviceTags()
Return Type: string array
Description: Tags added to device by admin through the ArborXR Web Portal
getOrgId()
Return Type: string
Description: The UUID of the organization where the device is assigned. Organizations are created in the ArborXR Web Portal.
getOrgTitle()
Return Type: string
Description: Name assigned to organization by admin through the ArborXR Web Portal
getOrgSlug()
Return Type: string
Description: Identifier generated by ArborXR when admin assigns title to organization
getMacAddressFixed()
Return Type: string
Description: physical MAC address assigned to device by OEM
getMacAddressRandom()
Return Type: string
Description: randomized MAC address for the current WiFi connection
getIsAuthenticated()
Return Type: boolean
Description: whether the device is SSO authenticated
getAccessToken()
Return Type: string
Description: the SSO access token
getRefreshToken()
Return Type: string
Description: the SSO refresh token
getExpiresDateUtc()
Return Type: datetime
Description: when the SSO access token expires in UTC time
Example Unity Script
using XRDM.SDK.External.Unity;
public sealed class ExampleScript : SdkBehaviour
{
protected override void OnEnable()
{
base.OnEnable();
base.Connect(new SampleCallback());
}
private sealed class SampleCallback : IConnectionCallback
{
public void OnConnected(ISdkService service)
{
var deviceId = service.GetDeviceId();
}
public void OnDisconnected(bool isRetrying) { }
}
}