Implementing In App purchases in Android?-ThrowExceptions

Exception or error:

Edit: Android now supports in-app billing!

Original question:

It looks like Android won’t natively support in-app purchases for a while, and when it does there might be a huge user base with devices that don’t support them.

What’s the best way to implement iPhone-like (additional content or services) in-app purchases in Android using the Android Market if possible?

The solution should consider in particular:

  • For all kinds of in-app purchases: Android Market’s 24-hour cancellation policy
  • For consumables/non-consumables: storage of additional content (ie: use precious application memory to avoid piracy, or use SD card to avoid bloating application memory)


How to solve:

This has changed as of today! There is now an example on the Android Developer site here:


You can create a premium key application, that will have a key. How you expose that it’s your deal ( or you can just check if PremiumKey activity exist ). From the main app you just check for your key and if it’s exist enable premium option )
If you’re talking about buying OTHER apps from yours – build your list with market url pointed to the other apps ( market:// )


It is against the Android Market Developer Distribution Agreement to take in-app payment:

3.3 … All fees received by Developers for Products distributed via the Market must be processed by the Market’s Payment Processor.


Looks like Paypal has launched a library for accepting in-app payments. See here. Not sure if this system violates the T&C though.


You say that Android Market doesn’t support in-app purchases, and then ask how you can implement in-app purchases using Android Market?(!)

Anyway, if and when they do support it, I imagine it could be distributed as an update to the Android Market application itself, so most users would be able to use the functionality. I believe the Market app updates itself automatically.

Possibly the Market would accept an Intent to trigger a payment via the usual on-device mechanism and return your app (or more likely your server) a callback.


There is also another in-app payment platform for Android applications called MoVend ( I have checked it out and there are several benefits using it compared to the other 2 mentioned earlier:

Many payment channels : Operator Billing for more than 38 countries, PayPal and virtual credits.

Many distribution channels: They work with developers to distribute their applications through the various distribution channels like Operator AppStores , OEMs and Android applications website. Marketing is something we all need. They are also invested by Singapore Telecommunications who has a strong presence in South East Asia.

They provide a sales analytics for you to track, trace and monitor the performance of your apps. Since they are available worldwide, you can always tailor your applications to the different geography area.

I am trying to build Android applications and monetizing is important.

Reply this thread so we can discuss how we can monetize our Android applications.


Here’s another free licensing and payments system. The nice thing about this one is that it allows you to offer your app in any app store.

You can find more details @


Check out, they are doing something like this. Not sure if it violates terms or not, but I will probably check it out.


For implementing in-app purchases in Air applications you may use third-party libs (Adobe AIR does not support In App Purchases for any platforms out of the box). For example, developed by Milkman Games (unfortunately, they are not free)

Leave a Reply

Your email address will not be published. Required fields are marked *