Android deployment: Best advice you can get

I am posting this to save you the headache. For all of you who are right now diligently coding your way through the final weeks of deployment, make sure you take into account what I am about to tell you. Probably you already know this, and I’m not really sure if Google detailed this information in the Android Developers website (I didn’t really see it in their deployment checklist), but here we go.

Most of us (Helldorado Team included) have not written code from scratch, but rather, have based our codebase on an existing template taken from the internet, etc. This is true when you want to get a code skeleton for a specific purpose, for instance, an OpenGL rendering framework or something similar. With this in mind, sometimes we have the bad habit of not changing the package name of the application we based our code on, and this in turn comes to haunt us during the actual deployment process.

Therefore, make sure the package name of your android application DOES NOT contain the following strings: “google” or “android“. If the package name of your application contains any of the previous strings, Google Play will not let you deploy your application. We ran into this issue with Condor Wars (the app’s package name was com.android.CondorWars), and when we tried to deploy the app at 4am in the morning, we realized, tired and frustrated, that we had to make a quick code change before deployment.

Quick code changes before production deployment, even if their effect seems to be benign at best, are the worst things you can do in the final minutes before actual deployment. We renamed the package name to com.helldoradoteam.CondorWars and resumed the deployment process. Google Play accepted our deployment package as we celebrated the release of our first game.

Later on we realized we hadn’t changed all references to our old package name in the code, which caused the game to crash in various places. We released a patch to version 1.1 in order to fix the package name issue.

The lessons learned here is to have the correct package name of your application from the very early stages of the SDLC cycle. Fix things now to avoid headaches from last minute changes later.

Leave a Reply

Your email address will not be published. Required fields are marked *