New Android Development Environment Based on IntelliJ IDEA

Android Studio

Join our mailing list

Stay up to date with latest software releases, news, software discounts, deals and more.

Download Android Studio 3.2.1

Android Studio

 -  100% Safe  -  Freeware

What's new in this version:

Android Studio 3.2.1

This update to Android Studio 3.2 includes the following changes and fixes:
- The bundled Kotlin version is now 1.2.71
- The default build tools version is now 28.0.3
- In the Navigation library, argument types have been renamed from type to argType

The following bugs have been fixed:
- When using the Data Binding library, variable names with underscores were causing compilation errors
- CMake was causing IntelliSense and other CLion features to fail
- Adding a SliceProvider was causing compilation errors in projects that did not use androidx.* libraries
- Some Kotlin unit tests were not being run
- An issue with data binding was causing a PsiInvalidElementAccessException
- <merge> elements were sometimes causing the Layout Editor to crash

Android Studio 3.2
- For detailed change log please refer to official Andorid Studio What's New page.

Android Studio 3.1.4
- For detailed change log please refer to official Andorid Studio What's New page.
- The bundled Kotlin is now version 1.2.50
- New projects are created with kotlin-stdlib-jdk* artifacts, rather than with kotlin-stdlib-jre* artifacts, which are deprecated
- R8 parsing of ProGuard rules has been improved

The following bugs have been fixed:
- Attempting to run the Kotlin Main class failed with an error: "Error: Could not find or load main class..."
- R8 entered an infinite loop while performing certain optimizations
- Using the Rerun failed tests command in the Run window sometimes incorrectly returned the message "No tests were found"
- D8 did not correctly handle invoke-virtual instances, causing a crash with a VerifyError: invoke-super/virtual can't be used on private method
- The Data Binding compiler was depending on an old version of The compiler now uses tools annotations from the base project when available
- Android Studio crashed during fragment transitions when using profilers
- The debugger crashed when debugging a layout with a text box
- D8 failed to read some ZIP files with special characters

Android Studio 3.1.3
- Memory leaks caused Android Studio to become slow and unresponsive after you had been using the Layout Editor. This update includes fixes for most of these issues. We intend to release another update soon to address additional memory leaks.
- Some applications built with D8 crashed on some Verizon Ellipsis tablets.
- Installation of applications built with D8 failed with an INSTALL_FAILED_DEXOPT error on devices running Android 5.0 or 5.1 (API level 21 or 22).
- Some applications that used the OkHttp library and were built with D8 crashed on devices running Android 4.4 (API level 19).
- Android Studio sometimes failed to start, with a ProcessCanceledException during class initialization for com.intellij.psi.jsp.JspElementType.

Android Studio 3.1.2
- In some cases, Android Studio hung indefinitely during exit
- Builds configured with source sets failed with the following message when Instant Run was enabled: "The SourceSet name is not recognized by the Android Gradle Plugin."
- When Instant Run was enabled, builds of new Kotlin projects failed when triggered by the Run command
- During editing of the build.gradle file, there was sometimes a noticeable delay between typing a character and the character appearing on the screen
- Build failures occurred during dexing in some projects with large numbers of modules or external dependencies, with the following error message: "RejectedExecutionException: Thread limit exceeded replacing blocked worker"
- The computation of the D8 main DEX list was not taking into account some reflective invocations

Android Studio 3.1.1
- In some cases, when a project created in Android Studio 3.0 was opened for the first time in Android Studio 3.1, the Gradle-aware Make task was removed from the Before launch area in Run/Debug Configurations. The result was that projects did not build when the Run or Debug button was clicked, which in turn caused failures such as deployment of incorrect APKs and crashes when using Instant Run
- To solve this problem, Android Studio 3.1.1 adds the Gradle-aware Make task to the run configuration for projects that are missing this entry. This modification occurs after the first Gradle sync when the project is loaded
- The debugger crashed when debugging a layout with a text box if advanced profiling was enabled
- Android Studio froze after you clicked Build Variants
- AAR (Android archive) files were extracted twice, once during the Gradle sync process and once during the Gradle build process
- Elements were missing from some vector drawables imported from SVG files
- The warning regarding the deprecation of the compile dependency configuration has been updated with better guidance regarding the implementation and api configurations. For details of migrating away from using the compile configuration, see the documentation for the new dependency configurations

Android Studio 3.1.0

- IntelliJ 2017.3.3: The core Android Studio IDE has been updated with improvements from IntelliJ IDEA through the 2017.3.3 release. Improvements include better control flow analysis for collections and strings, improved nullability inference, new quick fixes, and much more.

SQL editing improvements with Room:
- Code completion within a Query understands SQL tables (entities), columns, query parameters, aliases, joins, subqueries, and WITH clauses
- SQL syntax highlighting now works
- You can right-click a table name in SQL and rename it, which also rewrites the corresponding Java or Kotlin code (including, for example, the return type of the query). Renaming works in the other direction, too, so renaming a Java class or field rewrites the corresponding SQL code
- SQL usages are shown when using Find usages (right-click and choose Find usages from the context menu)
- To navigate to an SQL entity's declaration in Java or Kotlin code, you can hold Control (Command on Mac) while clicking the entity

