Recently the release of the new beta version of Android Studio 3.5 has been announced, which is the culmination of work in offering a version focused on quality and stability of functions.
This beta release of Android Studio 3.5 addresses many changes in each of Project Marble's main focus areas in which the work and the new infrastructure incorporated in Project Marble are improved for long-term quality monitoring.
Table of Contents
One the main complaints from developers on Android Studio is the slowness the IDE runs over time.
Many times, this experience is due to unexpected pressure on memory or IDE memory leaks.
Google was interested in this area and as part of the Marble project, the publisher handled over 33 major memory leaks.
To identify leaks, Google now measures out of memory exceptions on an internal dashboard on an ongoing basis for those who have chosen to share data with him, allowing him to focus and solve the toughest problems.
As of Android Studio 3.5, when the IDE runs out of memory, Google captures high-level statistics on the heap size and the dominant objects in the segment.
With this data, the IDE can do two things: suggest better memory configurations and provide a more in-depth analysis of memory.
Automatically recommended memory settings
By default, Android Studio has a maximum memory size of 1.2 GB. For those of you who have large projects, this size may not be enough.
Even if you have a machine with a large amount of RAM, the IDE will not exceed this value. With Android Studio 3.5, the IDE will recognize when a project of application you need more RAM in a computer with higher RAM capacity and it will warn you of increasing heap size in a notification.
You can also make adjustments in the new settings panel under Appearance and Behavior → Memory Settings.
Ease of Reporting Memory Issues with Memory Heap Analysis
Sometimes it can be difficult to catch and reproduce memory problems to report to the Android Studio team.
To solve this problem, Android Studio 3.5 allows you to activate a stack dump (Help → Analyze Memory Usage) that the IDE removes locally for personal data, analysis, and reporting.
User interface freezing is another common problem that has been reported to Google. In Android Studio 3.5, the team has expanded the infrastructure of the Intellij platform underlying and now measures UI thread stops that last longer than a few moments.
For example, when developing Project Marble, it was found in their data that XML editing was significantly slower in the IDE. Using this data point, you optimized XML writing and achieved significantly better performance in Android Studio 3.5.
Being able to quickly modify and view code changes without restarting the application is great for developing applications.
Two years ago, the instant-run feature was Google's attempt in that direction, but ultimately it fell short of expectations.
During the Marble project period, the team decided to modify the architecture and implement a more practical approach in Android Studio 3.5 called Apply Changes.
Apply Changes uses the APIs specific to the Android Oreo platform and later to ensure reliable and consistent behavior (unlike Instant Run, Apply Changes does not change the APK).
C ++ enhancements
Support for the C ++ project was also a priority area for the Marble project. CMake creations are now up to 25% faster for large projects, since the IDE now.
In addition, an improved single version user interface panel can now be found that allows you to specify ABI targets separately.
Finally, Android Studio 3.5 allows you to use multiple versions in parallel of the Android NDK in the build.gradle file. This should allow for more playable versions and mitigate incompatibilities between the NDK versions and the Android Gradle plugin.