Android Ecosystem: 2008-2018

Some time in 2018 I realised the Android ecosystem had been around over 10 years and there was more stuff coming out than it was possible to keep up with. So I thought it’d be fun to draw up a high level map of most things Android developers have come into contact with, in general, since the start. Links to large-sized files are at the end… Roughly speaking as you move out from the centre you are moving forward in time, although to group some items by theme I bend the rules. The lines represent relationships, though not always direct, and the dotted boxes are things that may no longer be in active use. There are also some 3rd-party honourable mentions in there. ...

January 15, 2019

Value Objects in Java with AutoValue and Lombok

In this post I want to discuss the subject of Value Objects, their purpose and some ways of easily implementing them in Java, specifically, although not exclusively, within the context of Android development. I’ll cover a couple of popular libraries that I’ve tried, namely Project Lombok and AutoValue, how they approach the problem of making value objects easier to create and maintain, plus a few pitfalls. In computer science, a value object is a small object that represents a simple entity whose equality is not based on identity: i.e. two value objects are equal when they have the same value, not necessarily being the same object. Examples of value objects are objects representing an amount of money or a date range. ...

January 14, 2017

Are You OK? App

I’ve just published a companion site for my free app Are You OK?. The app is aimed at people wishing to regularly check the status of family or friends who may for example live alone and are vulnerable to accidents like a fall in their home, unable to call for help. Something like the reverse of a panic button system; if they don’t press a button every few hours, it sends an SMS message to selected contacts with a call to check in. ...

February 5, 2015

Fragments and Activities in Android Apps

UPDATE: 5 years later this post is pretty out of date. Some of it still holds, but it is now possible to better architect primarily “single Activity” apps, especially with the advent of the android Navigation component. For posterity the post below remains… When asking “should I use a Fragment or Activity?” it’s not always immediately obvious on how you should architect an app. My advice is try to avoid a single “god” Activity (h/t Eric Burke) that manages navigation between tens of Fragments – it may seem to give you good control over transitions, but it gets messy quickly*. ...

September 18, 2014

Registering Your Android App for File Types and Email Attachments

I’ve recently finished work on an app that registers itself as a handler for a given file extension, let’s call it “.mytype”, so if the user attempts to open a file named “file1.mytype” our app would launch and receive an Intent containing the information on the file’s location and its data can be imported. Specifically I wanted this to happen when the user opened an email attachment, as data is shared between users via email attachment for this app. ...

January 26, 2013

Seconds Pro for Android

The latest Android app I’ve been working for Runloop, the hugely successful iOS interval timer Seconds Pro, is now live. Packed with the following features: • Quickly create timers for interval training, tabata, circuit training • Save your timers, as many as you need • Organize Timers into groups • Text to speech • Install timers from the timer repository • Send your timers to your friends • Full control over every interval • Assign music to intervals or timers • Large display • The choice of personal trainers up and down the country ...

January 17, 2013

Getting Started with NFC on Android for .NET Magazine

A tutorial I wrote for .NET Magazine is now up on their site. This tutorial takes you through the basics of getting NFC working with Android 4.0+ with a “Top Trumps” like demo. It covers both reading and writing data to/from NFC tags, stickers or cards. Head over to .NET Magazine to read the tutorial!

May 11, 2012

FanChants for Android

My latest Android project is now live. This app for FanChants.com provides access to the 20,000 real football chants as sung by fans all over the world. Chants include lyrics and through an in-app-purchase chants can be set as your phone’s ringtone. View FanChants over at Google Play

March 13, 2012

Snowball Fight for iOS and Android

I’m pleased to announce a game we’ve been working on is now out. A collaboration between The Creation Agency and Bitmode (my previous home), we bring you The Great Snowball Fight! The game is played over Google Maps, launching virtual snowballs at unsuspecting players in order to rank up, earn points and even win prizes from retailers you hit. You can also add buddies, connect via Facebook and receive special powerups. ...

December 10, 2011

.NET Mag: User Interface Design for Android Apps

I recently wrote a tutorial for .NET Magazine covering styling and theming components in Android. This includes how to use resolution independent units so that your UI looks crisp across a wide range of devices and 9-patch images for smooth scaling. Here’s a link to the article.

December 10, 2011