I wrote a piece of software and uploaded it on versiontracker. I left it up to an honor system to pay the small $5 fee I requested. Out of over 300 downloads, I only got 3 payments. Is there a simple Apple Script I can add in to make my app (a screen saver) a 14 day demo without activation?
I’m new to all this, so any replies are very helpful. Thanks.
There are numerous ways of doing this depending on the level of sophistication you’re after.
They all involve storing some kind of indicator as to when it was first run (or when it is due to expire) and checking that when the script starts.
The issue is where to save this, and how to save it in such a way as its not obvious to the user.
The easiest way is to store a date in the app’s preferences file (or in some bundled file), but it’s trivial to circumvent, so you need more than that. You could encrypt/obfuscate the date in some manner which would make it harder, including some kind of checksum validation - e.g. always expire on a Saturday (even if that’s more than 14 days away), so if the user changes the date to a non-Saturday you know they’re trying to circumvent the date check and you can disable the app.
Of course even with this there’s nothing preventing the user from deleting the preferences/bundled file and installing a fresh copy of your app so you might want something more persistent.
Without knowing the app I don’t know how much time you want to spend on this. That said, I have seen discussions on shareware returns that indicate approximately 50% of people never run the app more than twice, and around 10% of people continue to use a shareware app past the grace period. Of those 10%, only 10% actually pay, so on that basis you 3 payers out of 300 downloads is right on track. There are different theories on how to improve on that, with ‘improve the value of your product’ being the most prevalent that I’ve seen, but you also need to look at potential market size. You’re not going to sell a million widget-making apps if there are only 50 people in the country that make widgets.