-
Fixing a misleading "duplicate class" error during kaptDebugKotlin after merging
Recently, I merged a repository’s main branch into an older feature branch, only to get a mysterious InvocationTargetException during compilation:
-
A quirk of strings.xml for multiple regions per language in Android
Recently a colleague and I worked on an issue where a displayed URL was intended for another region entirely, but all the strings were seemingly in the correct XMLs. This was… very odd, yet the eventual solution does make sense!
-
Don't revert merges! A story of a mystery pull request merge
A Friday afternoon, after work hours. You and a colleague are merging the final few pull requests before giving a build to weekend testers. (Update July 2023: GitHub has improved the behaviour for this scenario!)
-
Creating a MVVM RecyclerView grid with quick drag and drop item swapping, Room / LiveData support, and more!
As part of my current project BocaBase, I needed a grid of items that could be swapped around easily. Whilst there were a few answers on StackOverflow, most of them resulted in flickering animations, didn’t work with Room / LiveData / MVVM, or were awful to use!
-
Improving my Windows & MacOS triple monitor working from home setup
Like many others in the world, I’ve been working from home for just over a year now. I use my personal machine for Spotify / background TV during the workday, and I’ve ended up with a bizarre workflow that involves hopping between my personal Windows and work MacOS machine all day!
-
Creating the PR template that Future You wishes Past You used
How many times have you found a confusing line of code, figured out which ticket it solved, opened the relevant PR and… nothing. There’s a few approvals and it’s merged, with no explanation / discussion of what on earth is going on!
-
Associate Android app links with your subdomain using GitHub Pages & Cloudflare
As part of my APOD wallpaper rewrite, I wanted to support universal links / app links. These allow users with the app installed to click a link like apod.jakelee.co.uk/day/2020-01-01 and be taken directly to that APOD within the app!
-
Accessing an Android app secret from GitHub Actions using Gradle
Often an open source project will have API keys, auth tokens, and other secrets that definitely shouldn’t end up in source code. In my current open source project (a rewrite of APOD Wallpaper) I needed to store my APOD API key.
-
Programmatically creating and scheduling animations for Android drawable layers with ObjectAnimator
Recently I needed to perform a pretty complex animation on an image button. The button needed to move, whilst different parts of it also needed to rotate, fade in and out, and disappear!
-
Android Discord Communities: 2020 edition
Whether working on Android apps, finding new games, or having technical issues, getting real time Android support on places like Discord can be extremely helpful. In this follow-up post to my December 2018 edition, I will cover the main Android Discord communities, and how they have changed in the last 20 months.