Updates to data binding:
- You can now use a LiveData object as an observable field in data binding expressions. The ViewDataBinding class now includes a new setLifecycle() method that you use to observe LiveData objects
- The ObervableField class can now accept other Observable objects in its constructor
- You can preview a new incremental compiler for your data binding classes. For details of this new compiler and instructions for enabling it, see Data Binding Compiler V2.

Benefits of the new compiler include the following:
- ViewBinding classes are generated by the Android Plugin for Gradle before the Java compiler
- Libraries keep their generated binding classes when the app is compiled, rather than being regenerated each time. This can greatly improve performance for multi-module projects

D8 is the default DEX compiler:
This new DEX compiler brings with it several benefits, including the following:
- Faster dexing
- Lower memory usage
- Improved code generation (better register allocation, smarter string tables)
- Better debugging experience when stepping through code

Incremental desugaring:
- For projects that use Java 8 language features, incremental desugaring is enabled by default, which can improve build times
- Desugaring converts syntactic sugar into a form that the compiler can process more efficiently

Simplified output window:
- The Gradle Console has been replaced with the Build window, which has Sync and Build tabs

Batch updates and indexing concurrency:
- The Gradle sync and IDE indexing processes are now much more efficient, reducing time wasted on many redundant indexing operations

C++ and LLDB:
- If you work with large C++ projects, you should notice a significant improvement in the reduction of time spent building symbols. Sync time is also greatly reduced for large projects
- Performance when building and syncing with CMake has been improved through more aggressive reuse of cached results
- The addition of formatters ("pretty printers") for more C++ data structures makes LLDB output easier to read
- LLDB now works with only Android 4.1 (API level 16) and higher

- Kotlin upgraded to version 1.2.30
- Kotlin code now analyzed with command-line lint check

Performance tools:
- The CPU Profiler now includes a default configuration to record sampled traces of your app's native threads. You can use this configuration by deploying your app to a device running Android 8.0 (API level 26) or higher and then selecting Sampled (Native) from the CPU Profiler's recording configurations dropdown menu. After that, record and inspect a trace as you normally would.
- You can change default settings, such as the sampling interval, by creating a recording configuration
- To switch back to tracing your Java threads, select either a Sampled (Java) or Instrumented (Java) configuration

Filter CPU traces, memory allocation results, and heap dumps:
- The CPU Profiler and Memory Profiler include a search feature that allows you to filter results from recording a method trace, memory allocations, or heap dump
- In the CPU Profiler's Flame Chart tab, call stacks that include methods related to your search query are highlighted and moved to the left side of the chart

Request tab in the Network Profiler:
- The Network Profiler now includes a Request tab that provides details about network requests during the selected timeline. In previous versions, the Network Profiler only provided information about network responses

Thread View in the Network Profiler:
After selecting a portion of the timeline in the Network Profiler, you can select one of the following tabs to see more detail about the network activity during that timeframe:
- Connection View: Provides the same information as previous versions of Android Studio—it lists files that were sent or received during the selected portion of the timeline across all of your app's CPU threads. For each request, you can inspect the size, type, status, and transmission duration
- Thread View: Displays network activity of each of your app's CPU threads. This view allows you to inspect which of your app's threads are responsible for each network request

Layout Inspector:
The Layout Inspector gained new features, including some functionality previously provided by the deprecated Hierarchy Viewer and Pixel Perfect tools:
- Zoom buttons and keyboard shortcuts for navigating and inspecting layouts
- Reference grid overlay
- Ability to load a reference image and use it as an overlay (useful for comparing your layout with a UI mockup)
- Render subtree preview to isolate a view in a complex layout

Layout Editor improvements:
- Reorganization of categories for views and layouts
- New Common category for views and layouts, which you can add to with a Favorite command
- Improved search for views and layouts
- New commands for opening documentation for a specific view or layout element
- You can use the new Convert view command in the Component tree or design editor to convert a view or layout to another type of view or layout
- You can now easily create constraints to items near the selected view using the new Create a connection buttons in the view inspector at the top of the Attributes window

Run and Instant Run:
- The behavior of the Use same selection for future launches option in the Select deployment target dialog has been made more consistent. If the Use same selection option is enabled, then the Select deployment target dialog opens only the first time that you use the Run command until the selected device is no longer connected.
- When targeting a device running Android 8.0 (API level 26) or higher, Instant Run can deploy changes to resources without causing an application restart. This is possible because the resources are contained in a split APK

Emulator improvements:
- Quick Boot snapshots for saving of emulator state and faster start, with the ability to use the Save now command to save a custom start state
- Windowless emulator screen
- System images for Android 8.0 (API level 26), Android 8.1 (API level 27), and Android P Developer Preview

User interface and user experience improvements:
- We have added tooltips and helpful message overlays in many places throughout Android Studio
- To see keyboard shortcuts for many commands, just hold the mouse pointer over a button until the tooltip appears
- The Tools > Android menu has been removed. Commands that were previously under this menu have been moved
- Many commands moved to directly under the Tools menu
- The Sync project with gradle files command moved to the File menu
- The Device Monitor command has been removed, as described below

