This situation changes now and then, so I wanted to check if this is the latest information, or if someone knows better. IAP in iOS and Mac apps basically now requires the MBS plugins, is that correct? @Ryan_Hartz had a good tutorial at In-App Purchases Tutorial on iOS – Xojo Programming Blog which used iOSKit, but I don’t think the StoreKit part works anymore. Would be pleased to hear otherwise. I don’t mind buying a new MBS license, but it would only be for this single task, I don’t use the plugins anywhere else these days. I don’t mind buying them, if there’s no other solution, but I thought I’d ask around first. Xojo could really do with building this into the framework, especially with Android around the corner.
I’d appreciate if you try my classes
What should I explain?
We make plugins to make a living, so we are paid by customers like Gavin to maintain the classes and provide support. Every new customers using it and asking questions help us to make the plugin, examples and documentation better.
Of course that doesn’t stop anyone else to build their own version of such a plugin (or via declares)
@Christian_Schmitz
I meant since I use your classes how easy as an example it would make it
I know all work deservers reward so I did not mean it in anyway that hard work deservers no reward
Your post adds nothing. You might as well have said “just buy my product, don’t look for other solutions”. I already mentioned MBS, I already said it’s probably the only game in town, so what was the point in your post? All you’ve done is derail the thread again.
To tell you, that I’d appreciate you feedback on my work and I would be happy
to have you as a customer.
Sorry for getting your answer into the wrong direction.
The classes exist and we have a sample project. If you’d need more, I would be happy to add more there. Basically you can just try it, put in your product ID and a bundle identifier registered with Apple and it may show you the products for sale.
I don’t know if it works anymore.
My implementation of StoreKit, based on iOSKit, changed a few years ago when I started getting crashes in the simulator.
Nowadays I still have a few random crashes on real devices.
I decided to use MBS plugins for in-app purchases in all future app releases/updates.
Totally agree with this.
On a side note, if you start using MBS for in-app purchases, you will also get access to Google Admob, which is a great addition to monetise your apps.
For clarity, that’s because some of the iOS framework callbacks don’t always come in on the main thread, which is a no-no in Xojo.
I agree with @Jeremie_L I’ve since switched over to MBS’s classes for StoreKit. It’s easy to implement and works very well. You do also get the AdMob class with their complete plugin set, which I have in some of my apps. I don’t think they bring in nearly the revenue as Jeremie’s apps, but the ads alone are bringing in some extra cash, which is more than I can say for them just selling on their own prior to adding AdMob. I would add a +1 to getting the MBS plugins. Christian’s reply may have sounded like a “buy my plugins”, but to be honest, they do work great and I am grateful for the work he and his team has put into it
As for the post I made a few years back, yes, the use of iOSKit for StoreKit may not be the best solution at this time, but for all the walkthrough pieces you will need to do to set things up in Connect and your developer profile is still on key. I’ll try to remember to reach out to Xojo to see if they can update that post to direct to MBS as a great solution for StoreKit
HTH and good luck!
Thanks @Jeremie_L and @Ryan_Hartz, that’s what I thought.
So, in summary, if you want to distribute your Xojo app on the App Store with IAP, which is very much the norm nowadays, you cannot do this without buying an additional product, the MBS plugins. That’s not a good look for Xojo.
You should change distribute to generate revenue in that statement. You don’t need MBS to distribute a free app.
This would mean it doesn’t matter if you use MBS or anything else, these crashes would not go away, correct? I’m asking because I still use @Ryan_Hartz tutorial and have not moved to the MBS stuff and I’m wondering if that would improve the situation.
I said “…distribute your Xojo app on the App Store with IAP”.
To be fair, I’ve been distributing apps with IAP for the past 6 and a half years without the need for MBS.
But using a paid plugin makes it easier and I hope, more reliable.
Again, this is a feature that should be included out of the box from XOJO.
No. The plugin code, written in Objective C or Swift has the ability to fire the callbacks to the main thread.
Agreed. My mistake.
That’s good to know, thank you.