[go: up one dir, main page]

Release updates archive


Android Studio 3.5 Canary 3 is now available in the Canary and Dev channels.

If you have Android Studio set to receive updates on the Canary or Dev channel, you can get the update by choosing Help > Check for Updates (Android Studio > Check for Updates on macOS). Otherwise, you can download it here.

This update includes fixes for the following public issues:
For information on new features and changes in all preview builds of Android Studio 3.5, see the Android Studio Preview release notes. For details of bugs fixed in each preview release, see previous entries on this blog.

We greatly appreciate your bug reports, which help us to make Android Studio better. If you encounter a problem, let us know by reporting a bug. Note that you can also vote for an existing issue to indicate that you are also affected by it.


Android Studio 3.4 Beta 3 is now available in the Beta channel.

If you have Android Studio set up to receive updates on the Beta channel, you can get the update by choosing Help > Check for Updates (Android Studio > Check for Updates on macOS). Otherwise, you can download it here.

This update includes fixes for the following public issues:
  • Issue #123242448: Error: Program type already present: $r8$java8methods$utility$Integer$hashCode$II
  • Issue #122887884: VerifyError: register v2 has type Conflict but expected Integer
  • Issue #116774422: Add support for -checkdiscard for main-dex rules
  • Issue #122937067: transformClassesAndResourcesWithR8ForDebugAndroidTest fails when firebase-iid is a dependency
  • Issue #122823789: Error " Expected [!]interface|@interface|class|enu" on empty line
  • Issue #122883564: How to remove the smiley buttons on Android Studio 3.3
  • Issue #122881600: Layout preview zoom buttons broken in 3.3
  • Issue #123222392: Resource Explorer is not displayed if no android facet has been created before opening it
  • Issue #122883561: Android Studio 3.3 does not see classes generated into build/generated/source/kaptKotlin
For information on new features and changes in all preview builds of Android Studio 3.4, see the Android Studio Preview release notes. For details of bugs fixed in each preview release, see previous entries on this blog.

We greatly appreciate your bug reports, which help us to make Android Studio better. If you encounter a problem, let us know by reporting a bug. Note that you can also vote for an existing issue to indicate that you are also affected by it.