Device Monitor available from the command line:
- In Android Studio 3.1, the Device Monitor serves less of a role than it previously did. In many cases, the functionality available through the Device Monitor is now provided by new and improved tools.
- See the Device Monitor documentation for instructions for invoking the Device Monitor from the command line and for details of the tools available through the Device Monitor

Android Studio 3.0.1
- Change log not available for this version

Android Studio 3.0.0

Android Plugin for Gradle 3.0.0:
The new Android plugin for Gradle includes a variety of improvements and new features, but it primarily improves build performance for projects that have a large number of modules. When using the new plugin with these large projects, you should experience the following:
- Faster build configuration times due to new delayed dependency resolution
- Variant-aware dependency resolution for only the projects and variants you are building
- Faster incremental build times when applying simple changes to code or resources

This version also includes the following:
- Support for Android 8.0
- Support for building separate APKs based on language resources
- Support for Java 8 libraries and Java 8 language features (without the Jack compiler)
- Support for Android Test Support Library 1.0 (Android Test Utility and Android Test Orchestrator)
- Improved ndk-build and cmake build speeds
- Improved Gradle sync speed
- AAPT2 is now enabled by default
- Using ndkCompile is now more restricted. You should instead migrate to using either CMake or ndk-build to compile native code that you want to package into your APK. To learn more, read Migrate from ndkcompile
- If you're ready to upgrade to the new plugin, see Migrate to Android Plugin for Gradle 3.0.0

Kotlin support:
- As announced at Google I/O 2017, the Kotlin programming language is now officially supported on Android. So with this release, Android Studio includes Kotlin language support for Android development
- You can incorporate Kotlin into your project by converting a Java file to Kotlin (click Code > Convert Java File to Kotlin File) or by creating a new Kotlin- enabled project using the New Project wizard

Java 8 language features support:
- You can now use certain Java 8 language features and consume libraries built with Java 8. Jack is no longer required, and you should first disable Jack to use the improved Java 8 support built into the default toolchain
- To update your project to support the new Java 8 language toolchain, update the Source Compatibility and Target Compatibility to 1.8 in the Project Structure dialog (click File > Project Structure). To learn more, read how to use Java 8 language features

Android Profiler:
- The new Android Profiler replaces the Android Monitor tool and provides a new suite of tools to measure your app's CPU, memory, and network usage in realtime. You can perform sample-based method tracing to time your code execution, capture heap dumps, view memory allocations, and inspect the details of network-transmitted files
- To open, click View > Tool Windows > Android Profiler (or click Android Profiler in the toolbar)
- The event timeline at the top of the window shows touch events, key presses, and activity changes so you have more context to understand other performance events in the timeline
- Note: The Logcat view also moved to a separate window (it was previously inside Android Monitor, which was removed)
- From the Android Profiler's overview timeline, click on the CPU, MEMORY, or NETWORK timelines to access the corresponding profiler tools

CPU Profiler:
- The CPU Profiler helps you analyze the CPU thread usage of your app by triggering a sample or instrumented CPU trace. Then, you can troubleshoot CPU performance issues using a variety of data views and filters

Memory Profiler:
- The Memory Profiler helps you identify memory leaks and memory churn that can lead to stutter, freezes, and even app crashes. It shows a realtime graph of your app's memory use, lets you capture a heap dump, force garbage collections, and track memory allocations

Network Profiler:
- The Network Profiler allows you to monitor the network activity of your app, inspect the payload of each of your network requests, and link back to the code that generated the network request

APK profiling and debugging:
- Android Studio now allows you to profile and debug any APK without having to build it from an Android Studio project—as long as the APK is built to enable debugging and you have access to the debug symbols and source files
- To get started, click Profile or debug APK from the Android Studio Welcome screen. Or, if you already have a project open, click File > Profile or debug APK from the menu bar. This displays the unpacked APK files, but it does not decompile the code. So, to properly add breakpoints and view stack traces, you need to attach Java source files and native debug symbols

Device File Explorer:
- The new Device File Explorer allows you to inspect your connected device's filesystem, and transfer files between the device and your computer. This replaces the filesystem tool available in DDMS
- To open, click View > Tool Windows > Device File Explorer

Instant Apps support:
- New support for Android Instant Apps allows you to create Instant Apps in your project using two new module types: Instant App modules and Feature modules (these require that you install the Instant Apps Development SDK)
- Android Studio also includes a new modularize refactoring action to help you add support for Instant Apps in an existing project. For example, if you want to refactor your project to place some classes in an Instant App feature module, select the classes in the Project window and click Refactor > Modularize. In the dialog that appears, select the module where the classes should go and click OK
- And when you're ready to test your Instant App, you can build and run your Instant App module on a connected device by specifying the Instant App's URL within the run configuration launch options: Select Run > Edit Configurations, select your Instant App module, and then set the URL under Launch Options

Android Things modules:
- New Android Things templates in the New Project and New Module wizards to help you start developing for Android-powered IOT devices

Adaptive Icons wizard:
- Image Asset Studio now supports vector drawables and allows you to create adaptive launcher icons for Android 8.0 while simultaneously creating traditional icons ("Legacy" icons) for older devices
- To start, right-click on the res folder in your project, and then click New > Image Asset. In the Asset Studio window, select Launcher Icons (Adaptive and Legacy) as the icon type
- Note: You must set compileSdkVersion to 26 or higher to use adaptive launcher icons

