Steps to get Mac App ready for the MAS

Hi, I’ve been reading Thomas Tempelmann’s guide from 2011 on how to get an application ready for submission to the Mac App Store. Is this still the best guide? Or is there a newer guide on what to do?

Thanks.

Things probably have changed on the Apple submission side, their website is quite fickle.

But there’s no more guesswork with signing and packaging anymore if you use AppWrapper from Ohanaware. Sam spends hours pulling out his hair, and we benefit from it. You can get your submission package in a couple clicks with AppWrapper and it’s fantastic. Totally worth the price.

I agree with Tim. Yet you have to insert the code necessary for pay-apps. That too has been taken care by our Sam: follow his instructions then drop your app into AppWrapper.

Thanks guys. I’ve got App Wrapper and hope to have a go this weekend. I’ve also retrieved the Receipt Tester demo application from Ohanaware but I’m confused by comments like:

// — Jan 23rd, 2016; This whole function needs replacing as it uses APIs which have been deprecated since 2011

in the constructor method of appStoreReceipt. Does this mean that I need to replace this? Or will Apple be OK with using deprecated APIs?

Also the whole of the method isSignedByApple is commented out with the comment:

// Jan 23rd, 2016; This function is disabled as it’s based upon code that Apple has deprectated and I couldn’t find the docs to complete the Xojo conversion.

so this method isn’t going to do anything.

So how does this help me determine if the receipt is valid or not?

That aside, I have my Apple ID and I think I have keys created in Xcode for Mac Development and for testing on my Mac, so if I take the Receipt Tester demo app, change the bundle identifier in the Open event and in the build setting, then launch App Wrapper and fill in the necessary bits in the UI, I should get an application that I can test on my Mac. Is that the theory?

Or is there more to it?

Thanks again.

Sorry. I should have read my email before posting the previous reply.

Comments from Sam Rowlands in an email discussion I was having with him directly.

[me]
// — Jan 23rd, 2016; This whole function needs replacing as it uses APIs which have been deprecated since 2011

[Sam]
Yeah, this one is going to take some serious time as Apple’s own examples haven’t been updated either to show what we should be using instead. I’ve found one guy who’s shared some code, but it’ll take time to translate it to Xojo and I really need to understand what he’s using as it’s functions I don’t recognize.

[me]
// Jan 23rd, 2016; This function is disabled as it’s based upon code that Apple has deprectated and I couldn’t find the docs to complete the Xojo conversion.

[Sam]
Verifying the receipt file was signed by Apple, is pretty much the same boat as before. None of the methods I know how to check signing work with the App Store Receipt File and as I mentioned before, Apple’s own example suggests using code that Apple then tell you not to use.

[me]
… other than change com.ohanaware.svgutilities to my bundle identifier do I have to figure out how to replace these functions?

[Sam]
Nope. Simply change the bundle Identifier and you’re good to go. Either Apple will kill the old functions and it’ll stop working, or I’ll find the time to figure out how to do this on my own, and then they’ll be updated code.

However I have a funny feeling that these functions will be around for a while as Apple have not provided any other examples using different functions, if they kill the functions I wonder how many applications would no longer work, probably 99% of them.

The nice thing with Sam is that he maintains App Wrapper current with the latest technology, so you don’t have to.

Could you please tell me, where I can find the Receipt Tester Demo App?

Thank you very much!

https://forum.xojo.com/29918-mac-app-store-entitlements/p1#p245654

Wow, that’s fast!
Thank you, Tim!