Playing with Meta Avatars SDK again, and now I'm working on Windows, having given up getting anywhere on Mac 😕 I have everything set up and working fine: I can hit play in the editor and it connects with my Quest 2 via Air Link; I can connect via USB and deploy builds onto the device. So I created a new project to try out avatars again.
The project is correctly set up, but when I launch the Mirror scene in the editor I get a default avatar that doesn't respond to controller movement, and an error in the console (see below) saying the entitlement check failed. After many hours of searching for solutions I was someone posted that it was necessary to deploy the app to their device at least once before this would work, so I tried that (I hadn't built to the device for this test project yet).
When the app launched on the headset everything worked correctly. That tells me I have the correct app ID configured in the correct places and that the project is generally set up correctly (all I really did was import the required packages / follow the project setup directions / create a new app on App Lab and configure the app ID in my project, then load the Mirror scene).
So given that the Mirror scene works as expected when I build to the device, why do I get this error when running in the editor?
Using Windows 11 Home (was using Windows 10 Home when this started), device info and full error log below:
ADB Device ID: 1WMHHA65YY1471
Firmware Build ID: user-22310100587300000
Firmware Build Date: Sun Jan 23 08:40:08 PST 2022
[ovrAvatar2 examplePlatformInit] Failed entitlement check: 1 - Missing entitlement for 7489835124367778 (1971031)
Oculus.Avatar2.OvrAvatarLog:Log (Oculus.Avatar2.OvrAvatarLog/ELogLevel,string,string,UnityEngine.Object) (at Assets/Oculus/Avatar2/Scripts/OvrAvatarLog.cs:101)
Oculus.Avatar2.OvrAvatarLog:LogError (string,string,UnityEngine.Object) (at Assets/Oculus/Avatar2/Scripts/OvrAvatarLog.cs:159)
OvrPlatformInit:<InitializeOvrPlatform>g__CheckEntitlement|5_1 (Oculus.Platform.Message) (at Assets/Oculus/Avatar2/Example/Common/Scripts/OvrPlatformInit.cs:59)
Oculus.Platform.Request:HandleMessage (Oculus.Platform.Message) (at Assets/Oculus/Platform/Scripts/Request.cs:113)
Oculus.Platform.Callback:HandleMessage (Oculus.Platform.Message) (at Assets/Oculus/Platform/Scripts/Callback.cs:162)
Oculus.Platform.Callback:RunCallbacks () (at Assets/Oculus/Platform/Scripts/Callback.cs:61)
Oculus.Platform.Request:RunCallbacks (uint) (at Assets/Oculus/Platform/Scripts/Request.cs:130)
Oculus.Platform.CallbackRunner:Update () (at Assets/Oculus/Platform/Scripts/CallbackRunner.cs:28)
So I've not been able to make any progress on this. I've verified that I'm logged in with the correct account on both the Quest and the Oculus App; I've tried putting my credentials in as a test user in Oculus > Platform > Settings in the Unity editor, but they aren't accepted there so that didn't work (although I do get a different error with test user enabled).
Setting a breakpoint where the entitlement error is logged, I see no additional information on the error or the message it's delivered in. The OvrAvatarManager in the scene has logging set to debug, but there are no debug logs in the console. I can find no other way of getting more information on why this is failing.
I'm at a loss. Any suggestions / solutions would be very much appreciated.