Working around Google Features When Programming Android Apps
Because the Fire isn’t a “true” Android device (it doesn’t use the official Google Android source code but instead uses a modified version), it doesn’t have access to any of the closed-source Google services that you might already be using. In addition, the device itself may not have certain features that you’re accustomed to:
Google Maps: If you’re using the Google Maps library to bring maps to your Android application, you can’t use this library on the Fire. If you use maps, you may be able to use Amazon’s Map v2.
Google Play Store in-app purchasing: If your app uses in-app purchasing to allow users to purchase from inside it, you can’t use this same API in your Fire app. Luckily, Amazon has a version of in-app purchasing that you can use on the Fire.
GCM push notifications: If you’re using Google Cloud Messaging for push notifications, you won’t be able to use these on the Fire. Amazon has an alternative that you can use for Fire devices.
Android Lollipop: Amazon uses the version of Android source code before Lollipop was released, so the Fire has no access to any of the features in Lollipop. In particular, you’ll notice that the Fire has a unique look and feel unlike any other Android tablet.
Even without these features and services, many Android applications work on the Fire with little or no modification. If this includes your app, read on.
The Amazon App Testing Service can inspect your Android app and tell you what, if anything, needs to be updated to support the Fire OS. Learn more about the App Testing Service.