Emulator 28.0.23 is now available in the Stable channel. Change:

  • Host audio input disabled by default. A post on Reddit (https://www.reddit.com/r/androiddev/comments/aipv3i/til_the_android_emulator_responds_to_ok_google/) detailed how the guest Android OS would always be using the host microphone's audio, and thereby allowing "Ok Google" to work unexpectedly. We're quite sorry about this and will work with the Android team to make sure hotword detection is disabled in the system image as well. In the near term, to address this:
    • Actual host audio data is now squelched by default. When the guest uses the microphone, silence is passed over instead of the host's audio.
    • If it's desired to use the host audio data, there is now a toggle in the UI for that: Extended Controls > Microphone > "Virtual microphone uses host audio input"
    • The toggle reverts to disabling host audio whenever the emulator is restarted.
  • Note on CPU usage. In Project Marble investigations, we've noticed that high CPU usage on the emulator generally falls into the following categories:
    • At idle: Automatic app updates in Play Store images. We found that at random intervals, all apps installed get updated, even when the user is not logged in. During the process, CPU usage is driven to the number of cores x 100% (typically ~400%) in GMSCore and dex2oat. This can be mitigated by disabling auto app updates in the Play Store app.
    • At idle: Hotword detection. When on the home screen and without any app foregrounded, there can be a great deal of CPU usage (~25% with spikes to 50%). This is because of hotword detection always pinging the host. Note that this is not addressed by disabling host audio input, because the cost is dominated by the time taken to travel to the guest from the host. However, this can be mitigated by revoking microphone permissions for the Google app.
    • While active, sometimes at idle: Animations. The third source of high CPU usage is animations. We have found that by optimizing the graphics driver stack we can also reduce CPU usage here even when the emulator is not idle. We will be rolling out graphics driver optimizations incrementally as part of Project Marble.

Emulator 28.1.4 is now available in the Canary and Dev channels. Changes:
  • Host audio input disabled by default. A post on Reddit (https://www.reddit.com/r/androiddev/comments/aipv3i/til_the_android_emulator_responds_to_ok_google/) detailed how the guest Android OS would always be using the host microphone's audio, and thereby allowing "Ok Google" to work unexpectedly. We're quite sorry about this and will work with the Android team to make sure hotword detection is disabled in the system image as well. In the near term, to address this:
    • Actual host audio data is now squelched by default. When the guest uses the microphone, silence is passed over instead of the host's audio.
    • If it's desired to use the host audio data, there is now a toggle in the UI for that: Extended Controls > Microphone > "Virtual headset uses host audio input". The toggle reverts to disabling host audio whenever the emulator is restarted.
  • Note on CPU usage. In Project Marble investigations, we've noticed that high CPU usage on the emulator generally falls into the following categories:
    • At idle: Automatic app updates in Play Store images. We found that at random intervals, all apps installed get updated, even when the user is not logged in. During the process, CPU usage is driven to the number of cores x 100% (typically ~400%) in GMSCore and dex2oat. This can be mitigated by disabling auto app updates in the Play Store app.
    • At idle: Hotword detection. When on the home screen and without any app foregrounded, there can be a great deal of CPU usage (~25% with spikes to 50%). This is because of hotword detection always pinging the host. Note that this is not addressed by disabling host audio input, because the cost is dominated by the time taken to travel to the guest from the host, not the use of the host's audio itself. This can be mitigated by revoking microphone permissions for the Google app.
    • While active, sometimes at idle: Animations. The third source of high CPU usage is animations. We have found that by optimizing the graphics driver stack we can also reduce CPU usage here even when the emulator is not idle. We will be rolling out graphics driver optimizations incrementally as part of Project Marble.
    • While active: Video playback. Another source of high CPU usage is when video is playing. We are working to reduce the overhead of video decoding.
    • We welcome any further feedback on emulator resource usage and are working with teams in Android to better address the issues with app updates and hotword detection.


Android Studio 3.5 Canary 2 is now available in the Canary and Dev channels.

If you have Android Studio set to receive updates on the Canary or Dev channel, you can get the update by choosing Help > Check for Updates (Android Studio > Check for Updates on macOS). Otherwise, you can download it here.

This update includes the following enhancements:

General fixes

This update includes fixes for the following public issues:

Known issues

This update includes the following known issues:
  • Only a single destination destination can be created through the add destination menu without closing and reopening the tab. We expect this to be resolved in the next 3.5 Canary release.
  • In ConstraintLayout, widgets constraints will not be able to auto-connect in both layout design view and preview.
For information on new features and changes in all preview builds of Android Studio 3.5, see the Android Studio Preview release notes. For details of bugs fixed in each preview release, see previous entries on this blog.

We greatly appreciate your bug reports, which help us to make Android Studio better. If you encounter a problem, let us know by reporting a bug. Note that you can also vote for an existing issue to indicate that you are also affected by it.


Android Studio 3.4 Beta 2 is now available in the Beta channel.

If you have Android Studio set up to receive updates on the Beta channel, you can get the update by choosing Help > Check for Updates (Android Studio > Check for Updates on macOS). Otherwise, you can download it here.

This update includes fixes for the following public issues:
For information on new features and changes in all preview builds of Android Studio 3.4, see the Android Studio Preview release notes. For details of bugs fixed in each preview release, see previous entries on this blog.

We greatly appreciate your bug reports, which help us to make Android Studio better. If you encounter a problem, let us know by reporting a bug. Note that you can also vote for an existing issue to indicate that you are also affected by it.

Emulator 28.1.3 is now available in the Canary and Dev channels. Changes:
  • Enhanced Bugreport Info. In Project Marble, we want to do better to hunt down emulator issues that are due to specific hardware and AVD setups. To address this, when sending a bug report through the emulator Bugreport UI, the AVD config and CPU/GPU/RAM-specific specs are now automatically inlined. The emulator bug report information is also available from the console (assuming console auth token is used):
    • telnet localhost 5554
    • avd bugreport
  • Performance Stats Page. In Project Marble, we're working to reduce emulator CPU/RAM usage. As part of this effort, we've added a page to the Extended Controls panel, "Performance Stats", that shows the current CPU usage of the QEMU main loop and vCPU threads. This helps make excessive emulator CPU usage more visible while also giving app developers a quick way to see overall Android CPU usage. As Project Marble proceeds, we will add more real-time metrics to this page.
    • If you are seeing excessive levels of CPU usage from the emulator, especially when the emulator should be in an idle state such as on the home screen, please file a bug with a screenshot of the Performance Stats page, and also try to include the output of adb shell top.


Android Studio 3.5 Canary 1 is now available in the Canary and Dev channels.

If you have Android Studio set to receive updates on the Canary or Dev channel, you can get the update by choosing Help > Check for Updates (Android Studio > Check for Updates on macOS). Otherwise, you can download it here.

Apply Changes

Canary 1 of Android Studio 3.5 introduces a preview of Apply Changes, which replaces Instant Run. We know that Instant Run has in the past caused issues for many of you, and the feature hasn’t lived up to our quality standards. Instant Run rewrote the bytecode of your APK at build time to inject hooks to replace classes on the fly. For simple apps, this was largely fine, but for more complex apps, this could result in longer build times or head-scratching errors caused by conflicts between your app and Instant Run’s build process.

We’ve taken a step back and decided to rewrite it from the ground up. As a result, Apply Changes no longer modifies your APK during builds. Instead, we rely on runtime instrumentation that is supported in the Android platform in 8.0 and newer devices to redefine classes on the fly.

We’ve also reacted to feedback around the unpredictability and inconsistency in behavior of the Instant Run button that would automatically decide whether or not to restart your app or activity if necessary; we now explicitly prompt you if we detect that your change is not compatible with Apply Changes.

It’s still early days for this feature, but we’d love to hear any feedback you may have. In particular, if you had issues using Instant Run in the past, please give Apply Changes a try and let us know what you think. If you encounter any issues while using it, please file a bug and attach your corresponding idea.log file.

We’ll be communicating more details about Apply Changes and what we’ve done under the hood soon.

To use Apply Changes:
  • If you want to apply only your code changes without restarting the current activity, click Apply Code Changes Apply Code Changes icon or press Ctrl+Alt+F10 (or Command+Shift+Ctrl+R on macOS).
  • If you want to apply your resource and code changes without restarting your app, click Apply Changes Apply Changes icon or press Ctrl+F10 (or Command+Ctrl+R on macOS).

Limitations

  • Apply Changes is only compatible with devices running API 26 (Android 8.0 / O) or later.
  • Like Instant Run, certain changes cannot be applied unless the app is restarted, including:
    • Adding or deleting a class, method, or field
    • Changes in the manifest
    • Changing method signatures
    • Changing modifiers of methods or classes
    • Renaming classes
    • Changing class inheritance
    • Adding or removing a resource

Known issues

  • The speed of deploying using Apply Changes may be currently slower than Instant Run. Our initial priority was stability of the feature, and we’ll be improving the performance throughout the coming months in Canary.
  • Apply Changes while debugging is currently only supported on API 28 (Android 9.0 / P).
  • You may see unexpected behavior if you use custom classloaders other than the system and application thread context ones to load classes.
  • Apply Changes will not work on x86_64 emulator images.

General fixes

This update also includes fixes for the following public issues:


Android Studio 3.4 Beta 1 is now available in the Beta channel.

If you have Android Studio set up to receive updates on the Beta channel, you can get the update by choosing Help > Check for Updates (Android Studio > Check for Updates on Mac). Otherwise, you can download it here.

This update includes fixes for several bugs, including the following:


For information on new features and changes in all preview builds of Android Studio 3.4, see the Android Studio Preview release notes. For details of bugs fixed in each preview release, see previous entries on this blog.

We greatly appreciate your bug reports, which help us to make Android Studio better. If you encounter a problem, let us know by reporting a bug. Note that you can also vote for an existing issue to indicate that you are also affected by it.

Android Studio 3.3 is now available in the Stable channel. You can download it here.

For an overview of what's new in this release, see either the release notes or this blog post on the Android Developers blog.

Emulator 28.1.2 is now available in the Canary and Dev channels. Change:
  • Fixed out of bounds memory access when processing compressed textures.

Emulator 28.1.1 is now available in the Canary and Dev channels. Change:
  • Fixed issue where the pulseaudio backend on Linux would spin and take up an entire CPU core in some situations, such as during emulator pause.


Android Studio 3.4 Canary 10 is now available in the Canary and Dev channels.

If you have Android Studio set to receive updates on the Canary or Dev channel, you can get the update by choosing Help > Check for Updates (Android Studio > Check for Updates on Mac). Otherwise, you can download it here.

This update includes fixes for several bugs, including the following:
  • Issue#118776504: Avoid manifest merger cache misses
  • Issue#116361869: AS Error: Progress subrange out of bounds
  • Issue#80130688: Search Everywhere for strings opens the R.java file instead of opening the string.xml
  • Issue#112715908: Please put back "Build" button to the TouchBar like it is in IntelliJ Idea, or give users ability to customize it.
  • Issue#37150511: Data binding variable tag auto-complete does not include closing tag
  • Issue#120797515: R classes are not resolved in newly created projects (again)
  • Issue#118605194: Studio connection to adb server fails on Android Studio 3.2.1


For information on new features and changes in previous releases of Android Studio, see the Android Studio Preview release notes. For details of bugs fixed in each preview release, see previous entries on this blog.

We greatly appreciate your bug reports, which help us to make Android Studio better. If you encounter a problem, let us know by reporting a bug. Note that you can also vote for an existing issue to indicate that you are also affected by it.