Support for font resources:
- To support the new font resources in Android 8.0, Android Studio includes a font resources selector to help bundle fonts into your app or configure your project to download the fonts on the device (when available). The layout editor can also preview the fonts in your layout
- To try downloadable fonts, ensure that your device or emulator is running Google Play Services v11.2.63 or higher. For more information, read about Downloadable Fonts

Firebase App Indexing Assistant:
- The Firebase Assistant has been updated with a new tutorial to test App Indexing. To open the Assistant, select Tools > Firebase. Then select App Indexing > Test App Indexing

The tutorial includes new buttons to test your public and personal content indexing:
- In step 2, click Preview search results to verify that your URLs are showing up in Google Search results
- In step 3, click Check for errors to verify that the indexable objects in your app have been added to the personal content index

Android App Links Assistant:
The App Links Assistant has been updated with the following new capabilities:
- Add URL tests for each URL mapping to be sure your intent filters handle real-world URLs
- You can also define these URL tests by hand using the tag described below
- Create a Digital Asset Links file with the appropriate object entry to support Google Smart Lock, and add the corresponding asset_statements tag to your manifest file

URL intent-filter validator:
- Android Studio now supports a special tag in the manifest file that allows you to test your intent filter URLs. These are the same tags that the App Links Assistant can create for you
- To declare a test URL for an intent filter, add a element alongside the corresponding element.If any one of the test URLs does not pass the intent filter definition, a lint error appears. Such an error still allows you to build debug variants, but it will break your release builds

Layout Editor:
The Layout Editor has been updated with a number of enhancements, including the following:
- New toolbar layout and icons
- Updated layout in the component tree
- Improved drag-and-drop view insertions
- New error panel below the editor, showing all issues with suggestions to fix (if available)

Various UI enhancements for building with ConstraintLayout, including the following:
- New support to create barriers
- New support to create groups: In the toolbar, select Guidelines > Add Group (requires ConstraintLayout 1.1.0 beta 2 or higher)
- New UI to create chains: Select multiple views, and then right-click and select Chain

Layout Inspector:
- The Layout Inspector includes enhancements to make it easier to debug issues with your app layouts, including grouping properties into common categories and new search functionality in both the View Tree and the Properties panes

APK Analyzer:
- You can now use the APK Analyzer from the command line with the apkanalyzer tool

The APK Analyzer has also been updated with the following improvements:
For APKs built with ProGuard, you can load ProGuard mapping files that add capabilities to the DEX viewer, including:
- Bolded nodes to indicate that the nodes should not be removed when shrinking code
- A button to show nodes that were removed during the shrinking process
- A button that restores the original names of nodes in the tree view that were obfuscated by ProGuard
- The DEX Viewer now shows the estimated size impact of each package, class and method
- New filtering options at the top to show and hide fields and methods
- In the tree view, nodes that are references not defined in the DEX file appear in italics

Preview for D8 DEX compiler:
- Android Studio 3.0 includes an optional new DEX compiler called D8. It will eventually replace the DX compiler, but you can opt-in to use the new D8 compiler now
- DEX compilation directly impacts your app's build time, .dex file size, and runtime performance. And when comparing the new D8 compiler with the current DX compiler, D8 compiles faster and outputs smaller .dex files, while having the same or better app runtime performance

To try it, set the following in your project's file:
- android.enableD8=true

Google's Maven repository:
- Android Studio now uses Google’s Maven Repository by default instead of depending on the Android SDK Manager to get updates for Android Support Library, Google Play Services, Firebase, and other dependencies. This makes it easier to keep your libraries up to date, especially when using a continuous integration (CI) system

All new projects now include the Google Maven repository by default. To update your existing project, add google() in the repositories block of the top-level build.gradle file:
- Native debugging with Android Studio no longer supports 32-bit Windows. We've chosen to focus on other platforms because very few developers are using this platform. If you are using 32-bit Windows and you plan to debug native code, you should keep using Android Studio 2.3
- Upgraded the base IDE to IntelliJ 2017.1.2, which adds a number of new features from 2016.3 and 2017.1, such as Java 8 language refactoring, parameter hints, semantic highlighting, draggable breakpoints, instant results in search, and much more
- Added many new lint checks
- Also see the latest Android Emulator updates

Android Studio 2.3.3
- This is a minor update to add support for Android O (API level 26)

Android Studio 2.3.2
- AVD Manager updates to support Google Play in system images
- Bug fixes for NDK builds when using R14+ of the NDK
- Also see corresponding updates for Android Emulator 26.0.3

Android Studio 2.3.1
- This is a minor update to Android Studio 2.3 that fixes an issue where some physical Android devices did not work properly with Instant Run

Android Studio 2.3

- Android Studio can now convert PNG, BMP, JPG, and static GIF files to WebP format. WebP is an image file format from Google that provides lossy compression (like JPEG) as well as transparency (like PNG) but can provide better compression than either JPEG or PNG. For more information, see Convert Images to WebP in Android Studio
- The new App Links Assistant simplifies the process of adding Android App Links to your app into a step-by-step wizard. Android App Links are HTTP URLs that bring users directly to specific content in your Android app

