 There are many reasons for developers to bring the web to Android. Maybe reusing a web widget in another app, incorporating first or third-party content, even bringing their entire web app to the platform. Whatever the use case, Android has the tools to make it possible. In this talk, we walk through the latest updates to these tools. We talk about WebView with improvements to privacy and better support for large screens like support for image drag-and-drop. In the custom tabs world, it is now possible to have partial custom tabs. And on the PWA side, we have integrated features like richer install UI and playbilling API in trusted web activities. And there's plenty more. I'm Adriana Jara. I'm here with Sebastian Vence. Stay with us for all the updates for you to bring the web to Android. Let's dive in. Sebastian, why do you take it away with WebView? Okay, we start with WebView for a good reason. It is the most used way to embed web content into Android apps as the vast majority of Android apps use WebView. WebView is a great way to seamlessly integrate WebUI in native Android app experiences. For example, you can embed different WebUI into your apps such as ads, widgets or even in-app browsers. One of WebView's biggest strengths is its powerful API for controlling and modifying the web content that is being loaded. So what's new in WebView? Let's start with privacy. When a user installs and runs an application that uses a WebView to embed web content, the WebView will add the acts requested with header to every request sent to service. The value of this header is the application's APK name. This means every request includes specific information about the context in which the user is consuming web content and leaks the identity of the app to the online service. To protect user privacy, the WebView team started a deprecation trial which removes this header from all WebView requests. But what if your app relies on the acts requested with header? Our recommended way is to use the new opt-in API that allows you to selectively send the request header to specific origins. This means you get the best of both worlds. You can continue to support existing features built on top of this header while making sure that user's privacy is preserved in all other cases. If you want to keep the existing behavior, you can also sign up for the origin trial. Next up, testing. If you are a web developer and your website receives a lot of traffic from WebViews, there are two updates for you. The first update is that WebView now supports Chrome origin trials. Origin trials give you access to new or experimental features in Chrome. You can use these to try out a new feature before the features made available to everyone. Until now, origin trials have only been available on desktop and mobile Chrome. But starting with Chrome M110, origin trials also work in WebView. The second update is in November last year we made it much easier to install WebView Beta. We highly recommend testing your website using the WebView Beta channel to make sure that your website works great in upcoming WebView versions. To do this, join the WebView Beta testing program on the Google Play Store and your device will automatically be enrolled. And that's it for testing. Let's talk about large screen devices. Our goal is to make sure that WebView works great on large screen devices. And one update here is WebViews now support image drag and drop. For example, in split screen view mode, you can use Chrome WebView into a different app. To enable drag and drop behavior, the only thing you need to do is to declare a drop data provider in your Android manifest. Speaking of large screen devices, Chrome and WebView in Android U will come with full support for handwriting and HTML text input fields and with input gestures for deleting text or writing spaces. Handwriting support is already available for all Samsung devices with one UI 5.1, such as the S23 Ultra. For other devices using Android T, you can enable handwriting and HTML inputs under the developer options. Finally, sometimes you might need to run JavaScript in your app without having to display any web content. For example, when sharing business logic across web and mobile apps. To make this easier, we launched in the last year the alpha release of the new Jetpack JavaScript engine. This library uses the V8 Chrome JavaScript engine and lets your application evaluate JavaScript or WebAssembly code without creating a WebView instance. The great thing about the new JavaScript engine is that it executes your JavaScript in a different process, making it a secure and stable way to run JavaScript in your app. The other benefit is, it requires much less resources than a WebView instance. The Jetpack JavaScript engine is currently in alpha, but you can try today following our guide linked in the description. WebView is great for integrating WebView into your app. But what about letting your users browse web content directly in your app? This is a great use case for custom tabs. They are a secure and user-friendly way to let users view web content in your app. The big advantage is, users don't need to re-lock in to their favorite websites because they are an instance of the user's default browser and cookies are being shared and they support all web platform features and APIs supported by the browsers powering it. This also means, if your default browser is Chrome, a custom tab is opened in Chrome. If your default browser is Firefox, a custom tab will be opened in Firefox. Most of the major browsers on Android support custom tabs and if the default browser does not support custom tabs, the browser app will open instead. What's great about custom tabs is that you can style them to match the look and feel of your app and add custom interactivity via actions and tool box. Customization also is made to upgrade this year with support for partial custom tabs. They let your users multitask between your app and the web. Let me explain. Until now, when using custom tabs, the browser tab overlay would cover the whole screen. Now you can control the height of the custom tab overlay. This way, users can interact with your app and web content at the same time. By the way, if your user's browser does not support partial custom tabs, users will simply see the supported full screen custom tab. All you need to do is to connect to the custom tab service, pass a session to the custom tabs builder, and call setActivityHeight. If you want to see partial custom tabs used in the world, YouTube successfully launched resizable inline custom tabs on direct response ads. This way, they've been able to implement a new way of interacting with ads and web content without interrupting the organic app experience. But what about tablets and other large screen devices? The Chrome team is currently working on a new side-by-side custom tabs experience for landscape mode and large screen devices. By defining a maximum tab width together with a breakpoint, the custom tab experience will switch between the bottom sheet overlay and the side-by-side experience. The feature is already available in Canary and will launch at the beginning of Q3 this year. The second big update for custom tabs is around measuring session-specific user engagement. If your app regularly shows your user's content including links, for example in a news feed, wouldn't it be great if you could tell which links a user finds valuable and which not? This information can be really helpful when it comes to prioritizing which links to show to your users. And this is actually a feature that many partners ask us about as well. The good news is that the Chrome team added session-specific metric visibility to Chrome custom tabs. In addition to how long user stays on a page, you can now additionally get visibility into scroll distance, scroll direction and overall engagement with web content. And that's it for custom tabs on WebView. There are great ways to embed web content into your app. But what about web apps? Adriana has more news about how to bring your web apps to Android. Let's talk about PWA, which is a set of technologies that make it possible to create app-like experiences built and deployed on the web. Using PWA on Android, your app could be installable. It will live along the other platform app in the home screen, launcher, settings and other surfaces. PWA features are built based on web standards. It focuses on cross-platform compatibility, giving developers the tools to build a web app once and allowing users to install it in whichever device they choose. Building an installable web app doesn't mean you can't or shouldn't have a native Android app. It is another option to bring the web to Android. Let's check a couple of features that make your installable web app feel at home in Android. We want to empower users to install the websites they care about most. The first step was removing the service worker fetch handler as a requirement for installation. And Chrome will skip the starting of the service worker if the fetch handler is empty. Chrome will be running experiments to expand access to installation for users. Keep an eye out for those and please provide feedback. The service worker requirement existed for developers to create a user experience that was consistent with other Android apps. It could be used to create a page informing the user they couldn't use the app while offline. We realized we can ease developers work and ensure these apps provide a good install experience out of the box. That's why Chrome added a default offline experience which shows users a screen with the apps icon letting them know they are offline without any work from developers. Of course the service worker API is still available to build custom offline experiences and implement other features like caching to improve performance. Some other features to bring a polished web app experience to Android are richer install UI. By adding the fields description and screenshots to your web manifest your users will get an install experience that is closer to what apps stores show to describe your app. We also have shortcuts. When you have a set of quick actions your users frequently doing your app you can add an array called shortcuts to your manifest and your users will access those actions by long pressing on your app's icon. Using web share and web share target APIs your app can interact with other apps like any other platform app your app will be an option in the sharing menus and can share and receive photos, texts, and other files. You can check the talk the web both for more information on how businesses are leveraging these technologies and check out the link in the description for more information on how to use these and other features. Another way to bring the web to Android is using trusted web activity. DWA is the best way to display full screen first party web content in your app. It is the ideal solution for developers who want to wrap their web app as an Android application or use their website as part of one. Note that DWA sounds like it is strictly related to PWA but it is not. Yes, using DWA you can publish your installable web app to the Play Store but you could also build a single activity and included on your Android app. A trusted web activity is rendered by the user's browser exactly the same way as a user would see it in their browser except they are run full screen and do not display a URL bar. This means they support all web platform features and APIs supported by the browser powering it. A couple of advantages of wrapping your web app using DWA are publishing to the Play Store which gives your app access to the store's availability and distribution, getting access to the Play Billing API which allows developers to manage the digital goods sales in their apps making it easier to set up products, sales, subscriptions and more. Also getting notifications and your location permissions delegated to the Android app instead of the website. Check the link in the description to see how contacts direct used DWA to benefit their users and improve their business metrics. For example, they saw a 3x conversion rate increase. That's all I have for now. Sebastian, anything else? And that's it for a quick overview on what's new in Web on Android. As you've seen, there are many different options available for embedding web content into your app when all these options are continuously being improved. You can find all the updates we've talked about in the blog post linked in the description. Thanks for watching.