Introducing Dev Tiles — Quick Settings Tiles for Android Developers

I just wrapped up a side-project which is firmly in the "scratching-my-own-itch" category and figured why not share it with the community.

While building Android apps, there are several developer options that I frequently use like enable/disable USB debugging, toggling Demo Mode, etc. However, navigating into the Developer Options menu in the Settings app and finding the option I need in that long list (which OEMs feel compelled to re-order) is irritating.

Inspired by Nick Butcher's Animator Duration Tile, I figured it'd be nice if there are tiles for other developer options that are commonly used so I ended up building them myself. Here's the app in action —

You can download it from the Google Play Store. As of v1.0.0, it provides the following tiles —

Toggle USB debugging

Keep screen on when connected to a computer, but let it turn off when connected to a wall charger

Toggle show taps

Toggle demo mode

The Tile API, introduced in Android 7.0, makes it quite easy to create tiles that live in the Quick Settings panel. There are lots of posts that cover how to use it in detail, so I won't repeat the same information here. However, at a high-level, you just have to create a Service that extends android.service.quicksettings.TileService and override it's methods to handle user clicks and update the tile UI.

For the curious, the app is open source and you can check out the code on Github.