The Layout Editor now includes support for two new ConstraintLayout features:
- Define a view size based on an aspect ratio
- Create packed, spread, and weighted linear groups with constraint chains
- For more information, see Build a Responsive UI with ConstraintLayout
- The Layout Editor also now lets you create a list of favorite attributes so you don't have to click View all attributes to access the attributes you use most
- When adding a material icon using the Vector Import Dialog (File > New > Vector Asset), you can now filter the list of available icons by category or by icon name. For more information, see Adding a material icon
- New and updated annotations. The new @RestrictTo annotation for methods, classes, and packages lets you restrict an API. The updated @VisibleForTesting annotation now has an optional otherwise argument that lets you designate what the visibility of a method should be if not for the need to make it visible for testing. Lint uses the otherwise option to enforce the intended visibility of the method
- New lint baseline support allows you to use a snapshot of your project's current set of warnings as a baseline for future inspection runs so only new issues are reported. The baseline snapshot lets you start using lint to fail the build for new issues without having to go back and address all existing issues first

New lint checks, including the following:
- Obsolete SDK_INT Checks: Android Studio removes obsolete code that checks for SDK versions
- Object Animator Validation: Lint analyzes your code to make sure that your ObjectAnimator calls reference valid methods with the right signatures and checks that those methods are annotated with @Keep to prevent ProGuard from renaming or removing them during release builds
- Unnecessary Item Decorator Copy: Older versions of the RecyclerView library did not include a divider decorator class, but one was provided as a sample in the support demos. Recent versions of the library have a divider decorator class. Lint looks for the old sample and suggests replacing it with the new one
- WifiManager Leak: Prior to Android 7.0 (API level 24), initializing the WifiManager with Context.getSystemService() can cause a memory leak if the context is not the application context. Lint looks for these initializations, and if it cannot determine that the context is the application context, it suggests you use Context.getApplicationContext() to get the proper context for the initialization
- Improved Resource Prefix: The existing resourcePrefix lint check had many limitations. You can now configure your project with a prefix, such as android { resourcePrefix 'my_lib' }, and lint makes sure that all of your resources are using this prefix. You can use variations of the name for styles and themes. For example for the my_lib prefix, you can have themes named MyLibTheme, myLibAttr, my_lib_layout, and so on
- Switch to WebP: This check identifies images in your project that can be converted to WebP format based on your project’s minSdkVersion setting. An associated quickfix can automatically convert the images, or you can convert images to WebP manually
- Unsafe WebP: If your project already includes WebP images, this check analyzes your project to ensure that your minSdkVersion setting is high enough to support the included images. For more information about WebP support in Android and Android Studio, see Which browsers natively support WebP? and Create WebP Images Using Android Studio

- A separate button to push changes with Instant Run: After deploying your app, you now click Apply Changes to quickly push incremental changes to your running app using Instant Run. The Run and Debug buttons are always available to you when you want to reliably push your changes and force an app restart
- Instant Run is supported only when deploying your app to a target device running Android 5.0 (API level 21) or higher
- Instant Run is no longer disabled for projects that link to external native projects using CMake or ndk-build. However, you can only use Instant Run to push incremental changes to your Java code, not your native code
- Cold swaps (which you can force for a running app by clicking Run ) are now more reliable. Forcing a cold swap also fixes the issue where changes to notification and widget UIs were not updated on the target device
- Includes optimizations that make app startup much faster. These optimizations may affect profiling, so you should temporarily disable Instant Run whenever profiling your app
- The AVD Manager and SDK Manager buttons are now included in the lean Navigation Bar as well as the full Toolbar. To use the lean Navigation Bar, click View to open the View menu, then ensure that Navigation Bar is selected and Toolbar is not selected
- The "Hybrid" debugger has been renamed to "Dual" debugger

In the Run/Debug Configurations dialog, under Defaults in the left pane, the following run configuration names have changed with no behavior changes:
- The JUnit name has changed to Android JUnit. If you have a project that uses JUnit run configurations, those configurations are transformed to Android JUnit run configurations the first time you open the project with Android Studio. A dialog appears to inform you of the name change
- The Android Tests name has changed to Android Instrumented Tests
- The GPU Debugger has been removed from Android Studio as of version 2.3. An open-source, standalone version of the tool will be made available soon on GitHub
- The Run/Debug option is no longer available when you right-click a *.gradle build script
- All templates now use ConstraintLayout as the default layout
- The Widgets palette in the Layout Editor has been redesigned

Android Studio 2.2.3
- ProGuard version rollback. Due to a correctness issue discovered in ProGuard 5.3.1, we have rolled back to ProGuard 5.2.1. We have worked with the ProGuard team on getting a fix quickly, and we expect to roll forward to ProGuard 5.3.2 in Android Studio 2.3 Canary 3.
- Bug fix for aaptOptions IgnoreAssetsPattern not working properly
- Bug fix for Gradle autodownload for Constraint Layout library
- Bug fix for a JDK8/Kotlin compiler + dx issue

