Muselee is a demo app which allows the user to browse popular music artists. It is not intended to be a fully-featured user app, but a vehicle to explore good app architecture, how to implement current best-practice, and explore how the two often go hand in hand. Moreover it will be used to explore how…
Category: Build
JUnit 5: Nested Tests
JUnit 5 was formally released in July 2016 and is quite a major evolution to JUnit 4 which has been the standard unit testing framework since Android first appeared on the scene. There are some quite significant changes and getting things set up, and then getting the best out of JUnit 5 can require a…
JUnit 5: Getting Started
JUnit 5 was formally released in July 2016 and is quite a major evolution to JUnit 4 which has been the standard unit testing framework since Android first appeared on the scene. There are some quite significant changes and getting things set up, and then getting the best out of JUnit 5 can require a…
Package Name vs. Application ID
All Android developers should understand that the Package Name that we choose for our app is very important. I’m referring to the Package Name of the application itself (which gets declared in the Manifest) rather than the Java package name (although often they will be identical. It was only recently, when I was tackling a…
Gradle Revisited
Back in May 2013 Google announced at IO that they were working on a completely new IDE based upon IntelliJ IDEA which would be based upon the Gradle build system. At the end of June in the same year I began a series of posts which ended up as a series of 9 posts (the…
Match Timer – Part 6
Previously in this series we’ve built a Wear app designed to time football matches. While we finished the coding in the last article, there is still another important thing to do if we want to distribute our app via Google Play, and that’s package it up! In this concluding article of this series we’ll look…
Gradle Build – Part 9
In the previous article we defined a simple build task, but it was of limited use because it could only be invoked as a standalone task. In this article we’ll see how we can attach it to the build lifecycle.
Gradle Build – Part 8
Previously in this series we’ve looked at various aspects of the new Android Gradle build system. But what happens if the Android tools do not quite do what we require? In this article we’ll have a look at how we can extend and customise the Gradle build process.
Gradle Build – Part 7
Previously in this series we’ve looked at various aspects of the Android Gradle build some of which are features of Gradle itself, but others which are specific to the Android build toolchain that has been developed on top of that. In this article we’re going to look at a feature that most definitely falls into…
Gradle Build – Part 6
Previously in this series we’ve looked at various aspects of the Android Gradle build system and how we can adapt things in various ways. But what about if we want to convert our existing projects to use the Gradle build system? In this article we’ll do precisely that.