On average, 1 out of every 2 professionals from the global software development community works on the mobile platform. According to a recent Evans Data report, the total number of Android developers worldwide will reach ~7 million by the end of 2020. Interestingly, the percentage of mobile app developers who prefer to work on the Android platform first is nearly double of the developers with ‘iOS-first’ strategy. This week, the first preview of Android Studio 3.0 – the latest version of the native integrated development environment (IDE) for the Android platform – was released (at the ongoing Google I/O 2017). In what follows, we will go through some of the key new features in Android Studio 3.0:
In the upcoming version of Android Studio (v.3.0 has been released on the canary channel), the ‘Android Monitor’ window has made way for the interestingly designed ‘Android Profiler’ window. The new window has been built to provide developers with insightful, unified views of all relevant data related to their applications. The ‘Android Profiler’ has three separate timelines – ‘CPU Profiler’, ‘Network Profiler’ and ‘Memory Profiler’ – and each can be clicked for more detailed information. The window can be viewed by clicking View → Tool Windows → Android Profiler, and then selecting the concerned app process and device. The ‘logcat’ will now be present in a different window.
Support for Kotlin language
Many Android developers had been clamouring for this – and the IDE has finally extended support for the Kotlin programming language. The built-in conversion tool (available inside Code → Convert Java File to Kotlin File) in Android Studio 3.0 will help coders add Kotlin code to their project quickly and in an error-free manner. Inside the ‘New Project Wizard’, new Kotlin projects can also be created from scratch. Kotlin is easily one of the fastest growing programming languages at present, and its arrival on Android Studio is big news.
There is considerable interest about Android Instant Apps – and fittingly, the new version of the IDE comes with enhanced support for the technology. From the ‘New Module Wizard’, app makers can find an App Links Assistant, two separate modules (feature and instant) and a ‘modularized refactoring action’. The two modules have been provided to help Android developers create Instant Apps without any hassles.
Faster build times
The official theme of the Android Studio 3.0 update is ‘speeds and smarts’, as reported by a director of product management for Google. In particular, the Gradle build timings have been significantly bumped up. The increase in build speeds can be easily noted while working on complex app projects (Google has tested the IDE with projects that have 100+ modules). Depending on the precise nature of any app development process, the build time can vary from a few seconds to several minutes. A faster IDE, that’s what Android Studio is set to become.
Upgradation of base IDE
The core IDE of the updated edition of Android Studio is Intellij 2017.1.2 (the older 20116.2 has been ditched). A wide range of performance boosting features – from semantic highlighting, refactoring and inclusion of parameter hints, to several new ‘lint checks’, draggable breakpoints and presence of instant results within search – feature in the base IDE of Android Studio 3.0. A previously existing issue, involving app restarts even when there were no pauses in the underlying program at breakpoint(s), has also been resolved. This version of Android Studio is probably the most user-friendly till date.
Support for Android Things
The Internet of Things (IoT) market is booming, and Google clearly has plans to capture developer mindshare in this domain. The upcoming version of the Android IDE has been provided with high-end, customized features for the application of Android development expertise on the IoT platform. From the ‘New Module Wizard’ and ‘New Project Wizard’, developers can seamlessly start creating applications for Android Things – thanks to the presence of a large array of new templates. Incidentally, the Android Things framework includes smart devices for retail, consumer and industrial software.
Compatibility with Java 8
Along with the support for Kotlin, this is one of the biggest new features in Android Studio 3.0. Selective features from the Java 8 language toolchain are now supported by the IDE, along with the built-in Java 8 libraries. All that developers have to do is disable ‘Jack’, and then change the ‘Target’ and ‘Source’ compatibilities to 1.8 (this change is to be done inside ‘Project Structure dialog’). ‘Instant Run’ is one of the new Java 8 features that are supported in the latest Android IDE version.
In previous iterations of Android Studio, the ‘maven dependencies’ of the support libraries of the IDE used to be stored within the SDK manager. Things will change with the arrival of version 3.0, with the dependencies now set to be distributed from a separately created ‘Maven Repository’. Experts from the field of mobile app development also feel that this repository will make the management of Continuous Integration builds a lot simpler.
Note: To the build.gradle file of the project module, https://maven.google.com has to be added)
XML fonts and Adaptive Icon Wizard
Both of these features are primarily targeted towards developers making apps for the Android O platform. The new version of Android Studio has an excellent font selection tool and a handy ‘XML font preview’ option – for integrating custom fonts in new applications. Font resources with downloadable features can also be created (this will be available only when Google Play has been updated to version 11.2.63 or later). On the other hand, coders will also find it easy to design legacy launcher assets and icons, after the arrival of the ‘Adaptive Launcher Icon Wizard’ in Android 3.0 Canary 1. Adaptive launcher icons is a much-talked-about new feature of Android O – and it has, understandably, received support from the revamped Android Studio.
Better Layout Editor
For all of its merits, the layout editors of the older versions of Android Studio had scopes for improvement. That has been addressed by the latest rendition of the IDE – with its layout editor having a host of powerful functionalities and enhancements. There is a brand new error panel, the ‘chain creation’ process has been enhanced, and the view insertions with drag-n-drop contains an improved component tree. What’s more – the layout editor of Android Studio 3.0 also has additional support for view barriers.
Android Emulator gets OpenGL ES 3.0
Apart from having better build speeds, the OpenGL ES 3.0 support in Android Emulator will also make the app development lifecycle shorter and more efficient. This support has been introduced with a clear eye on the system images of Android O (API level 24 image files). In addition, the graphics features and capabilities of OpenGL ES 2.0 have also been considerably enhanced. The process of generating bug reports have been made easier than ever, along with a redesigned UI for proxy settings. The new and improved Android Emulator: i) keeps Google Play Services updated, and ii) makes app testing processes easier and more thorough.
Note: In the emulator, there is a new ‘rotary input’ feature support for Android Wear devices.
12. Enhanced APK debugging
The new version of the Android Studio IDE brings all-new APK Debugging functionalities to the table. APK sources (provided that developers have access to them) can be directly linked to the debug flow. That, in turn, would make the overall debugging process more high-fidelity. In general, this feature would help coders while profiling, analyzing, and of course, debugging APKs.
13. Changed Device File Explorer
Just like the inclusion of Kotlin as a supported language, the changes in the Android Studio ‘Device File Explorer’ have also been done as a result of considerable demands from Android developers worldwide. Instead of interactions between file systems being carried out through DDMS (as was the practice in previous Android Studio versions), the new file explorer window allows users to interact with the filesystem of connected device(s) – from right within the IDE. Apart from seamless app data modifications during testing phases, the ‘Device File Explorer’ also lets coders check out the directory and file structures of emulators/devices.
The ‘Layout Inspector’ has also undergone significant improvements in Android Studio 3.0. The Android O system images in the emulator bundles in the Play Store. The ‘APK Analyzer’ has a fair number of new, important features as well. It was initially planned that a version 2.4 of Android Studio will be released with the new features (7 previews had been made available). However, Google finally took the call that the number of new capabilities in the updated IDE warranted a major upgrade in the version number. Going by what can be seen in the Android 3.0 Canary 1 preview – this is going to be a mighty important upgradation of the IDE.