locked
[W8.1]Creating a trial app with a feature that expires after being used twice

    Question

  • I want to add a feature to my app that user can avail only twice or thrice in the trial mode. I am unable to figure out which purchase mode should I implement.

    I successfully implemented the in-app-purchase for making the feature available for lifetime. But how should I go about limiting its usage if the user has not bought it?

    According to the sample code I am following I have these options:

    Expiring Product: This allows me to expire the feature after certain period of time but I need to expire the product after number of usage.

    InAppPurchase: I can purchase feature through this but I cannot limit the feature in trial mode.

    ConsumableInAppPurchase: Again it requires the user to buy the feature first and then it can be consumed.

    I figured that if I can save an int in local settings of app the first time app is used and then decrement it until its 0, and then prompt the user to buy, it will do the job. But if I use this method user can always delete the settings file and my app wouldn't know that it is not being used the first time. 

    Can anybody tell me how I can achieve my requirement?

    Thanks

    Thursday, April 30, 2015 8:59 PM

All replies

  • You cannot achieve this with the built-in trial mode.  It is based entirely on the time limit you choose when publishing the app.  After the time limit is up, the app will stop functioning.

    To do what you want to do, you will have to write your own code.  One of my apps, a word processor for example, lets the user use the app with full features for 7 days.  After 7 days, instead of stop opening, it simply goes into read-only mode until the user buys it.  The advantage of doing it this way instead of making the app non-functioning forever after 7 days is the user will always have the opportunity to see what's new in my future updates.  I don't want to lose potential customers!  Nothing the user can do to reset the 7 days trial. They can uninstall and reinstall as many times as they want.  They can delete the settings file all they want.  My method doesn't require the app to check over the internet.  I'm sure if you think hard enough you will figure out a way like I did.  I'm just letting you know that there is a way and it is possible.  I just don't want this method to be known too widely.

    Friday, May 01, 2015 2:17 AM
  • You cannot achieve this with the built-in trial mode.  It is based entirely on the time limit you choose when publishing the app.  After the time limit is up, the app will stop functioning.

    To do what you want to do, you will have to write your own code.  One of my apps, a word processor for example, lets the user use the app with full features for 7 days.  After 7 days, instead of stop opening, it simply goes into read-only mode until the user buys it.  The advantage of doing it this way instead of making the app non-functioning forever after 7 days is the user will always have the opportunity to see what's new in my future updates.  I don't want to lose potential customers!  Nothing the user can do to reset the 7 days trial. They can uninstall and reinstall as many times as they want.  They can delete the settings file all they want.  My method doesn't require the app to check over the internet.  I'm sure if you think hard enough you will figure out a way like I did.  I'm just letting you know that there is a way and it is possible.  I just don't want this method to be known too widely.

    Are you saying your method is different from the 'Expiring Product' option I mentioned? To me it sounds the same as that
    Friday, May 01, 2015 3:53 AM
  • What I'm saying is the built in trial mode for windows 8 app makes the app completely non-functional once the trial expires.  In order to achieve what you want, which is full functionality either for a time or for a number of app opening before going into limited mode, you will have to write your own code for it. 

    I'm just telling you that it is possible to achieve this.  Took me a time but eventually I figured out how.  I'm assuming you do not want your app to keep track of the specific user and cross check with a record stored online somewhere.  This would be another option. 

    The point is there's a way because I've effectively achieved this.  I don't want to just say it out loud because I don't want my method to be widely known.  Just keep thinking about it and you'll figure out how to do this.

    Friday, May 01, 2015 4:15 AM
  • What I'm saying is the built in trial mode for windows 8 app makes the app completely non-functional once the trial expires.  In order to achieve what you want, which is full functionality either for a time or for a number of app opening before going into limited mode, you will have to write your own code for it. 

    I'm just telling you that it is possible to achieve this.  Took me a time but eventually I figured out how.  I'm assuming you do not want your app to keep track of the specific user and cross check with a record stored online somewhere.  This would be another option. 

    The point is there's a way because I've effectively achieved this.  I don't want to just say it out loud because I don't want my method to be widely known.  Just keep thinking about it and you'll figure out how to do this.

    Yeah I think I know what code you are referring to! Thanks though :)
    Friday, May 01, 2015 4:24 AM