fullpage=true
excludeFromSuggestions=true
page.metaDescription=The official site for Android developers. Provides the Android SDK and documentation for app developers and designers.
page.customHeadTag=<meta name="google-site-verification" content="sa-bIAI6GKvct3f61-WpRguHq-aNjtF7xJjMTSi79as" />

@jd:body

<script>
  $(document).ready(function() {
    if (useUpdatedTemplates) {
      $("#useUpdatedTemplates").css("display","block");
    } else {
      $("#useOldTemplates").css("display","block");
    }
  })
</script>

<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
  <div class="wrap" style="max-width:1100px;margin-top:0">
    <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
      <a href="{@docRoot}preview/index.html">
        <h1 class="dac-hero-title">Android N Developer Preview</h1>
        <p class="dac-hero-description">
          Get ready for the next version of Android!
          <strong>Test your apps</strong> on Nexus and other devices. Support new system
          behaviors to <strong>save power and memory</strong>.
          Extend your apps with <strong>multi-window UI</strong>,
          <strong>direct reply notifications</strong> and more.
        </p>
        <a class="dac-hero-cta" href="/preview/index.html">
          <span class="dac-sprite dac-auto-chevron"></span>
          Learn more
        </a><!--<br>
        <a class="dac-hero-cta" href="/preview/support.html">
          <span class="dac-sprite dac-auto-chevron"></span>
          Update to Developer Preview (final SDK)
        </a><br>-->
      </a>
    </div>
    <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
      <a href="{@docRoot}preview/index.html">
        <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
             srcset="/images/home/n-preview-hero.png 1x,
             /images/home/n-preview-hero_2x.png 2x">
        </a>
    </div>
  </div>
</section>

<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
  <div class="wrap dac-offset-parent">
    <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
      <i class="dac-sprite dac-arrow-down-gray"></i>
    </a>
    <ul class="dac-actions">
      <li class="dac-action">
        <a class="dac-action-link" href="{@docRoot}sdk/index.html">
          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
          Get the SDK
        </a>
      </li>
      <li class="dac-action">
        <a class="dac-action-link" href="{@docRoot}samples/index.html">
          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
          Browse sample code
        </a>
      </li>
      <li class="dac-action">
        <a class="dac-action-link" href="{@docRoot}distribute/stories/index.html">
          <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
          Watch stories
        </a>
      </li>
    </ul>
  </div><!-- end .wrap -->
</div><!-- end .dac-actions -->

<div id="useOldTemplates" style="display:none" class="actions-bar dac-expand dac-invert">
  <div class="wrap dac-offset-parent">
    <a class="dac-fab dac-scroll-button" data-scroll-button="" href="#build-apps">
      <i class="dac-sprite dac-arrow-down-gray"></i>
    </a>
    <div class="actions">
      <div><a href="{@docRoot}sdk/index.html">
        <span class="dac-sprite dac-auto-chevron-large"></span>
        Get the SDK
      </a></div>
      <div><a href="{@docRoot}samples/index.html">
        <span class="dac-sprite dac-auto-chevron-large"></span>
        Browse Samples
      </a></div>
      <div><a href="{@docRoot}distribute/stories/index.html">
        <span class="dac-sprite dac-auto-chevron-large"></span>
        Watch Stories
      </a></div>
    </div><!-- end .actions -->
  </div><!-- end .wrap -->
</div>

<section class="dac-section dac-light" id="build-apps"><div class="wrap">
  <h1 class="dac-section-title">Build Beautiful Apps</h1>
  <div class="dac-section-subtitle">
    Resources to get you started with designing and developing for Android.
  </div>
  <div class="resource-widget resource-flow-layout col-16"
       data-query="collection:index/primary"
       data-cardSizes="6x6"
       data-maxResults="3"></div>
</div></section>

<div class="dac-hero-carousel" data-carousel-query="collection:index/secondary/carousel">
</div>

<section class="dac-section dac-gray"><div class="wrap">
  <div class="cols"><div class="col-10of12 col-push-1of12">
    <h1 class="dac-section-title">Creado para un mundo de múltiples pantallas</h1>
    <div class="dac-section-subtitle">
      Android se ejecuta en cientos de millones de dispositivos de todo el mundo, <br>
          y ahora es compatible con estos innovadores factores de forma.
    </div>
  </div></div>
  <div class="resource-widget resource-flow-layout col-16"
       data-query="collection:index/multiscreen"
       data-cardSizes="6x6"
       data-maxResults="3"></div>
</div></section>
