Google today launched Android Studio 2.2, the latest version of its integrated development environment (IDE), with over 20 new features across every major phase of the development process: design, develop, build, and test. You can download the new version for Windows, Mac, and Linux now directly from developer.android.com/studio. If you are already using Android Studio, you can get the latest version in the navigation menu (Help => Check for Update on Windows/Linux and Android Studio => Check for Updates on OS X).
Google launched Android Studio 2.1 in April, but that release was mainly focused on adding Android Nougat support. Version 2.2, a preview of which was released in May at Google’s I/O 2016 developer conference, adds many more new features.
Here’s the rundown of what version 2.2 brings to the table:
- Layout Editor: This new user interface designer lets you drag and drop widgets from the palette to the design surface or the component tree view of your app and offers a blueprint mode to inspect the spacing and arrangement of your layout, a Properties panel for quick widget edits, and an UI builder for editing menu and system preference files.
- Constraint Layout: This flexible layout manager allows you to create dynamic user interfaces without nesting multiple layouts. It is distributed as a support library tightly coupled with Android Studio and backwards compatible to API Level 9 (Android Gingerbread). The built-in templates in the New Project Wizard now generate a Constraint Layout, but you can also click on any layout in the new Layout Editor and select the Convert to ConstraintLayout option.
- Layout Inspector (Experimental): Drill into the view hierarchy of your app and analyze the attributes of each component of UI on the screen. Android Studio creates a snapshot of the current view hierarchy of your app for you to inspect, which is particularly useful when trying to track down a bug.
- Improved C++ Support: You can now use CMake or ndk-build to compile your C++ projects from Gradle, seamlessly migrate projects from CMake build systems, and leverage C++ support in the new project wizard.
- Firebase Plugin: You can add Firebase to a new or existing Android app with the new Assistant window, and access Firebase features right in the IDE (Tools => Firebase). Many of the Firebase services that Google detailed at I/O 2016 can be added via a guided experience.
- Samples Browser: This menu option allows you to find Google-provided Android code samples based on the currently highlighted symbol in your project. Highlight Variables, Types, or Methods in your code and then right-click, choose Find Sample Code, and you’ll see the results in a bottom output box.
- Instant Run: Many stability and reliability improvements.
- APK Analyzer: Understand the contents and the sizes of different components in your APK, limit issues with your Dex files, diagnose ProGuard configuration issues, view merged AndroidManifest.xml file, and inspect the compiled resources file. This feature can help you reduce your APK size (you’ll see both the raw file size as well as the download size of various components).
- Build cache (Experimental): To improve build speeds, this experimental build cache will help reduce both full and incremental build times. Just add android.enableBuildCache=true to your gradle.properties file.
- Virtual Sensors in the Android Emulator: With the new UI controls, you can now test Android Sensors such as Accelerometer, Ambient Temperature, Magnetometer, and so on.
- Espresso Test Recorder (Beta): Create UI tests by recording interactions with your app. Run your app in debug mode and enable recording, and this feature will capture UI events and convert them into Espresso Tests that you can run locally or even in the Firebase Test Lab.
- GPU Debugger (Beta): You can now capture a stream of OpenGL ES commands on your Android device, replay it from inside Android Studio for analysis, and also fully inspect the GPU state of any given OpenGL ES command to better understand and debug your graphical output.
- Improved Jack Tools: Incremental build and full support for annotation processing has been added, so you can explore using Java 8 features in your existing projects.
- Merged Manifest Viewer: Navigate to your AndroidManifest.xml and click on the new Merged Manifest bottom tab to see how each node of your AndroidManifest resolves with various project dependencies.
This release also includes many stability and performance fixes in addition to the new features (full release notes). For the next version, Google is planning to “keep driving up quality and stability on existing features.”