Friday, February 7, 2014

Porting a Google Play app to the Amazon Store

Recently I worked on a project to port and Android app, created for Google Play, to the Amazon app store. It was a simple two-screen app that loaded text from a local database. It included ads (banner and interstitial), in-app purchase for removing the ads and push notifications.

First I uploaded the app to Amazon's app testing service. The only problem the testing service found was the In-App billing API. The suggestion was to use Amazon's In-App purchasing API.

Implementing the Amazon In-App purchasing API was pretty straightforward. Compared to Google's In-App billing API there is one more product type, Entitlement. It's used for something you buy once and own it, like the Remove Ads product for the app I was working on. The other main difference is when working with Amazon you have to worry about users. There can be multiple users using a single device and you have to take care of what products they own. There is a method callback with the current user ID.

The In-App purchasing library should not be added in the libs folder. It should be added in the Java Build Path as an external jar as the documentation suggest. To be continued....