Over the past year, with the percentage of Americans who own tablets rising from 10% to 19%, and those who own some form of e-reader rising from 18% to 29%, developers who wish to remain relevant need to figure out a strategy for tablet application development—and need to do so quickly. A Pew Research Center survey released in January cited these “striking statistics,” which it attributed to cheaper prices and the holiday season.
So what does this mean for you? If you’re ready to carve out your Nook in the market, or light your development shop on Fire, you need a few best practices to get started.
Ameesh Paleja, director for Amazon Appstore for Android, offers up 10 tips for developers jumping into Kindle Fire development:
1. Review the resources available in the Amazon Appstore for Android Developer Portal. A lot of helpful information, including a Kindle Fire FAQ to assist developers in building and updating apps to be compatible with Kindle Fire, can be found there. The Amazon Appstore Developer Blog is another good resource.
2. Design for the specific size and resolution of the device. Kindle Fire has a 7-inch screen with a resolution of 1024×600 and an abstracted LCD density of 169. Your manifest should specify support for large screens, and your app should occupy the full screen and render properly.
3. Adjust for the soft key bar. Please note that the device will reserve 20px of height to display a soft key menu, yielding a height of 1004px when in full-screen portrait mode and 580px when in full-screen landscape mode. Some apps have encountered problems when rendering text or text boxes for user input, or when user interactions or necessary text appear at the bottom of the screen and may be obscured.
4. Adjust for the quick-settings buttons. When the soft key bar is maximized at the bottom of the screen, Kindle Fire will also display the quick settings buttons at the top of the screen. We have noticed that some apps will force-close when any of the quick-settings buttons are used from within the app. Please ensure your app handles “on pause” and “on resume” activities properly.
5. Design for the hardware requirements of the device. Your app should not require a gyroscope, camera, WAN module, Bluetooth, microphone, GPS or micro-SD to function. In cases where your app would otherwise support these features, we find it best to inform users that the feature is not supported rather than taking the user out of your application.
6. Design for the OS requirements of the device. Kindle Fire is an Android 2.3.4 (Gingerbread) device that does not use Google Mobile Services (GMS). If your app currently requires access to GMS apps or services, we recommend that you either remove the features that require these services or modify them to degrade gracefully when invoked (e.g. with an error message such as, “This feature is not currently available on this device”).
7. Minimize the permissions declared to only those required by your app. Unnecessary permissions called in your manifest may cause your app to be incompatible with Kindle Fire. We recommend that you remove any unneeded or unused permissions.
8. Develop apps that take advantage of the full capabilities of the device or enhance its usability. Kindle Fire does not support the use of wallpapers or themes, and applications in that category are not available to Kindle Fire users. Categories that have been very popular with Kindle Fire customers are Games and Utilities.
9. Do not add a reference to Kindle Fire to your app’s title. You may have noticed that some apps have “Kindle Fire Edition” in their titles. That reference is added by our content team when necessary. All apps are tested on Kindle Fire as part of the testing process.
10. Test your app on Kindle Fire. We strongly recommend you test your app on your own prior to submitting to ensure it delivers the best-possible user experience on the device. We will also test and provide you with feedback, but issues found at this stage could delay the availability of your app to Kindle Fire customers.