Michael Ritter, Vice President Licensing & Distribution at Social Gaming Network, is our guest blogger for this post. SGN connects people around the world through great games, including Skies of Glory, Fluff Friend Rescue, Warp Rush, Bird's the Word, and Night of the Living Dead Defense.
We decided to participate in the Amazon Appstore In-App Purchasing beta program because Amazon is a ubiquitous and trusted ecommerce platform with disruptive devices, so we felt it was a perfect storm of opportunity. Amazon's in-app purchasing solution created a great way for us to reduce friction and drive more revenue from our games, as tens of millions of people already have made purchases with Amazon. Specifically, the Kindle Fire’s integrated storefront and marketplace work seamlessly and help drive mobile game distribution. Through in-app purchases we are able to add additional content to our games, which help deepen the player’s experience and increase their enjoyment.
With our games we have tried a mix of revenue models, including paid, paid with in-app purchase, and free with in-app purchases. Our strategy largely depends on the type of game and expected game play behavior. In our Amazon games, the model revolves around the use of in-app purchases of virtual goods, although we are starting to experiment with ad-based games whereby users will have the ability to purchase the option to disable ads. We feel the freemium strategy coupled with in-app purchases provides the greatest ability to delivery quality games to a large audience, while also providing free content for casual players and the ability to upgrade for those players looking for a richer experience.
From the consumer’s point of view, Amazon has done an exceptional job creating a natural and seamless purchasing process that allow users to easily make a purchase and continue playing the game. From a developer’s point of view, we found Amazon’s technical support team to be exceptional. They were attentive, helpful and very responsive to supporting and walking us through the installation process.
Overall, I’d say that offering IAP in your games/apps is a great way to drive revenue as well as provide enhanced content for users to enjoy. The Amazon Appstore SDK and In-App Purchasing APIs are well worth installing, whether your game is paid or free.
If you are ready to submit your app to the Amazon Appstore for Android, you might consider obfuscating your code. Obfuscating your code modifies your source and machine code to be difficult for a human to understand if your app gets decompiled. If you are concerned about your app being reverse engineered, using a tool to obfuscate your code can help a great deal.
Not all of your source can be obfuscated, however. If you are implementing In-App Purchasing for your app, the Amazon Appstore relies on certain methods being available to call and provide you with information about a purchase request. If these methods get obfuscated and renamed, the Appstore will not be able to send information to your app. This post is a brief walkthrough on adding code obfuscation to your project.
For android apps, Proguard is a code obfuscation tool that is provided to you once you download the Android SDK. The program shrinks and obfuscates your source code.
This walkthrough assumes you have the Android SDK and Amazon In-App Purchasing API installed and your project already completed.
For help on installing the Android SDK, please refer to their website at http://www.developer.android.com/sdk/installing.html. Download the Amazon In-App Purchasing API by going to http://developer.amazon.com/
To enable Proguard for your Android app, refer to the following documentation from the Android SDK: http://developer.android.com/guide/developing/tools/proguard.html
Edit the build.properties file inside of your project, and add the following line (if you don’t have this file in your project directory, make one):
proguard.config = <relative or absolute path to proguard.cfg file> |
When incorporating the in-app framework into your library, you will need to specify classes to ‘keep’ and not obfuscate. Add the following lines anywhere in your proguard.cfg file.
-dontwarn com.amazon.** -keep class com.amazon.** {*;} -keepattributes *Annotation* -dontoptimize |
Now that you’ve fully set up your proguard.cfg and build.properties file, you can run Proguard through the ant build script for your project.
If you are using another program for code obfuscation, to ensure that in-app functionality is preserved, make sure your program does not obfuscate any class under the com.amazon.* namespace, including method names and identifiers. Your obfuscation program must also preserve annotations.
The code in this article serves as a walkthrough for enabling and using Proguard for release candidates of your app. Sample apps that include the code from this article are provided in the In-App Purchasing API. Again, you can download the SDK by logging into http://developer.amazon.com/
G5 Entertainment participated in Amazon Appstore for Android’s in-app purchasing (IAP) beta program because they had successfully launched over 100 games with in-app purchasing on other devices. Larissa McCleary, Director of Marketing at G5 Entertainment writes, “We found that by offering a product with IAP, rather than a traditional "lite" or "full" set of offerings, our conversion rates went up as did our revenue on a per title basis. Although our experience on Amazon has always been great, we are thrilled now that IAP is available. This will allow us to continue our business model, but also to allow other developers to partake as well. Eventually, if more and more developers participate, we think we will experience even higher conversion rates, since players will be more familiar with what IAP is and how it functions, making the play experience even more engaging.”
G5 Entertainment takes the approach that if the game is interesting, customers will be more engaged. The maker of popular games such as Virtual City Playground and Mahjong Artifacts, McCleary tells us, “Our basic strategy has been to make the games as fun as possible. We are working hard to optimize and improve our features on an on-going basis.” How do they decide what will be fun for players? Playing the games themselves, focus testing, and team brainstorms have all led to added content. However, McCleary notes, “In the end we decided that we should let players decide what they want, by giving them as many in-app options as possible.”
The G5 team reported that overall, the integration was quick and simple. McCleary says, “The code was ready in one day, and metadata was entered quickly too.” Comparing their experience to past integrations, the Amazon Appstore compared favorably. “It’s definitely easier to integrate the Amazon IAP APIs than other IAP solutions we have implemented,” notes McCleary.
During the beta program, G5 found their main hiccup in the testing process. G5’s QA team provided feedback that helped the Amazon Appstore improve the testing process by introducing the SDK Tester. The SDK Tester allows a developer to validate common path and edge case scenarios in their app, all without uploading or configuring anything in the Amazon Developer Portal. This approach reduces the friction a developer faces when testing their apps, and allows for rapid testing across any device that supports the Amazon Appstore. Still, the IAP API was well worth integrating for G5, and the G5 team recommends “reading the documents available on Amazon’s Developer Portal and keeping your code simple.”
About G5 Entertainment AB
G5 Entertainment AB is a developer and publisher of high quality downloadable games. G5 started as the leading mobile game development studio working for Electronic Arts and Disney. In 2009 G5 changed the business model to become a publisher of original games developed by G5 and over 30 partner studios in Eastern and Western Europe and the U.S. G5 owns a number of successful game franchises, including Virtual City Playground and Mahjongg Artifacts.
Announcing the availability of our Amazon Appstore for Android SDK and In-App Purchasing API to our developer community. The In-App Purchasing API enables you to offer digital content and subscriptions--such as in-game currency, expansion packs, upgrades, and magazine issues--for purchase within apps.
We created the In-App Purchasing API to make it easy for you to increase customer engagement and monetize your apps on Kindle Fire and other Android devices. With the Amazon Appstore for Android In-App Purchasing solution, you can reach customers with existing accounts who have already bought apps, including millions of Kindle Fire customers. Our simple, secure, and trusted 1-Click purchase experience is easy for customers to use, increasing conversion rates for purchases within your app. Plus, we designed our in-app purchasing (IAP) solution to be simple and easy to integrate so you can be up and running quickly.
It’s easy to get started from the Amazon Appstore Developer Portal, where you'll find documentation, sample code, tutorials, frequently asked questions, and more. In the coming weeks, we’ll also be featuring strategies and tips from in-app purchasing beta program partners, such as Glu Mobile, G5 Entertainment, Storm8, and New York Post, here on our developer blog. You can also learn more about our IAP solution from our Introduction to IAP video.
What do our beta program partners say about IAP on the Amazon Appstore for Android?
“Storm8 coordinated closely with Amazon’s team during the initial launch of its IAP beta test, and within two months of integration, we saw revenue grow by tenfold from our game,” said Perry Tam, CEO and co-founder at Storm8, producer of games such as Restaurant Story, Bakery Story, Farm Story, and Fashion Story. “We immediately brought over additional Storm8 games, and in two weeks, not only did our revenue continue to grow, but we had four of the top five free apps in the Amazon Appstore. With the tremendous initial success, we definitely plan on continuing to invest in the platform and can't wait to bring additional Storm8/TeamLava games to Kindle Fire and Amazon users.”
“Amazon's in-app purchasing solution created a great way for us to reduce friction and drive more revenue from our games, as millions of people already have Amazon accounts,” said Michael Ritter, senior vice president Licensing & Distribution at Social Gaming Network, maker of Warp Rush, Dress Up! Fashion, Bird's the Word, and Night of the Living Dead Defense. “Kindle Fire already has a well-integrated storefront and marketplace to distribute mobile games. By enabling in-app purchases we are able to be more flexible in pricing. We can release free games, provide updates, and enhancements, and continue to monetize.”
“We found that by offering a product with IAP, rather than other monetization types, our conversion rates went up as did our revenue on a per title basis,” said Larissa McCleary, director of marketing at G5 Entertainment, Inc., creator of Virtual City Playground and Mahjong Artifacts. “Although our experience on Amazon has always been great, we are thrilled now that IAP is available. This will allow us to continue our business model, but also to allow other developers to partake as well. Eventually, if more and more developers participate, we think we will experience even higher conversion rates, since players will be more familiar with what IAP is and how it functions, making the play experience even more engaging.”
We look forward to seeing how you integrate the API into your apps!
April 06, 2012
lisamar
If you missed Kindle Fire and Your App(s) Part I and Part II, be sure to check them out!
How do you get a high-resolution icon for your app to display on Kindle Fire?
The icons on Kindle Fire are dynamically pulled from the Amazon Appstore for Android. Side-loaded apps cannot use this feature. Once you've submitted your app, and it's live in the Amazon Appstore, your app's appropriate icon will automatically be displayed.
You set up an emulator per the specifications in the Kindle Fire FAQ but the screen is being recognized as an x-large screen instead of a large screen, and loading assets accordingly. How do you fix this?
The default Android emulator mis-identifies the screen size as x-large instead of large with the standard emulator configuration. To override the configuration, complete the following on your activity onCreate method (before loading layouts or anything else):
final Configuration config = new Configuration(context.getResources().getConfiguration()); config.screenLayout = (config.screenLayout & Configuration.SCREENLAYOUT_LONG_MASK) + Configuration.SCREENLAYOUT_SIZE_LARGE; context.getResources().updateConfiguration(context.getResources().getConfiguration(), context.getResources().getDisplayMetrics());
Taking this action will ensure the emulator configuration properly uses the large screen size and loads the appropriate assets.
How do you keep the soft key menu on Kindle Fire visible at all times, instead of partially hidden?
To keep the menu bar present at all times, remove any code in the activities that enables full screen mode. The soft key bar at the bottom will then be visible at all times. Sample code to remove:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
How do you connect Kindle Fire to Android Debug Bridge (ADB)?
To connect Kindle Fire to your Android Debug Bridge (ADB), follow the instructions in this PDF. Kindle Fire has USB debugging enabled by default.
Your app requires access to Google Mobile Services. Will it work on Kindle Fire?
Apps that run on Kindle Fire do not currently have access to 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.").
Your app is optimized for the Motorola Xoom (Honeycomb 3.0-based Android). Will it work on Kindle Fire?
In general, apps optimized for a tablet experience will work on Kindle Fire. To increase the probability that your app will be compatible with Kindle Fire, you should only use APIs that are backwards compatible with Gingerbread (Android 2.3 OS).
What are the dimensions of the status bar (time, battery, signal strength, etc.) on Kindle Fire?
The status bar is 40 pixels in height.
How can you promote your app to Kindle Fire users?
We encourage you to promote your app's availability on Kindle Fire and in the Amazon Appstore for Android using Amazon-approved marketing assets. Developer Portal account holders can find Amazon approved marketing assets and brand, trademark and marketing guidelines here:
Amazon Appstore for Android Trademark Usage, Brand, and Marketing Guidelines
How do you get your app marketed on Kindle Fire?
All apps in the Amazon Appstore for Android are discoverable by millions of Amazon customers. Amazon's automated and targeted marketing and merchandising algorithms provide a unique and personalized shopping experience for every Amazon customer.
The Free App of the Day is our premier promotion in the Amazon Appstore for Android. Each day, the app we select is featured in some of the most visible placements in the Amazon Appstore. These placements and the exposure they provide drive significant traffic to the featured apps and allow the developers to quickly grow their installed base. In fact, it is common for apps to be downloaded more than 150,000 times on the day they are featured in the Free App of the Day. That volume of new users can not only generate great word-of-mouth publicity for your app, but can also provide a compelling opportunity for you to monetize your apps downstream through features like in-app purchasing and advertising.
If you'd like to submit your app for inclusion in the Free App of the Day program, please complete this form.
On the occasion of our first birthday, we’d like to take this opportunity to thank our developer community. It’s been a busy year here at the Amazon Appstore for Android. Our store has grown tremendously since launching one year ago, and we could not have made it happen without partners like you. In our first year, customers have already bought millions of apps and games for their Kindle Fire and other Android devices. The Amazon Appstore has also grown its selection nearly eight-fold since launch, from 4,000 apps to over 31,000.
During our first year, we introduced Kindle Fire. Since launch, Kindle Fire has helped our developer community connect their apps with engaged customers. "At Quickoffice, we've experienced a massive lift in our Android app sales since the launch of Kindle Fire. The Amazon Appstore has been a great showcase for our app, and we've seen significant gains in conversion rates compared to other app stores based on the integrated Amazon buying experience," said Alan Masarek, CEO of Quickoffice, Inc.
Over the past year, we’ve been listening to your feedback, and we’re working on enhancing our tools and resources to meet your needs. We created blog posts to help your apps fly through testing, to help you message customers within your apps, and to help you develop for Kindle Fire. Over the last year, we released enhancements to our Developer Portal, including updated developer reports, and new user permissions functionally. And, we have more upgrades in the works for our second year of operations. We hope to support you with tools that allow you to continue delighting customers with your apps and games. In the coming weeks and months, check back here on our developer blog—we’ll be posting information on enhancements.
We know many of our developers are Amazon customers as well. To celebrate our first birthday, we worked with several of our developers to offer special discounts on some of our most popular apps. The Amazon Appstore Birthday event will get extra customer visibility from a dedicated Amazon Appstore Birthday page that will display new deals daily as well as more of customers’ favorite apps. The Amazon Appstore also kicks off its Amazon Appstore for Android Birthday Giveaway and will award a Kindle Fire to eight lucky winners who enter the sweepstakes by March 31st.
Thank you for your partnership! We look forward to collaborating with you to bring customers great apps for another year!
A few months ago, Amazon introduced Kindle Fire and, here on the blog, we talked about how you can get your app(s) onto Kindle Fire. We endeavor to provide our developers with useful, relevant information to help you develop your app(s) and we continue to get queries about developing for Kindle Fire. We have more information to share!
Your app requires an SD card—does Kindle Fire have one?
Kindle Fire has an internal SD card that your app can write to. Kindle Fire's SD card is internal and is not removable. You should not have to change your app for Kindle Fire if it currently stores data on the SD card. Using getExternalStorageDirectory() will enable you to write to the internal SD card on Kindle Fire.
Your app uses Adobe Air—will it work on Kindle Fire?
Yes, Adobe Air 2.7.1.1999 is pre-installed on Kindle Fire. If you wish to create and publish Adobe AIR 3 applications, you may do so by packaging them as 'captive runtime' apps. Note that captive runtime apps will not support on-device debugging.
Your app needs the support of an e-mail client—is that a feature of Kindle Fire?
Kindle Fire has a pre-installed e-mail client that will respond to both mailto links and e-mail intents.
How do you configure the supports-screens element for compatibility with Kindle Fire?
To ensure your app is compatible with Kindle Fire, specify <supports-screen android:largeScreens="true"/> in your manifest file.
Your app has audio—what audio playback does Kindle Fire support?
Kindle Fire supports the following audio formats natively:
You plan to upgrade your app to Android v4.x (Ice Cream Sandwich)—will your upgraded app work on Kindle Fire?
To increase the probability that your app will be compatible with Kindle Fire, you should only use Android 4.x APIs that are backwards compatible with Android 2.3 Gingerbread.
Your app has lots features—what specific features does Kindle Fire support?
Kindle Fire supports the features in the following list. To ensure your app is compatible with Kindle Fire, it should only use features found in this list.
Note: Effective 08-26-2015 Free App of the Day (FAD) has been replaced with Amazon Underground.
Fire Maple Games is a mobile app developer located in Garnet Valley, PA. Their adventure game app, The Secret of Grisly Manor, continues to be a best-selling title since the launch of the Amazon Appstore for Android in March 2011. The sharp graphics and engaging storyline of this hidden object game continue to amass downloads and excellent reviews.
Fire Maple Games has taken advantage of many Amazon Appstore offerings including the Free App of the Day promotion. The Free App of the Day program has offered customers a paid app, for free, every day since the launch of the store. Additional, Fire Maple Games capitalized on app placement throughout the store and targeted e-mail campaigns. They also optimized their application for the Kindle Fire. By leveraging the Amazon Appstore platform, downloads of The Secret of Grisly Manor have seen significant gains on a weekly basis.
Initially engaged by the Free App of the Day promotion out of pure curiosity—what does and does not work when selling apps?—Fire Maple Games was pleased with the level of exposure they got from participating. “It was a fantastic increase of our user base,” said Joe Kauffman, owner of Fire Maple Games. “It wasn’t directly profitable, of course, as we were giving the game away for free, but now many more people have been exposed to the company and our games.” Kauffman has gotten many e-mails from people saying they would definitely buy the company’s next game. “For an indie developer on a limited budget, it was a great way to get the game into lots of people's hands,” he added.
Fire Maple Games joined the Amazon Appstore in November 2010 and was part of the Amazon Appstore launch four months later. “Amazon is such a great brand with such a powerful presence…we had high hopes for the Amazon Appstore for Android,” Kauffman said. They were also intrigued by the approval process and liked “that the apps would be curated, so a nicer selection of apps could be promoted.”
Fire Maple Games recently added a second adventure game, The Lost City, to their Amazon Appstore catalog, and the app has been getting stellar reviews. With the traction Fire Maple Games has seen thus far, new titles are sure to be a hit. “We use previous games to cross-sell new games,” Kauffman explained. “It seems to be working pretty well…both games have stayed within the Top 25!”
Kauffman revealed that the company hasn’t gotten any specific emails from customers regarding their experience with the Amazon Appstore and that that is a good thing: “It means that the process is pretty seamless. I recommend that everyone partner with Amazon! It is a nice, curated app-store with a great customer experience.”
Interested in learning more about selling your apps on Amazon.com and Kindle Fire? Aaron Rubenson, director of the Amazon Appstore for Android, will offer insight at CES into how developers can get in front of millions of Amazon customers – and make money – when they sell their apps at Amazon.com.
Learn about submitting apps for Kindle Fire, which topped Amazon.com’s “Best of 2011” list as the best-selling, most wished for, and most gifted product as determined by Amazon.com customers. Throughout December, customers purchased well over 1 million Kindle devices per week. Also on the agenda is information about programs such as in-app purchasing and Test Drive, which lets customers try an app on their computers before they buy.
Rubenson and other Amazon Appstore representatives will be available for informal discussions after the presentation.
Who: Aaron Rubenson, Director, Amazon Appstore for Android
What: “Selling Apps on Amazon.com and Kindle Fire”
Where: The Venetian Meeting Rooms, Veronese 2404
When: Friday, January 13, 9 a.m. – no R.S.V.P. needed