[OT] Mac App Store (was Gatekeeper)

Andrew Henshaw henshaw at me.com
Thu May 10 05:03:28 EDT 2012


Yes,  a MAS reciept file is inserted into your apps package by the Mac App Store so you can check it is there and validate its contents.   It has a hardware signature so you can make sure your app is valid on that system and has not been copied to another system.  If everything checks out you can then treat the launch as a full registered copy and skip your trial screens.

BTW,  another 'MAS' store feature is users can install the app on as many system as they like by logging into the store on other computers and re-downloading.  Each copy gets its own reciept for each computer which will validate,  so while you cant copy an app from one computer to another,  there is no real limit to how many computers a user can install on if they want.

You might get away with the license agreement,  ive seen apps that show those first but when you submit an app you can also submit your own license agreement as a text file so it does look like the app store has its own system for that,  Ive just stuck with the standard Apple license so its not something ive done.

Andy

On 9 May 2012, at 22:50, Peter Haworth wrote:

> Thanks Andrew, that helps a lot.
> 
> Still wondering about the license agreement issue though.  Pretty sure I'd
> be rejected for that since I display it within the program the first time
> it's run.  Does the App store have its own built in mechnism for license
> agreements?
> 
> Also, pretty sure the "MAS Reciept File you refrred to" is the equivalent
> of a licensing scheme, do I have that right?
> 
> Sounds like there's light at the end of the tunnel, although I still need
> to check into the whole sandbox issue before deciding one way or the other.
> 
> Pete
> lcSQL Software <http://www.lcsql.com>
> 
> 
> 
> On Wed, May 9, 2012 at 2:37 PM, Andrew Henshaw <henshaw at me.com> wrote:
> 
>> No problem,
>> 
>> For the Mac App Store if you show a demo screen the app will be rejected.
>> If you have your own license keys,  thats another rejection.  Update
>> checks = rejection.  Basically anything on that list is checked,  and they
>> seem to be a lot more thorough than they are on the iOS store.   Ive had
>> them call me to ask a question which has never happened for an iOS app!
>> 
>> BUT,  its not all bad.
>> 
>> I just have a global/constant set in the preopenstack called
>> 'gCompileForAppStore'.
>> 
>> Any time any of the demo, trial, update checks etc etc would be shown I
>> just check this global first to make sure its not for the app store,  and
>> if it is,  they disappear.  The check for update does not appear in the
>> menu,  the auto check is disabled and all the trial and demo screens are
>> gone.
>> 
>> Then add in the checking of the 'MAS reciept file' and you are good to go.
>> You can compile and maintain your usual demo,  trial,  update checking app
>> and have that on your own website,  then switch the constant and compile a
>> full working,  no trial, demo etc version for the store.
>> 
>> The MAS store does not offer a demo or trial version,  people just buy it.
>> If they want a demo they can go to your website and try that.
>> 
>> The only real issue is updates.  When you put out a new version,  the Mac
>> store tells their customers and does the update for you (hence no need for
>> update checkers),  but as the update has to go through the review again you
>> either wait a week before you put it out directly on your own website,  or
>> you will still get customers who see an update on your site,  download it
>> then email you to ask why they are being asked for an activation code.
>> 
>> There are pros and cons,  but its another source of revenue and
>> advertising.  Compared to the iOS store,  its MUCH quieter but its catching
>> on and my guess is more and more people will want to buy through a trusted
>> source.
>> 
>> Andy
>> 
>> 
>>> -* Apps that are "beta", "demo", "trial", or "test" versions will be
>>> rejected.*
>>> My app always runs as a demo until the user buys a license for it  and
>>> announces itself as such at startup along with an indication of how many
>>> days are left in the demo.
>>> 
>>> - *Apps that require license keys or implement their own copy protection
>>> will be rejected*
>>> As above, I have a licensing scheme built in.
>>> 
>>> -* Apps that present a license screen at launch will be rejected*
>>> I do that the first time the program is run and the user has to agree to
>>> the terms or the program quits.
>>> 
>>> *- Apps may not use update mechanisms outside of the App Store*
>>> I have an update check mechanism that checks against my web site.  I
>> guess
>>> this also makes me wonder if I can provide a download directly from my
>> web
>>> site if I sell through the app store?
>>> 
>>> Pete
>>> lcSQL Software <http://www.lcsql.com>
>>> 
>>> 
>>> 
>>> On Wed, May 9, 2012 at 11:10 AM, Andrew Henshaw <henshaw at me.com> wrote:
>>> 
>>>> Yes it will,  ive had an app rejected for writing to the preferences
>>>> folder.
>>>> 
>>>> I stick with ~/Library/Application Support/<app-identifier> and just put
>>>> everything in there.
>>>> 
>>>> From June 1st there is also sandboxing to contend with for the Mac App
>>>> Store,  but I understand sandboxing and the gatekeeper are two totally
>>>> separate requirements,  If I understand correctlt the gatekeeper just
>> needs
>>>> the code to be signed and it does not need to be sandboxed.
>>>> 
>>>> If you want to submit an app to the app store however look at sandboxing
>>>> as well as that opens up another small bag of spanners!
>>>> 
>>>> 
>>>> 
>>>>> And here's me thinking the obvious place to put a prefs file would be
>>>>> ~/Library/Preferences/<app-identifier>, specially since apple have a
>>>> bunch
>>>>> of them in that location.  Silly me.  Does anyone know if putting a
>>>>> preferences file in the Preferences folder will invalidate my
>> submission
>>>> to
>>>>> the App store?
>>>>> 
>>>>> Pete
>>>>> lcSQL Software <http://www.lcsql.com>
>>>> 
>>>> 
>>>> _______________________________________________
>>>> use-livecode mailing list
>>>> use-livecode at lists.runrev.com
>>>> Please visit this url to subscribe, unsubscribe and manage your
>>>> subscription preferences:
>>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>>>> 
>>> _______________________________________________
>>> use-livecode mailing list
>>> use-livecode at lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your
>> subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
>> 
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your
>> subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode





More information about the Use-livecode mailing list