CINXE.COM

Engage SDK Social: Third-party technical integration instructions  |  Android Developers

<!doctype html> <html lang="en" dir="ltr"> <head> <base href="https://developer.android.com/guide/playcore/engage/social"> <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&amp;display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&amp;family=Material+Symbols+Outlined&amp;display=block"> <link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/android/css/app.css"> <link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/android/css/dark-theme.css" disabled> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/android/images/favicon.svg"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/android/images/touchicon-180.png"> <link rel="canonical" href="https://developer.android.com/guide/playcore/engage/social"> <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/guide/playcore/engage/social"> <link rel="alternate" hreflang="x-default" href="https://developer.android.com/guide/playcore/engage/social"> <link rel="alternate" hreflang="ar" href="https://developer.android.com/guide/playcore/engage/social?hl=ar"> <link rel="alternate" hreflang="bn" href="https://developer.android.com/guide/playcore/engage/social?hl=bn"> <link rel="alternate" hreflang="zh-Hans" href="https://developer.android.com/guide/playcore/engage/social?hl=zh-cn"> <link rel="alternate" hreflang="zh-Hant" href="https://developer.android.com/guide/playcore/engage/social?hl=zh-tw"> <link rel="alternate" hreflang="fa" href="https://developer.android.com/guide/playcore/engage/social?hl=fa"> <link rel="alternate" hreflang="fr" href="https://developer.android.com/guide/playcore/engage/social?hl=fr"> <link rel="alternate" hreflang="de" href="https://developer.android.com/guide/playcore/engage/social?hl=de"> <link rel="alternate" hreflang="he" href="https://developer.android.com/guide/playcore/engage/social?hl=he"> <link rel="alternate" hreflang="hi" href="https://developer.android.com/guide/playcore/engage/social?hl=hi"> <link rel="alternate" hreflang="id" href="https://developer.android.com/guide/playcore/engage/social?hl=id"> <link rel="alternate" hreflang="it" href="https://developer.android.com/guide/playcore/engage/social?hl=it"> <link rel="alternate" hreflang="ja" href="https://developer.android.com/guide/playcore/engage/social?hl=ja"> <link rel="alternate" hreflang="ko" href="https://developer.android.com/guide/playcore/engage/social?hl=ko"> <link rel="alternate" hreflang="pl" href="https://developer.android.com/guide/playcore/engage/social?hl=pl"> <link rel="alternate" hreflang="pt-BR" href="https://developer.android.com/guide/playcore/engage/social?hl=pt-br"> <link rel="alternate" hreflang="ru" href="https://developer.android.com/guide/playcore/engage/social?hl=ru"> <link rel="alternate" hreflang="es-419" href="https://developer.android.com/guide/playcore/engage/social?hl=es-419"> <link rel="alternate" hreflang="th" href="https://developer.android.com/guide/playcore/engage/social?hl=th"> <link rel="alternate" hreflang="tr" href="https://developer.android.com/guide/playcore/engage/social?hl=tr"> <link rel="alternate" hreflang="vi" href="https://developer.android.com/guide/playcore/engage/social?hl=vi"> <title>Engage SDK Social: Third-party technical integration instructions &nbsp;|&nbsp; Android Developers</title> <meta property="og:title" content="Engage SDK Social: Third-party technical integration instructions &nbsp;|&nbsp; Android Developers"> <meta property="og:url" content="https://developer.android.com/guide/playcore/engage/social"> <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": "Engage SDK Social: Third-party technical integration instructions" } </script> <link rel="stylesheet" href="/extras.css"> <meta http-equiv="X-Translated-By" content="Google"> <meta http-equiv="X-Translated-To" content="en"> <script type="text/javascript" src="https://www.gstatic.com/_/translate_http/_/js/k=translate_http.tr.en_GB.1hbgkFx4Qn8.O/am=DgY/d=1/rs=AN8SPfqlmAPxwfG457BPbRXwNq39oSMGHg/m=corsproxy" data-sourceurl="https://developer.android.com/guide/playcore/engage/social"></script> <link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200" rel="stylesheet"> <script type="text/javascript" src="https://www.gstatic.com/_/translate_http/_/js/k=translate_http.tr.en_GB.1hbgkFx4Qn8.O/am=DgY/d=1/exm=corsproxy/ed=1/rs=AN8SPfqlmAPxwfG457BPbRXwNq39oSMGHg/m=phishing_protection" data-phishing-protection-enabled="false" data-forms-warning-enabled="true" data-source-url="https://developer.android.com/guide/playcore/engage/social"></script> <meta name="robots" content="none"> </head> <body class="" template="page" theme="android-theme" type="article" appearance layout="docs" display-toc pending> <script type="text/javascript" src="https://www.gstatic.com/_/translate_http/_/js/k=translate_http.tr.en_GB.1hbgkFx4Qn8.O/am=DgY/d=1/exm=corsproxy,phishing_protection/ed=1/rs=AN8SPfqlmAPxwfG457BPbRXwNq39oSMGHg/m=navigationui" data-environment="prod" data-proxy-url="https://developer-android-com.translate.goog" data-proxy-full-url="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" data-source-url="https://developer.android.com/guide/playcore/engage/social" data-source-language="auto" data-target-language="en" data-display-language="auto" data-detected-source-language="en" data-is-source-untranslated="false" data-source-untranslated-url="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://developer.android.com/guide/playcore/engage/social&amp;anno=2" data-client="tr"></script><devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <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="https://developer-android-com.translate.goog/?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/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/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/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.translate.goog/get-started?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-metadata-eventdetail="https://developer.android.com/get-started" class="devsite-tabs-content gc-analytics-event android-dropdown-tab" 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> <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#" role="button" aria-haspopup="true" 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"></a> <div class="devsite-tabs-dropdown" 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.translate.goog/gemini-in-android?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/studio?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/get-started/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/courses?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/get-started/codelabs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/kotlin?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=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, and more.</li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/adaptive-apps?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/wear?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/cars?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/chrome-os?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/multi-device-development?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-type="nav" track-metadata-eventdetail="https://developer.android.com/multi-device-development" track-metadata-position="nav - essentials" track-metadata-module="tertiary nav" track-metadata-module_headline="extend by device" tooltip> <div class="devsite-nav-item-title"> Cross-device SDK </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's prescriptive and opinionated guidance.</li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/games?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/media?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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 &amp; Media </div></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/social-and-messaging?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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 &amp; messaging </div></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/health-and-fitness?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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 &amp; Fitness </div></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/productivity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/work/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/latest-updates?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/latest-updates/experimental?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/studio/preview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/jetpack/androidx/versions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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 &amp; Compose libraries </div></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/wearables/versions/4?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/design-for-safety/privacy-sandbox?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/design?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-metadata-eventdetail="https://developer.android.com/design" class="devsite-tabs-content gc-analytics-event android-dropdown-tab" 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> <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#" role="button" aria-haspopup="true" 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"></a> <div class="devsite-tabs-dropdown" 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.translate.goog/design/ui?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/design/ui/mobile?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/design/ui/large-screens?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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"> Large screens (e.g., tablets) </div></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/design/ui/widget?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/design/ui/wear?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/design/ui/tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/topic/architecture/intro?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/topic/libraries/view-binding?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/guide/navigation/navigation-principles?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/topic/modularization?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/training/testing/fundamentals?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/quality?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/quality/core-value?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/quality/user-experience?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/quality/technical?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/quality/privacy-and-security?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/security?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/privacy-and-security/about?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/identity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/security/fraud-prevention?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/build-for-billions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/docs/quality-guidelines/build-for-billions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/guide/topics/androidgo?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/develop?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-metadata-eventdetail="https://developer.android.com/develop" class="devsite-tabs-content gc-analytics-event android-dropdown-tab" 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> <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#" role="button" aria-haspopup="true" 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"></a> <div class="devsite-tabs-dropdown" 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.translate.goog/ai?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/samples?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/quick-guides?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-type="nav" track-metadata-eventdetail="https://developer.android.com/quick-guides" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="core areas" tooltip> <div class="devsite-nav-item-title"> Try Quick Guidesᵇᵉᵗᵃ </div></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/ui?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/guide/topics/permissions/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-type="nav" track-metadata-eventdetail="https://developer.android.com/guide/topics/permissions/overview" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="core areas" tooltip> <div class="devsite-nav-item-title"> Permissions </div></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/background-work?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/guide/topics/data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/develop?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#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.translate.goog/studio/write?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/build/gradle-build-overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/training/testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/topic/performance/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/reference/tools/gradle-api?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/guide/topics/large-screens/get-started-with-large-screens?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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"> Large screens (e.g., tablets) </div></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/wearables?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/health-and-fitness/guides?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/guide/topics/connectivity/cross-device-sdk/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-type="nav" track-metadata-eventdetail="https://developer.android.com/guide/topics/connectivity/cross-device-sdk/overview" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="device tech" tooltip> <div class="devsite-nav-item-title"> Cross-device SDK </div></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/training/tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/chrome-os/intro?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-type="nav" track-metadata-eventdetail="https://developer.android.com/chrome-os/intro" track-metadata-position="nav - develop" track-metadata-module="tertiary nav" track-metadata-module_headline="device tech" 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-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.translate.goog/reference/packages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/jetpack/androidx/explorer?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/jetpack/androidx/releases/compose?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=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.translate.goog/distribute?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-metadata-eventdetail="https://developer.android.com/distribute" class="devsite-tabs-content gc-analytics-event " 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.translate.goog/community?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-metadata-eventdetail="https://developer.android.com/community" class="devsite-tabs-content gc-analytics-event " 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="Android Developers" 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.translate.goog/studio?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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 "> <div class="devsite-header-background"> <div class="devsite-product-id-row"> <div class="devsite-product-description-row"> <ul class="devsite-breadcrumb-list"> <li class="devsite-breadcrumb-item "><a href="https://developer-android-com.translate.goog/develop?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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=""> Develop </a></li> </ul> </div> </div> <div class="devsite-doc-set-nav-row"><devsite-tabs class="lower-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Lower tabs"><tab class="devsite-active"> <a href="https://developer-android-com.translate.goog/guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-metadata-eventdetail="https://developer.android.com/guide" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - guides" track-metadata-module="primary nav" aria-label="Guides, selected" data-category="Site-Wide Custom Events" data-label="Tab: Guides" track-name="guides"> Guides </a> </tab> <tab> <a href="https://developer-android-com.translate.goog/reference?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-metadata-eventdetail="https://developer.android.com/reference" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - reference" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Reference" track-name="reference"> Reference </a> </tab> <tab> <a href="https://developer-android-com.translate.goog/samples?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" track-metadata-eventdetail="https://developer.android.com/samples" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - samples" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Samples" track-name="samples"> Samples </a> </tab> </nav> </devsite-tabs> </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="https://developer-android-com.translate.goog/?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/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/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/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="https://developer-android-com.translate.goog/get-started?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Essentials" track-name="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="https://developer-android-com.translate.goog/design?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Design &amp; Plan" track-name="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="https://developer-android-com.translate.goog/develop?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Develop" track-name="develop" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Develop </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> <ul class="devsite-nav-responsive-tabs"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event devsite-nav-has-children devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Guides" track-name="guides" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip menu="_book"> Guides </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="_book"> </span> </a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/reference?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Reference" track-name="reference" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Reference </span> <span class="devsite-nav-icon material-icons" data-icon="forward"> </span> </a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/samples?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Samples" track-name="samples" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Samples </span> </a></li> </ul></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/distribute?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Google Play" track-name="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="https://developer-android-com.translate.goog/community?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="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="https://developer-android-com.translate.goog/studio?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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"><a href="https://developer-android-com.translate.goog/guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide"><span class="devsite-nav-text" tooltip>Developer guides</span></a></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>App basics</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/get-started/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /get-started/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/get-started/overview"><span class="devsite-nav-text" tooltip>Build your first app</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/fundamentals?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/fundamentals" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/fundamentals"><span class="devsite-nav-text" tooltip>App fundamentals</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>App resources</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/providing-resources?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/providing-resources" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/providing-resources"><span class="devsite-nav-text" tooltip>About app resources</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/runtime-changes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/runtime-changes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/runtime-changes"><span class="devsite-nav-text" tooltip>Handle configuration changes</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>Localization</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/localization?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/localization" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/localization"><span class="devsite-nav-text" tooltip>Localize your app</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/pseudolocales?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/pseudolocales" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/pseudolocales"><span class="devsite-nav-text" tooltip>Test your app with pseudolocales</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/internationalization?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/internationalization" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/internationalization"><span class="devsite-nav-text" tooltip>Unicode and internationalization support</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/multilingual-support?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/multilingual-support" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/multilingual-support"><span class="devsite-nav-text" tooltip>Language and locale resolution</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/app-languages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/app-languages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/app-languages"><span class="devsite-nav-text" tooltip>Per-app language preferences</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/complex-xml-resources?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/complex-xml-resources" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/complex-xml-resources"><span class="devsite-nav-text" tooltip>Complex XML resources</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>Resource types</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/available-resources?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/available-resources" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/available-resources"><span class="devsite-nav-text" tooltip>About resource types</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/animation-resource?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/animation-resource" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/animation-resource"><span class="devsite-nav-text" tooltip>Animation</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/color-list-resource?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/color-list-resource" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/color-list-resource"><span class="devsite-nav-text" tooltip>Color state list</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/drawable-resource?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/drawable-resource" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/drawable-resource"><span class="devsite-nav-text" tooltip>Drawable</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/layout-resource?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/layout-resource" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/layout-resource"><span class="devsite-nav-text" tooltip>Layout</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/menu-resource?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/menu-resource" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/menu-resource"><span class="devsite-nav-text" tooltip>Menu</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/string-resource?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/string-resource" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/string-resource"><span class="devsite-nav-text" tooltip>String</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/style-resource?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/style-resource" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/style-resource"><span class="devsite-nav-text" tooltip>Style</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/font-resource?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/font-resource" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/font-resource"><span class="devsite-nav-text" tooltip>Font</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/resources/more-resources?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/resources/more-resources" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/resources/more-resources"><span class="devsite-nav-text" tooltip>More types</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>App manifest file</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/manifest-intro?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/manifest-intro" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/manifest-intro"><span class="devsite-nav-text" tooltip>About app manifests</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/action-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/action-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/action-element"><span class="devsite-nav-text" tooltip>&lt;action&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/activity-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/activity-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/activity-element"><span class="devsite-nav-text" tooltip>&lt;activity&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/activity-alias-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/activity-alias-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/activity-alias-element"><span class="devsite-nav-text" tooltip>&lt;activity-alias&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/application-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/application-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/application-element"><span class="devsite-nav-text" tooltip>&lt;application&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/category-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/category-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/category-element"><span class="devsite-nav-text" tooltip>&lt;category&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/compatible-screens-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/compatible-screens-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/compatible-screens-element"><span class="devsite-nav-text" tooltip>&lt;compatible-screens&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/data-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/data-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/data-element"><span class="devsite-nav-text" tooltip>&lt;data&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/grant-uri-permission-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/grant-uri-permission-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/grant-uri-permission-element"><span class="devsite-nav-text" tooltip>&lt;grant-uri-permission&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/instrumentation-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/instrumentation-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/instrumentation-element"><span class="devsite-nav-text" tooltip>&lt;instrumentation&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/intent-filter-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/intent-filter-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/intent-filter-element"><span class="devsite-nav-text" tooltip>&lt;intent-filter&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/layout-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/layout-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/layout-element"><span class="devsite-nav-text" tooltip>&lt;layout&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/manifest-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/manifest-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/manifest-element"><span class="devsite-nav-text" tooltip>&lt;manifest&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/meta-data-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/meta-data-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/meta-data-element"><span class="devsite-nav-text" tooltip>&lt;meta-data&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/path-permission-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/path-permission-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/path-permission-element"><span class="devsite-nav-text" tooltip>&lt;path-permission&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/permission-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/permission-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/permission-element"><span class="devsite-nav-text" tooltip>&lt;permission&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/permission-group-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/permission-group-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/permission-group-element"><span class="devsite-nav-text" tooltip>&lt;permission-group&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/permission-tree-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/permission-tree-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/permission-tree-element"><span class="devsite-nav-text" tooltip>&lt;permission-tree&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/profileable-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/profileable-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/profileable-element"><span class="devsite-nav-text" tooltip>&lt;profileable&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/property-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/property-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/property-element"><span class="devsite-nav-text" tooltip>&lt;property&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/provider-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/provider-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/provider-element"><span class="devsite-nav-text" tooltip>&lt;provider&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/queries-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/queries-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/queries-element"><span class="devsite-nav-text" tooltip>&lt;queries&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/receiver-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/receiver-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/receiver-element"><span class="devsite-nav-text" tooltip>&lt;receiver&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/service-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/service-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/service-element"><span class="devsite-nav-text" tooltip>&lt;service&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/supports-gl-texture-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/supports-gl-texture-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/supports-gl-texture-element"><span class="devsite-nav-text" tooltip>&lt;supports-gl-texture&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/supports-screens-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/supports-screens-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/supports-screens-element"><span class="devsite-nav-text" tooltip>&lt;supports-screens&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/uses-configuration-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/uses-configuration-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/uses-configuration-element"><span class="devsite-nav-text" tooltip>&lt;uses-configuration&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/uses-feature-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/uses-feature-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/uses-feature-element"><span class="devsite-nav-text" tooltip>&lt;uses-feature&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/uses-library-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/uses-library-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/uses-library-element"><span class="devsite-nav-text" tooltip>&lt;uses-library&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/uses-native-library-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/uses-native-library-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/uses-native-library-element"><span class="devsite-nav-text" tooltip>&lt;uses-native-library&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/uses-permission-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/uses-permission-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/uses-permission-element"><span class="devsite-nav-text" tooltip>&lt;uses-permission&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/uses-permission-sdk-23-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/uses-permission-sdk-23-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/uses-permission-sdk-23-element"><span class="devsite-nav-text" tooltip>&lt;uses-permission-sdk-23&gt;</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/manifest/uses-sdk-element?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/manifest/uses-sdk-element" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/manifest/uses-sdk-element"><span class="devsite-nav-text" tooltip>&lt;uses-sdk&gt;</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>Devices</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>Device compatibility</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/practices/compatibility?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/practices/compatibility" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/practices/compatibility"><span class="devsite-nav-text" tooltip>About device compatibility</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/practices/screens_support?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/practices/screens_support" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/practices/screens_support"><span class="devsite-nav-text" tooltip>About screen compatibility</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/practices/device-compatibility-mode?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/practices/device-compatibility-mode" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/practices/device-compatibility-mode"><span class="devsite-nav-text" tooltip>Device compatibility mode</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/multiscreen/screendensities?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/multiscreen/screendensities" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/multiscreen/screendensities"><span class="devsite-nav-text" tooltip>Support different pixel densities</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>Multiple APK support</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/publishing/multiple-apks?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/publishing/multiple-apks" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/publishing/multiple-apks"><span class="devsite-nav-text" tooltip>About multiple APKs</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/multiple-apks/api?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/multiple-apks/api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/multiple-apks/api"><span class="devsite-nav-text" tooltip>Create multiple APKs for different API levels</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/multiple-apks/screensize?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/multiple-apks/screensize" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/multiple-apks/screensize"><span class="devsite-nav-text" tooltip>Create multiple APKs for different screen sizes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/multiple-apks/texture?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/multiple-apks/texture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/multiple-apks/texture"><span class="devsite-nav-text" tooltip>Create multiple APKs for different GL textures</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/multiple-apks/multiple?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/multiple-apks/multiple" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/multiple-apks/multiple"><span class="devsite-nav-text" tooltip>Create multiple APKs with several dimensions</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/basics/supporting-devices/languages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/basics/supporting-devices/languages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/basics/supporting-devices/languages"><span class="devsite-nav-text" tooltip>Support different languages and cultures</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/basics/supporting-devices/platforms?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/basics/supporting-devices/platforms" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/basics/supporting-devices/platforms"><span class="devsite-nav-text" tooltip>Support different platform versions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/filters?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/filters" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/filters"><span class="devsite-nav-text" tooltip>Filters on Google Play</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/requirements/64-bit?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/requirements/64-bit" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/requirements/64-bit"><span class="devsite-nav-text" tooltip>64-bit Support</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/practices/page-sizes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/practices/page-sizes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/practices/page-sizes"><span class="devsite-nav-text" tooltip>Support 16 KB page sizes</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>Large screens — tablets, foldables, ChromeOS</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens"><span class="devsite-nav-text" tooltip>Get started with large screens</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>Large screen ready</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/tier_3_overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/tier_3_overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/tier_3_overview"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/configuration_and_continuity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/configuration_and_continuity" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/configuration_and_continuity"><span class="devsite-nav-text" tooltip>Configuration and continuity</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/camera_preview_and_media_projection?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/camera_preview_and_media_projection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/camera_preview_and_media_projection"><span class="devsite-nav-text" tooltip>Camera preview and media projection</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/multi-window_mode_and_multi-resume?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/multi-window_mode_and_multi-resume" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/multi-window_mode_and_multi-resume"><span class="devsite-nav-text" tooltip>Multi-window mode and multi-resume</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/input-compatibility-large-screens?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/input-compatibility-large-screens" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/input-compatibility-large-screens"><span class="devsite-nav-text" tooltip>Input compatibility on large screens</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>Large screen optimized</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/tier_2_overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/tier_2_overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/tier_2_overview"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/ux?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/ux" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/ux"><span class="devsite-nav-text" tooltip>UX</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/migrate-to-responsive-layouts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/migrate-to-responsive-layouts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/migrate-to-responsive-layouts"><span class="devsite-nav-text" tooltip>Migrate your UI to responsive layouts</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/navigation-for-responsive-uis?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/navigation-for-responsive-uis" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/navigation-for-responsive-uis"><span class="devsite-nav-text" tooltip>Navigation for responsive UIs</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>Large screen differentiated</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/tier_1_overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/tier_1_overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/tier_1_overview"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/foldable-postures-and-states?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/foldable-postures-and-states" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/foldable-postures-and-states"><span class="devsite-nav-text" tooltip>Foldable postures and states</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/create-a-note-taking-app?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/create-a-note-taking-app" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/create-a-note-taking-app"><span class="devsite-nav-text" tooltip>Create a note-taking app</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/support-advanced-stylus-features?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/support-advanced-stylus-features" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/support-advanced-stylus-features"><span class="devsite-nav-text" tooltip>Support advanced stylus features</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/large-screens/large-screen-cookbook?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/large-screens/large-screen-cookbook" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/large-screens/large-screen-cookbook"><span class="devsite-nav-text" tooltip>Large screen cookbook</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/wearables?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/wearables" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/wearables"><span class="devsite-nav-text" tooltip>Wear OS ⍈</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>Android TV</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv"><span class="devsite-nav-text" tooltip>In this guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/design/ui/tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /design/ui/tv" track-type="bookNav" track-name="click" track-metadata-eventdetail="/design/ui/tv"><span class="devsite-nav-text" tooltip>Design TV UI ⍈</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>Getting started</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/get-started?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/get-started" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/get-started"><span class="devsite-nav-text" tooltip>In this guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/get-started/create?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/get-started/create" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/get-started/create"><span class="devsite-nav-text" tooltip>Create and run a TV app</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/get-started/hardware?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/get-started/hardware" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/get-started/hardware"><span class="devsite-nav-text" tooltip>Handle TV hardware</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/get-started/controllers?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/get-started/controllers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/get-started/controllers"><span class="devsite-nav-text" tooltip>Manage TV controllers</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/get-started/onscreen-keyboard?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/get-started/onscreen-keyboard" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/get-started/onscreen-keyboard"><span class="devsite-nav-text" tooltip>On-screen keyboard</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/get-started/navigation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/get-started/navigation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/get-started/navigation"><span class="devsite-nav-text" tooltip>Create TV navigation</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/get-started/multitasking?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/get-started/multitasking" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/get-started/multitasking"><span class="devsite-nav-text" tooltip>Multitasking on TV</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/get-started/google-tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/get-started/google-tv" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/get-started/google-tv"><span class="devsite-nav-text" tooltip>Best practices for driving engagement on Google TV</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>Build TV playback apps</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback"><span class="devsite-nav-text" tooltip>In this guide</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>Building UI with Compose</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/compose?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/compose" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/compose"><span class="devsite-nav-text" tooltip>In this guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/compose/browse?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/compose/browse" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/compose/browse"><span class="devsite-nav-text" tooltip>Create a catalog browser</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/compose/details?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/compose/details" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/compose/details"><span class="devsite-nav-text" tooltip>Build a details screen</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>Building UI with the Leanback UI toolkit (discouraged)</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/leanback?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/leanback" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/leanback"><span class="devsite-nav-text" tooltip>In this guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/leanback/browse?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/leanback/browse" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/leanback/browse"><span class="devsite-nav-text" tooltip>Create a catalog browser</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/leanback/card?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/leanback/card" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/leanback/card"><span class="devsite-nav-text" tooltip>Provide a card view</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/leanback/details?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/leanback/details" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/leanback/details"><span class="devsite-nav-text" tooltip>Build a details view</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/leanback/transport-controls?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/leanback/transport-controls" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/leanback/transport-controls"><span class="devsite-nav-text" tooltip>Use transport controls</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/leanback/onboarding?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/leanback/onboarding" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/leanback/onboarding"><span class="devsite-nav-text" tooltip>Introduce first-time users to your app</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/leanback/guided-step?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/leanback/guided-step" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/leanback/guided-step"><span class="devsite-nav-text" tooltip>Add a guided step</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/leanback/layouts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/leanback/layouts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/leanback/layouts"><span class="devsite-nav-text" tooltip>Build TV layouts</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/leanback/migrate-to-compose?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/leanback/migrate-to-compose" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/leanback/migrate-to-compose"><span class="devsite-nav-text" tooltip>Migrate to Compose for TV</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/ambient-mode?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/ambient-mode" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/ambient-mode"><span class="devsite-nav-text" tooltip>Ambient mode</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/controls?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/controls" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/controls"><span class="devsite-nav-text" tooltip>Playback controls on TV</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/media-session?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/media-session" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/media-session"><span class="devsite-nav-text" tooltip>Implement a media session</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/now-playing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/now-playing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/now-playing"><span class="devsite-nav-text" tooltip>Background playback in a Now Playing card</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/audio-capabilities?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/audio-capabilities" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/audio-capabilities"><span class="devsite-nav-text" tooltip>Audio capabilities</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/playback/framerate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/playback/framerate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/playback/framerate"><span class="devsite-nav-text" tooltip>Match content frame rate</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>Help users find content on TV</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery"><span class="devsite-nav-text" tooltip>About finding TV content</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>Recommend TV content</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/recommendations?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/recommendations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/recommendations"><span class="devsite-nav-text" tooltip>About recommending TV content</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/recommendations-channel?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/recommendations-channel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/recommendations-channel"><span class="devsite-nav-text" tooltip>Channels on the home screen</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/video-programs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/video-programs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/video-programs"><span class="devsite-nav-text" tooltip>Video program attributes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/audio-programs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/audio-programs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/audio-programs"><span class="devsite-nav-text" tooltip>Audio program attributes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/game-programs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/game-programs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/game-programs"><span class="devsite-nav-text" tooltip>Game program attributes</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>Watch Next</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/watch-next-add-programs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/watch-next-add-programs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/watch-next-add-programs"><span class="devsite-nav-text" tooltip>Add programs</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/watch-next-programs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/watch-next-programs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/watch-next-programs"><span class="devsite-nav-text" tooltip>Attributes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/guidelines-app-developers?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/guidelines-app-developers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/guidelines-app-developers"><span class="devsite-nav-text" tooltip>Guidelines for app developers</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/guidelines-tv-providers?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/guidelines-tv-providers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/guidelines-tv-providers"><span class="devsite-nav-text" tooltip>Guidelines for TV providers</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/preview-videos?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/preview-videos" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/preview-videos"><span class="devsite-nav-text" tooltip>Preview videos</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/recommendations-row?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/recommendations-row" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/recommendations-row"><span class="devsite-nav-text" tooltip>Recommendations in Android N and earlier</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/searchable?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/searchable" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/searchable"><span class="devsite-nav-text" tooltip>Make TV apps searchable</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/discovery/in-app-search?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/discovery/in-app-search" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/discovery/in-app-search"><span class="devsite-nav-text" tooltip>Search within TV Apps</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>Build TV games</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/games?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/games" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/games"><span class="devsite-nav-text" tooltip>About TV games</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>Build TV input services</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/tif?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/tif" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/tif"><span class="devsite-nav-text" tooltip>About TV input services</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/tif/tvinput?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/tif/tvinput" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/tif/tvinput"><span class="devsite-nav-text" tooltip>Develop a TV input service</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/tif/channel?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/tif/channel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/tif/channel"><span class="devsite-nav-text" tooltip>Work with channel data</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/tif/ui?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/tif/ui" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/tif/ui"><span class="devsite-nav-text" tooltip>Manage TV user interaction</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/tif/time-shifting?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/tif/time-shifting" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/tif/time-shifting"><span class="devsite-nav-text" tooltip>Support time-shifting</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/tif/content-recording?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/tif/content-recording" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/tif/content-recording"><span class="devsite-nav-text" tooltip>Support content recording</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>TV Accessibility</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/accessibility?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/accessibility" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/accessibility"><span class="devsite-nav-text" tooltip>Accessibility best practices</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/accessibility/talkback?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/accessibility/talkback" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/accessibility/talkback"><span class="devsite-nav-text" tooltip>TalkBack evaluation examples</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/accessibility/talkback-support?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/accessibility/talkback-support" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/accessibility/talkback-support"><span class="devsite-nav-text" tooltip>Support TalkBack in TV apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/accessibility/system-caption-settings?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/accessibility/system-caption-settings" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/accessibility/system-caption-settings"><span class="devsite-nav-text" tooltip>Adopt system caption settings</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/accessibility/custom-views?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/accessibility/custom-views" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/accessibility/custom-views"><span class="devsite-nav-text" tooltip>Custom view accessibility support</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/accessibility/custom-views-sample?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/accessibility/custom-views-sample" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/accessibility/custom-views-sample"><span class="devsite-nav-text" tooltip>Custom view accessibility sample</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/publishing/checklist?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/publishing/checklist" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/publishing/checklist"><span class="devsite-nav-text" tooltip>TV Apps checklist</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/tv/publishing/distribute?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/tv/publishing/distribute" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/tv/publishing/distribute"><span class="devsite-nav-text" tooltip>Distribute to Android TV</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>Releases</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/tv/release/12?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /tv/release/12" track-type="bookNav" track-name="click" track-metadata-eventdetail="/tv/release/12"><span class="devsite-nav-text" tooltip>Android 12 for TV</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/tv/release/13?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /tv/release/13" track-type="bookNav" track-name="click" track-metadata-eventdetail="/tv/release/13"><span class="devsite-nav-text" tooltip>Android 13 for TV</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/tv/release/14?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /tv/release/14" track-type="bookNav" track-name="click" track-metadata-eventdetail="/tv/release/14"><span class="devsite-nav-text" tooltip>Android 14 for TV</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>Android for Cars</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars"><span class="devsite-nav-text" tooltip>About Android for Cars</span></a></li> <li class="devsite-nav-item devsite-nav-new"><a href="https://developer-android-com.translate.goog/training/cars/whats-new?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/whats-new" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/whats-new"><span class="devsite-nav-text" tooltip>What's new</span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></span></a></li> <li class="devsite-nav-item devsite-nav-external"><a href="https://developer-android-com.translate.goog/docs/quality-guidelines/car-app-quality?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/quality-guidelines/car-app-quality" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/quality-guidelines/car-app-quality"><span class="devsite-nav-text" tooltip>Car app quality</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></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>Build media apps for cars</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/media?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/media" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/media"><span class="devsite-nav-text" tooltip>Build media apps for cars</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/media/auto?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/media/auto" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/media/auto"><span class="devsite-nav-text" tooltip>Add support for Android Auto</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/media/automotive-os?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/media/automotive-os" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/media/automotive-os"><span class="devsite-nav-text" tooltip>Add support for Android Automotive OS</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/messaging?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/messaging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/messaging"><span class="devsite-nav-text" tooltip>Build messaging apps for Android Auto</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>Build point of interest, internet of things, and navigation apps for cars</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/apps?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/apps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/apps"><span class="devsite-nav-text" tooltip>Using the Android for Cars App Library</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/apps/poi?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/apps/poi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/apps/poi"><span class="devsite-nav-text" tooltip>Build point of interest apps for cars</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/apps/iot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/apps/iot" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/apps/iot"><span class="devsite-nav-text" tooltip>Build internet of things apps for cars</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/apps/navigation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/apps/navigation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/apps/navigation"><span class="devsite-nav-text" tooltip>Build navigation apps for cars</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/apps/coarse-location?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/apps/coarse-location" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/apps/coarse-location"><span class="devsite-nav-text" tooltip>Get coarse location</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/apps/auto?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/apps/auto" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/apps/auto"><span class="devsite-nav-text" tooltip>Add support for Android Auto</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/apps/automotive-os?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/apps/automotive-os" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/apps/automotive-os"><span class="devsite-nav-text" tooltip>Add support for Android Automotive OS</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>Build parked apps for Android Automotive OS</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/parked?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/parked" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/parked"><span class="devsite-nav-text" tooltip>About parked apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/parked/video?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/parked/video" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/parked/video"><span class="devsite-nav-text" tooltip>Build video apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/parked/games?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/parked/games" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/parked/games"><span class="devsite-nav-text" tooltip>Build games</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/parked/browser?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/parked/browser" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/parked/browser"><span class="devsite-nav-text" tooltip>Build browsers</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>Test Android apps for cars</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/testing"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/testing/dhu?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/testing/dhu" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/testing/dhu"><span class="devsite-nav-text" tooltip>Test using the Desktop Head Unit</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>Test using the Android Automotive OS emulator</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/testing/emulator?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/testing/emulator" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/testing/emulator"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/testing/emulator/distant-display?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/testing/emulator/distant-display" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/testing/emulator/distant-display"><span class="devsite-nav-text" tooltip>Test using the distant display emulator</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/testing/emulator/configurable?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/testing/emulator/configurable" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/testing/emulator/configurable"><span class="devsite-nav-text" tooltip>Test using the configurable emulator</span></a></li> </ul> </div></li> <li class="devsite-nav-item devsite-nav-preview"><a href="https://developer-android-com.translate.goog/training/cars/testing/aaos-on-pixel?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/testing/aaos-on-pixel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/testing/aaos-on-pixel"><span class="devsite-nav-text" tooltip>Test using Android Automotive OS on Pixel Tablet</span><span class="devsite-nav-icon material-icons" data-icon="preview" data-title="Preview" aria-hidden="true"></span></a></li> </ul> </div></li> <li class="devsite-nav-item devsite-nav-preview"><a href="https://developer-android-com.translate.goog/training/cars/car-ready-mobile-apps?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/car-ready-mobile-apps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/car-ready-mobile-apps"><span class="devsite-nav-text" tooltip>Car ready mobile apps</span><span class="devsite-nav-icon material-icons" data-icon="preview" data-title="Preview" aria-hidden="true"></span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/distribute?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/distribute" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/distribute"><span class="devsite-nav-text" tooltip>Distribute Android apps for cars</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/google-services?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/google-services" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/google-services"><span class="devsite-nav-text" tooltip>Google Play services for cars</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars/notifications?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/cars/notifications" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/cars/notifications"><span class="devsite-nav-text" tooltip>Notifications on Android Automotive OS</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>ChromeOS devices</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/chrome-os/intro?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chrome-os/intro" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chrome-os/intro"><span class="devsite-nav-text" tooltip>About ChromeOS</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc"><span class="devsite-nav-text" tooltip>Building apps for ChromeOS</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc/optimizing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc/optimizing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc/optimizing"><span class="devsite-nav-text" tooltip>Optimizing Apps for ChromeOS</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc/development-environment?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc/development-environment" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc/development-environment"><span class="devsite-nav-text" tooltip>Preparing your development environment</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc/manifest?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc/manifest" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc/manifest"><span class="devsite-nav-text" tooltip>App Manifest Compatibility for Chromebooks</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc/device-support?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc/device-support" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc/device-support"><span class="devsite-nav-text" tooltip>ChromeOS Device Support for Apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc/differences?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc/differences" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc/differences"><span class="devsite-nav-text" tooltip>App Rendering Differences on Chromebooks</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc/window-management?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc/window-management" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc/window-management"><span class="devsite-nav-text" tooltip>Window management</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc/adapting-games?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc/adapting-games" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc/adapting-games"><span class="devsite-nav-text" tooltip>Adapting Games on ChromeOS</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc/animation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc/animation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc/animation"><span class="devsite-nav-text" tooltip>Smooth animation on ChromeOS</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/arc/tests?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/arc/tests" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/arc/tests"><span class="devsite-nav-text" tooltip>Test Cases for Android Apps on ChromeOS</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>Cross device SDK</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/connectivity/cross-device-sdk/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/connectivity/cross-device-sdk/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/connectivity/cross-device-sdk/overview"><span class="devsite-nav-text" tooltip>About the Cross device SDK</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/connectivity/cross-device-sdk/get-started?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/connectivity/cross-device-sdk/get-started" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/connectivity/cross-device-sdk/get-started"><span class="devsite-nav-text" tooltip>Get started</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/connectivity/cross-device-sdk/device-discovery?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/connectivity/cross-device-sdk/device-discovery" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/connectivity/cross-device-sdk/device-discovery"><span class="devsite-nav-text" tooltip>Device discovery API</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/connectivity/cross-device-sdk/secure-connection?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/connectivity/cross-device-sdk/secure-connection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/connectivity/cross-device-sdk/secure-connection"><span class="devsite-nav-text" tooltip>Secure connection API</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/connectivity/cross-device-sdk/sessions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/connectivity/cross-device-sdk/sessions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/connectivity/cross-device-sdk/sessions"><span class="devsite-nav-text" tooltip>Sessions API</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/connectivity/cross-device-sdk/testing-debugging?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/connectivity/cross-device-sdk/testing-debugging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/connectivity/cross-device-sdk/testing-debugging"><span class="devsite-nav-text" tooltip>Test and debug</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/reference/crossdevice/packages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /reference/crossdevice/packages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/reference/crossdevice/packages"><span class="devsite-nav-text" tooltip>API Reference</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/devices/assistant/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/devices/assistant/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/devices/assistant/overview"><span class="devsite-nav-text" tooltip>Google Assistant ⍈</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>Android (Go edition)</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/androidgo?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/androidgo" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/androidgo"><span class="devsite-nav-text" tooltip>About Android Go edition</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/androidgo/develop?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/androidgo/develop" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/androidgo/develop"><span class="devsite-nav-text" tooltip>Develop for Android (Go edition)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/androidgo/test?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/androidgo/test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/androidgo/test"><span class="devsite-nav-text" tooltip>Test Android Go 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>Optimize for Android (Go edition)</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/androidgo/optimize?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/androidgo/optimize" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/androidgo/optimize"><span class="devsite-nav-text" tooltip>Approach</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/androidgo/optimize-memory?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/androidgo/optimize-memory" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/androidgo/optimize-memory"><span class="devsite-nav-text" tooltip>Optimize app memory</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/androidgo/optimize-startup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/androidgo/optimize-startup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/androidgo/optimize-startup"><span class="devsite-nav-text" tooltip>Improve startup latency</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/androidgo/optimize-size?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/androidgo/optimize-size" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/androidgo/optimize-size"><span class="devsite-nav-text" tooltip>Reduce app size</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/androidgo/best-practices?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/androidgo/best-practices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/androidgo/best-practices"><span class="devsite-nav-text" tooltip>Best practices</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>App architecture</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture/intro?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture/intro" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture/intro"><span class="devsite-nav-text" tooltip>Introduction</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>Guide to app architecture</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture"><span class="devsite-nav-text" tooltip>About app architecture</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>UI layer</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture/ui-layer?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture/ui-layer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture/ui-layer"><span class="devsite-nav-text" tooltip>About the UI layer</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture/ui-layer/events?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture/ui-layer/events" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture/ui-layer/events"><span class="devsite-nav-text" tooltip>UI events</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture/ui-layer/stateholders?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture/ui-layer/stateholders" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture/ui-layer/stateholders"><span class="devsite-nav-text" tooltip>State holders and UI state</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture/ui-layer/state-production?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture/ui-layer/state-production" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture/ui-layer/state-production"><span class="devsite-nav-text" tooltip>State production</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture/domain-layer?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture/domain-layer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture/domain-layer"><span class="devsite-nav-text" tooltip>Domain layer</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>Data layer</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture/data-layer?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture/data-layer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture/data-layer"><span class="devsite-nav-text" tooltip>About the data layer</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture/data-layer/offline-first?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture/data-layer/offline-first" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture/data-layer/offline-first"><span class="devsite-nav-text" tooltip>Offline first</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/architecture/recommendations?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/architecture/recommendations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/architecture/recommendations"><span class="devsite-nav-text" tooltip>Architecture recommendations</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/courses/pathways/android-architecture?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /courses/pathways/android-architecture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/courses/pathways/android-architecture"><span class="devsite-nav-text" tooltip>Learning pathway</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>Modularization</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/modularization?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/modularization" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/modularization"><span class="devsite-nav-text" tooltip>About modularization</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/modularization/patterns?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/modularization/patterns" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/modularization/patterns"><span class="devsite-nav-text" tooltip>Common patterns</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>Recipes</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/navigation-multi-module?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/navigation-multi-module" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/navigation-multi-module"><span class="devsite-nav-text" tooltip>Navigation</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>Architecture 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>UI layer libraries</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>View binding</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/view-binding?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/view-binding" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/view-binding"><span class="devsite-nav-text" tooltip>About view binding</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/view-binding/migration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/view-binding/migration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/view-binding/migration"><span class="devsite-nav-text" tooltip>Migrate from Kotlin synthetics to view binding</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>Data binding library</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/data-binding?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/data-binding" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/data-binding"><span class="devsite-nav-text" tooltip>About data binding</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/data-binding/start?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/data-binding/start" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/data-binding/start"><span class="devsite-nav-text" tooltip>Get started</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/data-binding/expressions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/data-binding/expressions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/data-binding/expressions"><span class="devsite-nav-text" tooltip>Layouts and binding expressions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/data-binding/observability?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/data-binding/observability" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/data-binding/observability"><span class="devsite-nav-text" tooltip>Work with observable data objects</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/data-binding/generated-binding?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/data-binding/generated-binding" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/data-binding/generated-binding"><span class="devsite-nav-text" tooltip>Generated binding classes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/data-binding/binding-adapters?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/data-binding/binding-adapters" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/data-binding/binding-adapters"><span class="devsite-nav-text" tooltip>Binding adapters</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/data-binding/architecture?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/data-binding/architecture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/data-binding/architecture"><span class="devsite-nav-text" tooltip>Bind layout views to Architecture Components</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/data-binding/two-way?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/data-binding/two-way" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/data-binding/two-way"><span class="devsite-nav-text" tooltip>Two-way data binding</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>Lifecycle-aware 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>Lifecycles</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/lifecycle?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/lifecycle" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/lifecycle"><span class="devsite-nav-text" tooltip>Handle lifecycles</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/compose?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/compose" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/compose"><span class="devsite-nav-text" tooltip>Integrate with Compose</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>ViewModel</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/viewmodel?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/viewmodel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/viewmodel"><span class="devsite-nav-text" tooltip>About ViewModel</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/viewmodel/viewmodel-factories?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/viewmodel/viewmodel-factories" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/viewmodel/viewmodel-factories"><span class="devsite-nav-text" tooltip>Create ViewModels with dependencies</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/viewmodel/viewmodel-apis?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/viewmodel/viewmodel-apis" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/viewmodel/viewmodel-apis"><span class="devsite-nav-text" tooltip>ViewModel Scoping APIs</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/viewmodel/viewmodel-savedstate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/viewmodel/viewmodel-savedstate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/viewmodel/viewmodel-savedstate"><span class="devsite-nav-text" tooltip>Saved State module for ViewModel</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/viewmodel/viewmodel-cheatsheet?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/viewmodel/viewmodel-cheatsheet" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/viewmodel/viewmodel-cheatsheet"><span class="devsite-nav-text" tooltip>ViewModel APIs cheat sheet</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/livedata?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/livedata" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/livedata"><span class="devsite-nav-text" tooltip>LiveData</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/saving-states?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/saving-states" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/saving-states"><span class="devsite-nav-text" tooltip>Save UI states</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/coroutines?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/coroutines" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/coroutines"><span class="devsite-nav-text" tooltip>Use Kotlin coroutines with lifecycle-aware components</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>Paging Library</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging/v3-overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging/v3-overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging/v3-overview"><span class="devsite-nav-text" tooltip>About paging</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging/v3-paged-data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging/v3-paged-data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging/v3-paged-data"><span class="devsite-nav-text" tooltip>Load and display paged data</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging/v3-network-db?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging/v3-network-db" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging/v3-network-db"><span class="devsite-nav-text" tooltip>Page from network and database</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging/v3-transform?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging/v3-transform" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging/v3-transform"><span class="devsite-nav-text" tooltip>Transform data streams</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging/load-state?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging/load-state" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging/load-state"><span class="devsite-nav-text" tooltip>Manage and present loading states</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging/test?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging/test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging/test"><span class="devsite-nav-text" tooltip>Test your Paging implementation</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging/v3-migration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging/v3-migration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging/v3-migration"><span class="devsite-nav-text" tooltip>Migrate to Paging 3</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>Paging 2</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging"><span class="devsite-nav-text" tooltip>About Paging 2</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging/ui?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging/ui" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging/ui"><span class="devsite-nav-text" tooltip>Display paged lists</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/paging/data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/paging/data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/paging/data"><span class="devsite-nav-text" tooltip>Load paged data</span></a></li> </ul> </div></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>Data layer libraries</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/datastore?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/datastore" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/datastore"><span class="devsite-nav-text" tooltip>DataStore</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>WorkManager</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager"><span class="devsite-nav-text" tooltip>About WorkManager</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/basics?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/basics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/basics"><span class="devsite-nav-text" tooltip>Getting Started</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>How-To Guides</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/how-to/define-work?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/how-to/define-work" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/how-to/define-work"><span class="devsite-nav-text" tooltip>Defining your WorkRequests</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/how-to/states-and-observation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/how-to/states-and-observation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/how-to/states-and-observation"><span class="devsite-nav-text" tooltip>Work states</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/how-to/managing-work?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/how-to/managing-work" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/how-to/managing-work"><span class="devsite-nav-text" tooltip>Managing work</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/how-to/intermediate-progress?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/how-to/intermediate-progress" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/how-to/intermediate-progress"><span class="devsite-nav-text" tooltip>Observing intermediate Worker progress</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/how-to/chain-work?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/how-to/chain-work" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/how-to/chain-work"><span class="devsite-nav-text" tooltip>Chaining work together</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/how-to/testing-worker-impl?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/how-to/testing-worker-impl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/how-to/testing-worker-impl"><span class="devsite-nav-text" tooltip>Testing Worker implementation</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/how-to/integration-testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/how-to/integration-testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/how-to/integration-testing"><span class="devsite-nav-text" tooltip>Integration tests with WorkManager</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/how-to/debugging?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/how-to/debugging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/how-to/debugging"><span class="devsite-nav-text" tooltip>Debugging WorkManager</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>Advanced Concepts</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/advanced/custom-configuration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/advanced/custom-configuration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/advanced/custom-configuration"><span class="devsite-nav-text" tooltip>Configuration and Initialization</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>Threading in WorkManager</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/advanced/threading?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/advanced/threading" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/advanced/threading"><span class="devsite-nav-text" tooltip>About threading in WorkManager</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/advanced/worker?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/advanced/worker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/advanced/worker"><span class="devsite-nav-text" tooltip>Threading in Worker</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/advanced/coroutineworker?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/advanced/coroutineworker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/advanced/coroutineworker"><span class="devsite-nav-text" tooltip>Threading in CoroutineWorker</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/advanced/rxworker?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/advanced/rxworker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/advanced/rxworker"><span class="devsite-nav-text" tooltip>Threading in RxWorker</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/advanced/listenableworker?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/advanced/listenableworker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/advanced/listenableworker"><span class="devsite-nav-text" tooltip>Threading in ListenableWorker</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/advanced/long-running?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/advanced/long-running" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/advanced/long-running"><span class="devsite-nav-text" tooltip>Support for long-running workers</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/migrating-fb?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/migrating-fb" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/migrating-fb"><span class="devsite-nav-text" tooltip>Migrating from Firebase JobDispatcher</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager/migrating-gcm?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/architecture/workmanager/migrating-gcm" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/architecture/workmanager/migrating-gcm"><span class="devsite-nav-text" tooltip>Migrating from GCMNetworkManager</span></a></li> </ul> </div></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>App entry points</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>Activities</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/activities/intro-activities?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/activities/intro-activities" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/activities/intro-activities"><span class="devsite-nav-text" tooltip>Introduction to activities</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/activities/activity-lifecycle?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/activities/activity-lifecycle" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/activities/activity-lifecycle"><span class="devsite-nav-text" tooltip>The activity lifecycle</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/activities/state-changes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/activities/state-changes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/activities/state-changes"><span class="devsite-nav-text" tooltip>Activity state changes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/activities/testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/activities/testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/activities/testing"><span class="devsite-nav-text" tooltip>Test your app's activities</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/activities/tasks-and-back-stack?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/activities/tasks-and-back-stack" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/activities/tasks-and-back-stack"><span class="devsite-nav-text" tooltip>Tasks and the back stack</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/activities/process-lifecycle?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/activities/process-lifecycle" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/activities/process-lifecycle"><span class="devsite-nav-text" tooltip>Processes and app lifecycle</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/activities/parcelables-and-bundles?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/activities/parcelables-and-bundles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/activities/parcelables-and-bundles"><span class="devsite-nav-text" tooltip>Parcelables and bundles</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/loaders?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/loaders" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/loaders"><span class="devsite-nav-text" tooltip>Loaders</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/activities/recents?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/activities/recents" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/activities/recents"><span class="devsite-nav-text" tooltip>Recents screen</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/activities/background-starts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/activities/background-starts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/activities/background-starts"><span class="devsite-nav-text" tooltip>Restrictions on starting activities from the background</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>App shortcuts</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/ui/shortcuts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/ui/shortcuts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/ui/shortcuts"><span class="devsite-nav-text" tooltip>About app shortcuts</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/ui/shortcuts/creating-shortcuts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/ui/shortcuts/creating-shortcuts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/ui/shortcuts/creating-shortcuts"><span class="devsite-nav-text" tooltip>Create shortcuts</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/ui/shortcuts/adding-capabilities?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/ui/shortcuts/adding-capabilities" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/ui/shortcuts/adding-capabilities"><span class="devsite-nav-text" tooltip>Add capabilities</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/ui/shortcuts/managing-shortcuts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/ui/shortcuts/managing-shortcuts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/ui/shortcuts/managing-shortcuts"><span class="devsite-nav-text" tooltip>Manage shortcuts</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/ui/shortcuts/best-practices?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/ui/shortcuts/best-practices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/ui/shortcuts/best-practices"><span class="devsite-nav-text" tooltip>Best practices for shortcuts</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>App navigation</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/principles?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/principles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/principles"><span class="devsite-nav-text" tooltip>Principles of navigation</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>Navigation component</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/navcontroller?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/navcontroller" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/navcontroller"><span class="devsite-nav-text" tooltip>Navigation controller</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>Design your navigation graph</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/dialog-destinations?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/dialog-destinations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/dialog-destinations"><span class="devsite-nav-text" tooltip>Dialog destinations</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/activity-destinations?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/activity-destinations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/activity-destinations"><span class="devsite-nav-text" tooltip>Activity destinations</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/nested-graphs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/nested-graphs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/nested-graphs"><span class="devsite-nav-text" tooltip>Nested graphs</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/deep-link?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/deep-link" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/deep-link"><span class="devsite-nav-text" tooltip>Deep links</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/add-new?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/add-new" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/add-new"><span class="devsite-nav-text" tooltip>New destination types</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/type-safety?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/type-safety" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/type-safety"><span class="devsite-nav-text" tooltip>Type safety</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/encapsulate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/encapsulate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/encapsulate"><span class="devsite-nav-text" tooltip>Encapsulate your code</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/actions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/actions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/actions"><span class="devsite-nav-text" tooltip>Global actions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/kotlin-dsl?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/kotlin-dsl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/kotlin-dsl"><span class="devsite-nav-text" tooltip>Fragments and the Kotlin DSL</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/design/editor?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/design/editor" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/design/editor"><span class="devsite-nav-text" tooltip>Use the Navigation editor</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 your navigation graph</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/use-graph/navigate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/use-graph/navigate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/use-graph/navigate"><span class="devsite-nav-text" tooltip>Navigate to a destination</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/use-graph/navoptions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/use-graph/navoptions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/use-graph/navoptions"><span class="devsite-nav-text" tooltip>Navigate with options</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/use-graph/safe-args?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/use-graph/safe-args" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/use-graph/safe-args"><span class="devsite-nav-text" tooltip>Safe args</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/use-graph/pass-data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/use-graph/pass-data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/use-graph/pass-data"><span class="devsite-nav-text" tooltip>Pass data between destinations</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/use-graph/animate-transitions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/use-graph/animate-transitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/use-graph/animate-transitions"><span class="devsite-nav-text" tooltip>Animate transitions between destinations</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/use-graph/conditional?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/use-graph/conditional" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/use-graph/conditional"><span class="devsite-nav-text" tooltip>Conditional navigation</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/use-graph/programmatic?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/use-graph/programmatic" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/use-graph/programmatic"><span class="devsite-nav-text" tooltip>Interact programmatically with the Navigation component</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>The back stack</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/backstack?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/backstack" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/backstack"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/backstack/dialog?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/backstack/dialog" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/backstack/dialog"><span class="devsite-nav-text" tooltip>Dialogs and the back stack</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/backstack/circular?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/backstack/circular" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/backstack/circular"><span class="devsite-nav-text" tooltip>Circular navigation and the back stack</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/backstack/multi-back-stacks?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/backstack/multi-back-stacks" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/backstack/multi-back-stacks"><span class="devsite-nav-text" tooltip>Multiple back stacks</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>Integrations</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/integrations/feature-modules?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/integrations/feature-modules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/integrations/feature-modules"><span class="devsite-nav-text" tooltip>Navigate with feature modules</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/integrations/multi-module?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/integrations/multi-module" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/integrations/multi-module"><span class="devsite-nav-text" tooltip>Multi-module projects</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/integrations/ui?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/integrations/ui" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/integrations/ui"><span class="devsite-nav-text" tooltip>Connect UI components to NavController</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/migrate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/migrate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/migrate"><span class="devsite-nav-text" tooltip>Migrate to the Navigation component</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/testing"><span class="devsite-nav-text" tooltip>Test Navigation</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>Custom back navigation</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/custom-back?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/custom-back" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/custom-back"><span class="devsite-nav-text" tooltip>Custom back navigation</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/custom-back/predictive-back-gesture?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/custom-back/predictive-back-gesture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/custom-back/predictive-back-gesture"><span class="devsite-nav-text" tooltip>Predictive back gesture</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/custom-back/support-animations?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/custom-back/support-animations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/custom-back/support-animations"><span class="devsite-nav-text" tooltip>Add support for predictive back animations</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>Responsive design</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/responsive/config-changes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/responsive/config-changes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/responsive/config-changes"><span class="devsite-nav-text" tooltip>Handling configuration changes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/responsive/form-factors?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/responsive/form-factors" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/responsive/form-factors"><span class="devsite-nav-text" tooltip>Design for different form factors</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>Swipe between views</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/advanced/swipe-view-2?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/advanced/swipe-view-2" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/advanced/swipe-view-2"><span class="devsite-nav-text" tooltip>Swipe views using ViewPager2</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/navigation/advanced/swipe-view?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/navigation/advanced/swipe-view" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/navigation/advanced/swipe-view"><span class="devsite-nav-text" tooltip>Swipe views using ViewPager</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>Fragments</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments"><span class="devsite-nav-text" tooltip>About fragments</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/create?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/create" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/create"><span class="devsite-nav-text" tooltip>Create a fragment</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/fragmentmanager?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/fragmentmanager" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/fragmentmanager"><span class="devsite-nav-text" tooltip>Fragment manager</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/transactions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/transactions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/transactions"><span class="devsite-nav-text" tooltip>Fragment transactions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/animate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/animate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/animate"><span class="devsite-nav-text" tooltip>Animate transitions between fragments</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/lifecycle?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/lifecycle" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/lifecycle"><span class="devsite-nav-text" tooltip>Fragment lifecycle</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/saving-state?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/saving-state" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/saving-state"><span class="devsite-nav-text" tooltip>Saving state with fragments</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/communicate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/communicate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/communicate"><span class="devsite-nav-text" tooltip>Communicate with fragments</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/appbar?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/appbar" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/appbar"><span class="devsite-nav-text" tooltip>Working with the app bar</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/dialogs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/dialogs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/dialogs"><span class="devsite-nav-text" tooltip>Displaying dialogs with DialogFragment</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/debugging?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/debugging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/debugging"><span class="devsite-nav-text" tooltip>Debug your fragments</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/fragments/test?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/fragments/test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/fragments/test"><span class="devsite-nav-text" tooltip>Test your fragments</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>App links</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/app-links?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/app-links" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/app-links"><span class="devsite-nav-text" tooltip>About app links</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/app-links/deep-linking?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/app-links/deep-linking" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/app-links/deep-linking"><span class="devsite-nav-text" tooltip>Enabling links to app content</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/app-links/verify-android-applinks?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/app-links/verify-android-applinks" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/app-links/verify-android-applinks"><span class="devsite-nav-text" tooltip>Verify app links</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/app-links/instant-app-links?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/app-links/instant-app-links" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/app-links/instant-app-links"><span class="devsite-nav-text" tooltip>Create app links for instant apps</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>Interact with other apps</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/basics/intents?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/basics/intents" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/basics/intents"><span class="devsite-nav-text" tooltip>About interacting with other apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/intents-filters?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/intents-filters" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/intents-filters"><span class="devsite-nav-text" tooltip>About intents and intent filters</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/components/intents-common?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/components/intents-common" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/components/intents-common"><span class="devsite-nav-text" tooltip>About common intents</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/basics/intents/sending?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/basics/intents/sending" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/basics/intents/sending"><span class="devsite-nav-text" tooltip>Send users to another app</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/basics/intents/result?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/basics/intents/result" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/basics/intents/result"><span class="devsite-nav-text" tooltip>Get a result from an activity</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/basics/intents/filters?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/basics/intents/filters" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/basics/intents/filters"><span class="devsite-nav-text" tooltip>Allow other apps to start your activity</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/basics/intents/limit-play-loading?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/basics/intents/limit-play-loading" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/basics/intents/limit-play-loading"><span class="devsite-nav-text" tooltip>Limit loading in on-device Android containers</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>Package visibility</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/package-visibility?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/package-visibility" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/package-visibility"><span class="devsite-nav-text" tooltip>About package visibility</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/package-visibility/automatic?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/package-visibility/automatic" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/package-visibility/automatic"><span class="devsite-nav-text" tooltip>Know which packages are visible automatically</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/package-visibility/declaring?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/package-visibility/declaring" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/package-visibility/declaring"><span class="devsite-nav-text" tooltip>Declare package visibility needs</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/package-visibility/use-cases?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/package-visibility/use-cases" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/package-visibility/use-cases"><span class="devsite-nav-text" tooltip>Fulfill common use cases</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/package-visibility/testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/package-visibility/testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/package-visibility/testing"><span class="devsite-nav-text" tooltip>Test package visibility</span></a></li> </ul> </div></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>Dependency injection</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection"><span class="devsite-nav-text" tooltip>About dependency injection</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection/manual?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection/manual" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection/manual"><span class="devsite-nav-text" tooltip>Manual dependency injection</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection/hilt-android?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection/hilt-android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection/hilt-android"><span class="devsite-nav-text" tooltip>Dependency injection with Hilt</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection/hilt-multi-module?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection/hilt-multi-module" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection/hilt-multi-module"><span class="devsite-nav-text" tooltip>Hilt in multi-module apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection/hilt-jetpack?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection/hilt-jetpack" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection/hilt-jetpack"><span class="devsite-nav-text" tooltip>Use Hilt with other Jetpack libraries</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection/hilt-testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection/hilt-testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection/hilt-testing"><span class="devsite-nav-text" tooltip>Hilt testing guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection/hilt-cheatsheet?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection/hilt-cheatsheet" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection/hilt-cheatsheet"><span class="devsite-nav-text" tooltip>Hilt and Dagger annotations cheat sheet</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>Dagger</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection/dagger-basics?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection/dagger-basics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection/dagger-basics"><span class="devsite-nav-text" tooltip>Dagger basics</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection/dagger-android?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection/dagger-android" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection/dagger-android"><span class="devsite-nav-text" tooltip>Using Dagger in Android apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/dependency-injection/dagger-multi-module?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/dependency-injection/dagger-multi-module" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/dependency-injection/dagger-multi-module"><span class="devsite-nav-text" tooltip>Using Dagger in multi-module apps</span></a></li> </ul> </div></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/libraries/app-startup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/libraries/app-startup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/libraries/app-startup"><span class="devsite-nav-text" tooltip>App Startup</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>Google Play</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/billing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/billing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/billing"><span class="devsite-nav-text" tooltip>Google Play Billing ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore"><span class="devsite-nav-text" tooltip>Google Play Core libraries</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>Engage SDK</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/preview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/preview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/preview"><span class="devsite-nav-text" tooltip>Engage SDK Developer Preview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage"><span class="devsite-nav-text" tooltip>About Engage SDK</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/watch?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/watch" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/watch"><span class="devsite-nav-text" tooltip>Engage SDK Watch integration guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/listen?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/listen" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/listen"><span class="devsite-nav-text" tooltip>Engage SDK Listen integration guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/read?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/read" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/read"><span class="devsite-nav-text" tooltip>Engage SDK Read integration guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/shopping?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/shopping" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/shopping"><span class="devsite-nav-text" tooltip>Engage SDK Shopping integration guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/food?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/food" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/food"><span class="devsite-nav-text" tooltip>Engage SDK Food integration guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/social" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/social"><span class="devsite-nav-text" tooltip>Engage SDK Social integration guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/travel?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/travel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/travel"><span class="devsite-nav-text" tooltip>Engage SDK Travel integration guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/healthandfitness?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/healthandfitness" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/healthandfitness"><span class="devsite-nav-text" tooltip>Engage SDK Health &amp; Fitness integration guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/otherverticals?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/otherverticals" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/otherverticals"><span class="devsite-nav-text" tooltip>Engage SDK Other Verticals integration guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/workflow?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/workflow" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/workflow"><span class="devsite-nav-text" tooltip>Engage SDK integration workflow</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/publish?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/publish" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/publish"><span class="devsite-nav-text" tooltip>Engage SDK Cluster publishing guidelines</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/faq?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/faq" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/faq"><span class="devsite-nav-text" tooltip>Engage SDK Frequently asked questions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/release?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/release" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/release"><span class="devsite-nav-text" tooltip>Engage SDK Release Notes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/engage/samples?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/engage/samples" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/engage/samples"><span class="devsite-nav-text" tooltip>Engage SDK Sample Apps</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>Play Points</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playpoints?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playpoints" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playpoints"><span class="devsite-nav-text" tooltip>About Play Points</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playpoints/create-products?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playpoints/create-products" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playpoints/create-products"><span class="devsite-nav-text" tooltip>Create products and promotions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playpoints/deliver-items?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playpoints/deliver-items" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playpoints/deliver-items"><span class="devsite-nav-text" tooltip>Detect and deliver products</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playpoints/test?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playpoints/test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playpoints/test"><span class="devsite-nav-text" tooltip>Test products</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>Play Asset Delivery</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/asset-delivery?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/asset-delivery" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/asset-delivery"><span class="devsite-nav-text" tooltip>About Play Asset Delivery</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/asset-delivery/integrate-java?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/asset-delivery/integrate-java" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/asset-delivery/integrate-java"><span class="devsite-nav-text" tooltip>Integrate asset delivery (Kotlin and Java)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/asset-delivery/integrate-native?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/asset-delivery/integrate-native" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/asset-delivery/integrate-native"><span class="devsite-nav-text" tooltip>Integrate asset delivery (native)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/asset-delivery/integrate-unity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/asset-delivery/integrate-unity" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/asset-delivery/integrate-unity"><span class="devsite-nav-text" tooltip>Integrate asset delivery (Unity)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/asset-delivery/texture-compression?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/asset-delivery/texture-compression" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/asset-delivery/texture-compression"><span class="devsite-nav-text" tooltip>Target texture compression formats</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/asset-delivery/test?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/asset-delivery/test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/asset-delivery/test"><span class="devsite-nav-text" tooltip>Test asset delivery</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>Play Feature Delivery</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/feature-delivery?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/feature-delivery" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/feature-delivery"><span class="devsite-nav-text" tooltip>About Play Feature Delivery</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/feature-delivery/install-time?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/feature-delivery/install-time" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/feature-delivery/install-time"><span class="devsite-nav-text" tooltip>Configure install-time delivery</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/feature-delivery/conditional?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/feature-delivery/conditional" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/feature-delivery/conditional"><span class="devsite-nav-text" tooltip>Configure conditional delivery</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/feature-delivery/on-demand?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/feature-delivery/on-demand" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/feature-delivery/on-demand"><span class="devsite-nav-text" tooltip>Configure on-demand delivery</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/feature-delivery/ux-guidelines?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/feature-delivery/ux-guidelines" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/feature-delivery/ux-guidelines"><span class="devsite-nav-text" tooltip>On-demand delivery best practices</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/feature-delivery/instant?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/feature-delivery/instant" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/feature-delivery/instant"><span class="devsite-nav-text" tooltip>Configure instant delivery</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/feature-delivery/additional-resources?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/feature-delivery/additional-resources" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/feature-delivery/additional-resources"><span class="devsite-nav-text" tooltip>Additional resources</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>In-app reviews</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-review?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-review" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-review"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-review/kotlin-java?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-review/kotlin-java" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-review/kotlin-java"><span class="devsite-nav-text" tooltip>Integrate in-app reviews (Kotlin or Java)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-review/native?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-review/native" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-review/native"><span class="devsite-nav-text" tooltip>Integrate in-app reviews (Native)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-review/unity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-review/unity" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-review/unity"><span class="devsite-nav-text" tooltip>Integrate in-app reviews (Unity)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-review/test?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-review/test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-review/test"><span class="devsite-nav-text" tooltip>Test in-app reviews</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>In-app updates</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-updates?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-updates" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-updates"><span class="devsite-nav-text" tooltip>About in-app updates</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-updates/kotlin-java?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-updates/kotlin-java" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-updates/kotlin-java"><span class="devsite-nav-text" tooltip>Support in-app updates (Kotlin or Java)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-updates/native?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-updates/native" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-updates/native"><span class="devsite-nav-text" tooltip>Support in-app updates (Native)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-updates/unity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-updates/unity" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-updates/unity"><span class="devsite-nav-text" tooltip>Support in-app updates (Unity)</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/playcore/in-app-updates/test?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/playcore/in-app-updates/test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/playcore/in-app-updates/test"><span class="devsite-nav-text" tooltip>Test in-app updates</span></a></li> </ul> </div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-beta"> <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>Play as you Download</span><span class="devsite-nav-icon material-icons" data-icon="beta" data-title="Beta" aria-hidden="true"></span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/play-as-you-download?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/play-as-you-download" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/play-as-you-download"><span class="devsite-nav-text" tooltip>About Play as you Download</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/play-as-you-download/best-practices?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/play-as-you-download/best-practices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/play-as-you-download/best-practices"><span class="devsite-nav-text" tooltip>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>Google Play Instant</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/overview"><span class="devsite-nav-text" tooltip>About Google Play Instant</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>Get started with instant apps</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/getting-started/instant-enabled-app-bundle?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/getting-started/instant-enabled-app-bundle" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/getting-started/instant-enabled-app-bundle"><span class="devsite-nav-text" tooltip>Create an instant-enabled app bundle</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/best-practices/apps?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/best-practices/apps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/best-practices/apps"><span class="devsite-nav-text" tooltip>UX best practices for apps</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>Get started with instant games</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/getting-started/game-instant-app?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/getting-started/game-instant-app" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/getting-started/game-instant-app"><span class="devsite-nav-text" tooltip>About instant games</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/getting-started/game-unity-plugin?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/getting-started/game-unity-plugin" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/getting-started/game-unity-plugin"><span class="devsite-nav-text" tooltip>Unity plugin</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/best-practices/games?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/best-practices/games" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/best-practices/games"><span class="devsite-nav-text" tooltip>UX best practices for games</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/feature-module-migration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/feature-module-migration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/feature-module-migration"><span class="devsite-nav-text" tooltip>Migrate to Android App Bundles</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/getting-started/cloud-delivery-assets?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/getting-started/cloud-delivery-assets" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/getting-started/cloud-delivery-assets"><span class="devsite-nav-text" tooltip>Implement cloud delivery of assets</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/getting-started/support-play-games-services?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/getting-started/support-play-games-services" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/getting-started/support-play-games-services"><span class="devsite-nav-text" tooltip>Support Google Play Games Services</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/instant-play-games?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/instant-play-games" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/instant-play-games"><span class="devsite-nav-text" tooltip>Instant Play games</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/instant-play-games-checklist?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/instant-play-games-checklist" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/instant-play-games-checklist"><span class="devsite-nav-text" tooltip>Instant Play games checklist</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/guides/reduce-module-size?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/guides/reduce-module-size" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/guides/reduce-module-size"><span class="devsite-nav-text" tooltip>Reduce the size of your instant app or game</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/guides/advertising?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/guides/advertising" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/guides/advertising"><span class="devsite-nav-text" tooltip>Add ads to your instant app or game</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/guides/multiple-entry-points?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/guides/multiple-entry-points" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/guides/multiple-entry-points"><span class="devsite-nav-text" tooltip>Provide multiple entry points</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>Integrate with Firebase</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/guides/analytics?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/guides/analytics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/guides/analytics"><span class="devsite-nav-text" tooltip>Add Google Analytics for Firebase to your instant app</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/guides/dynamic-links?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/guides/dynamic-links" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/guides/dynamic-links"><span class="devsite-nav-text" tooltip>Use Firebase Dynamic Links with instant apps</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/tech-requirements?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/tech-requirements" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/tech-requirements"><span class="devsite-nav-text" tooltip>Technical requirements checklist</span></a></li> <li class="devsite-nav-item devsite-nav-external"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://play.google.com/about/other-programs/android-instant-apps/" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://play.google.com/about/other-programs/android-instant-apps/" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://play.google.com/about/other-programs/android-instant-apps/"><span class="devsite-nav-text" tooltip>Google Play Instant policy</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></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>Resources</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item devsite-nav-external"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://developers.google.com/android/reference/com/google/android/gms/instantapps/package-summary" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://developers.google.com/android/reference/com/google/android/gms/instantapps/package-summary" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://developers.google.com/android/reference/com/google/android/gms/instantapps/package-summary"><span class="devsite-nav-text" tooltip>Reference</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/samples?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/samples" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/samples"><span class="devsite-nav-text" tooltip>Code samples</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/release-notes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/release-notes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/release-notes"><span class="devsite-nav-text" tooltip>SDK release notes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/google-play-instant/instant-app-intents?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/google-play-instant/instant-app-intents" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/google-play-instant/instant-app-intents"><span class="devsite-nav-text" tooltip>Instant App Intents</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>Support</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item devsite-nav-external"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://issuetracker.google.com/issues?q%3Dstatus:open%2520componentid:316045" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://issuetracker.google.com/issues?q=status:open%20componentid:316045" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://issuetracker.google.com/issues?q=status:open%20componentid:316045"><span class="devsite-nav-text" tooltip>Known issues</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li> <li class="devsite-nav-item devsite-nav-external"><a href="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://stackoverflow.com/questions/tagged/android-instant-apps" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://stackoverflow.com/questions/tagged/android-instant-apps" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://stackoverflow.com/questions/tagged/android-instant-apps"><span class="devsite-nav-text" tooltip>StackOverflow</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li> </ul> </div></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/developer-api?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/developer-api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/developer-api"><span class="devsite-nav-text" tooltip>Play Developer APIs</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>Play Install Referrer</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/installreferrer?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/installreferrer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/installreferrer"><span class="devsite-nav-text" tooltip>Overview</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>Play Install Referrer Library</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/installreferrer/library?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/installreferrer/library" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/installreferrer/library"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/reference/com/android/installreferrer/packages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /reference/com/android/installreferrer/packages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/reference/com/android/installreferrer/packages"><span class="devsite-nav-text" tooltip>Reference ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/installreferrer/release-notes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/installreferrer/release-notes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/installreferrer/release-notes"><span class="devsite-nav-text" tooltip>Release notes</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/installreferrer/igetinstallreferrerservice?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/installreferrer/igetinstallreferrerservice" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/installreferrer/igetinstallreferrerservice"><span class="devsite-nav-text" tooltip>Play Install Referrer API</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/integrity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/integrity" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/integrity"><span class="devsite-nav-text" tooltip>Play Integrity API ⍈</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>Play Requirements</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/distribute/play-policies?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /distribute/play-policies" track-type="bookNav" track-name="click" track-metadata-eventdetail="/distribute/play-policies"><span class="devsite-nav-text" tooltip>Play Policies ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/requirements/target-sdk?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/requirements/target-sdk" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/requirements/target-sdk"><span class="devsite-nav-text" tooltip>Meet the target API level requirement</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/requirements/64-bit?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/requirements/64-bit" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/requirements/64-bit"><span class="devsite-nav-text" tooltip>Support 64-bit architectures ⍈</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>Application Licensing</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/licensing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/licensing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/licensing"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/licensing/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/licensing/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/licensing/overview"><span class="devsite-nav-text" tooltip>Licensing Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/licensing/setting-up?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/licensing/setting-up" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/licensing/setting-up"><span class="devsite-nav-text" tooltip>Setting Up for Licensing</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/licensing/server-side-verification?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/licensing/server-side-verification" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/licensing/server-side-verification"><span class="devsite-nav-text" tooltip>Adding Server-Side Verification</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/licensing/client-side-verification?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/licensing/client-side-verification" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/licensing/client-side-verification"><span class="devsite-nav-text" tooltip>Adding Client-Side Verification</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/licensing/licensing-reference?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/licensing/licensing-reference" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/licensing/licensing-reference"><span class="devsite-nav-text" tooltip>Licensing Reference</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/expansion-files?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/expansion-files" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/expansion-files"><span class="devsite-nav-text" tooltip>APK Expansion Files</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/app-updates?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/app-updates" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/app-updates"><span class="devsite-nav-text" tooltip>App updates</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/google/play/release-audience-restriction?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /google/play/release-audience-restriction" track-type="bookNav" track-name="click" track-metadata-eventdetail="/google/play/release-audience-restriction"><span class="devsite-nav-text" tooltip>Release audience restriction</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>Core areas</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/ui?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/ui" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/ui"><span class="devsite-nav-text" tooltip>User interfaces ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/media/audio-and-video?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /media/audio-and-video" track-type="bookNav" track-name="click" track-metadata-eventdetail="/media/audio-and-video"><span class="devsite-nav-text" tooltip>Audio &amp; video ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/background-work/services?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/background-work/services" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/background-work/services"><span class="devsite-nav-text" tooltip>Services ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/background-work/background-tasks?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/background-work/background-tasks" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/background-work/background-tasks"><span class="devsite-nav-text" tooltip>Background tasks ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/background-work/services/alarms?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/background-work/services/alarms" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/background-work/services/alarms"><span class="devsite-nav-text" tooltip>Alarms ⍈</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>Permissions</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/permissions/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/permissions/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/permissions/overview"><span class="devsite-nav-text" tooltip>About permissions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/permissions/declaring?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/permissions/declaring" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/permissions/declaring"><span class="devsite-nav-text" tooltip>Declare app permissions</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>Request app permissions</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/permissions/requesting?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/permissions/requesting" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/permissions/requesting"><span class="devsite-nav-text" tooltip>Request runtime permissions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/permissions/requesting-special?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/permissions/requesting-special" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/permissions/requesting-special"><span class="devsite-nav-text" tooltip>Request special permissions</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/permissions/explaining-access?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/permissions/explaining-access" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/permissions/explaining-access"><span class="devsite-nav-text" tooltip>Explain access to more sensitive information</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/permissions/usage-notes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/permissions/usage-notes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/permissions/usage-notes"><span class="devsite-nav-text" tooltip>App permissions best practices</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/permissions/default-handlers?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/permissions/default-handlers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/permissions/default-handlers"><span class="devsite-nav-text" tooltip>Permissions used only in default handlers</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/permissions/restrict-interactions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/permissions/restrict-interactions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/permissions/restrict-interactions"><span class="devsite-nav-text" tooltip>Restrict interactions with other apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/permissions/defining?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/permissions/defining" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/permissions/defining"><span class="devsite-nav-text" tooltip>Define custom permissions</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>App data and files</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/data"><span class="devsite-nav-text" tooltip>About app data and files</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage"><span class="devsite-nav-text" tooltip>About storage</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/app-specific?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/app-specific" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/app-specific"><span class="devsite-nav-text" tooltip>Save to app-specific storage</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>Save to shared storage</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/shared?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/shared" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/shared"><span class="devsite-nav-text" tooltip>About shared storage</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/shared/media?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/shared/media" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/shared/media"><span class="devsite-nav-text" tooltip>Media</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/shared/photopicker?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/shared/photopicker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/shared/photopicker"><span class="devsite-nav-text" tooltip>Photo picker</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/shared/documents-files?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/shared/documents-files" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/shared/documents-files"><span class="devsite-nav-text" tooltip>Documents and other files</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/shared/datasets?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/shared/datasets" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/shared/datasets"><span class="devsite-nav-text" tooltip>Datasets</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/manage-all-files?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/manage-all-files" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/manage-all-files"><span class="devsite-nav-text" tooltip>Manage all files on a storage device</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/shared-preferences?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/shared-preferences" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/shared-preferences"><span class="devsite-nav-text" tooltip>Save key-value data</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>Save data in a local database</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room"><span class="devsite-nav-text" tooltip>About the local database</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/defining-data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/defining-data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/defining-data"><span class="devsite-nav-text" tooltip>Define data using entities</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/accessing-data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/accessing-data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/accessing-data"><span class="devsite-nav-text" tooltip>Access data using DAOs</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/relationships?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/relationships" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/relationships"><span class="devsite-nav-text" tooltip>Define relationships between objects</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/async-queries?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/async-queries" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/async-queries"><span class="devsite-nav-text" tooltip>Write asynchronous DAO queries</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/creating-views?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/creating-views" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/creating-views"><span class="devsite-nav-text" tooltip>Create views into a database</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/prepopulate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/prepopulate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/prepopulate"><span class="devsite-nav-text" tooltip>Prepopulate your database</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/migrating-db-versions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/migrating-db-versions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/migrating-db-versions"><span class="devsite-nav-text" tooltip>Migrate your database</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/testing-db?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/testing-db" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/testing-db"><span class="devsite-nav-text" tooltip>Test and debug your database</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/referencing-data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/referencing-data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/referencing-data"><span class="devsite-nav-text" tooltip>Reference complex data</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/sqlite-room-migration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/sqlite-room-migration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/sqlite-room-migration"><span class="devsite-nav-text" tooltip>Migrate from SQLite to Room</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/room/room-kmp-migration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/room/room-kmp-migration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/room/room-kmp-migration"><span class="devsite-nav-text" tooltip>Migrate to Room Kotlin Multiplatform</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/sqlite?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/sqlite" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/sqlite"><span class="devsite-nav-text" tooltip>Save data using SQLite</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/data-storage/use-cases?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/data-storage/use-cases" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/data-storage/use-cases"><span class="devsite-nav-text" tooltip>Storage use cases and best practices</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>Sharing data</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sharing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sharing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sharing"><span class="devsite-nav-text" tooltip>About sharing data</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sharing/send?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sharing/send" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sharing/send"><span class="devsite-nav-text" tooltip>Sending simple data to other apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sharing/receive?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sharing/receive" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sharing/receive"><span class="devsite-nav-text" tooltip>Receiving simple data from other apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sharing/direct-share-targets?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sharing/direct-share-targets" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sharing/direct-share-targets"><span class="devsite-nav-text" tooltip>Provide Direct Share targets</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>Sharing files</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/secure-file-sharing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/secure-file-sharing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/secure-file-sharing"><span class="devsite-nav-text" tooltip>About sharing files</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/secure-file-sharing/setup-sharing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/secure-file-sharing/setup-sharing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/secure-file-sharing/setup-sharing"><span class="devsite-nav-text" tooltip>Setting up file sharing</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/secure-file-sharing/share-file?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/secure-file-sharing/share-file" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/secure-file-sharing/share-file"><span class="devsite-nav-text" tooltip>Sharing a file</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/secure-file-sharing/request-file?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/secure-file-sharing/request-file" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/secure-file-sharing/request-file"><span class="devsite-nav-text" tooltip>Requesting a shared file</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/secure-file-sharing/retrieve-info?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/secure-file-sharing/retrieve-info" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/secure-file-sharing/retrieve-info"><span class="devsite-nav-text" tooltip>Retrieving file information</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>Printing files</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/printing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/printing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/printing"><span class="devsite-nav-text" tooltip>About printing</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/printing/photos?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/printing/photos" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/printing/photos"><span class="devsite-nav-text" tooltip>Printing photos</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/printing/html-docs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/printing/html-docs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/printing/html-docs"><span class="devsite-nav-text" tooltip>Printing HTML documents</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/printing/custom-docs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/printing/custom-docs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/printing/custom-docs"><span class="devsite-nav-text" tooltip>Printing custom documents</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>Content providers</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/providers/content-providers?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/providers/content-providers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/providers/content-providers"><span class="devsite-nav-text" tooltip>About content providers</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/providers/content-provider-basics?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/providers/content-provider-basics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/providers/content-provider-basics"><span class="devsite-nav-text" tooltip>Content provider basics</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/providers/content-provider-creating?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/providers/content-provider-creating" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/providers/content-provider-creating"><span class="devsite-nav-text" tooltip>Creating a content provider</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/providers/document-provider?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/providers/document-provider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/providers/document-provider"><span class="devsite-nav-text" tooltip>Open files using storage access framework</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/providers/create-document-provider?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/providers/create-document-provider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/providers/create-document-provider"><span class="devsite-nav-text" tooltip>Create a custom document provider</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/providers/cloud-media-provider?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/providers/cloud-media-provider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/providers/cloud-media-provider"><span class="devsite-nav-text" tooltip>Create a cloud media provider</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/data/install-location?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/data/install-location" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/data/install-location"><span class="devsite-nav-text" tooltip>App install location</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>User data and identity</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/user-data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/user-data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/user-data"><span class="devsite-nav-text" tooltip>About user data</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in"><span class="devsite-nav-text" tooltip>Add sign-in workflow</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>Credential Manager</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in/passkeys?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in/passkeys" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in/passkeys"><span class="devsite-nav-text" tooltip>Sign in your user</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in/credential-manager?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in/credential-manager" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in/credential-manager"><span class="devsite-nav-text" tooltip>Integrate with Sign in with Google</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in/fido2-migration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in/fido2-migration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in/fido2-migration"><span class="devsite-nav-text" tooltip>Migrate from FIDO2</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in/smart-lock-migration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in/smart-lock-migration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in/smart-lock-migration"><span class="devsite-nav-text" tooltip>Migrate from Smart Lock</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in/legacy-gsi-migration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in/legacy-gsi-migration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in/legacy-gsi-migration"><span class="devsite-nav-text" tooltip>Migrate from legacy Google Sign-In</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in/credential-manager-webview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in/credential-manager-webview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in/credential-manager-webview"><span class="devsite-nav-text" tooltip>Integrate with WebView</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in/credential-provider?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in/credential-provider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in/credential-provider"><span class="devsite-nav-text" tooltip>Integrate with your credential provider solution</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in/privileged-apps?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in/privileged-apps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in/privileged-apps"><span class="devsite-nav-text" tooltip>Make calls on behalf of other parties for privileged apps</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>Autofill framework</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/text/autofill?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/text/autofill" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/text/autofill"><span class="devsite-nav-text" tooltip>About autofill</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/text/autofill-optimize?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/text/autofill-optimize" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/text/autofill-optimize"><span class="devsite-nav-text" tooltip>Optimize your app for autofill</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/text/autofill-services?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/text/autofill-services" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/text/autofill-services"><span class="devsite-nav-text" tooltip>Build autofill services</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/text/ime-autofill?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/text/ime-autofill" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/text/ime-autofill"><span class="devsite-nav-text" tooltip>Integrate autofill with keyboards</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/sign-in/biometric-auth?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/sign-in/biometric-auth" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/sign-in/biometric-auth"><span class="devsite-nav-text" tooltip>Show a biometric authentication dialog</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/articles/app-set-id?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/articles/app-set-id" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/articles/app-set-id"><span class="devsite-nav-text" tooltip>Identify developer-owned apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/articles/ad-id?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/articles/ad-id" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/articles/ad-id"><span class="devsite-nav-text" tooltip>Get a user-resettable advertising ID</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/providers/calendar-provider?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/providers/calendar-provider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/providers/calendar-provider"><span class="devsite-nav-text" tooltip>About the calendar provider</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>Contacts provider</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/providers/contacts-provider?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/providers/contacts-provider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/providers/contacts-provider"><span class="devsite-nav-text" tooltip>About the contacts provider</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/contacts-provider/retrieve-names?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/contacts-provider/retrieve-names" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/contacts-provider/retrieve-names"><span class="devsite-nav-text" tooltip>Retrieving a list of contacts</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/contacts-provider/retrieve-details?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/contacts-provider/retrieve-details" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/contacts-provider/retrieve-details"><span class="devsite-nav-text" tooltip>Retrieving details for a contact</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/contacts-provider/modify-data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/contacts-provider/modify-data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/contacts-provider/modify-data"><span class="devsite-nav-text" tooltip>Modifying contacts using intents</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/contacts-provider/display-contact-badge?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/contacts-provider/display-contact-badge" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/contacts-provider/display-contact-badge"><span class="devsite-nav-text" tooltip>Displaying the quick contact badge</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/data/account-transfer?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/data/account-transfer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/data/account-transfer"><span class="devsite-nav-text" tooltip>Account transfer</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>Data backup</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/data/backup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/data/backup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/data/backup"><span class="devsite-nav-text" tooltip>About backup</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/data/autobackup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/data/autobackup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/data/autobackup"><span class="devsite-nav-text" tooltip>Back up user data</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/data/keyvaluebackup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/data/keyvaluebackup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/data/keyvaluebackup"><span class="devsite-nav-text" tooltip>Back up key-value pairs</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/data/testingbackup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/data/testingbackup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/data/testingbackup"><span class="devsite-nav-text" tooltip>Test backup and restore</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/articles/user-data-ids?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/articles/user-data-ids" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/articles/user-data-ids"><span class="devsite-nav-text" tooltip>Best practices for unique identifiers</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>Remember and authenticate users</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/id-auth?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/id-auth" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/id-auth"><span class="devsite-nav-text" tooltip>About authentication</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/id-auth/identify?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/id-auth/identify" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/id-auth/identify"><span class="devsite-nav-text" tooltip>Remember your user</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/id-auth/authenticate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/id-auth/authenticate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/id-auth/authenticate"><span class="devsite-nav-text" tooltip>Authenticate to OAuth2 services</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/id-auth/custom_auth?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/id-auth/custom_auth" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/id-auth/custom_auth"><span class="devsite-nav-text" tooltip>Create a custom account type</span></a></li> </ul> </div></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/media/camera/get-started-with-camera?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /media/camera/get-started-with-camera" track-type="bookNav" track-name="click" track-metadata-eventdetail="/media/camera/get-started-with-camera"><span class="devsite-nav-text" tooltip>Add camera capabilities to your app ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/sensors-and-location/location?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/sensors-and-location/location" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/sensors-and-location/location"><span class="devsite-nav-text" tooltip>User location ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/sensors-and-location/sensors/sensors_overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/sensors-and-location/sensors/sensors_overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/sensors-and-location/sensors/sensors_overview"><span class="devsite-nav-text" tooltip>Sensors ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/connectivity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /develop/connectivity" track-type="bookNav" track-name="click" track-metadata-eventdetail="/develop/connectivity"><span class="devsite-nav-text" tooltip>Connectivity ⍈</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>Renderscript</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/renderscript/compute?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/advanced?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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"> <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> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/renderscript/migrate?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/migrate/migrate-gles?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/migrate/migrate-vulkan?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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"> <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> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_value_types?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_object_types?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_convert?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_math?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_vector_math?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_matrix?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_quaternion?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_atomic?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_time?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_allocation_data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_object_info?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_for_each?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_io?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_debug?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference/rs_graphics?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/renderscript/reference?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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> <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>Android app bundles</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/app-bundle?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/app-bundle" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/app-bundle"><span class="devsite-nav-text" tooltip>About app bundles</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/app-bundle/configure-base?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/app-bundle/configure-base" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/app-bundle/configure-base"><span class="devsite-nav-text" tooltip>Configure the base module</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/app-bundle/test?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/app-bundle/test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/app-bundle/test"><span class="devsite-nav-text" tooltip>Build and test your app bundle</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/app-bundle/code-transparency?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/app-bundle/code-transparency" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/app-bundle/code-transparency"><span class="devsite-nav-text" tooltip>Add code transparency</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/app-bundle/app-bundle-format?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/app-bundle/app-bundle-format" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/app-bundle/app-bundle-format"><span class="devsite-nav-text" tooltip>About the app bundle format</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/app-bundle/faq?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/app-bundle/faq" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/app-bundle/faq"><span class="devsite-nav-text" tooltip>Frequently asked questions</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>Build for enterprise</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work"><span class="devsite-nav-text" tooltip>About enterprise apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/guide" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/guide"><span class="devsite-nav-text" tooltip>Developer guide</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/managed-profiles?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/managed-profiles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/managed-profiles"><span class="devsite-nav-text" tooltip>Work profiles</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/managed-configurations?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/managed-configurations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/managed-configurations"><span class="devsite-nav-text" tooltip>Set up managed configurations</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>App feedback</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/app-feedback/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/app-feedback/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/app-feedback/overview"><span class="devsite-nav-text" tooltip>Send app feedback to EMMs</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/app-feedback/testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/app-feedback/testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/app-feedback/testing"><span class="devsite-nav-text" tooltip>Test app feedback</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/contacts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/contacts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/contacts"><span class="devsite-nav-text" tooltip>Work contacts</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/device-management-policy?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/device-management-policy" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/device-management-policy"><span class="devsite-nav-text" tooltip>Device management policies</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>Device management</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/build-dpc?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/build-dpc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/build-dpc"><span class="devsite-nav-text" tooltip>Build a device policy controller</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>Dedicated devices</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/dedicated-devices?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/dedicated-devices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/dedicated-devices"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/dedicated-devices/lock-task-mode?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/dedicated-devices/lock-task-mode" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/dedicated-devices/lock-task-mode"><span class="devsite-nav-text" tooltip>Lock task mode</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/dedicated-devices/multiple-users?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/dedicated-devices/multiple-users" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/dedicated-devices/multiple-users"><span class="devsite-nav-text" tooltip>Multiple users</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/dedicated-devices/cookbook?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/dedicated-devices/cookbook" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/dedicated-devices/cookbook"><span class="devsite-nav-text" tooltip>Cookbook</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/device-management?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/device-management" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/device-management"><span class="devsite-nav-text" tooltip>Device control</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/network-telephony?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/network-telephony" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/network-telephony"><span class="devsite-nav-text" tooltip>Networking and telephony</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/security?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/security" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/security"><span class="devsite-nav-text" tooltip>Security</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/system-updates?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/system-updates" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/system-updates"><span class="devsite-nav-text" tooltip>System updates</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/dpc/logging?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/dpc/logging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/dpc/logging"><span class="devsite-nav-text" tooltip>Network activity logging</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>Android versions</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions"><span class="devsite-nav-text" tooltip>About the versions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions/android-15?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions/android-15" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions/android-15"><span class="devsite-nav-text" tooltip>Android 15</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions/android-14?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions/android-14" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions/android-14"><span class="devsite-nav-text" tooltip>Android 14</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions/android-13?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions/android-13" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions/android-13"><span class="devsite-nav-text" tooltip>Android 13</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions/android-12?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions/android-12" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions/android-12"><span class="devsite-nav-text" tooltip>Android 12</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions/android-11?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions/android-11" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions/android-11"><span class="devsite-nav-text" tooltip>Android 11</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions/android-10?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions/android-10" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions/android-10"><span class="devsite-nav-text" tooltip>Android 10</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions/android-9.0?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions/android-9.0" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions/android-9.0"><span class="devsite-nav-text" tooltip>Android 9</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions/android-8.0?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions/android-8.0" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions/android-8.0"><span class="devsite-nav-text" tooltip>Android 8.0</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/versions/android-7.0?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/versions/android-7.0" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/versions/android-7.0"><span class="devsite-nav-text" tooltip>Android 7.0</span></a></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/work/device-admin?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /work/device-admin" track-type="bookNav" track-name="click" track-metadata-eventdetail="/work/device-admin"><span class="devsite-nav-text" tooltip>Device administration</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>Best practices</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>Testing</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing"><span class="devsite-nav-text" tooltip>Test apps on Android</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>Fundamentals</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/fundamentals?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/fundamentals" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/fundamentals"><span class="devsite-nav-text" tooltip>Fundamentals of testing Android apps</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/fundamentals/what-to-test?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/fundamentals/what-to-test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/fundamentals/what-to-test"><span class="devsite-nav-text" tooltip>What to test in Android</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/fundamentals/test-doubles?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/fundamentals/test-doubles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/fundamentals/test-doubles"><span class="devsite-nav-text" tooltip>Using test doubles in Android</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/fundamentals/strategies?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/fundamentals/strategies" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/fundamentals/strategies"><span class="devsite-nav-text" tooltip>Testing strategies</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>Local tests</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/local-tests?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/local-tests" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/local-tests"><span class="devsite-nav-text" tooltip>Build local tests</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/local-tests/robolectric?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/local-tests/robolectric" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/local-tests/robolectric"><span class="devsite-nav-text" tooltip>Robolectric</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>Instrumented tests</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/instrumented-tests?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/instrumented-tests" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/instrumented-tests"><span class="devsite-nav-text" tooltip>Build instrumented tests</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/instrumented-tests/stability?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/instrumented-tests/stability" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/instrumented-tests/stability"><span class="devsite-nav-text" tooltip>Big test stability</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/instrumented-tests/performance?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/instrumented-tests/performance" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/instrumented-tests/performance"><span class="devsite-nav-text" tooltip>Performance testing</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>AndroidX test libraries</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/instrumented-tests/androidx-test-libraries/test-setup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/instrumented-tests/androidx-test-libraries/test-setup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/instrumented-tests/androidx-test-libraries/test-setup"><span class="devsite-nav-text" tooltip>Set up project for AndroidX Test</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/instrumented-tests/androidx-test-libraries/rules?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/instrumented-tests/androidx-test-libraries/rules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/instrumented-tests/androidx-test-libraries/rules"><span class="devsite-nav-text" tooltip>JUnit4 rules with AndroidX Test</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/instrumented-tests/androidx-test-libraries/runner?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/instrumented-tests/androidx-test-libraries/runner" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/instrumented-tests/androidx-test-libraries/runner"><span class="devsite-nav-text" tooltip>AndroidJUnitRunner</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>UI tests</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/ui-tests?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/ui-tests" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/ui-tests"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/ui-tests/behavior?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/ui-tests/behavior" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/ui-tests/behavior"><span class="devsite-nav-text" tooltip>Behavior UI tests</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/ui-tests/screenshot?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/ui-tests/screenshot" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/ui-tests/screenshot"><span class="devsite-nav-text" tooltip>Screenshot tests</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>Continuous integration</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/continuous-integration?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/continuous-integration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/continuous-integration"><span class="devsite-nav-text" tooltip>Basics</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/continuous-integration/automation?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/continuous-integration/automation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/continuous-integration/automation"><span class="devsite-nav-text" tooltip>Types of automation</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/continuous-integration/features?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/continuous-integration/features" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/continuous-integration/features"><span class="devsite-nav-text" tooltip>Common 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>Espresso</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso"><span class="devsite-nav-text" tooltip>Espresso</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/basics?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/basics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/basics"><span class="devsite-nav-text" tooltip>Espresso basics</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/setup?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/setup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/setup"><span class="devsite-nav-text" tooltip>Espresso setup instructions</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/cheat-sheet?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/cheat-sheet" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/cheat-sheet"><span class="devsite-nav-text" tooltip>Espresso cheat sheet</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/idling-resource?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/idling-resource" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/idling-resource"><span class="devsite-nav-text" tooltip>Espresso idling resources</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/intents?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/intents" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/intents"><span class="devsite-nav-text" tooltip>Espresso-Intents</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/lists?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/lists" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/lists"><span class="devsite-nav-text" tooltip>Espresso lists</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/multiprocess?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/multiprocess" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/multiprocess"><span class="devsite-nav-text" tooltip>Multiprocess Espresso</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/recipes?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/recipes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/recipes"><span class="devsite-nav-text" tooltip>Espresso recipes</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/web?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/web" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/web"><span class="devsite-nav-text" tooltip>Espresso Web</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/accessibility-checking?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/accessibility-checking" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/accessibility-checking"><span class="devsite-nav-text" tooltip>Accessibility checking</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/espresso/additional-resources?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/espresso/additional-resources" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/espresso/additional-resources"><span class="devsite-nav-text" tooltip>Additional Resources for Espresso</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>Testing different screen sizes</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/different-screens?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/different-screens" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/different-screens"><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/different-screens/tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/different-screens/tools" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/different-screens/tools"><span class="devsite-nav-text" tooltip>Libraries and tools</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>Testing other components</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/other-components/content-providers?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/other-components/content-providers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/other-components/content-providers"><span class="devsite-nav-text" tooltip>Test content providers</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/other-components/services?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/other-components/services" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/other-components/services"><span class="devsite-nav-text" tooltip>Test your service</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/testing/other-components/ui-automator?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /training/testing/other-components/ui-automator" track-type="bookNav" track-name="click" track-metadata-eventdetail="/training/testing/other-components/ui-automator"><span class="devsite-nav-text" tooltip>Write automated tests with UI Automator</span></a></li> </ul> </div></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/topic/performance?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /topic/performance" track-type="bookNav" track-name="click" track-metadata-eventdetail="/topic/performance"><span class="devsite-nav-text" tooltip>Performance ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/topics/ui/accessibility?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/topics/ui/accessibility" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/topics/ui/accessibility"><span class="devsite-nav-text" tooltip>Accessibility ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/privacy-and-security/about?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /privacy-and-security/about" track-type="bookNav" track-name="click" track-metadata-eventdetail="/privacy-and-security/about"><span class="devsite-nav-text" tooltip>Privacy ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/privacy-and-security/security-tips?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /privacy-and-security/security-tips" track-type="bookNav" track-name="click" track-metadata-eventdetail="/privacy-and-security/security-tips"><span class="devsite-nav-text" tooltip>Security ⍈</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>SDKs</span> </div> <ul class="devsite-nav-section"> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/guide/practices/sdk-best-practices?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /guide/practices/sdk-best-practices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/guide/practices/sdk-best-practices"><span class="devsite-nav-text" tooltip>SDK best practices</span></a></li> </ul> </div></li> </ul> </div></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/games/guides?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /games/guides" track-type="bookNav" track-name="click" track-metadata-eventdetail="/games/guides"><span class="devsite-nav-text" tooltip>Games ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/health-and-fitness/guides/health-connect?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /health-and-fitness/guides/health-connect" track-type="bookNav" track-name="click" track-metadata-eventdetail="/health-and-fitness/guides/health-connect"><span class="devsite-nav-text" tooltip>Health Connect ⍈</span></a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/health-and-fitness/guides/health-services?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /health-and-fitness/guides/health-services" track-type="bookNav" track-name="click" track-metadata-eventdetail="/health-and-fitness/guides/health-services"><span class="devsite-nav-text" tooltip>Health Services on Wear OS ⍈</span></a></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="https://developer-android-com.translate.goog/gemini-in-android?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/studio?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/get-started/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/courses?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/get-started/codelabs?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/kotlin?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=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="https://developer-android-com.translate.goog/adaptive-apps?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/wear?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/cars?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/chrome-os?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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"><a href="https://developer-android-com.translate.goog/multi-device-development?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cross-device SDK" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Cross-device SDK </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="https://developer-android-com.translate.goog/games?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/media?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/social-and-messaging?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/health-and-fitness?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/productivity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/work/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/latest-updates?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/latest-updates/experimental?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/studio/preview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/jetpack/androidx/versions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/training/wearables/versions/4?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/design-for-safety/privacy-sandbox?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/design/ui?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/design/ui/mobile?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/design/ui/large-screens?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Large screens (e.g., tablets)" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Large screens (e.g., tablets) </span> </a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/design/ui/widget?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/design/ui/wear?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/design/ui/tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/topic/architecture/intro?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/topic/libraries/view-binding?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/navigation/navigation-principles?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/topic/modularization?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/training/testing/fundamentals?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/quality?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/quality/core-value?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/quality/user-experience?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/quality/technical?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/quality/privacy-and-security?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/security?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/privacy-and-security/about?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/identity?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/security/fraud-prevention?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/build-for-billions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/docs/quality-guidelines/build-for-billions?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/androidgo?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/ai?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/samples?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/quick-guides?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Try Quick Guidesᵇᵉᵗᵃ" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Try Quick Guidesᵇᵉᵗᵃ </span> </a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/develop/ui?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/permissions/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/develop/background-work?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/data?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/develop?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#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="https://developer-android-com.translate.goog/studio/write?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/build/gradle-build-overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/training/testing?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/topic/performance/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/tools?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/reference/tools/gradle-api?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/large-screens/get-started-with-large-screens?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Large screens (e.g., tablets)" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Large screens (e.g., tablets) </span> </a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/wearables?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/health-and-fitness/guides?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/topics/connectivity/cross-device-sdk/overview?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cross-device SDK" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Cross-device SDK </span> </a></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/training/cars?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/training/tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/chrome-os/intro?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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> Libraries </span> </span></li> <li class="devsite-nav-item"><a href="https://developer-android-com.translate.goog/reference/packages?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/jetpack/androidx/explorer?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/jetpack/androidx/releases/compose?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=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" 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.translate.goog/?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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.translate.goog/develop?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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 </a></li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div><a href="https://developer-android-com.translate.goog/guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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=""> Guides </a></li> </ul><devsite-thumb-rating position="header"> </devsite-thumb-rating> </div> <h1 class="devsite-page-title" tabindex="-1">Engage SDK Social: Third-party technical integration instructions</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 "> <p>Google is building an on-device surface that organizes users' apps by verticals and enables a new immersive experience for personalized app content consumption and discovery. This full screen experience provides developer partners an opportunity to showcase their best rich content in a dedicated channel outside of their app.</p> <p>This document contains instructions for developer partners to integrate their social content using the Engage SDK to populate this new surface area.</p> <h2 id="integration" data-text="Integration detail" tabindex="-1">Integration detail</h2> <p>The following section captures the integration detail.</p> <h3 id="terminology" data-text="Terminology" tabindex="-1">Terminology</h3> <p><em><strong>Recommendation</strong></em> clusters show personalized suggestions from an individual developer partner.</p> <p>Your recommendations take the following structure:</p> <p><strong>Recommendation Cluster</strong>: UI view that contains a group of recommendations from the same developer partner.</p> <p>Each Recommendation Cluster consists of one of the following two types of entities :</p> <ul> <li>PortraitMediaEntity</li> <li>SocialPostEntity</li> </ul> <p><strong>PortraitMediaEntity</strong> must contain 1 portrait image for the post. Profile and Interaction related metadata are optional.</p> <ul> <li><p>Post</p> <ul> <li>Image in portrait mode and Timestamp, or</li> <li>Image in portrait mode + text content and Timestamp</li> </ul></li> <li><p>Profile</p> <ul> <li>Avatar, Name or Handle, Additional image</li> </ul></li> <li><p>Interactions</p> <ul> <li>Count and label only, or</li> <li>Count and visual (icon)</li> </ul></li> </ul> <p><strong>SocialPostEntity</strong> contains profile, post and interaction related metadata.</p> <ul> <li><p>Profile</p> <ul> <li>Avatar, Name or Handle, additional text, additional image</li> </ul></li> <li><p>Post</p> <ul> <li>Text and Timestamp, or</li> <li>Rich media (image or rich URL) and Timestamp, or</li> <li>Text and rich media (image or rich URL) and Timestamp, or</li> <li>Video preview (thumbnail and duration) and Timestamp</li> </ul></li> <li><p>Interactions</p> <ul> <li>Count &amp; label only, or</li> <li>Count &amp; visual (icon)</li> </ul></li> </ul> <h3 id="prework" data-text="Pre-work" tabindex="-1">Pre-work</h3> <p>Minimum API level: 19</p> <p>Add the <code translate="no" dir="ltr">com.google.android.engage:engage-core</code> library to your app:</p> <div></div><devsite-code> <pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="Groovy"><code translate="no" dir="ltr"><span class="devsite-syntax-n">dependencies</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// Make sure you also include that repository in your project's build.gradle file.</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">implementation</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-s1">'com.google.android.engage:engage-core:1.5.2'</span> <span class="devsite-syntax-o">}</span> </code></pre> </devsite-code> <h3 id="summary" data-text="Summary" tabindex="-1">Summary</h3> <p>The design is based on an implementation of a <a href="https://developer-android-com.translate.goog/guide/components/bound-services?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto">bound service</a>.</p> <p>The data a client can publish is subject to the following limits for different cluster types:</p> <table> <tbody> <tr> <th>Cluster type</th> <th>Cluster limits</th> <th>Minimum entity limits in a cluster</th> <th>Maximum entity limits in a cluster</th> </tr> <tr> <td>Recommendation Cluster(s)</td> <td>At most 5</td> <td>At least 5 (<code translate="no" dir="ltr">PortraitMediaEntity</code>, or <code translate="no" dir="ltr">SocialPostEntity</code>)</td> <td>At most 25 (<code translate="no" dir="ltr">PortraitMediaEntity</code>, or <code translate="no" dir="ltr">SocialPostEntity</code>)</td> </tr> </tbody> </table> <h3 id="provide-entity-data" data-text="Step 1: Provide entity data" tabindex="-1">Step 1: Provide entity data</h3> <p>The SDK has defined different entities to represent each item type. The SDK supports the following entities for the Social category:</p> <ol> <li><code translate="no" dir="ltr">PortraitMediaEntity</code></li> <li><code translate="no" dir="ltr">SocialPostEntity</code></li> </ol> <p>The charts below outline available attributes and requirements for each type.</p> <h4 id="portraitmediaentity" data-text="PortraitMediaEntity" tabindex="-1"><code translate="no" dir="ltr">PortraitMediaEntity</code></h4> <table> <tbody> <tr> <th>Attribute</th> <th>Requirement</th> <th>Description</th> <th>Format</th> </tr> <tr> <td>Action URI</td> <td><strong>Required</strong></td> <td><p>Deep Link to the entity in the provider app.</p><p>Note: You can use deep links for attribution. <a href="https://developer-android-com.translate.goog/guide/playcore/engage/faq?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#deeplinks-attribution"> Refer to this FAQ </a></p></td> <td>URI</td> </tr> <tr> <td colspan="4"><strong>Post related metadata (Required)</strong></td> </tr> <tr> <td>Image(s)</td> <td>Required</td> <td><p>Image(s) should be in <b>portrait aspect ratio.</b></p><p>The UI may show only 1 image when multiple images are provided. However, the UI may provide visual indication that there are more images in the app.</p><p><i>If the post is a video, the provider should provide a thumbnail of the video to be shown as an image.</i></p></td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td>Text content</td> <td>Optional</td> <td>The main text of a post, update, etc.</td> <td>String (recommended max 140 chars)</td> </tr> <tr> <td>Timestamp</td> <td>Optional</td> <td>Time when the post was published.</td> <td>Epoch timestamp in milliseconds</td> </tr> <tr> <td>Is video content</td> <td>Optional</td> <td>Is the post a video?</td> <td>boolean</td> </tr> <tr> <td>Video duration</td> <td>Optional</td> <td>The duration of the video in milliseconds.</td> <td>Long</td> </tr> <tr> <td colspan="4"><strong>Profile related metadata (Optional)</strong></td> </tr> <tr> <td>Name</td> <td>Required</td> <td>Profile name or id or handle, eg "John Doe", "@TeamPixel"</td> <td>String(recommended max 25 chars)</td> </tr> <tr> <td>Avatar</td> <td>Required</td> <td><p>Profile picture or avatar image of the user.</p><p><strong>Square 1:1 image</strong></p></td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td>Additional Image</td> <td>Optional</td> <td><p>Profile badge. for example - verified badge</p><p><strong>Square 1:1 image</strong></p></td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td colspan="4"><strong> Interactions related metadata (Optional) </strong></td> </tr> <tr> <td>Count</td> <td>Optional</td> <td><p>Indicate the number of interactions, for example - "3.7 M.".</p><p><strong>Note:</strong> If both Count and Count Value are provided, Count will be used</p></td> <td><p>String</p><p><strong>Recommended text size: Max 20 chars for count + label combined</strong></p></td> </tr> <tr> <td>Count Value</td> <td>Optional</td> <td><p>The number of interactions as a value.</p><p><strong>Note:</strong> Provide Count Value instead of Count if your app doesn't handle logic on how a large number should be optimized for different display sizes. If both Count and Count Value are provided, Count is used.</p></td> <td>Long</td> </tr> <tr> <td>Label</td> <td>Optional</td> <td>Indicate what the interaction label is for. For example - "Likes".</td> <td><p>String</p><p><strong>Recommended text size: Max 20 chars for count + label combined</strong></p></td> </tr> <tr> <td>Visual</td> <td>Optional</td> <td><p>Indicate what the interaction is for. For example - Image showing Likes icon, emoji.</p><p>Can provide more than 1 image, though not all may not be shown on all form factors.</p><p><strong>Note:</strong> Must be Square 1:1 image</p></td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td colspan="4"><strong>DisplayTimeWindow (Optional) - Set a time window for a content to be shown on the surface</strong></td> </tr> <tr> <td>Start Timestamp</td> <td>Optional</td> <td><p>The epoch timestamp after which the content should be shown on the surface.</p><p>If not set, content is eligible to be shown on the surface.</p></td> <td>Epoch timestamp in milliseconds</td> </tr> <tr> <td>End Timestamp</td> <td>Optional</td> <td><p>The epoch timestamp after which the content is no longer shown on the surface.</p><p>If not set, content is eligible to be shown on the surface.</p></td> <td>Epoch timestamp in milliseconds</td> </tr> </tbody> </table> <h4 id="socialpostentity" data-text="SocialPostEntity" tabindex="-1"><code translate="no" dir="ltr">SocialPostEntity</code></h4> <table> <tbody> <tr> <th>Attribute</th> <th>Requirement</th> <th>Description</th> <th>Format</th> </tr> <tr> <td>Action URI</td> <td><strong>Required</strong></td> <td><p>Deep Link to the entity in the provider app.</p><p>Note: You can use deep links for attribution. <a href="https://developer-android-com.translate.goog/guide/playcore/engage/faq?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#deeplinks-attribution"> Refer to this FAQ </a></p></td> <td>URI</td> </tr> <tr> <td colspan="4"><p><strong>Post related metadata (Required)</strong></p><p>At least one of TextContent, Image or WebContent is required</p></td> </tr> <tr> <td>Image(s)</td> <td>Optional</td> <td><p>Image(s) should be in <b>portrait aspect ratio.</b></p><p>The UI may show only 1 image when multiple images are provided. However, the UI may provide visual indication that there are more images in the app.</p><p><i>If the post is a video, the provider should provide a thumbnail of the video to be shown as an image.</i></p></td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td>Text content</td> <td>Optional</td> <td>The main text of a post, update, etc.</td> <td>String (recommended max 140 chars)</td> </tr> <tr> <td colspan="4"><strong>Video Content (Optional)</strong></td> </tr> <tr> <td>Duration</td> <td>Required</td> <td>The duration of the video in milliseconds.</td> <td>Long</td> </tr> <tr> <td>Image</td> <td>Required</td> <td>Preview image of the video content.</td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td colspan="4"><strong>Link Preview (Optional)</strong></td> </tr> <tr> <td>Link Preview - Title</td> <td>Required</td> <td>Text to indicate the title of the web page content</td> <td>String</td> </tr> <tr> <td>Link Preview - Hostname</td> <td>Required</td> <td>Text to indicate the web page owner, eg "INSIDER"</td> <td>String</td> </tr> <tr> <td>Link Preview - Image</td> <td>Optional</td> <td>Hero image for the web content</td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td>Timestamp</td> <td>Optional</td> <td>Time when the post was published.</td> <td>Epoch timestamp in milliseconds</td> </tr> <tr> <td colspan="4"><strong>Profile related metadata (Optional)</strong></td> </tr> <tr> <td>Name</td> <td>Required</td> <td>Profile name or id or handle, eg "John Doe", "@TeamPixel."</td> <td>String(recommended max 25 chars)</td> </tr> <tr> <td>Additional Text</td> <td>Optional</td> <td><p>Could be used as profile id or handle or additional metadata</p><p>For example "@John-Doe", "5M followers", "You might like", "Trending", "5 new posts"</p></td> <td>String(recommended max 40 chars)</td> </tr> <tr> <td>Avatar</td> <td>Required</td> <td><p>Profile picture or avatar image of the user.</p><p><strong>Square 1:1 image</strong></p></td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td>Additional Image</td> <td>Optional</td> <td><p>Profile badge, for example - verified badge</p><p><strong>Square 1:1 image</strong></p></td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td colspan="4"><strong> Interactions related metadata (Optional) </strong></td> </tr> <tr> <td>Count</td> <td>Required</td> <td>Indicate the number of interactions, for example - "3.7 M."</td> <td>String (recommended max 20 chars for count + label combined)</td> </tr> <tr> <td>Label</td> <td><p>Optional</p><p>If not provided, <strong>Visual</strong> must be provided.</p></td> <td>Indicate what the interaction is for. For example - "Likes."</td> <td>String (recommended max 20 chars for count + label combined)</td> </tr> <tr> <td>Visual</td> <td><p>Optional</p><p>If not provided, <strong>Label</strong> must be provided.</p></td> <td><p>Indicate what the interaction is for. For example - Image showing Likes icon, emoji.</p><p>Can provide more than 1 image, though not all may not be shown on all form factors.</p><p><strong>Square 1:1 image</strong></p></td> <td>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#image-specs">Image Specifications</a> for guidance.</td> </tr> <tr> <td colspan="4"><strong>DisplayTimeWindow (Optional) - Set a time window for a content to be shown on the surface</strong></td> </tr> <tr> <td>Start Timestamp</td> <td>Optional</td> <td><p>The epoch timestamp after which the content should be shown on the surface.</p><p>If not set, content is eligible to be shown on the surface.</p></td> <td>Epoch timestamp in milliseconds</td> </tr> <tr> <td>End Timestamp</td> <td>Optional</td> <td><p>The epoch timestamp after which the content is no longer shown on the surface.</p><p>If not set, content is eligible to be shown on the surface.</p></td> <td>Epoch timestamp in milliseconds</td> </tr> </tbody> </table> <h4 id="image-specs" data-text="Image specifications" tabindex="-1">Image specifications</h4> <p>The images are required to be hosted on public CDNs so that Google can access them.</p> <p><em>File formats</em></p> <p>PNG, JPG, static GIF, WebP</p> <p><em>Maximum file size</em></p> <p>5120 KB</p> <p><em>Additional recommendations</em></p> <ul> <li><strong>Image safe area:</strong> Put your important content in the center 80% of the image.</li> <li>Use a transparent background so that the image can be properly displayed in Dark and Light theme settings.</li> </ul> <h3 id="provide-cluster-data" data-text="Step 2: Provide Cluster data" tabindex="-1">Step 2: Provide Cluster data</h3> <p>It is recommended to have the content publish job executed in the background (for example, using <a href="https://developer-android-com.translate.goog/topic/libraries/architecture/workmanager?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto">WorkManager</a>) and scheduled on a regular basis or on an event basis (for example, every time the user opens the app or when the user just followed a new account)</p> <p><code translate="no" dir="ltr">AppEngageSocialClient</code> is responsible for publishing social clusters.</p> <p>There are following APIs to publish clusters in the client:</p> <ul> <li><code translate="no" dir="ltr">isServiceAvailable</code></li> <li><code translate="no" dir="ltr">publishRecommendationClusters</code></li> <li><code translate="no" dir="ltr">publishUserAccountManagementRequest</code></li> <li><code translate="no" dir="ltr">updatePublishStatus</code></li> <li><code translate="no" dir="ltr">deleteRecommendationsClusters</code></li> <li><code translate="no" dir="ltr">deleteUserManagementCluster</code></li> <li><code translate="no" dir="ltr">deleteClusters</code></li> </ul> <h4 id="isserviceavailable" data-text="isServiceAvailable" tabindex="-1"><code translate="no" dir="ltr">isServiceAvailable</code></h4> <p>This API is used to check if the service is available for integration and whether the content can be presented on the device.</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-n">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">isServiceAvailable</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addOnCompleteListener</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">task</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">-</span>&gt; <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">if</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">task</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">isSuccessful</span><span class="devsite-syntax-p">)</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// Handle IPC call success</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">if</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">task</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">result</span><span class="devsite-syntax-p">)</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// Service is available on the device, proceed with content</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// publish calls.</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">else</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// Service is not available, no further action is needed.</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">else</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// The IPC call itself fails, proceed with error handling logic here,</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// such as retry.</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</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">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">isServiceAvailable</span><span class="devsite-syntax-p">().</span><span class="devsite-syntax-na">addOnCompleteListener</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">task</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">-</span><span class="devsite-syntax-w"> &gt; </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">if</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">task</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">isSuccessful</span><span class="devsite-syntax-p">())</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// Handle success</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">if</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">task</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">getResult</span><span class="devsite-syntax-p">())</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// Service is available on the device, proceed with content</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// publish calls.</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">else</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// Service is not available, no further action is needed.</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">else</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// The IPC call itself fails, proceed with error handling logic here,</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// such as retry.</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span> <span class="devsite-syntax-p">});</span></pre> </devsite-code> </section> </div> </div> <aside class="note"> <strong>Note:</strong><span> We highly recommend keeping a periodic job running to check if the service becomes available at a later point in time. The availability of the service may change with Android version upgrades, app upgrades, installs, and uninstalls. By ensuring periodic job checks at a certain time interval, data can be published once the service becomes available.</span> </aside> <h4 id="publishrecommendationclusters" data-text="publishRecommendationClusters" tabindex="-1"><code translate="no" dir="ltr">publishRecommendationClusters</code></h4> <p>This API is used to publish a list <code translate="no" dir="ltr">RecommendationCluster</code> objects.</p> <p>A <code translate="no" dir="ltr">RecommendationCluster</code> object can have the following attributes:</p> <table> <tbody> <tr> <th>Attribute</th> <th>Requirement</th> <th>Description</th> </tr> <tr> <td>List of SocialPostEntity, or PortraitMediaEntity</td> <td><strong>Required</strong></td> <td>A list of entities that make up the recommendations for this Recommendation Cluster. Entities in a single cluster must be of the same type.</td> </tr> <tr> <td>Title</td> <td><strong>Required</strong></td> <td><p>The title for the Recommendation Cluster (for example, <em>Latest from your friends</em>).</p><p><strong>Recommended text size: under 25 chars</strong> (Text that is too long may show ellipses)</p></td> </tr> <tr> <td>Subtitle</td> <td>Optional</td> <td>The subtitle for the Recommendation Cluster.</td> </tr> <tr> <td>Action Uri</td> <td>Optional</td> <td><p>The deep link to the page in the partner app where users can see the complete list of recommendations.</p><p>Note: You can use deep links for attribution. <a href="https://developer-android-com.translate.goog/guide/playcore/engage/faq?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#deeplinks-attribution"> Refer to this FAQ </a></p></td> </tr> </tbody> </table> <aside class="special"> <strong>Important:</strong><span> The publish APIs are upsert APIs; it replaces the existing content. <strong>Don't</strong> call delete and publish APIs subsequently to replace the content as the publish APIs do that inherently.</span> </aside> <aside class="special"> <strong>Important:</strong><span> For social apps, it's critical to update recommendations after each app usage. Social app users are more interested in the most recent recommendations and ideally would like to see a post at most once.</span> </aside> <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-n">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">publishRecommendationClusters</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">PublishRecommendationClustersRequest</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addRecommendationCluster</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">RecommendationCluster</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addEntity</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">entity1</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addEntity</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">entity2</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setTitle</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-s">"Latest from your friends"</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">())</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</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">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">publishRecommendationClusters</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">PublishRecommendationClustersRequest</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addRecommendationCluster</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">RecommendationCluster</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addEntity</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">entity1</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addEntity</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">entity2</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setTitle</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-s">"Latest from your friends"</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">())</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">());</span></pre> </devsite-code> </section> </div> </div> <p>When the service receives the request, the following actions take place within one transaction:</p> <ul> <li>All existing Recommendation Cluster data is removed.</li> <li>Data from the request is parsed and stored in new Recommendation Clusters.</li> </ul> <p>In case of an error, the entire request is rejected and the existing state is maintained.</p> <h4 id="publishuseraccountmanagementrequest" data-text="publishUserAccountManagementRequest" tabindex="-1"><code translate="no" dir="ltr">publishUserAccountManagementRequest</code></h4> <p>This API is used to publish a Sign In card . The signin action directs users to the app's sign in page so that the app can publish content (or provide more personalized content)</p> <p>The following metadata is part of the Sign In Card -</p> <table> <tbody> <tr> <th>Attribute</th> <th>Requirement</th> <th>Description</th> </tr> <tr> <td>Action Uri</td> <td>Required</td> <td>Deeplink to Action (i.e. navigates to app sign in page)</td> </tr> <tr> <td>Image</td> <td>Optional - If not provided, Title must be provided</td> <td><p>Image Shown on the Card</p><p>16x9 aspect ratio images with a resolution of 1264x712</p></td> </tr> <tr> <td>Title</td> <td>Optional - If not provided, Image must be provided</td> <td>Title on the Card</td> </tr> <tr> <td>Action Text</td> <td>Optional</td> <td>Text Shown on the CTA (i.e. Sign in)</td> </tr> <tr> <td>Subtitle</td> <td>Optional</td> <td>Optional Subtitle on the Card</td> </tr> </tbody> </table> <aside class="special"> <strong>Important:</strong><span> The publish APIs are upsert APIs; it replaces the existing content. <strong>Don't</strong> call delete and publish APIs subsequently to replace the content as the publish APIs do that inherently.</span> </aside> <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">var</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-nv">SIGN_IN_CARD_ENTITY</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">SignInCardEntity</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addPosterImage</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">Image</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setImageUri</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">Uri</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">parse</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-s">"http://www.x.com/image.png"</span><span class="devsite-syntax-p">))</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setImageHeightInPixel</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-m">500</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setImageWidthInPixel</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-m">500</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">())</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setActionText</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-s">"Sign In"</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setActionUri</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">Uri</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">parse</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-s">"http://xx.com/signin"</span><span class="devsite-syntax-p">))</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-n">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">publishUserAccountManagementRequest</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">PublishUserAccountManagementRequest</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setSignInCardEntity</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">SIGN_IN_CARD_ENTITY</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</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">SignInCardEntity</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">SIGN_IN_CARD_ENTITY</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">SignInCardEntity</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addPosterImage</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">Image</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setImageUri</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">Uri</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">parse</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-s">"http://www.x.com/image.png"</span><span class="devsite-syntax-p">))</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setImageHeightInPixel</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-mi">500</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setImageWidthInPixel</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-mi">500</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">())</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setActionText</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-s">"Sign In"</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setActionUri</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">Uri</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">parse</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-s">"http://xx.com/signin"</span><span class="devsite-syntax-p">))</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">();</span> <span class="devsite-syntax-n">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">publishUserAccountManagementRequest</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">PublishUserAccountManagementRequest</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setSignInCardEntity</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">SIGN_IN_CARD_ENTITY</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">());</span></pre> </devsite-code> </section> </div> </div> <p>When the service receives the request, the following actions take place within one transaction:</p> <ul> <li>Existing <code translate="no" dir="ltr">UserAccountManagementCluster</code> data from the developer partner is removed.</li> <li>Data from the request is parsed and stored in the updated UserAccountManagementCluster Cluster.</li> </ul> <p>In case of an error, the entire request is rejected and the existing state is maintained.</p> <h4 id="updatepublishstatus" data-text="updatePublishStatus" tabindex="-1"><code translate="no" dir="ltr">updatePublishStatus</code></h4> <p>If for any internal business reason, none of the clusters is published, we <strong>strongly recommend</strong> updating the publish status using the <strong>updatePublishStatus</strong> API. This is important because :</p> <ul> <li>Providing the status in all scenarios, even when the content is published (STATUS == PUBLISHED), is critical to populate dashboards that use this explicit status to convey the health and other metrics of your integration.</li> <li>If no content is published but the integration status isn't broken (STATUS == NOT_PUBLISHED), Google can avoid triggering alerts in the app health dashboards. It confirms that content is not published due to an <strong>expected</strong> situation from the provider's standpoint.</li> <li>It helps developers provide insights into when the data is published versus not.</li> <li>Google may use the status codes to nudge the user to do certain actions in the app so they can see the app content or overcome it.</li> </ul> <p>The list of eligible publish status codes are :</p> <div></div><devsite-code> <pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded><code translate="no" dir="ltr">// Content is published AppEngagePublishStatusCode.PUBLISHED, // Content is not published as user is not signed in AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN, // Content is not published as user is not subscribed AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SUBSCRIPTION, // Content is not published as user location is ineligible AppEngagePublishStatusCode.NOT_PUBLISHED_INELIGIBLE_LOCATION, // Content is not published as there is no eligible content AppEngagePublishStatusCode.NOT_PUBLISHED_NO_ELIGIBLE_CONTENT, // Content is not published as the feature is disabled by the client // Available in v1.3.1 AppEngagePublishStatusCode.NOT_PUBLISHED_FEATURE_DISABLED_BY_CLIENT, // Content is not published as the feature due to a client error // Available in v1.3.1 AppEngagePublishStatusCode.NOT_PUBLISHED_CLIENT_ERROR, // Content is not published as the feature due to a service error // Available in v1.3.1 AppEngagePublishStatusCode.NOT_PUBLISHED_SERVICE_ERROR, // Content is not published due to some other reason // Reach out to engage-developers@ before using this enum. AppEngagePublishStatusCode.NOT_PUBLISHED_OTHER </code></pre> </devsite-code> <p>If the content is not published due to a user not logged in, Google would recommend publishing the Sign In Card. If for any reason providers are not able to publish the Sign In Card then we recommend calling the <strong>updatePublishStatus</strong> API with the status code <strong>NOT_PUBLISHED_REQUIRES_SIGN_IN</strong></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-n">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">updatePublishStatus</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">PublishStatusRequest</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setStatusCode</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">AppEngagePublishStatusCode</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">NOT_PUBLISHED_REQUIRES_SIGN_IN</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</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">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">updatePublishStatus</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">PublishStatusRequest</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">setStatusCode</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">AppEngagePublishStatusCode</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">NOT_PUBLISHED_REQUIRES_SIGN_IN</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">());</span></pre> </devsite-code> </section> </div> </div> <h4 id="deleterecommendationclusters" data-text="deleteRecommendationClusters" tabindex="-1"><code translate="no" dir="ltr">deleteRecommendationClusters</code></h4> <p>This API is used to delete the content of Recommendation Clusters.</p> <aside class="special"> <strong>Important:</strong><span> Delete APIs should only be called when there is no content to publish. <strong>Don't</strong> call delete and publish APIs subsequently to replace the content as the publish APIs do that inherently. Reach out to engage-developers@ before using delete APIs.</span> </aside> <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-n">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">deleteRecommendationClusters</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">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">deleteRecommendationClusters</span><span class="devsite-syntax-p">();</span></pre> </devsite-code> </section> </div> </div> <p>When the service receives the request, it removes the existing data from the Recommendation Clusters. In case of an error, the entire request is rejected and the existing state is maintained.</p> <h4 id="deleteusermanagementcluster" data-text="deleteUserManagementCluster" tabindex="-1"><code translate="no" dir="ltr">deleteUserManagementCluster</code></h4> <p>This API is used to delete the content of UserAccountManagement Cluster.</p> <aside class="special"> <strong>Important:</strong><span> Delete APIs should only be called when there is no content to publish. <strong>Don't</strong> call delete and publish APIs subsequently to replace the content as the publish APIs do that inherently. Reach out to engage-developers@ before using delete APIs.</span> </aside> <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-n">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">deleteUserManagementCluster</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">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">deleteUserManagementCluster</span><span class="devsite-syntax-p">();</span></pre> </devsite-code> </section> </div> </div> <p>When the service receives the request, it removes the existing data from the UserAccountManagement Cluster. In case of an error, the entire request is rejected and the existing state is maintained.</p> <h4 id="deleteclusters" data-text="deleteClusters" tabindex="-1"><code translate="no" dir="ltr">deleteClusters</code></h4> <p>This API is used to delete the content of a given cluster type.</p> <aside class="special"> <strong>Important:</strong><span> Delete APIs should only be called when there is no content to publish. <strong>Don't</strong> call delete and publish APIs subsequently to replace the content as the publish APIs do that inherently. Reach out to engage-developers@ before using delete APIs.</span> </aside> <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-n">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">deleteClusters</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">DeleteClustersRequest</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addClusterType</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">ClusterType</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">TYPE_RECOMMENDATION</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">...</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</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">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">deleteClusters</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">DeleteClustersRequest</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addClusterType</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">ClusterType</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">TYPE_RECOMMENDATION</span><span class="devsite-syntax-p">)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">...</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">());</span></pre> </devsite-code> </section> </div> </div> <p>When the service receives the request, it removes the existing data from all clusters matching the specified cluster types. Clients can choose to pass one or many cluster types. In case of an error, the entire request is rejected and the existing state is maintained.</p> <h4 id="error_handling" data-text="Error handling" tabindex="-1">Error handling</h4> <p>It is highly recommended to listen to the task result from the publish APIs such that a follow-up action can be taken to recover and resubmit an successful task.</p> <div></div><devsite-code> <pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="Java"><code translate="no" dir="ltr"><span class="devsite-syntax-n">client</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">publishRecommendationClusters</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">PublishRecommendationClustersRequest</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Builder</span><span class="devsite-syntax-p">()</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addRecommendationCluster</span><span class="devsite-syntax-p">(...)</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">build</span><span class="devsite-syntax-p">())</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">addOnCompleteListener</span><span class="devsite-syntax-p">(</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">task</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">-</span>&gt;<span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">if</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">task</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">isSuccessful</span><span class="devsite-syntax-p">())</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// do something</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">else</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">Exception</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">exception</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">task</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">getException</span><span class="devsite-syntax-p">();</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">if</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">exception</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">instanceof</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">AppEngageException</span><span class="devsite-syntax-p">)</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-nd">@AppEngageErrorCode</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-kt">int</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">errorCode</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">((</span><span class="devsite-syntax-n">AppEngageException</span><span class="devsite-syntax-p">)</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">exception</span><span class="devsite-syntax-p">).</span><span class="devsite-syntax-na">getErrorCode</span><span class="devsite-syntax-p">();</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-k">if</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">errorCode</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">==</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">AppEngageErrorCode</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">SERVICE_NOT_FOUND</span><span class="devsite-syntax-p">)</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-c1">// do something</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">}</span> <span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">});</span> </code></pre> </devsite-code> <p>The error is returned as an <code translate="no" dir="ltr">AppEngageException</code> with the cause included as an error code.</p> <table> <tbody> <tr> <th>Error code</th> <th>Error name</th> <th>Note</th> </tr> <tr> <td><code translate="no" dir="ltr">1</code></td> <td><code translate="no" dir="ltr">SERVICE_NOT_FOUND</code></td> <td>The service is not available on the given device.</td> </tr> <tr> <td><code translate="no" dir="ltr">2</code></td> <td><code translate="no" dir="ltr">SERVICE_NOT_AVAILABLE</code></td> <td>The service is available on the given device, but it is not available at the time of the call (for example, it is explicitly disabled).</td> </tr> <tr> <td><code translate="no" dir="ltr">3</code></td> <td><code translate="no" dir="ltr">SERVICE_CALL_EXECUTION_FAILURE</code></td> <td>The task execution failed due to threading issues. In this case, it can be retried.</td> </tr> <tr> <td><code translate="no" dir="ltr">4</code></td> <td><code translate="no" dir="ltr">SERVICE_CALL_PERMISSION_DENIED</code></td> <td>The caller is not allowed to make the service call.</td> </tr> <tr> <td><code translate="no" dir="ltr">5</code></td> <td><code translate="no" dir="ltr">SERVICE_CALL_INVALID_ARGUMENT</code></td> <td>The request contains invalid data (for example, more than the allowed number of clusters).</td> </tr> <tr> <td><code translate="no" dir="ltr">6</code></td> <td><code translate="no" dir="ltr">SERVICE_CALL_INTERNAL</code></td> <td>There is an error on the service side.</td> </tr> <tr> <td><code translate="no" dir="ltr">7</code></td> <td><code translate="no" dir="ltr">SERVICE_CALL_RESOURCE_EXHAUSTED</code></td> <td>The service call is made too frequently.</td> </tr> </tbody> </table> <h3 id="broadcast-intents" data-text="Step 3: Handle broadcast intents" tabindex="-1">Step 3: Handle broadcast intents</h3> <p>In addition to making publish content API calls through a job, it is also required to set up a <a href="https://developer-android-com.translate.goog/reference/android/content/BroadcastReceiver?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto"><code translate="no" dir="ltr">BroadcastReceiver</code></a> to receive the request for a content publish.</p> <p>The goal of broadcast intents is mainly for app reactivation and forcing data sync. Broadcast intents are not designed to be sent very frequently. It is only triggered when the Engage Service determines the content might be stale (for example, a week old). That way, there is more confidence that the user can have a fresh content experience, even if the application has not been executed for a long period of time.</p> <p>The <code translate="no" dir="ltr">BroadcastReceiver</code> must be set up in the following two ways:</p> <ul> <li>Dynamically register an instance of the <code translate="no" dir="ltr">BroadcastReceiver</code> class using <code translate="no" dir="ltr">Context.registerReceiver()</code>. This enables communication from applications that are still live in memory.</li> </ul> <div></div><devsite-code> <pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="Java"><code translate="no" dir="ltr"><span class="devsite-syntax-kd">class</span> <span class="devsite-syntax-nc">AppEngageBroadcastReceiver</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-kd">extends</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">BroadcastReceiver</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-c1">// Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast</span> <span class="devsite-syntax-c1">// is received</span> <span class="devsite-syntax-p">}</span> <span class="devsite-syntax-kd">public</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-kd">static</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-kt">void</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-nf">registerBroadcastReceivers</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">Context</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">context</span><span class="devsite-syntax-p">)</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-p">{</span> <span class="devsite-syntax-n">context</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-o">=</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">context</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">getApplicationContext</span><span class="devsite-syntax-p">();</span> <span class="devsite-syntax-c1">// Register Recommendation Cluster Publish Intent</span> <span class="devsite-syntax-n">context</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">registerReceiver</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">AppEngageBroadcastReceiver</span><span class="devsite-syntax-p">(),</span> <span class="devsite-syntax-k">new</span><span class="devsite-syntax-w"> </span><span class="devsite-syntax-n">IntentFilter</span><span class="devsite-syntax-p">(</span><span class="devsite-syntax-n">com</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">google</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">android</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">engage</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">service</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">Intents</span><span class="devsite-syntax-p">.</span><span class="devsite-syntax-na">ACTION_PUBLISH_RECOMMENDATION</span><span class="devsite-syntax-p">));</span> <span class="devsite-syntax-p">}</span> </code></pre> </devsite-code> <ul> <li>Statically declare an implementation with the <code translate="no" dir="ltr">&lt;receiver&gt;</code> tag in your <code translate="no" dir="ltr">AndroidManifest.xml</code> file. This allows the application to receive broadcast intents when it is not running, and also allows the application to publish the content.</li> </ul> <div></div><devsite-code> <pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded syntax="XML"><code translate="no" dir="ltr">&lt;application&gt; <span class="devsite-syntax-w"> </span>&lt;receiver <span class="devsite-syntax-w"> </span>android:name=".AppEngageBroadcastReceiver" <span class="devsite-syntax-w"> </span>android:exported="true" <span class="devsite-syntax-w"> </span>android:enabled="true"&gt; <span class="devsite-syntax-w"> </span>&lt;intent-filter&gt; <span class="devsite-syntax-w"> </span>&lt;action<span class="devsite-syntax-w"> </span>android:name="com.google.android.engage.action.PUBLISH_RECOMMENDATION"<span class="devsite-syntax-w"> </span>/&gt; <span class="devsite-syntax-w"> </span>&lt;/intent-filter&gt; <span class="devsite-syntax-w"> </span>&lt;/receiver&gt; &lt;/application&gt; </code></pre> </devsite-code> <p>The following <a href="https://developer-android-com.translate.goog/reference/android/content/Intent?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto">intents</a> will be sent by the service:</p> <ul> <li><code translate="no" dir="ltr">com.google.android.engage.action.PUBLISH_RECOMMENDATION</code> It is recommended to start a <code translate="no" dir="ltr">publishRecommendationClusters</code> call when receiving this intent.</li> </ul> <h2 id="workflow" data-text="Integration workflow" tabindex="-1">Integration workflow</h2> <p>For a step-by-step guide on verifying your integration after it is complete, see <a href="https://developer-android-com.translate.goog/guide/playcore/engage/workflow?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto">Engage developer integration workflow</a>.</p> <h2 id="faqs" data-text="FAQs" tabindex="-1">FAQs</h2> <p>See <a href="https://developer-android-com.translate.goog/guide/playcore/engage/faq?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto">Engage SDK Frequently Asked Questions</a> for FAQs.</p> <h2 id="contact" data-text="Contact" tabindex="-1">Contact</h2> <p>Contact <a href="mailto:engage-developers@google.com?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto">engage-developers@google.com</a> if there are any questions during the integration process. Our team will reply as soon as possible.</p> <h2 id="next-steps" data-text="Next steps" tabindex="-1">Next steps</h2> <p>After completing this integration, your next steps are as follows:</p> <ul> <li>Send an email to <a href="mailto:engage-developers@google.com?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto">engage-developers@google.com</a> and attach your integrated APK that is ready for testing by Google.</li> <li>Google performs a verification and reviews internally to make sure the integration works as expected. If changes are needed, Google contacts you with any necessary details.</li> <li>When testing is complete and no changes are needed, Google contacts you to notify you that you can start publishing the updated and integrated APK to the Play Store.</li> <li>After Google has confirmed that your updated APK has been published to the Play Store, your <strong>Recommendation</strong>, clusters will be published and visible to users.</li> </ul><devsite-hats-survey class="nocontent" hats-id="VxqvKSur40kxBYCLVTd0SSGykbno" 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="https://developer-android-com.translate.goog/license?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto">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> </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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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.translate.goog/_static/android/images/logo-x_dt.svg?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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.translate.goog/_static/android/images/logo-youtube_dt.svg?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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.translate.goog/_static/android/images/logo-linkedin_dt.svg?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://developer-android-com.translate.goog/news?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://developer-android-com.translate.goog/podcasts?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/games?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/ml?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/health-and-fitness?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)"> Health &amp; Fitness </a></li> <li class="devsite-footer-linkbox-item"><a href="https://developer-android-com.translate.goog/media?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)"> Camera &amp; Media </a></li> <li class="devsite-footer-linkbox-item"><a href="https://developer-android-com.translate.goog/privacy?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/training/connectivity/5g?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/large-screens?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/wear?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/chrome-os?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/cars?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/tv?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/about/versions/15?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/about/versions/14?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/about/versions/13?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/about/versions/12?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/about/versions/11?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/about/versions/10?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/about/versions/pie?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/studio/intro?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/reference?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/studio?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/ndk?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://issuetracker.google.com/issues/new?component%3D190923%26template%3D841312" 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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://issuetracker.google.com/issues/new?component%3D192697" 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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=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://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/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/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://translate.google.com/website?sl=auto&amp;tl=en&amp;hl=auto&amp;u=https://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="https://developer-android-com.translate.goog/license?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/distribute/marketing-tools/brand-guidelines?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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="https://developer-android-com.translate.goog/guide/playcore/engage/social?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto#" 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="https://developer-android-com.translate.goog/updates?_x_tr_sl=auto&amp;_x_tr_tl=en&amp;_x_tr_hl=auto" 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;Android Developers&#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-grouped-resources .devsite-landing-row-item, .android-grouped-resources-primary .devsite-landing-row-item, .android-grouped-resources-secondary .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-samples, devsite-content"></android-fully-clickable> <script nonce="OcVUsqk0PvnnbuANQr7alB/2wzAQpo"> (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/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/android/js/app_loader.js', '[3,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/android","https://android-dot-devsite-v2-prod.appspot.com",null,null,["/_pwa/android/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/android/images/favicon.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/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,116,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,["Significatio__enable_by_tenant","Cloud__enable_free_trial_server_call","Cloud__enable_cloud_shell_fte_user_flow","Experiments__reqs_query_experiments","Cloud__enable_legacy_calculator_redirect","Profiles__enable_completecodelab_endpoint","EngEduTelemetry__enable_engedu_telemetry","MiscFeatureFlags__enable_project_variables","Cloud__enable_cloud_shell","MiscFeatureFlags__enable_view_transitions","Cloud__enable_cloud_facet_chat","Profiles__enable_recognition_badges","Profiles__enable_page_saving","Cloud__enable_llm_concierge_chat","Search__enable_page_map","BookNav__enable_tenant_cache_key","MiscFeatureFlags__enable_variable_operator","Profiles__enable_release_notes_notifications","Profiles__enable_dashboard_curated_recommendations","MiscFeatureFlags__emergency_css","Analytics__enable_clearcut_logging","DevPro__enable_developer_subscriptions","Search__enable_suggestions_from_borg","CloudShell__cloud_shell_button","Concierge__enable_pushui","Profiles__enable_complete_playlist_endpoint","Cloud__enable_cloudx_experiment_ids","Profiles__enable_awarding_url","Search__enable_ai_eligibility_checks","Profiles__enable_public_developer_profiles","Profiles__enable_developer_profiles_callout","CloudShell__cloud_code_overflow_menu","DevPro__enable_cloud_innovators_plus","MiscFeatureFlags__enable_dark_theme","Cloud__enable_cloudx_ping","Profiles__require_profile_eligibility_for_signin","Cloud__enable_cloud_dlp_service","TpcFeatures__enable_required_headers","MiscFeatureFlags__developers_footer_image","MiscFeatureFlags__developers_footer_dark_image","TpcFeatures__enable_mirror_tenant_redirects","Search__enable_dynamic_content_confidential_banner","Profiles__enable_profile_collections","MiscFeatureFlags__enable_firebase_utm"],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,1,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,[[1,1],[2,2]]],null,4,null,null,null,null,null,null,null,null,null,null,null,null,null,"android.devsite.google"],1,"pk_live_5170syrHvgGVmSx9sBrnWtA5luvk9BwnVcvIi7HizpwauFG96WedXsuXh790rtij9AmGllqPtMLfhe2RSwD6Pn38V00uBCydV4m"]') </script><devsite-a11y-announce></devsite-a11y-announce> <script>function gtElInit() {var lib = new google.translate.TranslateService();lib.translatePage('en', 'en', function () {});}</script> <script src="https://translate.google.com/translate_a/element.js?cb=gtElInit&amp;hl=auto&amp;client=wt" type="text/javascript"></script> </body> </html>

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