Forum Discussion
Leon-VR-Lab
6 months agoProtege
Shared Mode - storing app data across sessions
We’re working on integrating a new license system for our VR training app and were hoping to get insights on two related issues we’re facing — particularly in the context of Meta for Work (MHMS). ...
GATORSAURU5
5 months agoMeta Employee
Hello there!
Based on the info here, it sounds like you may be able to achieve the license validation with an entitlement check or server-side subscription validation rather than sending and reading an encrypted license file. I linked the documentation for entitlement checks and server APIs for managing subscriptions below so you can see if one of those might be what you're looking for.
https://developers.meta.com/horizon/documentation/unity/ps-entitlement-check/ https://developers.meta.com/horizon/documentation/unity/ps-subscriptions-s2s/
The key difference between the two is that entitlement checks can be done offline and only need to happen once to validate that the app is an official copy, while server-side subscription checks will need to connect to a server to validate that a subscription is still active. If you're looking to validate a license for a subscription, the second may be your best bet.
Let me know if this doesn't fit your use case and I can continue helping you find a solution.
-GATORSAURU5
- Leon-VR-Lab5 months agoProtege
Implementing with an online server-side check is indeed or default method. However we need to cache data locally on the device for when the device is online (instructors using our app on-site may not be able to connect the device to Wifi all the time). And that data gets wiped with Shared Mode, session restarts.
Thanks for your suggestions but they would apply to Meta Store distributed apps, but store apps are not available for MHMS Shared Mode.
- GATORSAURU55 months agoMeta Employee
Unfortunately, there isn't currently a way to cache the license check on a device. This is because for licensed apps, the user's device will need to connect with the server on launch to confirm the license is still active. If the app were to cache a check on the device and the user's license expired, for instance, the user would continue to have access to the app until the cache cleared and the app connected to the server again.
- Leon-VR-Lab5 months agoProtege
Not exactly. What we would normally do (and what works well with Individual Mode and on other headsets) is to check-out a signed and encrypted license file from the license server (i.e. that's our server, or more specifically, a third-party license server, not Meta specific). This license file includes an expiration date so we can still check validity of the license while offline. Every time the device is online when the license check takes place it will check-out a new version of the license file.
The real issue is in the wiping of the data with Shared Mode session restarts.
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 2 years ago
- 10 months ago
- 11 months ago