Let’s say I launched the product in January. Right now is July and I have a bunch of users who tried Trial but never actually bought the software. I want to allow them to use the Trial again (think of it as of amnesty).
Is there a way to do this remotely (i.e. not through the SDK “Reset” function call)?
I tried deleting the Trial record from the Product->Trial Activations section, but looks like this does not affect the end-user.
The function IsTrialGenuine() does not synchronize with Cryptlex servers directly. Instead, it locally checks the trial activation status on the client side. As a result, if there are any modifications made to the trial like removing the trial entirely from the server-side or extending the trial duration, these changes will not automatically be reflected in the client-side application.
To ensure that the changes get reflected on the client-side application, it is necessary to implement a mechanism to call the ActivateTrial() function. By invoking this function, the client-side application can communicate with the Cryptlex servers and obtain the most up-to-date trial status.
Can you confirm please that returning LA_TRIAL_EXPIRED from the IsTrialGenuine() call is expected even when the trial activation is removed from the server-side?
Yes, IsTrialGenuine() will return LA_TRIAL_EXPIRED even if the trial activation is removed from the server side as this function checks the trial activation info locally.