Android Studio 2.2.2
- Includes bug fixes and performance improvements
- Fixed Issues
- Instant Run bug fixes
- Gradle Plug-in Bug fixes
- 32-bit JDK for use on 32-bit Windows

New Features:
- Android API 25 Support - Basic support for API 25 inside Android Studio to support the Android 7.1 developer preview. We know there are still a few more updates inside Android Studio before we set API 25 as the default.
- Expanded reporting when reporting Instant Run issues - When reporting an instant run issue we now collect

Android Studio 2.2.1

Fixed Issues:
- An Updated JDK to address multiple issues with MacOS Sierra
- Improves the Native (C++) Development experience by resolving multiple critical bugs
- Several Instant Run and Gradle Bug Fixes
- Multiple issues in data binding

New Features:
- Improved Reporting for Instant Run Issues: Some of you have been reporting issues with Instant Run, but it has been hard for us reproduce them. We have added extra logging to help us investigate Instant Run issues. This extra logging is OFF by default, and to enable it, go to Settings or Preferences, go to Build, Execution, Deployment > Instant Run, and check Log extra info is check. Next time you encounter an Instant Run issues, you can report it by clicking Help > Report Instant Run Issue.

Android Studio 2.2.0

- All new Layout Editor with tools custom-built to support ConstraintLayout.
- New Layout Inspector lets you examine snapshots of your layout hierarchy while your app is running on the emulator or a device
- New Assistant window to help you integrate Firebase services into your app
- New APK Analyzer tool so you can inspect the contents of your packaged app
- New Espresso Test Recorder tool (currently in beta) to help you create UI tests by recording your own interactions
- New build cache (currently experimental) to speed up build performance
- New C/C++ build integration with CMake and ndk-build. Compile and build new or existing native code into libraries packaged into your APK, and debug using lldb. For new projects, Android Studio uses CMake by default, but also supports ndk-build for existing projects. To learn how to include native code in your Android application, read Add C and C++ Code to Your Project. To learn how to debug native code with lldb, see Debug Native Code
- New Samples Browser so you can easily look up Google Android sample code from within Android Studio to jump start app development
- New Merged Manifest Viewer to help you diagnose how your manifest file merges with your app dependencies across project build variants
- The Run window now contains log messages for the current running app. Note that you can configure the logcat Monitor display, but not the Run window
- Android Studio now comes bundled with OpenJDK 8. Existing projects still use the JDK specified in File > Project Structure > SDK Location. You can switch to use the new bundled JDK by clicking File > Project Structure > SDK Location and checking the Use embedded JDK checkbox
- Added new help menus and buttons in the UI so you can more easily find the online documentation

New Android Emulator features:
- Added new Virtual Sensors and Cellular > Signal Strength controls.
- Added an LTE option to the Cellular > Network type control.
- Added simulated vertical swipes for scrolling through vertical menus with a mouse wheel.

New Run/Debug Configuration features:
- The Debugger tab of the Android App and Android Tests templates now contain several new options for debugging with LLDB
- The Profiling tab of the Android App and Android Tests templates now contain a Capture GPU Commands option for enabling GPU tracing. You can display GPU traces in the GPU Debugger (a beta feature)
- The Android Tests template now has a Firebase Test Lab Device Matrix option for the Deployment Target
- The Native Application template has been deprecated. If you use this template in a project, Android Studio automatically converts it to the Android App template
- The Android Application template has been renamed to Android App

- Updated the IDE codebase from IntelliJ 15 to IntelliJ 2016.1
- Instant Run now requires the platform SDK corresponding to the target device API level to be installed
- Instant Run will automatically disabled if user is running the app under a work profile or as a secondary user
- Fixed many reliability issues for Instant Run where changes were not getting deployed or the app would crash
- Improved performance for Gradle sync within the IDE, especially for large projects
- Improved build times for both full and incremental builds with new app packaging code
- Improved Jack compiler performance and features, including support for annotation processors and dexing in process. To learn more, read the Android plugin for Gradle 2.2.0 release notes
- Added an updated AccelerometerPlay sample so you can try out the emulator Accelerometer control. Select File > New > Import Sample to import the project
- Removed the Scale AVD property from the AVD Manager
- The Android Emulator -port and -ports command-line options now report which ports and serial number the emulator instance is using, and warn if there are any issues with the values you provided
- Improved the Create New Class dialog and the corresponding file templates. Note: If you've previously customized the AnnotationType, Class, Enum, Interface, or Singleton file templates, you need to modify your templates to comply with the new templates or you won’t be able to use the new fields in the Create New Class dialog
- Improved the Vector Asset Studio user interface and added support for Adobe Photoshop Document (PSD) files
- Improved the Image Asset Studio user interface
- Improved the Theme Editor's Resource Picker
- Fixed memory leaks and reduced overall memory usage in Android Studio
- Added a Background button in the SDK Manager so you can get back to work and install your packages in the background
- Improved Accessibility features, including support for screen readers and keyboard navigation
- Enhanced Code Analysis includes code quality checks for Java 8 language usage and more cross-file analysis
- Several toolbar icons have changed

Android Studio 2.1.3
- This update adds compatibility with Gradle 2.14.1, which includes performance improvements, new features, and an important security fix

