As I said earlier this month, the Internet has dramatically transformed the media environment and how we all access information. We know that for news media companies, particularly smaller and regional companies, the transition to digital has increased competition, increased unbundling, and reduced classified and circulation revenue streams. We all care about the importance of a vigorous news industry as it makes progress in transitioning to a digital environment.
At Google, we are actively working on solutions that we believe can help publishers derive more revenue from their content. We've heard the feedback from the Government, regulators, and industry and are in discussions to license and pay to display or provide full access to news content beyond simple snippets and links.
But as we move forward, it’s important that we have a discussion based on facts. There's been some recent talk about the profitability of online news in Australia, including the suggestion that online platforms should be forced to pay publishers AU$600 million or more every year. This is based on an assertion that news accounts for 10 percent of queries and generates about 10 percent of our gross revenues in Australia.
We all agree that high-quality news has great social value, but we need to understand the economics as well. We would like to provide some facts and figures to address inaccurate claims about the economics of links to news content on Google Search, as well as highlight our ongoing commitment to work with media companies to increase the value they get from their news content.
First, the direct economic value Google gets from News content in Search is very small. We don’t run ads on Google News or the news results tab on Google Search. And looking at our overall business, Google last year generated approximately AU$10 million in revenue—not profit—from clicks on ads against possible news-related queries in Australia. The bulk of our revenue comes not from news queries, but from queries with commercial intent, as when someone searches for 'running shoes' and then clicks on an ad. Second, the indirect economic value Google gets from News in Google Search is also very small. Users come to Google for many things, whether it's 'how to' videos, recipes, sport, weather, outfit ideas, or home insurance. News is a very small part of this content, and represents only a tiny number of queries — in the last year, news-related queries accounted for just over 1 percent of total queries on Google Search in Australia. The ‘indirect value’ argument also overestimates the relevance of a small fraction of hard-to-monetise queries and fails to consider that 'indirect value' cuts both ways — Google Search encourages lots of traffic to news publishers from users who weren’t originally looking for news content at all. As an example, a search for 'Melbourne' would return results like tourism links, maps, local government information, news headlines, and more. Third, there is already a substantial two-way value exchange. As the ACCC Concepts Paper acknowledges, you need to look at both sides of the value equation. To put it plainly, a lot of people (Australians and beyond) click from Google through to Australian news websites, which gives publishers the chance to make money by showing them ads or turning them into paying subscribers. In 2018 Google Search accounted for 3.44 billion visits to large and small Australian news publishers for free. A study by Deloitte in Europe valued each visit between €0.04-0.06 or around AU$0.063—which equates to approximately AU$218 million in value going to Australian publishers each year from Google traffic alone. In summary, news media businesses are likely to derive far more cross-content benefit than they generate. Fourth, news content is important to ensure access to quality information. The value of news to Google isn’t about economics, it is about its role in educating and informing Australians, as well as its importance in strengthening democracy. Publishers directly control how they participate in Google Search - whether through a long or short snippet, a photo, or not at all. We are always looking for new ways to support journalism–not because we make money from it, but because we believe that everyone benefits from its contributions to society and its critical role in fighting misinformation. We have for years partnered with news organisations and paid to host content where we show it in full (for example, when we show weather feeds or licensed sports scores on a search results page). We recognise the importance of news and are committed to finding new ways to support publishers. The mandatory code will have important consequences for Australians, including how and which types of news they can search and discover through Google. As we work with the ACCC and Government, as well as with media companies to build out new solutions to derive additional revenue, it’s important to base decisions on facts, not inaccurate numbers and unfounded assertions. Posted by Mel Silva, Managing Director and VP, Google Australia
As families continue to face the new realities of juggling work, school, and play at home, online tools can make the adjustment a bit smoother. We’re all spending more of our time on our devices, and Google has many products and programs to help families create healthy digital habits and help them stay safe online. From internet safety resources to parental controls, our products help families find and manage quality content and apps, tools for distance learning and virtual field trips. And behind the scenes, our teams work every day to protect our users and make our products safer for everyone.
Helping families and educators with distance learning resources
Families and educators are relying on digital platforms to provide access to online learning and educational tools during COVID-19. Our G Suite for Education tools can be used from any device and help more than 120 million teachers and students around the world work and learn together. To support distance learning, Google is offering premium Meet video conferencing features free for schools through September 30, 2020.
In March, we launched a new Teach from Home hub for teachers with information and resources so that they can keep teaching, even as many schools closed due to COVID-19. This hub includes tutorials, step-by-step guides, and inspiration for distance learning during school closures.
Our teams are working to provide opportunities for families to learn together at home, including the new YouTube Learn at Home families site, virtual field trips and explorations through Google Arts & Culture, and the global roll-out of our AI-enabled reading app, Read Along.
Helping families discover quality content for kids
Even outside school hours and virtual classrooms, kids are spending more time online so we’re helping parents find quality, age-appropriate content. The new Kids tab on Google Play makes it easier for parents to find enriching and engaging apps for their children. Teacher Approved apps must meet Play’s Designed for Families security and privacy requirements, and are reviewed and curated by teachers to identify fun and inspiring apps kids will love, with or without an educational focus. The Teacher Approved program launched in the U.S. in early April, and will be rolling out globally later in the year.
offers a more contained environment for kids to explore their interests and curiosity. The app empowers parents to customize their child’s experience, including the content available to watch and how long they can use the app. Kids can access a range of helpful playlists on YouTube Kids right now, such as Healthy Habits, Learning and Indoor Activities. YouTube Kids is available in 79 countries on desktop, mobile and Smart TVs.
Teaching kids how to be safe online and build healthy tech habits
We’ve continued to help families navigate technology, from helping parents set digital ground rules to providing resources for teaching kids how to be safer online.
The Family Link app from Google helps parents create healthy habits for their child or teen as they learn, play, and explore online. Parents can keep an eye on screen time with daily limits and a bedtime on Android and Chromebook devices. They can also help guide their child to better content with download approvals, per-app time limits and content filters. And SafeSearch is on by default for supervised child accounts, helping to filter explicit search results.
Be Internet Awesome teaches kids about digital literacy and online safety. The program offers free resources for educators and families to learn about these topics with a family guide and pledge, online safety coloring book, and simple online tips. The program features an interactive game, Interland, that reinforces internet safety concepts for kids in a fun and engaging way. It’s available globally in over 28 countries and 15 languages.
We’ve also partnered with other tech companies and The Global Partnership to End Violence Against Children (EVAC) to create a Public Service Announcement that helps parents keep their children safe online across platforms by providing resources on how to talk to kids about online risks, stay involved in their digital world, know who they’re connecting with, and use privacy and security settings. EVAC’s site dedicated to these resources includes information on how to block and report suspicious individuals to Google and other tech companies. We’re also working with industry partners, child protection nonprofits, and experts on other initiatives to improve child safety across the broader digital ecosystem.
Online classes, quality content, and collaboration tools are important ways to stay connected from home, and we’re proud of the work our Security and Trust & Safety teams do to ensure families can enjoy these, and all Google products, more safely.
The Dev channel has been updated to 85.0.4158.1/.4 for Windows &Mac, 84.0.4158.4 for Linux platforms.
A partial list of changes is available in the log. Interested in switching release channels? Find out how. If you find a new issue, please let us know by filing a bug. The community help forum is also a great place to reach out for help or learn about common issues.
Posted by Archit Sharma, AI Resident, Google Research
Recent research has demonstrated that supervisedreinforcement learning (RL) is capable of going beyond simulation scenarios to synthesize complex behaviors in the real world, such as grasping arbitrary objects or learning agile locomotion. However, the limitations of teaching an agent to perform complex behaviors using well-designed task-specific reward functions are also becoming apparent. Designing reward functions can require significant engineering effort, which becomes untenable for a large number of tasks. For many practical scenarios, designing a reward function can be complicated, for example, requiring additional instrumentation for the environment (e.g., sensors to detect the orientation of doors) or manual-labelling of “goal” states. Considering that the ability to generate complex behaviors is limited by this form of reward-engineering, unsupervised learning presents itself as an interesting direction for RL.
In supervised RL, the extrinsic reward function from the environment guides the agent towards the desired behaviors, reinforcing the actions which bring the desired changes in the environment. With unsupervised RL, the agent uses an intrinsic reward function (such as curiosity to try different things in the environment) to generate its own training signals to acquire a broad set of task-agnostic behaviors. The intrinsic reward functions can bypass the problems of the engineering extrinsic reward functions, while being generic and broadly applicable to several agents and problems without any additional design. While much researchhas recentlyfocused on different approaches to unsupervised reinforcement learning, it is still a severely under-constrained problem — without the guidance of rewards from the environment, it can be hard to learn behaviors which will be useful. Are there meaningful properties of the agent-environment interaction that can help discover better behaviors (“skills”) for the agents?
In this post, we present two recent publications that develop novel unsupervised RL methods for skill discovery. In “Dynamics-Aware Unsupervised Discovery of Skills” (DADS), we introduce the notion of “predictability” to the optimization objective for unsupervised learning. In this work we posit that a fundamental attribute of skills is that they bring about a predictable change in the environment. We capture this idea in our unsupervised skill discovery algorithm, and show applicability in a broad range of simulated robotic setups. In our follow-up work “Emergent Real-World Robotic Skills via Unsupervised Off-Policy Reinforcement Learning”, we improve the sample-efficiency of DADS to demonstrate that unsupervised skill discovery is feasible in the real world.
The behavior on the left is random and unpredictable, while the behavior on the right demonstrates systematic motion with predictable changes in the environment. Our goal is to learn potentially useful behaviors such as those on the right, without engineered reward functions.
Overview of DADS DADS designs an intrinsic reward function that encourages discovery of “predictable” and “diverse” skills. The intrinsic reward function is high if (a) the changes in the environment are different for different skills (encouraging diversity) and (b) changes in the environment for a given skill are predictable (predictability). Since DADS does not obtain any rewards from the environment, optimizing the skills to be diverse enables the agent to capture as many potentially useful behaviors as possible.
In order to determine if a skill is predictable, we train another neural network, called the skill-dynamics network, to predict the changes in the environment state when given the current state and the skill being executed. The better the skill-dynamics network can predict the change of state in the environment, the more “predictable” the skill is. The intrinsic reward defined by DADS can be maximized using any conventional reinforcement learning algorithm.
An overview of DADS.
The algorithm enables several different agents to discover predictable skills purely from reward-free interaction with the environment. DADS, unlike prior work, can scale to high-dimensional continuous control environments such as Humanoid, a simulated bipedal robot. Since DADS is environment agnostic, it can be applied to both locomotion and manipulation oriented environments. We show some of the skills discovered by different continuous control agents.
Ant discovers galloping (top left) and skipping (bottom left), Humanoid discovers different locomotive gaits (middle, sped up 2x), and D’Claw from ROBEL (right) discovers different ways to rotate an object, all using DADS. More sample videos are available here.
Model-Based Control Using Skill-Dynamics Not only does DADS enable the discovery of predictable and potentially useful skills, it allows for an efficient approach to apply the learned skills to downstream tasks. We can leverage the learned skill-dynamics to predict the state-transitions for each skill. The predicted state-transitions can be chained together to simulate the complete trajectory of states for any learned skill without executing it in the environment. Therefore, we can simulate the trajectory for different skills and choose the skill which gets the highest reward for the given task. The model-based planning approach described here can be very sample-efficient as no additional training is required for the skills. This is a significant step up from the prior approaches, which require additional training on the environment to combine the learned skills.
Using the skills discovered by the agents, we can traverse an arbitrary sequence of checkpoints without any additional training. The plot on the right follows the agent’s traversal from one checkpoint to another.
Real-World Results The demonstration of unsupervised learning in real-world robotics has been fairly limited, with results being restricted to simulation environments. In “Emergent Real-World Robotic Skills via Unsupervised Off-Policy Reinforcement Learning”, we develop a sample-efficient version of our earlier algorithm, called off-DADS, through algorithmic and systematic improvements in an off-policy learning setup. Off-policy learning enables the use of data collected from different policies to improve the current policy. In particular, reusing the previously collected data can dramatically improve the sample-efficiency of reinforcement learning algorithms. Leveraging the improvement from off-policy learning, we train D’Kitty (a quadruped from ROBEL) in the real-world starting from random policy initialization without any rewards from the environment or hand-crafted exploration strategies. We observe the emergence of complex behaviors with diverse gaits and directions by optimizing the intrinsic reward defined by DADS.
Using off-DADS, we train D’Kitty from ROBEL to acquire diverse locomotion behaviors, which can then be used for goal-navigation through model-based control.
Future Work We have contributed a novel unsupervised skill discovery algorithm with broad applicability that is feasible to be executed in the real-world. This work provides a foundation for future work, where robots can solve a broad range of tasks with minimal human effort. One possibility is to study the relationship between the state-representation and the skills discovered by DADS in order to learn a state-representation that encourages discovery of skills for a known distribution of downstream tasks. Another interesting direction for exploration is provided by the formulation of skill-dynamics that separates high-level planning and low-level control, and study its general applicability to reinforcement learning problems.
Acknowledgements We would like to thank our coauthors, Michael Ahn, Sergey Levine, Vikash Kumar, Shixiang Gu and Karol Hausman. We would also like to acknowledge the support and feedback provided by various members of the Google Brain team and the Robotics at Google team.
We're back with another update in our Stadia Savepoint series—here's what happened in May. This month, our community started playing Embr, Jotun: Valhalla Edition, Sundered: Eldritch Edition, DOOM 64, and many other games that arrived for purchase on the Stadia store. We also announced new games coming this year, including The Elder Scrolls Online on June 16th, PGA TOUR 2K21 on August 21st, and Assassin’s Creed Valhalla in Holiday 2020.
On June 3rd, we'll update our current Stadia Pro offer from two free months to one free month for new users. So if you haven’t already signed up, head over to Stadia.com before June 3rd to claim your two free months of Stadia Pro.
Stadia Pro updates
Get six new games for free with Stadia Pro in June: Get Packed, Little Nightmares, Power Rangers: Battle for the Grid, SUPERHOT, Panzer Dragoon Remake, and The Elder Scrolls Online (June 16).
12 existing games still available to add to your Stadia Pro collection: Destiny 2: The Collection, PLAYERUNKNOWN’S BATTLEGROUNDS, GRID, Serious Sam Collection, Spitlings, Stacks On Stacks (On Stacks), SteamWorld Quest: Hand of Gilgamech, SteamWorld Dig 2, SteamWorld Heist, Zombie Army 4: Dead War, The Turing Test, and GYLT.
Ongoing discounts for Stadia Pro subscribers: Check out the web or mobile Stadia store for the latest.
The Dev channel is being updated to 84.0.4147.21 (Platform version: 13099.14.0) for most Chrome OS devices. This build contains a number of bug fixes and security updates. Systems will be receiving updates over the next several days.
If you find new issues, please let us know by visiting our forum or filing a bug. Interested in switching channels? Find out how. You can submit feedback using 'Report an issue...' in the Chrome menu (3 vertical dots in the upper right corner of the browser).
COVID-19 has upended the news industry, hitting local news particularly hard with job losses, furloughs, cutbacks and even closure. To provide some help, last month the Google News Initiative launched the Journalism Emergency Relief Fund. Today we’re announcing that more than 5,300 small and medium local newsrooms around the world will receive funding ranging from $5,000 - $30,000. Applications covering a number of publications under one organization will be capped at $85,000. As we await a final funding tally, we expect to spend tens of millions of dollars through the Journalism Emergency Relief Fund.
In just two weeks we received more than 12,000 applications from 140 eligible countries, with 90 percent of those applications from newsrooms of less than 26 journalists. We reviewed each application against a set of criteria: publications operating locally, serving a specific geographic community and using the money to continue doing so. More than 300 Googlers joined forces to check the submissions and across the world we held dozens of webinars and office hours to answer questions and guide people through the process.
About 50 percent of the applications didn’t meet the publicly established criteria. Reasons varied from not producing core news (i.e., lifestyle or sports news) to employing less than 2 journalists. The goal was to be as inclusive as possible while sticking to the eligibility rules. We still have a small percentage of projects to review but below our teams have provided a snapshot of some of the recipients and how they plan to spend the funding.
Canada: As we read their stories, we were struck by the number of news organizations in the U.S. and Canada keeping their communities informed with fewer than 10 full-time employees. As small businesses, many applicants are trying to figure out how to keep the lights on, literally and figuratively. They’re passionate about providing high-quality journalism, and it’s an honor to support them during such a critical point:
The Discourse Cowichanserves a rural region on Vancouver Island, B.C., including Cowichan Tribes, the largest First Nation in the region. It will increase reporting capacity to cover the impact of COVID on vulnerable communities. This week also marks the launch of Indiegraf, a network of journalist-entrepreneurs and independently-owned digital publishers sharing resources to serve their local communities sustainably. Google News Initiative provided seed funding to the network and several of its members received support through JERF. "Entrepreneurship and innovation are urgently needed to fill gaps in local news that have widened as a result of COVID-19,” said Erin Millar, co-founder and CEO of Indiegraf and The Discourse. “I'm grateful to Google for recognizing the essential role that small, digital publishers and startups play in serving local communities."
CEO Jeff Elgie, who oversees Ontario-based Village Media, says: “Google has been an incredibly important partner in the development of our business. From their business productivity tools to platforms that run everything from our analytics to our ads, we simply couldn’t do it without them. To see them launch the Journalism Emergency Relief Fund in these difficult times further proves to me their sincere interest in supporting the industry.”
Europe, the Middle East, and Africa: Mark Peters, Director, EMEA Partnerships We received applications from 88 countries, and so far we’ve offered funding to more than 1550 publishers, each demonstrating the diversity and strength of local communities and the journalists that continue to serve them through the crisis.
Mediacités’ (France) fact-checking tool “Veracités” has seen a huge increase in questions from local readers but can currently only answer 10 percent of them. The fund will allow them to invest in the tool and answer more peoples’ questions.
Eco di Bergamo (Italy) Data journalism techniques have helped local communities understand what’s happening in the Bergamo area which suffered heavy losses during the crisis. Funding will be used to increase investment in new means of production (video, audio, photo, data) to give readers a deeper more analytical knowledge of what’s happening in their territory.
Bihoreanul (Romania) intends to provide information necessary to fight the spread of COVID-19, and talk about the consequences of the pandemic to its readers.
Rochdale online (UK) will keep their journalists working during the crisis. They’ll focus on helping the community understand the latest advice on COVID-19 and promote the work of local businesses, charities and volunteers.
Baraka FM (Kenya) will focus on on-air campaigns to encourage listeners to prevent the spread of COVID-19. They’ll buy personal protective equipment to keep reporters safe when conducting interviews and give emergency stipends to reporters who’ve traveled to cover special reports.
Asia Pacific: Rohan Tiwary, Head of Media, News & Entertainment Partnerships,APAC Asia Pacific has dealt with COVID-19 for longer than any other region—since January, in some places—so we know how urgently this support is needed. When we looked at the more than 2,000 applications, we considered Asia Pacific’s enormous diversity—not just across ethnicities, religions and languages, but also in terms of the news landscape. We’re supporting more than 800 news organizations in 30 countries and territories, a few examples below.
The Murray Pioneer (Australia) will set up two online meeting rooms so they can communicate with remote journalists, local governments and interest groups. Their advertising department will also maintain virtual contact with clients and coordinate campaigns more effectively.
Saitama Shimbun (Japan), a 75-year old newspaper covering the Saitama prefecture, plans to detail the impact of the pandemic to preserve a record for future generations.
Suara Surabaya (Indonesia) goes beyond being a news portal, allowing readers to submit complaints like a public service hotline and working with stakeholders to find solutions. They will use funding to bridge cash flow impacted by COVID-19.
Minnambalam (India), a Tamil language publication from Chennai, will be able to keep their newsroom going, the funding giving them the confidence and financial support needed to carry on with their work.
East Mojo (India), a digital-only news organization, plans to allow journalists to go to remote parts of Northern India to shed light on the impact of COVID-19 once the country’s lockdown is lifted.
Latin America: Camilo Gomez - Online Partnerships Group Lead, LATAM The process behind reviewing each of the 2,000+ applications in the region was an opportunity to connect with the amazing journalism and stories that support local communities.
Agencia Amazonia (Brazil) will support Project #CoberturaCovid19Amazônia, which investigates the socio-cultural impact of the coronavirus on traditional populations in the Amazon region, giving priority to stories about indigenous, quilombolas and riverside dwellers.
El Colombiano (Colombia) will maintain the quality and resources that characterize the journalism of Medellin newspaper (the second most important city in the country).
La Discusion (Chile) will help finance an integrated radio-digital platform, developing informative, interpretive and opinion content across a variety of subjects like health, minorities, education, and sports etc that have been affected by COVID-19.
El Imparcial (México) will drive their strategic business plan, which includes improving multimedia content, newsroom training and growing their community.
The Chrome team is excited to announce the promotion of Chrome 84 to the beta channel for Windows, Mac and Linux. Chrome 84.0.4147.30 contains our usual under-the-hood performance and stability tweaks, but there are also some cool new features to explore - please head to the Chromium blog to learn more!
A full list of changes in this build is available in the log. Interested in switching release channels? Find out how here. If you find a new issue, please let us know by filing a bug. The community help forum is also a great place to reach out for help or learn about common issues.
During these uncertain times, we’re humbled by the many developers around the world who are finding ways to keep doing what they do best—create amazing apps for Android. Whether you’re working from your kitchen table on a laptop or from a home office, you need tools that keep up with you. Android Studio 4.0 is the result of our drive to bring you new and improved tools for coding smarter, building faster, and designing the apps your users depend on, and it’s now available on the stable channel.
Some highlights of Android Studio 4.0 include a new Motion Editor to help bring your apps to life, a Build Analyzer to investigate causes for slower build times, and Java 8 language APIs you can use regardless of your app’s minimum API level. Based on your feedback, we’ve also overhauled the CPU Profiler user interface to provide a more intuitive workflow and easier side-by-side analysis of thread activity. And the improved Layout Inspector now provides live data of your app’s UI, so you can easily debug exactly what’s being shown on the device.
As always, this release wouldn’t be possible without the early feedback from our Preview users. So read on or watch below for further highlights and new features you can find in this stable version. If you’re ready to jump in and see for yourself, head over to the official website to download Android Studio 4.0 now.
The MotionLayout API extends the rich capabilities of ConstraintLayout to help Android developers manage complex motion and widget animation in their apps. In Android Studio 4.0, using this API is made easier with the new Motion Editor—a powerful interface for creating, editing, and previewing MotionLayout animations. You no longer have to create and modify complex XML files; the Motion Editor generates them for you, with support for editing constraint sets, transitions, keyframes, and view attributes. And if you do want to see the code the editor creates, it is one click away. And just as conveniently, for developers already using ConstraintLayout, the IDE can easily convert those to MotionLayout. Learn more
Create, edit, and preview animations in the Motion Editor
Upgraded Layout Inspector
Have you ever wanted to investigate where a value for a particular attribute came from? Or see a live 3D representation of nested views to more easily inspect your view hierarchy? With the new Layout Inspector, debugging your UI is much more intuitive by giving you access to data that stays updated with your running app and providing insights on how resources are being resolved.
Debug your app’s UI in real-time with Live Layout Inspector
Use the live Layout Inspector by selecting View > Tool Windows > Layout Inspector from the main menu. If you are deploying to a device running API 29 level or higher, you have access to additional features, such as a dynamic layout hierarchy that updates as views change, detailed view attributes that also help you determine how resource values are resolved, and a live 3D model of your running app’s UI. Navigate, animate, and transition between views on your running app while always having the ability to debug your UI to pixel perfection. Learn more
Compare your UI across multiple screens with Layout Validation
When you’re developing for multiple form-factors, screen sizes, and resolutions, you need to verify that changes you make to your UI look great on every screen you support. With the Layout Validation window, you can preview layouts on different screens and configurations simultaneously, so you can easily ensure your app looks great across a range of devices. To get started, click on the Layout Validation tab in the top-right corner of the IDE.
Develop & Profile
CPU Profiler UI Upgrades
The improved UI of the CPU Profiler
The CPU profiler is designed to provide a rich amount of information about your app’s thread activity and trace recordings. So, when you provided us feedback about how we can make the UI even more intuitive to navigate and the data easier to understand, we listened. In Android Studio 4.0, CPU recordings are now separated from the main profiler timeline and organized in groups to allow for easier analysis. You can move groups up and down, or drag-and-drop individual items within a group for additional customization.
Easier side-by-side analysis of thread activity
For easier side-by-side analysis, you can now view all thread activity in the Thread Activity timeline (including methods, functions, and events) and try new navigation shortcuts to easily move around the data—such as using W, A, S, and D keys for fine-grained zooming and panning. We’ve also redesigned the System Trace UI so Events are uniquely colored for better visual distinction, threads are sorted to surface the busier ones first, and you can now focus on seeing data for only the threads you select. Finally, we invested in the quality of the CPU profiler, and consequently we’ve seen a significant decrease in the user-reported error rates of recordings since Android Studio 3.6. There are even more improvements to try, so learn more.
Smart editor features when writing rules for code shrinking
Smart editor feature when writing rules for R8
R8 was introduced in Android Gradle plugin 3.4.0 to combine desugaring, shrinking, obfuscating, optimizing, and dexing all in one step—resulting in noticeable build performance improvements. When creating rules files for R8, Android Studio now provides smart editor features, such as syntax highlighting, completion, and error checking. The editor also integrates with your Android project to provide full symbol completion for all classes, methods, and fields, and includes quick navigation and refactoring.
IntelliJ IDEA 2019.3 platform update
The core Android Studio IDE has been updated with improvements from IntelliJ IDEA 2019.3 and 2019.3.3 releases. These improvements largely focus on quality and performance improvements across the IDE.
Kotlin Android live templates
Live templates is a convenient IntelliJ feature that allows you to insert common constructs into your code by typing simple keywords. Android Studio now includes Android-specific live templates for your Kotlin code. For example, simply type toast and press the Tab key to quickly insert boilerplate code for a Toast. For a full list of available live templates, navigate to Editor > Live Templates in the Settings (or Preferences) dialog.
Clangd support for C++
For developers writing C++, we have switched to clangd as the primary language analysis engine for code navigation, completion, inspection, and showing code errors and warnings. We also now bundle clang-tidy with Android Studio. To configure Clangd or Clang-Tidy behavior, go to the IDE Settings (or Preferences) dialog, navigate to Languages & Frameworks > C/C++ > Clangd or Clang-Tidy, and configure the options.
Android Gradle plugin 4.0.0 includes support for Android Studio’s Build Analyzer by using Java 8 language APIs (regardless of your app’s minimum API level), and creating feature-on-feature dependencies between Dynamic Feature modules. For a full list of updates, read the Android Gradle plugin 4.0.0 release notes.
Address bottlenecks in your build performance with Build Analyzer
Android Developers rely on a variety of Gradle plugins and custom build logic to tailor the build system for their app. However, outdated or misconfigured tasks can cause longer build times that lead to frustration and lost productivity. The Build Analyzer helps you understand and address bottlenecks in your build by highlighting the plugins and tasks that are most responsible for your overall build time and by suggesting steps to mitigate regressions. Learn more
Java 8 Language library desugaring in D8 and R8
Previous versions of the Android Gradle plugin supported a variety of Java 8 language features for all API levels, such as lambda expressions and method references, through a process called desugaring. In Android Studio 4.0, the desugaring engine has been extended to support Java language APIs, regardless of your app’s minSdkVersion. This means that you can now use standard language APIs, which were previously available in only recent Android releases (such as java.util.stream, java.util.function and java.time). Learn more
When using Android Gradle plugin 4.0.0 and higher, you can now specify that a Dynamic Feature module depends on another feature module. Being able to define this relationship ensures that your app has the required modules to unlock additional functionality, resulting in fewer requests and easier modularization of your app. For example, a :video feature can depend on the :camera feature. If a user wants to unlock the ability to record videos, your app automatically downloads the required :camera module when it requests :video. Learn more
New options to enable or disable build features
The Android Gradle plugin has built-in support for modern libraries, such as data binding and view binding, and build features, such as auto-generated BuildConfig classes. However, you might not need these libraries and features for every project. In version 4.0.0 of the plugin, you can now disable discrete build features, as shown below, which can help optimize build performance for larger projects. For the DSL and full list of features you can control, see the release notes.
// The default value for each feature is shown below.
// You can change the value to override the default behavior.
// Determines whether to support View Binding.
// Note that the viewBinding.enabled property is now deprecated.
viewBinding = false
// Determines whether to support Data Binding.
// Note that the dataBinding.enabled property is now deprecated.
dataBinding = false
Android Gradle plugin DSL for enabling or disabling build features
Essential support for Kotlin DSL script files
Android Studio 4.0 now has built-in support for Kotlin DSL build script files (*.kts), which means that Kotlin build scripts offer a full suite of quick fixes and are supported by the Project Structure dialog. While we are excited about the potential for using Kotlin to configure your build, we will continue to refine the Android Gradle Plugin’s DSL API throughout the next year, which may result in breaking API changes for Kotlin script users. Long term, these fixes will make for a more idiomatic, easy-to-use DSL for Kotlin script users.
When building your app using Android Gradle plugin 4.0.0 and higher, the plugin includes metadata that describes the library dependencies that are compiled into your app. When uploading your app, the Play Console inspects this metadata to provide alerts for known issues with SDKs and dependencies your app uses, and, in some cases, provide actionable feedback to resolve those issues.
The data is compressed, encrypted by a Google Play signing key, and stored in the signing block of your release app. If you’d rather not share this information, you can easily opt-out by including the following in your module’s build.gradle file:
// Disables dependency metadata when building APKs.
includeInApk = false
// Disables dependency metadata when building Android App Bundles.
includeInBundle = false
Disable dependency metadata for your APKs, app bundle, or both
To recap, Android Studio 4.0 includes these new enhancements & features:
Motion Editor: a simple interface for creating, editing, and previewing MotionLayout animations
Upgraded Layout Inspector: a real-time & more intuitive debugging experience
Layout Validation: compare your UI across multiple screen dimensions
Develop & Profile
CPU Profiler update: improvements to make the UI more intuitive to navigate and the data easier to understand
R8 rules update: smart editor features for your code shrinker rules, such as syntax highlighting, completion, and error checking
IntelliJ IDEA 2019.3 platform update with performance and quality improvements
Live Template update: Android-specific live templates for your Kotlin code
Clangd support: Clangd and Clang-Tidy turned on by default
Build Analyzer: understand and address bottlenecks in your build
Java 8 language support update: APIs you can use regardless of your app’s minimum API level
Feature-on-feature dependencies: define dependencies between Dynamic Feature modules
buildFeatures DSL: enable or disable discrete build features, such as Data Binding
Kotlin DSL: essential support for Kotlin DSL script files
Download Android Studio 4.0 from the download page. If you are using a previous release of Android Studio, you can simply update to the latest version of Android Studio.
As always, we appreciate any feedback on things you like, and issues or features you would like to see. If you find a bug or issue, please file an issue. Follow us -- the Android Studio development team ‐ on Twitter and on Medium.