v.
Introduction
If you’re creating a consumer Android app, you’ll need to publish it to the Google Play store. When Android first came out, publishing an app was a fairly simple process. As the platform has matured, however, extra required steps have been added to the publishing process. To successfully publish your app, you’ll need to know how to navigate this process.
Furthermore, there are many app publishing tools and techniques that can make the difference between a successful app release and one that has issues. While Android developers of all experience levels will find the information in this book useful, there are two groups that will benefit the most from this book:
- New Android developers.
- Experienced Android developers that have not worked on consumer apps or who haven’t been directly involved in the app release process.
How to read this book
This book is divided into four sections. If you’re new to the consumer release process, reading the book in a linear fashion might be the best approach. On the other hand, if you’re more experienced or need a reference for a looming deadline, you can choose to skip around and use each chapter as a standalone tutorial.
This book is split into four main sections:
Section I: App Store Quick Start
You need some fundamental knowledge to publish an app to the app store. For example, you need to know the nuts and bolts of building and publishing the app along with some key concepts surrounding test tracks — including beta and alpha releases — and release strategies. Taken together, these concepts are what we like to call minimal viable product, or MVP, for publishing an app to the app store.
Section II: Security & Optimization
A secure and streamlined app can be the difference between a successful release and one with problems. This section will show you the various steps of developing apps that are secure, reasonably sized and optimized. The topics you’ll cover in this section include app permissions, obfuscation and steps for hardening your app’s security.
Dynamically deploying features allows you to do limited testing. Depending on the technique you use, it can also be a great way to reduce the app’s size by only loading the features each user needs. You’ll learn about that in Chapter 8, “Adding Features Dynamically”.
You might also want to create a white label version of your app or build flavors for testing. Chapter 9, “Build Variants: Implementing Build Types,” covers all of that to guide you through the process of creating build variants and flavors.
Section III: Automation — Continuous Integration & Delivery
Manually building and releasing your app is time-consuming and error-prone. Chapter 11, “Automation Tools for Your Local Environment” guides you through tools and steps to help automate the process.
It’s also important to have reliable builds that can build on multiple machines — and that means constantly integrating code so releases don’t become a big, error-prone merging event. Chapter 12, “Continuous Integration & Build Servers” shows you some tips and tricks to get CI set up for your project.
Section IV: Beyond Publication
In an ideal world, you could release an app and, without doing anything, have it be wildly successful and generate money while you relax in the tropics. However, in the real world, an app is a living thing that needs continuous care and feeding.
App ratings can make or break an app’s success in the store. Chapter 13, “Getting Top Ratings & Avoiding Negative Reviews”, talks about techniques for cultivating good reviews and addressing negative ones.
Finally, it’s important that the app doesn’t only perform well upon release, but in the future as well. Chapter 14, “Monitoring & Improving App Performance”, will show you how to make sure that your app is continuing to delight users over its lifespan.