I Build Things

With Software and Electronics

Android Ad Detection


I was contracted to develop a system to automatically navigate Android apps and find ads within them. There was an initial system in place, but it was human-driven. My task was to improve and automate it.

I started out by using Appium and some relatively simple heuristics to move through the apps and detect ads. The ads, once detected, were fed into a database.

The logic was implemented in Scala, and hosted on AWS. The Android apps were run in AWS cloud emulators.

Additionally, I wrote a small daemon to run on the Android device, to detect rogue apps that use large amounts of CPU constantly - the main aim here was to detect cryptomining activity. This was written in C++.