Android Studio 2.1.2
- Android Studio 2.1.2 includes a number of small changes and bug fixes
- Instant Run updates and bug fixes
- Improved performance in LLDB and a notification in studio when there are LLDB crashes
- Git rebase command now works with Android Studio’s latest security update
- And a few additional general fixes

Android Studio 2.1.1
- This fixes a serious security vulnerability in all older versions of Android Studio.

Android Studio 2.1
- The primary changes in this update provide support for development with the Android N Preview
- The Android N platform adds support for Java 8 language features, which require a new experimental compiler called Jack. The latest version of Jack is currently supported only in Android Studio 2.1. So if you want to use Java 8 language features, you need to use Android Studio 2.1 to build your app
- Although Android Studio 2.1 is now stable, the Jack compiler is still experimental and you must enable it with the jackOptions property in your build.gradle file.
- The Java-aware C++ debugger is now enabled by default when you're using an N device or emulator and select Native debugger mode (in the Debugger tab for your run/debug configuration).

Android Studio 2.0
- Android Studio 2.0 is the fastest way to build high quality, performant apps for the Android platform, including phones and tablets, Android Auto, Android Wear, and Android TV. As the official IDE from Google, Android Studio includes everything you need to build an app, including a code editor, code analysis tools, emulators and more. This new and stable version of Android Studio has fast build speeds and a fast emulator with support for the latest Android version and Google Play Services.
- Android Studio is built in coordination with the Android platform and supports all of the latest and greatest APIs. If you are developing for Android, you should be using Android Studio 2.0. It is available today as a easy download or update on the stable release channel.

Android Studio 2.0 includes the following new features that Android developer can use in their workflow :
- Instant Run - For every developer who loves faster build speeds. Make changes and see them appear live in your running app. With many build/run accelerations ranging from VM hot swapping to warm swapping app resources, Instant Run will save you time every day.
- Android Emulator - The new emulator runs ~3x faster than Android’s previous emulator, and with ADB enhancements you can now push apps and data 10x faster to the emulator than to a physical device. Like a physical device, the official Android emulator also includes Google Play Services built-in, so you can test out more API functionality. Finally, the new emulator has rich new features to manage calls, battery, network, GPS, and more.
- Cloud Test Lab Integration - Write once, run anywhere. Improve the quality of your apps by quickly and easily testing on a wide range of physical Android devices in the Cloud Test Lab right from within Android Studio.
- App Indexing Code Generation & Test - Help promote the visibility your app in Google Search for your users by adding auto-generated URLS with the App Indexing feature in Android Studio. With a few click you can add indexable URL links that you can test all within the IDE
- GPU Debugger Preview - For those of you developing OpenGL ES based games or apps, you can now see each frame and the GL state with the new GPU debugger. Uncover and diagnosis GL rendering issues by capturing and analyzing the GPU stream from your Android device
- IntelliJ 15 Update - Android Studio is built on the world class Intellij coding platform. Check out the latest Intellij features here

Deeper Dive into the New Features:
Instant Run:
- Today, mobile platforms are centered around speed and agility. And yet, building for mobile can sometimes feel clunky and slow. Instant Run in Android Studio is our solution to keep you in a fast and fluid development flow. The feature increases your developer productivity by accelerating your edit, build, run cycles. When you click on the Instant Run button (), Instant Run will analyze the changes you have made and determine how it can deploy your new code in the fastest way

Android Studio 1.5.1
- Fixed a rendering failure issue in the Layout Editor. Issue: 194612
- Added the ability to vary description manifest attributes by configuration. Issue: 194705
- Improved the contrast of the Android Studio Darcula appearance theme in Vector Asset Studio. Issue: 191819
- Added Help button support to Vector Asset Studio.
- Added support for the % operator for data binding. Issue: 194045
- Fixed a case where launching an app for debugging resulted in the debugger connecting to the wrong device. Issue: 195167
- Fixed a null pointer exception that could occur when attempting to run an app in certain scenarios.

