fullpage=true
no_footer_links=true
carousel=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


<div class="wrap">
    <!-- Slideshow -->
    <div class="slideshow-container slideshow-home col-16">
        <a href="" class="slideshow-prev">Prev</a>
        <a href="" class="slideshow-next">Next</a>
        <div class="frame">
            <ul>

                <li class="item carousel-home">
                    <div class="content-left col-7">
                        <a href="/about/versions/kitkat.html"><img src="/images/home/kk-hero.jpg" style="width:242px;padding-top:72px;"></a>
                    </div>
                    <div class="content-right col-6">
                    <h1>Android 4.4 KitKat!</h1>
                    <p>A new version of Android is here, with great new features, APIs, and tools for developers.</p>
                    <p>Android 4.4 is built to run on more devices than ever before, and gives you more ways to showcase your content and create beautiful, useful, and innovative apps.</p>
                    <p>Learn about what's new in the Platform Highlights and see the API Overview for details.</p>
                    <p><a href="/about/versions/kitkat.html" class="button">Check out the highlights</a></p>
                    </div>
                </li>

                <li class="item carousel-home">
                    <div class="content-left col-11" style="padding-top:65px;">
                      <a href="https://www.youtube.com/watch?v=sONcojECWXs&list=PLWz5rJ2EKKc-2quE-o0enpILZF3nBZg_K&index=1">
                                          <img src="/images/title-devbytes-kk.jpg" style="margin-top:22px;width:600px;">
                        </a>
                      </div>

                    <div class="content-right col-4">
                    <h1 style="white-space:nowrap;line-height:1.2em;">DevBytes: <br />Android 4.4</h1>
                    <p>Join the DevBytes team for a look at what's new in Android 4.4 KitKat&nbsp;&mdash; new ways to make your apps beautiful, printing, storage access framework, and more.</p>
                    <p><a href="https://www.youtube.com/watch?v=sONcojECWXs&list=PLWz5rJ2EKKc-2quE-o0enpILZF3nBZg_K&index=1" class="button">Watch the video </a></p>
                    </div>
                </li>


                <li class="item carousel-home">
                    <div class="content-left col-10"><a href="/design/patterns/new.html">
                        <img src="/design/media/design_elements_landing.png" style="margin-top:30px">
                        </a>
                    </div>
                    <div class="content-right col-5">
                    <h1>Design for Android KitKat</h1>
                    <p>Android KitKat brings a refreshed UI with updated styles, patterns, and gestures to use in your apps. </p>
                    <p>We've updated the Android Design guidelines and added new pages on branding, fullscreen, and more. </p>
                    <p><a href="/design/patterns/new.html" class="button">See what's new</a></p>
                    </div>
                </li>

                <!--<li class="item carousel-home">
                    <div class="content-left col-11" style="padding-top:65px;">
                      <a href="http://www.youtube.com/watch?v=6QHkv-bSlds&list=PLWz5rJ2EKKc8j2B95zGMb8muZvrIy-wcF&index=1">
                                          <img src="/images/title-adia-kk.png" style="margin-top:22px;width:600px;">
                        </a>
                      </div>

                    <div class="content-right col-4">
                    <h1 style="white-space:nowrap;line-height:1.2em;">ADIA: <br />Android 4.4</h1>
                    </p>Join the Android Design in Action team for a walkthrough of new developer features, UX changes, and updates to design guidelines in Android 4.4.</p>
                    <p><a href="http://www.youtube.com/watch?v=6QHkv-bSlds&list=PLWz5rJ2EKKc8j2B95zGMb8muZvrIy-wcF&index=1" class="button">Watch the video </a></p>
                    </div>
                </li> -->
               <!-- <li class="item carousel-home">
                    <div class="content-left col-11" style="padding-top:10px;">
                        <a href="/channels/io2013.html">
                          <img src="/images/home/io-videos-2013.png" style="margin:60px 0 0;
                          box-shadow: 3px 10px 18px 1px #999;">
                        </a>
                    </div>
                    <div class="content-right col-4">
                    <h1>Hands-on with New KitKat Features</h1>
                    <p>If you weren't able to attend Google I/O in person or couldn't make it
                    to all the talks, you can catch up on the action
                    with all the recordings, brought to you by
                    <a href="http://developers.google.com/live">Google Developers Live</a>.</p>
                    <p><a href="/channels/io2013.html" class="button"
                    >See the Android talks</a></p>
                    </div>
                </li> -->
           </ul>
        </div>
    </div>

<!-- /End slideshow -->

    <a href="" id="pauseButton" style="display:none">pause</a>


</div>
<div class="wrap" style="padding-bottom:20px">
    <!-- Section links -->
    <div class="home-sections">
        <ul>
            <li><a href="{@docRoot}about/index.html">About Android</a></li>
            <li><a href="{@docRoot}sdk/index.html">Get the SDK</a></li>
            <li><a href="http://source.android.com">Open Source</a></li>
            <li><a href="{@docRoot}support.html">Support</a></li>
            <li class="last"><a href="{@docRoot}legal.html">Legal</a></li>
        </ul>
    </div>
    <!-- /Section links -->
</div>
