Deleting & re-loading to get around Trial Mode

Is there anything preventing a user from deleting and re-loading an app to circumvent use duration limitations imposed by a trial version of an app ?

I don't intend to use the "Trial Mode" that shows up in the documentation, but the problem is the same no matter how you implement it.

If you want the user to be able to try out the app for a day, or a week, or a month before buying.... is there a way to accomplish that ?

My understanding is that all stored data relating to the app is removed from the device when the app is removed, so the app doesn't seem to have any way to detect re-loads, or to find data that might have been stored indicating that the trial period had expired.

Thoughts ?

Thanks

  • A related question...

    What actually happens after the approval process ?

    Does the user download a different version of the app that has some internal flag changed so that the new version indicates at runtime that it is not a trial version ?

  • Jim, I think PayPal could still be used, but to your point the developer has to build a webservice to handle the interfacing between the Garmin Trial system and the payment/account validation system needed to make it work.  It is not as simple as using a donation link.  Based on what I built to track trials and registrations for my radar widget, I could probably expand it a little to utilize the trial apps features, but what I developed works without it so why add another point which can break things.

  • What actually happens after the approval process ?

    Does the user download a different version of the app that has some internal flag changed so that the new version indicates at runtime that it is not a trial version ?

    the docs mentions that you query an isTrial() method. So I would assume the internal flag gets switched after payment. I'm not sure how the flag is switched, options could be that a new download is sent to your watch, another option could be that the app store communicates the info through to the watch in some other way. But basically I don't really know, for these questions you would be best of by talking to Garmin....

  • You could send an email with your specific questions to [email protected].  I remember at one point with trial apps, Garmin was working 1-1 with developers before opening it up more.  So an email may be a good way to get some of those questions answered where you can go into more detail on what your plans are.

  • Jim, I think PayPal could still be used, but to your point the developer has to build a webservice to handle the interfacing between the Garmin Trial system and the payment/account validation system needed to make it work.  It is not as simple as using a donation link. 

    yes I think you're completely correct. From what I deduce I see the process as follows: user clicks unlock, Garmin store calls the unlockurl, you do the payment processing through any payment tool (paypal included), if payment succesful you call the callbackurl. 

  • Thanks to both of you.

    Do you know if there are Garmin support people or developers who respond in these discussions ?

  • That email goes to the ConnectIQ team.  It is likely to be answered by the same people to provide official support in the forum, i.e. the uses whos forum names ends in .connectiq, but they can easily escalate to the developers as needed.

  • I'm in exactly the same predicament. Don't have the knowledge to build a webservice that can service the requests. Does anyone know of any that can ? 

  • Just wondering if there was ever any progress on this ?

    I've managed to implement the Trial authorisation process with my WooCommerce back end and all is working well enough. What I'm still struggling to understand is exactly what Jeff posted about. Assuming you implement a trial time period using getTrialDaysRemaining() or similar with relevant data stored in Properties, what is stopping a user from removing the app, reinstalling and therefore resetting the data in properties ?

    Surely we don't need to interface with an external webservice to record and track the Unique ID and check for reuse to enable a time trial ?

    Thoughts ?

    Thanks