Android Studio 1.5.0
- Added new Memory Monitor analysis abilities to Android Monitor. When you view an HPROF file captured from this monitor, the display is now more helpful so you can more quickly locate problems, such as memory leaks. To use this monitor, click Android Monitor at the bottom of the main window. In Android Monitor, click the Memory tab. While the monitor is running, click the Dump Java Heap icon, and then click Captures in the main window and double-click the file to view it. Click Capture Analysis on the right. (The Android Device Monitor can't be running at the same time as Android Monitor.)
- Added new deep link and app link support. The Code Editor can automatically create an intent filter for deep linking in the AndroidManifest.xml file. It can also generate code to help you integrate with the App Indexing API in an activity in a Java file. A deep link testing feature helps you verify that a specified deep link can launch an app. In the General tab of the Run/Debug Configurations dialog, you can specify deep link launch options. You can also test App Indexing API calls in an activity by using the Android Monitor logcat display. The Android lint tool now has warnings for certain issues involving deep links and the App Indexing API.
- Added the ability to use short names when code-completing custom views in the Code Editor.
- Added support for more VectorDrawable elements to Vector Asset Studio for backward-compatibility. Vector Asset Studio can use these elements to convert vector drawables into PNG raster images to use with Android 4.4 (API level 20) and lower.
- Added new lint checks for Android TV and Android Auto to give you immediate, actionable feedback in Android Studio, along with several quick fixes. For example, for Android TV, it can report and provide a quick fix for permissions, unsupported hardware, uses-feature element, and missing banner issues. For Android Auto, it can validate the correct usage in the descriptor file referred from your AndroidManifest.xml file, report if there isn't an intent filter for the MediaBrowserService class, and identify certain voice actions issues.
- Added new lint checks for insecure broadcast receivers, SSLCertificateSocketFactory and HostnameVerifier class uses, and File.setReadable() and File.setWritable() calls. It also detects invalid manifest resource lookups, especially for resources that vary by configuration.
- Fixed a number of stability issues.

Android Studio 1.4.1
- Fixed a Gradle model caching issue that could lead to excessive Gradle syncing when the IDE was restarted.
- Fixed a native debugging deadlock issue.
- Fixed an issue blocking users of the Subversion 1.9 version control system.
- Fixed a Device Chooser dialog problem where after connecting a device that was unauthorized you could no longer select the emulator.
- Fixed incorrect translation error reporting for locales that have a region qualifier and a translation in the region (but not in the base locale).
- Fixed a deadlock issue in the Theme Editor related to its interaction with the Layout Editor.
- Fixed a Theme Editor reload and edit conflict causing attributes to not properly update.
- Improved Theme Editor performance.
- Fixed an issue where the android:required attribute was ignored in the manifest.

Android Studio 1.4.0
- Added the Vector Asset Studio tool for importing vector graphics, such as material icons and SVG files. To use this tool, in the Android view of the Project window, right-click the res folder and select New > Vector Asset.
- Added new Android Monitor functions, GPU and Network. To use these monitors, click Android Monitor at the bottom of the main window. The Android Device Monitor can't be running at the same time as Android Monitor.
- Added an early preview of the new Theme Editor. To use this feature, select Tools > Android > Theme Editor.
- Updated the Android templates for the Design Support Library. Templates now include support for the Material Design specification, as well as the appcompat Support Library for backwards compatibility.

Android Studio 1.3.2
- Added support for Android 6.0 (API level 23), including new icons and AVD Manager support for creating devices with new screen densities.
- Fixed an exception that was occuring during update checks.
- Fixed problem where unresolved view coordinates could cause the layout editor to crash.
- Fixed issue with invalid resource type warnings.
- Fixed lint check that was incorrectly flagging resources as private.

Android Studio 1.3.1
- Fixed support for creating an Android Wear Android Virtual Device (AVD) on Windows.
- Updated the Project Wizard to use the entered project name.
- Added support to allow the Android SDK to be stored in a read-only directory.
- Updated Android Plugin for Gradle version to 1.3.0.
- Fixed issues with launching a debug session from the Android Debug Bridge (adb) Unix shell.
- Fixed the Java package renaming message to show the correct package name.

Android Studio 1.3.0
- Added options to enable developer services, such as AdMob and Analytics, in your app from within Android Studio.
- Added additional annotations, such as @RequiresPermission, @CheckResults, and @MainThread.
- Added the capability to generate Java heap dumps and analyze thread allocations from the Memory Monitor. You can also convert Android-specific HPROF binary format files to standard HPROF format from within Android Studio.
- Integrated the SDK Manager into Android Studio to simplify package and tools access and provide update notifications.
- Added the finger command in the emulator console to simulate fingerprint authentication.
- Added a resource declaration to designate library resources as public and private resources.
- Added data binding support to create declarative layouts that bind your application logic to layout elements.
- Added support for a separate test APK module to build test APKs in Android Studio.
- Updated the AVD Manager with HAXM optimizations and improved notifications.
- Added 64-bit ARM and MIPS emulator support for QEMU 2.1.
- Simplified the resolution of lint warnings by adding quick fixes, such as the automatic generation of Parcelable implementation.
- Added live template support for quick insertion of code snippets.

Android Studio 1.2.1
- Fixed minor performance and feature issues.

Android Studio 1.0
- Change log not available for this version.

Android Studio 1.0 Build 135.1629389:
- After two years of development, we're extremely happy to announce that Android Studio 1.0 has finally been released!
- We would like to thank all of our early access users for their feedback and bug reports which helped shape the IDE.

Android Studio 0.8.14:
- Improvements to the AVD manager: more feedback when creating and starting AVDs; better default RAM device defaults, better system API sorting, tweak emulator launch parameters, and the emulator output is now displayed in an output tab (which is important when the emulator runs into fatal problems, such as the device description requiring more RAM than available on the system)
- Updated editor support for Android Lollipop: API metadata now includes Lollipop APIs, and the new XML drawable tags and attributes are such as are supported in editor XML validation and code completion

Android Studio 0.8.13:
- We've just released Android Studio 0.8.13 to the canary channel.  This is primarily a bug fix release relative to 0.8.12 from last week.
- However, it does include some support for Android Lollipop and device information and art for the new Nexus devices. For example, you can create AVDs for Nexus 6 and Nexus 9

Join our mailing list

Stay up to date with latest software releases, news, software discounts, deals and more.