6 ms·
How Apple badly messed up with in-app purchases on Lion and didn’t tell anyone
- sambeau 15y agoI can't stand apps that appear free but require an in-app purchase to work fully. It feels really dishonest to me. Yuck.
- mchanson 15y agoI'm not sure what is dishonest unless the product mis-represents itself. Crippleware was big in the shareware scene all through the late 80s and 90s and still works today. Perhaps Apple could allow a new category, but it is an honest model.
- younata 15y agoproblem is that crippleware was, and still is, universally hated. The only areas where it succeeds is where there is no other real competition.
- delackner 15y agoYou obviously didn't grow up in the shareware gaming days. All the old Apogee classics (Wolfenstein, Commander Keen, etc) were 1 episode teasers that required you to pay to play the remainder of the game.
- younata 15y agoThat would explain the downvotes, thank you.
- jemfinch 15y agoAnd Doom, and Quake, and Quake3, and Unreal Tournament...
- sambeau 15y agoI have to say that they (or more rightly Doom) were a revelation at the time: cripple-ware that wasn't crippled. Most cripple-ware wouldn't give you a fully-functioning product: save didn't work, print had "UNREGISTERED" (or worse) emblazoned over it. Having a great, polished level for free and the opportunity of buying more isn't my idea of crippleware. There is no feeling of being cheated and no "if only".
- BlueMourning 15y agoIt is a model which allows people to try before they buy, which also expands the audience and allows the game to spread. It is a good thing when implemented well.
- r00fus 15y agoIt would easily be sufficed with a "free app" and "paid app". Apple just doesn't make this seamless. Consequently, the "freemium" model is born through in-app "upgrades". As someone who hasn't bought a single in-app purchase (I might if Carcasonne add expansions), are these transferrable across devices like the apps are?
- evgen 15y agoYes, iOS in-app purchases are transferrable across devices that are linked to the same app store account. It is a somewhat strange experience when you do it the first time because you are basically expected to "buy" the item on the additional device and then at the last moment the system determines that you already paid for it and provides it for free -- I had visions of getting a bill for multiple in-app purchases of the same item but in the end it all worked out.
- grayprog 15y agoFor this reason (and for clean installs) there's an option in the API for "restore purchases". Applications should provide this option in addition to "buy". Another benefit of it is that it restores all in-app purchases for this app. Very helpful in case the application provides more than one purchase product.
- sneak 15y ago> Applications should provide this option in addition to "buy". I recall reading that this is a hard requirement for apps that offer in-app purchases.
- masklinn 15y ago
- timeuser 15y agoIt's really the only way to do a trial of any kind in Apple's app stores. It's better than a lot of apps in the App Store where you have to pay in full for it without being able to try it at all, including Apple's.
- AndyJPartridge 15y agoIt's more about defeating dishonesty actually. You can download full version of apps for free very easily with a Jailbroken phone. As a developer, by using in-app purchase you have a very good chance of defeating that loophole.
- AndyJPartridge 15y ago(I guess I should clarify that this is an analogy, and that the same applies for desktop software. Dial home = one extra layer against piracy if someone pirated the app.)
- pixelcloud 15y agoThere is an inapp purchase cracker on cydia now... Most apps dont actually check to make sure you purchased the content.
- kennywinker 15y agoMost iOS apps use a standard set of system calls to check if the item has been purchased. I assume the hack works by patching the systems calls to return YES to all queries about in-app purchase items. That's how I would do it if I was building something like that. There are no tokens or keys to validate... it's just "hey system, is this paid for? okay!"
- stottc 15y agoThere's an option to do server-side receipt validation. That should prevent a hack like that.
- reitzensteinm 15y agoAlso, checking for the purchase status of an item that can't be bought would be a cheap and easy place to start. Easy to get around with a custom crack, but it should actually be pretty effective against a blanket 'just return yes' crack.
- sambeau 15y agoIt's been fun watching this comment's points go up and down like a yoyo. At one point it was at -1; it's currently at 10. This is clearly an issue that divide HN readers. I obviously fall in the against camp — though I can see the argument for it (and many good points have been made). There is no simple answer other than very clear labelling.
- achompas 15y agoDidn't shareware work like this back in the day? Or are these apps selling themselves as "free!!!!!" and hiding the "(extra features cost $$)" in small, hypothetical print?
- psychotik 15y agoI experienced something similar with the iOS in-app purchases but I did avoid damage like bad reviews, etc. Details here: http://crazyviraj.blogspot.com/2011/08/dont-let-apples-latency-mess-with-your.html http://crazyviraj.blogspot.com/2011/08/dont-let-apples-laten...
- cmatthias 15y agoMy honest opinion is that the only solution here is to pack up and leave Apple's closed ecosystem, because they clearly don't care about their developers. If you are continuing to do business with them you are sending them a message that it's OK to continue to do this. If it's a Mac app, sell it on your own website; if it's an iOS app, rewrite it for Android and sell it there.
- veyron 15y agoeasier said than done. How do you distribute apps to people outside the app store?
- w1ntermute 15y agoThe same way you did before there was an app store - through your website. As for Android, you can sell APKs through your site that people can sideload onto their phones.
- cmatthias 15y agoYes, exactly, either you don't make apps for their platform anymore (in the case of iOS) or you distribute them through your website, just like before the app store existed. Or, you could make a webapp. Apple has been treating their developers like crap ever since the app store opened, and the only way to change it is to vote with your wallet (or more accurately in this case, your development time). Otherwise, you are part of the problem.
- veyron 15y agoI thought the terms of service were changed so that you can't sell directly ... How does it work? Do you just send ipa files that the user is expected to import into itunes?
- kennywinker 15y agoYes, but jailbreak is required.
- subpixel 15y agoSlightly OT: I notice that your apps are for sale both in the App Store and through your own site. I'd be interested in hearing about your experience maintaining your own sales/fulfillment channel while also taking advantage of Apple's. What advice would you give other developers? Thanks
- grayprog 15y agoNot sure I'd advise to those starting out today, except for the following cases: 1. You consider enterprise or other large sales, which are not comfortable through Mac App Store. 2. You want to participate in bundles or other promotions. Technically, you don't need a store for this but you need to create a version which can be licensed outside of Mac App Store. Personally, I started selling ImageFramer (my first Mac application) in 2006, so we first had our own store and Mac App Store came second.
- hitonagashi 15y agoI hit this with Pixelmator...I actually assumed it was their fault, and just uninstalled it and reinstalled it again, after which it worked fine. I'm on Snow Leopard still though, so might not just be a Lion problem.
- grayprog 15y agoIn-app purchases don't existing in Snow Leopard. I think it was some other issue.
- joely 15y agoYou could have tested your in-app-purchase, yourself, and minimized the damage. #2020hindsight
- blahedo 15y agoIt didn't fail for all users, just some users.
- grayprog 15y agoIf you think we developers don't test in-app purchases before releasing, think again. It's one the most critical parts of user's experience and certainly this is not a place where we'll just write code and ship without testing. The problem is that it didn't happen for all transactions and appeared to work for some users but not for other. Sometimes it worked for some user on one machine but not on another. And another developer who hit it with his app in testing didn't understand it was Apple's issue. He created another test-user Apple ID and it worked then so he supposed it was kind of a glitch related to his use of the previous test Apple ID. Really, the last thing you'd think is that Apple has bugs in the payment system.
- Jyaif 15y agoAlso, it should be known that in the SDK terms of use, Apple warns that it's a bad idea to tell the press when there's a problem, so developers are actually afraid of publicly complaining about Apple...
- Arkid 15y agoExactly the way Google treats customers when it messes up. Google, Apple and all these big silicon valley companies suck at customer service.
- innes 15y agoI remember Google having reported various problems with their app store in the past, so the accusation is not valid, at least with respect to what we're discussing here.
- alimbada 15y agoExpecting anything more than this from Apple is deluding yourself. If they can't get fixes out for security holes until they're in imminent danger of being in the spotlight (Pwn2Own - and that's only one example; Apple are especially notorious for only fixing things when it affects their public image), then expecting them to fix issues like this is extremely naive.