The change is always constant and when it comes to the app development space, they are always better as they make the lives of the developers easier and delight the end-users with best-in-class apps built by the developers.
The scene resembles with Android Studio which Google has released in Google I/O 2018, that’s recently revised with the ample of improvements and a bundle of new features. The Android Studio 3.2 canary is considered as the stable release of the Android Studio beta version which makes it perfect for building the Android 9 Pie applications and generate app bundles with minimal work. The solid move with notable performance fixes, improved flexibility and added features for stability definitely encourage and help the android app developers to build better apps in a comparatively lesser time, and efforts.
When you are in the process of enabling the app-wide migration from Android design support library to the Material component app theme and library, get ready to have access to the new and updated widgets. BottomApp Bar, buttons, cards, text fields, new font styles and more names to few widgets that developers can use in the Android app development. Additionally, the support for material theming has also become available.
Android Studio 3.2 provides the built-in template that enhances the app with new slice provider APIs where the app content is surfaced in Google Search suggestions and the Google Assistant without actually opening the app. The attempt of tapping into Android AI space also ensure that developers are following the best practices while constructing the slices through new lint checks.
The IntelliJ IDEA is the core IDE of Android Studio 3.2 that’s updated with positive changes. It includes data flow analysis, user interface, version control, debugging, gradle, configuration, new inspections, and partial GIT commits.
Definitely, Kotlin offers protection against a NullPointerException that’s thrown in Java programming by baking non-nullable and nullable types into the type system. But, there was a pitfall that’s when Kotlin code calls in the APIs written in the Java, they depend on the nullability annotations in those APIs in order to illustrate the nullability and the return type of each parameter. The unannotated parameters weaken the Kotlin’s null-safety guarantee.
This is where the Android 9 pie SDK preserves the Kotlin’s null-safety guarantee feature by ensuring that nullability annotations contain in the most frequently used APIs. Android Studio 3.2 provides the support for the same Kotlin-friendly Android 9 Pie SDK.
For improving the speed and quality of testing, a few improvements are brought to the emulator that includes:
The instant apps aimed to reduce the size of the app as the app’s larger size leads to a few installs. This is why Android Studio 3.2 introduced an Android app bundle, which is a new app publishing format where the basic features get available to the users during install and the rest of the features delivered on demand using modularization.
Under the Android app bundle, a single build with complete code, resources, and native libraries is uploaded to the Google play store. Later, the dynamic delivery model of Google play store processes the app bundle to generate numerous APKs that are optimized for every user’s device configuration. In this manner, when the users download the app, they actually download only the code, and resources required to run the app, and thereafter, the parts of the application get available as the users need them.
The developers can build the code as an app bundle using Android Studio 3.2 or through the command line, and avail the smaller APKs created based on the screen density, language, and APIs without needing to make any changes to the app code.
Battery drainage is the major problem which often leads to the app uninstallation. In order to help the developers, energy profiler is added into the Android Studio performance profiler suite that allows the developers to understand and visualize the energy influence of the different parts of the app on the device. Also, the impact of background events and wakelocks can be analyzed through precise stats.
The early diagnosis of the app’s energy influence on the device helps in making the app energy-efficient and delight the end-user with optimum battery consumption.
Java bytecode shrinking and minification with ProGuard is obfuscating for the developers. This is why Android Studio introduced new R8 optimizer which replacing the ProGuard gets enabled by default. With Android Studio 3.2, the transition to R8 for shrinking Java bytecode into optimized Dex code is a beginning, and not suggested for the app publishing because it’s in the experimental stage.
In the event, the developer experience issues using the R8 optimizer, they can report a bug to the team and can disable the R8 optimizer from the projects.
Recording the CPU activities are essential while testing the app as they help in improving the overall efficacy of the processor, which in turn, provides a smooth experience to the users alongside preserve the battery life. With Debug API, when the app is deployed on the device, the CPU profiler automatically starts and stops recording CPU activities when the defined functions are called. The CPU recording helps in inspecting and analyzing the app’s CPU usage, function traces, system traces, and thread activity in the real-time.
Moreover, the CPU recording saves automatically as profiler data that are referred to as sessions which developers can import and export for later revisit and analysis.
The previous generations of Android devices won’t support the new Java language features that need new language APIs and bytecodes. The D8 desugaring in Android Studio has made it possible. During app development, the D8 desugaring that’s turned on by default, replace the new bytecodes and language APIs with previous generations of Android devices’ bytecodes and APIs.
It’s a panacea for the apps that are targeting the older Android devices and want the features to run impeccably on them as well.
Tracking how the app interacts with the system resources minutely is now feasible with system trace feature in the CPU profiler. By choosing the system trace recording configuration, the developers can examine carefully how the app interacts with the resources, inspect the timings and duration of the thread states, and identify the CPU bottlenecks across all the cores. Also, the custom trace events can be added for further analysis.
As a part of layout editor improvements, the in-built sample data feature in the Android Studio helps during app’s layout designing. It power-up the developers with the visualization capability that enables them to preview how the layout will appear using runtime data. The sample data can populate the multiple views such as TextViews, ImageViews, or RecyclerViews through a pop-up window in the layout editor.
The final stable release of the Android Studio 3.2 with a bunch of updates and new additions is finally out. What’s more? It’s available for download, which developers can leverage to build the outstanding apps in the least efforts and time. Let’s get started!
An enthusiastic Operations Manager at TopDevelopers.co, coordinating and managing the technical and functional areas. She is an adventure lover, passionate traveler, an admirer of nature, who believes that a cup of coffee is the prime source to feel rejuvenated. Researching and writing about technology keeps her boosted and enhances her professional journeying.