CINXE.COM
Google Developers
<!doctype html> <html lang="en" dir="ltr"> <head><script type="text/javascript" src="/_static/js/bundle-playback.js?v=HxkREWBo" charset="utf-8"></script> <script type="text/javascript" src="/_static/js/wombat.js?v=txqj7nKC" charset="utf-8"></script> <script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script> <script type="text/javascript" src="/_static/js/ruffle/ruffle.js"></script> <script type="text/javascript"> __wm.init("https://web.archive.org/web"); __wm.wombat("https://developers.google.com/products/","20210502230816","https://web.archive.org/","web","/_static/", "1619996896"); </script> <link rel="stylesheet" type="text/css" href="/_static/css/banner-styles.css?v=S1zqJCYt" /> <link rel="stylesheet" type="text/css" href="/_static/css/iconochive.css?v=3PDvdIFv" /> <!-- End Wayback Rewrite JS Include --> <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="Google Developers"> <meta property="og:type" content="website"> <meta name="theme-color" content="#ffffff"> <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="/web/20210502230816/https://developers.google.com/_pwa/developers/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//web.archive.org/web/20210502230816/https://www.gstatic.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20210502230816/https://fonts.gstatic.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20210502230816/https://fonts.googleapis.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20210502230816/https://apis.google.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20210502230816/https://www.google-analytics.com/" crossorigin> <link rel="stylesheet" href="//web.archive.org/web/20210502230816cs_/https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700|Material+Icons"> <link rel="stylesheet" href="https://web.archive.org/web/20210502230816cs_/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers/css/app.css"> <link rel="shortcut icon" href="https://web.archive.org/web/20210502230816im_/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers/images/favicon.png"> <link rel="apple-touch-icon" href="https://web.archive.org/web/20210502230816im_/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers/images/touchicon-180.png"><link rel="canonical" href="https://web.archive.org/web/20210502230816/https://developers.google.com/products"><link rel="search" type="application/opensearchdescription+xml" title="Google Developers" href="https://web.archive.org/web/20210502230816/https://developers.google.com/s/opensearch.xml"> <title>Google Developers</title> <meta property="og:title" content="Google Developers"> <meta property="og:url" content="https://web.archive.org/web/20210502230816/https://developers.google.com/products"> <meta property="og:locale" content="en"> </head> <body class="" template="landing" theme="white" type="landing" layout="full" pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"><devsite-header> <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="/web/20210502230816/https://developers.google.com/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="googleDevelopers" track-metadata-position="nav" track-metadata-eventdetail="nav"> <img src="https://web.archive.org/web/20210502230816im_/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers/images/lockup.svg" class="devsite-site-logo" alt="Google Developers"> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list"> <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> </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 dropdown active> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="products" aria-label="Products, selected" data-category="Site-Wide Custom Events" data-label="Tab: Products"> Products </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Products" track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="products" data-category="Site-Wide Custom Events" data-label="Tab: Products" 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 "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Develop</li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://developer.android.com/" track-type="navMenu" track-name="Android" track-metadata-position="nav" track-metadata-href="//developer.android.com" tooltip> <div class="devsite-nav-item-title"> Android </div> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://cloud.google.com/" track-type="navMenu" track-name="Cloud" track-metadata-position="nav" track-metadata-href="//cloud.google.com" tooltip> <div class="devsite-nav-item-title"> Cloud </div> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://firebase.google.com/" track-type="navMenu" track-name="Firebase" track-metadata-position="nav" track-metadata-href="//firebase.google.com" tooltip> <div class="devsite-nav-item-title"> Firebase </div> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://flutter.dev/" track-type="navMenu" track-name="Flutter" track-metadata-position="nav" track-metadata-href="//flutter.dev" tooltip> <div class="devsite-nav-item-title"> Flutter </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/assistant" track-type="navMenu" track-name="Google Assistant" track-metadata-position="nav" track-metadata-href="https://developers.google.com/assistant" tooltip> <div class="devsite-nav-item-title"> Google Assistant </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/maps" track-type="navMenu" track-name="Maps Platform" track-metadata-position="nav" track-metadata-href="https://developers.google.com/maps" tooltip> <div class="devsite-nav-item-title"> Maps Platform </div> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://www.tensorflow.org/" track-type="navMenu" track-name="TensorFlow" track-metadata-position="nav" track-metadata-href="//www.tensorflow.org" tooltip> <div class="devsite-nav-item-title"> TensorFlow </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/web" track-type="navMenu" track-name="Web" track-metadata-position="nav" track-metadata-href="https://developers.google.com/web" tooltip> <div class="devsite-nav-item-title"> Web </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/youtube" track-type="navMenu" track-name="YouTube" track-metadata-position="nav" track-metadata-href="https://developers.google.com/youtube" tooltip> <div class="devsite-nav-item-title"> YouTube </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Grow</li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://firebase.google.com/" track-type="navMenu" track-name="Firebase" track-metadata-position="nav" track-metadata-href="//firebase.google.com" tooltip> <div class="devsite-nav-item-title"> Firebase </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/google-ads" track-type="navMenu" track-name="Google Ads" track-metadata-position="nav" track-metadata-href="https://developers.google.com/google-ads" tooltip> <div class="devsite-nav-item-title"> Google Ads </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/analytics" track-type="navMenu" track-name="Google Analytics" track-metadata-position="nav" track-metadata-href="https://developers.google.com/analytics" tooltip> <div class="devsite-nav-item-title"> Google Analytics </div> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://developer.android.com/distribute/" track-type="navMenu" track-name="Google Play" track-metadata-position="nav" track-metadata-href="//developer.android.com/distribute/" tooltip> <div class="devsite-nav-item-title"> Google Play </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/search" track-type="navMenu" track-name="Search" track-metadata-position="nav" track-metadata-href="https://developers.google.com/search" tooltip> <div class="devsite-nav-item-title"> Search </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/web/fundamentals/engage-and-retain/push-notifications" track-type="navMenu" track-name="Web Push and Notification APIs" track-metadata-position="nav" track-metadata-href="https://developers.google.com/web/fundamentals/engage-and-retain/push-notifications" tooltip> <div class="devsite-nav-item-title"> Web Push and Notification APIs </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Earn</li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/admob" track-type="navMenu" track-name="AdMob" track-metadata-position="nav" track-metadata-href="https://developers.google.com/admob" tooltip> <div class="devsite-nav-item-title"> AdMob </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/google-ads/api" track-type="navMenu" track-name="Google Ads API" track-metadata-position="nav" track-metadata-href="https://developers.google.com/google-ads/api" tooltip> <div class="devsite-nav-item-title"> Google Ads API </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/pay" track-type="navMenu" track-name="Google Pay" track-metadata-position="nav" track-metadata-href="https://developers.google.com/pay" tooltip> <div class="devsite-nav-item-title"> Google Pay </div> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://developer.android.com/google/play/billing/" track-type="navMenu" track-name="Google Play Billing" track-metadata-position="nav" track-metadata-href="//developer.android.com/google/play/billing/" tooltip> <div class="devsite-nav-item-title"> Google Play Billing </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/interactive-media-ads" track-type="navMenu" track-name="Interactive Media Ads" track-metadata-position="nav" track-metadata-href="https://developers.google.com/interactive-media-ads" tooltip> <div class="devsite-nav-item-title"> Interactive Media Ads </div> </a> </li> </ul> </div> </div> </div> </tab> <tab> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/events" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="events" data-category="Site-Wide Custom Events" data-label="Tab: Events"> Events </a> </tab> <tab> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/learn" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="learn" data-category="Site-Wide Custom Events" data-label="Tab: Learn"> Learn </a> </tab> <tab dropdown> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/community" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="developerCommunities" data-category="Site-Wide Custom Events" data-label="Tab: Developer Communities"> Developer Communities </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Developer Communities" track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="developerCommunities" data-category="Site-Wide Custom Events" data-label="Tab: Developer Communities" 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 "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/community/gdg" track-type="navMenu" track-name="Google Developer Groups" track-metadata-position="nav" track-metadata-href="https://developers.google.com/community/gdg" tooltip> <div class="devsite-nav-item-title"> Google Developer Groups </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/community/experts" track-type="navMenu" track-name="Google Developers Experts" track-metadata-position="nav" track-metadata-href="https://developers.google.com/community/experts" tooltip> <div class="devsite-nav-item-title"> Google Developers Experts </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://www.womentechmakers.com/" track-type="navMenu" track-name="Women Techmakers" track-metadata-position="nav" track-metadata-href="https://www.womentechmakers.com/" tooltip> <div class="devsite-nav-item-title"> Women Techmakers </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/community/accelerators" track-type="navMenu" track-name="Accelerators" track-metadata-position="nav" track-metadata-href="https://developers.google.com/community/accelerators" tooltip> <div class="devsite-nav-item-title"> Accelerators </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/community/dsc" track-type="navMenu" track-name="Developer Student Clubs" track-metadata-position="nav" track-metadata-href="https://developers.google.com/community/dsc" tooltip> <div class="devsite-nav-item-title"> Developer Student Clubs </div> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/community/dsc-solution-challenge" track-type="navMenu" track-name="2021 Solution Challenge" track-metadata-position="nav" track-metadata-href="https://developers.google.com/community/dsc-solution-challenge" tooltip> <div class="devsite-nav-item-title"> 2021 Solution Challenge </div> </a> </li> </ul> </div> </div> </div> </tab> <tab> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/profile/u/me" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="developerProfile" data-category="Site-Wide Custom Events" data-label="Tab: Developer Profile"> Developer Profile </a> </tab> <tab> <a href="https://web.archive.org/web/20210502230816/https://developers.googleblog.com/" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="blog" data-category="Site-Wide Custom Events" data-label="Tab: Blog"> Blog </a> </tab> </nav> </devsite-tabs> </div> <devsite-search aria-expanded="false" aria-haspopup="listbox" enable-signin enable-search enable-suggestions enable-query-completion project-name="Google Developers" tenant-name="Google Developers" disabled role="combobox"> <form class="devsite-search-form" action="https://web.archive.org/web/20210502230816/https://developers.google.com/s/results" method="GET"> <div class="devsite-search-container"> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-haspopup="false" aria-multiline="false" aria-label="Search box" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" disabled> <div class="devsite-search-image material-icons" aria-hidden="true"></div> </div> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> </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> <devsite-select class="devsite-language-selector-menu"> <select aria-label="Select your language preference." class="devsite-language-selector-select" name="language" track-name="click" track-type="languageSelector"> <option>Language</option> <option value="en" lang="en" track-metadata-original-language="en" track-metadata-selected-language="en" track-name="changed" track-type="languageSelector"> English </option> <option value="id" lang="id" track-metadata-original-language="en" track-metadata-selected-language="id" track-name="changed" track-type="languageSelector"> Bahasa Indonesia </option> <option value="de" lang="de" track-metadata-original-language="en" track-metadata-selected-language="de" track-name="changed" track-type="languageSelector"> Deutsch </option> <option value="es" lang="es" track-metadata-original-language="en" track-metadata-selected-language="es" track-name="changed" track-type="languageSelector"> Español </option> <option value="fr" lang="fr" track-metadata-original-language="en" track-metadata-selected-language="fr" track-name="changed" track-type="languageSelector"> Français </option> <option value="pt_br" lang="pt_br" track-metadata-original-language="en" track-metadata-selected-language="pt_br" track-name="changed" track-type="languageSelector"> Português – Brasil </option> <option value="ru" lang="ru" track-metadata-original-language="en" track-metadata-selected-language="ru" track-name="changed" track-type="languageSelector"> Русский </option> <option value="zh_cn" lang="zh_cn" track-metadata-original-language="en" track-metadata-selected-language="zh_cn" track-name="changed" track-type="languageSelector"> 中文 – 简体 </option> <option value="ja" lang="ja" track-metadata-original-language="en" track-metadata-selected-language="ja" track-name="changed" track-type="languageSelector"> 日本語 </option> <option value="ko" lang="ko" track-metadata-original-language="en" track-metadata-selected-language="ko" track-name="changed" track-type="languageSelector"> 한국어 </option> </select> </devsite-select> </devsite-language-selector> <devsite-user enable-profiles fp-auth id="devsite-user"></devsite-user> </div> </div> </div> <div class="devsite-collapsible-section "> <div class="devsite-header-background"> <div class="devsite-header-billboard"> <h1 id="product-index" data-text="Product Index">Product Index</h1> </div> <div class="devsite-header-billboard-search"> <devsite-search aria-expanded="false" aria-haspopup="listbox" enable-signin enable-search enable-suggestions enable-query-completion project-name="" tenant-name="Google Developers" role="combobox"> <form class="devsite-search-form" action="https://web.archive.org/web/20210502230816/https://developers.google.com/s/results" method="GET"> <div class="devsite-search-container"> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-haspopup="false" aria-multiline="false" aria-label="Search box" 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> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> </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> <div class="devsite-doc-set-nav-row"> <devsite-tabs class="lower-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Lower tabs"> <tab active> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="allProducts" aria-label="All Products, selected" data-category="Site-Wide Custom Events" data-label="Tab: All Products"> All Products </a> </tab> <tab> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/develop" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="develop" data-category="Site-Wide Custom Events" data-label="Tab: Develop"> Develop </a> </tab> <tab> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/grow" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="grow" data-category="Site-Wide Custom Events" data-label="Tab: Grow"> Grow </a> </tab> <tab> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/earn" class="gc-analytics-event " track-type="globalNav" track-metadata-position="nav" track-metadata-eventdetail="nav" track-name="earn" data-category="Site-Wide Custom Events" data-label="Tab: Earn"> Earn </a> </tab> </nav> </devsite-tabs> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars hidden> <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="/web/20210502230816/https://developers.google.com/" class="devsite-site-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Site logo" track-type="globalNav" track-name="googleDevelopers" track-metadata-position="nav" track-metadata-eventdetail="nav"> <img src="https://web.archive.org/web/20210502230816im_/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers/images/lockup.svg" class="devsite-site-logo" alt="Google Developers"> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list"> <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> </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="/web/20210502230816/https://developers.google.com/products" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Products" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="products"> <span class="devsite-nav-text" tooltip> Products </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip> <span class="devsite-nav-text" tooltip menu="Products"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Products"> </span> </span> </li> </ul> <ul class="devsite-nav-responsive-tabs"> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/products" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Responsive Tab: All Products" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="allProducts"> <span class="devsite-nav-text" tooltip> All Products </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/products/develop" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Develop" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="develop"> <span class="devsite-nav-text" tooltip> Develop </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/products/grow" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Grow" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="grow"> <span class="devsite-nav-text" tooltip> Grow </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/products/earn" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Earn" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="earn"> <span class="devsite-nav-text" tooltip> Earn </span> </a> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/events" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Events" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="events"> <span class="devsite-nav-text" tooltip> Events </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/learn" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Learn" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="learn"> <span class="devsite-nav-text" tooltip> Learn </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/community" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Developer Communities" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="developerCommunities"> <span class="devsite-nav-text" tooltip> Developer Communities </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip> <span class="devsite-nav-text" tooltip menu="Developer Communities"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Developer Communities"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/profile/u/me" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Developer Profile" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="developerProfile"> <span class="devsite-nav-text" tooltip> Developer Profile </span> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://developers.googleblog.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Blog" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="blog"> <span class="devsite-nav-text" tooltip> Blog </span> </a> </li> </ul> </div> <div class="devsite-mobile-nav-bottom" role="navigation"> <ul class="devsite-nav-list" menu="Products" 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> Develop </span> </span> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://developer.android.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="android"> <span class="devsite-nav-text" tooltip> Android </span> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://cloud.google.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cloud" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="cloud"> <span class="devsite-nav-text" tooltip> Cloud </span> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://firebase.google.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Firebase" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="firebase"> <span class="devsite-nav-text" tooltip> Firebase </span> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://flutter.dev/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Flutter" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="flutter"> <span class="devsite-nav-text" tooltip> Flutter </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/assistant" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Assistant" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="googleAssistant"> <span class="devsite-nav-text" tooltip> Google Assistant </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/maps" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Maps Platform" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="mapsPlatform"> <span class="devsite-nav-text" tooltip> Maps Platform </span> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://www.tensorflow.org/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: TensorFlow" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="tensorFlow"> <span class="devsite-nav-text" tooltip> TensorFlow </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/web" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Web" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="web"> <span class="devsite-nav-text" tooltip> Web </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/youtube" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: YouTube" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="youTube"> <span class="devsite-nav-text" tooltip> YouTube </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip> <span class="devsite-nav-text" tooltip> Grow </span> </span> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://firebase.google.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Firebase" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="firebase"> <span class="devsite-nav-text" tooltip> Firebase </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/google-ads" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Ads" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="googleAds"> <span class="devsite-nav-text" tooltip> Google Ads </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/analytics" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Analytics" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="googleAnalytics"> <span class="devsite-nav-text" tooltip> Google Analytics </span> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://developer.android.com/distribute/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Play" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="googlePlay"> <span class="devsite-nav-text" tooltip> Google Play </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/search" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Search" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="search"> <span class="devsite-nav-text" tooltip> Search </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/web/fundamentals/engage-and-retain/push-notifications" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Web Push and Notification APIs" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="webPushAndNotificationAPIs"> <span class="devsite-nav-text" tooltip> Web Push and Notification APIs </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip> <span class="devsite-nav-text" tooltip> Earn </span> </span> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/admob" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: AdMob" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="adMob"> <span class="devsite-nav-text" tooltip> AdMob </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/google-ads/api" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Ads API" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="googleAdsAPI"> <span class="devsite-nav-text" tooltip> Google Ads API </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/pay" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Pay" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="googlePay"> <span class="devsite-nav-text" tooltip> Google Pay </span> </a> </li> <li class="devsite-nav-item"> <a href="//web.archive.org/web/20210502230816/https://developer.android.com/google/play/billing/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Play Billing" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="googlePlayBilling"> <span class="devsite-nav-text" tooltip> Google Play Billing </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/interactive-media-ads" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Interactive Media Ads" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="interactiveMediaAds"> <span class="devsite-nav-text" tooltip> Interactive Media Ads </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Developer Communities" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/community/gdg" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Developer Groups" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="googleDeveloperGroups"> <span class="devsite-nav-text" tooltip> Google Developer Groups </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/community/experts" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Developers Experts" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="googleDevelopersExperts"> <span class="devsite-nav-text" tooltip> Google Developers Experts </span> </a> </li> <li class="devsite-nav-item"> <a href="https://web.archive.org/web/20210502230816/https://www.womentechmakers.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Women Techmakers" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="womenTechmakers"> <span class="devsite-nav-text" tooltip> Women Techmakers </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/community/accelerators" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Accelerators" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="accelerators"> <span class="devsite-nav-text" tooltip> Accelerators </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/community/dsc" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Developer Student Clubs" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="developerStudentClubs"> <span class="devsite-nav-text" tooltip> Developer Student Clubs </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20210502230816/https://developers.google.com/community/dsc-solution-challenge" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: 2021 Solution Challenge" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav" track-name="2021SolutionChallenge"> <span class="devsite-nav-text" tooltip> 2021 Solution Challenge </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content"> <devsite-toc class="devsite-nav" disabled></devsite-toc> <devsite-content> <article class="devsite-article"><style> /* Styles inlined from /site-assets/styles/products.css */ .dgc-products .devsite-landing-row-header h2 { border-top: 1px solid #ddd; padding: 32px 0 0; } @media screen and (max-width: 600px) { .dgc-products .devsite-landing-row-header h2 { padding: 20px 0; } } </style> <div class="devsite-banner devsite-banner-announcement"> <div class="devsite-banner-message"> <div class="devsite-banner-message-text"> <style> .devsite-banner-announcement:not(.devsite-banner-tenant) { background: #202124; color: white; font-weight: 500; } .devsite-banner-announcement a { color: white; font-weight: 700; } .devsite-banner-announcement a:link, .devsite-banner-announcement a:visited { background: 0; } .devsite-banner-announcement a:hover, .devsite-banner-announcement a:focus { text-decoration: none; } .devsite-banner-announcement .devsite-banner-message-text { margin: 0 auto; } </style> Google is committed to advancing racial equity for Black communities. <a href="https://web.archive.org/web/20210502230816/https://google.com/racialequity" class="gc-analytics-event" data-category="Announcement" data-label="Racial Equity">See how.</a> </div> </div> </div> <div class="devsite-article-meta" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://web.archive.org/web/20210502230816/https://developers.google.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="Google Developers"> Google Developers </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products" 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=""> Products </a> </li> </ul> </div> <devsite-toc class="devsite-nav" devsite-toc-embedded disabled> </devsite-toc> <div class="devsite-article-body clearfix devsite-no-page-title"> <section class="devsite-landing-row devsite-landing-row-3-up devsite-landing-row-large-headings" header-position="top"> <div class="devsite-landing-row-inner"> <div class="devsite-landing-row-group"> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" foreground="google-blue" description-position="bottom"> <div class="devsite-landing-row-item-description" icon-position="top"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/develop"> <div class="devsite-landing-row-item-icon-container" size="large"> <img class="devsite-landing-row-item-icon" alt="" src="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large.png" srcset="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_36.png 36w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_48.png 48w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_72.png 72w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_96.png 96w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_480.png 480w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_720.png 720w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_856.png 856w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_960.png 960w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_1440.png 1440w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_1920.png 1920w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-develop-large_2880.png 2880w" sizes="64px" loading="lazy"> </div> </a> <div class="devsite-landing-row-item-body"> <h3 id="develop" data-text="Develop" class="hide-from-toc no-link" tabindex="0"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/develop"> Develop </a> </h3> <div class="devsite-landing-row-item-description-content"> <h4 id="build-high-quality-apps-faster" data-text="Build high-quality apps faster">Build high-quality apps faster</h4> <p>We've got the basics covered all in one place, offering a wide range of tools for you to build high-quality apps as quickly and reliably as possible.</p> </div> <div class="devsite-landing-row-item-buttons"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/develop" class="button button-primary ">Find products</a> </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" foreground="google-green" description-position="bottom"> <div class="devsite-landing-row-item-description" icon-position="top"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/grow"> <div class="devsite-landing-row-item-icon-container" size="large"> <img class="devsite-landing-row-item-icon" alt="" src="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large.png" srcset="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_36.png 36w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_48.png 48w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_72.png 72w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_96.png 96w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_480.png 480w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_720.png 720w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_856.png 856w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_960.png 960w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_1440.png 1440w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_1920.png 1920w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-grow-large_2880.png 2880w" sizes="64px" loading="lazy"> </div> </a> <div class="devsite-landing-row-item-body"> <h3 id="grow" data-text="Grow" class="hide-from-toc no-link" tabindex="0"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/grow"> Grow </a> </h3> <div class="devsite-landing-row-item-description-content"> <h4 id="grow-and-retain-an-active-user-base" data-text="Grow and retain an active user base">Grow and retain an active user base</h4> <p>Drive app discovery and engage the right users at the right time to ensure they keep on coming back.</p> </div> <div class="devsite-landing-row-item-buttons"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/grow" class="button button-primary ">Find products</a> </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" foreground="google-yellow" description-position="bottom"> <div class="devsite-landing-row-item-description" icon-position="top"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/earn"> <div class="devsite-landing-row-item-icon-container" size="large"> <img class="devsite-landing-row-item-icon" alt="" src="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large.png" srcset="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_36.png 36w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_48.png 48w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_72.png 72w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_96.png 96w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_480.png 480w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_720.png 720w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_856.png 856w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_960.png 960w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_1440.png 1440w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_1920.png 1920w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/icon-earn-large_2880.png 2880w" sizes="64px" loading="lazy"> </div> </a> <div class="devsite-landing-row-item-body"> <h3 id="earn" data-text="Earn" class="hide-from-toc no-link" tabindex="0"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/earn"> Earn </a> </h3> <div class="devsite-landing-row-item-description-content"> <h4 id="tap-into-tools-to-make-more-money" data-text="Tap into tools to make more money">Tap into tools to make more money</h4> <p>Earn money quickly with engaging ads and in-app purchases and gather user-driven insights to guide how you monetize.</p> </div> <div class="devsite-landing-row-item-buttons"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/products/earn" class="button button-primary ">Find products</a> </div> </div> </div> </div> </div> </div> </section> <section class="devsite-landing-row devsite-landing-row-3-up" background="/web/20210502230816im_/https://developers.google.com/products/grey" header-position="top"> <div class="devsite-landing-row-inner"> <header class="devsite-landing-row-header"> <div class="devsite-landing-row-header-text"> <h2 id="popular" data-text="Popular" tabindex="0"> Popular </h2> </div> </header> <div class="devsite-landing-row-group"> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom"> <div class="devsite-landing-row-item-description" icon-position="left"> <a href="//web.archive.org/web/20210502230816/https://developer.android.com/"> <div class="devsite-landing-row-item-icon-container" background="/web/20210502230816im_/https://developers.google.com/products/white" size="medium"> <img class="devsite-landing-row-item-icon" alt="" src="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo.png" srcset="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_36.png 36w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_48.png 48w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_72.png 72w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_96.png 96w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_480.png 480w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_720.png 720w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_856.png 856w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_960.png 960w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_1440.png 1440w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_1920.png 1920w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/android_logo_2880.png 2880w" sizes="64px" loading="lazy"> </div> </a> <div class="devsite-landing-row-item-body"> <h3 id="android" data-text="Android" class="hide-from-toc no-link" tabindex="0"> <a href="//web.archive.org/web/20210502230816/https://developer.android.com/"> Android </a> </h3> <div class="devsite-landing-row-item-description-content"> Get your apps ready for the latest version of Android. </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom"> <div class="devsite-landing-row-item-description" icon-position="left"> <a href="//web.archive.org/web/20210502230816/https://firebase.google.com/"> <div class="devsite-landing-row-item-icon-container" background="/web/20210502230816im_/https://developers.google.com/products/white" size="medium"> <img class="devsite-landing-row-item-icon" alt="" src="//web.archive.org/web/20210502230816im_/https://www.gstatic.com/images/branding/product/2x/firebase_36dp.png" srcset="" sizes="64px" loading="lazy"> </div> </a> <div class="devsite-landing-row-item-body"> <h3 id="firebase" data-text="Firebase" class="hide-from-toc no-link" tabindex="0"> <a href="//web.archive.org/web/20210502230816/https://firebase.google.com/"> Firebase </a> </h3> <div class="devsite-landing-row-item-description-content"> The tools and infrastructure you need to build better mobile and web apps, improve app quality, and grow your business. </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom"> <div class="devsite-landing-row-item-description" icon-position="left"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/web"> <div class="devsite-landing-row-item-icon-container" background="/web/20210502230816im_/https://developers.google.com/products/white" size="medium"> <img class="devsite-landing-row-item-icon" alt="" src="https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192.png" srcset="https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_36.png 36w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_48.png 48w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_72.png 72w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_96.png 96w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_480.png 480w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_720.png 720w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_856.png 856w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_960.png 960w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_1440.png 1440w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_1920.png 1920w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/web/images/web-fundamentals-icon192x192_2880.png 2880w" sizes="64px" loading="lazy"> </div> </a> <div class="devsite-landing-row-item-body"> <h3 id="web" data-text="Web" class="hide-from-toc no-link" tabindex="0"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/web"> Web </a> </h3> <div class="devsite-landing-row-item-description-content"> Develop the next generation of applications for the Web. </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom"> <div class="devsite-landing-row-item-description" icon-position="left"> <a href="//web.archive.org/web/20210502230816/https://cloud.google.com/"> <div class="devsite-landing-row-item-icon-container" background="/web/20210502230816im_/https://developers.google.com/products/white" size="medium"> <img class="devsite-landing-row-item-icon" alt="" src="//web.archive.org/web/20210502230816im_/https://www.gstatic.com/images/branding/product/2x/google_cloud_36dp.png" srcset="" sizes="64px" loading="lazy"> </div> </a> <div class="devsite-landing-row-item-body"> <h3 id="cloud" data-text="Cloud" class="hide-from-toc no-link" tabindex="0"> <a href="//web.archive.org/web/20210502230816/https://cloud.google.com/"> Cloud </a> </h3> <div class="devsite-landing-row-item-description-content"> Everything you need to build and scale your enterprise, securely. </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom"> <div class="devsite-landing-row-item-description" icon-position="left"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/maps"> <div class="devsite-landing-row-item-icon-container" background="/web/20210502230816im_/https://developers.google.com/products/white" size="medium"> <img class="devsite-landing-row-item-icon" alt="" src="//web.archive.org/web/20210502230816im_/https://www.gstatic.com/images/branding/product/2x/maps_36dp.png" srcset="" sizes="64px" loading="lazy"> </div> </a> <div class="devsite-landing-row-item-body"> <h3 id="maps-platform" data-text="Maps Platform" class="hide-from-toc no-link" tabindex="0"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/maps"> Maps Platform </a> </h3> <div class="devsite-landing-row-item-description-content"> Power location experiences for websites and apps. </div> </div> </div> </div> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom"> <div class="devsite-landing-row-item-description" icon-position="left"> <a href="//web.archive.org/web/20210502230816/https://www.tensorflow.org/"> <div class="devsite-landing-row-item-icon-container" background="/web/20210502230816im_/https://developers.google.com/products/white" size="medium"> <img class="devsite-landing-row-item-icon" alt="" src="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196.png" srcset="https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_36.png 36w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_48.png 48w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_72.png 72w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_96.png 96w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_480.png 480w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_720.png 720w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_856.png 856w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_960.png 960w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_1440.png 1440w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_1920.png 1920w, https://web.archive.org/web/20210502230816im_/https://developers.google.com/site-assets/images/products/tensorflow-logo-196_2880.png 2880w" sizes="64px" loading="lazy"> </div> </a> <div class="devsite-landing-row-item-body"> <h3 id="tensorflow" data-text="TensorFlow" class="hide-from-toc no-link" tabindex="0"> <a href="//web.archive.org/web/20210502230816/https://www.tensorflow.org/"> TensorFlow </a> </h3> <div class="devsite-landing-row-item-description-content"> An open source software library for machine intelligence. </div> </div> </div> </div> </div> </div> </section> <section class="devsite-landing-row devsite-landing-row-1-up devsite-landing-row-100 dgc-products" background="/web/20210502230816im_/https://developers.google.com/products/grey" header-position="top"> <div class="devsite-landing-row-inner"> <header class="devsite-landing-row-header"> <div class="devsite-landing-row-header-text"> <h2 id="all-products" data-text="All Products" tabindex="0"> All Products </h2> </div> </header> <div class="devsite-landing-row-group"> <div class="devsite-landing-row-item devsite-landing-row-item-no-media" description-position="bottom"> <div class="devsite-landing-row-item-description"> <div class="devsite-landing-row-item-body"> <div class="devsite-landing-row-item-description-content"> <a name="products"></a> <devsite-product-catalog all-tenants query="type:product" is-filterable></devsite-product-catalog> <devsite-jump-to target="products"></devsite-jump-to> </div> </div> </div> </div> </div> </div> </section> </div> </article> </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">Connect</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://googledevelopers.blogspot.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)"> Blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://www.facebook.com/Google-Developers-967415219957038" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)"> Facebook </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://medium.com/google-developers" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)"> Medium </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://twitter.com/googledevs" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)"> Twitter </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://www.youtube.com/user/GoogleDevelopers" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)"> YouTube </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Programs</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://www.womentechmakers.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)"> Women Techmakers </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20210502230816/https://developers.google.com/community/gdg" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)"> Google Developer Groups </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20210502230816/https://developers.google.com/community/experts" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)"> Google Developers Experts </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20210502230816/https://developers.google.com/community/accelerators" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)"> Accelerators </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20210502230816/https://developers.google.com/community/dsc" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)"> Developer Student Clubs </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Developer consoles</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://console.developers.google.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)"> Google API Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://console.cloud.google.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)"> Google Cloud Platform Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://play.google.com/apps/publish" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)"> Google Play Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://console.firebase.google.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 4)"> Firebase Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://console.actions.google.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 5)"> Actions on Google Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://cast.google.com/publish" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 6)"> Cast SDK Developer Console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="//web.archive.org/web/20210502230816/https://chrome.google.com/webstore/developer/dashboard" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 7)"> Chrome Web Store Dashboard </a> </li> </ul> </li> </ul> </nav> </devsite-footer-linkboxes> <devsite-footer-utility class="devsite-footer"> <div class="devsite-footer-utility nocontent"> <nav class="devsite-footer-sites" aria-label="Other Google Developers websites"> <a href="https://web.archive.org/web/20210502230816/https://developers.google.com/" class="devsite-footer-sites-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Developers Link"> <img class="devsite-footer-sites-logo" src="https://web.archive.org/web/20210502230816im_/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers/images/lockup-developers.svg" loading="lazy" alt="Google Developers"> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20210502230816/https://developer.android.com/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Android Link"> Android </a> </li> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20210502230816/https://developer.chrome.com/home" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Chrome Link"> Chrome </a> </li> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20210502230816/https://firebase.google.com/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Firebase Link"> Firebase </a> </li> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20210502230816/https://cloud.google.com/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Cloud Platform Link"> Google Cloud Platform </a> </li> <li class="devsite-footer-sites-item"> <a href="/web/20210502230816/https://developers.google.com/products" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer All products Link"> All products </a> </li> </ul> </nav> <nav class="devsite-footer-utility-links" aria-label="Utility links"> <ul class="devsite-footer-utility-list"> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/web/20210502230816/https://developers.google.com/terms/site-terms" data-category="Site-Wide Custom Events" data-label="Footer Terms link"> Terms </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//web.archive.org/web/20210502230816/https://policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link"> Privacy </a> </li> <li class="devsite-footer-utility-item devsite-footer-utility-button"> <span class="devsite-footer-utility-description">Sign up for the Google Developers newsletter</span> <a class="devsite-footer-utility-link gc-analytics-event" href="//web.archive.org/web/20210502230816/https://services.google.com/fb/forms/googledevelopersnewsletter/?utm_medium=referral&utm_source=google-products&utm_team=googledevs&utm_campaign=201611-newsletter-launch" data-category="Site-Wide Custom Events" data-label="Footer Subscribe link"> Subscribe </a> </li> </ul> <devsite-language-selector> <devsite-select class="devsite-language-selector-menu"> <select aria-label="Select your language preference." class="devsite-language-selector-select" name="language" track-name="click" track-type="languageSelector"> <option>Language</option> <option value="en" lang="en" track-metadata-original-language="en" track-metadata-selected-language="en" track-name="changed" track-type="languageSelector"> English </option> <option value="id" lang="id" track-metadata-original-language="en" track-metadata-selected-language="id" track-name="changed" track-type="languageSelector"> Bahasa Indonesia </option> <option value="de" lang="de" track-metadata-original-language="en" track-metadata-selected-language="de" track-name="changed" track-type="languageSelector"> Deutsch </option> <option value="es" lang="es" track-metadata-original-language="en" track-metadata-selected-language="es" track-name="changed" track-type="languageSelector"> Español </option> <option value="fr" lang="fr" track-metadata-original-language="en" track-metadata-selected-language="fr" track-name="changed" track-type="languageSelector"> Français </option> <option value="pt_br" lang="pt_br" track-metadata-original-language="en" track-metadata-selected-language="pt_br" track-name="changed" track-type="languageSelector"> Português – Brasil </option> <option value="ru" lang="ru" track-metadata-original-language="en" track-metadata-selected-language="ru" track-name="changed" track-type="languageSelector"> Русский </option> <option value="zh_cn" lang="zh_cn" track-metadata-original-language="en" track-metadata-selected-language="zh_cn" track-name="changed" track-type="languageSelector"> 中文 – 简体 </option> <option value="ja" lang="ja" track-metadata-original-language="en" track-metadata-selected-language="ja" track-name="changed" track-type="languageSelector"> 日本語 </option> <option value="ko" lang="ko" track-metadata-original-language="en" track-metadata-selected-language="ko" track-name="changed" track-type="languageSelector"> 한국어 </option> </select> </devsite-select> </devsite-language-selector> </nav> </div> </devsite-footer-utility> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics enable-analytics-iframe> <script type="application/json" analytics>[{"gaid": "UA-24532603-1", "dimensions": {"dimension6": "en", "dimension3": false, "dimension5": "en", "dimension8": null, "dimension1": "Signed out", "dimension4": "Google Developers", "dimension11": false}, "metrics": {"ratings_value": "metric1", "ratings_count": "metric2"}}]</script> <script type="application/json" gtm>{"parameters": {"freeTrialEligibleUser": "False", "internalUser": "False", "language": {"machineTranslated": "False", "requested": "en", "served": "en"}, "pageType": "landing", "projectName": "Google Developers", "scriptsafe": null, "signedIn": "False", "tenant": "developers", "recommendations": {"sourcePage": "", "sourceType": 0, "sourceRank": 0, "sourceIdenticalDescriptions": 0, "sourceTitleWords": 0, "sourceDescriptionWords": 0, "experiment": ""}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="1I2+R6sLNhJCUKa17xkd0MAcxfAzF7"> (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://web.archive.org/web/20210502230816/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers/js/app_loader.js', '[1,"en",null,"/js/devsite_app_module.js","https://web.archive.org/web/20210502230816/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754","https://web.archive.org/web/20210502230816/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers","https://web.archive.org/web/20210502230816/https://developers-dot-devsite-v2-prod.appspot.com",1,null,["/_pwa/developers/manifest.json","https://web.archive.org/web/20210502230816/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/images/video-placeholder.svg","https://web.archive.org/web/20210502230816/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers/images/favicon.png","https://web.archive.org/web/20210502230816/https://www.gstatic.com/devrel-devsite/prod/v2235b5d368461352e70596bb19ab24ef2806562cf010ceb9beccdf03cc0b1754/developers/images/lockup.svg","https://web.archive.org/web/20210502230816/https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700|Material+Icons"],1,null,[1,6,8,12,14,17,21,25,40,50,63,70,75,76,80,87,88,91,92,93,97,98,100,101,102,103,105,107,108,111,112,113,115,117,118,120,122,124,125,127,129,131,133,134,135],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg"]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html><!-- FILE ARCHIVED ON 23:08:16 May 02, 2021 AND RETRIEVED FROM THE INTERNET ARCHIVE ON 04:27:20 Dec 01, 2024. JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE. ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C. SECTION 108(a)(3)). --> <!-- playback timings (ms): captures_list: 3.216 exclusion.robots: 0.024 exclusion.robots.policy: 0.018 esindex: 0.006 cdx.remote: 8.022 LoadShardBlock: 56.506 (3) PetaboxLoader3.datanode: 73.09 (4) load_resource: 3157.97 PetaboxLoader3.resolve: 3126.628 -->