As a developer, you inherently build tools to become more productive — for example, to assist in asynchronous communication, XML and JSON parsing, date and time utilities, and much more. Before you write a ton of helper classes or frameworks to handle items for you, seek out tools that already exist. This chapter lists ten tools and utilities that can simplify your development life by increasing your productivity and ensuring that your app is up to snuff.
If you’ve done other non‐Android development, you may be familiar with the concept of lint tools, which helps you find the “lint” that collects around your code. Lint helps you flag code that may technically run, but it may not be doing exactly what you think it may be doing. Android lint is a sort of warning system on steroids for Android code. To run it, go to Android Studio and choose Analyze⇒Inspect Code. To run it from the command line, use the gradle target check; for example, ./gradlew check.
Are you interested in finding out why your app is so slow? Chances are that you are, or at least you should be. Android’s Systrace tool can be instrumental to rooting out the causes of poor performance. Using it, you can get very detailed information about what your app is doing at any given time, an example of which is in Figure ...