CINXE.COM

Add a font as an XML resource  |  Views  |  Android Developers

<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="Android Developers"> <meta property="og:type" content="website"><meta name="theme-color" content="#34a853"><meta charset="utf-8"> <meta content="IE=Edge" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="manifest" href="/_pwa/android/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//www.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.googleapis.com" crossorigin> <link rel="preconnect" href="//apis.google.com" crossorigin> <link rel="preconnect" href="//www.google-analytics.com" crossorigin><link rel="stylesheet" href="//fonts.googleapis.com/css?family=Google+Sans:400,500,600,700|Google+Sans+Text:400,400italic,500,500italic,600,600italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/css/app.css"> <link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/css/dark-theme.css" disabled> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/favicon.svg"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/touchicon-180.png"><link rel="canonical" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml"><link rel="search" type="application/opensearchdescription+xml" title="Android Developers" href="https://developer.android.com/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml" /><link rel="alternate" hreflang="x-default" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml" /><link rel="alternate" hreflang="ar" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=ar" /><link rel="alternate" hreflang="bn" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=bn" /><link rel="alternate" hreflang="zh-Hans" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=zh-cn" /><link rel="alternate" hreflang="zh-Hant" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=zh-tw" /><link rel="alternate" hreflang="fa" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=fa" /><link rel="alternate" hreflang="fr" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=fr" /><link rel="alternate" hreflang="de" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=de" /><link rel="alternate" hreflang="he" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=he" /><link rel="alternate" hreflang="hi" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=hi" /><link rel="alternate" hreflang="id" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=id" /><link rel="alternate" hreflang="it" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=it" /><link rel="alternate" hreflang="ja" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=ja" /><link rel="alternate" hreflang="ko" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=ko" /><link rel="alternate" hreflang="pl" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=pl" /><link rel="alternate" hreflang="pt-BR" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=pt-br" /><link rel="alternate" hreflang="ru" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=ru" /><link rel="alternate" hreflang="es-419" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=es-419" /><link rel="alternate" hreflang="th" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=th" /><link rel="alternate" hreflang="tr" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=tr" /><link rel="alternate" hreflang="vi" href="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml?hl=vi" /><title>Add a font as an XML resource &nbsp;|&nbsp; Views &nbsp;|&nbsp; Android Developers</title> <meta property="og:title" content="Add a font as an XML resource &nbsp;|&nbsp; Views &nbsp;|&nbsp; Android Developers"><meta property="og:url" content="https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml"><meta property="og:image" content="https://developer.android.com/static/images/social/android-developers.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="675"><meta property="og:locale" content="en"><meta name="twitter:card" content="summary_large_image"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "Add a font as an XML resource" } </script><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Develop", "item": "https://developer.android.com/develop" },{ "@type": "ListItem", "position": 2, "name": "Core areas", "item": "https://developer.android.com/develop/core-areas" },{ "@type": "ListItem", "position": 3, "name": "UI", "item": "https://developer.android.com/develop/ui" },{ "@type": "ListItem", "position": 4, "name": "Views", "item": "https://developer.android.com/develop/ui/views/layout/declaring-layout" },{ "@type": "ListItem", "position": 5, "name": "Add a font as an XML resource", "item": "https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml" }] } </script> <link rel="stylesheet" href="/extras.css"></head> <body class="" template="page" theme="android-theme" type="article" appearance layout="docs" display-toc pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <a href="#main-content" class="skip-link button"> Skip to main content </a> <section class="devsite-wrapper"> <devsite-cookie-notification-bar></devsite-cookie-notification-bar><devsite-header role="banner"> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <a href="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="androidDevelopers" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <source srcset="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/lockup-dark-theme.svg" media="(prefers-color-scheme: dark)" class="devsite-dark-theme" alt="Android Developers"> <img src="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/lockup.svg" class="devsite-site-logo" alt="Android Developers"> </picture> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> </li> </ul> </span> </div> <div class="devsite-top-logo-row-middle"> <div class="devsite-header-upper-tabs"> <devsite-tabs class="upper-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Upper tabs"> <tab class="devsite-dropdown devsite-dropdown-full "> <a href="https://developer.android.com/get-started" class="devsite-tabs-content gc-analytics-event android-dropdown-tab" track-metadata-eventdetail="https://developer.android.com/get-started" track-type="nav" track-metadata-position="nav - essentials" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Essentials" track-name="essentials" > Essentials </a> <button aria-haspopup="menu" aria-expanded="false" aria-label="Dropdown menu for Essentials" track-type="nav" track-metadata-eventdetail="https://developer.android.com/get-started" track-metadata-position="nav - essentials" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Essentials" track-name="essentials" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></button> <div class="devsite-tabs-dropdown" role="menu" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column android-dropdown android-dropdown-primary android-dropdown-studio"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Gemini in Android Studio</li> <li class="devsite-nav-description">Your AI development companion for Android development. </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/gemini-in-android" track-type="nav" track-metadata-eventdetail="https://developer.android.com/gemini-in-android" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="gemini in android studio" tooltip class="button button-primary" > <div class="devsite-nav-item-title"> Learn more </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/studio" track-type="nav" track-metadata-eventdetail="https://developer.android.com/studio" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="gemini in android studio" tooltip class="button button-white" > <div class="devsite-nav-item-title"> Get Android Studio </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-launch"> <li class="devsite-nav-title" role="heading" tooltip>Get started</li> <li class="devsite-nav-description">Start by creating your first app. Go deeper with our training courses or explore app development on your own. </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/get-started/overview" track-type="nav" track-metadata-eventdetail="https://developer.android.com/get-started/overview" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get started" tooltip > <div class="devsite-nav-item-title"> Hello world </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/courses" track-type="nav" track-metadata-eventdetail="https://developer.android.com/courses" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get started" tooltip > <div class="devsite-nav-item-title"> Training courses </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/get-started/codelabs" track-type="nav" track-metadata-eventdetail="https://developer.android.com/get-started/codelabs" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get started" tooltip > <div class="devsite-nav-item-title"> Tutorials </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/develop/ui/compose/adopt" track-type="nav" track-metadata-eventdetail="https://developer.android.com/develop/ui/compose/adopt" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get started" tooltip > <div class="devsite-nav-item-title"> Compose for teams </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/kotlin" track-type="nav" track-metadata-eventdetail="https://developer.android.com/kotlin" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get started" tooltip > <div class="devsite-nav-item-title"> Kotlin for Android </div> </a> </li> <li class="devsite-nav-item"> <a href="https://play.google.com/console/about/guides/monetize/" track-type="nav" track-metadata-eventdetail="https://play.google.com/console/about/guides/monetize/" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get started" tooltip > <div class="devsite-nav-item-title"> Monetization with Play ↗️ </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-multiple-screens"> <li class="devsite-nav-title" role="heading" tooltip>Extend by device</li> <li class="devsite-nav-description">Build apps that give your users seamless experiences from phones to tablets, watches, headsets, and more. </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/adaptive-apps" track-type="nav" track-metadata-eventdetail="https://developer.android.com/adaptive-apps" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="extend by device" tooltip > <div class="devsite-nav-item-title"> Adaptive apps </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/xr" track-type="nav" track-metadata-eventdetail="https://developer.android.com/xr" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="extend by device" tooltip > <div class="devsite-nav-item-title"> Android XR </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/wear" track-type="nav" track-metadata-eventdetail="https://developer.android.com/wear" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="extend by device" tooltip > <div class="devsite-nav-item-title"> Wear OS </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/cars" track-type="nav" track-metadata-eventdetail="https://developer.android.com/cars" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="extend by device" tooltip > <div class="devsite-nav-item-title"> Android for Cars </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/tv" track-type="nav" track-metadata-eventdetail="https://developer.android.com/tv" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="extend by device" tooltip > <div class="devsite-nav-item-title"> Android TV </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/chrome-os" track-type="nav" track-metadata-eventdetail="https://developer.android.com/chrome-os" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="extend by device" tooltip > <div class="devsite-nav-item-title"> ChromeOS </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-platform"> <li class="devsite-nav-title" role="heading" tooltip>Build by category</li> <li class="devsite-nav-description">Learn to build for your use case by following Google&#39;s prescriptive and opinionated guidance. </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/games" track-type="nav" track-metadata-eventdetail="https://developer.android.com/games" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="build by category" tooltip > <div class="devsite-nav-item-title"> Games </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/media" track-type="nav" track-metadata-eventdetail="https://developer.android.com/media" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="build by category" tooltip > <div class="devsite-nav-item-title"> Camera & media </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/social-and-messaging" track-type="nav" track-metadata-eventdetail="https://developer.android.com/social-and-messaging" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="build by category" tooltip > <div class="devsite-nav-item-title"> Social & messaging </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/health-and-fitness" track-type="nav" track-metadata-eventdetail="https://developer.android.com/health-and-fitness" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="build by category" tooltip > <div class="devsite-nav-item-title"> Health & fitness </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/productivity" track-type="nav" track-metadata-eventdetail="https://developer.android.com/productivity" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="build by category" tooltip > <div class="devsite-nav-item-title"> Productivity </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/work/overview" track-type="nav" track-metadata-eventdetail="https://developer.android.com/work/overview" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="build by category" tooltip > <div class="devsite-nav-item-title"> Enterprise apps </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-stars"> <li class="devsite-nav-title" role="heading" tooltip>Get the latest</li> <li class="devsite-nav-description">Stay in touch with the latest releases throughout the year, join our preview programs, and give us your feedback. </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/latest-updates" track-type="nav" track-metadata-eventdetail="https://developer.android.com/latest-updates" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get the latest" tooltip > <div class="devsite-nav-item-title"> Latest updates </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/latest-updates/experimental" track-type="nav" track-metadata-eventdetail="https://developer.android.com/latest-updates/experimental" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get the latest" tooltip > <div class="devsite-nav-item-title"> Experimental updates </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/studio/preview" track-type="nav" track-metadata-eventdetail="https://developer.android.com/studio/preview" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get the latest" tooltip > <div class="devsite-nav-item-title"> Android Studio preview </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/jetpack/androidx/versions" track-type="nav" track-metadata-eventdetail="https://developer.android.com/jetpack/androidx/versions" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get the latest" tooltip > <div class="devsite-nav-item-title"> Jetpack & Compose libraries </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/training/wearables/versions/4" track-type="nav" track-metadata-eventdetail="https://developer.android.com/training/wearables/versions/4" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get the latest" tooltip > <div class="devsite-nav-item-title"> Wear OS preview </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/design-for-safety/privacy-sandbox" track-type="nav" track-metadata-eventdetail="https://developer.android.com/design-for-safety/privacy-sandbox" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="get the latest" tooltip > <div class="devsite-nav-item-title"> Privacy Sandbox </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown devsite-dropdown-full "> <a href="https://developer.android.com/design" class="devsite-tabs-content gc-analytics-event android-dropdown-tab" track-metadata-eventdetail="https://developer.android.com/design" track-type="nav" track-metadata-position="nav - design &amp; plan" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Design &amp; Plan" track-name="design &amp; plan" > Design &amp; Plan </a> <button aria-haspopup="menu" aria-expanded="false" aria-label="Dropdown menu for Design &amp; Plan" track-type="nav" track-metadata-eventdetail="https://developer.android.com/design" track-metadata-position="nav - design &amp; plan" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Design &amp; Plan" track-name="design &amp; plan" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></button> <div class="devsite-tabs-dropdown" role="menu" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-layout"> <li class="devsite-nav-title" role="heading" tooltip>UI Design</li> <li class="devsite-nav-description">Design a beautiful user interface using Android best practices.</li> <li class="devsite-nav-item"> <a href="https://developer.android.com/design/ui" track-type="nav" track-metadata-eventdetail="https://developer.android.com/design/ui" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="ui design" tooltip > <div class="devsite-nav-item-title"> Design for Android </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/design/ui/mobile" track-type="nav" track-metadata-eventdetail="https://developer.android.com/design/ui/mobile" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="ui design" tooltip > <div class="devsite-nav-item-title"> Mobile </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/design/ui/large-screens" track-type="nav" track-metadata-eventdetail="https://developer.android.com/design/ui/large-screens" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="ui design" tooltip > <div class="devsite-nav-item-title"> Adaptive UI </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/design/ui/xr" track-type="nav" track-metadata-eventdetail="https://developer.android.com/design/ui/xr" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="ui design" tooltip > <div class="devsite-nav-item-title"> Android XR </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/design/ui/widget" track-type="nav" track-metadata-eventdetail="https://developer.android.com/design/ui/widget" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="ui design" tooltip > <div class="devsite-nav-item-title"> Widgets </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/design/ui/wear" track-type="nav" track-metadata-eventdetail="https://developer.android.com/design/ui/wear" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="ui design" tooltip > <div class="devsite-nav-item-title"> Wear OS </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/design/ui/tv" track-type="nav" track-metadata-eventdetail="https://developer.android.com/design/ui/tv" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="ui design" tooltip > <div class="devsite-nav-item-title"> Android TV </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-design"> <li class="devsite-nav-title" role="heading" tooltip>Architecture</li> <li class="devsite-nav-description">Design robust, testable, and maintainable app logic and services.</li> <li class="devsite-nav-item"> <a href="https://developer.android.com/topic/architecture/intro" track-type="nav" track-metadata-eventdetail="https://developer.android.com/topic/architecture/intro" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="architecture" tooltip > <div class="devsite-nav-item-title"> Introduction </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/topic/libraries/view-binding" track-type="nav" track-metadata-eventdetail="https://developer.android.com/topic/libraries/view-binding" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="architecture" tooltip > <div class="devsite-nav-item-title"> Libraries </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/guide/navigation/navigation-principles" track-type="nav" track-metadata-eventdetail="https://developer.android.com/guide/navigation/navigation-principles" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="architecture" tooltip > <div class="devsite-nav-item-title"> Navigation </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/topic/modularization" track-type="nav" track-metadata-eventdetail="https://developer.android.com/topic/modularization" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="architecture" tooltip > <div class="devsite-nav-item-title"> Modularization </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/training/testing/fundamentals" track-type="nav" track-metadata-eventdetail="https://developer.android.com/training/testing/fundamentals" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="architecture" tooltip > <div class="devsite-nav-item-title"> Testing </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-vitals"> <li class="devsite-nav-title" role="heading" tooltip>Quality</li> <li class="devsite-nav-description">Plan for app quality and align with Play store guidelines.</li> <li class="devsite-nav-item"> <a href="https://developer.android.com/quality" track-type="nav" track-metadata-eventdetail="https://developer.android.com/quality" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="quality" tooltip > <div class="devsite-nav-item-title"> Overview </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/quality/core-value" track-type="nav" track-metadata-eventdetail="https://developer.android.com/quality/core-value" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="quality" tooltip > <div class="devsite-nav-item-title"> Core value </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/quality/user-experience" track-type="nav" track-metadata-eventdetail="https://developer.android.com/quality/user-experience" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="quality" tooltip > <div class="devsite-nav-item-title"> User experience </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/guide/topics/ui/accessibility" track-type="nav" track-metadata-eventdetail="https://developer.android.com/guide/topics/ui/accessibility" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="quality" tooltip > <div class="devsite-nav-item-title"> Accessibility </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/quality/technical" track-type="nav" track-metadata-eventdetail="https://developer.android.com/quality/technical" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="quality" tooltip > <div class="devsite-nav-item-title"> Technical quality </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/quality/privacy-and-security" track-type="nav" track-metadata-eventdetail="https://developer.android.com/quality/privacy-and-security" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="quality" tooltip > <div class="devsite-nav-item-title"> Security </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-security-2"> <li class="devsite-nav-title" role="heading" tooltip>Security</li> <li class="devsite-nav-description">Safeguard users against threats and ensure a secure Android experience.</li> <li class="devsite-nav-item"> <a href="https://developer.android.com/security" track-type="nav" track-metadata-eventdetail="https://developer.android.com/security" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="security" tooltip > <div class="devsite-nav-item-title"> Overview </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/privacy-and-security/about" track-type="nav" track-metadata-eventdetail="https://developer.android.com/privacy-and-security/about" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="security" tooltip > <div class="devsite-nav-item-title"> Privacy </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/guide/topics/permissions/overview" track-type="nav" track-metadata-eventdetail="https://developer.android.com/guide/topics/permissions/overview" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="security" tooltip > <div class="devsite-nav-item-title"> Permissions </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/identity" track-type="nav" track-metadata-eventdetail="https://developer.android.com/identity" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="security" tooltip > <div class="devsite-nav-item-title"> Identity </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/security/fraud-prevention" track-type="nav" track-metadata-eventdetail="https://developer.android.com/security/fraud-prevention" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="security" tooltip > <div class="devsite-nav-item-title"> Fraud prevention </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-earth"> <li class="devsite-nav-title" role="heading" tooltip>Build for Billions</li> <li class="devsite-nav-description">Create the best experience for entry-level devices</li> <li class="devsite-nav-item"> <a href="https://developer.android.com/build-for-billions" track-type="nav" track-metadata-eventdetail="https://developer.android.com/build-for-billions" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="build for billions" tooltip > <div class="devsite-nav-item-title"> Overview </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/docs/quality-guidelines/build-for-billions" track-type="nav" track-metadata-eventdetail="https://developer.android.com/docs/quality-guidelines/build-for-billions" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="build for billions" tooltip > <div class="devsite-nav-item-title"> About new markets </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/guide/topics/androidgo" track-type="nav" track-metadata-eventdetail="https://developer.android.com/guide/topics/androidgo" track-metadata-position="nav - design &amp; plan" track-metadata-module="tertiary nav" track-metadata-module_headline="build for billions" tooltip > <div class="devsite-nav-item-title"> Android (Go edition) </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown devsite-dropdown-full devsite-active "> <a href="https://developer.android.com/develop" class="devsite-tabs-content gc-analytics-event android-dropdown-tab" track-metadata-eventdetail="https://developer.android.com/develop" track-type="nav" track-metadata-position="nav - develop" track-metadata-module="primary nav" aria-label="Develop, selected" data-category="Site-Wide Custom Events" data-label="Tab: Develop" track-name="develop" > Develop </a> <button aria-haspopup="menu" aria-expanded="false" aria-label="Dropdown menu for Develop" track-type="nav" track-metadata-eventdetail="https://developer.android.com/develop" track-metadata-position="nav - develop" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Develop" track-name="develop" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></button> <div class="devsite-tabs-dropdown" role="menu" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column android-dropdown android-dropdown-primary android-dropdown-ai"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Build AI experiences</li> <li class="devsite-nav-description">Build AI-powered Android apps with Gemini APIs and more. </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/ai" track-type="nav" track-metadata-eventdetail="https://developer.android.com/ai" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="build ai experiences" tooltip class="button button-primary" > <div class="devsite-nav-item-title"> Get started </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-flag"> <li class="devsite-nav-title" role="heading" tooltip>Core areas</li> <li class="devsite-nav-description">Get the samples and docs for the features you need.</li> <li class="devsite-nav-item"> <a href="https://developer.android.com/samples" track-type="nav" track-metadata-eventdetail="https://developer.android.com/samples" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="core areas" tooltip > <div class="devsite-nav-item-title"> Samples </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/develop/ui" track-type="nav" track-metadata-eventdetail="https://developer.android.com/develop/ui" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="core areas" tooltip > <div class="devsite-nav-item-title"> User interfaces </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/develop/background-work" track-type="nav" track-metadata-eventdetail="https://developer.android.com/develop/background-work" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="core areas" tooltip > <div class="devsite-nav-item-title"> Background work </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/guide/topics/data" track-type="nav" track-metadata-eventdetail="https://developer.android.com/guide/topics/data" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="core areas" tooltip > <div class="devsite-nav-item-title"> Data and files </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/develop/connectivity" track-type="nav" track-metadata-eventdetail="https://developer.android.com/develop/connectivity" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="core areas" tooltip > <div class="devsite-nav-item-title"> Connectivity </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/develop#core-areas" track-type="nav" track-metadata-eventdetail="https://developer.android.com/develop#core-areas" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="core areas" tooltip > <div class="devsite-nav-item-title"> All core areas ⤵️ </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-tools-2"> <li class="devsite-nav-title" role="heading" tooltip>Tools and workflow</li> <li class="devsite-nav-description">Use the IDE to write and build your app, or create your own pipeline.</li> <li class="devsite-nav-item"> <a href="https://developer.android.com/studio/write" track-type="nav" track-metadata-eventdetail="https://developer.android.com/studio/write" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="tools and workflow" tooltip > <div class="devsite-nav-item-title"> Write and debug code </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/build/gradle-build-overview" track-type="nav" track-metadata-eventdetail="https://developer.android.com/build/gradle-build-overview" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="tools and workflow" tooltip > <div class="devsite-nav-item-title"> Build projects </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/training/testing" track-type="nav" track-metadata-eventdetail="https://developer.android.com/training/testing" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="tools and workflow" tooltip > <div class="devsite-nav-item-title"> Test your app </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/topic/performance/overview" track-type="nav" track-metadata-eventdetail="https://developer.android.com/topic/performance/overview" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="tools and workflow" tooltip > <div class="devsite-nav-item-title"> Performance </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/tools" track-type="nav" track-metadata-eventdetail="https://developer.android.com/tools" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="tools and workflow" tooltip > <div class="devsite-nav-item-title"> Command-line tools </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/reference/tools/gradle-api" track-type="nav" track-metadata-eventdetail="https://developer.android.com/reference/tools/gradle-api" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="tools and workflow" tooltip > <div class="devsite-nav-item-title"> Gradle plugin API </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-multiple-screens"> <li class="devsite-nav-title" role="heading" tooltip>Device tech</li> <li class="devsite-nav-description">Write code for form factors. Connect devices and share data.</li> <li class="devsite-nav-item"> <a href="https://developer.android.com/guide/topics/large-screens/get-started-with-large-screens" track-type="nav" track-metadata-eventdetail="https://developer.android.com/guide/topics/large-screens/get-started-with-large-screens" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="device tech" tooltip > <div class="devsite-nav-item-title"> Adaptive UI </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/training/wearables" track-type="nav" track-metadata-eventdetail="https://developer.android.com/training/wearables" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="device tech" tooltip > <div class="devsite-nav-item-title"> Wear OS </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/develop/xr" track-type="nav" track-metadata-eventdetail="https://developer.android.com/develop/xr" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="device tech" tooltip > <div class="devsite-nav-item-title"> Android XR </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/health-and-fitness/guides" track-type="nav" track-metadata-eventdetail="https://developer.android.com/health-and-fitness/guides" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="device tech" tooltip > <div class="devsite-nav-item-title"> Android Health </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/training/cars" track-type="nav" track-metadata-eventdetail="https://developer.android.com/training/cars" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="device tech" tooltip > <div class="devsite-nav-item-title"> Android for Cars </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/training/tv" track-type="nav" track-metadata-eventdetail="https://developer.android.com/training/tv" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="device tech" tooltip > <div class="devsite-nav-item-title"> Android TV </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/develop#devices" track-type="nav" track-metadata-eventdetail="https://developer.android.com/develop#devices" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="device tech" tooltip > <div class="devsite-nav-item-title"> All devices ⤵️ </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-dropdown"> <ul class="devsite-tabs-dropdown-section android-dropdown-section-icon android-dropdown-section-icon-core-library"> <li class="devsite-nav-title" role="heading" tooltip>Libraries</li> <li class="devsite-nav-description">Browse API reference documentation with all the details.</li> <li class="devsite-nav-item"> <a href="https://developer.android.com/reference/packages" track-type="nav" track-metadata-eventdetail="https://developer.android.com/reference/packages" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="libraries" tooltip > <div class="devsite-nav-item-title"> Android platform </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/jetpack/androidx/explorer" track-type="nav" track-metadata-eventdetail="https://developer.android.com/jetpack/androidx/explorer" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="libraries" tooltip > <div class="devsite-nav-item-title"> Jetpack libraries </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developer.android.com/jetpack/androidx/releases/compose" track-type="nav" track-metadata-eventdetail="https://developer.android.com/jetpack/androidx/releases/compose" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="libraries" tooltip > <div class="devsite-nav-item-title"> Compose libraries </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/android/reference/packages" track-type="nav" track-metadata-eventdetail="https://developers.google.com/android/reference/packages" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="libraries" tooltip > <div class="devsite-nav-item-title"> Google Play services ↗️ </div> </a> </li> <li class="devsite-nav-item"> <a href="https://play.google.com/sdks" track-type="nav" track-metadata-eventdetail="https://play.google.com/sdks" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="libraries" tooltip > <div class="devsite-nav-item-title"> Google Play SDK index ↗️ </div> </a> </li> </ul> </div> </div> </div> </tab> <tab > <a href="https://developer.android.com/distribute" class="devsite-tabs-content gc-analytics-event " track-metadata-eventdetail="https://developer.android.com/distribute" track-type="nav" track-metadata-position="nav - google play" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Google Play" track-name="google play" > Google Play </a> </tab> <tab > <a href="https://developer.android.com/community" class="devsite-tabs-content gc-analytics-event " track-metadata-eventdetail="https://developer.android.com/community" track-type="nav" track-metadata-position="nav - community" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" > Community </a> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="Views" tenant-name="Android Developers" > <form class="devsite-search-form" action="https://developer.android.com/s/results" method="GET"> <div class="devsite-search-container"> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-expanded="false" aria-haspopup="listbox" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" > <div class="devsite-search-image material-icons" aria-hidden="true"> </div> <div class="devsite-search-shortcut-icon-container" aria-hidden="true"> <kbd class="devsite-search-shortcut-icon">/</kbd> </div> </div> </div> </form> <button type="button" search-close class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Close search"></button> </devsite-search> </div> <devsite-appearance-selector></devsite-appearance-selector> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> <a class="devsite-header-link devsite-top-button button gc-analytics-event" href="https://developer.android.com/studio" data-category="Site-Wide Custom Events" data-label="Site header link" > Android Studio </a> <devsite-user enable-profiles id="devsite-user"> <span class="button devsite-top-button" aria-hidden="true" visually-hidden>Sign in</span> </devsite-user> </div> </div> </div> <div class="devsite-collapsible-section devsite-header-no-lower-tabs "> <div class="devsite-header-background"> <div class="devsite-product-id-row" > <div class="devsite-product-description-row"> <ul class="devsite-breadcrumb-list" aria-label="Lower header breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://developer.android.com/develop/core-areas" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Lower Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Core areas" > Core areas </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developer.android.com/develop/ui" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Lower Header" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="Jetpack Compose" > UI </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developer.android.com/develop/ui/views/layout/declaring-layout" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Lower Header" data-value="3" track-type="globalNav" track-name="breadcrumb" track-metadata-position="3" track-metadata-eventdetail="Views" > Views </a> </li> </ul> </div> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars > <div class="devsite-book-nav-filter" > <span class="filter-list-icon material-icons" aria-hidden="true"></span> <input type="text" placeholder="Filter" aria-label="Type to filter" role="searchbox"> <span class="filter-clear-button hidden" data-title="Clear filter" aria-label="Clear filter" role="button" tabindex="0"></span> </div> <nav class="devsite-book-nav devsite-nav nocontent" aria-label="Side menu"> <div class="devsite-mobile-header"> <button type="button" id="devsite-close-nav" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Close navigation" aria-label="Close navigation"> </button> <div class="devsite-product-name-wrapper"> <a href="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="androidDevelopers" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <source srcset="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/lockup-dark-theme.svg" media="(prefers-color-scheme: dark)" class="devsite-dark-theme" alt="Android Developers"> <img src="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/lockup.svg" class="devsite-site-logo" alt="Android Developers"> </picture> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> </li> </ul> </span> </div> </div> <div class="devsite-book-nav-wrapper"> <div class="devsite-mobile-nav-top"> <ul class="devsite-nav-list"> <li class="devsite-nav-item"> <a href="/get-started" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Essentials" track-name="essentials" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Essentials" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Essentials </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Essentials" track-name="essentials" > <span class="devsite-nav-text" tooltip menu="Essentials"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Essentials"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/design" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Design &amp; Plan" track-name="design &amp; plan" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Design &amp; Plan" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Design &amp; Plan </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Design &amp; Plan" track-name="design &amp; plan" > <span class="devsite-nav-text" tooltip menu="Design &amp; Plan"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Design &amp; Plan"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/develop" class="devsite-nav-title gc-analytics-event devsite-nav-has-children devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Develop" track-name="develop" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Develop" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Develop </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Develop" track-name="develop" > <span class="devsite-nav-text" tooltip menu="Develop"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Develop"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/distribute" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Google Play" track-name="google play" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Play" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Play </span> </a> </li> <li class="devsite-nav-item"> <a href="/community" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Community" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Community </span> </a> </li> <li class="devsite-nav-item"> <a href="/studio" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android Studio" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android Studio </span> </a> </li> </ul> </div> <div class="devsite-mobile-nav-bottom"> <ul class="devsite-nav-list" menu="_book"> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Develop your app&#39;s layout</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/layout/declaring-layout" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/declaring-layout" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/declaring-layout" ><span class="devsite-nav-text" tooltip>About layouts</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/responsive-adaptive-design-with-views" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/responsive-adaptive-design-with-views" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/responsive-adaptive-design-with-views" ><span class="devsite-nav-text" tooltip>Create responsive/adaptive design with views</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/canonical-layouts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/canonical-layouts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/canonical-layouts" ><span class="devsite-nav-text" tooltip>Canonical layouts</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/use-window-size-classes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/use-window-size-classes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/use-window-size-classes" ><span class="devsite-nav-text" tooltip>Use window size classes</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/support-multi-window-mode" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/support-multi-window-mode" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/support-multi-window-mode" ><span class="devsite-nav-text" tooltip>Support multi-window mode</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/constraint-layout" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/constraint-layout" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/constraint-layout" ><span class="devsite-nav-text" tooltip>Build a responsive UI with ConstraintLayout</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/build-responsive-navigation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/build-responsive-navigation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/build-responsive-navigation" ><span class="devsite-nav-text" tooltip>Build responsive navigation</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/recyclerview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/recyclerview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/recyclerview" ><span class="devsite-nav-text" tooltip>Create dynamic lists with RecyclerView</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/recyclerview-custom" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/recyclerview-custom" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/recyclerview-custom" ><span class="devsite-nav-text" tooltip>Customize a dynamic list</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/cardview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/cardview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/cardview" ><span class="devsite-nav-text" tooltip>Create a card-based layout</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/twopane" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/twopane" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/twopane" ><span class="devsite-nav-text" tooltip>Create a two-pane layout</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/linear" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/linear" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/linear" ><span class="devsite-nav-text" tooltip>Create a linear layout</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/binding" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/binding" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/binding" ><span class="devsite-nav-text" tooltip>Fill a layout with data</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/relative" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/relative" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/relative" ><span class="devsite-nav-text" tooltip>Create a relative layout</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/activity-embedding" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/activity-embedding" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/activity-embedding" ><span class="devsite-nav-text" tooltip>Activity embedding</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Improve layout performance</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/layout/improving-layouts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/improving-layouts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/improving-layouts" ><span class="devsite-nav-text" tooltip>About layout performance</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/improving-layouts/optimizing-layouts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/improving-layouts/optimizing-layouts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/improving-layouts/optimizing-layouts" ><span class="devsite-nav-text" tooltip>Optimize layout hierarchies</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/improving-layouts/reusing-layouts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/improving-layouts/reusing-layouts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/improving-layouts/reusing-layouts" ><span class="devsite-nav-text" tooltip>Reuse layouts with &lt;include&gt;</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/improving-layouts/loading-ondemand" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/improving-layouts/loading-ondemand" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/improving-layouts/loading-ondemand" ><span class="devsite-nav-text" tooltip>Load views on demand</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Create custom view components</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/layout/custom-views/custom-components" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/custom-views/custom-components" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/custom-views/custom-components" ><span class="devsite-nav-text" tooltip>About custom view components</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/ui/how-android-draws" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/ui/how-android-draws" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/ui/how-android-draws" ><span class="devsite-nav-text" tooltip>How Android draws views</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/custom-views/create-view" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/custom-views/create-view" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/custom-views/create-view" ><span class="devsite-nav-text" tooltip>Create a custom view class</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/custom-views/custom-drawing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/custom-views/custom-drawing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/custom-views/custom-drawing" ><span class="devsite-nav-text" tooltip>Implement a custom drawing</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/custom-views/making-interactive" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/custom-views/making-interactive" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/custom-views/making-interactive" ><span class="devsite-nav-text" tooltip>Make a custom view interactive</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/custom-views/optimizing-view" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/custom-views/optimizing-view" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/custom-views/optimizing-view" ><span class="devsite-nav-text" tooltip>Optimize a custom view</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Work with window insets and cutouts</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/layout/insets" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/insets" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/insets" ><span class="devsite-nav-text" tooltip>Lay out your app within windows insets</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/edge-to-edge" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/edge-to-edge" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/edge-to-edge" ><span class="devsite-nav-text" tooltip>Display content edge-to-edge</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/insets/rounded-corners" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/insets/rounded-corners" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/insets/rounded-corners" ><span class="devsite-nav-text" tooltip>Apply rounded corners</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/immersive" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/immersive" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/immersive" ><span class="devsite-nav-text" tooltip>Hide system bars for immersive mode</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/display-cutout" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/display-cutout" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/display-cutout" ><span class="devsite-nav-text" tooltip>Support display cutouts</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/sw-keyboard" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/sw-keyboard" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/sw-keyboard" ><span class="devsite-nav-text" tooltip>Control and animate the software keyboard</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add web-based content to your app</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps" ><span class="devsite-nav-text" tooltip>Using web content in your app</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/embed-web-content-in-app" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/embed-web-content-in-app" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/embed-web-content-in-app" ><span class="devsite-nav-text" tooltip>Embed web content into your app</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/in-app-browsing-embedded-web" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/in-app-browsing-embedded-web" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/in-app-browsing-embedded-web" ><span class="devsite-nav-text" tooltip>In-app browsing using embedded web</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/overview-of-android-custom-tabs" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/overview-of-android-custom-tabs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/overview-of-android-custom-tabs" ><span class="devsite-nav-text" tooltip>Overview of Android Custom Tabs</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/trusted-web-activities" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/trusted-web-activities" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/trusted-web-activities" ><span class="devsite-nav-text" tooltip>Overview of Trusted Web Activities</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/guide-trusted-web-activities-version2" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/guide-trusted-web-activities-version2" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/guide-trusted-web-activities-version2" ><span class="devsite-nav-text" tooltip>Guide for Trusted Web Activities</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/webview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/webview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/webview" ><span class="devsite-nav-text" tooltip>Develop web apps in WebView</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/managing-webview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/managing-webview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/managing-webview" ><span class="devsite-nav-text" tooltip>Manage WebView objects</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/load-local-content" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/load-local-content" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/load-local-content" ><span class="devsite-nav-text" tooltip>Load local content</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/dark-theme" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/dark-theme" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/dark-theme" ><span class="devsite-nav-text" tooltip>Darken web content</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/targeting" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/targeting" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/targeting" ><span class="devsite-nav-text" tooltip>Support different screens in web apps</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/debugging" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/debugging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/debugging" ><span class="devsite-nav-text" tooltip>Debug web apps</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/best-practices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/best-practices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/best-practices" ><span class="devsite-nav-text" tooltip>Implement best practices</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/webview-privacy" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/webview-privacy" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/webview-privacy" ><span class="devsite-nav-text" tooltip>User privacy in WebView crash reporting</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/webview-testing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/webview-testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/webview-testing" ><span class="devsite-nav-text" tooltip>Beta program</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/layout/webapps/jsengine" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/layout/webapps/jsengine" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/layout/webapps/jsengine" ><span class="devsite-nav-text" tooltip>Executing JavaScript and WebAssembly</span></a></li></ul></div></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Apply themes</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/theming/themes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/theming/themes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/theming/themes" ><span class="devsite-nav-text" tooltip>About themes</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/theming/dynamic-colors" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/theming/dynamic-colors" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/theming/dynamic-colors" ><span class="devsite-nav-text" tooltip>Use the device colors (Dynamic Color)</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/palette-colors" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/palette-colors" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/palette-colors" ><span class="devsite-nav-text" tooltip>Select colors with the palette library</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/theming/look-and-feel" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/theming/look-and-feel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/theming/look-and-feel" ><span class="devsite-nav-text" tooltip>Use Material Design as a guideline</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/theming/darktheme" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/theming/darktheme" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/theming/darktheme" ><span class="devsite-nav-text" tooltip>Implement dark theme</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/theming/shadows-clipping" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/theming/shadows-clipping" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/theming/shadows-clipping" ><span class="devsite-nav-text" tooltip>Create shadows and clip views</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add components</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add core components</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/components/floating-action-button" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/floating-action-button" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/floating-action-button" ><span class="devsite-nav-text" tooltip>Floating action buttons (FABs)</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/button" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/button" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/button" ><span class="devsite-nav-text" tooltip>Buttons</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/checkbox" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/checkbox" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/checkbox" ><span class="devsite-nav-text" tooltip>Check boxes</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/radiobutton" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/radiobutton" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/radiobutton" ><span class="devsite-nav-text" tooltip>Radio buttons</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/togglebutton" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/togglebutton" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/togglebutton" ><span class="devsite-nav-text" tooltip>Toggle buttons</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/pickers" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/pickers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/pickers" ><span class="devsite-nav-text" tooltip>Pickers</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/tooltips" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/tooltips" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/tooltips" ><span class="devsite-nav-text" tooltip>Tooltips</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/dialogs" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/dialogs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/dialogs" ><span class="devsite-nav-text" tooltip>Dialogs</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/menus" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/menus" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/menus" ><span class="devsite-nav-text" tooltip>Menus</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add the app bar component</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/components/appbar" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/appbar" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/appbar" ><span class="devsite-nav-text" tooltip>About app bars</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/appbar/setting-up" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/appbar/setting-up" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/appbar/setting-up" ><span class="devsite-nav-text" tooltip>Set up the app bar</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/appbar/actions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/appbar/actions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/appbar/actions" ><span class="devsite-nav-text" tooltip>Add and handle actions</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/appbar/up-action" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/appbar/up-action" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/appbar/up-action" ><span class="devsite-nav-text" tooltip>Add an up action</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/appbar/action-views" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/appbar/action-views" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/appbar/action-views" ><span class="devsite-nav-text" tooltip>Use action views and action providers</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add the settings component</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/components/settings" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/settings" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/settings" ><span class="devsite-nav-text" tooltip>About settings</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/settings/organize-your-settings" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/settings/organize-your-settings" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/settings/organize-your-settings" ><span class="devsite-nav-text" tooltip>Organize your settings</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/settings/customize-your-settings" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/settings/customize-your-settings" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/settings/customize-your-settings" ><span class="devsite-nav-text" tooltip>Customize your settings</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/settings/use-saved-values" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/settings/use-saved-values" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/settings/use-saved-values" ><span class="devsite-nav-text" tooltip>Use saved values</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/settings/programmatic-hierarchy" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/settings/programmatic-hierarchy" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/settings/programmatic-hierarchy" ><span class="devsite-nav-text" tooltip>Create a hierarchy in code</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/settings/handle-other-form-factors" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/settings/handle-other-form-factors" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/settings/handle-other-form-factors" ><span class="devsite-nav-text" tooltip>Handle other device sizes</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/components/settings/components-and-attributes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/components/settings/components-and-attributes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/components/settings/components-and-attributes" ><span class="devsite-nav-text" tooltip>Implement preference best practices</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Integrate the Android search component</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/search" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search" ><span class="devsite-nav-text" tooltip>Search options</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/search/search-dialog" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search/search-dialog" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search/search-dialog" ><span class="devsite-nav-text" tooltip>Create a search UI</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/search/adding-recent-query-suggestions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search/adding-recent-query-suggestions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search/adding-recent-query-suggestions" ><span class="devsite-nav-text" tooltip>Add search results from recent queries</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/search/adding-custom-suggestions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search/adding-custom-suggestions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search/adding-custom-suggestions" ><span class="devsite-nav-text" tooltip>Add custom search results</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/search/searchable-config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search/searchable-config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search/searchable-config" ><span class="devsite-nav-text" tooltip>Provide a search configuration</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/search/appsearch" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search/appsearch" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search/appsearch" ><span class="devsite-nav-text" tooltip>Use AppSearch</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add search functionality</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/search/training" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search/training" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search/training" ><span class="devsite-nav-text" tooltip>About search functionality</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/search/training/setup" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search/training/setup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search/training/setup" ><span class="devsite-nav-text" tooltip>Set up the search UI</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/search/training/search" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search/training/search" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search/training/search" ><span class="devsite-nav-text" tooltip>Storing and searching for data</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/search/training/backward-compat" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/search/training/backward-compat" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/search/training/backward-compat" ><span class="devsite-nav-text" tooltip>Remain backward compatible with Search</span></a></li></ul></div></li></ul></div></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Work with text and emoji</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/text-and-emoji/autosizing-textview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/text-and-emoji/autosizing-textview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/text-and-emoji/autosizing-textview" ><span class="devsite-nav-text" tooltip>Autosize text views</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/text-and-emoji/downloadable-fonts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/text-and-emoji/downloadable-fonts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/text-and-emoji/downloadable-fonts" ><span class="devsite-nav-text" tooltip>Download fonts on the fly</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/text-and-emoji/fonts-in-xml" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/text-and-emoji/fonts-in-xml" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/text-and-emoji/fonts-in-xml" ><span class="devsite-nav-text" tooltip>Add a font as an XML resource</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add emoji support</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/text-and-emoji/emoji2" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/text-and-emoji/emoji2" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/text-and-emoji/emoji2" ><span class="devsite-nav-text" tooltip>Add support for modern emoji</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/text-and-emoji/emoji-compat" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/text-and-emoji/emoji-compat" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/text-and-emoji/emoji-compat" ><span class="devsite-nav-text" tooltip>Keep up to date with emoji</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/text-and-emoji/emoji-picker" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/text-and-emoji/emoji-picker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/text-and-emoji/emoji-picker" ><span class="devsite-nav-text" tooltip>Use the Emoji Picker</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/text-and-emoji/magnifier" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/text-and-emoji/magnifier" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/text-and-emoji/magnifier" ><span class="devsite-nav-text" tooltip>Magnify text</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/text-and-emoji/spans" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/text-and-emoji/spans" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/text-and-emoji/spans" ><span class="devsite-nav-text" tooltip>Use spans to style text</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Display graphics and videos</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Static images</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/drawables" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/drawables" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/drawables" ><span class="devsite-nav-text" tooltip>About static images</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/vector-drawable-resources" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/vector-drawable-resources" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/vector-drawable-resources" ><span class="devsite-nav-text" tooltip>Vector images</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics" ><span class="devsite-nav-text" tooltip>Bitmaps</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/reduce-image-sizes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/reduce-image-sizes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/reduce-image-sizes" ><span class="devsite-nav-text" tooltip>Reduce image sizes</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/hardware-accel" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/hardware-accel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/hardware-accel" ><span class="devsite-nav-text" tooltip>Fix custom-drawing issues</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/playback-controls" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/playback-controls" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/playback-controls" ><span class="devsite-nav-text" tooltip>Add media playback controls</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/picture-in-picture" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/picture-in-picture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/picture-in-picture" ><span class="devsite-nav-text" tooltip>Add videos using picture-in-picture (PiP)</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Work with advanced images and graphics</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Draw with AGSL shaders</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/agsl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/agsl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/agsl" ><span class="devsite-nav-text" tooltip>About AGSL shaders</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/agsl/agsl-vs-glsl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/agsl/agsl-vs-glsl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/agsl/agsl-vs-glsl" ><span class="devsite-nav-text" tooltip>About AGSL versus GLSL</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/agsl/using-agsl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/agsl/using-agsl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/agsl/using-agsl" ><span class="devsite-nav-text" tooltip>Use AGSL in your app</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/agsl/agsl-quick-reference" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/agsl/agsl-quick-reference" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/agsl/agsl-quick-reference" ><span class="devsite-nav-text" tooltip>AGSL quick reference</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Use OpenGL ES for graphics</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/opengl/about-opengl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/opengl/about-opengl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/opengl/about-opengl" ><span class="devsite-nav-text" tooltip>Display graphics with Open GL ES</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Learn how to use Open GL ES with graphics</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/opengl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/opengl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/opengl" ><span class="devsite-nav-text" tooltip>About Open GL</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/opengl/environment" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/opengl/environment" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/opengl/environment" ><span class="devsite-nav-text" tooltip>Build an Open GL ES environment</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/opengl/shapes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/opengl/shapes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/opengl/shapes" ><span class="devsite-nav-text" tooltip>Define shapes</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/opengl/draw" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/opengl/draw" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/opengl/draw" ><span class="devsite-nav-text" tooltip>Draw shapes</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/opengl/projection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/opengl/projection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/opengl/projection" ><span class="devsite-nav-text" tooltip>Apply projection and camera views</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/opengl/motion" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/opengl/motion" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/opengl/motion" ><span class="devsite-nav-text" tooltip>Add motion</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/opengl/touch" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/opengl/touch" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/opengl/touch" ><span class="devsite-nav-text" tooltip>Respond to touch events</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/graphics/multiple-apks/texture" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/graphics/multiple-apks/texture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/graphics/multiple-apks/texture" ><span class="devsite-nav-text" tooltip>Create APKs for different GL textures</span></a></li></ul></div></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable devsite-nav-deprecated"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Renderscript</span><span class="devsite-nav-icon material-icons" data-icon="deprecated" data-title="Deprecated" aria-hidden="true"></span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/guide/topics/renderscript/compute" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/compute" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/compute" ><span class="devsite-nav-text" tooltip>About Renderscript</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/advanced" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/advanced" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/advanced" ><span class="devsite-nav-text" tooltip>Advanced RenderScript</span></a></li><li class="devsite-nav-item devsite-nav-expandable devsite-nav-deprecated"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Migrate from RenderScript</span><span class="devsite-nav-icon material-icons" data-icon="deprecated" data-title="Deprecated" aria-hidden="true"></span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/guide/topics/renderscript/migrate" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/migrate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/migrate" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/migrate/migrate-gles" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/migrate/migrate-gles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/migrate/migrate-gles" ><span class="devsite-nav-text" tooltip>Migrate scripts to OpenGL ES 3.1</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/migrate/migrate-vulkan" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/migrate/migrate-vulkan" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/migrate/migrate-vulkan" ><span class="devsite-nav-text" tooltip>Migrate scripts to Vulkan</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable devsite-nav-deprecated"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Runtime API reference</span><span class="devsite-nav-icon material-icons" data-icon="deprecated" data-title="Deprecated" aria-hidden="true"></span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/overview" ><span class="devsite-nav-text" tooltip>About Runtime API</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_value_types" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_value_types" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_value_types" ><span class="devsite-nav-text" tooltip>Numerical types</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_object_types" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_object_types" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_object_types" ><span class="devsite-nav-text" tooltip>Object types</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_convert" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_convert" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_convert" ><span class="devsite-nav-text" tooltip>Conversion functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_math" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_math" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_math" ><span class="devsite-nav-text" tooltip>Mathematical constants and functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_vector_math" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_vector_math" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_vector_math" ><span class="devsite-nav-text" tooltip>Vector math functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_matrix" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_matrix" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_matrix" ><span class="devsite-nav-text" tooltip>Matrix functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_quaternion" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_quaternion" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_quaternion" ><span class="devsite-nav-text" tooltip>Quaternion functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_atomic" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_atomic" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_atomic" ><span class="devsite-nav-text" tooltip>Atomic update functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_time" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_time" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_time" ><span class="devsite-nav-text" tooltip>Time functions and types</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_allocation_data" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_allocation_data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_allocation_data" ><span class="devsite-nav-text" tooltip>Allocation data access functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_object_info" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_object_info" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_object_info" ><span class="devsite-nav-text" tooltip>Object characteristics functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_for_each" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_for_each" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_for_each" ><span class="devsite-nav-text" tooltip>Kernel invocation functions and types</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_io" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_io" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_io" ><span class="devsite-nav-text" tooltip>Input/output functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_debug" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_debug" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_debug" ><span class="devsite-nav-text" tooltip>Debugging functions</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference/rs_graphics" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference/rs_graphics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference/rs_graphics" ><span class="devsite-nav-text" tooltip>Graphics functions and types</span></a></li><li class="devsite-nav-item"><a href="/guide/topics/renderscript/reference" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/renderscript/reference" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/renderscript/reference" ><span class="devsite-nav-text" tooltip>Index</span></a></li></ul></div></li></ul></div></li></ul></div></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Work with animations and transitions</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/animations" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations" ><span class="devsite-nav-text" tooltip>In this guide</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/overview" ><span class="devsite-nav-text" tooltip>About animations in Android</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/prop-animation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/prop-animation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/prop-animation" ><span class="devsite-nav-text" tooltip>About property animations</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/drawable-animation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/drawable-animation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/drawable-animation" ><span class="devsite-nav-text" tooltip>Animate drawable graphics</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Animate views</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/animations/view-animation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/view-animation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/view-animation" ><span class="devsite-nav-text" tooltip>Generate images between keyframes in an animation</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/reveal-or-hide-view" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/reveal-or-hide-view" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/reveal-or-hide-view" ><span class="devsite-nav-text" tooltip>Show or hide a view</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/reposition-view" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/reposition-view" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/reposition-view" ><span class="devsite-nav-text" tooltip>Move a view using animation</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/fling-animation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/fling-animation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/fling-animation" ><span class="devsite-nav-text" tooltip>Move a view using fling animation</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/zoom" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/zoom" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/zoom" ><span class="devsite-nav-text" tooltip>Enlarge a view using zoom animation</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/spring-animation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/spring-animation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/spring-animation" ><span class="devsite-nav-text" tooltip>Animate movement using spring physics</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/layout" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/layout" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/layout" ><span class="devsite-nav-text" tooltip>Auto-animate layout updates</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/transitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/transitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/transitions" ><span class="devsite-nav-text" tooltip>Animate layout changes using a transition</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/transitions/custom-transitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/transitions/custom-transitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/transitions/custom-transitions" ><span class="devsite-nav-text" tooltip>Create a custom transition animation</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/transitions/start-activity" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/transitions/start-activity" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/transitions/start-activity" ><span class="devsite-nav-text" tooltip>Start an activity using an animation</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>MotionLayout</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/animations/motionlayout" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/motionlayout" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/motionlayout" ><span class="devsite-nav-text" tooltip>Manage motion and widget animation</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/motionlayout/carousel" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/motionlayout/carousel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/motionlayout/carousel" ><span class="devsite-nav-text" tooltip>Add a carousel</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/motionlayout/examples" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/motionlayout/examples" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/motionlayout/examples" ><span class="devsite-nav-text" tooltip>MotionLayout examples</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Slide between fragments</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/animations/screen-slide-2" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/screen-slide-2" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/screen-slide-2" ><span class="devsite-nav-text" tooltip>Use ViewPager2 to slide between fragments</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/screen-slide" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/screen-slide" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/screen-slide" ><span class="devsite-nav-text" tooltip>Use ViewPager to slide between fragments</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/vp2-migration" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/vp2-migration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/vp2-migration" ><span class="devsite-nav-text" tooltip>Migrate from ViewPager to ViewPager2</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/adaptive-refresh-rate" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/adaptive-refresh-rate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/adaptive-refresh-rate" ><span class="devsite-nav-text" tooltip>Optimize frame rate with adaptive refresh rate</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/animations/additional-resources" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/animations/additional-resources" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/animations/additional-resources" ><span class="devsite-nav-text" tooltip>Use additional animation resources</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add support for touch and input</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/input" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/input" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/input" ><span class="devsite-nav-text" tooltip>In this guide</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/input-events" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/input-events" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/input-events" ><span class="devsite-nav-text" tooltip>About input events</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Use touch gestures</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/gestures" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/gestures" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/gestures" ><span class="devsite-nav-text" tooltip>About gestures</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/gestures/detector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/gestures/detector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/gestures/detector" ><span class="devsite-nav-text" tooltip>Detect common gestures</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/gestures/movement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/gestures/movement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/gestures/movement" ><span class="devsite-nav-text" tooltip>Track touch and pointer movements</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/gestures/scroll" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/gestures/scroll" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/gestures/scroll" ><span class="devsite-nav-text" tooltip>Handle scroll gestures</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/gestures/gesturenav" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/gestures/gesturenav" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/gestures/gesturenav" ><span class="devsite-nav-text" tooltip>Add support for navigation gestures</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/gestures/multi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/gestures/multi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/gestures/multi" ><span class="devsite-nav-text" tooltip>Detect multi-touch gestures</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/gestures/scale" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/gestures/scale" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/gestures/scale" ><span class="devsite-nav-text" tooltip>Add support for drag and scale</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/gestures/viewgroup" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/gestures/viewgroup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/gestures/viewgroup" ><span class="devsite-nav-text" tooltip>Manage touch events in a ViewGroup</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add support for swipe-to-refresh</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/swipe" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/swipe" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/swipe" ><span class="devsite-nav-text" tooltip>About swipe-to-refresh</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/swipe/add-swipe-interface" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/swipe/add-swipe-interface" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/swipe/add-swipe-interface" ><span class="devsite-nav-text" tooltip>Add swipe-to-refresh to your app</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/swipe/respond-refresh-request" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/swipe/respond-refresh-request" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/swipe/respond-refresh-request" ><span class="devsite-nav-text" tooltip>Respond to a refresh request</span></a></li></ul></div></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Handle keyboard input</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/keyboard-input" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/keyboard-input" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/keyboard-input" ><span class="devsite-nav-text" tooltip>About keyboards</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/keyboard-input/style" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/keyboard-input/style" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/keyboard-input/style" ><span class="devsite-nav-text" tooltip>Specify the input method type</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/keyboard-input/visibility" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/keyboard-input/visibility" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/keyboard-input/visibility" ><span class="devsite-nav-text" tooltip>Handle input method visibility</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/keyboard-input/navigation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/keyboard-input/navigation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/keyboard-input/navigation" ><span class="devsite-nav-text" tooltip>Support keyboard navigation</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/keyboard-input/commands" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/keyboard-input/commands" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/keyboard-input/commands" ><span class="devsite-nav-text" tooltip>Handle keyboard actions</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Handle stylus input</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input" ><span class="devsite-nav-text" tooltip>About stylus</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/stylus-input-in-text-fields" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/stylus-input-in-text-fields" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/stylus-input-in-text-fields" ><span class="devsite-nav-text" tooltip>Stylus input in text fields</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/custom-text-editors" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/custom-text-editors" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/custom-text-editors" ><span class="devsite-nav-text" tooltip>Custom text editors</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/advanced-stylus-features" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/advanced-stylus-features" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/advanced-stylus-features" ><span class="devsite-nav-text" tooltip>Advanced stylus features</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/create-a-note-taking-app" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/create-a-note-taking-app" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/create-a-note-taking-app" ><span class="devsite-nav-text" tooltip>Note-taking apps</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Ink API</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/about-ink-api" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/about-ink-api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/about-ink-api" ><span class="devsite-nav-text" tooltip>About the Ink API</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/ink-api-modules" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/ink-api-modules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/ink-api-modules" ><span class="devsite-nav-text" tooltip>Modules</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/ink-api-setup" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/ink-api-setup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/ink-api-setup" ><span class="devsite-nav-text" tooltip>Setup</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/ink-api-draw-stroke" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/ink-api-draw-stroke" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/ink-api-draw-stroke" ><span class="devsite-nav-text" tooltip>Draw a stroke</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/ink-api-brush-apis" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/ink-api-brush-apis" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/ink-api-brush-apis" ><span class="devsite-nav-text" tooltip>Brush APIs</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/ink-api-geometry-apis" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/ink-api-geometry-apis" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/ink-api-geometry-apis" ><span class="devsite-nav-text" tooltip>Geometry APIs</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/stylus-input/ink-api-state-preservation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/stylus-input/ink-api-state-preservation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/stylus-input/ink-api-state-preservation" ><span class="devsite-nav-text" tooltip>State preservation and persistent storage</span></a></li></ul></div></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/copy-paste" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/copy-paste" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/copy-paste" ><span class="devsite-nav-text" tooltip>Use copy and paste across apps</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Enable drag and drop</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/drag-drop" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/drag-drop" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/drag-drop" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/drag-drop/concepts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/drag-drop/concepts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/drag-drop/concepts" ><span class="devsite-nav-text" tooltip>Key Concepts</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/drag-drop/drophelper" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/drag-drop/drophelper" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/drag-drop/drophelper" ><span class="devsite-nav-text" tooltip>DropHelper for simplified drag and drop</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/drag-drop/view" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/drag-drop/view" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/drag-drop/view" ><span class="devsite-nav-text" tooltip>Implement drag and drop with views</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/drag-drop/multi-window" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/drag-drop/multi-window" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/drag-drop/multi-window" ><span class="devsite-nav-text" tooltip>Drag and drop in multi-window mode</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/receive-rich-content" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/receive-rich-content" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/receive-rich-content" ><span class="devsite-nav-text" tooltip>Accept rich content from any source</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Implement tactile feedback (haptics)</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/haptics" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/haptics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/haptics" ><span class="devsite-nav-text" tooltip>About haptics</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/haptics/haptics-principles" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/haptics/haptics-principles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/haptics/haptics-principles" ><span class="devsite-nav-text" tooltip>Haptic design principles</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/haptics/haptic-feedback" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/haptics/haptic-feedback" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/haptics/haptic-feedback" ><span class="devsite-nav-text" tooltip>Add haptic feedback to events</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/haptics/actuators" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/haptics/actuators" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/haptics/actuators" ><span class="devsite-nav-text" tooltip>Vibration actuators primer</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/haptics/custom-haptic-effects" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/haptics/custom-haptic-effects" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/haptics/custom-haptic-effects" ><span class="devsite-nav-text" tooltip>Create custom haptic effects</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/haptics/haptics-apis" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/haptics/haptics-apis" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/haptics/haptics-apis" ><span class="devsite-nav-text" tooltip>Haptics API reference</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add support for game controllers</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/game-controllers" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/game-controllers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/game-controllers" ><span class="devsite-nav-text" tooltip>About game controllers</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/game-controllers/controller-input" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/game-controllers/controller-input" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/game-controllers/controller-input" ><span class="devsite-nav-text" tooltip>Handle controller actions</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/game-controllers/compatibility" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/game-controllers/compatibility" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/game-controllers/compatibility" ><span class="devsite-nav-text" tooltip>Add support across Android versions</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/game-controllers/multiple-controllers" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/game-controllers/multiple-controllers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/game-controllers/multiple-controllers" ><span class="devsite-nav-text" tooltip>Add support for multiple controllers</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/game-controllers/controller-features" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/game-controllers/controller-features" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/game-controllers/controller-features" ><span class="devsite-nav-text" tooltip>Additional controller features</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Work with input method editors (IMEs)</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/creating-input-method" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/creating-input-method" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/creating-input-method" ><span class="devsite-nav-text" tooltip>Create an input method</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/image-keyboard" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/image-keyboard" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/image-keyboard" ><span class="devsite-nav-text" tooltip>Add image keyboard support</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/spell-checker-framework" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/spell-checker-framework" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/spell-checker-framework" ><span class="devsite-nav-text" tooltip>Implement a spelling checker</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/touch-and-input/input-compatibility-on-large-screens" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/touch-and-input/input-compatibility-on-large-screens" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/touch-and-input/input-compatibility-on-large-screens" ><span class="devsite-nav-text" tooltip>Provide input compatibility on large screens</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add notifications to your app</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/notifications" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications" ><span class="devsite-nav-text" tooltip>About notifications</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/notification-permission" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/notification-permission" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/notification-permission" ><span class="devsite-nav-text" tooltip>Request permission</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/channels" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/channels" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/channels" ><span class="devsite-nav-text" tooltip>Create and manage notification channels</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Create a notification</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/build-notification" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/build-notification" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/build-notification" ><span class="devsite-nav-text" tooltip>Basic notifications</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/expanded" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/expanded" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/expanded" ><span class="devsite-nav-text" tooltip>Expandable notifications</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/call-style" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/call-style" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/call-style" ><span class="devsite-nav-text" tooltip>Call style notifications</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/time-sensitive" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/time-sensitive" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/time-sensitive" ><span class="devsite-nav-text" tooltip>Time-sensitive notifications</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/custom-notification" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/custom-notification" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/custom-notification" ><span class="devsite-nav-text" tooltip>Custom notifications</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/group" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/group" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/group" ><span class="devsite-nav-text" tooltip>Create a notification group</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/navigation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/navigation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/navigation" ><span class="devsite-nav-text" tooltip>Start an activity from a notification</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add conversations</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/conversations" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/conversations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/conversations" ><span class="devsite-nav-text" tooltip>About conversations</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/bubbles" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/bubbles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/bubbles" ><span class="devsite-nav-text" tooltip>Use bubbles for conversations</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/badges" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/badges" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/badges" ><span class="devsite-nav-text" tooltip>Modify a badge</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Show pop-up messages</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/snackbar" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/snackbar" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/snackbar" ><span class="devsite-nav-text" tooltip>About pop-ups</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/snackbar/showing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/snackbar/showing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/snackbar/showing" ><span class="devsite-nav-text" tooltip>Build and display a pop-up message</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/notifications/snackbar/action" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/notifications/snackbar/action" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/notifications/snackbar/action" ><span class="devsite-nav-text" tooltip>Add an action to a message</span></a></li></ul></div></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Customize app launch</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/launch/icon_design_adaptive" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/launch/icon_design_adaptive" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/launch/icon_design_adaptive" ><span class="devsite-nav-text" tooltip>Use adaptive launcher icons</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add a splash screen</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/launch/splash-screen" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/launch/splash-screen" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/launch/splash-screen" ><span class="devsite-nav-text" tooltip>Add a splash screen to a new app</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/launch/splash-screen/migrate" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/launch/splash-screen/migrate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/launch/splash-screen/migrate" ><span class="devsite-nav-text" tooltip>Migrate an existing splash screen to the new API</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add app shortcuts</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/launch/shortcuts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/launch/shortcuts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/launch/shortcuts" ><span class="devsite-nav-text" tooltip>About shortcuts</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/launch/shortcuts/creating-shortcuts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/launch/shortcuts/creating-shortcuts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/launch/shortcuts/creating-shortcuts" ><span class="devsite-nav-text" tooltip>Create shortcuts</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/launch/shortcuts/adding-capabilities" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/launch/shortcuts/adding-capabilities" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/launch/shortcuts/adding-capabilities" ><span class="devsite-nav-text" tooltip>Add capabilities to shortcuts</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/launch/shortcuts/managing-shortcuts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/launch/shortcuts/managing-shortcuts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/launch/shortcuts/managing-shortcuts" ><span class="devsite-nav-text" tooltip>Manage shortcuts</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/launch/shortcuts/best-practices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/launch/shortcuts/best-practices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/launch/shortcuts/best-practices" ><span class="devsite-nav-text" tooltip>Implement best practices for shortcuts</span></a></li></ul></div></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Add app content to the home screen or launcher</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/quicksettings-tiles" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/quicksettings-tiles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/quicksettings-tiles" ><span class="devsite-nav-text" tooltip>Create custom Quick Settings tiles</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/quicksettings-tiles/qr-code" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/quicksettings-tiles/qr-code" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/quicksettings-tiles/qr-code" ><span class="devsite-nav-text" tooltip>Create a QR Code Payment Quick Settings tile</span></a></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Create app widgets</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/develop/ui/views/appwidgets/overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/appwidgets/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/appwidgets/overview" ><span class="devsite-nav-text" tooltip>About app widgets</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/appwidgets" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/appwidgets" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/appwidgets" ><span class="devsite-nav-text" tooltip>Create a simple widget</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/appwidgets/enhance" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/appwidgets/enhance" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/appwidgets/enhance" ><span class="devsite-nav-text" tooltip>Enhance your widget</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/appwidgets/advanced" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/appwidgets/advanced" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/appwidgets/advanced" ><span class="devsite-nav-text" tooltip>Create an advanced widget</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/appwidgets/collections" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/appwidgets/collections" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/appwidgets/collections" ><span class="devsite-nav-text" tooltip>Use widget collections</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/appwidgets/layouts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/appwidgets/layouts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/appwidgets/layouts" ><span class="devsite-nav-text" tooltip>Size your widget</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/appwidgets/configuration" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/appwidgets/configuration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/appwidgets/configuration" ><span class="devsite-nav-text" tooltip>Enable widget configuration</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/appwidgets/discoverability" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/appwidgets/discoverability" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/appwidgets/discoverability" ><span class="devsite-nav-text" tooltip>Widget discoverability</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/appwidgets/host" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/appwidgets/host" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/appwidgets/host" ><span class="devsite-nav-text" tooltip>Build a widget host</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/develop/ui/views/home-channels" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/home-channels" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/home-channels" ><span class="devsite-nav-text" tooltip>Integrate content with home channels ⍈</span></a></li><li class="devsite-nav-item"><a href="/develop/ui/views/device-control" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui/views/device-control" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui/views/device-control" ><span class="devsite-nav-text" tooltip>Control external devices</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Create backward-compatible UIs</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/training/backward-compatible-ui" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/backward-compatible-ui" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/backward-compatible-ui" ><span class="devsite-nav-text" tooltip>About backward-compatible UIs</span></a></li><li class="devsite-nav-item"><a href="/training/backward-compatible-ui/abstracting" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/backward-compatible-ui/abstracting" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/backward-compatible-ui/abstracting" ><span class="devsite-nav-text" tooltip>Abstract newer APIs</span></a></li><li class="devsite-nav-item"><a href="/training/backward-compatible-ui/new-implementation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/backward-compatible-ui/new-implementation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/backward-compatible-ui/new-implementation" ><span class="devsite-nav-text" tooltip>Proxy to newer APIs</span></a></li><li class="devsite-nav-item"><a href="/training/backward-compatible-ui/older-implementation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/backward-compatible-ui/older-implementation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/backward-compatible-ui/older-implementation" ><span class="devsite-nav-text" tooltip>Create an implementation with older APIs</span></a></li><li class="devsite-nav-item"><a href="/training/backward-compatible-ui/using-component" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/backward-compatible-ui/using-component" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/backward-compatible-ui/using-component" ><span class="devsite-nav-text" tooltip>Use the version-aware component</span></a></li></ul></div></li> </ul> <ul class="devsite-nav-list" menu="Essentials" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Gemini in Android Studio </span> </span> </li> <li class="devsite-nav-item"> <a href="/gemini-in-android" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Learn more" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Learn more </span> </a> </li> <li class="devsite-nav-item"> <a href="/studio" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Get Android Studio" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Get Android Studio </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Get started </span> </span> </li> <li class="devsite-nav-item"> <a href="/get-started/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Hello world" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Hello world </span> </a> </li> <li class="devsite-nav-item"> <a href="/courses" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Training courses" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Training courses </span> </a> </li> <li class="devsite-nav-item"> <a href="/get-started/codelabs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Tutorials" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Tutorials </span> </a> </li> <li class="devsite-nav-item"> <a href="/develop/ui/compose/adopt" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Compose for teams" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Compose for teams </span> </a> </li> <li class="devsite-nav-item"> <a href="/kotlin" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Kotlin for Android" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Kotlin for Android </span> </a> </li> <li class="devsite-nav-item"> <a href="https://play.google.com/console/about/guides/monetize/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Monetization with Play ↗️" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Monetization with Play ↗️ </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Extend by device </span> </span> </li> <li class="devsite-nav-item"> <a href="/adaptive-apps" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Adaptive apps" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Adaptive apps </span> </a> </li> <li class="devsite-nav-item"> <a href="/xr" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android XR" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android XR </span> </a> </li> <li class="devsite-nav-item"> <a href="/wear" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Wear OS" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Wear OS </span> </a> </li> <li class="devsite-nav-item"> <a href="/cars" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android for Cars" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android for Cars </span> </a> </li> <li class="devsite-nav-item"> <a href="/tv" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android TV" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android TV </span> </a> </li> <li class="devsite-nav-item"> <a href="/chrome-os" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: ChromeOS" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > ChromeOS </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Build by category </span> </span> </li> <li class="devsite-nav-item"> <a href="/games" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Games" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Games </span> </a> </li> <li class="devsite-nav-item"> <a href="/media" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Camera &amp; media" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Camera &amp; media </span> </a> </li> <li class="devsite-nav-item"> <a href="/social-and-messaging" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Social &amp; messaging" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Social &amp; messaging </span> </a> </li> <li class="devsite-nav-item"> <a href="/health-and-fitness" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Health &amp; fitness" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Health &amp; fitness </span> </a> </li> <li class="devsite-nav-item"> <a href="/productivity" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Productivity" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Productivity </span> </a> </li> <li class="devsite-nav-item"> <a href="/work/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Enterprise apps" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Enterprise apps </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Get the latest </span> </span> </li> <li class="devsite-nav-item"> <a href="/latest-updates" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Latest updates" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Latest updates </span> </a> </li> <li class="devsite-nav-item"> <a href="/latest-updates/experimental" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Experimental updates" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Experimental updates </span> </a> </li> <li class="devsite-nav-item"> <a href="/studio/preview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android Studio preview" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android Studio preview </span> </a> </li> <li class="devsite-nav-item"> <a href="/jetpack/androidx/versions" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Jetpack &amp; Compose libraries" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Jetpack &amp; Compose libraries </span> </a> </li> <li class="devsite-nav-item"> <a href="/training/wearables/versions/4" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Wear OS preview" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Wear OS preview </span> </a> </li> <li class="devsite-nav-item"> <a href="/design-for-safety/privacy-sandbox" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Privacy Sandbox" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Privacy Sandbox </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Design &amp; Plan" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > UI Design </span> </span> </li> <li class="devsite-nav-item"> <a href="/design/ui" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Design for Android" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Design for Android </span> </a> </li> <li class="devsite-nav-item"> <a href="/design/ui/mobile" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Mobile" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Mobile </span> </a> </li> <li class="devsite-nav-item"> <a href="/design/ui/large-screens" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Adaptive UI" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Adaptive UI </span> </a> </li> <li class="devsite-nav-item"> <a href="/design/ui/xr" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android XR" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android XR </span> </a> </li> <li class="devsite-nav-item"> <a href="/design/ui/widget" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Widgets" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Widgets </span> </a> </li> <li class="devsite-nav-item"> <a href="/design/ui/wear" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Wear OS" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Wear OS </span> </a> </li> <li class="devsite-nav-item"> <a href="/design/ui/tv" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android TV" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android TV </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Architecture </span> </span> </li> <li class="devsite-nav-item"> <a href="/topic/architecture/intro" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Introduction" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Introduction </span> </a> </li> <li class="devsite-nav-item"> <a href="/topic/libraries/view-binding" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Libraries" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Libraries </span> </a> </li> <li class="devsite-nav-item"> <a href="/guide/navigation/navigation-principles" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Navigation" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Navigation </span> </a> </li> <li class="devsite-nav-item"> <a href="/topic/modularization" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Modularization" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Modularization </span> </a> </li> <li class="devsite-nav-item"> <a href="/training/testing/fundamentals" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Testing" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Testing </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Quality </span> </span> </li> <li class="devsite-nav-item"> <a href="/quality" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Overview" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Overview </span> </a> </li> <li class="devsite-nav-item"> <a href="/quality/core-value" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Core value" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Core value </span> </a> </li> <li class="devsite-nav-item"> <a href="/quality/user-experience" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: User experience" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > User experience </span> </a> </li> <li class="devsite-nav-item"> <a href="/guide/topics/ui/accessibility" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Accessibility" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Accessibility </span> </a> </li> <li class="devsite-nav-item"> <a href="/quality/technical" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Technical quality" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Technical quality </span> </a> </li> <li class="devsite-nav-item"> <a href="/quality/privacy-and-security" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Security" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Security </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Security </span> </span> </li> <li class="devsite-nav-item"> <a href="/security" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Overview" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Overview </span> </a> </li> <li class="devsite-nav-item"> <a href="/privacy-and-security/about" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Privacy" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Privacy </span> </a> </li> <li class="devsite-nav-item"> <a href="/guide/topics/permissions/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Permissions" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Permissions </span> </a> </li> <li class="devsite-nav-item"> <a href="/identity" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Identity" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Identity </span> </a> </li> <li class="devsite-nav-item"> <a href="/security/fraud-prevention" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Fraud prevention" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Fraud prevention </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Build for Billions </span> </span> </li> <li class="devsite-nav-item"> <a href="/build-for-billions" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Overview" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Overview </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/quality-guidelines/build-for-billions" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: About new markets" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > About new markets </span> </a> </li> <li class="devsite-nav-item"> <a href="/guide/topics/androidgo" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android (Go edition)" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android (Go edition) </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Develop" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Build AI experiences </span> </span> </li> <li class="devsite-nav-item"> <a href="/ai" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Get started" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Get started </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Core areas </span> </span> </li> <li class="devsite-nav-item"> <a href="/samples" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Samples" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Samples </span> </a> </li> <li class="devsite-nav-item"> <a href="/develop/ui" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: User interfaces" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > User interfaces </span> </a> </li> <li class="devsite-nav-item"> <a href="/develop/background-work" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Background work" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Background work </span> </a> </li> <li class="devsite-nav-item"> <a href="/guide/topics/data" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Data and files" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Data and files </span> </a> </li> <li class="devsite-nav-item"> <a href="/develop/connectivity" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Connectivity" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Connectivity </span> </a> </li> <li class="devsite-nav-item"> <a href="/develop#core-areas" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: All core areas ⤵️" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > All core areas ⤵️ </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Tools and workflow </span> </span> </li> <li class="devsite-nav-item"> <a href="/studio/write" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Write and debug code" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Write and debug code </span> </a> </li> <li class="devsite-nav-item"> <a href="/build/gradle-build-overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Build projects" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Build projects </span> </a> </li> <li class="devsite-nav-item"> <a href="/training/testing" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Test your app" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Test your app </span> </a> </li> <li class="devsite-nav-item"> <a href="/topic/performance/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Performance" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Performance </span> </a> </li> <li class="devsite-nav-item"> <a href="/tools" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Command-line tools" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Command-line tools </span> </a> </li> <li class="devsite-nav-item"> <a href="/reference/tools/gradle-api" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Gradle plugin API" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Gradle plugin API </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Device tech </span> </span> </li> <li class="devsite-nav-item"> <a href="/guide/topics/large-screens/get-started-with-large-screens" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Adaptive UI" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Adaptive UI </span> </a> </li> <li class="devsite-nav-item"> <a href="/training/wearables" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Wear OS" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Wear OS </span> </a> </li> <li class="devsite-nav-item"> <a href="/develop/xr" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android XR" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android XR </span> </a> </li> <li class="devsite-nav-item"> <a href="/health-and-fitness/guides" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android Health" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android Health </span> </a> </li> <li class="devsite-nav-item"> <a href="/training/cars" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android for Cars" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android for Cars </span> </a> </li> <li class="devsite-nav-item"> <a href="/training/tv" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android TV" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android TV </span> </a> </li> <li class="devsite-nav-item"> <a href="/develop#devices" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: All devices ⤵️" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > All devices ⤵️ </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Libraries </span> </span> </li> <li class="devsite-nav-item"> <a href="/reference/packages" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android platform" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android platform </span> </a> </li> <li class="devsite-nav-item"> <a href="/jetpack/androidx/explorer" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Jetpack libraries" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Jetpack libraries </span> </a> </li> <li class="devsite-nav-item"> <a href="/jetpack/androidx/releases/compose" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Compose libraries" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Compose libraries </span> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/android/reference/packages" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Play services ↗️" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Play services ↗️ </span> </a> </li> <li class="devsite-nav-item"> <a href="https://play.google.com/sdks" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Play SDK index ↗️" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Play SDK index ↗️ </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" id="main-content" class="devsite-main-content" has-book-nav has-sidebar > <div class="devsite-sidebar"> <div class="devsite-sidebar-content"> <devsite-toc class="devsite-nav" role="navigation" aria-label="On this page" depth="2" scrollbars ></devsite-toc> <devsite-recommendations-sidebar class="nocontent devsite-nav"> </devsite-recommendations-sidebar> </div> </div> <devsite-content> <article class="devsite-article"> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://developer.android.com/" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Android Developers" > Android Developers </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developer.android.com/develop" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="Develop" > Develop </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developer.android.com/develop/core-areas" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="3" track-type="globalNav" track-name="breadcrumb" track-metadata-position="3" track-metadata-eventdetail="Core areas" > Core areas </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developer.android.com/develop/ui" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="4" track-type="globalNav" track-name="breadcrumb" track-metadata-position="4" track-metadata-eventdetail="Jetpack Compose" > UI </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developer.android.com/develop/ui/views/layout/declaring-layout" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="5" track-type="globalNav" track-name="breadcrumb" track-metadata-position="5" track-metadata-eventdetail="Views" > Views </a> </li> </ul> <devsite-thumb-rating position="header"> </devsite-thumb-rating> </div> <h1 class="devsite-page-title" tabindex="-1"> Add a font as an XML resource </h1> <devsite-feature-tooltip ack-key="AckCollectionsBookmarkTooltipDismiss" analytics-category="Site-Wide Custom Events" analytics-action-show="Callout Profile displayed" analytics-action-close="Callout Profile dismissed" analytics-label="Create Collection Callout" class="devsite-page-bookmark-tooltip nocontent" dismiss-button="true" id="devsite-collections-dropdown" dismiss-button-text="Dismiss" close-button-text="Got it"> <devsite-bookmark></devsite-bookmark> <span slot="popout-heading"> Stay organized with collections </span> <span slot="popout-contents"> Save and categorize content based on your preferences. </span> </devsite-feature-tooltip> <div class="devsite-page-title-meta"><devsite-view-release-notes></devsite-view-release-notes></div> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded > </devsite-toc> <devsite-recommendations-dropdown class="nocontent"></devsite-recommendations-dropdown> <div class="devsite-article-body clearfix "> <div class="android-page-banner android-page-banner-image-bottom-right"> <div class="android-page-banner-content"> <div class="android-page-banner-title"> Try the Compose way </div> <div class="android-page-banner-description"> Jetpack Compose is the recommended UI toolkit for Android. Learn how to use text in Compose. </div> <div class="android-page-banner-cta"> <a href=https://developer.android.com/develop/ui/compose/text/fonts#set-font> Set font &rarr; </a> </div> </div> <div class="android-page-banner-media"> <picture> <source class="devsite-dark-theme" srcset="https://developer.android.com/static/images/android-compose-ui-logo_dt.png" media="(prefers-color-scheme: dark)" alt=""> <img alt class="android-page-banner-image" src="/static/images/android-compose-ui-logo.png"> </picture> </div> </div> <p> Android 8.0 (API level 26) introduces fonts in XML, a feature that lets you use fonts as resources. You can add the <code translate="no" dir="ltr">font</code> file in the <code translate="no" dir="ltr">res/font/</code> folder to bundle fonts as resources. These fonts are compiled in your <code translate="no" dir="ltr">R</code> file and are automatically available in Android Studio. You can access the font resources using the <code translate="no" dir="ltr">font</code> resource type. For example, to access a font resource, use <code translate="no" dir="ltr">@font/myfont</code>, or <code translate="no" dir="ltr">R.font.myfont</code>. </p> <p> To use the fonts in XML feature on devices running Android 4.1 (API level 16) and higher, use Support Library 26.0. For more information on using the Support Library, refer to the <a href="#using-support-lib">Use the Support Library</a> section. </p> <p> To add fonts as resources, perform the following steps in Android Studio: <p> <ol> <li>Right-click the <b>res</b> folder and go to <b>New > Android resource directory</b>. The <b>New Resource Directory</b> window appears.</li> <li>In the <b>Resource type</b> list, select <b>font</b>, then click <b>OK</b>. <p class="note"><b>Note</b>: The name of the resource directory must be <b>font</b>. </p> <img src="/static/guide/topics/ui/images/look-and-feel/fonts-in-xml/resource-directory-font.png" alt="Adding the font resource directory" style="width:700px; height:451px;"/> <p class="img-caption"> <b>Figure 1.</b> Adding the font resource directory. </p> </li> <li>Add your font files in the <code translate="no" dir="ltr">font</code> folder. <p> The folder structure below generates <code translate="no" dir="ltr">R.font.dancing_script</code>, <code translate="no" dir="ltr">R.font.lobster</code>, and <code translate="no" dir="ltr">R.font.typo_graphica</code>. </p> <img src="/static/guide/topics/ui/images/look-and-feel/fonts-in-xml/font-files-structure.png" alt="Adding the font files in the resource directory"/> <p class="img-caption"> <b>Figure 2.</b> Adding the font files in the <code translate="no" dir="ltr">res/font</code> directory. </p> </li> <li>Double-click a font file to preview the file's fonts in the editor. <img src="/static/guide/topics/ui/images/look-and-feel/fonts-in-xml/preview-font.png" alt="Previewing the font file"/> <p class="img-caption"><b>Figure 3.</b> Previewing the font file. </p> </li> </ol> <h3 id="font-family" data-text="Create a font family" tabindex="-1">Create a font family</h3> <p> A font family is a set of font files along with style and weight details. In Android, you can create a new font family as an XML resource and access it as a single unit, instead of referencing each style and weight as separate resources. By doing this, you let the system select the correct font based on the text style you are using. </p> <p>To create a font family, perform the following steps in Android Studio: </p> <ol> <li>Right-click the <code translate="no" dir="ltr">font</code> folder and select <b>New > Font resource file</b>. The <b>New Resource File</b> window appears.</li> <li>Enter the filename, then click <b>OK</b>. The new font resource XML opens in the editor.</li> <li>Enclose each font file, style, and weight attribute in the <code translate="no" dir="ltr">&lt;font&gt;</code> element. The following XML illustrates adding font-related attributes in the font resource XML: <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="XML">&lt;?xml<span class="devsite-syntax-w"> </span>version="1.0"<span class="devsite-syntax-w"> </span>encoding="utf-8"?&gt; &lt;font-family<span class="devsite-syntax-w"> </span>xmlns:android="http://schemas.android.com/apk/res/android"&gt; <span class="devsite-syntax-w"> </span>&lt;font <span class="devsite-syntax-w"> </span>android:fontStyle="normal" <span class="devsite-syntax-w"> </span>android:fontWeight="400" <span class="devsite-syntax-w"> </span>android:font="@font/lobster_regular"<span class="devsite-syntax-w"> </span>/&gt; <span class="devsite-syntax-w"> </span>&lt;font <span class="devsite-syntax-w"> </span>android:fontStyle="italic" <span class="devsite-syntax-w"> </span>android:fontWeight="400" <span class="devsite-syntax-w"> </span>android:font="@font/lobster_italic"<span class="devsite-syntax-w"> </span>/&gt; &lt;/font-family&gt;</pre></devsite-code> </li> </ol> <h3 id="fonts-in-xml" data-text="Use fonts in XML layouts" tabindex="-1">Use fonts in XML layouts</h3> <p> Use your fonts, either a single font file or a font from a font family, in <code translate="no" dir="ltr"><a href="/reference/android/widget/TextView">TextView</a></code> objects or in styles by using the <code translate="no" dir="ltr">fontFamily</code> attribute. </p> <p class="note"><b>Note:</b> When you use a font family, the <code translate="no" dir="ltr">TextView</code> switches on its own, as needed, to use the font files from that family. </p> <h4 id="add-fonts-to-a-textview" data-text="Add fonts to a TextView" tabindex="-1">Add fonts to a TextView</h4> <p> To set a font for a <code translate="no" dir="ltr">TextView</code>, do one of the following: </p> <ul> <li>In the layout XML file, set the <code translate="no" dir="ltr">fontFamily</code> attribute to the font file you want to access. <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="XML">&lt;TextView <span class="devsite-syntax-w"> </span>android:layout_width="wrap_content" <span class="devsite-syntax-w"> </span>android:layout_height="wrap_content" <span class="devsite-syntax-w"> </span>android:fontFamily="@font/lobster"/&gt;</pre></devsite-code> </li> <li>Open the <b>Properties</b> window to set the font for the <code translate="no" dir="ltr">TextView</code>. <ol> <li>Select a view to open the <b>Properties</b> window. <p class="note"><b>Note:</b> The <b>Properties</b> window is available only when the design editor is open. Select the <b>Design</b> tab at the bottom of the window. </p> </li> <li>Expand the <b>textAppearance</b> property, and then select the font from the <em>fontFamily</em> list.</li> <li style="list-style: none; display: inline"> <img src="/static/guide/topics/ui/images/look-and-feel/fonts-in-xml/property-window.png" width="300;" alt="Selecting the font from Properties"/> <p class="img-caption"><b>Figure 4.</b> Selecting the font from the <b>Properties</b> window. </p> </li> </ol> </li> </ul> <p> The Android Studio layout preview, shown in the rightmost pane in Figure 5, lets you preview the font set in the <code translate="no" dir="ltr">TextView</code>. </p> <img src="/static/guide/topics/ui/images/look-and-feel/fonts-in-xml/xml-font-preview.png" alt="Previewing fonts in layout preview"/> <p class="img-caption"><b>Figure 5.</b> Previewing fonts in layout preview. </p> <h4 id="add-fonts-to-a-style" data-text="Add fonts to a style" tabindex="-1">Add fonts to a style</h4> <p>Open the <code translate="no" dir="ltr">styles.xml</code> file and set the <code translate="no" dir="ltr">fontFamily</code> attribute to the font file you want to access.</p> <li style="list-style: none; display: inline"> <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="XML">&lt;style<span class="devsite-syntax-w"> </span>name="customfontstyle"<span class="devsite-syntax-w"> </span>parent="@android:style/TextAppearance.Small"&gt; <span class="devsite-syntax-w"> </span>&lt;item<span class="devsite-syntax-w"> </span>name="android:fontFamily"&gt;@font/lobster&lt;/item&gt; &lt;/style&gt;</pre></devsite-code> </li> <h3 id="fonts-in-code" data-text="Use fonts programmatically" tabindex="-1">Use fonts programmatically</h3> <p>To retrieve fonts programmatically, call the <code translate="no" dir="ltr"><a href="/reference/android/content/res/Resources#getFont(int)">getFont(int)</a></code> method and provide the resource identifier of the font you want to retrieve. This method returns a <code translate="no" dir="ltr"><a href="/reference/android/graphics/Typeface">Typeface</a></code> object. Although the system picks the best style for you from the fonts' information, you can use the <code translate="no" dir="ltr"><a href="/reference/android/widget/TextView#setTypeface(android.graphics.Typeface, int)">setTypeface(android.graphics.Typeface, int)</a></code> method to set the typeface with specific styles. </p> <p class="note"><b>Note:</b> The <code translate="no" dir="ltr">TextView</code> does this for you. </p> <div> <div class="ds-selector-tabs"><section><h3 id="kotlin" data-text="Kotlin" tabindex="-1">Kotlin</h3> <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="Kotlin"><span class="devsite-syntax-kd">val</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-nv">typeface</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">resources</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">getFont</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">R</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">font</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">myfont</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-n">textView</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">typeface</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">typeface</span></pre></devsite-code> </section><section><h3 id="java" data-text="Java" tabindex="-1">Java</h3> <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="Java"><span class="devsite-syntax-n">Typeface</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">typeface</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">getResources</span><span class="devsite-syntax-p">().</span><span class="devsite-syntax-na">getFont</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">R</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">font</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">myfont</span><span class="devsite-syntax-p">);</span> <span class="devsite-syntax-n">textView</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setTypeface</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">typeface</span><span class="devsite-syntax-p">);</span></pre></devsite-code> </section></div> </div> <h3 id="using-support-lib" data-text="Use the Support Library" tabindex="-1">Use the Support Library</h3> <p> The Support Library 26.0 supports fonts in XML on devices running Android 4.1 (API level 16) and higher. </p> <p class="note"><b>Note</b>: When you declare font families in XML layout through the Support Library, use the <b>app</b> namespace to ensure that your fonts load. </p> <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="XML">&lt;?xml<span class="devsite-syntax-w"> </span>version="1.0"<span class="devsite-syntax-w"> </span>encoding="utf-8"?&gt; &lt;font-family<span class="devsite-syntax-w"> </span>xmlns:app="http://schemas.android.com/apk/res-auto"&gt; <span class="devsite-syntax-w"> </span>&lt;font<span class="devsite-syntax-w"> </span>app:fontStyle="normal"<span class="devsite-syntax-w"> </span>app:fontWeight="400"<span class="devsite-syntax-w"> </span>app:font="@font/myfont-Regular"/&gt; <span class="devsite-syntax-w"> </span>&lt;font<span class="devsite-syntax-w"> </span>app:fontStyle="italic"<span class="devsite-syntax-w"> </span>app:fontWeight="400"<span class="devsite-syntax-w"> </span>app:font="@font/myfont-Italic"<span class="devsite-syntax-w"> </span>/&gt; &lt;/font-family&gt;</pre></devsite-code> <p> To retrieve fonts programmatically, call the <code translate="no" dir="ltr">ResourceCompat.getFont(Context, int)</code> method and provide an instance of <code translate="no" dir="ltr">Context</code> and the resource identifier. </p> <div> <div class="ds-selector-tabs"><section><h3 id="kotlin" data-text="Kotlin" tabindex="-1">Kotlin</h3> <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="Kotlin"><span class="devsite-syntax-kd">val</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-nv">typeface</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">ResourcesCompat</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">getFont</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">context</span><span class="devsite-syntax-p">,</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">R</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">font</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">myfont</span><span class="devsite-syntax-p">)</span></pre></devsite-code> </section><section><h3 id="java" data-text="Java" tabindex="-1">Java</h3> <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="Java"><span class="devsite-syntax-n">Typeface</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">typeface</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">ResourcesCompat</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">getFont</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">context</span><span class="devsite-syntax-p">,</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">R</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">font</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">myfont</span><span class="devsite-syntax-p">);</span></pre></devsite-code> </section></div> </div> <devsite-hats-survey class="nocontent" hats-id="onAFgYxTD0kxBYCLVTd0Z41p75CM" listnr-id="5207477"></devsite-hats-survey> </div> <devsite-recommendations display="in-page" hidden yield> </devsite-recommendations> <devsite-thumb-rating position="footer"> </devsite-thumb-rating> <devsite-recommendations id="recommendations-link" yield></devsite-recommendations> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-content-footer class="nocontent"> <p>Content and code samples on this page are subject to the licenses described in the <a href="/license">Content License</a>. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.</p> <p>Last updated 2024-11-04 UTC.</p> </devsite-content-footer> <devsite-notification link="https://google.qualtrics.com/jfe/form/SV_cRR9tonbkUQYb5Q?link=dac" link-text="Take survey" message="Please help us improve the Android Developer experience by taking a short survey." > </devsite-notification> <div class="devsite-content-data"> <template class="devsite-content-data-template"> [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-11-04 UTC."],[],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> <nav class="devsite-footer-promos nocontent" aria-label="Promotions"> <ul class="devsite-footer-promos-list"> <li class="devsite-footer-promo"> <a href="//x.com/AndroidDev" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer X Promo" > <picture> <source class="devsite-dark-theme" srcset="https://developer.android.com/_static/android/images/logo-x_dt.svg" media="(prefers-color-scheme: dark)" loading="lazy" alt="X"> <img class="devsite-footer-promo-icon" src="/_static/android/images/logo-x.svg" loading="lazy" alt="X"> </picture> <span class="devsite-footer-promo-label"> X </span> </a> <div class="devsite-footer-promo-description">Follow @AndroidDev on X</div> </li> <li class="devsite-footer-promo"> <a href="//www.youtube.com/user/androiddevelopers" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer YouTube Promo" > <picture> <source class="devsite-dark-theme" srcset="https://developer.android.com/_static/android/images/logo-youtube_dt.svg" media="(prefers-color-scheme: dark)" loading="lazy" alt="YouTube"> <img class="devsite-footer-promo-icon" src="//www.gstatic.com/images/icons/material/product/2x/youtube_48dp.png" loading="lazy" alt="YouTube"> </picture> <span class="devsite-footer-promo-label"> YouTube </span> </a> <div class="devsite-footer-promo-description">Check out Android Developers on YouTube</div> </li> <li class="devsite-footer-promo"> <a href="//www.linkedin.com/showcase/androiddev" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer LinkedIn Promo" > <picture> <source class="devsite-dark-theme" srcset="https://developer.android.com/_static/android/images/logo-linkedin_dt.svg" media="(prefers-color-scheme: dark)" loading="lazy" alt="LinkedIn"> <img class="devsite-footer-promo-icon" src="/_static/android/images/logo-linkedin.svg" loading="lazy" alt="LinkedIn"> </picture> <span class="devsite-footer-promo-label"> LinkedIn </span> </a> <div class="devsite-footer-promo-description">Connect with the Android Developers community on LinkedIn</div> </li> </ul> </nav> </devsite-footer-promos> <devsite-footer-linkboxes class="devsite-footer"> <nav class="devsite-footer-linkboxes nocontent" aria-label="Footer links"> <ul class="devsite-footer-linkboxes-list"> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">More Android</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//www.android.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Android </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//www.android.com/enterprise/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Android for Enterprise </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//www.android.com/security-center/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Security </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//source.android.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Source </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/news" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > News </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//android-developers.googleblog.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)" > Blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/podcasts" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 7)" > Podcasts </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Discover</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/games" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Gaming </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/ml" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Machine Learning </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/health-and-fitness" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Health & Fitness </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/media" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Camera & Media </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/privacy" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Privacy </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/training/connectivity/5g" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)" > 5G </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Android Devices</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/large-screens" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Large screens </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/wear" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Wear OS </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/chrome-os" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > ChromeOS devices </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/cars" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Android for cars </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/tv" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Android TV </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Releases</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/about/versions/15" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Android 15 </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/about/versions/14" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Android 14 </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/about/versions/13" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Android 13 </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/about/versions/12" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Android 12 </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/about/versions/11" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Android 11 </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/about/versions/10" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)" > Android 10 </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/about/versions/pie" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 7)" > Pie </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Documentation and Downloads</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/studio/intro" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Android Studio guide </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/guide" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Developers guides </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/reference" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > API reference </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/studio" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Download Studio </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/ndk" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Android NDK </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Support</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//issuetracker.google.com/issues/new?component=190923&amp;template=841312" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Report platform bug </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//issuetracker.google.com/issues/new?component=192697" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Report documentation bug </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//support.google.com/googleplay/android-developer" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Google Play support </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://g.co/userresearch/androiddeveloperfooter" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Join research studies </a> </li> </ul> </li> </ul> </nav> </devsite-footer-linkboxes> <devsite-footer-utility class="devsite-footer"> <div class="devsite-footer-utility nocontent"> <nav class="devsite-footer-sites" aria-label="Other Google Developers websites"> <a href="https://developers.google.com/" class="devsite-footer-sites-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Developers Link"> <picture> <source srcset="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/lockup-google-for-developers-dark-theme.svg" media="(prefers-color-scheme: none)" class="devsite-dark-theme" loading="lazy" alt="Google Developers"> <img class="devsite-footer-sites-logo" src="https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/lockup-google-for-developers.svg" loading="lazy" alt="Google Developers"> </picture> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//developer.android.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Android Link" > Android </a> </li> <li class="devsite-footer-sites-item"> <a href="//developer.chrome.com/home" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Chrome Link" > Chrome </a> </li> <li class="devsite-footer-sites-item"> <a href="//firebase.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Firebase Link" > Firebase </a> </li> <li class="devsite-footer-sites-item"> <a href="//cloud.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Cloud Platform Link" > Google Cloud Platform </a> </li> <li class="devsite-footer-sites-item"> <a href="//developers.google.com/products/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer All products Link" > All products </a> </li> </ul> </nav> <nav class="devsite-footer-utility-links" aria-label="Utility links"> <ul class="devsite-footer-utility-list"> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link" > Privacy </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/license" data-category="Site-Wide Custom Events" data-label="Footer License link" > License </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/distribute/marketing-tools/brand-guidelines" data-category="Site-Wide Custom Events" data-label="Footer Brand guidelines link" > Brand guidelines </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> <li class="devsite-footer-utility-item devsite-footer-utility-button"> <span class="devsite-footer-utility-description">Get news and tips by email</span> <a class="devsite-footer-utility-link gc-analytics-event" href="/updates" data-category="Site-Wide Custom Events" data-label="Footer Subscribe link" > Subscribe </a> </li> </ul> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es_419" >Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="it" >Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi" >Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr" >Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he" >עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar" >العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa" >فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi" >हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn" >বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th" >ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> </nav> </div> </devsite-footer-utility> <devsite-panel></devsite-panel> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip ></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics> <script type="application/json" analytics>[]</script> <script type="application/json" tag-management>{&#34;at&#34;: &#34;True&#34;, &#34;ga4&#34;: [{&#34;id&#34;: &#34;G-QFRN08RN6E&#34;, &#34;purpose&#34;: 0}], &#34;ga4p&#34;: [{&#34;id&#34;: &#34;G-QFRN08RN6E&#34;, &#34;purpose&#34;: 0}], &#34;gtm&#34;: [{&#34;id&#34;: &#34;GTM-KMSWPCJ&#34;, &#34;purpose&#34;: 0}], &#34;parameters&#34;: {&#34;internalUser&#34;: &#34;False&#34;, &#34;language&#34;: {&#34;machineTranslated&#34;: &#34;False&#34;, &#34;requested&#34;: &#34;en&#34;, &#34;served&#34;: &#34;en&#34;}, &#34;pageType&#34;: &#34;article&#34;, &#34;projectName&#34;: &#34;Views&#34;, &#34;signedIn&#34;: &#34;False&#34;, &#34;tenant&#34;: &#34;android&#34;, &#34;recommendations&#34;: {&#34;sourcePage&#34;: &#34;&#34;, &#34;sourceType&#34;: 0, &#34;sourceRank&#34;: 0, &#34;sourceIdenticalDescriptions&#34;: 0, &#34;sourceTitleWords&#34;: 0, &#34;sourceDescriptionWords&#34;: 0, &#34;experiment&#34;: &#34;&#34;}, &#34;experiment&#34;: {&#34;ids&#34;: &#34;&#34;}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <android-fully-clickable target=" .android-case-study .devsite-landing-row-item, .android-editorial-and-updates-cards .devsite-card-content-wrapper, .android-grouped-resources .devsite-landing-row-item, .android-grouped-resources-contained--primary .devsite-landing-row-item, .android-grouped-resources-contained--secondary .devsite-landing-row-item, .android-grouped-resources-contained--tertiary .devsite-landing-row-item, .android-grouped-resources-uncontained--primary .devsite-landing-row-item, .android-grouped-resources-uncontained--secondary .devsite-landing-row-item, .android-grouped-resources-uncontained--tertiary .devsite-landing-row-item, .android-guide-cards .devsite-landing-row-item, .android-illustrated-resources-index .devsite-landing-row-item, .android-illustrated-resources-primary .devsite-landing-row-item, .android-illustrated-resources-secondary .devsite-landing-row-item, .android-illustrated-resources-secondary-small .devsite-landing-row-item, .android-illustrated-resources-tertiary .devsite-landing-row-item, .android-illustrated-resources-tertiary-small .devsite-landing-row-item, .android-promo .devsite-landing-row-item, .android-quick-link, .android-samples .devsite-card-wrapper, .fully-clickable" watch=".android-editorial-and-updates-cards, .android-samples, devsite-content"></android-fully-clickable> <script nonce="sII0NFlg8zazNsoS2AwBDmXXJp+x8p"> (function(d,e,v,s,i,t,E){d['GoogleDevelopersObject']=i; t=e.createElement(v);t.async=1;t.src=s;E=e.getElementsByTagName(v)[0]; E.parentNode.insertBefore(t,E);})(window, document, 'script', 'https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/js/app_loader.js', '[3,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f","https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android","https://android-dot-devsite-v2-prod.appspot.com",null,null,["/_pwa/android/manifest.json","https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/favicon.svg","https://www.gstatic.com/devrel-devsite/prod/vdbb152dfd6ef5e309aa1d261d45f3fd443aed2691cbfba3f9f80f8a4012a0a8f/android/images/lockup.svg","https://fonts.googleapis.com/css?family=Google+Sans:400,500,600,700|Google+Sans+Text:400,400italic,500,500italic,600,600italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg","developer.android.com","AIzaSyAQk0fBONSGUqCNznf6Krs82Ap1-NV6J4o","AIzaSyCCxcqdrZ_7QMeLCRY20bh_SXdAYqy70KY",null,null,null,["Cloud__enable_legacy_calculator_redirect","MiscFeatureFlags__developers_footer_image","Analytics__enable_clearcut_logging","DevPro__enable_developer_subscriptions","CloudShell__cloud_code_overflow_menu","MiscFeatureFlags__enable_view_transitions","Search__enable_ai_eligibility_checks","Cloud__enable_cloud_shell_fte_user_flow","Cloud__enable_cloudx_experiment_ids","DevPro__enable_cloud_innovators_plus","Profiles__enable_profile_collections","Cloud__enable_llm_concierge_chat","MiscFeatureFlags__enable_firebase_utm","Experiments__reqs_query_experiments","TpcFeatures__enable_unmirrored_page_left_nav","Profiles__enable_stripe_subscription_management","Profiles__enable_complete_playlist_endpoint","Search__enable_suggestions_from_borg","Profiles__enable_join_program_group_endpoint","MiscFeatureFlags__enable_project_variables","Cloud__enable_cloud_dlp_service","Profiles__enable_completecodelab_endpoint","MiscFeatureFlags__enable_dark_theme","Profiles__enable_awarding_url","Profiles__enable_completequiz_endpoint","Significatio__enable_by_tenant","Profiles__enable_public_developer_profiles","Profiles__require_profile_eligibility_for_signin","TpcFeatures__enable_mirror_tenant_redirects","Profiles__enable_recognition_badges","Profiles__enable_page_saving","BookNav__enable_tenant_cache_key","EngEduTelemetry__enable_engedu_telemetry","CloudShell__cloud_shell_button","Profiles__enable_release_notes_notifications","MiscFeatureFlags__enable_variable_operator","Profiles__enable_dashboard_curated_recommendations","Cloud__enable_free_trial_server_call","MiscFeatureFlags__enable_explain_this_code","Cloud__enable_cloud_facet_chat","Search__enable_dynamic_content_confidential_banner","MiscFeatureFlags__developers_footer_dark_image","Profiles__enable_developer_profiles_callout","Cloud__enable_cloudx_ping","MiscFeatureFlags__emergency_css","Search__enable_ai_search_summaries","Search__enable_page_map","Cloud__enable_cloud_shell","Concierge__enable_pushui"],null,null,"AIzaSyBLEMok-5suZ67qRPzx0qUtbnLmyT_kCVE","https://developerscontentserving-pa.googleapis.com","AIzaSyCM4QpTRSqP5qI4Dvjt4OAScIN8sOUlO-k","https://developerscontentsearch-pa.googleapis.com",2,4,null,"https://developerprofiles-pa.googleapis.com",[3,"android","Android Developers","developer.android.com",null,"android-dot-devsite-v2-prod.appspot.com",null,null,[null,1,null,null,null,null,null,null,null,null,null,[1],null,null,null,null,null,null,[1],[1,null,null,[1,20],"/recommendations"],null,null,null,[1,null,1],[1,1,null,1,1]],null,[18,null,null,null,null,null,"/images/lockup.svg","/images/touchicon-180.png",null,null,null,null,null,null,null,null,null,null,null,null,null,2,null,null,null,"/images/lockup-dark-theme.svg",[]],[],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[6,1,14,15,20,22,23,28,29,37,43],null,[[null,null,1],[1,1]],[[null,null,null,null,null,null,null,[["G-QFRN08RN6E"],null,null,[["G-QFRN08RN6E",1]]],null,null,null,null,1],null,[[2,2],[1,1]]],null,4,null,null,null,null,null,null,null,null,null,null,null,null,null,"android.devsite.google"],null,"pk_live_5170syrHvgGVmSx9sBrnWtA5luvk9BwnVcvIi7HizpwauFG96WedXsuXh790rtij9AmGllqPtMLfhe2RSwD6Pn38V00uBCydV4m",1]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10