CINXE.COM

Camera  |  Android Open Source Project

<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="Android Open Source Project"> <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/androidsource/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=Roboto:300,400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/androidsource/css/app.css"> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/androidsource/images/favicon.svg"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/androidsource/images/touchicon-180.png"><link rel="canonical" href="https://source.android.com/docs/core/camera"><link rel="search" type="application/opensearchdescription+xml" title="Android Open Source Project" href="https://source.android.com/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://source.android.com/docs/core/camera" /><link rel="alternate" hreflang="x-default" href="https://source.android.com/docs/core/camera" /><link rel="alternate" hreflang="ar" href="https://source.android.com/docs/core/camera?hl=ar" /><link rel="alternate" hreflang="bn" href="https://source.android.com/docs/core/camera?hl=bn" /><link rel="alternate" hreflang="zh-Hans" href="https://source.android.com/docs/core/camera?hl=zh-cn" /><link rel="alternate" hreflang="zh-Hant" href="https://source.android.com/docs/core/camera?hl=zh-tw" /><link rel="alternate" hreflang="fa" href="https://source.android.com/docs/core/camera?hl=fa" /><link rel="alternate" hreflang="fr" href="https://source.android.com/docs/core/camera?hl=fr" /><link rel="alternate" hreflang="de" href="https://source.android.com/docs/core/camera?hl=de" /><link rel="alternate" hreflang="he" href="https://source.android.com/docs/core/camera?hl=he" /><link rel="alternate" hreflang="hi" href="https://source.android.com/docs/core/camera?hl=hi" /><link rel="alternate" hreflang="id" href="https://source.android.com/docs/core/camera?hl=id" /><link rel="alternate" hreflang="it" href="https://source.android.com/docs/core/camera?hl=it" /><link rel="alternate" hreflang="ja" href="https://source.android.com/docs/core/camera?hl=ja" /><link rel="alternate" hreflang="ko" href="https://source.android.com/docs/core/camera?hl=ko" /><link rel="alternate" hreflang="pl" href="https://source.android.com/docs/core/camera?hl=pl" /><link rel="alternate" hreflang="pt-BR" href="https://source.android.com/docs/core/camera?hl=pt-br" /><link rel="alternate" hreflang="pt" href="https://source.android.com/docs/core/camera?hl=pt" /><link rel="alternate" hreflang="ru" href="https://source.android.com/docs/core/camera?hl=ru" /><link rel="alternate" hreflang="es" href="https://source.android.com/docs/core/camera?hl=es" /><link rel="alternate" hreflang="es-419" href="https://source.android.com/docs/core/camera?hl=es-419" /><link rel="alternate" hreflang="th" href="https://source.android.com/docs/core/camera?hl=th" /><link rel="alternate" hreflang="tr" href="https://source.android.com/docs/core/camera?hl=tr" /><link rel="alternate" hreflang="vi" href="https://source.android.com/docs/core/camera?hl=vi" /><title>Camera &nbsp;|&nbsp; Android Open Source Project</title> <meta property="og:title" content="Camera &nbsp;|&nbsp; Android Open Source Project"><meta property="og:url" content="https://source.android.com/docs/core/camera"><meta property="og:locale" content="en"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "Camera" } </script> <link rel="stylesheet" href="/extras.css"></head> <body class="" template="page" theme="androidsource-theme" type="article" layout="docs" display-toc pending> <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" keep-tabs-visible> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <a href="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="androidOpenSourceProject" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <img src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/androidsource/images/lockup.svg" class="devsite-site-logo" alt="Android Open Source Project"> </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-active "> <a href="https://source.android.com/docs" track-metadata-eventdetail="https://source.android.com/docs" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - docs" track-metadata-module="primary nav" aria-label="Docs, selected" data-category="Site-Wide Custom Events" data-label="Tab: Docs" track-name="docs" > Docs </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Docs" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs" track-metadata-position="nav - docs" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Docs" track-name="docs" 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-source-tabs-dropdown-column-small"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>What&#39;s new?</li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/whatsnew/release-notes" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/whatsnew/release-notes" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Release notes </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/whatsnew/latest-security-bulletins" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/whatsnew/latest-security-bulletins" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Latest security bulletins </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/whatsnew/latest-cdd" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/whatsnew/latest-cdd" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Latest Compatibility Definition Document (CDD) </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/whatsnew/site-updates" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/whatsnew/site-updates" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Site updates </div> </a> </li> </ul> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Getting Started</li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/setup/about" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/setup/about" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> About </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/setup/start" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/setup/start" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Start </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/setup/download" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/setup/download" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Download </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/setup/build" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/setup/build" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Build </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/setup/test" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/setup/test" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Test </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/setup/create/coding-tasks" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/setup/create/coding-tasks" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Create </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/setup/contribute" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/setup/contribute" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Contribute </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/setup/community/cofc" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/setup/community/cofc" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Community </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/setup/reference" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/setup/reference" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Tools, build, and related reference </div> </a> </li> </ul> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Security</li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/security/overview" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/security/overview" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Overview </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/security/bulletin" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/security/bulletin" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Bulletins </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/security/features" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/security/features" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Features </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/security/test/fuzz-sanitize" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/security/test/fuzz-sanitize" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Testing </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/security/best-practices" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/security/best-practices" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="what&#39;s new?" tooltip > <div class="devsite-nav-item-title"> Best Practices </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-source-tabs-dropdown-column-small"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Core Topics</li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/architecture" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/architecture" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Architecture </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/audio" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/audio" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Audio </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/camera" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/camera" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Camera </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/connect" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/connect" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Connectivity </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/data" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/data" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Data </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/display" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/display" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Display </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/fonts/custom-font-fallback" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/fonts/custom-font-fallback" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Fonts </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/graphics" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/graphics" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Graphics </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/interaction" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/interaction" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Interaction </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/media" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/media" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Media </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/perf" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/perf" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Performance </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/permissions" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/permissions" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Permissions </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/power" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/power" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Power </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/runtime" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/runtime" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Runtime </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/settings" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/settings" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Settings </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/storage" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/storage" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Storage </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/tests" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/tests" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Tests </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/ota" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/ota" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Updates </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/core/virtualization" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/core/virtualization" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="core topics" tooltip > <div class="devsite-nav-item-title"> Virtualization </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column android-source-tabs-dropdown-column-small"> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Compatibility</li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/compatibility/cdd" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/compatibility/cdd" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Compatibility Definition Document (CDD) </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/compatibility/cts" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/compatibility/cts" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Compatibility Test Suite (CTS) </div> </a> </li> </ul> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Android Devices</li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/devices/cuttlefish" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/devices/cuttlefish" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Cuttlefish </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/devices/admin" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/devices/admin" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Enterprise </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/devices/tv" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/devices/tv" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> TV </div> </a> </li> </ul> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Automotive</li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/automotive/start/what_automotive" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/automotive/start/what_automotive" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Get Started </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/automotive/guidelines" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/automotive/guidelines" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Guidelines for Development </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/automotive/dev-tools" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/automotive/dev-tools" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Development Tools </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/automotive/tools" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/automotive/tools" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Testing Tools and Infrastructure </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/docs/automotive/start/releases" track-type="nav" track-metadata-eventdetail="https://source.android.com/docs/automotive/start/releases" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Release Details </div> </a> </li> </ul> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Reference</li> <li class="devsite-nav-item"> <a href="https://source.android.com/reference/hidl" track-type="nav" track-metadata-eventdetail="https://source.android.com/reference/hidl" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> HIDL </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/reference/hal" track-type="nav" track-metadata-eventdetail="https://source.android.com/reference/hal" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> HAL </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/reference/tradefed/classes" track-type="nav" track-metadata-eventdetail="https://source.android.com/reference/tradefed/classes" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Trade Federation </div> </a> </li> <li class="devsite-nav-item"> <a href="https://source.android.com/reference/sts/classes" track-type="nav" track-metadata-eventdetail="https://source.android.com/reference/sts/classes" track-metadata-position="nav - docs" track-metadata-module="tertiary nav" track-metadata-module_headline="compatibility" tooltip > <div class="devsite-nav-item-title"> Security Test Suite </div> </a> </li> </ul> </div> </div> </div> </tab> <tab > <a href="https://cs.android.com/android/platform/superproject/main" track-metadata-eventdetail="https://cs.android.com/android/platform/superproject/main" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - go to code ➚" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: GO TO CODE ➚" track-name="go to code ➚" > GO TO CODE ➚ </a> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="Android Open Source Project" tenant-name="Android Open Source Project" > <form class="devsite-search-form" action="https://source.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-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" >Español</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" >Português</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> <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://source.android.com/docs" 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="" > Documentation </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 > <a href="https://source.android.com/docs/whatsnew" track-metadata-eventdetail="https://source.android.com/docs/whatsnew" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - what&#39;s new?" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: What&#39;s New?" track-name="what&#39;s new?" > What&#39;s New? </a> </tab> <tab > <a href="https://source.android.com/docs/setup" track-metadata-eventdetail="https://source.android.com/docs/setup" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - getting started" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Getting Started" track-name="getting started" > Getting Started </a> </tab> <tab > <a href="https://source.android.com/docs/security" track-metadata-eventdetail="https://source.android.com/docs/security" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - security" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Security" track-name="security" > Security </a> </tab> <tab class="devsite-active"> <a href="https://source.android.com/docs/core" track-metadata-eventdetail="https://source.android.com/docs/core" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - core topics" track-metadata-module="primary nav" aria-label="Core Topics, selected" data-category="Site-Wide Custom Events" data-label="Tab: Core Topics" track-name="core topics" > Core Topics </a> </tab> <tab > <a href="https://source.android.com/docs/compatibility" track-metadata-eventdetail="https://source.android.com/docs/compatibility" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - compatibility" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Compatibility" track-name="compatibility" > Compatibility </a> </tab> <tab > <a href="https://source.android.com/docs/devices" track-metadata-eventdetail="https://source.android.com/docs/devices" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - android devices" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Android Devices" track-name="android devices" > Android Devices </a> </tab> <tab > <a href="https://source.android.com/docs/automotive" track-metadata-eventdetail="https://source.android.com/docs/automotive" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - automotive" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Automotive" track-name="automotive" > Automotive </a> </tab> <tab > <a href="https://source.android.com/reference" track-metadata-eventdetail="https://source.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> </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="/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="androidOpenSourceProject" track-metadata-position="nav" track-metadata-eventDetail="nav"> <picture> <img src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/androidsource/images/lockup.svg" class="devsite-site-logo" alt="Android Open Source Project"> </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="/docs" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Docs" track-name="docs" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Docs" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Docs </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: Docs" track-name="docs" > <span class="devsite-nav-text" tooltip menu="Docs"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Docs"> </span> </span> </li> </ul> <ul class="devsite-nav-responsive-tabs"> <li class="devsite-nav-item"> <a href="/docs/whatsnew" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: What&#39;s New?" track-name="what&#39;s new?" data-category="Site-Wide Custom Events" data-label="Responsive Tab: What&#39;s New?" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > What&#39;s New? </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/setup" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Getting Started" track-name="getting started" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Getting Started" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Getting Started </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/security" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Security" track-name="security" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Security" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Security </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core" class="devsite-nav-title gc-analytics-event devsite-nav-has-children devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Core Topics" track-name="core topics" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Core Topics" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip menu="_book"> Core Topics </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="_book"> </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/compatibility" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Compatibility" track-name="compatibility" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Compatibility" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Compatibility </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/devices" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Android Devices" track-name="android devices" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android Devices" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android Devices </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/automotive" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Automotive" track-name="automotive" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Automotive" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Automotive </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/reference" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Reference" track-name="reference" data-category="Site-Wide Custom Events" data-label="Responsive Tab: 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> </ul> </li> <li class="devsite-nav-item"> <a href="https://cs.android.com/android/platform/superproject/main" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: GO TO CODE ➚" track-name="go to code ➚" data-category="Site-Wide Custom Events" data-label="Responsive Tab: GO TO CODE ➚" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > GO TO CODE ➚ </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="/docs/core" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core" ><span class="devsite-nav-text" tooltip>Overview</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>Architecture</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture" ><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>Hardware abstraction layer (HAL)</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/hal" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hal" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hal" ><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>HIDL (deprecated)</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/interfaces" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/interfaces" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/interfaces" ><span class="devsite-nav-text" tooltip>Interfaces and packages</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/hashing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/hashing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/hashing" ><span class="devsite-nav-text" tooltip>Interface hashing</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/services" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/services" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/services" ><span class="devsite-nav-text" tooltip>Services and data transfer</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/fmq" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/fmq" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/fmq" ><span class="devsite-nav-text" tooltip>Fast Message Queue</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/binder-ipc" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/binder-ipc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/binder-ipc" ><span class="devsite-nav-text" tooltip>Use Binder IPC</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/memoryblock" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/memoryblock" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/memoryblock" ><span class="devsite-nav-text" tooltip>Use MemoryBlock</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/network-stack" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/network-stack" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/network-stack" ><span class="devsite-nav-text" tooltip>Network stack configuration tools</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/threading" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/threading" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/threading" ><span class="devsite-nav-text" tooltip>Model threading</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/converting" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/converting" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/converting" ><span class="devsite-nav-text" tooltip>Convert HAL modules</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/types" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/types" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/types" ><span class="devsite-nav-text" tooltip>Data types</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/safe_union" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/safe_union" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/safe_union" ><span class="devsite-nav-text" tooltip>Safe union</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/versioning" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/versioning" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/versioning" ><span class="devsite-nav-text" tooltip>Interface versioning</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl/code-style" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl/code-style" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl/code-style" ><span class="devsite-nav-text" tooltip>Code style guide</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>HIDL C++</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl-cpp" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl-cpp" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl-cpp" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl-cpp/packages" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl-cpp/packages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl-cpp/packages" ><span class="devsite-nav-text" tooltip>Packages</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl-cpp/interfaces" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl-cpp/interfaces" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl-cpp/interfaces" ><span class="devsite-nav-text" tooltip>Interfaces</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl-cpp/types" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl-cpp/types" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl-cpp/types" ><span class="devsite-nav-text" tooltip>Data types</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl-cpp/functions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl-cpp/functions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl-cpp/functions" ><span class="devsite-nav-text" tooltip>Functions</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>HIDL Java</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl-java" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl-java" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl-java" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl-java/types" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl-java/types" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl-java/types" ><span class="devsite-nav-text" tooltip>Data types</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl-java/interfaces" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl-java/interfaces" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl-java/interfaces" ><span class="devsite-nav-text" tooltip>Interface methods and errors</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hidl-java/constants" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hidl-java/constants" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hidl-java/constants" ><span class="devsite-nav-text" tooltip>Export constants</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Other</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hal/framework-testing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hal/framework-testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hal/framework-testing" ><span class="devsite-nav-text" tooltip>HIDL framework backward compatibility verification</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hal/dynamic-lifecycle" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hal/dynamic-lifecycle" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hal/dynamic-lifecycle" ><span class="devsite-nav-text" tooltip>Dynamically available HALs</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/architecture/hal/archive" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/hal/archive" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/hal/archive" ><span class="devsite-nav-text" tooltip>Legacy HALs (AOSP &lt;=v7)</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>Kernel</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/releases" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/releases" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/releases" ><span class="devsite-nav-text" tooltip>Stable kernel releases and updates</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/android-common" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/android-common" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/android-common" ><span class="devsite-nav-text" tooltip>Android common kernels</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/generic-kernel-image" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/generic-kernel-image" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/generic-kernel-image" ><span class="devsite-nav-text" tooltip>GKI project</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-dev" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-dev" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-dev" ><span class="devsite-nav-text" tooltip>GKI development</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-versioning" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-versioning" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-versioning" ><span class="devsite-nav-text" tooltip>GKI versioning scheme</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>GKI release builds</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-release-builds" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-release-builds" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-release-builds" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-android12-5_10-release-builds" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-android12-5_10-release-builds" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-android12-5_10-release-builds" ><span class="devsite-nav-text" tooltip>android12-5.10 release builds</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-android13-5_10-release-builds" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-android13-5_10-release-builds" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-android13-5_10-release-builds" ><span class="devsite-nav-text" tooltip>android13-5.10 release builds</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-android13-5_15-release-builds" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-android13-5_15-release-builds" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-android13-5_15-release-builds" ><span class="devsite-nav-text" tooltip>android13-5.15 release builds</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-android14-5_15-release-builds" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-android14-5_15-release-builds" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-android14-5_15-release-builds" ><span class="devsite-nav-text" tooltip>android14-5.15 release builds</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-android14-6_1-release-builds" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-android14-6_1-release-builds" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-android14-6_1-release-builds" ><span class="devsite-nav-text" tooltip>android14-6.1 release builds</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/architecture/kernel/gki-android15-6_6-release-builds" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-android15-6_6-release-builds" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-android15-6_6-release-builds" ><span class="devsite-nav-text" tooltip>android15-6.6 Releases</span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-releases" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-releases" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-releases" ><span class="devsite-nav-text" tooltip>GKI release process</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/android16-6.12-errata" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/android16-6.12-errata" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/android16-6.12-errata" ><span class="devsite-nav-text" tooltip>GKI 16-6.12 android-mainline errata</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/stable-kmi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/stable-kmi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/stable-kmi" ><span class="devsite-nav-text" tooltip>Maintain a stable KMI</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>Kernel ABI monitoring</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/abi-monitor" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/abi-monitor" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/abi-monitor" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/howto-abi-monitor" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/howto-abi-monitor" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/howto-abi-monitor" ><span class="devsite-nav-text" tooltip>Run ABI monitoring</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/howto-symbol-lists" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/howto-symbol-lists" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/howto-symbol-lists" ><span class="devsite-nav-text" tooltip>Work with symbol lists</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>Modules</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/modules" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/modules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/modules" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/convert-or-add" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/convert-or-add" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/convert-or-add" ><span class="devsite-nav-text" tooltip>Configure kernel features as GKI modules</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/vendor-module-guidelines" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/vendor-module-guidelines" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/vendor-module-guidelines" ><span class="devsite-nav-text" tooltip>Vendor module guidelines</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/loadable-kernel-modules" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/loadable-kernel-modules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/loadable-kernel-modules" ><span class="devsite-nav-text" tooltip>Loadable kernel modules</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/kernel-module-support" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/kernel-module-support" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/kernel-module-support" ><span class="devsite-nav-text" tooltip>Kernel module support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/test-kernel" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/test-kernel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/test-kernel" ><span class="devsite-nav-text" tooltip>Test GKI modules</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/boot-time-opt" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/boot-time-opt" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/boot-time-opt" ><span class="devsite-nav-text" tooltip>Boot time optimization</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/debugging-with-gki" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/debugging-with-gki" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/debugging-with-gki" ><span class="devsite-nav-text" tooltip>Debug features</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/kernel-code" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/kernel-code" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/kernel-code" ><span class="devsite-nav-text" tooltip>Develop kernel code for GKI</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/android-kernel-file-system-support" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/android-kernel-file-system-support" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/android-kernel-file-system-support" ><span class="devsite-nav-text" tooltip>Android kernel file system support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/bpf" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/bpf" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/bpf" ><span class="devsite-nav-text" tooltip>Extend the kernel with eBPF</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/using-debugfs-12" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/using-debugfs-12" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/using-debugfs-12" ><span class="devsite-nav-text" tooltip>Use DebugFS in Android 12</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-fips140-module" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-fips140-module" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-fips140-module" ><span class="devsite-nav-text" tooltip>FIPS 140-3 certifiable GKI crypto module</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-faq" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-faq" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-faq" ><span class="devsite-nav-text" tooltip>Android kernel FAQ</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>GKI 1.0</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki1-overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki1-overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki1-overview" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/gki-compat-test-1.0" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/gki-compat-test-1.0" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/gki-compat-test-1.0" ><span class="devsite-nav-text" tooltip>Compatibility testing</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>Previous kernels (&lt;=4.19)</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/previous-kernel-overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/previous-kernel-overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/previous-kernel-overview" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/linux-stable-merges" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/linux-stable-merges" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/linux-stable-merges" ><span class="devsite-nav-text" tooltip>Linux-stable merges</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/hardening" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/hardening" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/hardening" ><span class="devsite-nav-text" tooltip>Kernel hardening</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/llkd" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/llkd" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/llkd" ><span class="devsite-nav-text" tooltip>Android live-lock daemon</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/config" ><span class="devsite-nav-text" tooltip>Kernel configuration</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/reqs-interfaces" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/reqs-interfaces" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/reqs-interfaces" ><span class="devsite-nav-text" tooltip>Interface requirements</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/incfs" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/incfs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/incfs" ><span class="devsite-nav-text" tooltip>Incremental File System</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/network_tests" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/network_tests" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/network_tests" ><span class="devsite-nav-text" tooltip>Kernel networking unit tests</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>Modular kernels</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/modular-kernels" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/modular-kernels" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/modular-kernels" ><span class="devsite-nav-text" tooltip>Modular kernel requirements</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/mounting-partitions-early" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/mounting-partitions-early" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/mounting-partitions-early" ><span class="devsite-nav-text" tooltip>Mount partitions early</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/dto-support" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/dto-support" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/dto-support" ><span class="devsite-nav-text" tooltip>DTO support</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/ion_abi_changes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/ion_abi_changes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/ion_abi_changes" ><span class="devsite-nav-text" tooltip>ION ABI changes</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/ion-gki" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/ion-gki" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/ion-gki" ><span class="devsite-nav-text" tooltip>Modularize ION heaps for GKI</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/dma-buf-heaps" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/dma-buf-heaps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/dma-buf-heaps" ><span class="devsite-nav-text" tooltip>Transition from ION to DMA-BUF heaps</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/core-kernel-reqs" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/core-kernel-reqs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/core-kernel-reqs" ><span class="devsite-nav-text" tooltip>Core kernel requirements</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/architecture/kernel/erofs" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/kernel/erofs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/kernel/erofs" ><span class="devsite-nav-text" tooltip>EROFS</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>Configuration</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration/sysprops-apis" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration/sysprops-apis" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration/sysprops-apis" ><span class="devsite-nav-text" tooltip>Implement system properties as APIs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration/add-system-properties" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration/add-system-properties" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration/add-system-properties" ><span class="devsite-nav-text" tooltip>Add system properties</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration/config-file-schema-api" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration/config-file-schema-api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration/config-file-schema-api" ><span class="devsite-nav-text" tooltip>Implement Config File Schema 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>Archive</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration/archive" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration/archive" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration/archive" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration/archive/config-store" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration/archive/config-store" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration/archive/config-store" ><span class="devsite-nav-text" tooltip>ConfigStore</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration/archive/interface" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration/archive/interface" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration/archive/interface" ><span class="devsite-nav-text" tooltip>Create the HAL interface</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration/archive/service" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration/archive/service" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration/archive/service" ><span class="devsite-nav-text" tooltip>Implement the service</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration/archive/client" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration/archive/client" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration/archive/client" ><span class="devsite-nav-text" tooltip>Client-side use</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/configuration/archive/add-class-item" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/configuration/archive/add-class-item" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/configuration/archive/add-class-item" ><span class="devsite-nav-text" tooltip>Add ConfigStore classes and items</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>Device tree overlays</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/dto" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/dto" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/dto" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/dto/implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/dto/implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/dto/implement" ><span class="devsite-nav-text" tooltip>Implement DTOs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/dto/syntax" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/dto/syntax" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/dto/syntax" ><span class="devsite-nav-text" tooltip>DTO syntax</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/dto/compile" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/dto/compile" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/dto/compile" ><span class="devsite-nav-text" tooltip>Compile and verify</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/dto/multiple" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/dto/multiple" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/dto/multiple" ><span class="devsite-nav-text" tooltip>Use multiple DTs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/dto/partitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/dto/partitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/dto/partitions" ><span class="devsite-nav-text" tooltip>DTB and DTBO partitions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/dto/optimize" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/dto/optimize" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/dto/optimize" ><span class="devsite-nav-text" tooltip>Optimize DTO</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>Vendor NDK (&lt;=AOSP 14)</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/enabling" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/enabling" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/enabling" ><span class="devsite-nav-text" tooltip>Enable VNDK</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/build-system" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/build-system" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/build-system" ><span class="devsite-nav-text" tooltip>VNDK build system support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/extensions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/extensions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/extensions" ><span class="devsite-nav-text" tooltip>VNDK extensions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/snapshot-design" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/snapshot-design" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/snapshot-design" ><span class="devsite-nav-text" tooltip>VNDK snapshot design</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/snapshot-generate" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/snapshot-generate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/snapshot-generate" ><span class="devsite-nav-text" tooltip>Generate VNDK snapshots</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/snapshot-vendor" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/snapshot-vendor" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/snapshot-vendor" ><span class="devsite-nav-text" tooltip>Generate vendor snapshots</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/linker-namespace" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/linker-namespace" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/linker-namespace" ><span class="devsite-nav-text" tooltip>Linker namespace</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/dir-rules-sepolicy" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/dir-rules-sepolicy" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/dir-rules-sepolicy" ><span class="devsite-nav-text" tooltip>Directories, rules, and sepolicy</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/renderscript" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/renderscript" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/renderscript" ><span class="devsite-nav-text" tooltip>RenderScript</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/abi-stability" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/abi-stability" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/abi-stability" ><span class="devsite-nav-text" tooltip>ABI stability</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vndk/abi-use-check" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vndk/abi-use-check" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vndk/abi-use-check" ><span class="devsite-nav-text" tooltip>Prebuilt ABI usages checker</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>Vendor interface object</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/vintf" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vintf" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vintf" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vintf/objects" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vintf/objects" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vintf/objects" ><span class="devsite-nav-text" tooltip>Manifests</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vintf/comp-matrices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vintf/comp-matrices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vintf/comp-matrices" ><span class="devsite-nav-text" tooltip>Compatibility matrixes</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vintf/fcm" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vintf/fcm" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vintf/fcm" ><span class="devsite-nav-text" tooltip>FCM lifecycle</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vintf/dm" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vintf/dm" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vintf/dm" ><span class="devsite-nav-text" tooltip>Device manifest development</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vintf/match-rules" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vintf/match-rules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vintf/match-rules" ><span class="devsite-nav-text" tooltip>Match rules</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/vintf/resources" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/vintf/resources" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/vintf/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>AIDL</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl/aidl-language" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl/aidl-language" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl/aidl-language" ><span class="devsite-nav-text" tooltip>AIDL language</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl/aidl-backends" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl/aidl-backends" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl/aidl-backends" ><span class="devsite-nav-text" tooltip>AIDL backends</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl/stable-aidl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl/stable-aidl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl/stable-aidl" ><span class="devsite-nav-text" tooltip>Stable AIDL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl/aidl-hals" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl/aidl-hals" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl/aidl-hals" ><span class="devsite-nav-text" tooltip>AIDL for HALs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl/dynamic-aidl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl/dynamic-aidl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl/dynamic-aidl" ><span class="devsite-nav-text" tooltip>Run AIDL services dynamically</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl/aidl-annotations" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl/aidl-annotations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl/aidl-annotations" ><span class="devsite-nav-text" tooltip>Annotations in AIDL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl/fmq" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl/fmq" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl/fmq" ><span class="devsite-nav-text" tooltip>FMQ with AIDL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl/aidl-fuzzing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl/aidl-fuzzing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl/aidl-fuzzing" ><span class="devsite-nav-text" tooltip>AIDL fuzzing</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/aidl/stable-aidl-apis" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/aidl/stable-aidl-apis" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/aidl/stable-aidl-apis" ><span class="devsite-nav-text" tooltip>AIDL style guide</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>Bootloader</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader/boot-reason" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader/boot-reason" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader/boot-reason" ><span class="devsite-nav-text" tooltip>Canonical boot reason</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader/boot-image-header" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader/boot-image-header" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader/boot-image-header" ><span class="devsite-nav-text" tooltip>Boot image header</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader/implementing-bootconfig" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader/implementing-bootconfig" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader/implementing-bootconfig" ><span class="devsite-nav-text" tooltip>Implement bootconfig</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader/recovery-images" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader/recovery-images" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader/recovery-images" ><span class="devsite-nav-text" tooltip>Recovery images</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader/dtb-images" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader/dtb-images" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader/dtb-images" ><span class="devsite-nav-text" tooltip>DTB images</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader/updating" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader/updating" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader/updating" ><span class="devsite-nav-text" tooltip>Implement OTA updates</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader/locking_unlocking" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader/locking_unlocking" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader/locking_unlocking" ><span class="devsite-nav-text" tooltip>Lock and unlock the bootloader</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader/version-info-avb" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader/version-info-avb" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader/version-info-avb" ><span class="devsite-nav-text" tooltip>Version information in AVB properties</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/bootloader/fastbootd" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/bootloader/fastbootd" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/bootloader/fastbootd" ><span class="devsite-nav-text" tooltip>Move fastboot to userspace</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>Partitions</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/system-as-root" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/system-as-root" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/system-as-root" ><span class="devsite-nav-text" tooltip>Partition layout</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/vendor-boot-partitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/vendor-boot-partitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/vendor-boot-partitions" ><span class="devsite-nav-text" tooltip>Vendor boot partitions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/vendor-odm-dlkm-partition" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/vendor-odm-dlkm-partition" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/vendor-odm-dlkm-partition" ><span class="devsite-nav-text" tooltip>Vendor and ODM DLKM partitions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/shared-system-image" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/shared-system-image" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/shared-system-image" ><span class="devsite-nav-text" tooltip>Android shared system image</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/ramdisk-partitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/ramdisk-partitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/ramdisk-partitions" ><span class="devsite-nav-text" tooltip>Ramdisk partitions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/generic-boot" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/generic-boot" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/generic-boot" ><span class="devsite-nav-text" tooltip>Generic boot partition</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/odm-partitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/odm-partitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/odm-partitions" ><span class="devsite-nav-text" tooltip>ODM partitions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/product-partitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/product-partitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/product-partitions" ><span class="devsite-nav-text" tooltip>Product partitions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/gki-partitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/gki-partitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/gki-partitions" ><span class="devsite-nav-text" tooltip>Implement a GKI module partition</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/product-interfaces" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/product-interfaces" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/product-interfaces" ><span class="devsite-nav-text" tooltip>Enforce product partition interfaces</span></a></li><li class="devsite-nav-item"><a href="/docs/core/architecture/partitions/tos-partitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/partitions/tos-partitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/partitions/tos-partitions" ><span class="devsite-nav-text" tooltip>Trusty OS partitions</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>16KB page size</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/architecture/16kb-page-size/16kb" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/16kb-page-size/16kb" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/16kb-page-size/16kb" ><span class="devsite-nav-text" tooltip>Overview</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-new"><a href="/docs/core/architecture/16kb-page-size/getting-started-cf-arm64-pgagnostic" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/16kb-page-size/getting-started-cf-arm64-pgagnostic" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/16kb-page-size/getting-started-cf-arm64-pgagnostic" ><span class="devsite-nav-text" tooltip>Use Cuttlefish with 16 KB page size on ARM64</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-new"><a href="/docs/core/architecture/16kb-page-size/getting-started-cf-x86-64-pgagnostic" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/16kb-page-size/getting-started-cf-x86-64-pgagnostic" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/16kb-page-size/getting-started-cf-x86-64-pgagnostic" ><span class="devsite-nav-text" tooltip>Simulate Cuttlefish with 16 KB page size on x86-64</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-new"><a href="/docs/core/architecture/16kb-page-size/flash-pixel6-with-16kb-kernel" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/16kb-page-size/flash-pixel6-with-16kb-kernel" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/16kb-page-size/flash-pixel6-with-16kb-kernel" ><span class="devsite-nav-text" tooltip>Flash Pixel 6 with 16 KB page size kernel</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-new"><a href="/docs/core/architecture/16kb-page-size/getting-page-size" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/16kb-page-size/getting-page-size" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/16kb-page-size/getting-page-size" ><span class="devsite-nav-text" tooltip>Get the page size</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-new"><a href="/docs/core/architecture/16kb-page-size/system-properties" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/16kb-page-size/system-properties" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/16kb-page-size/system-properties" ><span class="devsite-nav-text" tooltip>16 KB system properties</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-new"><a href="/docs/core/architecture/16kb-page-size/16kb-developer-option" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/16kb-page-size/16kb-developer-option" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/16kb-page-size/16kb-developer-option" ><span class="devsite-nav-text" tooltip>Enable 16 KB toggle</span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/architecture/api-flags" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/architecture/api-flags" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/architecture/api-flags" ><span class="devsite-nav-text" tooltip>Vendor API level</span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></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>Audio</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/audio" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/terminology" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/terminology" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/terminology" ><span class="devsite-nav-text" tooltip>Terminology</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>Implementation</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/audio/implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/implement" ><span class="devsite-nav-text" tooltip>Audio HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/aidl-implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/aidl-implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/aidl-implement" ><span class="devsite-nav-text" tooltip>AIDL Audio HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/aidl-hidl-comp" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/aidl-hidl-comp" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/aidl-hidl-comp" ><span class="devsite-nav-text" tooltip>AIDL and HIDL Audio HAL comparison</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>HIDL</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/audio/hidl-implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/hidl-implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/hidl-implement" ><span class="devsite-nav-text" tooltip>HIDL Audio HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/implement-policy" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/implement-policy" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/implement-policy" ><span class="devsite-nav-text" tooltip>Configure audio policies</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/implement-shared-library" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/implement-shared-library" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/implement-shared-library" ><span class="devsite-nav-text" tooltip>Configure a shared library</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/audio/implement-pre-processing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/implement-pre-processing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/implement-pre-processing" ><span class="devsite-nav-text" tooltip>Configure preprocessing effects</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/audio/data_formats" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/data_formats" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/data_formats" ><span class="devsite-nav-text" tooltip>Data formats</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/attributes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/attributes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/attributes" ><span class="devsite-nav-text" tooltip>Attributes</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/audio-effects" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/audio-effects" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/audio-effects" ><span class="devsite-nav-text" tooltip>Effects</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/highres-effects" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/highres-effects" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/highres-effects" ><span class="devsite-nav-text" tooltip>High-resolution audio</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/device-type-limit" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/device-type-limit" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/device-type-limit" ><span class="devsite-nav-text" tooltip>Device type limit</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/aaudio" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/aaudio" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/aaudio" ><span class="devsite-nav-text" tooltip>AAudio and MMAP</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/warmup" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/warmup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/warmup" ><span class="devsite-nav-text" tooltip>Audio warmup</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>Latency</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/audio/latency/latency" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/latency/latency" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/latency/latency" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/latency/contrib" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/latency/contrib" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/latency/contrib" ><span class="devsite-nav-text" tooltip>Contributors</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/latency/design" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/latency/design" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/latency/design" ><span class="devsite-nav-text" tooltip>Design for reduced latency</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/latency/measure" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/latency/measure" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/latency/measure" ><span class="devsite-nav-text" tooltip>Measure audio latency</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/latency/testing_circuit" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/latency/testing_circuit" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/latency/testing_circuit" ><span class="devsite-nav-text" tooltip>Light testing circuit</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/latency/loopback" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/latency/loopback" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/latency/loopback" ><span class="devsite-nav-text" tooltip>Audio loopback dongle</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/latency/measurements" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/latency/measurements" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/latency/measurements" ><span class="devsite-nav-text" tooltip>Measurements</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/latency/app" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/latency/app" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/latency/app" ><span class="devsite-nav-text" tooltip>For app developers</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/audio/avoiding_pi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/avoiding_pi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/avoiding_pi" ><span class="devsite-nav-text" tooltip>Avoid priority inversion</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/src" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/src" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/src" ><span class="devsite-nav-text" tooltip>Sample rate conversion</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/debugging" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/debugging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/debugging" ><span class="devsite-nav-text" tooltip>Debugging</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>MIDI</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/audio/midi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/midi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/midi" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/midi_arch" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/midi_arch" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/midi_arch" ><span class="devsite-nav-text" tooltip>MIDI architecture</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/midi_test" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/midi_test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/midi_test" ><span class="devsite-nav-text" tooltip>MIDI test procedure</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>USB</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/audio/usb" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/usb" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/usb" ><span class="devsite-nav-text" tooltip>USB digital audio</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/preferred-mixer-attr" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/preferred-mixer-attr" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/preferred-mixer-attr" ><span class="devsite-nav-text" tooltip>Preferred mixer attributes on USB devices</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/audio/tv" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/tv" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/tv" ><span class="devsite-nav-text" tooltip>TV audio</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/concurrent" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/concurrent" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/concurrent" ><span class="devsite-nav-text" tooltip>Concurrent capture</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/sound-trigger" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/sound-trigger" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/sound-trigger" ><span class="devsite-nav-text" tooltip>Sound Trigger</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/combined-audio-routing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/combined-audio-routing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/combined-audio-routing" ><span class="devsite-nav-text" tooltip>Combined audio device routing</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>Spatial audio</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/audio/spatial" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/spatial" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/spatial" ><span class="devsite-nav-text" tooltip>Spatial audio and head tracking</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/implement-spatial-audio" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/implement-spatial-audio" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/implement-spatial-audio" ><span class="devsite-nav-text" tooltip>Implementation</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/audio/ht-leaudio" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/ht-leaudio" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/ht-leaudio" ><span class="devsite-nav-text" tooltip>Head tracking over LE audio</span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/audio/sound-dose" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/sound-dose" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/sound-dose" ><span class="devsite-nav-text" tooltip>Sound dose</span></a></li><li class="devsite-nav-item"><a href="/docs/core/audio/soundbar" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/audio/soundbar" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/audio/soundbar" ><span class="devsite-nav-text" tooltip>Dynamic soundbar mode</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>Camera</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/camera" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Architecture</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/camera/camera3" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camera3" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camera3" ><span class="devsite-nav-text" tooltip>Camera HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/camera3_requests_hal" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camera3_requests_hal" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camera3_requests_hal" ><span class="devsite-nav-text" tooltip>HAL subsystem</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Core concepts</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/camera/camera3_3Amodes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camera3_3Amodes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camera3_3Amodes" ><span class="devsite-nav-text" tooltip>3A modes and state transition</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/debugging" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/debugging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/debugging" ><span class="devsite-nav-text" tooltip>Camera debugging</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/camera3_error_stream" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camera3_error_stream" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camera3_error_stream" ><span class="devsite-nav-text" tooltip>Error and stream handling</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/camera3_metadata" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camera3_metadata" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camera3_metadata" ><span class="devsite-nav-text" tooltip>Metadata and controls</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/camera3_crop_reprocess" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camera3_crop_reprocess" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camera3_crop_reprocess" ><span class="devsite-nav-text" tooltip>Output streams, cropping, and zoom</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/camera3_requests_methods" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camera3_requests_methods" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camera3_requests_methods" ><span class="devsite-nav-text" tooltip>Request creation and submission</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/camera/stream-config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/stream-config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/stream-config" ><span class="devsite-nav-text" tooltip>Stream configurations</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-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Performance</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/camera/buffer-management-api" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/buffer-management-api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/buffer-management-api" ><span class="devsite-nav-text" tooltip>Camera HAL3 buffer management APIs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/session-parameters" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/session-parameters" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/session-parameters" ><span class="devsite-nav-text" tooltip>Session parameters</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/singleprod-multiconsum" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/singleprod-multiconsum" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/singleprod-multiconsum" ><span class="devsite-nav-text" tooltip>Single producer, multiple consumer</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Camera features</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/camera/10-bit-camera-output" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/10-bit-camera-output" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/10-bit-camera-output" ><span class="devsite-nav-text" tooltip>10-bit camera output</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/bokeh" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/bokeh" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/bokeh" ><span class="devsite-nav-text" tooltip>Camera bokeh</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/concurrent-streaming" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/concurrent-streaming" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/concurrent-streaming" ><span class="devsite-nav-text" tooltip>Concurrent camera streaming</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/camerax-vendor-extensions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camerax-vendor-extensions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camerax-vendor-extensions" ><span class="devsite-nav-text" tooltip>Camera extensions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/camerax-vendor-extensions-validation-tool" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camerax-vendor-extensions-validation-tool" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camerax-vendor-extensions-validation-tool" ><span class="devsite-nav-text" tooltip>Camera extensions validation tool</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/camera-preview-stabilization" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/camera-preview-stabilization" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/camera-preview-stabilization" ><span class="devsite-nav-text" tooltip>Camera preview stabilization</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/external-usb-cameras" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/external-usb-cameras" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/external-usb-cameras" ><span class="devsite-nav-text" tooltip>External USB cameras</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/hdr-modes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/hdr-modes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/hdr-modes" ><span class="devsite-nav-text" tooltip>High dynamic range modes</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/heif" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/heif" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/heif" ><span class="devsite-nav-text" tooltip>HEIF imaging</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/monochrome" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/monochrome" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/monochrome" ><span class="devsite-nav-text" tooltip>Monochrome cameras</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/motion-tracking" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/motion-tracking" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/motion-tracking" ><span class="devsite-nav-text" tooltip>Motion tracking</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/multi-camera" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/multi-camera" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/multi-camera" ><span class="devsite-nav-text" tooltip>Multi-camera support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/system-cameras" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/system-cameras" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/system-cameras" ><span class="devsite-nav-text" tooltip>System cameras</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/torch-strength-control" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/torch-strength-control" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/torch-strength-control" ><span class="devsite-nav-text" tooltip>Torch strength control</span></a></li><li class="devsite-nav-item"><a href="/docs/core/camera/ultra-hdr" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/ultra-hdr" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/ultra-hdr" ><span class="devsite-nav-text" tooltip>Ultra HDR</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/camera/webcam" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/webcam" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/webcam" ><span class="devsite-nav-text" tooltip>Use a device as a webcam</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"><a href="/docs/core/camera/wide-gamut" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/wide-gamut" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/wide-gamut" ><span class="devsite-nav-text" tooltip>Wide gamut capture</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Versioning</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/camera/versioning" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/camera/versioning" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/camera/versioning" ><span class="devsite-nav-text" tooltip>Camera version support</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>Connectivity</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/connect" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect" ><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>Bluetooth</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/connect/bluetooth" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/bluetooth" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/bluetooth" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/bluetooth/services" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/bluetooth/services" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/bluetooth/services" ><span class="devsite-nav-text" tooltip>Bluetooth services</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/bluetooth/ble" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/bluetooth/ble" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/bluetooth/ble" ><span class="devsite-nav-text" tooltip>Bluetooth Low Energy</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/bluetooth/asha" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/bluetooth/asha" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/bluetooth/asha" ><span class="devsite-nav-text" tooltip>Hearing aid audio support using BLE</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/bluetooth/ble_advertising" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/bluetooth/ble_advertising" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/bluetooth/ble_advertising" ><span class="devsite-nav-text" tooltip>BLE advertising</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/bluetooth/verifying_debugging" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/bluetooth/verifying_debugging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/bluetooth/verifying_debugging" ><span class="devsite-nav-text" tooltip>Verify and debug</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/bluetooth/hci_requirements" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/bluetooth/hci_requirements" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/bluetooth/hci_requirements" ><span class="devsite-nav-text" tooltip>HCI requirements</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/presence-requirements" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/presence-requirements" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/presence-requirements" ><span class="devsite-nav-text" tooltip>Presence calibration</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>NFC</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/connect/felica" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/felica" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/felica" ><span class="devsite-nav-text" tooltip>Host card emulation of FeliCa</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/offhost-payment-sync" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/offhost-payment-sync" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/offhost-payment-sync" ><span class="devsite-nav-text" tooltip>NFC off-host payment synchronization</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/secure-nfc" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/secure-nfc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/secure-nfc" ><span class="devsite-nav-text" tooltip>Secure NFC</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/quick-access-wallet" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/quick-access-wallet" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/quick-access-wallet" ><span class="devsite-nav-text" tooltip>Quick Access Wallet</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/connect/android-proprietary-nci-commands" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/android-proprietary-nci-commands" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/android-proprietary-nci-commands" ><span class="devsite-nav-text" tooltip>Android proprietary NCI commands</span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></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>Calling and messaging</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/connect/5g-nsa" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/5g-nsa" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/5g-nsa" ><span class="devsite-nav-text" tooltip>5G non-standalone (NSA)</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/block-numbers" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/block-numbers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/block-numbers" ><span class="devsite-nav-text" tooltip>Implement phone number blocking</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/call-notification" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/call-notification" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/call-notification" ><span class="devsite-nav-text" tooltip>Call notifications</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/connect/domain-selection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/domain-selection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/domain-selection" ><span class="devsite-nav-text" tooltip>Domain selection service</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"><a href="/docs/core/connect/emergency-affordance" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/emergency-affordance" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/emergency-affordance" ><span class="devsite-nav-text" tooltip>Implement Emergency Affordance</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/emergency-number-db" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/emergency-number-db" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/emergency-number-db" ><span class="devsite-nav-text" tooltip>Android emergency number database</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/emergency-call" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/emergency-call" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/emergency-call" ><span class="devsite-nav-text" tooltip>Emergency numbers and emergency calling</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/ims" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/ims" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/ims" ><span class="devsite-nav-text" tooltip>Implement IMS</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/ims-service-entitlement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/ims-service-entitlement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/ims-service-entitlement" ><span class="devsite-nav-text" tooltip>IMS service entitlement</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/ims-single-registration" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/ims-single-registration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/ims-single-registration" ><span class="devsite-nav-text" tooltip>IMS single registration</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/phone-account-suggestion" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/phone-account-suggestion" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/phone-account-suggestion" ><span class="devsite-nav-text" tooltip>Phone account suggestion</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/rtt" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/rtt" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/rtt" ><span class="devsite-nav-text" tooltip>Implement RTT</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/third-party-call-apps" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/third-party-call-apps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/third-party-call-apps" ><span class="devsite-nav-text" tooltip>Support third-party calling apps</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/voicemail" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/voicemail" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/voicemail" ><span class="devsite-nav-text" tooltip>Visual voicemail</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>Carrier</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/connect/carrier" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/carrier" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/carrier" ><span class="devsite-nav-text" tooltip>Overview</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"><a href="/docs/core/connect/5g-slicing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/5g-slicing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/5g-slicing" ><span class="devsite-nav-text" tooltip>5G network slicing</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/update" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/update" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/update" ><span class="devsite-nav-text" tooltip>APN and CarrierConfig</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/carrierid" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/carrierid" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/carrierid" ><span class="devsite-nav-text" tooltip>Carrier identification</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/data-plans" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/data-plans" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/data-plans" ><span class="devsite-nav-text" tooltip>Implement data plans</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/device-identifiers" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/device-identifiers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/device-identifiers" ><span class="devsite-nav-text" tooltip>Device 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>eSIM</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/connect/esim-overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/esim-overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/esim-overview" ><span class="devsite-nav-text" tooltip>Implement eSIM</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/esim-modem-requirements" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/esim-modem-requirements" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/esim-modem-requirements" ><span class="devsite-nav-text" tooltip>Modem requirements for eSIM support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/esim-euicc-api" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/esim-euicc-api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/esim-euicc-api" ><span class="devsite-nav-text" tooltip>eUICC APIs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/esim-mep" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/esim-mep" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/esim-mep" ><span class="devsite-nav-text" tooltip>Multiple enabled profiles</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/esim-error-handling" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/esim-error-handling" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/esim-error-handling" ><span class="devsite-nav-text" tooltip>Handle eUICC API errors</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/esim-test-profiles" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/esim-test-profiles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/esim-test-profiles" ><span class="devsite-nav-text" tooltip>Downloadable test profiles</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/esim-transfer-carrier-integration" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/esim-transfer-carrier-integration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/esim-transfer-carrier-integration" ><span class="devsite-nav-text" tooltip>eSIM transfer carrier integration</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/connect/vpn-ux" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/vpn-ux" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/vpn-ux" ><span class="devsite-nav-text" tooltip>Improve VPN user experience</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/multi-operator-networks" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/multi-operator-networks" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/multi-operator-networks" ><span class="devsite-nav-text" tooltip>Multi-operator network support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/oob-users" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/oob-users" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/oob-users" ><span class="devsite-nav-text" tooltip>Customize device behavior for out-of-balance users</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/ril" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/ril" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/ril" ><span class="devsite-nav-text" tooltip>RIL refactoring</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/small-cell" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/small-cell" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/small-cell" ><span class="devsite-nav-text" tooltip>Small cell support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/uicc" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/uicc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/uicc" ><span class="devsite-nav-text" tooltip>UICC carrier privileges</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>Time</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/connect/time" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/time" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/time" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/time/location-tz-detection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/time/location-tz-detection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/time/location-tz-detection" ><span class="devsite-nav-text" tooltip>Location time zone detection</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/time/telephony-tz-detection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/time/telephony-tz-detection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/time/telephony-tz-detection" ><span class="devsite-nav-text" tooltip>Telephony time zone detection</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/time/network-time-detection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/time/network-time-detection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/time/network-time-detection" ><span class="devsite-nav-text" tooltip>Network time detection</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/time/gnss-time-detection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/time/gnss-time-detection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/time/gnss-time-detection" ><span class="devsite-nav-text" tooltip>GNSS time detection</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/time/external-time-detection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/time/external-time-detection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/time/external-time-detection" ><span class="devsite-nav-text" tooltip>External time detection</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/time-source" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/time-source" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/time-source" ><span class="devsite-nav-text" tooltip>Time source priority</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/time/time-zone-policy-recommendations" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/time/time-zone-policy-recommendations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/time/time-zone-policy-recommendations" ><span class="devsite-nav-text" tooltip>Time zone policy and recommendations</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/timezone-rules" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/timezone-rules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/timezone-rules" ><span class="devsite-nav-text" tooltip>Time zone rules</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>Ultra-wideband</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/connect/uwb" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/uwb" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/uwb" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/uwb-hal-interface" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/uwb-hal-interface" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/uwb-hal-interface" ><span class="devsite-nav-text" tooltip>UWB HAL interface</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>Wi-Fi</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-overview" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-hal" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-hal" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-hal" ><span class="devsite-nav-text" tooltip>Wi-Fi HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-infrastructure" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-infrastructure" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-infrastructure" ><span class="devsite-nav-text" tooltip>Wi-Fi infrastructure features</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-debug" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-debug" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-debug" ><span class="devsite-nav-text" tooltip>Test, debug, and tune Wi-Fi</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/android-packet-filter" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/android-packet-filter" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/android-packet-filter" ><span class="devsite-nav-text" tooltip>Android Packet Filter</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/carrier-wifi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/carrier-wifi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/carrier-wifi" ><span class="devsite-nav-text" tooltip>Carrier Wi-Fi</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-mac-randomization-behavior" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-mac-randomization-behavior" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-mac-randomization-behavior" ><span class="devsite-nav-text" tooltip>MAC randomization behavior</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-mac-randomization" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-mac-randomization" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-mac-randomization" ><span class="devsite-nav-text" tooltip>Implement MAC randomization</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-passpoint" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-passpoint" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-passpoint" ><span class="devsite-nav-text" tooltip>Passpoint (Hotspot 2.0)</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-sta-ap-concurrency" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-sta-ap-concurrency" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-sta-ap-concurrency" ><span class="devsite-nav-text" tooltip>Wi-Fi STA/AP concurrency</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-sta-sta-concurrency" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-sta-sta-concurrency" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-sta-sta-concurrency" ><span class="devsite-nav-text" tooltip>Wi-Fi STA/STA concurrency</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-tofu" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-tofu" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-tofu" ><span class="devsite-nav-text" tooltip>Trust on First Use (TOFU)</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-aware" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-aware" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-aware" ><span class="devsite-nav-text" tooltip>Wi-Fi Aware</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-coex-channel-avoidance" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-coex-channel-avoidance" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-coex-channel-avoidance" ><span class="devsite-nav-text" tooltip>Wi-Fi/cellular coex channel avoidance</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-direct" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-direct" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-direct" ><span class="devsite-nav-text" tooltip>Wi-Fi Direct</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-easy-connect" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-easy-connect" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-easy-connect" ><span class="devsite-nav-text" tooltip>Wi-Fi Easy Connect</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-softap" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-softap" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-softap" ><span class="devsite-nav-text" tooltip>Wi-Fi hotspot (Soft AP)</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-ap-ap-concurrency" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-ap-ap-concurrency" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-ap-ap-concurrency" ><span class="devsite-nav-text" tooltip>Wi-Fi AP/AP concurrency</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-low-latency" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-low-latency" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-low-latency" ><span class="devsite-nav-text" tooltip>Wi-Fi low-latency mode</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-network-selection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-network-selection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-network-selection" ><span class="devsite-nav-text" tooltip>Wi-Fi network selection</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-scan" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-scan" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-scan" ><span class="devsite-nav-text" tooltip>Wi-Fi preferred network offload scanning</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/connect/wifi-rtt" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-rtt" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-rtt" ><span class="devsite-nav-text" tooltip>Wi-Fi Round Trip Time (RTT)</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"><a href="/docs/core/connect/wifi-wpa3-owe" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-wpa3-owe" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-wpa3-owe" ><span class="devsite-nav-text" tooltip>WPA3 and Wi-Fi Enhanced Open</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/wifi-7" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/wifi-7" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/wifi-7" ><span class="devsite-nav-text" tooltip>Wi-Fi 7</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>ACTS tests</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/connect/acts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/acts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/acts" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/acts-advanced-guide" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/acts-advanced-guide" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/acts-advanced-guide" ><span class="devsite-nav-text" tooltip>Advanced ACTS guide</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/acts-config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/acts-config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/acts-config" ><span class="devsite-nav-text" tooltip>Configure ACTS tests</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/acts-user-params" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/acts-user-params" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/acts-user-params" ><span class="devsite-nav-text" tooltip>User parameters</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/acts-5g-testing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/acts-5g-testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/acts-5g-testing" ><span class="devsite-nav-text" tooltip>5G testing</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/connect/companion-device-profile" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/companion-device-profile" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/companion-device-profile" ><span class="devsite-nav-text" tooltip>Companion device profiles</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"><a href="/docs/core/connect/connectivity-diagnostics-api" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/connectivity-diagnostics-api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/connectivity-diagnostics-api" ><span class="devsite-nav-text" tooltip>Connectivity Diagnostics API</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/connectivity-ui" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/connectivity-ui" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/connectivity-ui" ><span class="devsite-nav-text" tooltip>Connectivity user interface</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/network-selection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/network-selection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/network-selection" ><span class="devsite-nav-text" tooltip>Network selection</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/signal-strength" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/signal-strength" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/signal-strength" ><span class="devsite-nav-text" tooltip>Signal strength reporting</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>Data</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/data" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/tags-explained" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/tags-explained" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/tags-explained" ><span class="devsite-nav-text" tooltip>Data usage tags explained</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/data-saver" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/data-saver" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/data-saver" ><span class="devsite-nav-text" tooltip>Data Saver mode</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/ebpf-traffic-monitor" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/ebpf-traffic-monitor" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/ebpf-traffic-monitor" ><span class="devsite-nav-text" tooltip>eBPF traffic monitoring</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/excluding-network-types" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/excluding-network-types" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/excluding-network-types" ><span class="devsite-nav-text" tooltip>Exclude network types from usage data</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/iface-overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/iface-overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/iface-overview" ><span class="devsite-nav-text" tooltip>Network interface statistics overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/tethering-data" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/tethering-data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/tethering-data" ><span class="devsite-nav-text" tooltip>Tethering data</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/tethering-offload" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/tethering-offload" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/tethering-offload" ><span class="devsite-nav-text" tooltip>Tethering hardware offload</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/usage-cycle-resets-dates" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/usage-cycle-resets-dates" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/usage-cycle-resets-dates" ><span class="devsite-nav-text" tooltip>Usage cycle reset dates</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/kernel-overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/kernel-overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/kernel-overview" ><span class="devsite-nav-text" tooltip>Kernel overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/data/kernel-changes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/data/kernel-changes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/data/kernel-changes" ><span class="devsite-nav-text" tooltip>Kernel changes</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Display</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/display" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display" ><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>Apps</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/display/adaptive-icons" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/adaptive-icons" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/adaptive-icons" ><span class="devsite-nav-text" tooltip>Implement adaptive icons</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/app-shortcuts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/app-shortcuts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/app-shortcuts" ><span class="devsite-nav-text" tooltip>App shortcuts</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/circular-icons" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/circular-icons" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/circular-icons" ><span class="devsite-nav-text" tooltip>Implement circular icons</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/conv-notifications" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/conv-notifications" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/conv-notifications" ><span class="devsite-nav-text" tooltip>Conversation notifications and widgets</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/window-blurs" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/window-blurs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/window-blurs" ><span class="devsite-nav-text" tooltip>Window blurs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/widgets-shortcuts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/widgets-shortcuts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/widgets-shortcuts" ><span class="devsite-nav-text" tooltip>Widgets and shortcuts</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/synched-app-transitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/synched-app-transitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/synched-app-transitions" ><span class="devsite-nav-text" tooltip>Implement synchronized app transitions</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>Color</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/display/color-mgmt" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/color-mgmt" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/color-mgmt" ><span class="devsite-nav-text" tooltip>Color management</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/display-cutouts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/display-cutouts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/display-cutouts" ><span class="devsite-nav-text" tooltip>Display cutouts</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/dnd" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/dnd" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/dnd" ><span class="devsite-nav-text" tooltip>Do not disturb</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/hdr" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/hdr" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/hdr" ><span class="devsite-nav-text" tooltip>HDR video playback</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/night-light" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/night-light" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/night-light" ><span class="devsite-nav-text" tooltip>Implement night light</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/tone-mapping" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/tone-mapping" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/tone-mapping" ><span class="devsite-nav-text" tooltip>Tone mapping HDR luminance to an SDR-compatible range</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/material" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/material" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/material" ><span class="devsite-nav-text" tooltip>Material You design</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/dynamic-color" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/dynamic-color" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/dynamic-color" ><span class="devsite-nav-text" tooltip>Dynamic color</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>Multi-Window</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/display/multi-window" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi-window" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi-window" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/split-screen" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/split-screen" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/split-screen" ><span class="devsite-nav-text" tooltip>Split-screen interactions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/pip" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/pip" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/pip" ><span class="devsite-nav-text" tooltip>Picture-in-picture</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/window-magnifier" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/window-magnifier" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/window-magnifier" ><span class="devsite-nav-text" tooltip>Window magnification</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>Multi-Display</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/display/multi_display" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/recommended-practices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/recommended-practices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/recommended-practices" ><span class="devsite-nav-text" tooltip>Recommended practices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/testing-dev-environment" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/testing-dev-environment" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/testing-dev-environment" ><span class="devsite-nav-text" tooltip>Testing and development environment</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/faq" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/faq" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/faq" ><span class="devsite-nav-text" tooltip>Frequently asked questions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/multi-resume" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/multi-resume" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/multi-resume" ><span class="devsite-nav-text" tooltip>Multi-resume</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/activity-launch" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/activity-launch" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/activity-launch" ><span class="devsite-nav-text" tooltip>Activity launch policy</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/displays" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/displays" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/displays" ><span class="devsite-nav-text" tooltip>Display support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/system-decorations" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/system-decorations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/system-decorations" ><span class="devsite-nav-text" tooltip>System decorations support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/lock-screen" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/lock-screen" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/lock-screen" ><span class="devsite-nav-text" tooltip>Lock screen</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/ime-support" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/ime-support" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/ime-support" ><span class="devsite-nav-text" tooltip>Input method editor support</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/input-routing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/input-routing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/input-routing" ><span class="devsite-nav-text" tooltip>Input routing</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/multi_display/multi-zone-audio" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/multi_display/multi-zone-audio" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/multi_display/multi-zone-audio" ><span class="devsite-nav-text" tooltip>Multi-zone audio</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>Notifications</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/display/notification-history" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/notification-history" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/notification-history" ><span class="devsite-nav-text" tooltip>Notification history</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/notification-perm" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/notification-perm" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/notification-perm" ><span class="devsite-nav-text" tooltip>Permission for opt-In notifications</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/display/task-manager" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/task-manager" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/task-manager" ><span class="devsite-nav-text" tooltip>Task Manager</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/retail-mode" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/retail-mode" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/retail-mode" ><span class="devsite-nav-text" tooltip>Retail demo mode</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/rotate-suggestions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/rotate-suggestions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/rotate-suggestions" ><span class="devsite-nav-text" tooltip>Rotate suggestions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/textclassifier" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/textclassifier" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/textclassifier" ><span class="devsite-nav-text" tooltip>Implement text classifier</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/mixed-sdr-hdr" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/mixed-sdr-hdr" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/mixed-sdr-hdr" ><span class="devsite-nav-text" tooltip>Mixed SDR and HDR composition</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/media-control" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/media-control" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/media-control" ><span class="devsite-nav-text" tooltip>Media controls in System UI</span></a></li><li class="devsite-nav-item"><a href="/docs/core/display/windowmanager-extensions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/display/windowmanager-extensions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/display/windowmanager-extensions" ><span class="devsite-nav-text" tooltip>WindowManager extensions</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>Fonts</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/fonts/custom-font-fallback" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/fonts/custom-font-fallback" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/fonts/custom-font-fallback" ><span class="devsite-nav-text" tooltip>Implement custom font fallback</span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></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>Graphics</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/graphics" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/architecture" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/architecture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/architecture" ><span class="devsite-nav-text" tooltip>Architecture</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/arch-bq-gralloc" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/arch-bq-gralloc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/arch-bq-gralloc" ><span class="devsite-nav-text" tooltip>BufferQueue and Gralloc</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/implement-dma-buf-gpu-mem" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/implement-dma-buf-gpu-mem" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/implement-dma-buf-gpu-mem" ><span class="devsite-nav-text" tooltip>Implement DMABUF and GPU memory accounting</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/tracing-win-transitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/tracing-win-transitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/tracing-win-transitions" ><span class="devsite-nav-text" tooltip>Trace window transitions using Winscope</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>Surface and SurfaceHolder</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/graphics/arch-sh" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/arch-sh" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/arch-sh" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/arch-sv-glsv" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/arch-sv-glsv" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/arch-sv-glsv" ><span class="devsite-nav-text" tooltip>SurfaceView and GLSurfaceView</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/arch-st" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/arch-st" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/arch-st" ><span class="devsite-nav-text" tooltip>SurfaceTexture</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/arch-tv" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/arch-tv" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/arch-tv" ><span class="devsite-nav-text" tooltip>TextureView</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>SurfaceFlinger and WindowManager</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/graphics/surfaceflinger-windowmanager" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/surfaceflinger-windowmanager" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/surfaceflinger-windowmanager" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/surfaceflinger-props" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/surfaceflinger-props" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/surfaceflinger-props" ><span class="devsite-nav-text" tooltip>System properties in SurfaceFlinger</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>Hardware Composer HAL</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/graphics/hwc" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/hwc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/hwc" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/implement-hwc" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/implement-hwc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/implement-hwc" ><span class="devsite-nav-text" tooltip>Implement HWC HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/hotplug" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/hotplug" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/hotplug" ><span class="devsite-nav-text" tooltip>Hotplug handling</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/aidl-hwc" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/aidl-hwc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/aidl-hwc" ><span class="devsite-nav-text" tooltip>AIDL for HWC HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/framebuffer-mgmt" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/framebuffer-mgmt" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/framebuffer-mgmt" ><span class="devsite-nav-text" tooltip>Client framebuffer management</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/reduce-consumption" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/reduce-consumption" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/reduce-consumption" ><span class="devsite-nav-text" tooltip>Reduce graphics memory consumption</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/graphics/layers-displays" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/layers-displays" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/layers-displays" ><span class="devsite-nav-text" tooltip>Layers and displays</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/implement-vsync" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/implement-vsync" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/implement-vsync" ><span class="devsite-nav-text" tooltip>VSYNC</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/frame-pacing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/frame-pacing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/frame-pacing" ><span class="devsite-nav-text" tooltip>Frame pacing</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/multiple-refresh-rate" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/multiple-refresh-rate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/multiple-refresh-rate" ><span class="devsite-nav-text" tooltip>Multiple refresh rate</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/graphics/arr" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/arr" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/arr" ><span class="devsite-nav-text" tooltip>Adaptive refresh rate</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-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>EGLSurfaces and OpenGL ES</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/graphics/arch-egl-opengl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/arch-egl-opengl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/arch-egl-opengl" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/implement-opengl-es" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/implement-opengl-es" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/implement-opengl-es" ><span class="devsite-nav-text" tooltip>Implement OpenGL ES and EGL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/renderer" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/renderer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/renderer" ><span class="devsite-nav-text" tooltip>OpenGLRenderer configuration</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>Vulkan</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/graphics/arch-vulkan" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/arch-vulkan" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/arch-vulkan" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/implement-vulkan" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/implement-vulkan" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/implement-vulkan" ><span class="devsite-nav-text" tooltip>Implement Vulkan</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/graphics/sync" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/sync" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/sync" ><span class="devsite-nav-text" tooltip>Synchronization framework</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>Testing</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/graphics/implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/implement" ><span class="devsite-nav-text" tooltip>Implementation testing</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/cts-integration" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/cts-integration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/cts-integration" ><span class="devsite-nav-text" tooltip>Integrate with Android CTS</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/deqp-testing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/deqp-testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/deqp-testing" ><span class="devsite-nav-text" tooltip>drawElements Quality Program testing</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/graphics/unsignaled-buffer-latch" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/unsignaled-buffer-latch" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/unsignaled-buffer-latch" ><span class="devsite-nav-text" tooltip>Unsignaled buffer latching with AutoSingleLayer</span></a></li><li class="devsite-nav-item"><a href="/docs/core/graphics/new-pixel-formats" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/graphics/new-pixel-formats" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/graphics/new-pixel-formats" ><span class="devsite-nav-text" tooltip>Add new pixel formats to Android</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>Interaction</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Input</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/interaction/input" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/input" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/input" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/input/key-layout-files" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/input/key-layout-files" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/input/key-layout-files" ><span class="devsite-nav-text" tooltip>Key layout files</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/input/key-character-map-files" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/input/key-character-map-files" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/input/key-character-map-files" ><span class="devsite-nav-text" tooltip>Key character map files</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/input/input-device-configuration-files" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/input/input-device-configuration-files" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/input/input-device-configuration-files" ><span class="devsite-nav-text" tooltip>Input device configuration files</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/input/migration-guide" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/input/migration-guide" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/input/migration-guide" ><span class="devsite-nav-text" tooltip>Migration guide</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/input/keyboard-devices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/input/keyboard-devices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/input/keyboard-devices" ><span class="devsite-nav-text" tooltip>Keyboard devices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/input/touch-devices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/input/touch-devices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/input/touch-devices" ><span class="devsite-nav-text" tooltip>Touch devices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/input/getevent" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/input/getevent" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/input/getevent" ><span class="devsite-nav-text" tooltip>getevent tool</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/input/validate-keymaps" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/input/validate-keymaps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/input/validate-keymaps" ><span class="devsite-nav-text" tooltip>validatekeymaps tool</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Haptics</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics/haptics-implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics/haptics-implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics/haptics-implement" ><span class="devsite-nav-text" tooltip>Implement haptics</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics/haptics-ux-foundation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics/haptics-ux-foundation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics/haptics-ux-foundation" ><span class="devsite-nav-text" tooltip>UX foundation for haptic framework</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics/haptics-ux-design" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics/haptics-ux-design" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics/haptics-ux-design" ><span class="devsite-nav-text" tooltip>Haptics UX design</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>Hardware assessment</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics/hardware" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics/hardware" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics/hardware" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics/test-equipment" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics/test-equipment" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics/test-equipment" ><span class="devsite-nav-text" tooltip>Set up the testing equipment</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics/test-software" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics/test-software" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics/test-software" ><span class="devsite-nav-text" tooltip>Set up the test software</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics/measure" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics/measure" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics/measure" ><span class="devsite-nav-text" tooltip>Measure and record target effects</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics/analyze" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics/analyze" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics/analyze" ><span class="devsite-nav-text" tooltip>Analyze the waveform</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/haptics/compare" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/haptics/compare" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/haptics/compare" ><span class="devsite-nav-text" tooltip>Compare results using the performance map</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Neural Networks</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/interaction/neural-networks" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/neural-networks" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/neural-networks" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/neural-networks/burst-executions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/neural-networks/burst-executions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/neural-networks/burst-executions" ><span class="devsite-nav-text" tooltip>Burst executions and fast message queues</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/neural-networks/compilation-caching" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/neural-networks/compilation-caching" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/neural-networks/compilation-caching" ><span class="devsite-nav-text" tooltip>Compilation caching</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/neural-networks/control-flow" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/neural-networks/control-flow" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/neural-networks/control-flow" ><span class="devsite-nav-text" tooltip>Control flow</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/neural-networks/device-discovery" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/neural-networks/device-discovery" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/neural-networks/device-discovery" ><span class="devsite-nav-text" tooltip>Device discovery and assignment</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/neural-networks/memory-pools" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/neural-networks/memory-pools" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/neural-networks/memory-pools" ><span class="devsite-nav-text" tooltip>Memory pools</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/neural-networks/best-practices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/neural-networks/best-practices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/neural-networks/best-practices" ><span class="devsite-nav-text" tooltip>NNAPI driver implementation best practices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/neural-networks/quality-of-service" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/neural-networks/quality-of-service" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/neural-networks/quality-of-service" ><span class="devsite-nav-text" tooltip>Quality of service</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/neural-networks/vendor-extensions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/neural-networks/vendor-extensions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/neural-networks/vendor-extensions" ><span class="devsite-nav-text" tooltip>Vendor extensions</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Peripherals</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories" ><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>Audio accessories</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/audio" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/audio" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/audio" ><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>3.5 mm headset</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/headset/plug-headset-spec" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/headset/plug-headset-spec" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/headset/plug-headset-spec" ><span class="devsite-nav-text" tooltip>Headset spec</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/headset/jack-headset-spec" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/headset/jack-headset-spec" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/headset/jack-headset-spec" ><span class="devsite-nav-text" tooltip>Headset jack device spec</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>USB headset</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/headset/usb-headset-spec" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/headset/usb-headset-spec" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/headset/usb-headset-spec" ><span class="devsite-nav-text" tooltip>Headset spec</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/headset/usb-adapter" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/headset/usb-adapter" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/headset/usb-adapter" ><span class="devsite-nav-text" tooltip>Adapter spec</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/headset/usb-device" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/headset/usb-device" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/headset/usb-device" ><span class="devsite-nav-text" tooltip>Device spec</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/headset/expected-behavior" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/headset/expected-behavior" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/headset/expected-behavior" ><span class="devsite-nav-text" tooltip>Headset expected behavior</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/headset/testing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/headset/testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/headset/testing" ><span class="devsite-nav-text" tooltip>Headset testing</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 accessories</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/custom" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/custom" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/custom" ><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>Android Open Accessory</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/protocol" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/protocol" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/protocol" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/aoa2" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/aoa2" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/aoa2" ><span class="devsite-nav-text" tooltip>AOA 2.0</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/aoa" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/aoa" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/aoa" ><span class="devsite-nav-text" tooltip>AOA 1.0</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/disable-signaling" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/disable-signaling" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/disable-signaling" ><span class="devsite-nav-text" tooltip>Disable data signaling over USB</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/interaction/accessories/stylus" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/accessories/stylus" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/accessories/stylus" ><span class="devsite-nav-text" tooltip>Stylus</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Sensors</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/sensor-stack" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/sensor-stack" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/sensor-stack" ><span class="devsite-nav-text" tooltip>Sensor stack</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/sensor-types" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/sensor-types" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/sensor-types" ><span class="devsite-nav-text" tooltip>Sensor types</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/interaction" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/interaction" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/interaction" ><span class="devsite-nav-text" tooltip>Interaction</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/head-tracker-hid-protocol" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/head-tracker-hid-protocol" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/head-tracker-hid-protocol" ><span class="devsite-nav-text" tooltip>Head tracker HID protocol</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>Power</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/batching" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/batching" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/batching" ><span class="devsite-nav-text" tooltip>Batching</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/power-use" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/power-use" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/power-use" ><span class="devsite-nav-text" tooltip>Power consumption</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>Modes</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/report-modes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/report-modes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/report-modes" ><span class="devsite-nav-text" tooltip>Reporting modes</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/suspend-mode" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/suspend-mode" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/suspend-mode" ><span class="devsite-nav-text" tooltip>Suspend mode</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/sensors-off" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/sensors-off" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/sensors-off" ><span class="devsite-nav-text" tooltip>Sensors off</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>Sensors HAL</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/sensors-aidl-hal" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/sensors-aidl-hal" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/sensors-aidl-hal" ><span class="devsite-nav-text" tooltip>Sensors AIDL HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/sensors-multihal" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/sensors-multihal" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/sensors-multihal" ><span class="devsite-nav-text" tooltip>Sensors Multi-HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/sensors-hal2" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/sensors-hal2" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/sensors-hal2" ><span class="devsite-nav-text" tooltip>Sensors HAL 2.0</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/hal-interface" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/hal-interface" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/hal-interface" ><span class="devsite-nav-text" tooltip>Sensors HAL 1.0</span></a></li><li class="devsite-nav-item"><a href="/docs/core/interaction/sensors/versioning" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/sensors/versioning" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/sensors/versioning" ><span class="devsite-nav-text" tooltip>HAL version deprecation</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Context Hub Runtime Environment</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/interaction/contexthub" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/interaction/contexthub" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/interaction/contexthub" ><span class="devsite-nav-text" tooltip>Overview</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>Media</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/media" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/media-modules" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/media-modules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/media-modules" ><span class="devsite-nav-text" tooltip>Media modules</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/media-provider" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/media-provider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/media-provider" ><span class="devsite-nav-text" tooltip>MediaProvider module</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/updatable-media" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/updatable-media" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/updatable-media" ><span class="devsite-nav-text" tooltip>Customize media components</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/low-latency-media" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/low-latency-media" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/low-latency-media" ><span class="devsite-nav-text" tooltip>Low-latency decoding in MediaCodec</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/framework-hardening" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/framework-hardening" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/framework-hardening" ><span class="devsite-nav-text" tooltip>Media framework hardening</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/soc" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/soc" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/soc" ><span class="devsite-nav-text" tooltip>SoC vendor dependencies</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/oem" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/oem" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/oem" ><span class="devsite-nav-text" tooltip>OEM dependencies</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/drm" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/drm" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/drm" ><span class="devsite-nav-text" tooltip>DRM</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/media-transcoding" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/media-transcoding" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/media-transcoding" ><span class="devsite-nav-text" tooltip>Compatible media transcoding</span></a></li><li class="devsite-nav-item"><a href="/docs/core/media/encoding-stats" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/encoding-stats" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/encoding-stats" ><span class="devsite-nav-text" tooltip>Export video encoding statistics</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/media/roi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/media/roi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/media/roi" ><span class="devsite-nav-text" tooltip>OEM guidance for RoI implementation</span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></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>Performance</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/perf" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/apk-caching" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/apk-caching" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/apk-caching" ><span class="devsite-nav-text" tooltip>APK caching</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/cached-apps-freezer" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/cached-apps-freezer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/cached-apps-freezer" ><span class="devsite-nav-text" tooltip>Cached apps freezer</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/boot-times" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/boot-times" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/boot-times" ><span class="devsite-nav-text" tooltip>Optimize boot times</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>Health</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/perf/health" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/health" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/health" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/health/implementation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/health/implementation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/health/implementation" ><span class="devsite-nav-text" tooltip>Implement Health 2.0</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/health/implementation-2-1" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/health/implementation-2-1" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/health/implementation-2-1" ><span class="devsite-nav-text" tooltip>Implement Health 2.1</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/health/deprecation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/health/deprecation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/health/deprecation" ><span class="devsite-nav-text" tooltip>Deprecate health@1.0</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/perf/cgroups" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/cgroups" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/cgroups" ><span class="devsite-nav-text" tooltip>Cgroup abstraction layer</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/lmkd" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/lmkd" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/lmkd" ><span class="devsite-nav-text" tooltip>Low memory killer daemon</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/autofdo" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/autofdo" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/autofdo" ><span class="devsite-nav-text" tooltip>Automatic Feedback-Directed Optimization (12 or higher)</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/pgo" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/pgo" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/pgo" ><span class="devsite-nav-text" tooltip>Use profile-guided optimization</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/task-snapshots" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/task-snapshots" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/task-snapshots" ><span class="devsite-nav-text" tooltip>Task snapshots</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/compatibility-wal" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/compatibility-wal" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/compatibility-wal" ><span class="devsite-nav-text" tooltip>Compatibility write-ahead logging</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/hiber" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/hiber" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/hiber" ><span class="devsite-nav-text" tooltip>App hibernation</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/boost" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/boost" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/boost" ><span class="devsite-nav-text" tooltip>Performance boost for games</span></a></li><li class="devsite-nav-item"><a href="/docs/core/perf/mmevents-stats" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/perf/mmevents-stats" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/perf/mmevents-stats" ><span class="devsite-nav-text" tooltip>MM events historical memory statistics</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>Permissions</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/permissions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/ambient" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/ambient" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/ambient" ><span class="devsite-nav-text" tooltip>Ambient capabilities</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/background-location-access" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/background-location-access" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/background-location-access" ><span class="devsite-nav-text" tooltip>Background location access reminder</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/contacts-affinities" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/contacts-affinities" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/contacts-affinities" ><span class="devsite-nav-text" tooltip>Contacts provider and affinities</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/filesystem" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/filesystem" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/filesystem" ><span class="devsite-nav-text" tooltip>Discretionary access control</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/immutable-device-ids" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/immutable-device-ids" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/immutable-device-ids" ><span class="devsite-nav-text" tooltip>Immutable device IDs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/namespaces_libraries" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/namespaces_libraries" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/namespaces_libraries" ><span class="devsite-nav-text" tooltip>Namespaces for native libraries</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/perms-allowlist" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/perms-allowlist" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/perms-allowlist" ><span class="devsite-nav-text" tooltip>Privileged permission allowlist</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/preinstalled-packages" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/preinstalled-packages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/preinstalled-packages" ><span class="devsite-nav-text" tooltip>Preinstalled system packages</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Privacy indicators</span> </div></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/permissions/platform-signed-shared-uid-allowlist" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/platform-signed-shared-uid-allowlist" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/platform-signed-shared-uid-allowlist" ><span class="devsite-nav-text" tooltip>Platform-signed shared UID allowlist</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"><a href="/docs/core/permissions/privacy-indicators" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/privacy-indicators" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/privacy-indicators" ><span class="devsite-nav-text" tooltip>Privacy indicators</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/restrict-opportunistic-locations" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/restrict-opportunistic-locations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/restrict-opportunistic-locations" ><span class="devsite-nav-text" tooltip>Restrict opportunistic locations</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/restricted-screen-reading" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/restricted-screen-reading" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/restricted-screen-reading" ><span class="devsite-nav-text" tooltip>Restricted screen reading</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/permissions/android-roles" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/android-roles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/android-roles" ><span class="devsite-nav-text" tooltip>Android roles</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"><a href="/docs/core/permissions/runtime_perms" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/runtime_perms" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/runtime_perms" ><span class="devsite-nav-text" tooltip>Runtime permissions</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/permissions/signature-permission-allowlist" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/signature-permission-allowlist" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/signature-permission-allowlist" ><span class="devsite-nav-text" tooltip>Signature permission allowlist</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"><a href="/docs/core/permissions/tristate-perms" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/tristate-perms" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/tristate-perms" ><span class="devsite-nav-text" tooltip>Tristate location permissions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/usb-hal" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/usb-hal" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/usb-hal" ><span class="devsite-nav-text" tooltip>Implement USB HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/app-streaming" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/app-streaming" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/app-streaming" ><span class="devsite-nav-text" tooltip>Companion app streaming</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/fsi-limits" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/fsi-limits" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/fsi-limits" ><span class="devsite-nav-text" tooltip>Full-screen intent limits</span></a></li><li class="devsite-nav-item"><a href="/docs/core/permissions/capture-content" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/capture-content" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/capture-content" ><span class="devsite-nav-text" tooltip>Capture Content for Notes</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>Power</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/power" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/mgmt" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/mgmt" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/mgmt" ><span class="devsite-nav-text" tooltip>Power management</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/thermal-mitigation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/thermal-mitigation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/thermal-mitigation" ><span class="devsite-nav-text" tooltip>Thermal mitigation</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/power-stats-hal" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/power-stats-hal" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/power-stats-hal" ><span class="devsite-nav-text" tooltip>Power stats HAL</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/app_mgmt" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/app_mgmt" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/app_mgmt" ><span class="devsite-nav-text" tooltip>App power management</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/platform_mgmt" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/platform_mgmt" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/platform_mgmt" ><span class="devsite-nav-text" tooltip>Platform power management with Doze</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/performance" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/performance" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/performance" ><span class="devsite-nav-text" tooltip>Performance management</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/trackers" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/trackers" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/trackers" ><span class="devsite-nav-text" tooltip>App background behavior trackers</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/batteryless" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/batteryless" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/batteryless" ><span class="devsite-nav-text" tooltip>Support batteryless devices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/component" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/component" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/component" ><span class="devsite-nav-text" tooltip>Measure component power</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/device" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/device" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/device" ><span class="devsite-nav-text" tooltip>Measure device power</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/values" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/values" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/values" ><span class="devsite-nav-text" tooltip>Measure power values</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/routine-battery-saver" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/routine-battery-saver" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/routine-battery-saver" ><span class="devsite-nav-text" tooltip>Routine battery saver</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/tv-standby" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/tv-standby" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/tv-standby" ><span class="devsite-nav-text" tooltip>TV standby</span></a></li><li class="devsite-nav-item"><a href="/docs/core/power/systemsuspend" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/power/systemsuspend" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/power/systemsuspend" ><span class="devsite-nav-text" tooltip>SystemSuspend service</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>Runtime</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/runtime" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/art-class-loader-context" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/art-class-loader-context" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/art-class-loader-context" ><span class="devsite-nav-text" tooltip>Dexpreopt and &lt;uses-library&gt; checks</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/improvements" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/improvements" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/improvements" ><span class="devsite-nav-text" tooltip>Android 8.0 ART improvements</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/dalvik-bytecode" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/dalvik-bytecode" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/dalvik-bytecode" ><span class="devsite-nav-text" tooltip>Dalvik bytecode format</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/dex-format" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/dex-format" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/dex-format" ><span class="devsite-nav-text" tooltip>Dalvik executable format</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/instruction-formats" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/instruction-formats" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/instruction-formats" ><span class="devsite-nav-text" tooltip>Dalvik executable instruction formats</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/constraints" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/constraints" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/constraints" ><span class="devsite-nav-text" tooltip>Constraints</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>Configuration</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/runtime/configure" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/configure" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/configure" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/runtime/configure/art-service" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/configure/art-service" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/configure/art-service" ><span class="devsite-nav-text" tooltip>ART Service configuration</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"><a href="/docs/core/runtime/configure/package-manager" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/configure/package-manager" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/configure/package-manager" ><span class="devsite-nav-text" tooltip>Package manager configuration (deprecated)</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/runtime/art-ti" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/art-ti" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/art-ti" ><span class="devsite-nav-text" tooltip>ART TI</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/signed-config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/signed-config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/signed-config" ><span class="devsite-nav-text" tooltip>Implement Signed Config</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/gc-debug" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/gc-debug" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/gc-debug" ><span class="devsite-nav-text" tooltip>Debug ART garbage collection</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/jit-compiler" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/jit-compiler" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/jit-compiler" ><span class="devsite-nav-text" tooltip>Implement ART JIT compiler</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/rros" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/rros" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/rros" ><span class="devsite-nav-text" tooltip>Change the value of an app&#39;s resources at runtime</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/rro-troubleshoot" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/rro-troubleshoot" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/rro-troubleshoot" ><span class="devsite-nav-text" tooltip>Troubleshoot RROs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/boot-image-profiles" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/boot-image-profiles" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/boot-image-profiles" ><span class="devsite-nav-text" tooltip>Boot image profiles</span></a></li><li class="devsite-nav-item"><a href="/docs/core/runtime/soft-restart" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/soft-restart" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/soft-restart" ><span class="devsite-nav-text" tooltip>Soft restarts (&lt;= AOSP 14)</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/runtime/zygote" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/runtime/zygote" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/runtime/zygote" ><span class="devsite-nav-text" tooltip>About the Zygote</span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></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>Settings</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/settings" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/settings" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/settings" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/settings/settings-guidelines" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/settings/settings-guidelines" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/settings/settings-guidelines" ><span class="devsite-nav-text" tooltip>Design guidelines</span></a></li><li class="devsite-nav-item"><a href="/docs/core/settings/patterns-components" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/settings/patterns-components" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/settings/patterns-components" ><span class="devsite-nav-text" tooltip>Patterns and components</span></a></li><li class="devsite-nav-item"><a href="/docs/core/settings/info-architecture" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/settings/info-architecture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/settings/info-architecture" ><span class="devsite-nav-text" tooltip>Information architecture</span></a></li><li class="devsite-nav-item"><a href="/docs/core/settings/personalized" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/settings/personalized" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/settings/personalized" ><span class="devsite-nav-text" tooltip>Personalized settings</span></a></li><li class="devsite-nav-item"><a href="/docs/core/settings/universal-search" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/settings/universal-search" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/settings/universal-search" ><span class="devsite-nav-text" tooltip>Universal search</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>Storage</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/storage" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/storage" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/storage" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/storage/traditional" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/storage/traditional" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/storage/traditional" ><span class="devsite-nav-text" tooltip>Traditional storage</span></a></li><li class="devsite-nav-item"><a href="/docs/core/storage/adoptable" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/storage/adoptable" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/storage/adoptable" ><span class="devsite-nav-text" tooltip>Adoptable storage</span></a></li><li class="devsite-nav-item"><a href="/docs/core/storage/scoped" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/storage/scoped" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/storage/scoped" ><span class="devsite-nav-text" tooltip>Scoped storage</span></a></li><li class="devsite-nav-item"><a href="/docs/core/storage/fuse-passthrough" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/storage/fuse-passthrough" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/storage/fuse-passthrough" ><span class="devsite-nav-text" tooltip>FUSE passthrough</span></a></li><li class="devsite-nav-item"><a href="/docs/core/storage/config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/storage/config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/storage/config" ><span class="devsite-nav-text" tooltip>Device configuration</span></a></li><li class="devsite-nav-item"><a href="/docs/core/storage/config-example" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/storage/config-example" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/storage/config-example" ><span class="devsite-nav-text" tooltip>Configuration examples</span></a></li><li class="devsite-nav-item"><a href="/docs/core/storage/faster-stats" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/storage/faster-stats" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/storage/faster-stats" ><span class="devsite-nav-text" tooltip>Faster statistics</span></a></li><li class="devsite-nav-item"><a href="/docs/core/storage/sdcardfs-deprecate" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/storage/sdcardfs-deprecate" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/storage/sdcardfs-deprecate" ><span class="devsite-nav-text" tooltip>SDCardFS deprecation</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>Tests</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Test development workflow</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/tests/development" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/blueprints" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/blueprints" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/blueprints" ><span class="devsite-nav-text" tooltip>Simple build configuration</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/test-config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/test-config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/test-config" ><span class="devsite-nav-text" tooltip>Complex test configuration</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>Instrumentation tests</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/development/instrumentation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/instrumentation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/instrumentation" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/instr-self-e2e" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/instr-self-e2e" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/instr-self-e2e" ><span class="devsite-nav-text" tooltip>Self-instrumenting tests example</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/instr-app-e2e" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/instr-app-e2e" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/instr-app-e2e" ><span class="devsite-nav-text" tooltip>Target an app example</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>GoogleTests (GTests)</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/development/gtest" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/gtest" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/gtest" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/gtest-func-e2e" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/gtest-func-e2e" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/gtest-func-e2e" ><span class="devsite-nav-text" tooltip>Add new GTests</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/metrics" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/metrics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/metrics" ><span class="devsite-nav-text" tooltip>Metric tests</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/jar" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/jar" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/jar" ><span class="devsite-nav-text" tooltip>JAR host tests</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/test-mapping" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/test-mapping" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/test-mapping" ><span class="devsite-nav-text" tooltip>Test mapping</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/atest" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/atest" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/atest" ><span class="devsite-nav-text" tooltip>Run tests with Atest</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>OmniLab Android Test Station</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/development/android-test-station/ats-user-guide" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/android-test-station/ats-user-guide" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/android-test-station/ats-user-guide" ><span class="devsite-nav-text" tooltip>User guide</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/android-test-station/ats-virtual-devices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/android-test-station/ats-virtual-devices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/android-test-station/ats-virtual-devices" ><span class="devsite-nav-text" tooltip>Virtual devices in OmniLab ATS</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/android-test-station/ats-user-builds" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/android-test-station/ats-user-builds" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/android-test-station/ats-user-builds" ><span class="devsite-nav-text" tooltip>Autoenable USB debugging on user builds</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/android-test-station/ats-uicd" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/android-test-station/ats-uicd" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/android-test-station/ats-uicd" ><span class="devsite-nav-text" tooltip>Run UIConductor tests</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/android-test-station/ats-api" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/android-test-station/ats-api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/android-test-station/ats-api" ><span class="devsite-nav-text" tooltip>API</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/android-test-station/ats-release-notes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/android-test-station/ats-release-notes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/android-test-station/ats-release-notes" ><span class="devsite-nav-text" tooltip>Release notes</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/development/android-test-station/faq" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/development/android-test-station/faq" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/development/android-test-station/faq" ><span class="devsite-nav-text" tooltip>FAQ</span></a></li></ul></div></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Vendor Test Suite (VTS)</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/gtest" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/gtest" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/gtest" ><span class="devsite-nav-text" tooltip>Parameterized GTest for HAL testing</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/setup11" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/setup11" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/setup11" ><span class="devsite-nav-text" tooltip>Test setup</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/gsi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/gsi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/gsi" ><span class="devsite-nav-text" tooltip>Generic system image (GSI)</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Vendor Test Suite (VTS) 10</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/index10" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/index10" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/index10" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/vts-video" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/vts-video" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/vts-video" ><span class="devsite-nav-text" tooltip>Video tutorials</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/systems" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/systems" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/systems" ><span class="devsite-nav-text" tooltip>Systems testing with VTS</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 framework</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/vts/shell-commands" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/shell-commands" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/shell-commands" ><span class="devsite-nav-text" tooltip>Device shell commands</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/test-templates" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/test-templates" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/test-templates" ><span class="devsite-nav-text" tooltip>Test templates</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/sna-hal-testing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/sna-hal-testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/sna-hal-testing" ><span class="devsite-nav-text" tooltip>Service name aware HAL testing</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/hal-testability" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/hal-testability" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/hal-testability" ><span class="devsite-nav-text" tooltip>HAL testability check</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/multi-device-testing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/multi-device-testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/multi-device-testing" ><span class="devsite-nav-text" tooltip>Multi-device testing</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/vts-on-gsi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/vts-on-gsi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/vts-on-gsi" ><span class="devsite-nav-text" tooltip>VTS with debug ramdisk</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>VTS Dashboard</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/vts/setup" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/setup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/setup" ><span class="devsite-nav-text" tooltip>Setup</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/database" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/database" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/database" ><span class="devsite-nav-text" tooltip>Database</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/ui" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/ui" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/ui" ><span class="devsite-nav-text" tooltip>User interface</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>Lab infrastructure</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/vts/automated-test-infra" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/automated-test-infra" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/automated-test-infra" ><span class="devsite-nav-text" tooltip>Automated testing infrastructure</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/host-controller" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/host-controller" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/host-controller" ><span class="devsite-nav-text" tooltip>Host controller architecture</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/tests/vts/performance" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/vts/performance" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/vts/performance" ><span class="devsite-nav-text" tooltip>Performance testing</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Trade Federation (TF) test harness</span> </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</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/fundamentals" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/fundamentals" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/fundamentals" ><span class="devsite-nav-text" tooltip>Start</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/fundamentals/machine_setup" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/fundamentals/machine_setup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/fundamentals/machine_setup" ><span class="devsite-nav-text" tooltip>Development environment</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/fundamentals/devices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/fundamentals/devices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/fundamentals/devices" ><span class="devsite-nav-text" tooltip>Work with devices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/fundamentals/console" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/fundamentals/console" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/fundamentals/console" ><span class="devsite-nav-text" tooltip>Console</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/fundamentals/lifecycle" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/fundamentals/lifecycle" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/fundamentals/lifecycle" ><span class="devsite-nav-text" tooltip>Test lifecycle</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/fundamentals/options" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/fundamentals/options" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/fundamentals/options" ><span class="devsite-nav-text" tooltip>Option handling</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/fundamentals/full_example" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/fundamentals/full_example" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/fundamentals/full_example" ><span class="devsite-nav-text" tooltip>End-to-end example</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>Write and run Tradefed tests</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing" ><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>Test through Tradefed</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/new-test-runner" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/new-test-runner" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/new-test-runner" ><span class="devsite-nav-text" tooltip>Write a test runner</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/sharded-runner" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/sharded-runner" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/sharded-runner" ><span class="devsite-nav-text" tooltip>Write a sharded IRemoteTest test runner</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/host-driven-test" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/host-driven-test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/host-driven-test" ><span class="devsite-nav-text" tooltip>Write a host-driven test</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/host-side-deviceless-test" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/host-side-deviceless-test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/host-side-deviceless-test" ><span class="devsite-nav-text" tooltip>Write a host-side deviceless test</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/report-metrics" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/report-metrics" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/report-metrics" ><span class="devsite-nav-text" tooltip>Report metrics or data from a test</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/auto-retry" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/auto-retry" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/auto-retry" ><span class="devsite-nav-text" tooltip>Automatic test retry</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/retry-isolation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/retry-isolation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/retry-isolation" ><span class="devsite-nav-text" tooltip>Retry isolation</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/log-on-failure" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/log-on-failure" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/log-on-failure" ><span class="devsite-nav-text" tooltip>Automated log on failure collection</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/dry-run" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/dry-run" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/dry-run" ><span class="devsite-nav-text" tooltip>Dry run a configuration</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/instrumentation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/instrumentation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/instrumentation" ><span class="devsite-nav-text" tooltip>Run instrumentation tests from APKs</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/shell-test" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/shell-test" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/shell-test" ><span class="devsite-nav-text" tooltip>Write a shell test</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-tf/global-filters" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-tf/global-filters" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-tf/global-filters" ><span class="devsite-nav-text" tooltip>Global filters</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 through suites</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-suite" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-suite" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-suite" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-suite/setup" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-suite/setup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-suite/setup" ><span class="devsite-nav-text" tooltip>Set up suites</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-suite/option-passing" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-suite/option-passing" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-suite/option-passing" ><span class="devsite-nav-text" tooltip>Pass options and filters</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-suite/system-status-checker" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-suite/system-status-checker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-suite/system-status-checker" ><span class="devsite-nav-text" tooltip>Check system status</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-suite/android-test-structure" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-suite/android-test-structure" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-suite/android-test-structure" ><span class="devsite-nav-text" tooltip>AndroidTest.xml structure</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-suite/android-test-tuning" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-suite/android-test-tuning" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-suite/android-test-tuning" ><span class="devsite-nav-text" tooltip>Configure sharding</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-suite/module-controller" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-suite/module-controller" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-suite/module-controller" ><span class="devsite-nav-text" tooltip>Employ module controllers</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-suite/suite-retry" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-suite/suite-retry" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-suite/suite-retry" ><span class="devsite-nav-text" tooltip>Use suite retry</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/testing/through-suite/multi-devices-suites" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/testing/through-suite/multi-devices-suites" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/testing/through-suite/multi-devices-suites" ><span class="devsite-nav-text" tooltip>Multi-device modules</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>Develop TF</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/development" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/development" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/development" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/development/guidelines" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/development/guidelines" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/development/guidelines" ><span class="devsite-nav-text" tooltip>Test harness guidelines</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/development/eclipse" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/development/eclipse" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/development/eclipse" ><span class="devsite-nav-text" tooltip>Set up Eclipse</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/development/tf-tests" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/development/tf-tests" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/development/tf-tests" ><span class="devsite-nav-text" tooltip>Include unit and functional tests</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/development/error-prone" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/development/error-prone" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/development/error-prone" ><span class="devsite-nav-text" tooltip>Run Error Prone bug checker</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/development/contribute-noncore" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/development/contribute-noncore" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/development/contribute-noncore" ><span class="devsite-nav-text" tooltip>Contribute non-core code</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>Architecture</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture" ><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>XML configuration</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/xml-config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/xml-config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/xml-config" ><span class="devsite-nav-text" tooltip>High-level structure</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/xml-config/template-include" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/xml-config/template-include" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/xml-config/template-include" ><span class="devsite-nav-text" tooltip>Templates and includes</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/xml-config/config-object" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/xml-config/config-object" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/xml-config/config-object" ><span class="devsite-nav-text" tooltip>Configuration object</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>Global Configuration</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/advanced/global-config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/advanced/global-config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/advanced/global-config" ><span class="devsite-nav-text" tooltip>File options</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/host-setup/host-options" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/host-setup/host-options" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/host-setup/host-options" ><span class="devsite-nav-text" tooltip>Host options</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="/docs/core/tests/tradefed/architecture/advanced/keystore" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/advanced/keystore" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/advanced/keystore" ><span class="devsite-nav-text" tooltip>Keystore secrets</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/advanced/command-scheduler" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/advanced/command-scheduler" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/advanced/command-scheduler" ><span class="devsite-nav-text" tooltip>Test Command Scheduler</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/advanced/test-runner" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/advanced/test-runner" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/advanced/test-runner" ><span class="devsite-nav-text" tooltip>Structure of a test runner</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/advanced/sharding" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/advanced/sharding" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/advanced/sharding" ><span class="devsite-nav-text" tooltip>Test sharding</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/advanced/multi-device" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/advanced/multi-device" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/advanced/multi-device" ><span class="devsite-nav-text" tooltip>Run tests with multiple devices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/advanced/scripting-sl4a" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/advanced/scripting-sl4a" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/advanced/scripting-sl4a" ><span class="devsite-nav-text" tooltip>Use Scripting Layer</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/advanced/protocols-global-config" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/advanced/protocols-global-config" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/advanced/protocols-global-config" ><span class="devsite-nav-text" tooltip>Load protocols with global config</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>Device Manager</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/device-manager" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/device-manager" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/device-manager" ><span class="devsite-nav-text" tooltip>Device states</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/device-manager/device-allocation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/device-manager/device-allocation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/device-manager/device-allocation" ><span class="devsite-nav-text" tooltip>Device allocation</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/device-manager/device-detection" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/device-manager/device-detection" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/device-manager/device-detection" ><span class="devsite-nav-text" tooltip>Device detection</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</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/build-provider" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/build-provider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/build-provider" ><span class="devsite-nav-text" tooltip>Build providers</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/build-provider/build-info" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/build-provider/build-info" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/build-provider/build-info" ><span class="devsite-nav-text" tooltip>BuildInfo</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>Device setup</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/target-preparer" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/target-preparer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/target-preparer" ><span class="devsite-nav-text" tooltip>Target preparers</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/target-preparer/multi-target" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/target-preparer/multi-target" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/target-preparer/multi-target" ><span class="devsite-nav-text" tooltip>Multi-target preparers</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>Results</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/result-reporter" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/result-reporter" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/result-reporter" ><span class="devsite-nav-text" tooltip>Create a result reporter</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/result-reporter/log-reporter" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/result-reporter/log-reporter" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/result-reporter/log-reporter" ><span class="devsite-nav-text" tooltip>Handle log files</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/result-reporter/summary" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/result-reporter/summary" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/result-reporter/summary" ><span class="devsite-nav-text" tooltip>Result reporter summary</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>Metrics</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/metrics-collector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/metrics-collector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/metrics-collector" ><span class="devsite-nav-text" tooltip>Host-driven metrics collector</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/tradefed/architecture/metrics-collector/device-collector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/tradefed/architecture/metrics-collector/device-collector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/tradefed/architecture/metrics-collector/device-collector" ><span class="devsite-nav-text" tooltip>Device-side metric collection</span></a></li></ul></div></li></ul></div></li><li class="devsite-nav-item"><a href="/reference/tradefed/packages" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /reference/tradefed/packages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/reference/tradefed/packages" ><span class="devsite-nav-text" tooltip>Package index</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Multidevice testing with Mobly</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/tests/mobly" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/mobly" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/mobly" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Debug native platform code</span> </div></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/read-bug-reports" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/read-bug-reports" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/read-bug-reports" ><span class="devsite-nav-text" tooltip>Read bug reports</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/understanding-logging" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/understanding-logging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/understanding-logging" ><span class="devsite-nav-text" tooltip>Understand logging</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/scoped-vendor-logging" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/scoped-vendor-logging" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/scoped-vendor-logging" ><span class="devsite-nav-text" tooltip>Implement scoped vendor logging</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/native-crash" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/native-crash" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/native-crash" ><span class="devsite-nav-text" tooltip>Diagnose native crashes</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>Evaluate performance</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/debug/eval_perf" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/eval_perf" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/eval_perf" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/systrace" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/systrace" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/systrace" ><span class="devsite-nav-text" tooltip>Understand systrace</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/ftrace" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/ftrace" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/ftrace" ><span class="devsite-nav-text" tooltip>Use ftrace</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/jank_capacity" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/jank_capacity" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/jank_capacity" ><span class="devsite-nav-text" tooltip>Identify capacity-related jank</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/jank_jitter" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/jank_jitter" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/jank_jitter" ><span class="devsite-nav-text" tooltip>Identify jitter-related jank</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>Feature implementation</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/tests/debug/harness" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/harness" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/harness" ><span class="devsite-nav-text" tooltip>Implement Test Harness Mode</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/gdb" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/gdb" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/gdb" ><span class="devsite-nav-text" tooltip>Use debuggers</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/native-memory" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/native-memory" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/native-memory" ><span class="devsite-nav-text" tooltip>Debug native memory use</span></a></li><li class="devsite-nav-item"><a href="/docs/core/connect/connect_tests" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/connect/connect_tests" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/connect/connect_tests" ><span class="devsite-nav-text" tooltip>Network connectivity tests</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/rescue-party" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/rescue-party" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/rescue-party" ><span class="devsite-nav-text" tooltip>Rescue party</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/storaged" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/storaged" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/storaged" ><span class="devsite-nav-text" tooltip>Implement storaged</span></a></li><li class="devsite-nav-item"><a href="/docs/core/tests/debug/strace" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/tests/debug/strace" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/tests/debug/strace" ><span class="devsite-nav-text" tooltip>Use strace</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>Updates</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/ota" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota" ><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>APEX</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/ota/apex" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/apex" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/apex" ><span class="devsite-nav-text" tooltip>APEX file format</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/vendor-apex" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/vendor-apex" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/vendor-apex" ><span class="devsite-nav-text" tooltip>Vendor APEX</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/ota/tools" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/tools" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/tools" ><span class="devsite-nav-text" tooltip>Build OTA packages</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/sign_builds" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/sign_builds" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/sign_builds" ><span class="devsite-nav-text" tooltip>Sign builds for release</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/reduce_size" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/reduce_size" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/reduce_size" ><span class="devsite-nav-text" tooltip>Reduce OTA size</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>Virtual A/B</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/ota/virtual_ab" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/virtual_ab" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/virtual_ab" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item devsite-nav-new"><a href="/docs/core/ota/virtual_ab/implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/virtual_ab/implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/virtual_ab/implement" ><span class="devsite-nav-text" tooltip>Implement Virtual A/B</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"><a href="/docs/core/ota/virtual_ab/implement-patches" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/virtual_ab/implement-patches" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/virtual_ab/implement-patches" ><span class="devsite-nav-text" tooltip>Implement Virtual A/B - patches</span></a></li><li class="devsite-nav-item devsite-nav-new"><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip></span><span class="devsite-nav-icon material-icons" data-icon="new" data-title="New!" aria-hidden="true"></span> </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>Legacy A/B system updates</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/ota/ab" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/ab" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/ab" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/ab/ab_implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/ab/ab_implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/ab/ab_implement" ><span class="devsite-nav-text" tooltip>Implement A/B updates</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/ab/ab_faqs" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/ab/ab_faqs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/ab/ab_faqs" ><span class="devsite-nav-text" tooltip>Frequently asked questions</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>(Deprecated) Non-A/B system updates</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/ota/nonab" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/nonab" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/nonab" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/nonab/block" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/nonab/block" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/nonab/block" ><span class="devsite-nav-text" tooltip>Block-based OTA</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/nonab/inside_packages" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/nonab/inside_packages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/nonab/inside_packages" ><span class="devsite-nav-text" tooltip>Inside OTA packages</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/nonab/device_code" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/nonab/device_code" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/nonab/device_code" ><span class="devsite-nav-text" tooltip>Device-specific code</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>Dynamic partitions</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/ota/dynamic_partitions" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/dynamic_partitions" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/dynamic_partitions" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/dynamic_partitions/implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/dynamic_partitions/implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/dynamic_partitions/implement" ><span class="devsite-nav-text" tooltip>Implement dynamic partitions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/dynamic_partitions/ab_launch" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/dynamic_partitions/ab_launch" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/dynamic_partitions/ab_launch" ><span class="devsite-nav-text" tooltip>OTA for A/B devices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/dynamic_partitions/ab_legacy" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/dynamic_partitions/ab_legacy" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/dynamic_partitions/ab_legacy" ><span class="devsite-nav-text" tooltip>OTA for legacy A/B devices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/dynamic_partitions/nonab" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/dynamic_partitions/nonab" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/dynamic_partitions/nonab" ><span class="devsite-nav-text" tooltip>OTA for non-A/B devices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/dynamic_partitions/how_to_size_super" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/dynamic_partitions/how_to_size_super" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/dynamic_partitions/how_to_size_super" ><span class="devsite-nav-text" tooltip>Size the super partition</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>Virtual A/B</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/ota/virtual_ab" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/virtual_ab" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/virtual_ab" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/virtual_ab/implement" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/virtual_ab/implement" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/virtual_ab/implement" ><span class="devsite-nav-text" tooltip>Implement Virtual A/B</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/virtual_ab/implement-patches" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/virtual_ab/implement-patches" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/virtual_ab/implement-patches" ><span class="devsite-nav-text" tooltip>Implement Virtual A/B - patches</span></a></li></ul></div></li><li class="devsite-nav-item"><a href="/docs/core/permissions/timezone-rules" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/permissions/timezone-rules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/permissions/timezone-rules" ><span class="devsite-nav-text" tooltip>Time zone rules</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/user-data-checkpoint" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/user-data-checkpoint" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/user-data-checkpoint" ><span class="devsite-nav-text" tooltip>User data checkpoint</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/dynamic-system-updates" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/dynamic-system-updates" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/dynamic-system-updates" ><span class="devsite-nav-text" tooltip>Dynamic system updates</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/resume-on-reboot" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/resume-on-reboot" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/resume-on-reboot" ><span class="devsite-nav-text" tooltip>Resume-on-Reboot</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/upgrade-party" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/upgrade-party" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/upgrade-party" ><span class="devsite-nav-text" tooltip>Upgrade Party for OS updates</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/upgrade_invite" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/upgrade_invite" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/upgrade_invite" ><span class="devsite-nav-text" tooltip>Upgrade Invite for pending OS updates</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>Mainline</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/adservices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/adservices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/adservices" ><span class="devsite-nav-text" tooltip>AdServices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/adbd" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/adbd" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/adbd" ><span class="devsite-nav-text" tooltip>adbd</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/android-health" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/android-health" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/android-health" ><span class="devsite-nav-text" tooltip>Android Health</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/appsearch" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/appsearch" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/appsearch" ><span class="devsite-nav-text" tooltip>AppSearch</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/art" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/art" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/art" ><span class="devsite-nav-text" tooltip>ART</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/bluetooth" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/bluetooth" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/bluetooth" ><span class="devsite-nav-text" tooltip>Bluetooth</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/cellbroadcast" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/cellbroadcast" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/cellbroadcast" ><span class="devsite-nav-text" tooltip>CellBroadcast</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/config-infrastructure" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/config-infrastructure" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/config-infrastructure" ><span class="devsite-nav-text" tooltip>Config Infrastructure</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/conscrypt" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/conscrypt" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/conscrypt" ><span class="devsite-nav-text" tooltip>Conscrypt</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/scheduling" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/scheduling" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/scheduling" ><span class="devsite-nav-text" tooltip>Device Scheduling</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/dns-resolver" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/dns-resolver" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/dns-resolver" ><span class="devsite-nav-text" tooltip>DNS Resolver</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/documentsui" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/documentsui" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/documentsui" ><span class="devsite-nav-text" tooltip>DocumentsUI</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/extservices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/extservices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/extservices" ><span class="devsite-nav-text" tooltip>ExtServices</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/ipsec" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/ipsec" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/ipsec" ><span class="devsite-nav-text" tooltip>IPsec/IKEv2 Library</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/media" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/media" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/media" ><span class="devsite-nav-text" tooltip>Media</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/mediaprovider" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/mediaprovider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/mediaprovider" ><span class="devsite-nav-text" tooltip>MediaProvider</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/metadata" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/metadata" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/metadata" ><span class="devsite-nav-text" tooltip>ModuleMetadata</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/networking" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/networking" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/networking" ><span class="devsite-nav-text" tooltip>Network Stack</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/nnapi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/nnapi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/nnapi" ><span class="devsite-nav-text" tooltip>NNAPI Runtime</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/ondevicepersonalization" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/ondevicepersonalization" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/ondevicepersonalization" ><span class="devsite-nav-text" tooltip>OnDevicePersonalization</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/permissioncontroller" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/permissioncontroller" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/permissioncontroller" ><span class="devsite-nav-text" tooltip>PermissionController</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/remote-key-provisioning" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/remote-key-provisioning" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/remote-key-provisioning" ><span class="devsite-nav-text" tooltip>Remote Key Provisioning</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/sdk-extension" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/sdk-extension" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/sdk-extension" ><span class="devsite-nav-text" tooltip>SDK Extensions</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/statsd" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/statsd" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/statsd" ><span class="devsite-nav-text" tooltip>Statsd</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/tethering" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/tethering" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/tethering" ><span class="devsite-nav-text" tooltip>Tethering</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/timezone" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/timezone" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/timezone" ><span class="devsite-nav-text" tooltip>Time Zone Data</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/uwb" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/uwb" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/uwb" ><span class="devsite-nav-text" tooltip>UWB</span></a></li><li class="devsite-nav-item"><a href="/docs/core/ota/modular-system/wifi" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/ota/modular-system/wifi" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/ota/modular-system/wifi" ><span class="devsite-nav-text" tooltip>Wi-Fi</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>Virtualization</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/docs/core/virtualization" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/docs/core/virtualization/whyavf" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization/whyavf" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization/whyavf" ><span class="devsite-nav-text" tooltip>Why AVF</span></a></li><li class="devsite-nav-item"><a href="/docs/core/virtualization/tryavf" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization/tryavf" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization/tryavf" ><span class="devsite-nav-text" tooltip>Try AVF</span></a></li><li class="devsite-nav-item"><a href="/docs/core/virtualization/writeavfapp" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization/writeavfapp" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization/writeavfapp" ><span class="devsite-nav-text" tooltip>Write an AVF app</span></a></li><li class="devsite-nav-item"><a href="/docs/core/virtualization/architecture" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization/architecture" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization/architecture" ><span class="devsite-nav-text" tooltip>AVF Architecture</span></a></li><li class="devsite-nav-item"><a href="/docs/core/virtualization/microdroid" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization/microdroid" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization/microdroid" ><span class="devsite-nav-text" tooltip>Microdroid</span></a></li><li class="devsite-nav-item"><a href="/docs/core/virtualization/virtualization-service" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization/virtualization-service" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization/virtualization-service" ><span class="devsite-nav-text" tooltip>VirtualizationService</span></a></li><li class="devsite-nav-item"><a href="/docs/core/virtualization/security" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization/security" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization/security" ><span class="devsite-nav-text" tooltip>Security</span></a></li><li class="devsite-nav-item"><a href="/docs/core/virtualization/pkvm-modules" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization/pkvm-modules" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization/pkvm-modules" ><span class="devsite-nav-text" tooltip>Implement a pKVM vendor module</span></a></li><li class="devsite-nav-item"><a href="/docs/core/virtualization/usecases" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /docs/core/virtualization/usecases" track-type="bookNav" track-name="click" track-metadata-eventdetail="/docs/core/virtualization/usecases" ><span class="devsite-nav-text" tooltip>Use cases</span></a></li></ul></div></li> </ul> <ul class="devsite-nav-list" menu="Docs" 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 > What&#39;s new? </span> </span> </li> <li class="devsite-nav-item"> <a href="/docs/whatsnew/release-notes" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Release notes" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Release notes </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/whatsnew/latest-security-bulletins" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Latest security bulletins" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Latest security bulletins </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/whatsnew/latest-cdd" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Latest Compatibility Definition Document (CDD)" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Latest Compatibility Definition Document (CDD) </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/whatsnew/site-updates" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Site updates" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Site updates </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Getting Started </span> </span> </li> <li class="devsite-nav-item"> <a href="/docs/setup/about" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: About" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > About </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/setup/start" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Start" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Start </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/setup/download" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Download" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Download </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/setup/build" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Build" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Build </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/setup/test" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Test" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Test </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/setup/create/coding-tasks" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Create" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Create </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/setup/contribute" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Contribute" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Contribute </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/setup/community/cofc" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Community" track-type="navMenu" 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="/docs/setup/reference" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Tools, build, and related reference" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Tools, build, and related reference </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="/docs/security/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Overview" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Overview </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/security/bulletin" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Bulletins" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Bulletins </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/security/features" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Features" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Features </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/security/test/fuzz-sanitize" 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"> <a href="/docs/security/best-practices" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Best Practices" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Best Practices </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Core Topics </span> </span> </li> <li class="devsite-nav-item"> <a href="/docs/core/architecture" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Architecture" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Architecture </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/audio" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Audio" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Audio </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/camera" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Camera" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Camera </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/connect" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Connectivity" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Connectivity </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/data" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Data" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Data </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/display" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Display" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Display </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/fonts/custom-font-fallback" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Fonts" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Fonts </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/graphics" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Graphics" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Graphics </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/interaction" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Interaction" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Interaction </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/media" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Media" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Media </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/perf" 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="/docs/core/permissions" 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="/docs/core/power" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Power" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Power </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/runtime" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Runtime" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Runtime </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/settings" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Settings" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Settings </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/storage" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Storage" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Storage </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/tests" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Tests" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Tests </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/ota" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Updates" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Updates </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/core/virtualization" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Virtualization" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Virtualization </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Compatibility </span> </span> </li> <li class="devsite-nav-item"> <a href="/docs/compatibility/cdd" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Compatibility Definition Document (CDD)" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Compatibility Definition Document (CDD) </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/compatibility/cts" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Compatibility Test Suite (CTS)" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Compatibility Test Suite (CTS) </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Android Devices </span> </span> </li> <li class="devsite-nav-item"> <a href="/docs/devices/cuttlefish" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cuttlefish" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Cuttlefish </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/devices/admin" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Enterprise" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Enterprise </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/devices/tv" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TV" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > TV </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Automotive </span> </span> </li> <li class="devsite-nav-item"> <a href="/docs/automotive/start/what_automotive" 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"> <a href="/docs/automotive/guidelines" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Guidelines for Development" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Guidelines for Development </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/automotive/dev-tools" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Development Tools" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Development Tools </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/automotive/tools" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Testing Tools and Infrastructure" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Testing Tools and Infrastructure </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs/automotive/start/releases" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Release Details" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Release Details </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Reference </span> </span> </li> <li class="devsite-nav-item"> <a href="/reference/hidl" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: HIDL" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > HIDL </span> </a> </li> <li class="devsite-nav-item"> <a href="/reference/hal" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: HAL" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > HAL </span> </a> </li> <li class="devsite-nav-item"> <a href="/reference/tradefed/classes" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Trade Federation" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Trade Federation </span> </a> </li> <li class="devsite-nav-item"> <a href="/reference/sts/classes" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Security Test Suite" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Security Test Suite </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://source.android.com/" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Android Open Source Project" > AOSP </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://source.android.com/docs" 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="" > Docs </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://source.android.com/docs/core" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="3" track-type="globalNav" track-name="breadcrumb" track-metadata-position="3" track-metadata-eventdetail="" > Core Topics </a> </li> </ul> <devsite-thumb-rating position="header"> </devsite-thumb-rating> </div> <h1 class="devsite-page-title" tabindex="-1"> Camera </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> <div class="devsite-article-body clearfix "> <!-- Copyright 2017 The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <img style="float: right; margin: 0 15px 15px 15px;" src="/static/docs/core/camera/images/ape_fwk_hal_camera.png" alt="Android Camera HAL icon"> <p>Android's camera hardware abstraction layer (HAL) connects the higher-level camera framework APIs in <a href="http://developer.android.com/reference/android/hardware/package-summary.html"> Camera 2</a> to your underlying camera driver and hardware. The camera subsystem includes implementations for camera pipeline components while the camera HAL provides interfaces for use in implementing your version of these components.</p> <aside class="note"><strong>Note:</strong> If you are implementing the Camera HAL on Android 8.0 and higher, you must use the HIDL interface. For information on the legacy components, see <a href="#architecture-legacy">Legacy HAL components</a>.</aside> <h2 id="architecture" data-text="Architecture" tabindex="-1">Architecture</h2> <p>The following figure and list describe the HAL components.</p> <img src="/static/docs/core/camera/images/ape_fwk_camera2.png" alt="Android camera architecture" id="figure1"> <p class="img-caption"><strong>Figure 1.</strong> Camera architecture</p> <dl> <dt>app framework</dt> <dd>At the app framework level is the app's code, which uses the <a href="https://developer.android.com/reference/android/hardware/camera2/package-summary"> Camera 2</a> API to interact with the camera hardware. Internally, this code calls corresponding <a href="https://developer.android.com/reference/android/os/Binder.html"> Binder</a> interfaces to access the native code that interacts with the camera.</dd> <dt>AIDL</dt> <dd>The binder interface associated with <code translate="no" dir="ltr">CameraService</code> can be found at <a href="https://android.googlesource.com/platform/frameworks/av/+/main/camera/aidl/android/hardware/ICameraService.aidl"> frameworks/av/camera/aidl/android/hardware</a>. The generated code calls the lower level native code to obtain access to the physical camera and returns data that is used to create the <a href="https://developer.android.com/reference/android/hardware/camera2/CameraDevice"> <code translate="no" dir="ltr">CameraDevice</code></a> and eventually <a href="https://developer.android.com/reference/android/hardware/camera2/CameraCaptureSession.html"> <code translate="no" dir="ltr">CameraCaptureSession</code></a> objects at the framework level.</dd> <dt>native framework<dt> <dd>This framework residing in <code translate="no" dir="ltr">frameworks/av/</code> provides a native equivalent to the <a href="https://developer.android.com/reference/android/hardware/camera2/CameraDevice"> <code translate="no" dir="ltr">CameraDevice</code></a> and <a href="https://developer.android.com/reference/android/hardware/camera2/CameraCaptureSession"> <code translate="no" dir="ltr">CameraCaptureSession</code></a> classes. See also <a href="https://developer.android.com/ndk/reference/group/camera"> NDK camera2 reference</a>.</dd> <dt>binder IPC interface</dt> <dd>The IPC binder interface facilitates communication over process boundaries. There are several camera binder classes located in the <code translate="no" dir="ltr">frameworks/av/camera/camera/aidl/android/hardware</code> directory that call into camera service. <a href="https://android.googlesource.com/platform/frameworks/av/+/main/camera/aidl/android/hardware/ICameraService.aidl"> <code translate="no" dir="ltr">ICameraService</code></a> is the interface to the camera service; <a href="https://android.googlesource.com/platform/frameworks/av/+/main/camera/aidl/android/hardware/camera2/ICameraDeviceUser.aidl"> <code translate="no" dir="ltr">ICameraDeviceUser</code></a> is the interface to a specific opened camera device; and <a href="https://android.googlesource.com/platform/frameworks/av/+/main/camera/aidl/android/hardware/ICameraServiceListener.aidl"> <code translate="no" dir="ltr">ICameraServiceListener</code></a> and <a href="https://android.googlesource.com/platform/frameworks/av/+/main/camera/aidl/android/hardware/camera2/ICameraDeviceCallbacks.aidl"> <code translate="no" dir="ltr">ICameraDeviceCallbacks</code></a> are the respective <code translate="no" dir="ltr">CameraService</code> and <code translate="no" dir="ltr">CameraDevice</code> callbacks to the app framework.</dd> <dt>camera service</dt> <dd>The camera service, located in <code translate="no" dir="ltr">frameworks/av/services/camera/libcameraservice/CameraService.cpp</code>, is the actual code that interacts with the HAL.</dd> <dt>HAL</dt> <dd>The hardware abstraction layer defines the standard interface that the camera service calls into and that you must implement to have your camera hardware function correctly.</dd> </dl> <h2 id="implementing" data-text="Implement the HAL" tabindex="-1">Implement the HAL</h2> <p>The HAL sits between the camera driver and the higher-level Android framework and defines an interface that you must implement so apps can correctly operate the camera hardware. The <a href="/docs/core/architecture/hidl">HIDL</a> interfaces for the Camera HAL are defined in <a href="https://android.googlesource.com/platform/hardware/interfaces/+/main/camera/"> hardware/interfaces/camera</a>.</p> <p>A typical binderized HAL must implement the following HIDL interfaces:</p> <ul> <li><a href="https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/main/camera/provider/2.4/ICameraProvider.hal"> <code translate="no" dir="ltr">ICameraProvider</code></a>: For enumerating individual devices and managing their status.</li> <li><a href="https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/main/camera/device/3.2/ICameraDevice.hal"> <code translate="no" dir="ltr">ICameraDevice</code></a>: The camera device interface.</li> <li><a href="https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/main/camera/device/3.2/ICameraDeviceSession.hal"> <code translate="no" dir="ltr">ICameraDeviceSession</code></a>: The active camera device session interface.</li> </ul> <p>Reference HIDL implementations are available for <a href="https://android.googlesource.com/platform/hardware/interfaces/+/main/camera/provider/2.4/default/CameraProvider_2_4.cpp"><code translate="no" dir="ltr">CameraProvider.cpp</code></a>, <a href="https://android.googlesource.com/platform/hardware/interfaces/+/main/camera/device/3.2/default/CameraDevice.cpp"> <code translate="no" dir="ltr">CameraDevice.cpp</code>,</a> and <a href="https://android.googlesource.com/platform/hardware/interfaces/+/main/camera/device/3.2/default/CameraDeviceSession.cpp"><code translate="no" dir="ltr">CameraDeviceSession.cpp</code></a>. The implementation wraps old HALs that still use the <a href="https://android.googlesource.com/platform/hardware/libhardware/+/main/include/hardware/camera3.h">legacy API</a>. Starting with Android 8.0, Camera HAL implementations must use the HIDL API; use of the legacy interface isn't supported.</p> <h3 id="input-validation" data-text="Input validation" tabindex="-1">Input validation</h3> <p>Because the HAL has access to different resources than the camera service, the boundary between the two is treated as a security boundary. This means parameters passed from the camera service are considered untrusted and unsanitized. To prevent security vulnerabilities that allow attackers to escalate privileges or access data they aren't intended to have access to, the camera HAL must validate parameters passed from the camera service to the HAL. This includes checking that buffer length values are within allowable ranges and sanitizing the parameters before use and before passing them to hardware or kernel drivers.</p> <h2 id="legacy-hal" data-text="Legacy HAL components" tabindex="-1">Legacy HAL components</h2> <p>This section describes the architecture of the legacy HAL components and how to implement the HAL. Camera HAL implementations on Android 8.0 and higher must use the HIDL API instead, described above.</p> <h3 id="architecture-legacy" data-text="Architecture (legacy)" tabindex="-1">Architecture (legacy)</h3> <p>The following figure and list describe the legacy camera HAL components.</p> <img src="/static/docs/core/camera/images/ape_fwk_camera.png" alt="Android camera architecture" id="figure2"> <p class="img-caption"><strong>Figure 2.</strong> Legacy camera architecture</p> <dl> <dt>app framework</dt> <dd>At the app framework level is the app's code, which uses the <a href="http://developer.android.com/reference/android/hardware/Camera.html"> <code translate="no" dir="ltr">android.hardware.Camera</code></a> API to interact with the camera hardware. Internally, this code calls a corresponding JNI glue class to access the native code that interacts with the camera.</dd> <dt>JNI</dt> <dd>The JNI code associated with <a href="http://developer.android.com/reference/android/hardware/Camera.html"> <code translate="no" dir="ltr">android.hardware.Camera</code></a> is located in <code translate="no" dir="ltr">frameworks/base/core/jni/android_hardware_Camera.cpp</code>. This code calls the lower-level native code to obtain access to the physical camera and returns data that is used to create the <a href="http://developer.android.com/reference/android/hardware/Camera.html"> <code translate="no" dir="ltr">android.hardware.Camera</code></a> object at the framework level.</dd> <dt>native framework<dt> <dd>The native framework defined in <code translate="no" dir="ltr">frameworks/av/camera/Camera.cpp</code> provides a native equivalent to the <a href="http://developer.android.com/reference/android/hardware/Camera.html"> <code translate="no" dir="ltr">android.hardware.Camera</code></a> class. This class calls the IPC binder proxies to obtain access to the camera service.</dd> <dt>binder IPC proxies</dt> <dd>The IPC binder proxies facilitate communication over process boundaries. There are three camera binder classes that are located in the <code translate="no" dir="ltr">frameworks/av/camera</code> directory that calls into camera service. <code translate="no" dir="ltr">ICameraService</code> is the interface to the camera service, <code translate="no" dir="ltr">ICamera</code> is the interface to a specific opened camera device, and <code translate="no" dir="ltr">ICameraClient</code> is the device's interface back to the app framework.</dd> <dt>camera service</dt> <dd>The camera service, located in <code translate="no" dir="ltr">frameworks/av/services/camera/libcameraservice/CameraService.cpp</code>, is the actual code that interacts with the HAL.</dd> <dt>HAL</dt> <dd>The hardware abstraction layer defines the standard interface that the camera service calls into and that you must implement to have your camera hardware function correctly.</dd> <dt>kernel driver</dt> <dd>The camera's driver interacts with the actual camera hardware and your implementation of the HAL. The camera and driver must support YV12 and NV21 image formats to provide support for previewing the camera image on the display and video recording.</dd> </dl> <h3 id="implementing-legacy" data-text="Implement the HAL (legacy)" tabindex="-1">Implement the HAL (legacy)</h3> <p>The HAL sits between the camera driver and the higher-level Android framework and defines an interface that you must implement so apps can correctly operate the camera hardware. The HAL interface is defined in the <code translate="no" dir="ltr">hardware/libhardware/include/hardware/camera.h</code> and <code translate="no" dir="ltr">hardware/libhardware/include/hardware/camera_common.h</code> header files. </p> <p><code translate="no" dir="ltr">camera_common.h</code> defines <code translate="no" dir="ltr">camera_module</code>, a standard structure to obtain general information about the camera, such as the camera ID and properties common to all cameras (that is, whether it is a front- or back-facing camera).</p> <p> <code translate="no" dir="ltr">camera.h</code> contains code that corresponds to <a href="http://developer.android.com/reference/android/hardware/Camera.html"> <code translate="no" dir="ltr">android.hardware.Camera</code></a>. This header file declares a <code translate="no" dir="ltr">camera_device</code> struct that in turn contains a <code translate="no" dir="ltr">camera_device_ops</code> struct with pointers to functions that implement the HAL interface. For documentation on the camera parameters developers can set, refer to <code translate="no" dir="ltr">frameworks/av/include/camera/CameraParameters.h</code>. These parameters are set with the function pointed to by <code translate="no" dir="ltr">int (*set_parameters)(struct camera_device *, const char *parms)</code> in the HAL. </p> <p>For an example of a HAL implementation, refer to the implementation for the Galaxy Nexus HAL in <code translate="no" dir="ltr">hardware/ti/omap4xxx/camera</code>.</p> <h3 id="configuring" data-text="Configure the shared library" tabindex="-1">Configure the shared library</h3> <p>Set up the Android build system to correctly package the HAL implementation into a shared library and copy it to the appropriate location by creating an <code translate="no" dir="ltr">Android.mk</code> file:</p> <ol> <li>Create a <code translate="no" dir="ltr">device/&lt;company_name&gt;/&lt;device_name&gt;/camera</code> directory to contain your library's source files.</li> <li>Create an <code translate="no" dir="ltr">Android.mk</code> file to build the shared library. Ensure that the makefile contains the following lines: <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded> LOCAL_MODULE := camera.&lt;device_name&gt; LOCAL_MODULE_RELATIVE_PATH := hw </pre></devsite-code> <p>Your library must be named <code translate="no" dir="ltr">camera.&lt;device_name&gt;</code> (<code translate="no" dir="ltr">.so</code> is appended automatically), so Android can correctly load the library. For an example, see the makefile for the Galaxy Nexus camera located in <code translate="no" dir="ltr">hardware/ti/omap4xxx/Android.mk</code>.</p></li> <li>Specify your device has camera features by copying the necessary feature XML files in the <code translate="no" dir="ltr">frameworks/native/data/etc</code> directory with your device's makefile. For example, to specify your device has a camera flash and can autofocus, add the following lines in your device's <code translate="no" dir="ltr">&lt;device&gt;/&lt;company_name&gt;/&lt;device_name&gt;/device.mk</code> makefile: <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded> PRODUCT_COPY_FILES := \ ... PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:system/etc/permissions/android.hardware.camera.flash-autofocus.xml \ </pre></devsite-code> <p>For an example of a device makefile, see <code translate="no" dir="ltr">device/samsung/tuna/device.mk</code>.</p></li> <li>Declare your camera’s media codec, format, and resolution capabilities in <code translate="no" dir="ltr">device/&lt;company_name&gt;/&lt;device_name&gt;/media_profiles.xml</code> and <code translate="no" dir="ltr">device/&lt;company_name&gt;/&lt;device_name&gt;/media_codecs.xml</code> XML files. For details, see <a href="/docs/core/media#expose">Exposing codecs to the framework</a>.</li> <li>Add the following lines in your device's <code translate="no" dir="ltr">device/&lt;company_name&gt;/&lt;device_name&gt;/device.mk</code> makefile to copy the <code translate="no" dir="ltr">media_profiles.xml</code> and <code translate="no" dir="ltr">media_codecs.xml</code> files to the appropriate location: <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded> # media config xml file PRODUCT_COPY_FILES += \ &lt;device&gt;/&lt;company&gt;/&lt;device&gt;/media_profiles.xml:system/etc/media_profiles.xml # media codec config xml file PRODUCT_COPY_FILES += \ &lt;device&gt;/&lt;company&gt;/&lt;device&gt;/media_codecs.xml:system/etc/media_codecs.xml </pre></devsite-code></li> <li>To include the Camera app in your device's system image, specify it in the <code translate="no" dir="ltr">PRODUCT_PACKAGES</code> variable in your device's <code translate="no" dir="ltr">device/&lt;company&gt;/&lt;device&gt;/device.mk</code> makefile: <div></div><devsite-code><pre class="devsite-click-to-copy" translate="no" dir="ltr" is-upgraded> PRODUCT_PACKAGES := \ Gallery2 \ ... </pre></devsite-code></li> </ol> </div> <devsite-thumb-rating position="footer"> </devsite-thumb-rating> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-content-footer class="nocontent"> <p>Content and code samples on this page are subject to the licenses described in the <a href="/license">Content License</a>. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.</p> <p>Last updated 2024-08-26 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-08-26 UTC."],[],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> </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">Build</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//android.googlesource.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Android repository </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/source/requirements" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Requirements </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/source/downloading" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Downloading </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//developers.google.com/android/blobs-preview/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Preview binaries </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//developers.google.com/android/images/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Factory images </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//developers.google.com/android/drivers/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)" > Driver binaries </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Connect</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//twitter.com/Android/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > @Android on Twitter </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//twitter.com/AndroidDev/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > @AndroidDev on Twitter </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//blog.google/products/android/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Android Blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//security.googleblog.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Google Security Blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//groups.google.com/forum/?fromgroups#!forum/android-platform/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Platform on Google Groups </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//groups.google.com/forum/?fromgroups#!forum/android-building/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)" > Building on Google Groups </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//groups.google.com/forum/?fromgroups#!forum/android-porting/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 7)" > Porting on Google Groups </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Get help</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//support.google.com/android/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Android Help Center </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//support.google.com/pixelphone/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Pixel Help Center </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//www.android.com" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > www.android.com </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//www.android.com/gms/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)" > Google Mobile Services </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//stackoverflow.com/questions/tagged/android-source/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)" > Stack Overflow </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//issuetracker.google.com/issues?q=status:open%20componentid:190923" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)" > Issue Tracker </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-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="/source/" data-category="Site-Wide Custom Events" data-label="Footer About Android link" > About Android </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/source/community" data-category="Site-Wide Custom Events" data-label="Footer Community link" > Community </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/legal" data-category="Site-Wide Custom Events" data-label="Footer Legal link" > Legal </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/license" data-category="Site-Wide Custom Events" data-label="Footer License link" > License </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//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="//issuetracker.google.com/issues/new?component=191476" data-category="Site-Wide Custom Events" data-label="Footer Site feedback link" > Site feedback </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> </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" >Español</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" >Português</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-2TQ26MFY2E&#34;, &#34;purpose&#34;: 0}], &#34;ga4p&#34;: [{&#34;id&#34;: &#34;G-2TQ26MFY2E&#34;, &#34;purpose&#34;: 0}], &#34;gtm&#34;: [], &#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 Open Source Project&#34;, &#34;signedIn&#34;: &#34;False&#34;, &#34;tenant&#34;: &#34;androidsource&#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> <script nonce="Nx+GranqMwZtfoK0K0jKfxbpQ2Z5Br"> (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/androidsource/js/app_loader.js', '[7,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/androidsource","https://androidsource-dot-devsite-v2-prod.appspot.com",1,null,["/_pwa/androidsource/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/androidsource/images/favicon.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/androidsource/images/lockup.svg","https://fonts.googleapis.com/css?family=Roboto:300,400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg","source.android.com","AIzaSyAQk0fBONSGUqCNznf6Krs82Ap1-NV6J4o","AIzaSyCCxcqdrZ_7QMeLCRY20bh_SXdAYqy70KY",null,null,null,["CloudShell__cloud_shell_button","Profiles__enable_awarding_url","MiscFeatureFlags__enable_firebase_utm","Profiles__enable_recognition_badges","Search__enable_dynamic_content_confidential_banner","Cloud__enable_free_trial_server_call","EngEduTelemetry__enable_engedu_telemetry","CloudShell__cloud_code_overflow_menu","Cloud__enable_cloud_shell","Cloud__enable_cloud_dlp_service","Experiments__reqs_query_experiments","DevPro__enable_developer_subscriptions","BookNav__enable_tenant_cache_key","MiscFeatureFlags__developers_footer_dark_image","MiscFeatureFlags__enable_explain_this_code","Search__enable_page_map","Profiles__enable_developer_profiles_callout","MiscFeatureFlags__enable_view_transitions","DevPro__enable_cloud_innovators_plus","Profiles__enable_profile_collections","Profiles__enable_completecodelab_endpoint","TpcFeatures__enable_required_headers","Analytics__enable_clearcut_logging","MiscFeatureFlags__enable_project_variables","MiscFeatureFlags__emergency_css","Concierge__enable_pushui","MiscFeatureFlags__developers_footer_image","Cloud__enable_llm_concierge_chat","Cloud__enable_legacy_calculator_redirect","Cloud__enable_cloud_shell_fte_user_flow","MiscFeatureFlags__enable_variable_operator","Search__enable_suggestions_from_borg","Cloud__enable_cloudx_experiment_ids","Profiles__enable_public_developer_profiles","Profiles__enable_complete_playlist_endpoint","Cloud__enable_cloud_facet_chat","TpcFeatures__enable_mirror_tenant_redirects","Profiles__enable_page_saving","Profiles__enable_dashboard_curated_recommendations","Profiles__require_profile_eligibility_for_signin","Cloud__enable_cloudx_ping","Profiles__enable_release_notes_notifications","Search__enable_ai_eligibility_checks"],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",[7,"androidsource","Android Open Source Project","source.android.com",null,"androidsource-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]],null,null,null,[1,null,1],[1,1,null,null,1]],null,[29,null,null,null,null,null,"/images/lockup.svg","/images/touchicon-180.png",null,null,null,null,null,1,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],null,[[null,null,null,[3,7],null,null,[1,[["docType","Choose a content type",[["Guide",null,null,null,null,null,null,null,null,"Guide"],["ReleaseNotes",null,null,null,null,null,null,null,null,"Release Notes"]]],["category","Choose a topic",[["Architecture",null,null,null,null,null,null,null,null,"Architecture"],["Automotive",null,null,null,null,null,null,null,null,"Automotive"],["AndroidBuilding",null,null,null,null,null,null,null,null,"Building"],["AndroidConnectivity",null,null,null,null,null,null,null,null,"Connectivity"],["Camera",null,null,null,null,null,null,null,null,"Camera"],["Compatibility",null,null,null,null,null,null,null,null,"Compatibility"],["Drivers",null,null,null,null,null,null,null,null,"Drivers"],["Graphics",null,null,null,null,null,null,null,null,"Graphics"],["Media",null,null,null,null,null,null,null,null,"Media"],["Security",null,null,null,null,null,null,null,null,"Security"],["Testing",null,null,null,null,null,null,null,null,"Testing"]]]]]],[1,1],null,1],[[null,null,null,null,null,null,null,[["G-2TQ26MFY2E"],null,null,[["G-2TQ26MFY2E",1]]],null,null,null,null,1]],null,4],null,"pk_live_5170syrHvgGVmSx9sBrnWtA5luvk9BwnVcvIi7HizpwauFG96WedXsuXh790rtij9AmGllqPtMLfhe2RSwD6Pn38V00uBCydV4m"]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>

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