My iOS app is going to be free, but with additional functionality enabled via in app purchase. Currently beta testers are doing a great job finding bugs and I want to reward them for their hard work. I think the least I can do is give them a full version of the app so that they don't have to buy the functionality themselves. However, I'm not sure what the best way to do this is.
There do not appear to be promo codes for in app purchase so I can't just email out promo codes.
I have all the tester device UDIDs so when the app launches I could grab the device UDID and compare it to an internal list of 'approved' UDIDs. Is this what other developers do?
My concerns:
- The in app purchase content would not be tied to their iTunes account, so if beta testers move to a new device they would not be able to enable the content unless I released a new build in the app store with their new UDID. So they may have to buy it eventually anyway.
- Having an internal list leaves a hole for hackers to modify the list and add themselves to it.
What would you do?
Just ship with a plist containing the UDIDs that you want to enable the feature for and do the check at startup. You can even put an alert up once that says, "Thanks for being a beta tester blah blah." Since app binaries are signed no one can add their own UDID to the list after you ship (which deals nicely with the hacker problem).
As to users switching devices, I wouldn't worry about it. beta testing something usually doesn't imply that you get a pass forever.
Send them iTunes gift certificate for $1.30 (or whatever is your in-app purchase price + tax). The drawback for this is Apple will take its cut, and you will lose some money. The benefit is it makes it easy for them to get it linked to their account, and it allows them to spend the money on something else if they want.
Update: If you want promo codes, Apple actually allow syou to request app-specific promo codes that you can later hand off to user and they can redeem them on the App Store. Read the iTunes Connect Developer's Guide, page 133 about details on how to do that.
Unfortunately, you get a limited allotment of promo codes (50 I think). Also, I am not sure if promo codes can be used for in-app purchase. You might have to resort to offering also a separate paid app bundle for download that already includes the in-app purchase and generate promo codes for it to hand away. The drawback for this is having two separate app entries in the app store, which is somewhat bad experience for the end user.
来源:https://stackoverflow.com/questions/4892887/rewarding-ios-app-beta-testers-with-in-app-purchase