One of the more interesting items is linting. Google now lets developers lint Kotlin code in Android Studio via the IDE or command line; a simple
gradlew lint command gets the job done. The release also includes IntelliJ 2017.3.3, with new features such as Kotlin language intentions.
Developers can also edit SQL code in-line with Android Studio 3.1. It even has code completion for @Query declarations, smarter refactoring, and better navigation within projects. It’s reminiscent of Realm, a database provider that lets you edit your code from directly within XCode.
The Android Studio emulator has an interesting new feature called Quick Boot, which allows developers to resume their sessions in under six seconds. From Google:
Slow start time on the Android Emulator was a major pain point we heard from you and Quick Boot solves this issue. Like a physical Android device, the emulator must perform an initial cold boot, but subsequent starts are fast. The feature is enabled by default for all Android Virtual Devices. Additionally, in this release, you have finer grain controls of when to use Quick Boot and the ability to save the quick boot state on demand under the emulator settings page.
Profiling, first introduced in Android Studio version 3.0, now accepts C++ code. Developers can now manage CPU, memory, and network usage in Kotlin, Java, and C++. A new network thread view lets you inspect multithreaded network traffic, with the ability to trace traffic from threads.
D8 is also the default dex compiler for Android Studio moving forward. Replacing the DX compiler, Google says, “is an under the hood APK compilation step that makes your app size smaller, enables accurate step debugging, and many times leads to faster builds.” To compliment the new compiler, Google has also designed a new output window with a new tree view for errors.
Though an incremental update, Google has been making huge strides with Android Studio since its introduction. Upgrades have accelerated with the advent of Kotlin as a first-class language for Android, which compliments (and may usurp) Java.