- How to install an older version of Android Studio [closed]
- 1 Answer 1
- Как установить более старую версию Android Studio [закрыто]
- 1 ответов
- Android studio ранние версии
- Android Studio release notes
- Android Gradle plugin and Android Studio compatibility
- Android Studio Arctic Fox | 2020.3.1
- New version numbering
- Updated version numbering for Android Studio
- Updated version numbering for Android Gradle plugin
- Android Gradle plugin 7.0.0
- Unit tests now uses Gradle test runner
- New Background Task Inspector
- Updates Database Inspector
- Export data from the Database Inspector
- Updated UI for recording in Memory Profiler
- Updates to Refresh Linked C++ Project
- New test matrix for multi-device testing
- StateFlow support in data binding
- Improved suggested import
- Support for configuration cache in Build Analyzer
- Improved Upgrade Assistant for AGP
- Refactoring for non-transitive R classes
- Support for Jetpack Compose tooling
- Compose preview
- Interactive preview
- Deploy to device
- Live Edit of literals
- Compose support in the Layout Inspector
- Get started
- Improved deploy dropdown
- New Wear OS pairing assistant
- Responsive layout template
- Accessibility Scanner for Layout Editor
- Support for Apple silicon
- Known issues for Arctic Fox
- Patches not working on Windows for v3.6-v4.1
- 4.2 (April 2021)
- Android Gradle plugin 4.2.0
- Gradle compatibility and configuration changes
- Option to optimize Gradle sync time
- Database Inspector
- Query editor improvements
- Offline mode
- Upgrade Assistant for AGP
- System Trace: Improved metrics for memory and graphics
- New Layout Inspector refresh action
- Support for Safe Args
- R8 retrace now available in command-line tools
- Deploy to multiple devices
- New removable setting for feature modules
- Apply Changes
- Support for additional code changes
- Updated New Project and New Module wizards
- Kotlin 1.4.31
- ANDROID_SDK_HOME environment variable deprecated
- Known Issues with Android Studio 4.2
- Android Studio 4.2.0 generates projects with wrong Kotlin version: «1.5.0-release-764»
- Error when using different passwords for key and keystore
- Android Studio doesn’t start after installing version 4.2
- 4.1 (August 2020)
- Android Gradle plugin 4.1.0
- New Database Inspector
- Run the Android Emulator directly in Android Studio
- Use TensorFlow Lite models
- Supported models
- Import a model file
- View model metadata and usage
- Known issues and workarounds
- Native Memory Profiler
- Known issues and workarounds
- System Trace UI: Easier selection, new analysis tab, and more frame rendering data
- Standalone profilers now available
- Dagger navigation support
- Material Design Components: Updated themes and styles in new project templates
- IntelliJ IDEA 2020.1
- IDE configuration directory changes
- Windows
- macOS
- Linux
- Kotlin 1.3.72
- Custom view preview
- Symbolication for native crash reports
- Apply Changes
- Faster deploy speeds
- Support for additional code changes
- 4.0 (May 2020)
- Android Gradle plugin 4.0.0
- Build Analyzer
- Java 8 library desugaring in D8 and R8
- Groovy
- Kotlin
- Feature-on-feature dependencies
- Groovy
- Kotlin
- Dependencies metadata
- Groovy
- Kotlin
- Support for Kotlin DSL script files
- CPU Profiler upgrades
- Design tools
- New Motion Editor
- Live Layout Inspector
- Layout Validation
- Smart editor features for code shrinker rules
- Kotlin Android live templates
- Fragment wizard and new fragment templates
- Expanded camera support in Android emulator
- clangd now available for C++ code editor
- ndk.dir setting in local.properties file is deprecated
- IntelliJ IDEA 2019.3.3
- 3.6 (February 2020)
- Design tools
- Split view and zoom in design editors
- Color Picker Resource Tab
- Resource Manager
- Updates to the Android Gradle plugin
- View binding
- Groovy
- Kotlin
- Apply Changes
- Refactor menu option to enable Instant Apps support
- Deobfuscate class and method bytecode in APK Analyzer
- Native tooling
- Kotlin support
- Other JNI improvements
- APK reloading for native libraries
- Attach Kotlin-only APK sources
- Leak detection in Memory Profiler
- Emulators
- Improved Location Support
- Multi-display support
- New virtual devices and project templates for Android Automotive OS
- Resumable SDK downloads
- Win32 deprecated
- New option for optimizing Gradle sync time
- New location to toggle Gradle’s offline mode
- IntelliJ IDEA 2019.2
- Community contributors
- 3.5 (August 2019)
- Project Marble: System health
- Recommended memory settings
- Memory usage report
- Windows: Antivirus file I/O optimization
- Project Marble: Feature polish
- Apply Changes
- App deployment flow
- Improved Gradle sync and cache detection
- Improved build error output
- Project Upgrades
- Layout Editor
- Data Binding
- Improved support for C/C++ projects
- Chrome OS Support
- Conditional delivery for feature modules
- IntelliJ IDEA 2019.1
- Android Gradle plugin 3.5.0 updates
- Community contributors
- 3.4 (April 2019)
- IntelliJ IDEA 2018.3.4
- Android Gradle plugin 3.4.0 updates
- New Project Structure Dialog
- Variables
- Modules
- Dependencies
- Build Variants
- Suggestions
- New Resource Manager
- Checking build IDs when profiling and debugging APKs
- R8 enabled by default
- Navigation Editor now supports all argument types
- Layout Editor improvements
- New intention action to quickly import dependencies
- 3.3 (January 2019)
- IntelliJ IDEA 2018.2.2
- Android Gradle plugin updates
- Navigation Editor
- Delete unused Android Studio directories
- Lint improvements
- Create New Project wizard
- Profiler updates
- Improved performance
- Profiler memory allocation tracking options
- Inspect frame rendering data
- Fragments in the event timeline
- View formatted text for connection payloads in the Network profiler
- Automatic downloading of SDK components
- Support for Clang-Tidy
- Removal of options for C++ customization
- CMake version 3.10.2
- New “+” syntax to specify minimum CMake versions
- Android App Bundles now support Instant Apps
- Single-variant project sync
- Provide quick feedback
- 3.2 (September 2018)
- What’s New Assistant
- Android Jetpack
- Navigation Editor
- AndroidX migration
- Android App Bundle
- Sample data in Layout Editor
- Slices
- Kotlin 1.2.61
- IntelliJ IDEA 2018.1.6
- Android profilers
- Sessions
- System Trace
- Inspect JNI references in the Memory Profiler
- Import, export, and inspect memory heap dump files
- Record CPU activity during app startup
- Export CPU traces
- Import and inspect CPU trace files
- Record CPU activity using the Debug API
- Energy Profiler
- Lint checking
- Lint checks for Java/Kotlin interoperability
- Lint checks for Slices
- New Gradle target
- Metadata updates
- Warning if running lint on a new variant
- Improvements to existing lint checks
- Issue IDs more discoverable
- Data Binding V2
- D8 desugaring
- New code shrinker
- Changed default ABIs for multi-APKs
- Groovy
- Kotlin
- Improved editor features for CMake build files
- Navigate external header files
- Native multidex enabled by default
- AAPT2 moved to Google’s Maven repository
- Groovy
- Kotlin
- Removal of configuration on demand
- ADB Connection Assistant
- Emulator improvements
- 3.1 (March 2018)
- Coding/IDE
- IntelliJ 2017.3.3
- SQL editing improvements with Room
- Updates to data binding
- Compiler and Gradle
- D8 is the default DEX compiler
- Incremental desugaring
- Simplified output window
- Batch updates and indexing concurrency
- C++ and LLDB
- Kotlin
- Kotlin upgraded to version 1.2.30
- Kotlin code now analyzed with command-line lint check
- Performance tools
- Sample native C++ processes with CPU Profiler
- Filter CPU traces, memory allocation results, and heap dumps
- Request tab in the Network Profiler
- Thread View in the Network Profiler
- Layout Inspector
- Layout Editor
- Run and Instant Run
- Emulator
- User interface and user experience improvements
- More tooltips, keyboard shortcuts, and helpful messages
- Android menu removed»>Tools > Android menu removed
- Device Monitor available from the command line
- 3.0 (October 2017)
- Android Plugin for Gradle 3.0.0
- Kotlin support
- Java 8 language features support
- Android Profiler
- CPU Profiler
- Memory Profiler
- Network Profiler
- APK profiling and debugging
- Device File Explorer
- Instant Apps support
- Android Things modules
- Adaptive Icons wizard
- Support for font resources
- Firebase App Indexing Assistant
- Android App Links Assistant
- URL intent-filter validator
- Layout Editor
- Layout Inspector
- APK Analyzer
- Preview for D8 DEX compiler
- Google’s Maven repository
- Other changes
- 2.3 (March 2017)
- Changes
- 2.2 (September 2016)
- Changes
- 2.1 (April 2016)
- 2.0 (April 2016)
- Older Releases
How to install an older version of Android Studio [closed]
Want to improve this question? Update the question so it’s on-topic for Stack Overflow.
Closed 4 years ago .
If I’m having a problem with Android Studio, and want to see if it exists in a previous version, where do I go to find the older (obsolete) version of Android Studio? There’s no link to previous versions on the download page, only other download options, does not give older versions.
1 Answer 1
A good way to try something in another version of Android Studio is to make a second installation.
You can download previous versions through a third-party site from the following links (thanks Nikhil):
Unfortunately, I couldn’t find archives for linux.
The official archive download site is here, but most if not all of the older version links are dead.
You may also want to download the IDE only and set it up to point to your existing SDK. To do this, in your new installation of Android Studio, go to
Tools -> Android -> SDK Manager
Appearance & Behavior -> System Settings -> Android SDK,
enter the android SDK location path of the other install.
Note on downloads:
If you know the version you want, a link like http://tools.android.com/download/studio/builds/2-1-3 will get you to a download page for 2.1.3 via the tools.android.com site, if you prefer.
EDIT :
Above site doesn’t have older versions after V2.3. You can now download previous version from the following link :
Источник
Как установить более старую версию Android Studio [закрыто]
Если у меня возникла проблема с Android Studio и вы хотите узнать, существует ли она в предыдущей версии, где я могу найти более старую (устаревшую) версию Android Studio? На странице загрузки нет ссылки на предыдущие версии, только другие параметры загрузки не дают более старых версий.
1 ответов
хороший способ попробовать что-то в другой версии Android Studio, чтобы сделать вторую установку.
вы можете скачать предыдущие версии через сторонний сайт по следующим ссылкам (спасибо Никхил):
к сожалению, я не смог найти архивы для linux.
официальный сайт скачать архив здесь, но большинство, если не все старые версии ссылки мертвы.
вы также можете загрузить только IDE и настроить его, чтобы указать на существующий SDK. Для этого в новой установке Android Studio перейдите в раздел
инструменты — > Android — > SDK Manager
внешний вид и поведение — > настройки системы — > Android SDK,
введите расположение Android SDK путь установки.
примечание по загрузке:
Если вы знаете версию, которую хотите, ссылка, как http://tools.android.com/download/studio/builds/2-1-3 Вы попадете на страницу загрузки для 2.1.3 через tools.android.com сайт, если хотите.
редактировать :
выше сайт не имеет более старых версий после V2.3. Теперь вы можете скачать предыдущую версию по следующей ссылке :
Источник
Android studio ранние версии
Android Studio — IDE для разработки приложений для Андроид от Google на основе IntelliJ IDEA.
Установка:
Страница загрузок на официальном сайте.
Windows:
Необходимо установить JDK и прописать системную переменную JAVA_HOME
Чтобы использовать Android Studio с эмулятором на Windows XP SP3 необходимо скачать и установить старую версию Intel Hardware Accelerated Execution Manager (extra_intel_haxm-windows_r02.zip)extra_intel_haxm-windows_r02.zip ( 1.66 МБ )
OS X:
Установка Andoid Studio на OS X намного проще — необходимо проинсталировать JDK, а затем Android Studio.
Не запускается эмулятор
Запускается эмулятор, но появляется ошибка «pixel launcher isn’t responding»
При запуске эмулятора лаунчер сообщает: Pixel launcher isn’t responding. Ни какой реакции на нажатия.
Произошло на машине с встроенной видеокартой Intel HD Graphics 3000 — в Windows 10 драйвер не поддерживает OpenGL (вероятно связанно с этим).
Решение: в наcтройках AVD установить значение Software-GLES 2.0 для Emulated performance\Graphics
Создание быстрого x86 эмулятора Android (AVD) на примере Android 5.0.1 (API 21) Запускаем Android SDK Manager. Загружаем Intel x86 Atom System Image (ознакомьтесь также с Using Hardware Acceleration, Как разогнать эмулятор Android )
Пользуемся Изменение места хранения AVD. Инструкция.
Учебники по Android Studio: Renamed Properties in BuildTypes Renamed Properties in ProductFlavors Т.е. например в build.gradle вместо runProguard false необходимо написать minifyEnabled true Просьба: если вы автор последнего сообщения — просто редактируйте его, а не добавляйте новое. Добавляем систему контроля версий Mercurial
О инсталляции и работе с Mercurial хорошо написано здесь:
Устанавливаем Mercurial, если необходимо добавляем в %PATH% путь (в моем случае D:\Program Files\TortoiseHg\). избавится от проблемы удалось только вернувшись на 0.2.0 — удалить Android Studio через uninstal, затем удалить вручную каталог — там много остается. Ошибки: Ошибка Gradle project sync failed error — Решение В теме нет куратора. По вопросам наполнения шапки обращайтесь к модераторам раздела через кнопку Сообщение отредактировал derak1129 — 26.09.20, 17:13 Источник Android Studio release notesAndroid Studio is the official IDE for Android development, and includes everything you need to build Android apps. To get the latest version, click Help > Check for updates (Android Studio > Check for updates on macOS). If you encounter problems in Android Studio, check the known issues or troubleshoot page. For the latest news on releases, including a list of notable fixes in each preview release, see the release updates. For information on what’s new in the Android Plugin for Gradle, see its release notes. Android Gradle plugin and Android Studio compatibilityThe following table lists which version of the Android Gradle plugin is required for each version of Android Studio. Note: If your project is not supported by a specific version of Android Studio, you can still open and update your project using an older version of Android Studio.
Android Studio Arctic Fox | 2020.3.1Android Studio Arctic Fox is a major release that includes a variety of new features and improvements. Android Studio Arctic Fox | 2020.3.1 Patch 3 (October 2021) This minor update includes the following bug fixes:
For more information, see the 2020.3.1 Patch 3 blog post. Android Studio Arctic Fox | 2020.3.1 Patch 2 (September 2021) This minor update includes the following bug fixes:
For more information, see the 2020.3.1 Patch 2 blog post. Android Studio Arctic Fox | 2020.3.1 Patch 1 (August 2021) This update includes fixes for the following issues:
For more information, see the 2020.3.1 Patch 1 blog post. New version numberingUpdated version numbering for Android StudioWe have changed the version numbering system for Android Studio to more closely align with IntelliJ IDEA, the IDE that Android Studio is based on. In the previous numbering system, this release would have been numbered as Android Studio 4.3 or version 4.3.0.1. With the new numbering system, it is now Android Studio — Arctic Fox | 2020.3.1, or version 2020.3.1.
Going forward, here’s how the Android Studio version number is determined:
Updated version numbering for Android Gradle pluginWe have changed the version numbering for Android Gradle plugin (AGP) to more closely match the underlying Gradle build tool. Therefore, AGP 7.0 is the next release after AGP 4.2. For more details, see Versioning changes in the AGP release notes. Android Gradle plugin 7.0.0The latest version of the Android Gradle plugin includes many updates. To learn more, read the full Android Gradle plugin release notes. Unit tests now uses Gradle test runnerTo improve overall consistency of test executions, Android Studio now uses Gradle to run all unit tests by default. In many cases, this change will not affect your testing workflow in the IDE. For example, when you click the Run command in the context menu (visible when you right-click on a test class) or its corresponding gutter action , Android Studio will use the Gradle run configuration by default to run unit tests. However, Android Studio no longer recognizes existing Android JUnit run configurations, so you should migrate Android JUnit run configurations that you might save as project files to Gradle run configurations. To create a Gradle test configuration, select the Gradle template when following the instructions in Create a new run/debug configuration. When you’ve created a new configuration, it will appear in the Edit Configurations dialog in the Gradle section: If you want to inspect Android JUnit configurations that are no longer recognized, you can do one of two things:
Look for temporary configurations in /.idea/workspace.xml and look under the node. For example: New Background Task InspectorYou can visualize, monitor, and debug your app’s background workers using the new Background Task Inspector. To get started, deploy your app to a device running WorkManager library 2.5.0 or higher, and select View > Tool Windows > App Inspection from the menu bar. You can view more detailed information by clicking on a worker. For example, you can see the description of the worker, how it was executed, details of its worker chain, and the result of the execution. You can also view a visual representation of a worker chain by selecting a worker from the table and clicking Show Graph View from the toolbar. You can then select any worker in the chain to see its details, or stop it if it’s currently enqueued or running. To return to the table, click Show List View . To help you investigate issues from workers that fail execution, you can stop a currently running or enqueued worker by selecting it from the table and clicking Cancel Selected Worker from the toolbar. You can also filter workers in the table by tags you’ve assigned to them using the All tags dropdown menu. Updates Database InspectorThe Database Inspector is now included in the new App Inspection tool window, where you can also find the new Background Task Inspector. Open the App Inspection tool window from the tool window bar, or select View > Tool Windows > App Inspection from the menu bar. Export data from the Database InspectorIn Arctic Fox, you can easily export databases, tables, and query results from the Database Inspector to save, share, or recreate locally. When you open up an app project in Android Studio and inspect the app for that project in the Database Inspector, you can start exporting data in one of the following ways:
After selecting an export action, you use the Export dialog to help you through the final steps, as shown below. Depending on whether you are trying to export a database, table, or query results, you have the option of exporting the data in one or more of the following formats: DB, SQL, or CSV. Updated UI for recording in Memory ProfilerWe have consolidated the Memory Profiler user interface (UI) for different recording activities, such as capturing a heap dump and recording Java, Kotlin, and native memory allocations. The Memory Profiler provides the following options:
Here’s how to use these three options: To capture a heap dump, select Capture heap dump, then select Record. After the profiler finishes capturing the heap dump, the Memory Profiler UI transitions to a separate screen displaying the heap dump. To record native allocations on devices running Android 10 and higher, select Record native allocations, then select Record. The recording continues until you click Stop , after which the Memory Profiler UI transitions into a separate screen displaying the native recording. On Android 9 and lower, the Record native allocations option is not available. To record Java and Kotlin allocations, select Record Java / Kotlin allocations, then select Record. If the device is running Android 8 or higher, the Memory Profiler UI transitions to a separate screen displaying the ongoing recording. You can interact with the mini timeline above the recording (for example, to change the selection range). To complete the recording, select Stop . On Android 7.1 and lower, the memory profiler uses legacy allocation recording, which displays the recording on the timeline until you click Stop. Updates to Refresh Linked C++ ProjectWe have moved files unrelated to configuration from the .cxx/ folder into the build/ folder. CMake C++ builds require a configuration phase that generates the Ninja project that’s used to execute the compile and link steps. Projects generated by CMake are expensive to generate and are expected to survive across gradle clean. For this reason, they’re stored in a folder called .cxx/ , next to the build/ folder. Typically, Android Gradle plugin will notice configuration changes and automatically regenerate the Ninja project. However, not all cases can be detected. When this happens, the «Refresh Linked C++ Project» option can be used to manually regenerate the Ninja project. New test matrix for multi-device testingInstrumentation tests can now run across multiple devices in parallel and can be investigated using a specialized instrumentation test results panel. Using this panel, you can determine if tests are failing due to API level or hardware properties. Testing your app across a wide variety of API levels and form factors is one of the best ways to ensure that all users have a great experience when using your app. To take advantage of this feature: Choose Select Multiple Devices in the target device dropdown menu from the top-center of the IDE). Select the target devices and click OK. To view your test results in the Run panel, go to View > Tool Windows > Run. The new test results panel allows you to filter your test results by status, device, and API level. Additionally, you can sort each column by clicking the header. By clicking on an individual test, you can view logs and device information individually for each device. StateFlow support in data bindingFor Kotlin apps that use coroutines, you can now use StateFlow objects as a data binding source to automatically notify the UI about changes in the data. Your data bindings will be lifecycle aware and will only be triggered when the UI is visible on the screen. To use a StateFlow object with your binding class, you need to specify a lifecycle owner to define the scope of the StateFlow object, and in your layout, assign the properties and methods of your ViewModel component to the corresponding views using binding expressions, as shown in the following example: If you’re in a Kotlin app that uses AndroidX, StateFlow support is automatically included in the functionality of data binding, including the coroutines dependencies. Improved suggested importWe’ve improved the number of libraries that are supported by the suggested import feature and update the index more frequently. Suggested import helps you quickly and easily import certain Google Maven artifacts into both your class and Gradle project. When Android Studio detects unresolved symbols from certain Google libraries, the IDE suggests importing the library into both the class and the project. Support for configuration cache in Build AnalyzerBuild Analyzer now identifies when a project doesn’t have configuration cache enabled, and offers it as an optimization. Build Analyzer runs a compatibility assessment to inform you if there are any issues with configuration cache in your project before it gets enabled. Improved Upgrade Assistant for AGPThe Upgrade Assistant for Android Gradle plugin now has a persistent tool window with the list of steps that will be completed. Additional information is also presented on the right side of the tool window. If needed, you can also choose a different version of AGP to upgrade to. Clicking on the Refresh button updates the corresponding update steps. Refactoring for non-transitive R classesYou can use non-transitive R classes with the Android Gradle plugin to build faster builds for applications with multiple modules. Doing so helps prevent resource duplication by ensuring that each module’s R class only contains references to its own resources, without pulling references from its dependencies. This leads to more up-to-date builds and the corresponding benefits of compilation avoidance. You can access this feature by going to Refactor > Migrate to Non-transitive R Classes. Support for Jetpack Compose toolingWe now offer additional support for previewing and testing apps that use Jetpack Compose. For the best experience developing with Jetpack Compose, you should use the latest version of Android Studio Arctic Fox so that you can benefit from smart editor features, such as New Project templates and the ability to immediately preview your Compose UI. Compose previewThe following parameters for @Preview methods are now available:
Interactive previewYou can use this feature to interact with your UI components, click them, and see how the state changes. It’s a quick way to get feedback on how your UI reacts and to preview the animations. To enable it, click the Interactive icon , and the preview will switch modes. To stop, click on Stop Interactive Preview in the top toolbar. Deploy to deviceYou can use this feature to deploy a snippet of your UI to a device. This helps test small parts of your code in the device without having to start the full application. Click the Deploy to Device icon next to the @Preview annotation or at the top of the preview, and Android Studio will deploy that @Preview to your connected device or emulator. Live Edit of literalsWe have added Live Edit of literals to help developers using Compose quickly edit literals (strings, numbers, booleans) in their code and see the results immediately without needing to wait for compilation. The goal of this feature is to help increase your productivity by having code changes appear near instantaneously in the previews, emulator, or physical device. Compose support in the Layout InspectorThe Layout Inspector allows you to see rich detail about your app’s layout running on your connected device. You can interact with your app and see live updates in the tool to quickly debug issues that might arise. You can inspect layouts written with the new Android declarative UI framework, Jetpack Compose. Whether your app uses layouts fully written in Compose or layouts that use a hybrid of Compose and Views, the Layout Inspector helps you understand how your layouts are rendered on your running device. Get startedTo get started, deploy your app to a connected device and then open the Layout Inspector window by selecting View > Tool Windows > Layout Inspector. If the Layout Inspector doesn’t automatically connect to your app process, select the desired app process from the process pulldown. You should soon see your app’s layout rendered in the tool window. To get started inspecting your Compose layout, select the layout component visible in the rendering or select it from the Component Tree. The Attributes window shows you detailed information about the Compose function currently selected. In this window, you can inspect the function’s parameters and their values, including modifiers and lambda expressions. For lambda expressions, the inspector provides a shortcut to help you navigate to the expression in your source code. The Layout Inspector shows all Compose functions in the call stack that emit components to your app’s layout. In many cases, this includes Compose functions that are called internally by the Compose Library. If you want to see only the Compose functions in the Component Tree that your app calls directly, click the filter action, which might help reduce the number of nodes shown in the tree to the ones you are likely to want to inspect. Improved deploy dropdownThe device dropdown now distinguishes between different kinds of errors within your chosen device configuration. Iconography and stylistic changes now differentiate between errors (device selections that result in a broken configuration) and warnings (device selections that may result in unexpected behavior but are still runnable). In addition, Android Studio will now warn you if you attempt to launch your project to a device that has an error or a warning associated with it. New Wear OS pairing assistantThe new Wear OS pairing assistant guides developers step-by-step through pairing Wear OS emulators with physical or virtual phones directly in Android Studio. The assistant can help you get the right Wear OS Companion app installed on your phone and set up a connection between the two devices. You can get started by going to the device dropdown > Wear OS Emulator Pairing Assistant. Responsive layout templateAndroid Studio Arctic Fox now includes a new layout template that adapts to various display dimensions and app resizing, such as phones, foldables, tablets, and split screen modes. When creating a new project or module, select the Responsive Activity template to create a layout with components that dynamically resize. To get started, navigate to File > New, select either New Project or New Module, and select the Responsive Activity template. Accessibility Scanner for Layout EditorWe have integrated Android Accessibility Test Framework in Android Studio to help you find accessibility issues in your layouts. The tool reports accessibility related issues and offers suggested fixes for some common problems (i.e. missing content descriptions, or low contrast). To launch the panel, click on the error report button in the Layout Editor. Support for Apple siliconAndroid Studio and Android Emulator now contain initial support for core developer workflows when running the Apple silicon (arm64) hardware architecture, including corresponding emulator system images. Support is not yet available for all SDK and NDK command-line tools. You may have to run Rosetta 2 on your machine to run some tools. Known issues for Arctic FoxThis section describes current known issues in Android Studio Arctic Fox. Patches not working on Windows for v3.6-v4.1Patches on Windows platform for v3.6-v4.1 to Android Studio Arctic Fox stable may not work. 4.2 (April 2021)Android Studio 4.2 is a major release that includes a variety of new features and improvements. This minor update includes various bug fixes. To see a list of notable bug fixes, read the related post on the Release Updates blog. This minor update bundles Kotlin plugin 1.5.0 and includes various bug fixes. To see a list of notable bug fixes, read the related post on the Release Updates blog. Android Gradle plugin 4.2.0The latest version of the Android Gradle plugin includes many updates. To learn more, read the full Android Gradle plugin release notes. Gradle compatibility and configuration changesWhen running in Android Studio, the Gradle build tool uses Studio’s bundled JDK. In previous releases, JDK 8 was bundled with Studio. In 4.2, however, JDK 11 is now bundled instead. When using the new bundled JDK to run Gradle, this may result in some incompatibility or impact JVM performance due to changes to the garbage collector. These issues are described in the AGP release notes. Option to optimize Gradle sync timeTo improve Gradle Sync performance, Android Studio skips building the task list during sync. This allows Gradle Sync to complete faster and improves UI responsiveness for very large projects. This option is on by default in Android Studio 4.2. To turn it off, go to File > Settings > Experimental (Preferences > Experimental on a Mac) and uncheck Do not build Gradle task list during Gradle sync. Database InspectorQuery editor improvementsThe Database Inspector includes some improvements to help you write and execute your custom SQL statements. When you open the inspector and open a New query tab, you should notice a larger, resizable editor surface to author and format your queries, as shown below. Additionally, we now provide a history of your previous queries. When you click on the Show query history button, you should see a list of queries you previously ran against the currently selected database. Click a query in the list to see a preview of the full query in the editor and press Enter to copy it to the editor. Then, click Run to execute the statement. Offline modeIn previous versions of Android Studio, disconnecting from an app process while using the Database Inspector resulted in closing the inspector and its data. In Android Studio 4.2, we’ve added the ability to keep inspecting your app’s databases after a process disconnects, making it easier to debug your app after a crash. When a disconnect occurs, the Database Inspector downloads your databases and then makes them available to you in offline mode. When offline, you can open tables and run queries. Keep in mind, when you reconnect to a live app process, the Database Inspector returns to live mode and shows you only the data that is on the device. That is, data shown in offline mode doesn’t persist when you reconnect to an app process. Because of this, the Database Inspector does not allow editing or running modification statements while in offline mode. Upgrade Assistant for AGPA new Upgrade Assistant for Android Gradle plugin can help you update the AGP version for your project. Built on top of the existing AGP upgrade functionality, this tool guides you through project-wide updates/refactorings and includes a preview of the updates to help prevent potential breaking changes before executing the AGP upgrade. System Trace: Improved metrics for memory and graphicsIn the CPU profiler, the System Trace feature now includes new metrics for analyzing app performance and includes the following: Events Table. Lists all trace events in the currently selected thread. BufferQueue. In the Display section, this new track shows the buffer count of the app’s surface BufferQueue (0, 1, or 2) to help you understand the state of image buffers as they move between the Android graphics components. CPU Frequency. In the CPU cores section, this new track displays CPU frequency by core, indicating how hard each core is working. Process Memory (RSS). This new window shows the amount of physical memory currently in use by the app. New Layout Inspector refresh actionIntroduced in Android Studio 4.0, the Layout Inspector was designed for real-time inspection of your running app’s UI stack. However, you might not always want the Layout Inspector to immediately reflect what’s happening in your app, since you might want to inspect a snapshot of your app’s layout at a specific point in time or minimize the performance impact of live updates on your app. Pause live updates and refresh the screen capture in the Layout Inspector. To manually load a snapshot of UI data from your app, first disable the Live updates option. You can then click the Refresh button to take a new snapshot of the UI stack for inspection. The Layout Inspector now remembers your preference to keep Live updates enabled or disabled between sessions. Support for Safe ArgsSafe Args is a Gradle plugin that generates simple object and builder classes for type-safe navigation and access to any associated arguments. Android Studio now includes richer support when working with Safe Args, as described below:
R8 retrace now available in command-line toolsAvailable in version 4.0 of the command-line tools, R8 retrace is a standalone tool for obtaining the original stack trace from an obfuscated stack trace. You can download this package with the SDK manager, which installs R8 retrace in android_sdk /cmdline-tools . Alternatively, you can download the standalone command-line tools package. For usage information, see R8 retrace in the user guide. Deploy to multiple devicesTo help streamline app testing across devices and API levels, you can now deploy your app to multiple devices or emulators simultaneously by following these steps: Choose Select Multiple Devices in the target device dropdown menu (in the top-center of the IDE). Select the target devices and click OK. New removable setting for feature modulesAndroid Gradle plugin 4.2 uses bundletool 1.0.0, which introduces a behavior change for apps using feature modules: Any feature module specified as dist:install-time that’s not explicitly marked as dist:removable will become non-removable by default. This new setting optimizes fusing of install-time modules with the base module, potentially improving app performance for some apps. To keep feature modules removable, set dist:removable=»true» on any module you want to uninstall. For more information on this new setting, see the documentation for the dist:removable tag in the documentation for feature module manifest. Apply ChangesTo help you be more productive as you iterate on your app, we’ve made the following enhancements to Apply Changes for devices running Android 11 or higher: Support for additional code changesFor devices running Android 11 or higher, you can now add static final primitive fields and then deploy those changes to your running app by clicking either Apply Code Changes or Apply Changes and Restart Activity . You can now also add resources and then deploy those changes to your running app on Android 11 devices by clicking Apply Changes and Restart Activity . Updated New Project and New Module wizardsThe New Project and New Module wizards have been updated to make it easier to browse, select a template, and input information about the new project or module. The option to Import .JAR/.AAR Package from the New Module wizard has also been removed. To import a JAR or AAR into your project, use the Project Structure Dialog instead. Kotlin 1.4.31Android Studio 4.2 bundles Kotlin 1.4.31. Check out the Kotlin 1.4.0 changelog to review the major changes. ANDROID_SDK_HOME environment variable deprecatedThe ANDROID_SDK_HOME environment variable is deprecated and has been replaced with ANDROID_PREFS_ROOT . For more information, see Emulator Environment Variables. Known Issues with Android Studio 4.2This section describes known issues that exist in Android Studio 4.2. For a complete list, go to the Known issues page. Android Studio 4.2.0 generates projects with wrong Kotlin version: «1.5.0-release-764»If you are using Android Studio 4.2.0 and have upgraded to Kotlin plugin 1.5.0, then new Kotlin projects created by Studio will fail to build due to the following Gradle sync error: Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0-release-764. As a workaround, replace «1.5.0-release-764» with «1.5.0» in the project’s build.gradle files. Error when using different passwords for key and keystoreStarting with version 4.2, Android Studio now runs on JDK 11. This update causes an underlying behavior change related to signing keys. When you navigate to Build > Generate Signed Bundle / APK and attempt to configure app signing for an app bundle or an APK, entering different passwords for the key and keystore may result in the following error: To work around this issue, enter the same password for both the key and keystore. Android Studio doesn’t start after installing version 4.2Studio tries to import previous .vmoptions and sanitize them to work with the garbage collector used by JDK 11. If that process fails, the IDE may not start for certain users who set custom VM options in the .vmoptions file. To work around this issue, we recommend commenting out custom options in .vmoptions (using the “#” character). The .vmoptions file can be found in the following locations: Windows C:\Users\YourUserName\AppData\ [Local|Roaming] \Google\AndroidStudio4.2\studio64.exe.vmoptions macOS Linux If Studio still doesn’t start after trying this workaround, see Studio doesn’t start after upgrade below. 4.1 (August 2020)Android Studio 4.1 is a major release that includes a variety of new features and improvements. This minor update includes various bug fixes. To see a list of notable bug fixes, read the related post on the Release Updates blog. 4.1.2 (January 2021) This minor update includes various bug fixes. To see a list of notable bug fixes, read the related post on the Release Updates blog. 4.1.1 (November 2020) This minor update includes various bug fixes. To see a list of notable bug fixes, read the related post on the Release Updates blog. Android Gradle plugin 4.1.0The latest version of the Android Gradle plugin includes many updates. To learn more, read the full Android Gradle plugin release notes. New Database InspectorInspect, query, and modify your databases in your running app using the new Database Inspector. To get started, deploy your app to a device running API Level 26 or higher, and select View > Tool Windows > Database Inspector from the menu bar. Run the Android Emulator directly in Android StudioYou can now run the Android Emulator directly in Android Studio. Use this feature to conserve screen real estate, to navigate quickly between the emulator and the editor window using hotkeys, and to organize your IDE and emulator workflow in a single application window. Use TensorFlow Lite modelsML Model Binding makes it easy for you to directly import .tflite model files and use them in your projects. Android Studio generates easy-to-use classes so you can run your model with less code and better type safety. Supported modelsThe current implementation of ML Model Binding supports image classification and style transfer models, provided they are enhanced with metadata. Over time, support will be expanded to other problem domains, like object detection, image segmentation, and text classification. A wide range of pre-trained models with metadata are provided on TensorFlow Hub. You can also add metadata to a TensorFlow Lite model yourself, as is outlined in Adding metadata to TensorFlow Lite model. Import a model fileTo import a supported model file, follow these steps:
This imports the model file into your project and places it in the ml/ folder; if the directory doesn’t exist, Android Studio will create it for you. View model metadata and usageTo see the details for an imported model and get instructions on how to use it in your app, double-click the model file in your project to open the model viewer page, which shows the following:
As the example demonstrates, Android Studio creates a class called MobilenetV1025160Quantized for interacting with the model. If the model does not have metadata, this screen will only provide minimal information. Known issues and workarounds
This feature is still under development, so please provide feedback or report bugs. Native Memory ProfilerThe Android Studio Memory Profiler now includes a Native Memory Profiler for apps deployed to physical devices running Android 10 or later. With the Native Memory Profiler, you can record memory allocations and deallocations from native code and inspect cumulative statistics about native objects. To learn more about the Native Memory Profiler, see Inspect your app’s memory usage with Memory Profiler. Known issues and workaroundsThe Native Memory Profiler in Android Studio 4.1 does not work for Android 11 devices. Support for profiling Android 11 devices is currently available in the 4.2 preview release As of the initial 4.1 release, app startup profiling has been disabled. This option will be enabled in an upcoming release. As a workaround, you can use the Perfetto standalone command-line profiler to capture startup profiles. System Trace UI: Easier selection, new analysis tab, and more frame rendering dataThe System Trace UI in the Android Studio profiler includes the following improvements: Box selection: In the Threads section, you can now drag your mouse to perform a box selection of a rectangular area, which you can zoom into by clicking the Zoom to Selection button on the top right (or use the M keyboard shortcut). When you drag and drop similar threads next to each other, you can select across multiple threads to inspect all of them at once. For example, you may want to perform analysis on multiple worker threads. Summary tab: The new Summary tab in the Analysis panel displays:
To navigate to another occurrence, select another row from the table. Display data: In the Display section, new timelines for SurfaceFlinger and VSYNC help you investigate rendering issues in your app’s UI. For basic usage instructions on how to record a system trace, see the Record traces section of Inspect CPU activity with CPU Profiler. Standalone profilers now availableWith the new standalone profilers, it’s now possible to profile your app without running the full Android Studio IDE. For instructions on using the standalone profilers, see Run standalone profilers. Dagger navigation supportAndroid Studio makes it easier to navigate between your Dagger-related code by providing new gutter actions and extending support in the Find Usages window. New gutter actions: For projects that use Dagger, the IDE provides gutter actions that help you navigate between your Dagger-annotated code. For example, clicking on the gutter action next to a method that consumes a given type navigates you to the provider of that type. Conversely, clicking on the gutter action navigates you to where a type is used as a dependency. Find Usages node: When you invoke Find Usages on a provider of a given type, the Find window now includes a Dependency consumer(s) node that lists consumers of that type. Conversely, invoking this action on a consumer of a Dagger-injected dependency, the Find window shows you the provider of that dependency. Material Design Components: Updated themes and styles in new project templatesAndroid Studio templates in the Create New Project dialog now use Material Design Components (MDC) and conform to updated guidance for themes and styles by default. Updates include:
IntelliJ IDEA 2020.1The core Android Studio IDE has been updated with improvements from IntelliJ IDEA through the 2020.1 release, including a new Commit window that enables version control operations and a new Zen mode that can be toggled by selecting View > Appearance > Enter Distraction Free Mode. To learn more about the improvements in version 2020.1, see the following page: IDE configuration directory changesThe locations of user configuration directories have been changed to the following: WindowsmacOSLinuxThese new directory locations are consistent with recent updates to IntelliJ IDEA, the IDE on which Android Studio is based. Kotlin 1.3.72Android Studio 4.1 bundles Kotlin 1.3.72, which includes a number of fixes to improve Kotlin highlighting, inspections, and code completion. Check out the 1.3.72 Kotlin changelog for details. Custom view previewWhen creating a custom view (for example, by extending the View or Button class), Android Studio now shows you a preview of your custom view. Use the dropdown menu in the toolbar to switch between multiple custom views, or click the buttons to wrap vertically or horizontally to the content. Symbolication for native crash reportsWhen a crash or ANR occurs in native code, the system produces a stack trace, which is a snapshot of the sequence of nested functions called in your program up to the moment it crashed. These snapshots can help you to identify and fix any problems in the source, but they must first be symbolicated to translate the machine addresses back into human-readable function names. If your app or game is developed using native code, like C++, you can now upload debug symbols files to the Play Console for each version of your app. The Play Console uses these debug symbols files to symbolicate your app’s stack traces, making it easier to analyze crashes and ANRs. To learn how to upload debug symbols files, see Native crash support. Apply ChangesTo help you be more productive as you iterate on your app, we’ve made the following enhancements to Apply Changes for devices running Android 11 Developer Preview 3 or higher: Faster deploy speedsWe’ve invested heavily in optimizing your iteration speed by developing a method to deploy and persist changes on a device without installing the application. After an initial deploy, subsequent deploys to Android 11 devices using either Apply Code Changes or Apply Changes and Restart Activity are now significantly faster. To learn more about the difference between these two actions, see Apply Changes. Support for additional code changesFor devices running Android 11 Developer Preview 3 or higher, you can now add methods and then deploy those changes to your running app by clicking either Apply Code Changes or Apply Changes and Restart Activity . 4.0 (May 2020)Android Studio 4.0 is a major release that includes a variety of new features and improvements. This minor update includes various bug fixes, as well as support for new default settings for Package visibility in Android 11. For more information, see the release notes for Android Gradle plugin 4.0.1. To see a list of notable bug fixes for this release, read the related post on the Release Updates blog. Important: After updating, you need to restart Android Studio to apply any memory settings migrated from an earlier version of the IDE. For more information, see the Known Issues page. Android Gradle plugin 4.0.0The latest version of the Android Gradle plugin includes many updates, such as Java 8 desugaring for older versions of Android and feature-on-feature dependencies. To learn more, read the full Android Gradle plugin release notes. Additionally, Android Studio now includes new features to help you improve your build performance. Build AnalyzerWhen using Android Studio 4.0 with Android Gradle plugin 4.0.0 and higher, the Build Analyzer window helps you understand and diagnose issues with your build process, such as disabled optimizations and improperly configured tasks. To open the Build Analyzer window, proceed as follows:
The Build Analyzer window organizes possible build issues in a tree on the left. You can inspect and click on each issue to investigate its details in the panel on the right. When Android Studio analyzes your build, it computes the set of tasks that determined the build’s duration and provides a visualization to help you understand the impact of each of these tasks. You can also get details on warnings by expanding the Warnings node. Inspecting the tasks that determined the build’s duration. Java 8 library desugaring in D8 and R8Android Studio now includes support for using a number of Java 8 language APIs without requiring a minimum API level for your app. Through a process called desugaring, the DEX compiler, D8, in Android Studio 3.0 and higher already provided substantial support for Java 8 language features (such as lambda expressions, default interface methods, try with resources, and more). In Android Studio 4.0, the desugaring engine has been extended to be able to desugar Java language APIs. This means that you can now include standard language APIs that were available only in recent Android releases (such as java.util.streams ) in apps that support older versions of Android. The following set of APIs is supported in this release:
To support these language APIs, D8 compiles a separate library DEX file that contains an implementation of the missing APIs and includes it in your app. The desugaring process rewrites your app’s code to instead use this library at runtime. To enable support for these language APIs, include the following in your app module’s build.gradle file: GroovyKotlinNote that you may also need to include the above code snippet in a library module‘s build.gradle file if: The library module’s instrumented tests use these language APIs (either directly or through the library module or its dependencies). This is so that the missing APIs are provided for your instrumented test APK. You want to run lint on the library module in isolation. This is to help lint recognize valid usages of the language APIs and avoid reporting false warnings. Feature-on-feature dependenciesIn previous versions of the Android Gradle plugin, all feature modules could depend only on the app’s base module. When using Android Gradle plugin 4.0.0 and higher, you can now include a feature module that depends on another feature module. That is, a :video feature can depend on the :camera feature, which depends on the base module, as shown in the figure below. Feature module :video depends on feature :camera , which depends on the base :app module. This means that when your app requests to download a feature module, the app also downloads other feature modules it depends on. After you create feature modules for your app, you can declare a feature-on-feature dependency in the module’s build.gradle file. For example, the :video module declares a dependency on :camera as follows: GroovyKotlinAdditionally, you should enable the feature-on-feature dependency feature in Android Studio (to support the feature when editing the Run configuration, for example) by clicking Help > Edit Custom VM Options from the menu bar and including the following: Dependencies metadataWhen building your app using Android Gradle plugin 4.0.0 and higher, the plugin includes metadata that describes the dependencies that are compiled into your app. When uploading your app, the Play Console inspects this metadata to provide you with the following benefits:
The data is compressed, encrypted by a Google Play signing key, and stored in the signing block of your release app. However, you can inspect the metadata yourself in the local intermediate build files in the following directory: If you’d rather not share this information, you can opt-out by including the following in your module’s build.gradle file: GroovyKotlinSupport for Kotlin DSL script filesThe Android Gradle plugin now supports Kotlin DSL build script files ( *.kts ). When used with Android Studio, certain IDE features, such as the Project Structure dialog and build script quick fixes, now also support reading and writing to Kotlin build script files. CPU Profiler upgradesBased on your feedback, we’ve focused our efforts on improving the user experience in the CPU Profiler in two important ways. First, compared to previous Android Studio releases, error rates for CPU recordings in the CPU Profiler have been reduced significantly. Second, the CPU Profiler UI has been overhauled to provide a more intuitive workflow. Some notable UI changes include the following:
Design toolsThis version of Android Studio includes updates to the design tools, such as the Layout Inspector and an all-new Motion Editor. New Motion EditorAndroid Studio now includes a visual design editor for the MotionLayout layout type, making it easier to create and preview animations. The Motion Editor provides a simple interface for manipulating elements from the MotionLayout library that serves as the foundation for animation in Android apps. In previous releases, creating and altering these elements required manually editing constraints in XML resource files. Now, the Motion Editor can generate this XML for you, with support for start and end states, keyframes, transitions, and timelines. To learn more about how to use the Motion Editor, see the user guide. Live Layout InspectorDebug your layout with an updated Live Layout Inspector that provides complete, real-time insights into your app’s UI while it’s deployed to a device. To open a Layout Inspector window, go to View > Tools Windows > Layout Inspector. Along with many of the same features of the existing Layout Inspector, the Live Layout Inspector also includes:
You can use the Live Layout Inspector only when deploying your app to a device or emulator running API level 29 or higher. To enable the Live Layout Inspector, go to File > Settings > Experimental and check the box next to Enable Live Layout Inspector. Then click the checkbox next to Live updates above the Layout Display. Layout ValidationLayout Validation is a visual tool for simultaneously previewing layouts on different devices and configurations, helping you detect layout errors and create more accessible apps. You can access this feature by clicking on the Layout Validation tab in the top-right corner of the IDE window: In the Layout Validation window, you can select from four different configuration sets, including:
To learn more about using Layout Validation, see Debug Your Layout with Layout Inspector. Smart editor features for code shrinker rulesAndroid Studio now provides smart editor features when you open code shrinker rules files for R8, such as syntax highlighting, code completion, and error checking. The editor also integrates with your Android Studio project to provide full symbol completion for all classes, methods, and fields, and includes quick navigation and refactoring. Kotlin Android live templatesAndroid Studio now includes Android live templates for your Kotlin classes. For example, you can now type toast and press the Tab key to quickly insert a Toast. For a full list of available live templates, click File > Settings from the menu bar (or Android Studio > Preferences on macOS) and navigate to Editor > Live Templates. Fragment wizard and new fragment templatesA New Android Fragment wizard and new fragment templates are now available when you navigate to File > New > Fragment > Gallery or click Create new destination in the Navigation editor. Expanded camera support in Android emulatorWhen using the Android 11 image, Android Emulator camera includes the following new features:
To learn more about developing for Android 11, see the Android 11 documentation. clangd now available for C++ code editorJetbrains CLion, the technology underpinning Android Studio’s C++ language support, now uses an inspection engine based on LLVM clangd and clang-tidy, speeding up C/C++ code completion and providing a more seamless integration with clang-tidy. Now available in the Android Studio C++ code editor, clangd and clang-tidy are both part of open-source LLVM extra tooling:
In prior releases, Android Studio users could use clang-tidy through the NDK; with this change, Android Studio is no longer dependent on the NDK for clang-tidy functionality. ndk.dir setting in local.properties file is deprecatedThe value for ndk.dir should no longer be set in your app’s local.properties file, and support for this ndk.dir setting will be removed in a future version. The Android Gradle Plugin sets the NDK version by default, but if you need a specific version of the NDK, you can set android.ndkVersion in build.gradle . For more information on setting up the NDK, see Install and configure the NDK and CMake. IntelliJ IDEA 2019.3.3The core Android Studio IDE has been updated with improvements from IntelliJ IDEA through the 2019.3.3 release. To learn more about the improvements from other IntelliJ versions that are included cumulatively with version 2019.3.3, see the following pages: 3.6 (February 2020)Android Studio 3.6 is a major release that includes a variety of new features and improvements. We’d also like to thank all of our community contributors who have helped with this release. This minor update includes various bug fixes. To see a list of notable bug fixes, read the related post on the Release Updates blog. This minor update includes various bug fixes. To see a list of notable bug fixes, read the related post on the Release Updates blog. 3.6.1 (February 2020) This minor update includes various bug fixes. To see a list of notable bug fixes, read the related post on the Release Updates blog. Design toolsThis version of Android Studio includes updates to several design tools, including the Layout Editor and Resource Manager. Split view and zoom in design editorsThe following updates to the visual design editors are included in this release: Design editors, such as the Layout Editor and Navigation Editor, now provide a Split view that enables you to see both the Design and Code views of your UI at the same time. In the top-right corner of the editor window, there are now three buttons for toggling between viewing options:
The controls for zooming and panning within design editors have moved to a floating panel in the bottom-right corner of the editor window. Color Picker Resource TabTo help you quickly update color resource values in your app when you’re using the color picker in your XML or the design tools, the IDE now populates color resource values for you. Resource ManagerThe Resource Manager contains the following updates:
Updates to the Android Gradle pluginThe latest version of the Android Gradle plugin includes many updates, including optimizations for build speed, support for the Maven publishing plugin, and support for View Binding. To learn more, read the full release notes. View bindingView binding allows you to more easily write code that interacts with views by generating a binding class for each XML layout file. These classes contain direct references to all views that have an ID in the corresponding layout. Because it replaces findViewById() , view binding eliminates the risk of null pointer exceptions resulting from an invalid view ID. To enable view binding, you need to use Android Gradle plugin 3.6.0 or higher and include the following in each module’s build.gradle file: GroovyKotlinApply ChangesYou can now add a class and then deploy that code change to your running app by clicking either Apply Code Changes or Apply Changes and Restart Activity . To learn more about the difference between these two actions, see Apply Changes. Refactor menu option to enable Instant Apps supportYou can now instant-enable your base module at any time after creating your app project as follows:
Note: The option to instant-enable your base app module from the Create New Project wizard has been removed. Deobfuscate class and method bytecode in APK AnalyzerWhen using the APK Analyzer to inspect DEX files, you can deobfuscate class and method bytecode as follows:
Native toolingThe following updates support native (C/C++) development in Android Studio. Kotlin supportThe following NDK features in Android Studio, previously supported in Java, are now also supported in Kotlin:
Automatically create a stub implementation function for a JNI declaration. Define the JNI declaration first and then type “jni” or the method name in the C/C++ file to activate. Unused native implementation functions are highlighted as a warning in the source code. JNI declarations with missing implementations are also highlighted as an error. When you rename (refactor) a native implementation function, all corresponding JNI declarations are updated. Rename a JNI declaration to update the native implementation function. Signature checking for implicitly-bound JNI implementations. Other JNI improvementsThe code editor in Android Studio now supports a more seamless JNI development workflow, including improved type hints, auto-completion, inspections, and code refactoring. APK reloading for native librariesYou no longer need to create a new project when the APK in your project is updated outside the IDE. Android Studio detects changes in the APK and gives you the option to re-import it. Attach Kotlin-only APK sourcesIt is now possible to attach Kotlin-only external APK sources when you profile and debug pre-built APKs. To learn more, see Attach Kotlin/Java sources. Leak detection in Memory ProfilerWhen analyzing a heap dump in the Memory Profiler, you can now filter profiling data that Android Studio thinks might indicate memory leaks for Activity and Fragment instances in your app. The types of data that the filter shows include the following:
In certain situations, such as the following, the filter might yield false positives:
To use this feature, first capture a heap dump or import a heap dump file into Android Studio. To display the fragments and activities that may be leaking memory, select the Activity/Fragment Leaks checkbox in the heap dump pane of the Memory Profiler. Filtering a heap dump for memory leaks. EmulatorsAndroid Studio 3.6 helps you take advantage of several updates included in Android Emulator 29.2.7 and higher, as described below. Improved Location SupportAndroid Emulator 29.2.7 and higher provides additional support for emulating GPS coordinates and route information. When you open the Emulators Extended controls, options in the Location tab are now organized under two tabs: Single points and Routes. Single pointsIn the Single points tab, you can use the Google Maps webview to search for points of interest, just as you would when using Google Maps on a phone or browser. When you search for or click on a location in the map, you can save the location by selecting Save point near the bottom of the map. All of your saved locations are listed on the right side of the Extended controls window. To set the Emulators location to the location you have selected on the map, click the Set location button near the bottom right of the Extended controls window.
RoutesSimilar to the Single points tab, the Routes tab provides a Google Maps webview that you can use to create a route between two or more locations. To create and save a route, do the following:
To simulate the Emulator following the route you saved, select the route from the list of Saved routes and click Play route near the bottom right of the Extended controls window. To stop the simulation, click Stop route.
To continuously simulate the Emulator following the specified route, enable the switch next to Repeat playback. To change how quickly the Emulator follows the specified route, select an option from the Playback speed dropdown. Multi-display supportThe Android Emulator now allows you to deploy your app to multiple displays, which support customizable dimensions and can help you test apps that support multi-window and multi-display. While a virtual device is running, you can add up to two additional displays as follows:
From the dropdown menu under Secondary displays, do one of the following:
(Optional) Click Add secondary display to add a third display. Click Apply changes to add the specified display(s) to the running virtual device. New virtual devices and project templates for Android Automotive OSWhen you create a new project using Android Studio, you can now select from three templates from the Automotive tab in the Create New Project wizard: No Activity, Media service, and Messaging service. For existing projects, you can add support for Android Automotive devices by selecting File > New > New Module from the menu bar, and selecting Automotive Module. The Create New Module wizard then guides you through creating a new module using one of the Android Automotive project templates.
Additionally, you can now create an Android Virtual Device (AVD) for Android Automotive OS devices by selecting one of the following options in the Automotive tab in the Virtual Device Configuration wizard.
Resumable SDK downloadsWhen downloading SDK components and tools using the SDK Manager, Android Studio now allows you to resume downloads that were interrupted (for example, due to a network issue) instead of restarting the download from the beginning. This enhancement is especially helpful for large downloads, such as the Android Emulator or system images, when internet connectivity is unreliable. In addition, if you have an SDK download task running in the background, you can now pause or resume the download using the controls in the status bar. A background download task in the status bar with new controls that let you pause or resume the download. Win32 deprecatedThe Windows 32-bit version of Android Studio will no longer receive updates after December 2019, and it will no longer receive support after December 2020. You can continue to use Android Studio. However, to receive additional updates, upgrade your workstation to a 64-bit version of Windows. New option for optimizing Gradle sync timeIn previous releases, Android Studio retrieved the list of all Gradle tasks during Gradle Sync. For large projects, retrieving the task list could cause slow sync times. To improve Gradle Sync performance, go to File > Settings > Experimental and select Do not build Gradle task list during Gradle sync. When you enable this option, Android Studio skips building the task list during sync, which allows Gradle Sync to complete faster and improves UI responsiveness. Keep in mind, when the IDE skips building the task list, the task lists in the Gradle panel are empty, and task name auto-completion in build files does not work. New location to toggle Gradle’s offline modeTo enable or disable Gradle’s offline mode, first select View > Tool Windows > Gradle from the menu bar. Then, near the top of the Gradle window, click Toggle Offline Mode . IntelliJ IDEA 2019.2The core Android Studio IDE has been updated with improvements from IntelliJ IDEA through the 2019.2 release. To learn more about the improvements from other IntelliJ versions that are included cumulatively with version 2019.2, see the following pages: Community contributorsThank you to all of our community contributors who have helped us discover bugs and other ways to improve Android Studio 3.6. In particular, we’d like to thank the following people who reported bugs:
3.5 (August 2019)Android Studio 3.5 is a major release and a result of Project Marble. Beginning with the release of Android Studio 3.3, the Project Marble initiative has spanned multiple releases that focus on improving three main areas of the IDE: system health, feature polish, and fixing bugs. For information about these and other Project Marble updates, read the Android Developers blog post or the sections below. We also want to thank all of our community contributors who have helped with this release. 3.5.3 (December 2019) This minor update includes various bug fixes and performance improvements. 3.5.2 (November 2019) This minor update includes various bug fixes and performance improvements. To see a list of notable bug fixes, read the related post on the Release Updates blog. 3.5.1 (October 2019) This minor update includes various bug fixes and performance improvements. To see a list of notable bug fixes, read the related post on the Release Updates blog. Project Marble: System healthThis section describes the changes in Android Studio 3.5 that are focused on improving system health. Recommended memory settingsAndroid Studio now notifies you if it detects that you could improve performance by increasing the maximum amount of RAM that your OS should allocate for Android Studio processes, such as the core IDE, Gradle daemon, and Kotlin daemon. You can either accept the recommended settings by clicking the action link in the notification, or you can adjust these settings manually by selecting File > Settings (or Android Studio > Preferences on macOS), and then finding the Memory Settings section under Appearance & Behavior > System Settings. To learn more, see Maximum heap size. A notification about recommended memory settings. Memory usage reportMemory problems in Android Studio are sometimes difficult to reproduce and report. To help solve this problem, Android Studio lets you generate a memory usage report by clicking Help > Analyze Memory Usage from the menu bar. When you do so, the IDE locally sanitizes the data for personal information before asking whether you want to send it to the Android Studio team to help identify the source of the memory issues. To learn more, see Run a memory usage report. A memory usage report. Windows: Antivirus file I/O optimizationAndroid Studio now automatically checks whether certain project directories are excluded from real-time antivirus scanning. When adjustments can be made to improve build performance, Android Studio notifies you and provides instructions on how to optimize your antivirus configuration. To learn more, see Minimize the impact of antivirus software on build speed. Project Marble: Feature polishThis section describes the changes in Android Studio 3.5 that are focused on improving existing features. Apply ChangesApply Changes lets you push code and resource changes to your running app without restarting your app—and, in some cases, without restarting the current activity. Apply Changes implements a completely new approach for preserving your app’s state. Unlike Instant Run, which rewrote the bytecode of your APK, Apply Changes redefines classes on the fly by leveraging the runtime instrumentation supported in Android 8.0 (API level 26) or higher. The toolbar buttons for Apply Changes. App deployment flowThe IDE has a new drop-down menu that lets you quickly select which device you’d like to deploy your app to. This menu also includes a new option that lets you run your app on multiple devices at once. Target device drop-down menu. Improved Gradle sync and cache detectionThe IDE now better detects when Gradle periodically clears your build cache when reducing its hard disk consumption. In previous versions, this state caused the IDE to report missing dependencies and Gradle sync to fail. Now, the IDE simply downloads dependencies as needed to ensure that Gradle sync completes successfully. Improved build error outputThe Build window now provides better error reporting, such as a link to the file and line of the reported error, for the following build processes:
Project UpgradesImproved update experience to provide more information and actions to help you update the IDE and the Android Gradle plugin. For example, more sync and build errors include actions to help you mitigate errors when updating. It’s important to keep in mind, you can update the IDE independently of other components, such as the Android Gradle plugin. So, you can safely update the IDE as soon as a newer version is available, and update other components later. Layout EditorAndroid Studio 3.5 includes several improvements to layout visualization, management, and interaction. When working with ConstraintLayout , a new Constraints section in the Attributes panel lists the constraints relationships of the selected UI component. You can select a constraint either from the design surface or from the constraints list to highlight the constraint in both areas. Constraint relationships for a selected UI element. Similarly, you can now delete a constraint by selecting it and pressing the Delete key. You can also delete a constraint by holding the Control key ( Command on macOS) and clicking on the constraint anchor. Note that when you hold the Control or Command key and hover over an anchor, any associated constraints turn red to indicate that you can click to delete them. When a view is selected, you can create a constraint by clicking on any of the + icons in the Constraint Widget section of the Attributes panel, as shown in the following image. When you create a new constraint, the Layout Editor now selects and highlights the constraint, providing immediate visual feedback for what you’ve just added. Using the constraint widget to create constraints . When creating a constraint, the Layout Editor now shows only the eligible anchor points to which you can constrain. Previously, the Layout Editor highlighted all anchor points on all views, regardless of whether you could constrain to them. In addition, a blue overlay now highlights the target of the constraint. This highlighting is particularly useful when attempting to constrain to a component that overlaps with another. Creating a constraint for an overlapping component in Android Studio 3.4. Creating a constraint for an overlapping component in Android Studio 3.5. In addition to the above updates, Android Studio 3.5 also contains the following Layout Editor improvements:
For more information about these changes, see Android Studio Project Marble: Layout Editor. Data BindingIn addition to adding incremental annotation processing support for Data Binding, the IDE improves smart editor features and performance when creating data binding expressions in XML. Code editor performance on Android Studio 3.4. Improved code editing performance on Android Studio 3.5. Improved support for C/C++ projectsAndroid Studio 3.5 includes several changes that improve support for C/C++ projects. Build Variants panel improvements for single variant syncYou can now specify both the active build variant and active ABI in the Build Variants panel. This feature simplifies build configuration per module and can also improve Gradle sync performance. The Build Variants panel with single variant selection by ABI. Side-by-side versions of the NDKYou can now use multiple versions of the NDK side-by-side. This feature gives you more flexibility when configuring your projects—for example, if you have projects that use different versions of the NDK on the same machine. If your project uses Android Gradle plugin 3.5.0 or higher, you can also specify the version of the NDK that each module in your project should use. You can use this feature to create reproducible builds and to mitigate incompatibilities between NDK versions and the Android Gradle plugin. Chrome OS SupportAndroid Studio now officially supports Chrome OS devices, such as the HP Chromebook x360 14, Acer Chromebook 13/Spin 13, and others that you can read about in the system requirements. To get started, download Android Studio on your compatible Chrome OS device and follow the installation instructions. Conditional delivery for feature modulesConditional delivery allows you to set certain device configuration requirements for feature modules to be downloaded automatically during app install. For example, you can configure a feature module that includes functionality for augmented reality (AR) to be available at app install for only devices that support AR. This delivery mechanism currently supports controlling the download of a module at app install-time based on the following device configurations:
If a device does not meet all the requirements you specify, the module is not downloaded at app install-time. However, your app may later request to download the module on demand using the Play Core Library. To learn more, read Configure conditional delivery. IntelliJ IDEA 2019.1The core Android Studio IDE has been updated with improvements from IntelliJ IDEA through the 2019.1 release, such as theme customization. The last IntelliJ version that was included with Android Studio was 2018.3.4. For more information about the improvements from other IntelliJ versions that are included cumulatively with this release of Android Studio, see the following bug-fix updates: Android Gradle plugin 3.5.0 updatesFor information on what’s new in Android Gradle plugin 3.5.0, such as improved support for incremental annotation processing and cacheable unit tests, see its release notes. Community contributorsThank you to all of our community contributors who have helped us discover bugs and other ways to improve Android Studio 3.5. In particular, we’d like to thank the following people who reported P0 and P1 bugs:
3.4 (April 2019)Android Studio 3.4 is a major release that includes a variety of new features and improvements. This minor update includes various bug fixes and performance improvements. To see a list of notable bug fixes, read the related post on the Release Updates blog. This minor update includes various bug fixes and performance improvements. To see a list of notable bug fixes, read the related post on the Release Updates blog. 3.4.0 known issues Profiling is disabled when deploying your app to a device running Android Q Beta. IntelliJ IDEA 2018.3.4The core Android Studio IDE has been updated with improvements from IntelliJ IDEA through the 2018.3.4 release. Android Gradle plugin 3.4.0 updatesFor information on what’s new in Android Gradle plugin 3.4.0, see its release notes. New Project Structure DialogThe new Project Structure Dialog (PSD) makes it easier to update dependencies and configure different aspects of your project, such as modules, build variants, signing configurations, and build variables. You can open the PSD by selecting File > Project Structure from the menu bar. You can also open the PSD by pressing Ctrl+Shift+Alt+S on Windows and Linux, or Command+; (semicolon) on macOS. You can find descriptions of some of the new and updated sections of the PSD below. VariablesThe new variables section of the PSD allows you to create and manage build variables, such as those to keep version numbers for dependencies consistent across your project. ModulesConfigure properties that are applied to all build variants in an existing module or add new modules to your project from the Modules section. For example, this is where you can configure defaultConfig properties or manage signing configurations. DependenciesInspect and visualize each dependency in the dependency graph of your project, as resolved by Gradle during project sync, by following these steps:
On the right side of the PSD, open the Resolved Dependencies pane, which is shown below. You can also quickly search for and add dependencies to your project by first selecting a module from the Dependencies section of the PSD, clicking the (+) button in the Declared Dependencies section, and selecting the type of dependency you want to add. Depending on the type of dependency you select, you should see a dialog, similar to the one below, that helps you add the dependency to the module. Build VariantsIn this section of the PSD, create and configure build variants and product flavors for each module in your project. You can add manifest placeholders, add ProGuard files, and assign signing keys, and more. SuggestionsSee suggested updates for project dependencies and build variables in the Suggestions section, as shown below. New Resource ManagerResource Manager is a new tool window for importing, creating, managing, and using resources in your app. You can open the tool window by selecting View > Tool Windows > Resource Manager from the menu bar. The Resource Manager allows you to do the following:
To learn more, read the guide about how to Manage app resources. Checking build IDs when profiling and debugging APKsWhen you provide debugging symbol files for the .so shared libraries inside your APK, Android Studio verifies that the build ID of the provided symbol files match the build ID of the .so libraries inside the APK. If you build the native libraries in your APK with a build ID, Android Studio checks whether the build ID in your symbol files matches the build ID in your native libraries and rejects the symbol files if there is a mismatch. If you did not build with a build ID, then providing incorrect symbol files may cause problems with debugging. R8 enabled by defaultR8 integrates desugaring, shrinking, obfuscating, optimizing, and dexing all in one step—resulting in noticeable build performance improvements. R8 was introduced in Android Gradle plugin 3.3.0 and is now enabled by default for both app and Android library projects using plugin 3.4.0 and higher. The image below provides a high-level overview of the compile process before R8 was introduced. Now, with R8, desugaring, shrinking, obfuscating, optimizing, and dexing (D8) are all completed in one step, as illustrated below. Keep in mind, R8 is designed to work with your existing ProGuard rules, so you’ll likely not need to take any actions to benefit from R8. However, because it’s a different technology to ProGuard that’s designed specifically for Android projects, shrinking and optimization may result in removing code that ProGuard may have not. So, in this unlikely situation, you might need to add additional rules to keep that code in your build output. If you experience issues using R8, read the R8 compatibility FAQ to check if there’s a solution to your issue. If a solution isn’t documented, please report a bug. You can disable R8 by adding one of the following lines to your project’s gradle.properties file: Navigation Editor now supports all argument typesAll argument types supported by the Navigation component are now supported in the Navigation Editor. For more information on supported types, see Pass data between destinations. Layout Editor improvementsThe Attributes pane in the Layout Editor has been streamlined into a single page with sections you can expand to reveal attributes you can configure. The Attributes pane also includes the following updates:
New intention action to quickly import dependenciesIf you start using certain Jetpack and Firebase classes in your code, a new intention action suggests adding the required Gradle library dependency to your project, if you haven’t already done so. For example, if you reference the WorkManager class without first importing the required android.arch.work:work-runtime dependency, an intention action lets you do so easily in a single click, as shown below. In particular, because Jetpack repackaged the support library into discrete packages that are easier to manage and update, this intention action helps you quickly add only the dependencies you need for the Jetpack components you want to use. 3.3 (January 2019)Android Studio 3.3 is a major release that includes a variety of new features and improvements. This minor update includes various bug fixes and performance improvements. To see a list of notable bug fixes, read the related post on the Release Updates blog. 3.3.1 (February 2019) This minor update includes various bug fixes and performance improvements. IntelliJ IDEA 2018.2.2The core Android Studio IDE has been updated with improvements from IntelliJ IDEA through the 2018.2.2 release. Android Gradle plugin updatesFor information on what’s new in the Android Gradle plugin, see its release notes. Navigation EditorThe Navigation Editor lets you quickly visualize and build navigation into your app by using the Navigation Architecture Component. Delete unused Android Studio directoriesWhen you run a major version of Android Studio for the first time, it looks for directories containing caches, settings, indices, and logs for versions of Android Studio for which a corresponding installation can’t be found. The Delete Unused Android Studio Directories dialog then displays locations, sizes, and last-modified times of these unused directories and provides an option to delete them. The directories Android Studio considers for deletion are listed below: Lint improvementsLint, when invoked from Gradle, is significantly faster—larger projects can expect lint to run up to four times faster. Create New Project wizardThe Create New Project wizard has a new look and contains updates that help streamline the creation of new Android Studio projects. For more information, see Create a project. Profiler updatesAndroid Studio 3.3 includes updates to several of the individual profilers. Improved performanceBased on user feedback, rendering performance while using the profilers has been greatly improved. Please continue to provide feedback, especially if you continue to see performance issues. Profiler memory allocation tracking optionsTo improve app performance while profiling, the Memory Profiler now samples memory allocations periodically by default. If desired, you can change this behavior by using the Allocation Tracking dropdown when testing on devices running Android 8.0 (API level 26) or higher. Using the Allocation Tracking dropdown, you can choose from the following modes:
Off: turns memory allocation off. If not already selected, this mode is enabled automatically while taking a CPU recording and then returned to the previous setting when the recording is finished. You can change this behavior in the CPU recording configuration dialog. The tracking affects both Java objects and JNI references. Inspect frame rendering dataIn the CPU Profiler, you can now inspect how long it takes your Java app to render each frame on the main UI thread and RenderThread. This data might be useful when investigating bottlenecks that cause UI jank and low framerates. For example, each frame that takes longer than the 16ms required to maintain a smooth framerate is displayed in red. To see frame rendering data, record a trace using a configuration that allows you to Trace System Calls. After recording the trace, look for info about each frame along the timeline for the recording under the section called FRAMES, as shown below. To learn more about investigating and fixing framerate issues, read Slow rendering. Fragments in the event timelineThe event timeline now shows when fragments are attached and detached. Additionally, when you hover over a fragment, a tooltip shows you the fragment status. View formatted text for connection payloads in the Network profilerPreviously, the Network profiler displayed only raw text from connection payloads. Android Studio 3.3 now formats certain text types by default, including JSON, XML, and HTML. In the Response and Request tabs, click the View Parsed link to display formatted text, and click the View Source link to display raw text. Automatic downloading of SDK componentsWhen your project needs an SDK component from the SDK platforms, NDK, or CMake, Gradle now attempts to automatically download the required packages as long as you’ve previously accepted any related license agreements using the SDK Manager. Support for Clang-TidyAndroid Studio now includes support for static code analysis using Clang-Tidy for projects that include native code. To enable support for Clang-Tidy, update your NDK to r18 or higher. You can then enable or re-enable the inspections by opening the Settings or Preferences dialog and navigating to Editor > Inspections > C/C++ > General > Clang-Tidy. When selecting this inspection in the Settings or Preferences dialog, you can also see the list of Clang-Tidy checks that are enabled and disabled under the Option section of the right-most panel. To enable additional checks, add them to the list and click Apply. To configure Clang-Tidy with additional options, click Configure Clang-Tidy Checks Options and add them in the dialog that opens. Removal of options for C++ customizationThe following options have been removed from the Customize C++ Support dialog:
The respective behaviors are enabled for all projects created through Android Studio. CMake version 3.10.2CMake version 3.10.2 is now included with SDK Manager. Note that Gradle still uses version 3.6.0 by default. To specify a CMake version for Gradle to use, add the following to your module’s build.gradle file: For more information on configuring CMake in build.gradle , see Manually configure Gradle. New “+” syntax to specify minimum CMake versionsWhen specifying a version of CMake in your main module’s build.gradle file, you can now append a “+” to match the behavior of CMake’s cmake_minimum_required() command. Caution: Using «+» syntax with other build dependencies is discouraged, as dynamic dependencies can cause unexpected version updates and difficulty resolving version differences. Android App Bundles now support Instant AppsAndroid Studio now lets you build Android App Bundles with full support for Google Play Instant. In other words, you can now build and deploy both installed app and instant experiences from a single Android Studio project and include them in a single Android App Bundle. If you’re creating a new Android Studio project using the Create New Project dialog, make sure you check the box next to Configure your project > This project will support instant apps. Android Studio then creates a new app project as it normally would, but includes the following properties in your manifest to add Instant app support to your app’s base module: You can then create an instant-enabled feature module by selecting File > New > New Module from the menu bar and then selecting Instant Dynamic Feature Module from the Create New Module dialog. Keep in mind, creating this module also instant-enables your app’s base module. To deploy your app to a local device as an instant experience, edit your run configuration and check the box next to General > Deploy as instant app. Single-variant project syncSyncing your project with your build configuration is an important step in letting Android Studio understand how your project is structured. However, this process can be time-consuming for large projects. If your project uses multiple build variants, you can now optimize project syncs by limiting them to only the variant you have currently selected. You need to use Android Studio 3.3 or higher with Android Gradle plugin 3.3.0 or higher to enable this optimization. When you meet these requirements, the IDE prompts you to enable this optimization when you sync your project. The optimization is also enabled by default on new projects. To enable this optimization manually, click File > Settings > Experimental > Gradle (Android Studio > Preferences > Experimental > Gradle on a Mac) and select the Only sync the active variant checkbox. Provide quick feedbackIf you’ve opted into sharing usage statistics to help improve Android Studio, you’ll see these two new icons in the status bar at the bottom of the IDE window: Simply click the icon that best represents your current experience with the IDE. When you do so, the IDE sends usage statistics that allow the Android Studio team to better understand your sentiment. In some cases, such as when you indicate a negative experience with the IDE, you’ll have an opportunity to provide additional feedback. If you haven’t already done so, you can enable sharing usage statistics by opening the Settings dialog (Preferences on a Mac), navigating to Appearance & Behavior > System Settings > Data Sharing, and checking Send usage statistics to Google. 3.2 (September 2018)Android Studio 3.2 is a major release that includes a variety of new features and improvements. 3.2.1 (October 2018) This update to Android Studio 3.2 includes the following changes and fixes:
3.2.0 known issues Note: These issues have been resolved in Android Studio 3.2.1 We strongly recommend against using Kotlin version 1.2.70. Kotlin version 1.2.61 fixes a bug that can cause Android Studio to hang, but Kotlin 1.2.70 does not include this fix. Kotlin versions 1.2.71 and later, however, do include this fix. Although you typically don’t need to specify the build tools version, when using Android Gradle plugin 3.2.0 with renderscriptSupportModeEnabled set to true , you need to include the following in each module’s build.gradle file: What’s New AssistantA new assistant informs you about the latest changes in Android Studio. The assistant opens when you start Android Studio after a fresh installation or update if it detects that there is new information to show. You can also open the assistant by choosing Help > What’s new in Android Studio. Android JetpackAndroid Jetpack helps to accelerate Android development with components, tools, and guidance that eliminate repetitive tasks and enable you to more quickly and easily build high-quality, testable apps. Android Studio includes the following updates to support Jetpack. For more information, see the Jetpack documentation. Navigation EditorThe new Navigation Editor integrates with the navigation components of Android Jetpack to provide a graphical view for creating the navigation structure of your app. The Navigation Editor simplifies the design and implementation of navigation between in-app destinations. In Android Studio 3.2, the Navigation Editor is an experimental feature. To enable the Navigation Editor, click File > Settings (Android Studio > Preferences on Mac), select the Experimental category in the left pane, check the box next to Enable Navigation Editor, and restart Android Studio. AndroidX migrationAs part of Jetpack, we are migrating the Android Support Libraries to a new Android extension library using the androidx namespace. For more information, see the AndroidX overview. Android Studio 3.2 helps you through this process with a new migration feature. To migrate an existing project to AndroidX, choose Refactor > Migrate to AndroidX. If you have any Maven dependencies that have not migrated to the AndroidX namespace, the Android Studio build system also automatically converts those project dependencies. The Android Gradle plugin provides the following global flags that you can set in your gradle.properties file:
Both flags are set to true when you use the Migrate to AndroidX command. If you want to start using AndroidX libraries immediately and don’t need to convert existing third-party libraries, you can set the android.useAndroidX flag to true and the android.enableJetifier flag to false . Android App BundleAndroid App Bundle is a new upload format that includes all of your app’s compiled code and resources, but defers APK generation and signing to the Google Play Store. Google Play’s new app serving model then uses your app bundle to generate and serve optimized APKs for each user’s device configuration, so each user downloads only the code and resources they need to run your app. You no longer need to build, sign, and manage multiple APKs, and users get smaller, more optimized downloads. Additionally, you can add feature modules to your app project and include them in your app bundle. Your users can then download and install your app’s features on demand. To build a bundle, choose Build > Build Bundle(s) / APK(s) > Build Bundle(s). For more information, including instructions for building and analyzing an Android App Bundle, see Android App Bundle. Sample data in Layout EditorMany Android layouts have runtime data that can make it difficult to visualize the look and feel of a layout during the design stage of app development. You can now easily see a preview of your view in the Layout Editor filled with sample data. When you add a view, a button appears below the view in the Design window. Click this button to set the design-time view attributes. You can choose from a variety of sample data templates and specify the number of sample items with which to populate the view. To try using sample data, add a RecyclerView to a new layout, click the design-time attributes button below the view, and choose a selection from the carousel of sample data templates. SlicesSlices provide a new way to embed portions of your app’s functionality in other user interface surfaces on Android. For example, Slices make it possible to show app functionality and content in Google Search suggestions. Android Studio 3.2 has a built-in template to help you to extend your app with the new Slice Provider APIs, as well as new lint checks to ensure that you’re following best practices when constructing the Slices. To get started right-click a project folder and choose New > Other > Slice Provider. To learn more, including how to test your Slice interactions, read the Slices getting started guide. Kotlin 1.2.61Android Studio 3.2 bundles Kotlin 1.2.61, and the new Android SDK integrates better with Kotlin. For more information, see the Android Developers blog. IntelliJ IDEA 2018.1.6The core Android Studio IDE has been updated with improvements from IntelliJ IDEA through the 2018.1.6 release. Android profilersTry the following new Android Profiler features in Android Studio 3.2. SessionsYou can now save Profiler data as sessions to revisit and inspect later. The profiler keeps your session data until you restart the IDE. When you record a method trace or capture a heap dump, the IDE adds that data (along with your app’s network activity) as a separate entry to the current session, and you can easily switch back and forth between recordings to compare data. System TraceIn the CPU Profiler, select the new System Trace configuration to inspect your device’s system CPU and thread activity. This trace configuration is built on systrace and is useful for investigating system-level issues, such as UI jank. While using this trace configuration, you can visually mark important code routines in the profiler timeline by instrumenting your C/C++ code with the native tracing API or your Java code with the Trace class. Inspect JNI references in the Memory ProfilerIf you deploy your app to a device running Android 8.0 (API level 26) or higher, you can now inspect memory allocations for your app’s JNI code using the Memory Profiler. While your app is running, select a portion of the timeline that you want to inspect and select JNI heap from the drop-down menu above the class list, as shown below. You can then inspect objects in the heap as you normally would and double-click objects in the Allocation Call Stack tab to see where the JNI references are allocated and released in your code. Import, export, and inspect memory heap dump filesYou can now import, export, and inspect .hprof memory heap dump files created with the Memory Profiler. Import your .hprof file by clicking Start new profiler session in the profiler’s Sessions pane and then selecting Load from file. You can then inspect its data in the Memory Profiler as you would any other heap dump. To save heap dump data to review later, use the Export Heap Dump button at the right of the Heap Dump entry in the Sessions pane. In the Export As dialog that appears, save the file with the .hprof filename extension. Record CPU activity during app startupYou can now record CPU activity during your app’s startup, as follows:
Export CPU tracesAfter you record CPU activity with the CPU Profiler, you can export the data as a .trace file to share with others or inspect later. To export a trace after you’ve recorded CPU activity, do the following:
Import and inspect CPU trace filesYou can now import and inspect .trace files created with the Debug API or CPU Profiler. (Currently, you can’t import System Trace recordings.) Import your trace file by clicking Start new profiler session in the profiler’s Sessions pane and then selecting Load from file. You can then inspect its data in the CPU Profiler similar to how you normally would, with the following exceptions:
Record CPU activity using the Debug APIYou can now start and stop recording CPU activity in the CPU Profiler by instrumenting your app with the Debug API. After you deploy your app to a device, the profiler automatically starts recording CPU activity when your app calls startMethodTracing(String tracePath) , and the profiler stops recording when your app calls stopMethodTracing() . While recording CPU activity that’s triggered using this API, the CPU Profiler shows Debug API as the selected CPU recording configuration. Energy ProfilerThe Energy Profiler displays a visualization of the estimated energy usage of your app, as well as system events that affect energy usage, such as wakelocks, alarms, and jobs. The Energy Profiler appears as a new row at the bottom of the Profiler window when you run your app on a connected device or Android Emulator running Android 8.0 (API 26) or higher. Click the Energy row to maximize the Energy Profiler view. Place your mouse pointer over a bar in the timeline to see a breakdown of energy use by CPU, network, and location (GPS) resources, as well as relevant system events. System events that affect energy usage are indicated in the System timeline below the Energy timeline. Details of system events within the specified time range are shown in the event pane when you select a time range in the Energy timeline. To see the call stack and other details for a system event, such as a wakelock, select it in the event pane. To go to the code responsible for a system event, double-click the entry in the call stack. Lint checkingAndroid Studio 3.2 includes many new and improved features for lint checking. The new lint checks help you to find and identify common code problems, ranging from warnings about potential usability issues to high-priority errors regarding potential security vulnerabilities. Lint checks for Java/Kotlin interoperabilityTo make sure that your Java code interoperates well with your Kotlin code, new lint checks enforce the best practices described in the Kotlin Interop Guide. Examples of these checks include looking for the presence of Nullability annotations, use of Kotlin hard keywords, and placing lambda parameters last. To enable these checks, click File > Settings (Android Studio > Preferences on Mac) to open the Settings dialog, navigate to the Editor > Inspections > Android > Lint > Interoperability > Kotlin Interoperability section, and select the rules that you want to enable. To enable these checks for command-line builds, add the following to your build.gradle file: Lint checks for SlicesNew lint checks for Slices help to ensure that you are constructing Slices correctly. For example, lint checks warn you if you have not assigned a primary action to a Slice. New Gradle targetUse the new lintFix Gradle task to apply all of the safe fixes suggested by the lint check directly to the source code. An example of a lint check that suggests a safe fix to apply is SyntheticAccessor . Metadata updatesVarious metadata, such as the service cast check, have been updated for lint checks to work with Android 9 (API level 28). Warning if running lint on a new variantLint now records which variant and version a baseline is recorded with, and lint warns you if you run it on a different variant than the one with which the baseline was created. Improvements to existing lint checksAndroid Studio 3.2 includes many improvements to existing lint checks. For example, the resource cycle checks now apply to additional resource types, and the translation detector can find missing translations on the fly, in the editor. Issue IDs more discoverableIssue IDs are now shown in more places now, including in the Inspection Results window. This makes it easier for you to find the information that you need to enable or disable specific checks through lintOptions in build.gradle . Data Binding V2Data Binding V2 is now enabled by default and is compatible with V1. This means that, if you have library dependencies that you compiled with V1, you can use them with projects using Data Binding V2. However, note that projects using V1 cannot consume dependencies that were compiled with V2. D8 desugaringIn Android Studio 3.1, we integrated the desugaring step into the D8 tool as an experimental feature, reducing overall build time. In Android Studio 3.2, desugaring with D8 is turned on by default. New code shrinkerR8 is a new tool for code shrinking and obfuscation that replaces ProGuard. You can start using the preview version of R8 by including the following in your project’s gradle.properties file: Changed default ABIs for multi-APKsWhen building multiple APKs that each target a different ABI, the plugin no longer generates APKs for the following ABIs by default: mips , mips64 , and armeabi . If you want to build APKs that target these ABIs, you must use NDK r16b or lower and specify the ABIs in your build.gradle file, as shown below: GroovyKotlinImproved editor features for CMake build filesIf you use CMake to add C and C++ code to your project, Android Studio now includes improved editor features to help you to edit your CMake build scripts, such as the following:
Navigate external header filesWhen using the Project window in previous versions of Android Studio, you could navigate and inspect only the header files that belong to libraries you build from a local project. With this release, you can now also view and inspect header files included with external C/C++ library dependencies that you import into your app project. If you already include C/C++ code and libraries in your project, open the Project window on the left side of the IDE by selecting View > Tool Windows > Project from the main menu and select Android from the drop-down menu. In the cpp directory, all headers that are within the scope of your app project are organized under the include node for each of your local C/C++ library dependencies, as shown below. Native multidex enabled by defaultPrevious versions of Android Studio enabled native multidex when deploying the debug version of an app to a device running Android API level 21 or higher. Now, whether you’re deploying to a device or building an APK for release, the Android plugin for Gradle enables native multidex for all modules that set minSdkVersion=21 or higher. AAPT2 moved to Google’s Maven repositoryBeginning with Android Studio 3.2, the source for AAPT2 (Android Asset Packaging Tool 2) is Google’s Maven repository. To use AAPT2, make sure that you have a google() dependency in your build.gradle file, as shown here: GroovyKotlinThe new version of AAPT2 fixes many issues, including improved handling of non-ASCII characters on Windows. Removal of configuration on demandThe Configure on demand preference has been removed from Android Studio. Android Studio no longer passes the —configure-on-demand argument to Gradle. ADB Connection AssistantThe new ADB Connection Assistant provides step-by-step instructions to help you set up and use a device over the Android Debug Bridge (ADB) connection. To start the assistant, choose Tools > Connection Assistant. The ADB Connection Assistant provides instructions, in-context controls, and a list of connected devices in a series of pages in the Assistant panel. Emulator improvementsYou can now save and load snapshots of an AVD (Android virtual device) at any time in the Android Emulator, making it fast and easy to return an emulated device to a known state for testing. When you edit an AVD using the AVD Manager, you can specify which AVD snapshot to load when the AVD starts. Controls for saving, loading, and managing AVD snapshots are now in the Snapshots tab in the emulator’s Extended controls window. For additional information on what’s new and changed in the Emulator, see the Emulator release notes. 3.1 (March 2018)Android Studio 3.1.0 is a major release that includes a variety of new features and improvements. This update to Android Studio 3.1 includes the following changes and fixes:
This update to Android Studio 3.1 includes fixes for the following bugs:
This update to Android Studio 3.1 includes fixes for the following bugs:
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.» 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» This update also includes changes that make running lint checks from Gradle much faster in some scenarios. This update to Android Studio 3.1 includes fixes for the following bugs: 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. Coding/IDEIntelliJ 2017.3.3The 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. For details, see the JetBrains release notes for IntelliJ IDEA versions 2017.2 and 2017.3, as well as the JetBrains release notes for bug-fix updates. SQL editing improvements with RoomWhen you use the Room database library, you can take advantage of several improvements to SQL editing:
For information on using SQL with Room, see Save data in a local database using Room. Updates to data bindingThis update includes several improvements for 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 ObservableField 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. Compiler and GradleD8 is the default DEX compilerThe D8 compiler is now used by default for generating DEX bytecode. This new DEX compiler brings with it several benefits, including the following:
You don’t need to make any changes to your code or your development workflow to get these benefits, unless you had previously manually disabled the D8 compiler. If you set android.enableD8 to false in your gradle.properties , either delete that flag or set it to true : Incremental desugaringFor 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. You can disable incremental desugaring by specifying the following in your project’s gradle.properties file: Simplified output windowThe Gradle Console has been replaced with the Build window, which has Sync and Build tabs. For details about how to use the new, simplified Build window, see Monitor the build process. Batch updates and indexing concurrencyThe Gradle sync and IDE indexing processes are now much more efficient, reducing time wasted on many redundant indexing operations. C++ and LLDBWe have made many quality and performance improvements in the coding, syncing, building, and debugging phases of C++ development. Improvements include the following: 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. KotlinKotlin upgraded to version 1.2.30Android Studio 3.1 includes Kotlin version 1.2.30. Kotlin code now analyzed with command-line lint checkFor each project that you would like to run lint on, Google’s Maven repository must be included in the top-level build.gradle file. The Maven repository is already included for projects created in Android Studio 3.0 and higher. Performance toolsSample native C++ processes with CPU ProfilerThe 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 dumpsThe 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. To search, click Filter in the top-right corner of the pane, type your query, and press Enter. Tip: You can also open the search field by pressing Control + F (Command + F on Mac). 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. For more information on filtering by method, class, or package name, see Record and inspect method traces. Request tab in the Network ProfilerThe 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 ProfilerAfter 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:
Layout InspectorThe Layout Inspector gained new features, including some functionality previously provided by the deprecated Hierarchy Viewer and Pixel Perfect tools:
Layout EditorThe Palette in the Layout Editor has received many improvements:
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 RunThe 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. EmulatorFor details of what’s new and changed in the emulator since Android Studio 3.0, see the Android Emulator release notes from version 27.0.2 through version 27.1.12. Major improvements include the following:
User interface and user experience improvementsMore tooltips, keyboard shortcuts, and helpful messagesWe 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. Android menu removed»>Tools > Android menu removedThe Tools > Android menu has been removed. Commands that were previously under this menu have been moved.
Device Monitor available from the command lineIn 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. 3.0 (October 2017)Android Studio 3.0.0 is a major release that includes a variety of new features and improvements. macOS users: If you are updating an older version of Android Studio, you may encounter an update error dialog that says «Some conflicts were found in the installation area». Simply ignore this error and click Cancel to resume the installation. 3.0.1 (November 2017) This is a minor update to Android Studio 3.0 that includes general bug fixes and performance improvements. Android Plugin for Gradle 3.0.0The 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:
Note: These improvements required significant changes that break some of the plugin’s behaviors, DSL, and APIs. Upgrading to version 3.0.0 might require changes to your build files and Gradle plugins. This version also includes the following:
For more information about what’s changed, see the Android Plugin for Gradle release notes. If you’re ready to upgrade to the new plugin, see Migrate to Android Plugin for Gradle 3.0.0. Kotlin supportAs 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. To get started, read how to add Kotlin to your project. Java 8 language features supportYou 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 ProfilerThe 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 ProfilerThe 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. For more information, see the CPU Profiler guide. Memory ProfilerThe 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. For more information, see the Memory Profiler guide. Network ProfilerThe 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. For more information, see the Network Profiler guide. APK profiling and debuggingAndroid 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 ExplorerThe 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. For more information, see the Device File Explorer guide. Instant Apps supportNew 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. For more information, see Android Instant Apps. Android Things modulesNew Android Things templates in the New Project and New Module wizards to help you start developing for Android-powered IOT devices. Adaptive Icons wizardImage 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. For more information, read about Adaptive Icons. Support for font resourcesTo 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 AssistantThe 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:
Android App Links AssistantThe 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 validatorAndroid 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. For example: Be sure to also include xmlns:tools=»http://schemas.android.com/tools» in the tag. 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 EditorThe Layout Editor has been updated with a number of enhancements, including the following:
Layout InspectorThe 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 AnalyzerYou 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:
Preview for D8 DEX compilerAndroid 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 gradle.properties file: Google’s Maven repositoryAndroid 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: Other changes
2.3 (March 2017)Android Studio 2.3.0 is primarily a bug fix and stability release, but it also includes a number of new features. This is a minor update to add support for Android O (API level 26). This is a minor update to Android Studio 2.3 for the following changes:
Also see corresponding updates for Android Emulator 26.0.3. 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 (see Issue #235879).
Changes
This release also includes a number of bug fixes. See all bug fixes in 2.3.0. Known issue: Some device manufacturers block apps from automatically launching after being installed on the device. When deploying your app to a physical device using Android Studio 2.3, this restriction breaks the intended behavior of Instant Run and causes the following error output: Error: Not found; no service started . To avoid this issue, either use the emulator or enable automatic launching for your app in your device’s settings. The procedure for doing this is different for each device, so check the instructions provided by the manufacturer. To learn more about this issue, see Issue #235879. 2.2 (September 2016)2.2.3 (December 2016) This is a minor update to Android Studio 2.2. It includes a bug fixes focused around gradle, the core IDE, and lint. Highlighted build changes:
2.2.2 (October 2016) This is a minor update to Android Studio 2.2. It includes a number of small changes and bug fixes, including:
2.2.1 (October 2016) This is a minor update to Android Studio 2.2. It includes several bug fixes and a new feature to enable extra logging to help us troubleshoot Instant Run issues—to help us improve Instant Run, please enable extra logging and report any issues.
Changes
2.1 (April 2016)The primary changes in this update provide support for development with the Android N Preview. This update adds compatibility with Gradle 2.14.1, which includes performance improvements, new features, and an important security fix. For more details, see the Gradle release notes. By default, new projects in Android Studio 2.1.3 use Gradle 2.14.1. For existing projects, the IDE prompts you to upgrade to Gradle 2.14.1 and Android plugin for Gradle 2.1.3, which is required when using Gradle 2.14.1 and higher. This update includes a number of small changes and bug fixes:
Security release update. 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. Note: Instant Run is disabled when you enable the Jack compiler because they currently are not compatible. 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. Other than the changes to support the N Preview, Android Studio 2.1 includes minor bug fixes and the following enhancements:
For other build enhancements, including incremental Java compilation and dexing-in-process,update your Android plugin for Gradle to version 2.1.0. 2.0 (April 2016)Note: If you are developing for the N Developer Preview, you should use Android Studio 2.1 Preview. Android Studio 2.0 does not support all the features required to target the N Preview. Instant Run:
Android Studio v1.2.2 (June 2015) Fixes and enhancements:
Android Studio v1.2.1 (May 2015) Fixes and enhancements:
Android Studio v1.2.0 (April 2015) Fixes and enhancements:
Android Studio v1.1.0 (February 2015) Various fixes and enhancements:
Android Studio v1.0.1 (December 2014) Various fixes and enhancements:
Android Studio v1.0 (December 2014) Initial release of Android Studio. Android Studio v0.8.14 (October 2014) See tools.android.com for a full list of changes. Android Studio v0.8.6 (August 2014) See tools.android.com for a full list of changes. Android Studio v0.8.0 (June 2014) Added support for Android Wear projects. See tools.android.com for a full list of changes. Android Studio v0.5.2 (May 2014) Android Studio v0.4.6 (March 2014) Android Studio v0.4.2 (Jan 2014) Android Studio v0.3.2 (Oct 2013) Android Studio v0.2.x (July 2013)
Caution: This new version is not backwards compatible. When opening a project that uses an older version of the plug-in, Studio will show an error stating Gradle project refresh failed. The updated Gradle plug-in includes the following changes:
All Gradle plugin release notes are available are here: http://tools.android.com/tech-docs/new-build-system.
Android Studio v0.1.x (May 2013)
Content and code samples on this page are subject to the licenses described in the Content License. Java is a registered trademark of Oracle and/or its affiliates. Источник |