Three Handy Tools for Android Development

Ryan Samarajeewa
The Startup
Published in
3 min readSep 4, 2020
Photo by Abby Anaday on Unsplash

I kicked off my journey as an Android developer about a year ago, and I have been introduced to several programs that has helped me along the way. These are three of my favourites!

Charles Proxy

What is this? I’ll let its website explain it:

Charles is an HTTP proxy / HTTP monitor / Reverse Proxy that enables a developer to view all of the HTTP and SSL / HTTPS traffic between their machine and the Internet. This includes requests, responses and the HTTP headers (which contain the cookies and caching information).

If you are at all familiar with mobile development, you will likely see how this is useful. If your app interacts with a REST API, you can debug each of your outgoing requests and incoming responses. Charles will snoop your app’s network communication and output every detail of your request including the URL, method, headers, or request body as well as the raw JSON data returned from the server. This is the single source of truth of your app’s network communication and it makes network debugging a breeze. It’s also a great way to prove to your back-end developer that a bug is their fault by sending them the a raw curl command of your network request 😏:

scrcpy

Are you tired of Vysor and its annoying ads and its blurry screen mirroring? Say hello to scrcpy. This easy-to-install, lightweight and speedy application uses your Android device’s already established USB connection to mirror its screen on your desktop. It is open source, completely ad-free and does not require any root access. Interacting with your real device through this mirrored display is an emulator-like experience as it has very little response delay. The image quality has a high frame rate and is very crispy:

Shout-out to Jacob Kwitkoski for introducing this to me!

uiautomatorviewer

If you are familiar with front-end web development, you can appreciate the convenience of the Inspector in your modern browser which lets you explore your HTML code as you hover over elements on a page. uiautomatorviewer brings the same convenience to the Android world. This tool lets you take UI XML snapshots of what you are currently vieweing on your device. This is of course an alternative to Android Studio’s built-in Layout Inspector, but I have personally found this tool to be faster, simpler, and more reliable.

To access the tool, navigate to

\Android\Sdk\tools\bin

Run the uiautomatorviewer binary and tap on this icon:

If you have an Android device connected via USB, the tool will take an XML snapshot of the current view and provide you with a view element tree:

If you are working on an Android app, be sure to try out these tools to make your life easier! Happy coding!

--

--

Ryan Samarajeewa
The Startup

I’m into mobile apps, clean code, and R&B. I live in BC!