My first app, Shower Timer Talking, is up in Google Play. A week ago I uploaded the second public version of the app. This post describes what it has taken to get this first simple app up and running.

My app uses the following external services:

  • Google in-app billing to allow people to donate to the app.
  • Facebook and Google+ integration to allow people to use their Facebook or Google+ name and profile photo for photos in the app.

Before you start you need:

  • A desktop / laptop computer to run Android Studio on.
  • A bank account to link to Google Wallet. This is needed you can transfer money earned from in-app billing.
  • At least one Android device. It would be great to have a range of devices: screen sizes, app versions, high end – low end.
  • A Google account.
  • For Facebook integration: A Facebook account.
  • A mobile phone number.

For me, the costs involved in getting set-up were:

  • US$99/year: Domain name and hosting (nelladragon.com).  I did this through wordpress.com. You need a domain because you need your Android code to be under a package which reflects a domain you own.
  • US$50/year: Added an email address / Google Apps for the domain.
  • US$25: Register as a Google Developer.
  • AU$168/year: Cost of setting up a “business” address. An address must be published with your app if you are doing in-app purchasing or if the app is paid for.
  • AU$29: A very low end phone. I already have tablets and a high end phone.

To create a release version of the app, you need to create a release signing key / key store. It is important to back-up the release key store and back-up the password protecting the release key store. If you loose this, you won’t be able to update your app. It is helpful to have the same debug key store on all the computers you use for development.

To get Facebook integration working I needed:

  • A Facebook account with a mobile phone number associated with it.
  • A Facebook developer account: https://developers.facebook.com/docs/facebook-login
  • A Facebook Application ID. This needs to be integrated into the app. It can be obtained from the Facebook developer console.
  • A lot of persistence. The Facebook API has changed significantly with time. As such, you can’t just look at stackoverflow.com to see how things can be done, as many of the answers relate to out of date versions of the API.

Multiple screen sizes, Google integration, and using Text To Speech all needed persistence, but presented no major technical challenges.

The first time through setting up the Android Developer Console for the app took a few hours. The time from uploading the app to it being available to customers was as advertised: in the order of hours.