diff options
88 files changed, 1542 insertions, 985 deletions
diff --git a/Android.mk b/Android.mk index 151621c36c8b..8773719e7d5f 100644 --- a/Android.mk +++ b/Android.mk @@ -567,7 +567,7 @@ sample_dir := development/samples ## SDK version identifiers used in the published docs # major[.minor] version for current SDK. (full releases only) -framework_docs_SDK_VERSION:=4.2 +framework_docs_SDK_VERSION:=4.3 # release version (ie "Release x") (full releases only) framework_docs_SDK_REL_ID:=1 diff --git a/docs/html-intl/es/training/multiscreen/index.jd b/docs/html-intl/es/training/multiscreen/index.jd index 0a1461b12cdc..d836f962cc70 100644 --- a/docs/html-intl/es/training/multiscreen/index.jd +++ b/docs/html-intl/es/training/multiscreen/index.jd @@ -18,7 +18,7 @@ href="http://developer.android.com/guide/components/activities.html">Actividades <li>Experiencia en el desarrollo de una <a href="http://developer.android.com/guide/topics/ui/index.html">Interfaz de usuario</a> de Android</li> <li>Algunas funciones requieren el uso de la <a -href="{@docRoot}tools/extras/support-library.html">biblioteca de compatibilidad</a></li> +href="{@docRoot}tools/support-library/index.html">biblioteca de compatibilidad</a></li> </ul> <h2>También puedes consultar:</h2> @@ -46,7 +46,7 @@ href="{@docRoot}tools/extras/support-library.html">biblioteca de compatibilidad< <p>El código que aparece en cada sección se ha extraído de una aplicación de ejemplo para explicar las prácticas recomendadas a la hora de optimizar tu aplicación para varias pantallas. Puedes descargar el ejemplo (situado a la derecha) y utilizarlo como fuente de código reutilizable para tu propia aplicación.</p> <p class="note"><strong>Nota:</strong> en esta sección y en el ejemplo correspondiente, se utiliza la <a -href="{@docRoot}tools/extras/support-library.html">biblioteca de compatibilidad</a> para poder usar las API de <PH>{@link android.app.Fragment}</PH> en versiones anteriores a Android 3.0. Debes descargar y la biblioteca y añadirla a tu aplicación para poder utilizar todas las API que se indican en esta sección.</p> +href="{@docRoot}tools/support-library/index.html">biblioteca de compatibilidad</a> para poder usar las API de <PH>{@link android.app.Fragment}</PH> en versiones anteriores a Android 3.0. Debes descargar y la biblioteca y añadirla a tu aplicación para poder utilizar todas las API que se indican en esta sección.</p> <h2>Secciones</h2> diff --git a/docs/html-intl/ja/training/multiscreen/index.jd b/docs/html-intl/ja/training/multiscreen/index.jd index ff84f8a718e6..9e0158401d45 100644 --- a/docs/html-intl/ja/training/multiscreen/index.jd +++ b/docs/html-intl/ja/training/multiscreen/index.jd @@ -19,7 +19,7 @@ href="http://developer.android.com/guide/components/activities.html">アクテ <li>Android <a href="http://developer.android.com/guide/topics/ui/index.html">ユーザー インターフェース</a>の開発経験</li> <li><a -href="{@docRoot}tools/extras/support-library.html">サポート ライブラリ</a>の利用(一部の機能で必要)</li> +href="{@docRoot}tools/support-library/index.html">サポート ライブラリ</a>の利用(一部の機能で必要)</li> </ul> <h2>関連ドキュメント</h2> @@ -47,7 +47,7 @@ href="{@docRoot}tools/extras/support-library.html">サポート ライブラリ< <p>各レッスンで紹介されているコードは、複数の画面に合わせて最適化する際、ベスト プラクティスとなるサンプル アプリから抜粋したものです。このサンプルを(右側から)ダウンロードして、再利用可能なコードのソースとしてご自分のアプリに使用することができます。</p> <p class="note"><strong>注:</strong> このクラスと関連サンプルでは、<a -href="{@docRoot}tools/extras/support-library.html">サポート ライブラリ</a>を使用します。理由は、Android 3.0 未満のバージョンで <PH>{@link android.app.Fragment}</PH> API を使用するためです。このクラスのすべての API を使用するには、ライブラリをダウンロードして、アプリに追加する必要があります。</p> +href="{@docRoot}tools/support-library/index.html">サポート ライブラリ</a>を使用します。理由は、Android 3.0 未満のバージョンで <PH>{@link android.app.Fragment}</PH> API を使用するためです。このクラスのすべての API を使用するには、ライブラリをダウンロードして、アプリに追加する必要があります。</p> <h2>レッスン</h2> diff --git a/docs/html-intl/ko/training/multiscreen/index.jd b/docs/html-intl/ko/training/multiscreen/index.jd index d9e09b08ae48..dd152aea410a 100644 --- a/docs/html-intl/ko/training/multiscreen/index.jd +++ b/docs/html-intl/ko/training/multiscreen/index.jd @@ -19,7 +19,7 @@ href="http://developer.android.com/guide/components/activities.html">액티비 <li>Android <a href="http://developer.android.com/guide/topics/ui/index.html"> 사용자 인터페이스</a> 구축 경험</li> <li><a -href="{@docRoot}tools/extras/support-library.html">호환성 라이브러리</a>를 사용해야 하는 여러 기능</li> +href="{@docRoot}tools/support-library/index.html">호환성 라이브러리</a>를 사용해야 하는 여러 기능</li> </ul> <h2>참고자료</h2> @@ -47,7 +47,7 @@ href="{@docRoot}tools/extras/support-library.html">호환성 라이브러리</a> <p>각 강의에서 사용되는 코드는 여러 화면에 대한 최적화의 모범 사례를 보여주는 샘플 애플리케이션에서 가져온 것입니다. 샘플(오른쪽)을 다운로드하여 본인의 애플리케이션에 코드로 재사용할 수 있습니다. </p> <p class="note"><strong>참고:</strong> 이 강의 및 강의와 관련된 샘플은 <a -href="{@docRoot}tools/extras/support-library.html">호환성 라이브러리</a>를 사용하며 이는 Android 3.0 이하 버전에서 <PH>{@link android.app.Fragment}</PH> API를 사용하기 위해서입니다. 이 강의에서 API를 모두 사용하려면 라이브러리를 다운로드하여 애플리케이션에 추가해야 합니다.</p> +href="{@docRoot}tools/support-library/index.html">호환성 라이브러리</a>를 사용하며 이는 Android 3.0 이하 버전에서 <PH>{@link android.app.Fragment}</PH> API를 사용하기 위해서입니다. 이 강의에서 API를 모두 사용하려면 라이브러리를 다운로드하여 애플리케이션에 추가해야 합니다.</p> <h2>강의</h2> diff --git a/docs/html-intl/ru/training/multiscreen/index.jd b/docs/html-intl/ru/training/multiscreen/index.jd index 023eaecff494..84b9b8b5bdf0 100644 --- a/docs/html-intl/ru/training/multiscreen/index.jd +++ b/docs/html-intl/ru/training/multiscreen/index.jd @@ -19,7 +19,7 @@ href="http://developer.android.com/guide/components/activities.html">Activity</a <li>Опыт создания <a href="http://developer.android.com/guide/topics/ui/index.html">пользовательских интерфейсов</a> для Android</li> <li>Некоторые функции требуют использования <a -href="{@docRoot}tools/extras/support-library.html">вспомогательной библиотеки</a></li> +href="{@docRoot}tools/support-library/index.html">вспомогательной библиотеки</a></li> </ul> <h2>Дополнительные материалы</h2> @@ -47,7 +47,7 @@ href="{@docRoot}tools/extras/support-library.html">вспомогательно <p>Код, приведенный в каждом уроке, взят из учебного приложения, в котором демонстрируются способы оптимизации для разных экранов. Вы можете загрузить его (в правой части экрана) и использовать части кода в собственном приложении.</p> <p class="note"><strong>Примечание</strong>. В этом модуле и в учебном приложении используется <a -href="{@docRoot}tools/extras/support-library.html">вспомогательная библиотека</a>, позволяющая работать с API <PH>{@link android.app.Fragment}</PH> в версиях до Android 3.0. Чтобы иметь возможность использовать все необходимые API, загрузите библиотеку и добавьте ее в свое приложение.</p> +href="{@docRoot}tools/support-library/index.html">вспомогательная библиотека</a>, позволяющая работать с API <PH>{@link android.app.Fragment}</PH> в версиях до Android 3.0. Чтобы иметь возможность использовать все необходимые API, загрузите библиотеку и добавьте ее в свое приложение.</p> <h2>Уроки</h2> diff --git a/docs/html-intl/zh-cn/training/multiscreen/index.jd b/docs/html-intl/zh-cn/training/multiscreen/index.jd index 35c48e066c24..3514bd691322 100644 --- a/docs/html-intl/zh-cn/training/multiscreen/index.jd +++ b/docs/html-intl/zh-cn/training/multiscreen/index.jd @@ -19,7 +19,7 @@ href="http://developer.android.com/guide/components/activities.html">活动</a> <li>构建 Android <a href="http://developer.android.com/guide/topics/ui/index.html">用户界面</a>的经验</li> <li>多个功能需要用到<a -href="{@docRoot}tools/extras/support-library.html">支持库</a></li> +href="{@docRoot}tools/support-library/index.html">支持库</a></li> </ul> <h2>您还应参阅</h2> @@ -47,7 +47,7 @@ href="{@docRoot}tools/extras/support-library.html">支持库</a></li> <p>各教程中都提及了一种来自一个示例应用的代码,该应用展示了关于针对多种分辨率进行优化的最佳实践。您可以在右侧下载该示例,并在自己的应用内重复使用其中的代码。</p> <p class="note"><strong>请注意</strong>:本教程和相关的示例使用了<a -href="{@docRoot}tools/extras/support-library.html">支持库</a>,以便在 3.0 版以下的 Android 上使用 <PH>{@link android.app.Fragment}</PH> API。因此,您需要下载该库并将其添加到您的应用,才能使用本教程中涉及的所有 API。</p> +href="{@docRoot}tools/support-library/index.html">支持库</a>,以便在 3.0 版以下的 Android 上使用 <PH>{@link android.app.Fragment}</PH> API。因此,您需要下载该库并将其添加到您的应用,才能使用本教程中涉及的所有 API。</p> <h2>教程</h2> diff --git a/docs/html/_redirects.yaml b/docs/html/_redirects.yaml index 27cedcb82ea7..c23ee101dfab 100644 --- a/docs/html/_redirects.yaml +++ b/docs/html/_redirects.yaml @@ -19,7 +19,7 @@ redirects: to: /sdk/exploring.html - from: /sdk/compatibility-library.html - to: /tools/extras/support-library.html + to: /tools/support-library/index.html - from: /sdk/eclipse-adt.html to: /tools/sdk/eclipse-adt.html @@ -299,6 +299,9 @@ redirects: # ------------------- TRAINING ------------------- +- from: /guide/topics/ui/layout/tabs.html + to: /training/implementing-navigation/lateral.html + - from: /training/cloudsync/aesync.html to: /google/gcm/index.html diff --git a/docs/html/about/versions/android-4.0.jd b/docs/html/about/versions/android-4.0.jd index 1ce005d7ae31..2fa180c5ad17 100644 --- a/docs/html/about/versions/android-4.0.jd +++ b/docs/html/about/versions/android-4.0.jd @@ -822,7 +822,7 @@ the methods necessary for any given view without extending the {@link android.vi <p>If you want to maintain compatibility with Android versions prior to 4.0, while also supporting the new the accessibility APIs, you can do so with the latest version of the <em>v4 support -library</em> (in <a href="{@docRoot}tools/extras/support-library.html">Compatibility Package, r4</a>) +library</em> (in <a href="{@docRoot}tools/support-library/index.html">Compatibility Package, r4</a>) using a set of utility classes that provide the new accessibility APIs in a backward-compatible design.</p> diff --git a/docs/html/about/versions/android-4.3.jd b/docs/html/about/versions/android-4.3.jd index d0ccfbe08a53..bccc9d5fd7c2 100644 --- a/docs/html/about/versions/android-4.3.jd +++ b/docs/html/about/versions/android-4.3.jd @@ -36,7 +36,7 @@ sdk.platform.apiLevel=18 </li> <li><a href="#Multimedia">Multimedia</a> <ol> - <li><a href="#DASH">MPEG DASH support</a></li> + <li><a href="#MediaExtractor">MediaExtractor and MediaCodec enhancements</a></li> <li><a href="#DRM">Media DRM</a></li> <li><a href="#EncodingSurface">Video encoding from a Surface</a></li> <li><a href="#MediaMuxing">Media muxing</a></li> @@ -109,7 +109,7 @@ sdk.platform.apiLevel=18 <li><a href="{@docRoot}sdk/api_diff/18/changes.html">API Differences Report »</a> </li> <li><a -href="{@docRoot}tools/extras/support-library.html">Support Library</a></li> +href="{@docRoot}tools/support-library/index.html">Support Library</a></li> </ol> </div> @@ -150,7 +150,7 @@ href="{@docRoot}training/basics/supporting-devices/platforms.html">Supporting Di Platform Versions</a>.</p> <p>Various APIs are also available in the Android <a -href="{@docRoot}tools/extras/support-library.html">Support Library</a> that allow you to implement +href="{@docRoot}tools/support-library/index.html">Support Library</a> that allow you to implement new features on older versions of the platform.</p> <p>For more information about how API levels work, read <a @@ -439,10 +439,11 @@ android.Manifest.permission#SEND_RESPOND_VIA_MESSAGE} permission.</p> <h2 id="Multimedia">Multimedia</h2> -<h3 id="DASH">MPEG DASH support</h3> +<h3 id="MediaExtractor">MediaExtractor and MediaCodec enhancements</h3> -<p>Android now supports Dynamic Adaptive Streaming over HTTP (DASH) in accordance with the -ISO/IEC 23009-1 standard, using existing APIs in {@link android.media.MediaCodec} and {@link +<p>Android now makes it easier for you to write your own Dynamic Adaptive +Streaming over HTTP (DASH) players in accordance with the ISO/IEC 23009-1 standard, +using existing APIs in {@link android.media.MediaCodec} and {@link android.media.MediaExtractor}. The framework underlying these APIs has been updated to support parsing of fragmented MP4 files, but your app is still responsible for parsing the MPD metadata and passing the individual streams to {@link android.media.MediaExtractor}.</p> @@ -584,7 +585,13 @@ tag and the {@code android:glEsVersion} attribute. For example:</p> </manifest> </pre> -<p>And remember to specify the OpenGL ES context by calling {@link android.opengl.GLSurfaceView#setEGLContextClientVersion setEGLContextClientVersion()}, passing {@code 3} as the version.</p> +<p>And remember to specify the OpenGL ES context by calling {@link +android.opengl.GLSurfaceView#setEGLContextClientVersion setEGLContextClientVersion()}, +passing {@code 3} as the version.</p> + +<p>For more information about using OpenGL ES, including how to check the device's supported +OpenGL ES version at runtime, see the <a href="{@docRoot}guide/topics/graphics/opengl.html" +>OpenGL ES</a> API guide.</p> <h3 id="MipMap">Mipmapping for drawables</h3> @@ -936,7 +943,7 @@ android.text.TextDirectionHeuristic} constants from {@link android.text.TextDire to {@link android.text.BidiFormatter#unicodeWrap(String,TextDirectionHeuristic) unicodeWrap()}.</p> <p class="note"><strong>Note:</strong> These new APIs are also available for previous versions -of Android through the Android <a href="{@docRoot}tools/extras/support-library.html">Support +of Android through the Android <a href="{@docRoot}tools/support-library/index.html">Support Library</a>, with the {@link android.support.v4.text.BidiFormatter} class and related APIs.</p> @@ -974,7 +981,7 @@ android.view.accessibility.AccessibilityNodeInfo#ACTION_ARGUMENT_EXTEND_SELECTIO <p class="note"><strong>Note:</strong> These new APIs are also available for previous versions -of Android through the Android <a href="{@docRoot}tools/extras/support-library.html">Support +of Android through the Android <a href="{@docRoot}tools/support-library/index.html">Support Library</a>, with the {@link android.support.v4.view.accessibility.AccessibilityNodeInfoCompat} class.</p> diff --git a/docs/html/about/versions/jelly-bean.jd b/docs/html/about/versions/jelly-bean.jd index 985a26634b17..5deb1900106d 100644 --- a/docs/html/about/versions/jelly-bean.jd +++ b/docs/html/about/versions/jelly-bean.jd @@ -7,14 +7,7 @@ tab3=Android 4.1 tab3.link=#android-41 @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> + <style> #android-41 {display:none;} diff --git a/docs/html/channels/io2013.jd b/docs/html/channels/io2013.jd index b2bde312aa4f..977eb2f2aed3 100644 --- a/docs/html/channels/io2013.jd +++ b/docs/html/channels/io2013.jd @@ -1,15 +1,7 @@ fullpage=true page.title=Google I/O 13 @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> - + <style> #ioplayer-frame { z-index:10; diff --git a/docs/html/design/downloads/index.jd b/docs/html/design/downloads/index.jd index ab6bb1b67636..00f44677d8dd 100644 --- a/docs/html/design/downloads/index.jd +++ b/docs/html/design/downloads/index.jd @@ -1,13 +1,5 @@ page.title=Downloads @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <div class="layout-content-row"> <div class="layout-content-col span-9"> diff --git a/docs/html/design/index.jd b/docs/html/design/index.jd index d4ef07fd0c8f..1e6b40c5876b 100644 --- a/docs/html/design/index.jd +++ b/docs/html/design/index.jd @@ -2,14 +2,6 @@ page.title=Design header.hide=1 footer.hide=1 @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <style> #landing-graphic-container { diff --git a/docs/html/develop/index.jd b/docs/html/develop/index.jd index 7e2337c28f3c..1833f24e2e75 100644 --- a/docs/html/develop/index.jd +++ b/docs/html/develop/index.jd @@ -4,14 +4,6 @@ header.hide=1 carousel=1 tabbedList=1 @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <style> #noplayer-message { @@ -140,7 +132,7 @@ more</a></p> <li><a href="//android-developers.blogspot.com/2013/07/beautiful-design-collection-summer-2013.html"> <div class="feed-image" style="background:url('//1.bp.blogspot.com/-k8DZYu0daT4/UdRt1AzstvI/AAAAAAAAAFM/CvEkb2yh-i0/s965/beautifulapps_4.png') no-repeat 0 0"></div> <h4>The Beautiful Design Summer 2013 Collection</h4> - <p>See the apps chosen by the Android Design for their masterfully crafted design details...</p> + <p>See the apps chosen by the Android Design team for their masterfully crafted design details...</p> </a></li> <li><a href="//android-developers.blogspot.com/2013/06/google-play-developer-8-step-checkup.html"> <div class="feed-image" style="background:url('//4.bp.blogspot.com/-LeK74UYY1eM/UbD8L-2DpFI/AAAAAAAACZA/YMjwndr-ZgM/s400/DoctorDroidV2.png') no-repeat 0 0;background-size:130px;background-position:8px -4px;"></div> diff --git a/docs/html/distribute/distribute_toc.cs b/docs/html/distribute/distribute_toc.cs index 75cf9f93d13e..ecdf2a842301 100644 --- a/docs/html/distribute/distribute_toc.cs +++ b/docs/html/distribute/distribute_toc.cs @@ -80,6 +80,7 @@ <div class="nav-section-header"><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/index.html">Spotlight</a></div> <ul> <li><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/tablets.html">Tablet Stories</a></li> + <li><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/games.html">Game Stories</a></li> </ul> </li> diff --git a/docs/html/distribute/googleplay/promote/badges.jd b/docs/html/distribute/googleplay/promote/badges.jd index 93092bfcb66e..9a32921e2cbf 100644 --- a/docs/html/distribute/googleplay/promote/badges.jd +++ b/docs/html/distribute/googleplay/promote/badges.jd @@ -1,13 +1,5 @@ page.title=Google Play Badges @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <p itemprop="description">Google Play badges allow you to promote your app with official branding in your online ads, promotional materials, or anywhere else you want a link to your app.</p> diff --git a/docs/html/distribute/googleplay/promote/brand.jd b/docs/html/distribute/googleplay/promote/brand.jd index a047b1fa098a..265584f6fa83 100644 --- a/docs/html/distribute/googleplay/promote/brand.jd +++ b/docs/html/distribute/googleplay/promote/brand.jd @@ -1,13 +1,6 @@ page.title=Brand Guidelines @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> + <p>We encourage you to use the Android and Google Play brands with your Android app diff --git a/docs/html/distribute/googleplay/promote/index.jd b/docs/html/distribute/googleplay/promote/index.jd index 14f37c4d1b5c..68829907fe22 100644 --- a/docs/html/distribute/googleplay/promote/index.jd +++ b/docs/html/distribute/googleplay/promote/index.jd @@ -3,14 +3,6 @@ page.metaDescription=Raise the visibility of your apps in Google Play through de header.hide=0 footer.hide=0 @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <!-- <style> diff --git a/docs/html/distribute/googleplay/promote/linking.jd b/docs/html/distribute/googleplay/promote/linking.jd index 014582a39e43..4fdc5dba1a9a 100644 --- a/docs/html/distribute/googleplay/promote/linking.jd +++ b/docs/html/distribute/googleplay/promote/linking.jd @@ -1,13 +1,5 @@ page.title=Linking to Your Products @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <div class="sidebox-wrapper"> <div class="sidebox"> diff --git a/docs/html/distribute/googleplay/publish/preparing.jd b/docs/html/distribute/googleplay/publish/preparing.jd index dd35b25aeb6a..5593f4f8efc9 100644 --- a/docs/html/distribute/googleplay/publish/preparing.jd +++ b/docs/html/distribute/googleplay/publish/preparing.jd @@ -1,14 +1,6 @@ page.title=Launch Checklist page.tags="publishing","launch","Google Play", "Developer Console" @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <div id="qv-wrapper"><div id="qv"> <h2>Checklist</h2> diff --git a/docs/html/distribute/googleplay/quality/core.jd b/docs/html/distribute/googleplay/quality/core.jd index 3fd221cddda4..9e23bcca28a5 100644 --- a/docs/html/distribute/googleplay/quality/core.jd +++ b/docs/html/distribute/googleplay/quality/core.jd @@ -1,13 +1,5 @@ page.title=Core App Quality Guidelines @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <div id="qv-wrapper"><div id="qv"> <h2>Quality Criteria</h2> diff --git a/docs/html/distribute/googleplay/quality/index.jd b/docs/html/distribute/googleplay/quality/index.jd index def42e503950..ef537b14f8e7 100644 --- a/docs/html/distribute/googleplay/quality/index.jd +++ b/docs/html/distribute/googleplay/quality/index.jd @@ -1,13 +1,5 @@ page.title=App Quality @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <p>App quality directly influences the long-term success of your app—in terms of installs, user rating and reviews, engagement, and user retention. diff --git a/docs/html/distribute/googleplay/quality/tablet.jd b/docs/html/distribute/googleplay/quality/tablet.jd index c80c3cc978ba..36e7345976bd 100644 --- a/docs/html/distribute/googleplay/quality/tablet.jd +++ b/docs/html/distribute/googleplay/quality/tablet.jd @@ -1,13 +1,5 @@ page.title=Tablet App Quality Checklist @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <div id="qv-wrapper"><div id="qv"> <h2>Checklist</h2> @@ -312,7 +304,7 @@ without blurring or other scaling artifacts.</p> <td>144x144 px</td> <td>96x96 px</td> <td>48x48 px</td> -<td>74x74 px</td> +<td>72x72 px</td> </tr> </table> diff --git a/docs/html/distribute/googleplay/spotlight/games.jd b/docs/html/distribute/googleplay/spotlight/games.jd new file mode 100644 index 000000000000..4e356dbe7afa --- /dev/null +++ b/docs/html/distribute/googleplay/spotlight/games.jd @@ -0,0 +1,245 @@ +page.title=Developer Stories: Google Play Game Services +walkthru=0 +header.hide=0 + +@jd:body + +<p>One of the goals of <a href="https://developers.google.com/games/">Google +Play game services</a> is to allow developers to focus on what they’re good at +as game developers — creating great gaming experiences for their users, by +building on top of what Google is good at: mobile and cloud services. Integral +to that is an easy integration process, one that provides a whole host of +features with little engineering work required.</p> + +<p>The gaming studios below understood the opportunity that Google Play game +services unlocked, and are starting to see real results following their +successful integrations. </p> + +<div style="margin-bottom:2em;"><!-- START STORY --> + +<h3>Concrete Software — Straightforward, easy to implement</h3> + +<img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px height:78px; + width: 78px; + float: left; + margin: 12px 20px 9px 20px;" + src="//lh6.ggpht.com/_UOay5HBxf077suKYzmikU2IbnYOJub3X0inz-LoUsVh4TX758BEyArjoR7owXijkAA=w124"> + +<div style="list-style: none;height:100%; + float: right; + border-top: 1px solid #9C0; + width: 220px; + margin: 4px 20px;padding: .5em;"> + + <h5>About the developer</h5> + <ul> + <li><a href="https://play.google.com/store/apps/developer?id=Concrete%20Software%2C%20Inc.">Concrete Software</a>, + makers of <a href="https://play.google.com/store/apps/details?id=com.concretesoftware.pbachallenge_androidmarket&hl=en">PBA + Bowling Challenge</a></li> + <li>Added support for multiplayer, leaderboards and achievements through Google Play game + services</li> + </ul> + + <h5>Results</h5> + <ul> + <li>Session lengths have increased more than 15%</li> + </ul> + + <div style="padding:.5em 0 0 1em;"> + <a href="https://play.google.com/store/apps/details?id=com.concretesoftware.pbachallenge_androidmarket&hl=en"> + <img alt="Android app on Google Play" src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" /> + </a> + </div> +</div> + +<div style="line-height:1.4em;"> +<p style="margin-top:0;margin-bottom:12px;">Concrete Software added several +features from Google Play game services into one of their top titles, +<a href="https://play.google.com/store/apps/details?id=com.concretesoftware.pbachallenge_androidmarket">PBA +Bowling Challenge</a>, including support for multiplayer, leaderboards, and +achievements.</p> + +<p>So far, their users have loved the new additions: average session length +is up more than 15%. Keith Pichelman, CEO of Concrete Software, explains: </p> + +<p>"The Google Play game services were straightforward and easy to implement. We +had been researching options for multiplayer services, so when Google Play game +services came out, it was an easy decision for us. Not only were they easy to +integrate, but the features have worked flawlessly. </p> + +<p>"PBA Bowling Challenge now has real-time multiplayer which our users instantly +were thrilled with; you can see in the reviews how people immediately raved about +the new game experience. </p> + +<p>"We also included achievements, leaderboards, and most recently cloud +synchronization from the Google Play game services as well. Using the game +services in PBA Bowling Challenge was a huge success, enough so that we are now +going back to our other titles, adding the features to them as well."</p> +</div> + +<div style="clear:both;margin-top:40px;width:auto;"> + + <img src="{@docRoot}images/distribute/concrete-pbc-gpgames.jpg"> + + <div style="width:600px;margin-top:0px;padding:0 90px;"> + <p class="image-caption"><span style="font-weight:500;">Session lengths up:</span> + After adding support for multiplayer with Google Play game services, Concrete + Software saw an increase in session lengths of more than 15% for PBA Bowling + Challenge.</p> + </div> +</div> +</div> <!-- END STORY --> + +<div style="margin:3em auto"><!-- START STORY --> + +<h3>Glu: It’s a must-have for all titles</h3> + +<img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px height:78px; + width: 78px; + float: left; + margin: 12px 20px 30px 20px;" + src="//lh5.ggpht.com/l20dR2HYLV8vECoC35q_0NdfaAGTe4lZIFy_wCJRDqZjeQqSgneLRpXi3qOnnCaLXA=w124"> + +<div style="list-style: none;height:100%; + float: right; + border-top: 1px solid #9C0; + width: 220px; + margin: 4px 20px;padding: .5em;"> + + <h5>About the developer</h5> + <ul> + <li><a href="https://play.google.com/store/apps/developer?id=Glu+Mobile">Glu + Mobile</a>, creators of <a href="https://play.google.com/store/apps/details?id=com.glu.ewarriors2">Eternity + Warriors 2</a></li> + <li>Has already integrated 5 titles with Google Play game services</li> + </ul> + + <h5>Results</h5> + <ul> + <li>In Eternity Warriors 2, 7-day user retention is up 40%</li> + <li>20% increase in play sessions per day as well</li> + </ul> + + <div style="padding:.5em 0 0 1em;"> + <a href="https://play.google.com/store/apps/details?id=com.glu.ewarriors2"> + <img alt="Android app on Google Play" src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" /> + </a> + </div> +</div> + +<div style="line-height:1.4em;"> +<p style="margin-top:0;margin-bottom:12px;">Glu was one of the first developers +to integrate Google Play game services, with +<a href="https://play.google.com/store/apps/details?id=com.glu.ewarriors2">Eternity +Warriors 2</a>. Based on this first success, Glu has integrated game services +into several more games, including Samurai vs. Zombies 2, Frontline Commando: +D-Day, Contract Killer 2, and Zombies Ate My Friends.</p> + +<p>Already supported in Eternity Warriors 2, they’ve seen a 40% increase in 7-day +user retention and a 20% increase in play sessions per day. Sourabh Ahuja, Glu's +Vice President of Android Development, explains:</p> + +<p>“Multiplayer, leaderboards, achievements — these are all things that we +had to build individually for our titles. The availability of these features in +Google Play game services helps us make our games stickier, and it’s awesome that +it comes directly from Google. </p> + +<p>"It’s flexible enough that we were able to make it interoperable with our +in-house systems. We look forward to utilizing game services extensively across +our portfolio."</p> +</div> + +<div style="clear:both;margin-top:40px;width:auto;"> + + <img src="{@docRoot}images/distribute/glu-ew-gpgames.jpg"></a> + + <div style="width:600px;margin-top:0px;padding:0 90px;"> + <p class="image-caption"><span style="font-weight:500;">User retention up:</span> + Glu saw a 40% increase in 7-day user retention for Eternity Warriors 2 after + integrating with Google Play game services.</p> + </div> +</div> +</div> <!-- END STORY --> + + +<div style="margin-bottom:2em;"><!-- START STORY --> + +<h3>Vector-Unit: An awesome multiplayer experience</h3> + +<img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px height:78px; + width: 78px; + float: left; + margin: 12px 20px 9px 20px;" src= + "https://lh3.ggpht.com/dTUrKLffqXHJtPuIlp8fjDhROuzrTcpidbNFprugR65hMrPLX7Omd8SGop0xMXXKzcw=w124"> + +<div style="list-style: none;height:100%; + float: right; + border-top: 1px solid #9C0; + width: 220px; + margin: 4px 20px;padding: .5em;"> + + <h5>About the developer</h5> + <ul> + <li><a href="https://play.google.com/store/apps/developer?id=Vector+Unit">Vector + Unit</a>, creators of <a href="https://play.google.com/store/apps/details?id=com.vectorunit.red">Riptide + GP2</a></li> + <li>Added multiplayer to Riptide GP2 through Google Play game services </li> + </ul> + + <h5>Results</h5> + <ul> + <li>With an easy multiplayer solution, they were able to focus on the + gameplay</li> + <li>Early reviews of Riptide GP2 called multiplayer “one of the sweetest + cherries on top!”</li> + </ul> + + <div style="padding:.5em 0 0 1em;"> + <a href="https://play.google.com/store/apps/details?id=com.vectorunit.red"> + <img alt="Android app on Google Play" src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" /> + </a> + </div> +</div> + +<div style="line-height:1.4em;"> +<p style="margin-top:0;margin-bottom:12px;">Vector Unit just launched their +latest title, <a href="https://play.google.com/store/apps/details?id=com.vectorunit.red">Riptide +GP2</a>, with Google Play game services integration, and it has one of the strongest +integrations of multiplayer yet. Early reviews call multiplayer “one of the sweetest +cherries on top!”.</p> + +<p>Ralf Knoesel, CTO of Vector Unit, tells more about how they've used Google Play game +services:</p> + +<p>“We wanted to provide a really compelling multiplayer experience for our users, and +Google Play game services allowed us to do just that. With multiplayer, you can show off +your skills and your custom-tuned hydro jet in 4-way online battles with friends and +players around the world. </p> + +<p>"By providing an easy way to power this multiplayer experience, we were able to focus +on making the gameplay come alive — like the stunts, which are more daring and +slicker than ever (with more of them to master), or the realistic detail of the water +splashing against the camera lens.”</p> + +</div> + +<div style="clear:both;margin-top:40px;width:auto;"> + + <img src="{@docRoot}images/distribute/vector-unit-rt-gpgames.jpg"></a> + + <div style="width:600px;margin-top:0px;padding:0 90px;"> + <p class="image-caption"><span style="font-weight:500;">Multiplayer and more:</span> + Google Play game services helped Vector Unit pack an awesome multiplayer experience + into Riptide GP 2, so they could focus on building a great gaming experience.</p> + </div> +</div> +</div> <!-- END STORY --> + + + diff --git a/docs/html/distribute/googleplay/spotlight/index.jd b/docs/html/distribute/googleplay/spotlight/index.jd index 7004b0a63cb4..c59962892cae 100644 --- a/docs/html/distribute/googleplay/spotlight/index.jd +++ b/docs/html/distribute/googleplay/spotlight/index.jd @@ -3,14 +3,7 @@ walkthru=0 header.hide=0 @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> + <p>Android developers, their apps, and their successes with Android and Google Play. </p> diff --git a/docs/html/distribute/index.jd b/docs/html/distribute/index.jd index 8e7c6e1b221b..54f93015e8d6 100644 --- a/docs/html/distribute/index.jd +++ b/docs/html/distribute/index.jd @@ -2,14 +2,6 @@ page.title=Distribute Apps header.hide=1 @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <div class="marquee"> diff --git a/docs/html/distribute/promote/device-art.jd b/docs/html/distribute/promote/device-art.jd index 09a39417fe46..89231b2bed28 100644 --- a/docs/html/distribute/promote/device-art.jd +++ b/docs/html/distribute/promote/device-art.jd @@ -1,13 +1,5 @@ page.title=Device Art Generator @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <p>The device art generator allows you to quickly wrap your app screenshots in real device artwork. This provides better visual context for your app screenshots on your web site or in other @@ -47,7 +39,9 @@ feature image or screenshots for your Google Play app listing.</p> </p> </div> <div class="layout-content-col span-10"> - <div id="output">No input image.</div> + <!-- position:relative fixes an issue where dragging an image out of a inline-block container + produced no drag feedback image in Chrome 28. --> + <div id="output" style="position:relative">No input image.</div> </div> </div> @@ -143,6 +137,8 @@ feature image or screenshots for your Google Play app listing.</p> // Global variables var g_currentImage; var g_currentDevice; + var g_currentObjectURL; + var g_currentBlob; // Global constants var MSG_INVALID_INPUT_IMAGE = 'Invalid screenshot provided. Screenshots must be PNG files ' @@ -267,14 +263,15 @@ feature image or screenshots for your Google Play app listing.</p> return; } + polyfillCanvasToBlob(); setupUI(); // Set up Chrome drag-out $.event.props.push("dataTransfer"); document.body.addEventListener('dragstart', function(e) { - var a = e.target; - if (a.classList.contains('dragout')) { - e.dataTransfer.setData('DownloadURL', a.dataset.downloadurl); + var target = e.target; + if (target.classList.contains('dragout')) { + e.dataTransfer.setData('DownloadURL', target.dataset.downloadurl); } }, false); }); @@ -419,7 +416,7 @@ feature image or screenshots for your Google Play app listing.</p> ctx.translate(-h, 0); ctx.drawImage(g_currentImage, 0, 0); - loadImageFromUri(canvas.toDataURL(), function(img) { + loadImageFromUri(canvas.toDataURL('image/png'), function(img) { g_currentImage = img; createFrame(); }); @@ -459,10 +456,10 @@ feature image or screenshots for your Google Play app listing.</p> var resourceImages = {}; loadImageResources(resList, function(r) { resourceImages = r; - continuation_(); + continueWithResources_(); }); - function continuation_() { + function continueWithResources_() { var width = resourceImages['back'].naturalWidth; var height = resourceImages['back'].naturalHeight; var offset = port ? g_currentDevice.portOffset : g_currentDevice.landOffset; @@ -486,17 +483,46 @@ feature image or screenshots for your Google Play app listing.</p> ctx.drawImage(resourceImages['fore'], 0, 0); } - var dataUrl = canvas.toDataURL(); + window.URL = window.URL || window.webkitURL; + if (canvas.toBlob && window.URL.createObjectURL) { + if (g_currentObjectURL) { + window.URL.revokeObjectURL(g_currentObjectURL); + g_currentObjectURL = null; + } + if (g_currentBlob) { + if (g_currentBlob.close) { + g_currentBlob.close(); + } + g_currentBlob = null; + } + + canvas.toBlob(function(blob) { + if (!blob) { + continueWithFinalUrl_(canvas.toDataURL('image/png')); + return; + } + g_currentBlob = blob; + g_currentObjectURL = window.URL.createObjectURL(blob); + continueWithFinalUrl_(g_currentObjectURL); + }, 'image/png'); + } else { + continueWithFinalUrl_(canvas.toDataURL('image/png')); + } + } + + function continueWithFinalUrl_(imageUrl) { var filename = g_currentFilename - ? ('framed_' + g_currentFilename) + ? g_currentFilename.replace(/^(.+?)(\.\w+)?$/, '$1_framed.png') : 'framed_screenshot.png'; var $link = $('<a>') .attr('download', filename) - .attr('href', dataUrl) - .attr('draggable', true) - .attr('data-downloadurl', ['image/png', filename, dataUrl].join(':')) - .append($('<img>').attr('src', dataUrl)) + .attr('href', imageUrl) + .append($('<img>') + .addClass('dragout') + .attr('src', imageUrl) + .attr('draggable', true) + .attr('data-downloadurl', ['image/png', filename, imageUrl].join(':'))) .appendTo($('#output').empty()); $('#frame-customizations').show(); @@ -566,14 +592,14 @@ feature image or screenshots for your Google Play app listing.</p> var file = null; for (var i = 0; i < fileList.length; i++) { - if (fileList[i].type.toLowerCase().match(/^image\/png/)) { + if (fileList[i].type.toLowerCase().match(/^image\/(png|jpeg|jpg)/)) { file = fileList[i]; break; } } if (!file) { - alert('Please use a valid screenshot file (PNG format).'); + alert('Please use a valid screenshot file (PNG or JPEG format).'); callback(null); return; } @@ -609,4 +635,28 @@ feature image or screenshots for your Google Play app listing.</p> fileReader.readAsDataURL(file); } + + /** + * Adds a simple version of Canvas.toBlob if toBlob isn't available. + */ + function polyfillCanvasToBlob() { + if (!HTMLCanvasElement.prototype.toBlob && window.Blob) { + HTMLCanvasElement.prototype.toBlob = function(callback, mimeType, quality) { + if (typeof callback != 'function') { + throw new TypeError('Function expected'); + } + var dataURL = this.toDataURL(mimeType, quality); + mimeType = dataURL.split(';')[0].split(':')[1]; + var bs = window.atob(dataURL.split(',')[1]); + if (dataURL == 'data:,' || !bs.length) { + callback(null); + return; + } + for (var ui8arr = new Uint8Array(bs.length), i = 0; i < bs.length; ++i) { + ui8arr[i] = bs.charCodeAt(i); + } + callback(new Blob([ui8arr.buffer /* req'd for Safari */ || ui8arr], {type: mimeType})); + }; + } + } </script> diff --git a/docs/html/google/index.jd b/docs/html/google/index.jd index 095388e0dc6e..4020cf451274 100644 --- a/docs/html/google/index.jd +++ b/docs/html/google/index.jd @@ -1,14 +1,6 @@ page.title=Google Services header.hide=1 @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <style> div.landing-cell, diff --git a/docs/html/google/play-services/auth.jd b/docs/html/google/play-services/auth.jd index 3ccc81a8240b..7acaf1cd6834 100644 --- a/docs/html/google/play-services/auth.jd +++ b/docs/html/google/play-services/auth.jd @@ -23,7 +23,7 @@ page.tags="AccountManager","oauth2" </p> <p>For implementation details, see the sample in <code><android-sdk>/extras/google-play-services/samples/auth</code>, -which shows you how to carry out these basic steps for obtaining an acesss token.</p> +which shows you how to carry out these basic steps for obtaining an access token.</p> <h2 id="choose">Choosing an Account</h2> <p> diff --git a/docs/html/google/play/billing/gp-purchase-status-api.jd b/docs/html/google/play/billing/gp-purchase-status-api.jd index d6b251ea9d0a..c5b84616d0aa 100644 --- a/docs/html/google/play/billing/gp-purchase-status-api.jd +++ b/docs/html/google/play/billing/gp-purchase-status-api.jd @@ -118,13 +118,13 @@ Purchase Status API. For security reasons, the app should not normally attempt t the purchase itself using the Purchase Status API.</p> <p>If the backend server determines that the purchase is valid, it notifies the -app and grant access to the content. For improved performance, the backend servers -should store the purchase details and order status in a local database, updated a +app and grants access to the content. For improved performance, the backend servers +should store the purchase details and order status in a local database, updated at intervals or as-needed.</p> -<p>Keep in mind that users will want to be able to use your app at any time, including +<p>Keep in mind that users will want the ability to use your app at any time, including when there may be no network connection available. Make sure that your approach to -purchase verification takes account of the offline use-case.</p> +purchase verification accounts for the offline use-case.</p> <h2 id="practices">Using the API Efficiently</h2> @@ -154,7 +154,7 @@ minimize your access using the techniques below. </p> query each day to check the status of expiring subscriptions, then update the database. Note that: <ul> - <li>Your servers should not query all subscriptions every day</li> + <li>Your servers should not query all subscriptions every day.</li> <li>Your servers should never query subscription status dynamically, based on individual requests from your Android application.</li> </ul> @@ -162,5 +162,6 @@ minimize your access using the techniques below. </p> </ul> <p>By following those general guidelines, your implementation will offer the -best possible performance for users and minimize use of the Google Play Android -Developer API.</p> +best possible performance for users and minimize use of the <a +href="https://developers.google.com/android-publisher/v1_1/">Google Play Android +Developer API</a>.</p> diff --git a/docs/html/google/play/billing/index.jd b/docs/html/google/play/billing/index.jd index 0818514fd532..481a79ce0143 100644 --- a/docs/html/google/play/billing/index.jd +++ b/docs/html/google/play/billing/index.jd @@ -1,13 +1,5 @@ page.title=Google Play In-app Billing @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <p>In-app Billing is a Google Play service that lets you sell digital content from inside your applications. You can use the service to sell a wide range of content, including downloadable diff --git a/docs/html/google/play/publishing/multiple-apks.jd b/docs/html/google/play/publishing/multiple-apks.jd index 64ddc106972c..3c7ed0f4e930 100644 --- a/docs/html/google/play/publishing/multiple-apks.jd +++ b/docs/html/google/play/publishing/multiple-apks.jd @@ -47,7 +47,7 @@ support all desired devices with a single APK</li> <li><a href="{@docRoot}google/play/expansion-files.html">APK Expansion Files</a></li> <li><a href="{@docRoot}google/play/filters.html">Filters on Google Play</a></li> <li><a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a></li> - <li><a href="{@docRoot}tools/extras/support-library.html">Support Library</a></li> + <li><a href="{@docRoot}tools/support-library/index.html">Support Library</a></li> <li><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Android API Levels</a></li> </ol> @@ -628,7 +628,7 @@ different screen sizes.</p> href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a>.</p> <p>Additionally, you should consider using a support library from the <a -href="{@docRoot}tools/extras/support-library.html">Compatibility Package</a> so that you can add <a +href="{@docRoot}tools/support-library/index.html">Compatibility Package</a> so that you can add <a href="{@docRoot}guide/components/fragments.html">Fragments</a> to your activity designs when running on larger screens such as tablets.</p> @@ -643,7 +643,7 @@ over 95% of Android-powered devices (as indicated by the <a href="{@docRoot}about/dashboards/index.html">Platform Versions</a> dashboard).</p> <p>By using a support library from the <a -href="{@docRoot}tools/extras/support-library.html">Compatibility Package</a>, you can also use APIs +href="{@docRoot}tools/support-library/index.html">Compatibility Package</a>, you can also use APIs from some of the latest versions (such as Android 3.0) while still supporting versions as low as Android 1.6. The support library includes APIs for <a href="{@docRoot}guide/components/fragments.html">Fragments</a>, <a diff --git a/docs/html/guide/components/index.jd b/docs/html/guide/components/index.jd index 6ede87350fb9..87bae53bf22a 100644 --- a/docs/html/guide/components/index.jd +++ b/docs/html/guide/components/index.jd @@ -4,14 +4,6 @@ page.landing.intro=Android's application framework lets you create extremely ric page.landing.image=images/develop/app_components.png @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <div class="landing-docs"> diff --git a/docs/html/guide/components/tasks-and-back-stack.jd b/docs/html/guide/components/tasks-and-back-stack.jd index a21bf34bc8d1..f818873ab256 100644 --- a/docs/html/guide/components/tasks-and-back-stack.jd +++ b/docs/html/guide/components/tasks-and-back-stack.jd @@ -142,9 +142,8 @@ started Task A. Now, Task A comes to the foreground—all three activities in its stack are intact and the activity at the top of the stack resumes. At this point, the user can also switch back to Task B by going Home and selecting the application icon -that started that task (or by touching and holding the <em>Home</em> button to reveal recent tasks -and selecting -one). This is an example of multitasking on Android.</p> +that started that task (or by selecting the app's task from the <em>recent apps</em> screen). +This is an example of multitasking on Android.</p> <p class="note"><strong>Note:</strong> Multiple tasks can be held in the background at once. However, if the user is running many background tasks at the same time, the system might begin diff --git a/docs/html/guide/guide_toc.cs b/docs/html/guide/guide_toc.cs index db08c3e62645..2a313748744a 100644 --- a/docs/html/guide/guide_toc.cs +++ b/docs/html/guide/guide_toc.cs @@ -146,9 +146,6 @@ <li><a href="<?cs var:toroot ?>guide/topics/ui/layout/grid.html"> <span class="en">Grid Layout</span> </a></li> - <li><a href="<?cs var:toroot ?>guide/topics/ui/layout/tabs.html"> - <span class="en">Tab Layout</span> - </a></li> --> <li><a href="<?cs var:toroot ?>guide/topics/ui/layout/listview.html"> <span class="en">List View</span> diff --git a/docs/html/guide/practices/optimizing-for-3.0.jd b/docs/html/guide/practices/optimizing-for-3.0.jd index 465a847f68e6..fea54af80608 100644 --- a/docs/html/guide/practices/optimizing-for-3.0.jd +++ b/docs/html/guide/practices/optimizing-for-3.0.jd @@ -54,7 +54,7 @@ onclick="$('#naMessage').hide();$('#deprecatedSticker').show()" /> <li><a href="tablets-and-handsets.html">Supporting Tablets and Handsets</a></li> <li><a -href="{@docRoot}tools/extras/support-library.html">Compatibility Library</a></li> +href="{@docRoot}tools/support-library/index.html">Compatibility Library</a></li> <li><a href="http://code.google.com/p/iosched/">Google I/O App source code</a></li> </ol> @@ -281,7 +281,7 @@ use techniques such as reflection to check for the availability of certain APIs to help you add features from Android 3.0 without requiring you to change your <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code android:minSdkVersion}</a> or build target, we're providing a static library called the <a -href="{@docRoot}tools/extras/support-library.html">Compatibility Library</a> +href="{@docRoot}tools/support-library/index.html">Compatibility Library</a> (downloadable from the Android SDK Manager).</p> <p>This library includes APIs for <a href="{@docRoot}guide/components/fragments.html">fragments</a>, <a @@ -289,7 +289,7 @@ href="{@docRoot}guide/components/loaders.html">loaders</a>, and some updated cla simply adding this library to your Android project, you can use these APIs in your application and remain compatible with Android 1.6. For information about how to get the library and start using it in your application, see the <a -href="{@docRoot}tools/extras/support-library.html">Compatibility Library</a> document.</p> +href="{@docRoot}tools/support-library/index.html">Compatibility Library</a> document.</p> </div> </div> diff --git a/docs/html/guide/practices/tablets-and-handsets.jd b/docs/html/guide/practices/tablets-and-handsets.jd index 8d6d3dd3777f..a63a368ab920 100644 --- a/docs/html/guide/practices/tablets-and-handsets.jd +++ b/docs/html/guide/practices/tablets-and-handsets.jd @@ -141,7 +141,7 @@ bar below.</p> <h3>Remaining backward-compatible</h3> <p>If you want to use fragments in your application <em>and</em> remain compatible with versions of Android older than 3.0, you can do so by using the Android <a -href="{@docRoot}tools/extras/support-library.html">Support Library</a> (downloadable from the +href="{@docRoot}tools/support-library/index.html">Support Library</a> (downloadable from the SDK Manager).</p> <p>The support library includes APIs for <a href="{@docRoot}guide/components/fragments.html">fragments</a>, <a @@ -150,7 +150,7 @@ versions of Android. By simply adding this library to your Android project, you backward-compatible versions of these APIs in your application and remain compatible with Android 1.6 (your <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code android:minSdkVersion}</a> value can be as low as {@code "4"}). For information about how to get the -library and start using it, see the <a href="{@docRoot}tools/extras/support-library.html">Support +library and start using it, see the <a href="{@docRoot}tools/support-library/index.html">Support Library</a> document.</p> <p>The support library <em>does not</em> provide APIs for the action bar, but you can use diff --git a/docs/html/guide/topics/ui/accessibility/apps.jd b/docs/html/guide/topics/ui/accessibility/apps.jd index 13b4538edeb7..da24d03adf60 100644 --- a/docs/html/guide/topics/ui/accessibility/apps.jd +++ b/docs/html/guide/topics/ui/accessibility/apps.jd @@ -351,7 +351,7 @@ following approaches:</p> <li>If your application targets Android 4.0 (API level 14) and higher, override and implement the accessibility methods listed above directly in your custom view class.</li> <li>If your custom view is intended to be compatible with Android 1.6 (API Level 4) and above, add -the Android <a href="{@docRoot}tools/extras/support-library.html">Support Library</a>, revision 5 or +the Android <a href="{@docRoot}tools/support-library/index.html">Support Library</a>, revision 5 or higher, to your project. Then, within your custom view class, call the {@link android.support.v4.view.ViewCompat#setAccessibilityDelegate ViewCompat.setAccessibilityDelegate()} method to implement the accessibility methods @@ -490,7 +490,7 @@ appropriate feedback to users.</p> <p>The example code below shows how override these three methods by using {@link android.support.v4.view.ViewCompat#setAccessibilityDelegate ViewCompat.setAccessibilityDelegate()}. Note that this sample code requires that the Android -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a> for API Level 4 (revision +<a href="{@docRoot}tools/support-library/index.html">Support Library</a> for API Level 4 (revision 5 or higher) is added to your project.</p> <pre> @@ -534,7 +534,7 @@ ViewCompat.setAccessibilityDelegate(new AccessibilityDelegateCompat() { <p>In applications targeting Android 4.0 (API Level 14) and higher, you can implement these methods directly in your custom view class. For another example of this approach, see the Android -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a> (revision 5 or higher) +<a href="{@docRoot}tools/support-library/index.html">Support Library</a> (revision 5 or higher) sample {@code AccessibilityDelegateSupportActivity} in ({@code <sdk>/extras/android/support/v4/samples/Support4Demos/}).</p> @@ -594,7 +594,7 @@ methods.</p> example implementation of this accessibility feature, see {@code AccessibilityNodeProviderActivity} in the ApiDemos sample project. You can implement a virtual view hierarchy that is compatible with Android 1.6 and later by using the - <a href="{@docRoot}tools/extras/support-library.html">Support Library</a> with the + <a href="{@docRoot}tools/support-library/index.html">Support Library</a> with the {@link android.support.v4.view.ViewCompat#getAccessibilityNodeProvider ViewCompat.getAccessibilityNodeProvider()} method and providing an implementation with {@link android.support.v4.view.accessibility.AccessibilityNodeProviderCompat}.</p> diff --git a/docs/html/guide/topics/ui/accessibility/checklist.jd b/docs/html/guide/topics/ui/accessibility/checklist.jd index 9473d1bd3f9d..960cca290671 100644 --- a/docs/html/guide/topics/ui/accessibility/checklist.jd +++ b/docs/html/guide/topics/ui/accessibility/checklist.jd @@ -73,7 +73,7 @@ helps you focus on the key development issues to get the details of accessibilit your application, <a href="{@docRoot}guide/topics/ui/accessibility/apps.html#custom-views"> implement accessibility interfaces</a> for your custom views and provide content descriptions. For custom controls that are intended to be compatible with versions of Android back to 1.6, - use the <a href="{@docRoot}tools/extras/support-library.html">Support Library</a> to implement + use the <a href="{@docRoot}tools/support-library/index.html">Support Library</a> to implement the latest accessibility features.</li> <li><strong>No audio-only feedback:</strong> Audio feedback must always have a secondary feedback mechanism to support users who are deaf or hard of hearing. For example, a sound alert diff --git a/docs/html/guide/topics/ui/accessibility/services.jd b/docs/html/guide/topics/ui/accessibility/services.jd index 2a6fe7ab802d..4bd752f7c93f 100644 --- a/docs/html/guide/topics/ui/accessibility/services.jd +++ b/docs/html/guide/topics/ui/accessibility/services.jd @@ -55,7 +55,7 @@ accessibility service.</p> <p>The ability for you to build and deploy accessibility services was introduced with Android 1.6 (API Level 4) and received significant improvements with Android 4.0 (API Level 14). The Android - <a href="{@docRoot}tools/extras/support-library.html">Support Library</a> was also updated with + <a href="{@docRoot}tools/support-library/index.html">Support Library</a> was also updated with the release of Android 4.0 to provide support for these enhanced accessibility features back to Android 1.6. Developers aiming for widely compatible accessibility services are encouraged to use the Support Library and develop for the more advanced accessibility features introduced in @@ -448,7 +448,7 @@ android.accessibilityservice.AccessibilityService} and can be used as a base for accessibility services that are compatible with Android 1.6 (API Level 4) and higher.</li> <li><a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/accessibility/TaskBackService.html">TaskBackService</a> - This service is based on the enhanced accessibility APIs introduced in Android 4.0 (API Level -14). However, you can use the Android <a href="{@docRoot}tools/extras/support-library.html">Support +14). However, you can use the Android <a href="{@docRoot}tools/support-library/index.html">Support Libary</a> to substitute classes introduced in later API levels (e.g., {@link android.view.accessibility.AccessibilityRecord}, {@link android.view.accessibility.AccessibilityNodeInfo} diff --git a/docs/html/guide/topics/ui/actionbar.jd b/docs/html/guide/topics/ui/actionbar.jd index 453d9d7c6aba..10ab61ffbe43 100644 --- a/docs/html/guide/topics/ui/actionbar.jd +++ b/docs/html/guide/topics/ui/actionbar.jd @@ -1,7 +1,6 @@ page.title=Action Bar page.tags="actionbar","menu" -parent.title=User Interface -parent.link=index.html + @jd:body @@ -89,7 +88,7 @@ design guide.</p> <p>The {@link android.app.ActionBar} APIs were first added in Android 3.0 (API level 11) but they are also available in the <a href="{@docRoot}tools/support-library/index.html">Support Library</a> -for compatibility with Android 2.2 (API level 7) and above.</p> +for compatibility with Android 2.1 (API level 7) and above.</p> <p><b>This guide focuses on how to use the support library's action bar</b>, but if your app supports <em>only</em> Android 3.0 or higher, you @@ -133,7 +132,7 @@ Library Setup</a>.</p> </li> </ol> -<p>Now your activity includes the action bar when running on Android 2.2 (API level 7) or higher. +<p>Now your activity includes the action bar when running on Android 2.1 (API level 7) or higher. </p> <div class="note"> @@ -254,11 +253,11 @@ showAsAction="ifRoom"} in the {@code <item>} tag. For example:</p> <pre> <menu xmlns:android="http://schemas.android.com/apk/res/android" - <strong>xmlns:example.app="http://schemas.android.com/apk/res-auto"</strong> > + <strong>xmlns:yourapp="http://schemas.android.com/apk/res-auto"</strong> > <item android:id="@+id/action_search" android:icon="@drawable/ic_action_search" android:title="@string/action_search" - <strong>example.app:showAsAction="ifRoom"</strong> /> + <strong>yourapp:showAsAction="ifRoom"</strong> /> ... </menu> </pre> @@ -282,7 +281,7 @@ want to display the text title, add {@code "withText"} to the {@code showAsActio attribute. For example:</p> <pre> -<item example.app:showAsAction="ifRoom|withText" ... /> +<item yourapp:showAsAction="ifRoom|withText" ... /> </pre> <p class="note"><strong>Note:</strong> The {@code "withText"} value is a <em>hint</em> to the @@ -373,33 +372,29 @@ items on a narrow screen, while leaving room for navigation and title elements a <p>To enable split action bar when using the support library, you must do two things:</p> <ol> - <li>Add {@code uiOptions="splitActionBarWhenNarrow"} to your -<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code <activity>}</a> or + <li>Add {@code uiOptions="splitActionBarWhenNarrow"} to each +<a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code <activity>}</a> +element or to the <a href="{@docRoot}guide/topics/manifest/application-element.html">{@code <application>}</a> -manifest element. This attribute is understood only by API level 14 and higher (it is ignored -by older versions). - <li>For older versions, create a custom theme that extends one of the {@link - android.support.v7.appcompat.R.style#Theme_AppCompat Theme.AppCompat} themes, and include - the {@link android.support.v7.appcompat.R.attr#windowSplitActionBar windowSplitActionBar} style - set {@code true}. For example: - <p class="code-caption">res/values/styles.xml</p> - <pre> -<style name="MyAppTheme" parent="Theme.AppCompat.Light"> - <item name="windowSplitActionBar">true<item> -</style> -</pre> +element. This attribute is understood only by API level 14 and higher (it is ignored +by older versions).</li> + <li>To support older versions, add a <a + href="{@docRoot}guide/topics/manifest/meta-data-element.html">{@code <meta-data>}</a> + element as a child of each + <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code <activity>}</a> + element that declares the same value for {@code "android.support.UI_OPTIONS"}.</li> +</ol> - <p>Then set this as your activity theme:</p> +<p>For example:</p> - <p class="code-caption">AndroidManifest.xml</p> - <pre> +<pre> <manifest ...> - <activity android:theme="@style/MyAppTheme" ...> - ... -</manifest ...> + <activity uiOptions="splitActionBarWhenNarrow" ... > + <meta-data android:name="android.support.UI_OPTIONS" + android:value="splitActionBarWhenNarrow" /> + </activity> +</manifest> </pre> - </li> -</ol> <p>Using split action bar also allows <a href="#Tabs">navigation tabs</a> to collapse into the @@ -572,12 +567,12 @@ the {@link android.support.v7.widget.SearchView} widget:</p> <pre> <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:example.app="http://schemas.android.com/apk/res-auto" > + xmlns:yourapp="http://schemas.android.com/apk/res-auto" > <item android:id="@+id/action_search" android:title="@string/action_search" android:icon="@drawable/ic_action_search" - example.app:showAsAction="ifRoom|collapseActionView" - <b>example.app:actionViewClass="android.support.v7.widget.SearchView"</b> /> + yourapp:showAsAction="ifRoom|collapseActionView" + <b>yourapp:actionViewClass="android.support.v7.widget.SearchView"</b> /> </menu> </pre> @@ -720,11 +715,11 @@ the {@link android.support.v7.widget.ShareActionProvider} class. For example:</p <pre> <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:example.app="http://schemas.android.com/apk/res-auto" > + xmlns:yourapp="http://schemas.android.com/apk/res-auto" > <item android:id="@+id/action_share" android:title="@string/share" - example.app:showAsAction="ifRoom" - <strong>example.app:actionProviderClass="android.support.v7.widget.ShareActionProvider"</strong> + yourapp:showAsAction="ifRoom" + <strong>yourapp:actionProviderClass="android.support.v7.widget.ShareActionProvider"</strong> /> ... </menu> diff --git a/docs/html/guide/topics/ui/controls/pickers.jd b/docs/html/guide/topics/ui/controls/pickers.jd index a0e7afbe940d..4c558406cc44 100644 --- a/docs/html/guide/topics/ui/controls/pickers.jd +++ b/docs/html/guide/topics/ui/controls/pickers.jd @@ -47,11 +47,11 @@ such as in a basic dialog on handsets or as an embedded part of the layout on la <p>Although {@link android.app.DialogFragment} was first added to the platform in Android 3.0 (API level 11), if your app supports versions of Android older than 3.0—even as low as Android 1.6—you can use the {@link android.support.v4.app.DialogFragment} class that's available in -the <a href="{@docRoot}tools/extras/support-library.html">support library</a> for backward +the <a href="{@docRoot}tools/support-library/index.html">support library</a> for backward compatibility.</p> <p class="note"><strong>Note:</strong> The code samples below show how to create dialogs for a time -picker and date picker using the <a href="{@docRoot}tools/extras/support-library.html">support +picker and date picker using the <a href="{@docRoot}tools/support-library/index.html">support library</a> APIs for {@link android.support.v4.app.DialogFragment}. If your app's <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code minSdkVersion}</a> is 11 or higher, you can instead use the platform version of {@link android.app.DialogFragment}.</p> @@ -67,7 +67,7 @@ fragment's {@link android.support.v4.app.DialogFragment#onCreateDialog onCreateD <p class="note"><strong>Note:</strong> If your app supports versions of Android older than 3.0, be sure you've set up your Android project with the support library as described in <a -href="{@docRoot}tools/extras/support-library.html#SettingUp">Setting Up a Project to Use a +href="{@docRoot}tools/support-library/setup.html">Setting Up a Project to Use a Library</a>.</p> <h3 id="TimePickerFragment">Extending DialogFragment for a time picker</h3> @@ -172,7 +172,7 @@ fragment's {@link android.support.v4.app.DialogFragment#onCreateDialog onCreateD <p class="note"><strong>Note:</strong> If your app supports versions of Android older than 3.0, be sure you've set up your Android project with the support library as described in <a -href="{@docRoot}tools/extras/support-library.html#SettingUp">Setting Up a Project to Use a +href="{@docRoot}tools/support-library/setup.html">Setting Up a Project to Use a Library</a>.</p> <h3 id="DatePickerFragment">Extending DialogFragment for a date picker</h3> diff --git a/docs/html/guide/topics/ui/declaring-layout.jd b/docs/html/guide/topics/ui/declaring-layout.jd index 6398646e70f1..6586c2f1a767 100644 --- a/docs/html/guide/topics/ui/declaring-layout.jd +++ b/docs/html/guide/topics/ui/declaring-layout.jd @@ -359,23 +359,6 @@ partially or totally obscuring them (unless the newer object is transparent). <p>Enables you to specify the location of child objects relative to each other (child A to the left of child B) or to the parent (aligned to the top of the parent).</p> </div> - -<!-- -<div class="layout"> - <h4><a href="layout/tabs.html">Tabs</a></h4> - <a href="layout/tabs.html"><img src="{@docRoot}images/ui/tabs-small.png" alt="" /></a> - <p>Provides a tab selection list that monitors clicks and enables the application to change -the screen whenever a tab is clicked.</p> -</div> - -<div class="layout first"> - <h4><a href="layout/grid.html">Table Layout</a></h4> - <a href="layout/table.html"><img src="{@docRoot}images/ui/gridlayout-small.png" alt="" /></a> - <p>A tabular layout with an arbitrary number of rows and columns, each cell holding the -widget of your choice. The rows resize to fit the largest column. The cell borders are not -visible.</p> -</div> ---> <div class="layout"> <h4><a href="{@docRoot}guide/webapps/webview.html">Web View</a></h4> diff --git a/docs/html/guide/topics/ui/dialogs.jd b/docs/html/guide/topics/ui/dialogs.jd index 7f48eacbdbd2..09767bff0754 100644 --- a/docs/html/guide/topics/ui/dialogs.jd +++ b/docs/html/guide/topics/ui/dialogs.jd @@ -97,7 +97,7 @@ object. If you'd like to create a date or time picker, you should instead read t Because the {@link android.app.DialogFragment} class was originally added with Android 3.0 (API level 11), this document describes how to use the {@link android.support.v4.app.DialogFragment} class that's provided with the <a -href="{@docRoot}tools/extras/support-library.html">Support Library</a>. By adding this library +href="{@docRoot}tools/support-library/index.html">Support Library</a>. By adding this library to your app, you can use {@link android.support.v4.app.DialogFragment} and a variety of other APIs on devices running Android 1.6 or higher. If the minimum version your app supports is API level 11 or higher, then you can use the framework version of {@link diff --git a/docs/html/guide/topics/ui/layout/listview.jd b/docs/html/guide/topics/ui/layout/listview.jd index 6cdd725ddb1c..f8315c5777b4 100644 --- a/docs/html/guide/topics/ui/layout/listview.jd +++ b/docs/html/guide/topics/ui/layout/listview.jd @@ -48,7 +48,7 @@ displays the results.</p> <p>Although the {@link android.support.v4.content.CursorLoader} APIs were first introduced in Android 3.0 (API level 11), they are also available in the <a -href="{@docRoot}tools/extras/support-library.html">Support Library</a> so that your app may use them +href="{@docRoot}tools/support-library/index.html">Support Library</a> so that your app may use them while supporting devices running Android 1.6 or higher.</p> <p>For more information about using a {@link diff --git a/docs/html/guide/topics/ui/layout/tabs.jd b/docs/html/guide/topics/ui/layout/tabs.jd deleted file mode 100644 index 62663de8a84d..000000000000 --- a/docs/html/guide/topics/ui/layout/tabs.jd +++ /dev/null @@ -1,219 +0,0 @@ -page.title=Tabbed -parent.title=Layouts -parent.link=layout-objects.html -@jd:body -<div id="qv-wrapper"> -<div id="qv"> -<h2>In this document</h2> - <ol> - <li><a href="#example">Example</a></li> - </ol> - <h2>Key classes</h2> - <ol> -<li>{@link android.widget.TabWidget}</li> -<li>{@link android.widget.TabHost}</li> -<li>{@link android.widget.TabHost.TabSpec}</li> -<li>{@link android.widget.FrameLayout}</li> - </ol> -</div> -</div> -<p>To create a tabbed UI, you need to use a {@link android.widget.TabHost} and a {@link -android.widget.TabWidget}. The {@link android.widget.TabHost} must be the root node for the layout, -which contains both the {@link android.widget.TabWidget} for displaying the tabs and a {@link -android.widget.FrameLayout} for displaying the tab content.</p> - -<img src="{@docRoot}images/ui/tabs.png" alt="" /> - -<p>You can implement your tab content in one of two ways: use the tabs to swap -{@link android.view.View}s within the same {@link android.app.Activity}, or use the tabs to change -between entirely separate activities. Which method you want for your application will depend on your -demands, but if each tab provides a distinct user activity, then it probably makes sense to use -a separate {@link android.app.Activity} for each tab, so that you can better manage the application -in discrete groups, rather than one massive application and layout.</p> -<h2 id="example">Example</h2> -<p>In this tutorial, you'll create a tabbed UI that uses a separate {@link -android.app.Activity} for each tab.</p> - -<ol> - <li>Start a new project named <em>HelloTabWidget</em>.</li> - <li>First, create three separate {@link android.app.Activity} classes in your project: -<code>ArtistsActivity</code>, <code>AlbumsActivity</code>, and <code>SongsActivity</code>. These -will each represent a separate tab. For now, make each one display a simple message using a {@link -android.widget.TextView}. For example: -<pre> -public class ArtistsActivity extends Activity { - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - - TextView textview = new TextView(this); - textview.setText("This is the Artists tab"); - setContentView(textview); - } -} -</pre> - <p>Notice that this doesn't use a layout file. Just create a {@link -android.widget.TextView}, give it some text and set that as the content. Duplicate this for -each of the three activities, and add the corresponding <code><activity/></code> tags to the Android Manifest file.</p> - - <li>You need an icon for each of your tabs. For each icon, you should create two versions: one -for when the tab is selected and one for when it is unselected. The -general design recommendation is for the selected icon to be a dark color (grey), and the -unselected icon to be a light color (white). (See the <a -href="{@docRoot}guide/practices/ui_guidelines/icon_design.html#tabstructure">Icon Design -Guidelines</a>.) For example: - <p> - <img src="images/ic_tab_artists_white.png" title="unselected tab icon" alt="" /> - <img src="images/ic_tab_artists_grey.png" title="selected tab icon" alt="" /> - </p> - <p>For this tutorial, you can copy these images and use them for all three tabs. (When you -create tabs in your own application, you should create customized tab icons.)</p> - <p>Now create a <a -href="{@docRoot}guide/topics/resources/drawable-resource.html#StateList">state-list drawable</a> -that specifies which image to use for each tab state:</p> - <ol> - <li>Save the icon images in your project <code>res/drawable/</code> directory.</li> - <li>Create a new XML file in <code>res/drawable/</code> -named <code>ic_tab_artists.xml</code> and insert the following: -<pre> -<?xml version="1.0" encoding="utf-8"?> -<selector xmlns:android="http://schemas.android.com/apk/res/android"> - <!-- When selected, use grey --> - <item android:drawable="@drawable/ic_tab_artists_grey" - android:state_selected="true" /> - <!-- When not selected, use white--> - <item android:drawable="@drawable/ic_tab_artists_white" /> -</selector> -</pre> - <p>This is a <a -href="{@docRoot}guide/topics/resources/drawable-resource.html#StateList">state-list drawable</a>, -which you will apply as the tab image. When the tab state changes, the tab icon will -automatically switch between the images defined here.</p> - </li> - </ol> - </li> - - <li>Open the <code>res/layout/main.xml</code> file and insert the following: - <pre> -<?xml version="1.0" encoding="utf-8"?> -<TabHost xmlns:android="http://schemas.android.com/apk/res/android" - android:id="@android:id/tabhost" - android:layout_width="fill_parent" - android:layout_height="fill_parent"> - <LinearLayout - android:orientation="vertical" - android:layout_width="fill_parent" - android:layout_height="fill_parent" - android:padding="5dp"> - <TabWidget - android:id="@android:id/tabs" - android:layout_width="fill_parent" - android:layout_height="wrap_content" /> - <FrameLayout - android:id="@android:id/tabcontent" - android:layout_width="fill_parent" - android:layout_height="fill_parent" - android:padding="5dp" /> - </LinearLayout> -</TabHost> -</pre> - <p>This is the layout that will display the tabs and provide navigation between each {@link - android.app.Activity} created above.</p> - <p>The {@link android.widget.TabHost} requires that a {@link android.widget.TabWidget} and a -{@link android.widget.FrameLayout} both live somewhere within it. To position the {@link -android.widget.TabWidget} and {@link android.widget.FrameLayout} vertically, a {@link -android.widget.LinearLayout} is used. The {@link android.widget.FrameLayout} is where the content -for each tab goes, which is empty now because the {@link android.widget.TabHost} will automatically -embed each {@link android.app.Activity} within it.</p> - <p>Notice that the {@link android.widget.TabWidget} and the {@link android.widget.FrameLayout} - elements have the IDs {@code tabs} and {@code tabcontent}, respectively. These names - must be used so that the {@link android.widget.TabHost} can retrieve references to each of - them. It expects exactly these names.</p> - </li> - - <li>Now open <code>HelloTabWidget.java</code> and make it extend {@link - android.app.TabActivity}:</p> -<pre> -public class HelloTabWidget extends TabActivity { -</pre> - </li> - <li>Use the following code for the {@link android.app.Activity#onCreate(Bundle) onCreate()} - method: -<pre> -public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.main); - - Resources res = getResources(); // Resource object to get Drawables - TabHost tabHost = getTabHost(); // The activity TabHost - TabHost.TabSpec spec; // Resusable TabSpec for each tab - Intent intent; // Reusable Intent for each tab - - // Create an Intent to launch an Activity for the tab (to be reused) - intent = new Intent().setClass(this, ArtistsActivity.class); - - // Initialize a TabSpec for each tab and add it to the TabHost - spec = tabHost.newTabSpec("artists").setIndicator("Artists", - res.getDrawable(R.drawable.ic_tab_artists)) - .setContent(intent); - tabHost.addTab(spec); - - // Do the same for the other tabs - intent = new Intent().setClass(this, AlbumsActivity.class); - spec = tabHost.newTabSpec("albums").setIndicator("Albums", - res.getDrawable(R.drawable.ic_tab_albums)) - .setContent(intent); - tabHost.addTab(spec); - - intent = new Intent().setClass(this, SongsActivity.class); - spec = tabHost.newTabSpec("songs").setIndicator("Songs", - res.getDrawable(R.drawable.ic_tab_songs)) - .setContent(intent); - tabHost.addTab(spec); - - tabHost.setCurrentTab(2); -} -</pre> - <p>This sets up each tab with their text and icon, and assigns each one an {@link -android.app.Activity}.</p> - <p>A reference to the {@link android.widget.TabHost} is first captured with {@link -android.app.TabActivity#getTabHost()}. Then, for -each tab, a {@link android.widget.TabHost.TabSpec} is created to define the tab properties. The -{@link android.widget.TabHost#newTabSpec(String)} method creates a new {@link -android.widget.TabHost.TabSpec} identified by the given string tag. For each -{@link android.widget.TabHost.TabSpec}, {@link -android.widget.TabHost.TabSpec#setIndicator(CharSequence,Drawable)} is called to set the text and -icon for the tab, and {@link android.widget.TabHost.TabSpec#setContent(Intent)} is called to specify -the {@link android.content.Intent} to open the appropriate {@link android.app.Activity}. Each -{@link android.widget.TabHost.TabSpec} is then added to the {@link android.widget.TabHost} by -calling {@link android.widget.TabHost#addTab(TabHost.TabSpec)}.</p> - - <p>At the very end, {@link - android.widget.TabHost#setCurrentTab(int)} opens the tab to be displayed by default, specified - by the index position of the tab.</p> - - <p>Notice that not once was the {@link android.widget.TabWidget} object referenced. This is - because a {@link android.widget.TabWidget} must always be a child of a {@link - android.widget.TabHost}, which is what you use for almost all interaction with the tabs. So when - a tab is added to the {@link android.widget.TabHost}, it's automatically added to the child - {@link android.widget.TabWidget}.</p> - </li> - - <li>Now open the Android Manifest file and add the <code>NoTitleBar</code> theme to the -<em>HelloTabWidget</em>'s - <code><activity></code> tag. This will remove the default application title from the top - of the layout, leaving more space for the tabs, which effectively operate as their own titles. - The <code><activity></code> tag should look like this: -<pre> -<activity android:name=".HelloTabWidget" android:label="@string/app_name" - android:theme="@android:style/Theme.NoTitleBar"> -</pre> - </li> - - <li>Run the application.</li> -</ol> - - -<p>Your application should look like this (though your icons may be different):</p> -<img src="images/hello-tabwidget.png" width="150px" /> - - diff --git a/docs/html/guide/topics/ui/notifiers/notifications.jd b/docs/html/guide/topics/ui/notifiers/notifications.jd index 05ec279fa7be..e0c87d74d431 100644 --- a/docs/html/guide/topics/ui/notifiers/notifications.jd +++ b/docs/html/guide/topics/ui/notifiers/notifications.jd @@ -94,7 +94,7 @@ page.title=Notifications <p class="note"> <strong>Note:</strong> Except where noted, this guide refers to the {@link android.support.v4.app.NotificationCompat.Builder NotificationCompat.Builder} class - in the version 4 <a href="{@docRoot}tools/extras/support-library.html">Support Library</a>. + in the version 4 <a href="{@docRoot}tools/support-library/index.html">Support Library</a>. The class {@link android.app.Notification.Builder Notification.Builder} was added in Android 3.0. </p> diff --git a/docs/html/images/distribute/concrete-pbc-gpgames.jpg b/docs/html/images/distribute/concrete-pbc-gpgames.jpg Binary files differnew file mode 100644 index 000000000000..c97ba8e74296 --- /dev/null +++ b/docs/html/images/distribute/concrete-pbc-gpgames.jpg diff --git a/docs/html/images/distribute/glu-ew-gpgames.jpg b/docs/html/images/distribute/glu-ew-gpgames.jpg Binary files differnew file mode 100644 index 000000000000..8d97f8de71c1 --- /dev/null +++ b/docs/html/images/distribute/glu-ew-gpgames.jpg diff --git a/docs/html/images/distribute/vector-unit-rt-gpgames.jpg b/docs/html/images/distribute/vector-unit-rt-gpgames.jpg Binary files differnew file mode 100644 index 000000000000..323f188aaa3c --- /dev/null +++ b/docs/html/images/distribute/vector-unit-rt-gpgames.jpg diff --git a/docs/html/images/tools/sdk-manager-support-libs.png b/docs/html/images/tools/sdk-manager-support-libs.png Binary files differnew file mode 100644 index 000000000000..37968005c789 --- /dev/null +++ b/docs/html/images/tools/sdk-manager-support-libs.png diff --git a/docs/html/index.jd b/docs/html/index.jd index a945f0a7a504..bbb6a16bc567 100644 --- a/docs/html/index.jd +++ b/docs/html/index.jd @@ -3,14 +3,6 @@ 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. @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> <div class="wrap"> diff --git a/docs/html/sdk/exploring.jd b/docs/html/sdk/exploring.jd index 9323f2e707c5..77490602d5c6 100644 --- a/docs/html/sdk/exploring.jd +++ b/docs/html/sdk/exploring.jd @@ -77,7 +77,7 @@ Google APIs.</td> </tr> <tr> - <td><a href="{@docRoot}tools/extras/support-library.html">Android Support</a></td> + <td><a href="{@docRoot}tools/support-library/index.html">Android Support</a></td> <td>A static library you can include in your app sources in order to use powerful APIs that aren't available in the standard platform. For example, the support library contains versions of the {@link android.support.v4.app.Fragment} class that's compatible with diff --git a/docs/html/sdk/index.jd b/docs/html/sdk/index.jd index aa3b2ec8761b..4ea375263d7d 100644 --- a/docs/html/sdk/index.jd +++ b/docs/html/sdk/index.jd @@ -5,43 +5,43 @@ header.hide=1 page.metaDescription=Download the official Android SDK to develop apps for Android-powered devices. -sdk.linux32_bundle_download=adt-bundle-linux-x86-20130717.zip -sdk.linux32_bundle_bytes=440035305 -sdk.linux32_bundle_checksum=ecfacb91df1ee63cce1edd4f1a5cda5a +sdk.linux32_bundle_download=adt-bundle-linux-x86-20130729.zip +sdk.linux32_bundle_bytes=457716139 +sdk.linux32_bundle_checksum=b3686d10dc1cbceba1074404d4386283 -sdk.linux64_bundle_download=adt-bundle-linux-x86_64-20130717.zip -sdk.linux64_bundle_bytes=440322117 -sdk.linux64_bundle_checksum=ab177a06784340b8f1d136651e3dc62a +sdk.linux64_bundle_download=adt-bundle-linux-x86_64-20130729.zip +sdk.linux64_bundle_bytes=458006784 +sdk.linux64_bundle_checksum=1fabcc3f772ba8b2fc194d6e0449da17 -sdk.mac64_bundle_download=adt-bundle-mac-x86_64-20130717.zip -sdk.mac64_bundle_bytes=411609229 -sdk.mac64_bundle_checksum=07c891212a49b5f8495ea9d8d47ba3fe +sdk.mac64_bundle_download=adt-bundle-mac-x86_64-20130729.zip +sdk.mac64_bundle_bytes=428792424 +sdk.mac64_bundle_checksum=6c42b9966abcfa8a75c0ee83d0d95882 -sdk.win32_bundle_download=adt-bundle-windows-x86-20130717.zip -sdk.win32_bundle_bytes=446783216 -sdk.win32_bundle_checksum=0dd91095999d3539ca1ec4033d83d935 +sdk.win32_bundle_download=adt-bundle-windows-x86-20130729.zip +sdk.win32_bundle_bytes=463931746 +sdk.win32_bundle_checksum=51faf4e5fdf9c5b4a176179a99ce3511 -sdk.win64_bundle_download=adt-bundle-windows-x86_64-20130717.zip -sdk.win64_bundle_bytes=446911629 -sdk.win64_bundle_checksum=61ec74995b39166db7f079017a028cec +sdk.win64_bundle_download=adt-bundle-windows-x86_64-20130729.zip +sdk.win64_bundle_bytes=464064756 +sdk.win64_bundle_checksum=e8f05c1fddb8e609e880de23113c7426 -sdk.linux_download=android-sdk_r22.0.4-linux.tgz -sdk.linux_bytes=105640988 -sdk.linux_checksum=4a5db98a58c68c24e66f04f07ac77da5 +sdk.linux_download=android-sdk_r22.0.5-linux.tgz +sdk.linux_bytes=105641005 +sdk.linux_checksum=8201b10c21510f082c54f58a9bb082c8 -sdk.mac_download=android-sdk_r22.0.4-macosx.zip -sdk.mac_bytes=77225662 -sdk.mac_checksum=384752505f4f2ba3627bd6aad0697f11 +sdk.mac_download=android-sdk_r22.0.5-macosx.zip +sdk.mac_bytes=77225724 +sdk.mac_checksum=94f3cbe896c332b94ee0408ae610a4b8 -sdk.win_download=android-sdk_r22.0.4-windows.zip -sdk.win_bytes=113507679 -sdk.win_checksum=320b11d1ed85fd3f5e937697c333d895 +sdk.win_download=android-sdk_r22.0.5-windows.zip +sdk.win_bytes=113510621 +sdk.win_checksum=30695dffc41e0d7cf9ff948ab0c48920 -sdk.win_installer=installer_r22.0.4-windows.exe -sdk.win_installer_bytes=93502726 -sdk.win_installer_checksum=96a8ae367d84ed219e1eb2cf473667d0 +sdk.win_installer=installer_r22.0.5-windows.exe +sdk.win_installer_bytes=93505782 +sdk.win_installer_checksum=940849be19ac6151e3e35c8706c81d86 diff --git a/docs/html/sdk/installing/installing-adt.jd b/docs/html/sdk/installing/installing-adt.jd index 2a09636a256f..bdc07d02283d 100644 --- a/docs/html/sdk/installing/installing-adt.jd +++ b/docs/html/sdk/installing/installing-adt.jd @@ -1,8 +1,8 @@ page.title=Installing the Eclipse Plugin -adt.zip.version=22.0.4 -adt.zip.download=ADT-22.0.4.zip -adt.zip.bytes=16838756 -adt.zip.checksum=f0291f4bb9d78ec34a7751cd2402cc2a +adt.zip.version=22.0.5 +adt.zip.download=ADT-22.0.5.zip +adt.zip.bytes=16839757 +adt.zip.checksum=1097fccf32063e3638a9d27aa0f295ca @jd:body diff --git a/docs/html/sdk/installing/studio.jd b/docs/html/sdk/installing/studio.jd index 9a29599a16dd..5a47f85d62ca 100644 --- a/docs/html/sdk/installing/studio.jd +++ b/docs/html/sdk/installing/studio.jd @@ -398,7 +398,7 @@ href="{@docRoot}sdk/installing/studio-tips.html">Tips and Tricks</a>.</p> <p>As you continue developing apps, you may need to install additional versions of Android for the emulator and other packages such as the <a -href="{@docRoot}tools/extras/support-library.html">Android Support Library</a>. +href="{@docRoot}tools/support-library/index.html">Android Support Library</a>. To install more packages, use the <a href="{@docRoot}tools/help/sdk-manager.html">SDK Manager</a>, which you can open from Android Studio by clicking <strong>SDK Manager</strong> diff --git a/docs/html/sitemap.txt b/docs/html/sitemap.txt index 46164c170b79..6291a3e2d932 100644 --- a/docs/html/sitemap.txt +++ b/docs/html/sitemap.txt @@ -164,7 +164,7 @@ http://developer.android.com/tools/sdk/tools-notes.html http://developer.android.com/tools/sdk/eclipse-adt.html http://developer.android.com/tools/revisions/platforms.html http://developer.android.com/tools/extras/index.html -http://developer.android.com/tools/extras/support-library.html +http://developer.android.com/tools/support-library/index.html http://developer.android.com/tools/extras/oem-usb.html http://developer.android.com/tools/samples/index.html http://developer.android.com/tools/adk/index.html diff --git a/docs/html/tools/extras/oem-usb.jd b/docs/html/tools/extras/oem-usb.jd index 5e0e893710b0..e0bbf335d89b 100644 --- a/docs/html/tools/extras/oem-usb.jd +++ b/docs/html/tools/extras/oem-usb.jd @@ -227,7 +227,7 @@ href="http://www.acer.com/worldwide/support/mobile.html">http://www.acer.com/wor <tr> <td style="font-variant:small-caps">alcatel one touch</td> <td><a -href="http://www.alcatel-mobilephones.com/global/Android-Downloads">http://www.alcatel-mobilephones.com/global/Android-Downloads</a></td> +href="http://www.alcatelonetouch.com/global-en/support/faq/usbdriver.html">http://www.alcatelonetouch.com/global-en/support/faq/usbdriver.html</a></td> </tr> <tr> <td>Asus</td> diff --git a/docs/html/tools/help/sdk-manager.jd b/docs/html/tools/help/sdk-manager.jd index 215ce6f2743f..276206fc7540 100644 --- a/docs/html/tools/help/sdk-manager.jd +++ b/docs/html/tools/help/sdk-manager.jd @@ -55,7 +55,7 @@ plus others not included in the framework at all) on devices running a platform version as old as Android 1.6. All of the activity templates available when creating a new project with the <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> require this. For more information, read <a -href="{@docRoot}tools/extras/support-library.html">Support Library</a>.</dd> +href="{@docRoot}tools/support-library/index.html">Support Library</a>.</dd> <dt>SDK Samples</dt> <dd>Recommended. The samples give you source code that you can use to learn about Android, load as a project and run, or reuse in your own app. Note that multiple diff --git a/docs/html/tools/index.jd b/docs/html/tools/index.jd index e9094a79b820..f9d452c0c253 100644 --- a/docs/html/tools/index.jd +++ b/docs/html/tools/index.jd @@ -1,13 +1,6 @@ page.title=Developer Tools @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> + <img src="{@docRoot}images/tools-home.png" style="float:right;" height="415" width="763" /> diff --git a/docs/html/tools/publishing/preparing.jd b/docs/html/tools/publishing/preparing.jd index 8e265f66760c..413b56e05455 100644 --- a/docs/html/tools/publishing/preparing.jd +++ b/docs/html/tools/publishing/preparing.jd @@ -271,7 +271,7 @@ doing the following:</p> <li><strong>Consider using the Support Library</strong> <p>If your application is designed for devices running Android 3.x, make your application compatible with older versions of Android by adding the - <a href="{@docRoot}tools/extras/support-library.html">Support Library</a> to your + <a href="{@docRoot}tools/support-library/index.html">Support Library</a> to your application project. The Support Library provides static support libraries that you can add to your Android application, which enables you to use APIs that are either not available on older platform versions or use utility APIs that are not part of the framework APIs.</p> diff --git a/docs/html/tools/sdk/eclipse-adt.jd b/docs/html/tools/sdk/eclipse-adt.jd index 7b0b5a8f0eab..e9c514e064d3 100644 --- a/docs/html/tools/sdk/eclipse-adt.jd +++ b/docs/html/tools/sdk/eclipse-adt.jd @@ -57,6 +57,41 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <div class="toggle-content opened"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img" + alt=""/>ADT 22.0.5</a> <em>(July 2013)</em> + </p> + + <div class="toggle-content-toggleme"> +<dl> + <dt>Dependencies:</dt> + + <dd> + <ul> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r22.0.5</a>. + If you haven't already installed SDK Tools r22.0.5 into your SDK, use the + Android SDK Manager to do so.</li> + </ul> + </dd> + + <dt>General Notes:</dt> + <dd> + <ul> + <li>Fixed Renderscript compilation issue for Windows platforms.</li> + <li>Updated <a href="{@docRoot}tools/help/systrace.html">Systrace</a> report generation + in the Monitor and DDMS perspectives.</li> + </ul> + </dd> + +</dl> +</div> +</div> + + +<div class="toggle-content closed"> + <p><a href="#" onclick="return toggleContent(this)"> + <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""/>ADT 22.0.4</a> <em>(July 2013)</em> </p> @@ -66,11 +101,12 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> - <li>Java 1.6 or higher is required for ADT 22.0.4.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 22.0.4.</li> - <li>ADT 22.0.4 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK - Tools r22.0.4</a>. If you haven't already installed SDK Tools r22.0.4 into your SDK, use the - Android SDK Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r22.0.4</a>. + If you haven't already installed SDK Tools r22.0.4 into your SDK, use the + Android SDK Manager to do so.</li> </ul> </dd> @@ -102,11 +138,12 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> - <li>Java 1.6 or higher is required for ADT 22.0.1.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 22.0.1.</li> - <li>ADT 22.0.1 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK - Tools r22.0.1</a>. If you haven't already installed SDK Tools r22 into your SDK, use the - Android SDK Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r22.0.1</a>. + If you haven't already installed SDK Tools r22.0.1 into your SDK, use the + Android SDK Manager to do so.</li> </ul> </dd> @@ -138,11 +175,12 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> - <li>Java 1.6 or higher is required for ADT 22.0.0.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 22.0.0.</li> - <li>ADT 22.0.0 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK - Tools r22</a>. If you haven't already installed SDK Tools r22 into your SDK, use the - Android SDK Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r22</a>. + If you haven't already installed SDK Tools r22 into your SDK, use the + Android SDK Manager to do so.</li> </ul> </dd> @@ -181,11 +219,12 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> - <li>Java 1.6 or higher is required for ADT 21.1.0.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 21.1.0.</li> - <li>ADT 21.1.0 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK - Tools r21.1</a>. If you haven't already installed SDK Tools r21.1 into your SDK, use the - Android SDK Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r21.1</a>. + If you haven't already installed SDK Tools r21.1 into your SDK, use the + Android SDK Manager to do so.</li> </ul> </dd> @@ -238,11 +277,12 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> - <li>Java 1.6 or higher is required for ADT 21.0.1.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 21.0.1.</li> - <li>ADT 21.0.1 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK - Tools r21.0.1</a>. If you haven't already installed SDK Tools r21.0.1 into your SDK, use the - Android SDK Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r21.0.1</a>. + If you haven't already installed SDK Tools r21.0.1 into your SDK, use the + Android SDK Manager to do so.</li> </ul> </dd> @@ -357,11 +397,12 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> - <li>Java 1.6 or higher is required for ADT 20.0.3.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 21.0.0.</li> - <li>ADT 21.0.0 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK - Tools r21</a>. If you haven't already installed SDK Tools r21.0.0 into your SDK, use the - Android SDK Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r21</a>. + If you haven't already installed SDK Tools r21.0.0 into your SDK, use the + Android SDK Manager to do so.</li> </ul> </dd> @@ -478,11 +519,12 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> - <li>Java 1.6 or higher is required for ADT 20.0.3.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 20.0.3.</li> - <li>ADT 20.0.3 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK - Tools r20.0.3</a>. If you haven't already installed SDK Tools r20.0.3 into your SDK, use the - Android SDK Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r20.0.3</a>. + If you haven't already installed SDK Tools r20.0.3 into your SDK, use the + Android SDK Manager to do so.</li> </ul> </dd> @@ -512,11 +554,12 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> - <li>Java 1.6 or higher is required for ADT 20.0.2.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 20.0.2.</li> - <li>ADT 20.0.2 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK - Tools r20.0.1</a>. If you haven't already installed SDK Tools r20.0.1 into your SDK, use the - Android SDK Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r20.0.1</a>. + If you haven't already installed SDK Tools r20.0.1 into your SDK, use the + Android SDK Manager to do so.</li> </ul> </dd> @@ -547,11 +590,12 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> - <li>Java 1.6 or higher is required for ADT 20.0.1.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 20.0.1.</li> - <li>ADT 20.0.1 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK - Tools r20.0.1</a>. If you haven't already installed SDK Tools r20.0.1 into your SDK, use the - Android SDK Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r20.0.1</a>. + If you haven't already installed SDK Tools r20.0.1 into your SDK, use the + Android SDK Manager to do so.</li> </ul> </dd> @@ -588,11 +632,12 @@ unprotected receivers for default Android actions.</li> <dd> <ul> - <li>Java 1.6 or higher is required for ADT 20.0.0.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 20.0.0.</li> - <li>ADT 20.0.0 is designed for use with <a href="{@docRoot}sdk/tools-notes.html">SDK Tools - r20</a>. If you haven't already installed SDK Tools r20 into your SDK, use the Android SDK - Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}sdk/tools-notes.html">SDK Tools r20</a>. + If you haven't already installed SDK Tools r20 into your SDK, use the Android SDK + Manager to do so.</li> </ul> </dd> @@ -711,11 +756,12 @@ functions.</li> <dd> <ul> - <li>Java 1.6 or higher is required for ADT 18.0.0.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 18.0.0.</li> - <li>ADT 18.0.0 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools - r18</a>. If you haven't already installed SDK Tools r18 into your SDK, use the Android SDK - Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r18</a>. + If you haven't already installed SDK Tools r18 into your SDK, use the Android SDK + Manager to do so.</li> </ul> </dd> @@ -746,11 +792,12 @@ functions.</li> <dd> <ul> - <li>Java 1.6 or higher is required for ADT 17.0.0.</li> - <li>Eclipse Helios (Version 3.6.2) or higher is required for ADT 17.0.0.</li> - <li>ADT 17.0.0 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools - r17</a>. If you haven't already installed SDK Tools r17 into your SDK, use the Android SDK - Manager to do so.</li> + <li>Java 1.6 or higher is required.</li> + <li>Eclipse Helios (Version 3.6.2) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r17</a>. + If you haven't already installed SDK Tools r17 into your SDK, use the Android SDK + Manager to do so.</li> </ul> </dd> @@ -848,9 +895,10 @@ select. (<a href="http://code.google.com/p/android/issues/detail?id=20589">Issue <dd> <ul> - <li>Eclipse Helios (Version 3.6) or higher is required for ADT 16.0.1.</li> - <li>ADT 16.0.1 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools - r16</a>. If you haven't already installed SDK Tools r16 into your SDK, use the Android SDK + <li>Eclipse Helios (Version 3.6) or higher is required.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r16</a>. + If you haven't already installed SDK Tools r16 into your SDK, use the Android SDK Manager to do so.</li> </ul> </dd> @@ -882,11 +930,11 @@ select. (<a href="http://code.google.com/p/android/issues/detail?id=20589">Issue <dd> <ul> - <li>Eclipse Helios (Version 3.6) or higher is required for ADT -16.0.0.</li> - <li>ADT 16.0.0 is designed for use with <a -href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r16</a>. If you haven't already installed SDK Tools -r16 into your SDK, use the Android SDK Manager to do so.</li> + <li>Eclipse Helios (Version 3.6) or higher is required for ADT 16.0.0.</li> + <li>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r16</a>. + If you haven't already installed SDK Tools r16 into your SDK, use + the Android SDK Manager to do so.</li> </ul> </dd> @@ -913,9 +961,10 @@ href="http://tools.android.com/recent/lint">more info</a>)</li> <dl> <dt>Dependencies:</dt> - <dd>ADT 15.0.1 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r15</a>. - If you haven't already installed SDK Tools r15 into your SDK, use the Android SDK Manager to - do so.</dd> + <dd>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r15</a>. + If you haven't already installed SDK Tools r15 into your SDK, use the Android SDK Manager to + do so.</dd> <dt>Bug fixes:</dt> <dd> @@ -948,9 +997,10 @@ href="http://tools.android.com/recent/lint">more info</a>)</li> <dt>Dependencies:</dt> -<dd>ADT 15.0.0 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r15</a>. -If you haven't already installed SDK Tools r15 into your SDK, use the Android SDK Manager to -do so.</dd> +<dd>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r15</a>. + If you haven't already installed SDK Tools r15 into your SDK, use the Android SDK Manager to + do so.</dd> <dt>Bug fixes:</dt> <dd> @@ -980,9 +1030,10 @@ do so.</dd> <dt>Dependencies:</dt> -<dd>ADT 14.0.0 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r14</a>. -If you haven't already installed SDK Tools r14 into your SDK, use the Android SDK Manager to -do so.</dd> +<dd>This version of ADT is designed for use with + <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r14</a>. + If you haven't already installed SDK Tools r14 into your SDK, use the Android SDK Manager to + do so.</dd> <dt>Build system:</dt> <dd> @@ -1099,7 +1150,8 @@ Linux</a>.</dd> <dt>Dependencies:</dt> -<dd>ADT 12.0.0 is designed for use with <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r12</a>. If you haven't +<dd>This version of ADT is designed for use with +<a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r12</a>. If you haven't already installed SDK Tools r12 into your SDK, use the Android SDK Manager to do so.</dd> @@ -1152,7 +1204,7 @@ the Android SDK Manager to do so.</dd> <dt>Dependencies:</dt> -<dd>ADT 11.0.0 is designed for use with SDK Tools r11. If you haven't +<dd>This version of ADT is designed for use with SDK Tools r11. If you haven't already installed SDK Tools r11 into your SDK, use the Android SDK Manager to do so.</dd> @@ -1289,7 +1341,7 @@ href="http://tools.android.com/recent">Android Tools Project Site</a>.</p> <dt>Dependencies:</dt> -<dd>ADT 10.0.1 is designed for use with SDK Tools r10. If you haven't +<dd>This version of ADT is designed for use with SDK Tools r10. If you haven't already installed SDK Tools r10 into your SDK, use the Android SDK Manager to do so.</dd> @@ -1319,7 +1371,7 @@ requires Eclipse 3.5 or higher (as of 10.0.0).</li> <dt>Dependencies:</dt> -<dd>ADT 10.0.0 is designed for use with SDK Tools r10. If you haven't +<dd>This version of ADT is designed for use with SDK Tools r10. If you haven't already installed SDK Tools r10 into your SDK, use the Android SDK Manager to do so.</dd> @@ -1369,7 +1421,7 @@ so.</dd> <dt>Dependencies:</dt> -<dd>ADT 9.0.0 is designed for use with SDK Tools r9. If you haven't +<dd>This version of ADT is designed for use with SDK Tools r9. If you haven't already installed SDK Tools r9 into your SDK, use the Android SDK Manager to do so.</dd> @@ -1478,7 +1530,7 @@ so.</dd> <dt>Dependencies:</dt> -<p><p>ADT 8.0.1 is designed for use with SDK Tools r8. If you haven't +<p>This version of ADT is designed for use with SDK Tools r8. If you haven't already installed SDK Tools r8 into your SDK, use the Android SDK Manager to do so.</p></dd> @@ -1507,7 +1559,7 @@ so.</p></dd> <dt>Dependencies:</dt> -<p><p>ADT 8.0.0 is designed for use with SDK Tools r8. If you haven't +<p>This version of ADT is designed for use with SDK Tools r8. If you haven't already installed SDK Tools r8 into your SDK, use the Android SDK Manager to do so.</p></dd> @@ -1656,7 +1708,7 @@ project support through the Ant build system.</p> <dl> <dt>Dependencies:</dt> -<dd><p>ADT 0.9.6 is designed for use with SDK Tools r5 and later. Before +<dd><p>This version of ADT is designed for use with SDK Tools r5 and later. Before updating to ADT 0.9.6, we highly recommend that you use the Android SDK Manager to install SDK Tools r5 into your SDK.</p></dd> @@ -1725,7 +1777,7 @@ targets for application launches.</li> <dl> <dt>Dependencies:</dt> -<dd><p>ADT 0.9.5 requires features provided in SDK Tools r4 or higher. If you install +<dd><p>This version of ADT requires features provided in SDK Tools r4 or higher. If you install ADT 0.9.5, which is highly recommended, you should use the Android SDK Manager to download the latest SDK Tools into your SDK. For more information, see <a href="{@docRoot}sdk/exploring.html">Exploring the SDK</a>.</p> @@ -1755,7 +1807,7 @@ see <a href="{@docRoot}sdk/exploring.html">Exploring the SDK</a>.</p> <dl> <dt>Dependencies:</dt> -<dd><p>ADT 0.9.4 requires features provided in SDK Tools r3 or higher. If you install +<dd><p>This version of ADT requires features provided in SDK Tools r3 or higher. If you install ADT 0.9.4, which is highly recommended, you should use the Android SDK Manager to download the latest SDK Tools into your SDK. For more information, see <a href="{@docRoot}sdk/exploring.html">Exploring the SDK</a>.</p> diff --git a/docs/html/tools/sdk/ndk/index.jd b/docs/html/tools/sdk/ndk/index.jd index 1f34987e5aa0..61a91a849389 100644 --- a/docs/html/tools/sdk/ndk/index.jd +++ b/docs/html/tools/sdk/ndk/index.jd @@ -1,29 +1,59 @@ ndk=true page.template=sdk +ndk.mac64.legacy_download=android-ndk-r9-darwin-x86_64-legacy-toolchains.tar.bz2 +ndk.mac64.legacy_bytes=271922968 +ndk.mac64.legacy_checksum=251c21defcf90a2f0e8283bab90ed861 + ndk.mac64_download=android-ndk-r9-darwin-x86_64.tar.bz2 -ndk.mac64_bytes=726430529 -ndk.mac64_checksum=b975271d8f064611e7e12bf87b736826 +ndk.mac64_bytes=454408117 +ndk.mac64_checksum=ff27c8b9efc8260d9f883dc42d08f651 + + +ndk.mac32.legacy_download=android-ndk-r9-darwin-x86-legacy-toolchains.tar.bz2 +ndk.mac32.legacy_bytes=264053696 +ndk.mac32.legacy_checksum=9fd7f76a1f1f59386a34b019dcd20976 ndk.mac32_download=android-ndk-r9-darwin-x86.tar.bz2 -ndk.mac32_bytes=710781553 -ndk.mac32_checksum=6f7c4dd38df9079bb4b13846add5c0da +ndk.mac32_bytes=446858202 +ndk.mac32_checksum=781da0e6bb5b072512e67b879b56a74c + + +ndk.linux64.legacy_download=android-ndk-r9-linux-x86_64-legacy-toolchains.tar.bz2 +ndk.linux64.legacy_bytes=244427866 +ndk.linux64.legacy_checksum=3976a8237d75526b8a0f275375dd68b5 ndk.linux64_download=android-ndk-r9-linux-x86_64.tar.bz2 -ndk.linux64_bytes=669064468 -ndk.linux64_checksum=3eedc86b20ec09fcd1fd03f4481a706d +ndk.linux64_bytes=425113267 +ndk.linux64_checksum=0ccfd9960526e61d1527155fa6f84ac0 + + +ndk.linux32.legacy_download=android-ndk-r9-linux-x86-legacy-toolchains.tar.bz2 +ndk.linux32.legacy_bytes=241172797 +ndk.linux32.legacy_checksum=957c415de9d7c7ce1c2377ec4d3d60f1 ndk.linux32_download=android-ndk-r9-linux-x86.tar.bz2 -ndk.linux32_bytes=660787157 -ndk.linux32_checksum=999d155ba772c49baacee6d41d664922 +ndk.linux32_bytes=419862465 +ndk.linux32_checksum=beadafdc187461c057d513c40f0ac33b + + +ndk.win64.legacy_download=android-ndk-r9-windows-x86_64-legacy-toolchains.zip +ndk.win64.legacy_bytes=312340413 +ndk.win64.legacy_checksum=707d1eaa6f5d427ad439c764c8bd68d2 ndk.win64_download=android-ndk-r9-windows-x86_64.zip -ndk.win64_bytes=826661995 -ndk.win64_checksum=cd56cc1036235f16369f2112fa27be91 +ndk.win64_bytes=514321606 +ndk.win64_checksum=96c725d16ace7fd487bf1bc1427af3a0 + + +ndk.win32.legacy_download=android-ndk-r9-windows-x86-legacy-toolchains.zip +ndk.win32.legacy_bytes=292738221 +ndk.win32.legacy_checksum=ae3756d3773ec068fb653ff6fa411e35 ndk.win32_download=android-ndk-r9-windows-x86.zip -ndk.win32_bytes=777938252 -ndk.win32_checksum=9c1f66ff963cc61e338964c5f97a4d34 +ndk.win32_bytes=485200055 +ndk.win32_checksum=8895aec43f5141212c8dac6e9f07d5a8 + page.title=Android NDK @jd:body @@ -33,7 +63,7 @@ page.title=Android NDK <div id="tos" style="display:none;width:760px;height:0;margin:0 auto"> -<div class="ndk" style=" +<div id="download" class="ndk" style=" z-index: 99; width: 720px; position: absolute; @@ -253,6 +283,13 @@ $('#Downloads').after($('#download-table')); </script> +<p>With NDK revision 9 and higher, the release packages have been split to reduce download size. + The first download for each platform contains the default NDK toolchain. The second download + contains legacy NDK toolchains for that platform, which is only required if you are not using + the current, recommended toolchain for your NDK builds.</p> + + + <h2 id="Revisions">Revisions</h2> <p>The following sections provide information about releases of the NDK.</p> diff --git a/docs/html/tools/sdk/tools-notes.jd b/docs/html/tools/sdk/tools-notes.jd index cd2d986dade4..4aef8a028505 100644 --- a/docs/html/tools/sdk/tools-notes.jd +++ b/docs/html/tools/sdk/tools-notes.jd @@ -26,9 +26,50 @@ Tools you are using, refer to the "Installed Packages" listing in the Android SD href="http://tools.android.com/knownissues">http://tools.android.com/knownissues</a>.</p> + <div class="toggle-content opened"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img" + alt=""/>SDK Tools, Revision 22.0.5</a> <em>(July 2013)</em> + </p> + + <div class="toggle-content-toggleme"> + + <dl> + <dt>Dependencies:</dt> + <dd> + <ul> + <li>Android SDK Platform-tools revision 16 or later.</li> + <li>If you are developing in Eclipse with the + <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a>, note that this version of + SDK Tools is designed for use with ADT 22.0.5 and later. If you haven't already, update + ADT to 22.0.5.</li> + <li>If you are using <a href="{@docRoot}sdk/installing/studio.html">Android Studio</a>, + note that this version of the SDK Tools is designed to work with Android Studio + 0.2.x and later.</li> + <li>If you are developing without an integrated development environment (IDE), you must have + <a href="http://ant.apache.org/">Apache Ant</a> 1.8 or later.</li> + </ul> + </dd> + + <dt>General Notes:</dt> + <dd> + <ul> + <li>Fixed Renderscript compilation issue for Windows platforms with ant.</li> + <li>Updated <a href="{@docRoot}tools/help/systrace.html">Systrace</a> to work with the + Android 4.3 platform image.</li> + <li>Fixed packaging of Renderscript compiler.</li> + <li>Build tools 18.0.0 is obsolete and 18.0.1 should be used instead.</li> + </ul> + </dd> + </dl> + </div> +</div> + + +<div class="toggle-content closed"> + <p><a href="#" onclick="return toggleContent(this)"> + <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""/>SDK Tools, Revision 22.0.4</a> <em>(July 2013)</em> </p> @@ -75,7 +116,7 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> <li>Android SDK Platform-tools revision 16 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r22.0.1 is + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 22.0.1 and later. If you haven't already, update your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 22.0.1.</li> <li>If you are developing outside Eclipse, you must have @@ -116,7 +157,7 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> <li>Android SDK Platform-tools revision 16 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r22 is + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 22.0.0 and later. If you haven't already, update your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 22.0.0.</li> <li>If you are developing outside Eclipse, you must have @@ -171,7 +212,7 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> <li>Android SDK Platform-tools revision 16 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r21.1 is + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 21.1.0 and later. If you haven't already, update your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 21.1.0.</li> <li>If you are developing outside Eclipse, you must have @@ -206,7 +247,7 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> <li>Android SDK Platform-tools revision 16 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r21.0.1 is + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 21.0.1 and later. If you haven't already, update your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 21.0.1.</li> <li>If you are developing outside Eclipse, you must have @@ -309,7 +350,7 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> <li>Android SDK Platform-tools revision 16 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r21 is designed + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 21.0.0 and later. If you haven't already, update your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 21.0.0.</li> <li>If you are developing outside Eclipse, you must have @@ -395,7 +436,7 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> <li>Android SDK Platform-tools revision 12 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r20.0.3 is designed + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 20.0.3 and later. If you haven't already, update your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 20.0.3.</li> <li>If you are developing outside Eclipse, you must have @@ -426,7 +467,7 @@ href="http://tools.android.com/knownissues">http://tools.android.com/knownissues <dd> <ul> <li>Android SDK Platform-tools revision 12 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r20.0.1 is designed + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 20.0.1 and later. If you haven't already, update your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 20.0.1.</li> <li>If you are developing outside Eclipse, you must have @@ -462,7 +503,7 @@ unprotected receivers for default Android actions.</li> <dd> <ul> <li>Android SDK Platform-tools revision 12 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r20 is designed for + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 20.0.0 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 20.0.0.</li> <li>If you are developing outside Eclipse, you must have @@ -540,7 +581,7 @@ download and install this update.</p> <dd> <ul> <li>Android SDK Platform-tools revision 9 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r19 is designed for + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 18.0.0 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 18.0.0.</li> <li>If you are developing outside Eclipse, you must have @@ -575,7 +616,7 @@ acceleration.</li> <dd> <ul> <li>Android SDK Platform-tools revision 9 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r18 is designed for + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 18.0.0 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 18.0.0.</li> <li>If you are developing outside Eclipse, you must have @@ -617,7 +658,7 @@ in some cases.</li> <dd> <ul> <li>Android SDK Platform-tools revision 9 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r17 is designed for + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 17.0.0 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 17.0.0.</li> <li>If you are developing outside Eclipse, you must have @@ -721,7 +762,7 @@ ignore attribute. (<a <dd> <ul> <li>Android SDK Platform-tools revision 9 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r16 is designed for use + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 16.0.0 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 16.0.0.</li> <li>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache @@ -769,7 +810,7 @@ ignore attribute. (<a <dt>Dependencies:</dt> <dd> <ul><li>Android SDK Platform-tools revision 9 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r15 is designed for use + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 15.0.0 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 15.0.0.</li> <li>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache @@ -817,7 +858,7 @@ ignore attribute. (<a <dt>Dependencies:</dt> <dd> <ul><li>Android SDK Platform-tools revision 8 or later.</li> - <li>If you are developing in Eclipse with ADT, note that the SDK Tools r14 is designed for use + <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 14.0.0 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 14.0.0.</li> <li>If you are developing outside Eclipse, you must have <a href="http://ant.apache.org/">Apache @@ -867,7 +908,7 @@ site</a>.</p> <dl> <dt>Dependencies:</dt> <dd> -<p>If you are developing in Eclipse with ADT, note that the SDK Tools r13 is designed for use with +<p>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 12.0.0 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 12.0.0.</p> @@ -898,7 +939,7 @@ Ant</a> 1.8 or later.</p> <dl> <dt>Dependencies:</dt> <dd> -<p>If you are developing in Eclipse with ADT, note that the SDK Tools r12 is designed for use with +<p>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 12.0.0 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 12.0.0.</p> @@ -926,7 +967,7 @@ Ant</a> 1.8 or later.</p> <dl> <dt>Dependencies:</dt> <dd> -<p>If you are developing in Eclipse with ADT, note that the SDK Tools r11 is designed for use with +<p>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 10.0.1 and later. If you haven't already, we highly recommend updating your <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 10.0.1.</p> @@ -954,7 +995,7 @@ Ant</a> 1.8 or later.</p> <dl> <dt>Dependencies:</dt> <dd> -<p>If you are developing in Eclipse with ADT, note that the SDK Tools r10 is +<p>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 10.0.0 and later. After installing SDK Tools r10, we highly recommend updating your ADT Plugin to 10.0.0.</p> @@ -985,7 +1026,7 @@ Ant</a> 1.8 or later.</p> <dl> <dt>Dependencies:</dt> <dd> -<p>If you are developing in Eclipse with ADT, note that the SDK Tools r9 is +<p>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 9.0.0 and later. After installing SDK Tools r9, we highly recommend updating your ADT Plugin to 9.0.0.</p> @@ -1044,7 +1085,7 @@ resolve the performance issues and it will improve in future releases.</li> <dl> <dt>Dependencies:</dt> <dd> -<p>If you are developing in Eclipse with ADT, note that SDK Tools r8 is +<p>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 8.0.0 and later. After installing SDK Tools r8, we highly recommend updating your ADT Plugin to 8.0.0.</p> @@ -1112,7 +1153,7 @@ documentation. </li> <dl> <dt>Dependencies:</dt> <dd> -<p>If you are developing in Eclipse with ADT, note that SDK Tools r7 is +<p>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 0.9.8 and later. After installing SDK Tools r7, we highly recommend updating your ADT Plugin to 0.9.8.</p> </dd> @@ -1146,7 +1187,7 @@ decimal point.</li> <dl> <dt>Dependencies:</dt> <dd> -<p>If you are developing in Eclipse with ADT, note that SDK Tools r6 is +<p>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 0.9.7 and later. After installing SDK Tools r6, we highly recommend updating your ADT Plugin to 0.9.7.</p> </dd> @@ -1177,7 +1218,7 @@ provides the equivalent library project support.</p> <dl> <dt>Dependencies:</dt> <dd><ul> -<li>If you are developing in Eclipse with ADT, note that SDK Tools r5 is +<li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is designed for use with ADT 0.9.6 and later. After installing SDK Tools r5, we highly recommend updating your ADT Plugin to 0.9.6.</li> <li>For Mac OS platforms, OS X 10.4.x (Tiger) is no longer @@ -1225,7 +1266,7 @@ officially supported. </li> <div class="toggle-content-toggleme"> <dl> <dt>Dependencies:</dt> -<dd><p>SDK Tools r4 is compatible with ADT 0.9.5 and later, but not +<dd><p>This version of SDK Tools is compatible with ADT 0.9.5 and later, but not compatible with earlier versions. If you are developing in Eclipse with ADT, you <strong>must</strong> update your ADT plugin to version 0.9.5 or higher if you install SDK Tools r4 in your SDK. </p></dd> @@ -1275,7 +1316,7 @@ skin name specified.</li> <div class="toggle-content-toggleme"> <dl> <dt>Dependencies:</dt> -<dd><p>SDK Tools r3 is compatible with ADT 0.9.4 and later, but not +<dd><p>This version of SDK Tools is compatible with ADT 0.9.4 and later, but not compatible with earlier versions. If you are developing in Eclipse with ADT, you <strong>must</strong> update your ADT plugin to version 0.9.4 or higher if you install SDK Tools r3 in your SDK.</p> @@ -1329,4 +1370,3 @@ href="/tools/help/layoutopt.html">layoutopt</a>.</p> </dl> </div> </div> - diff --git a/docs/html/tools/support-library/features.jd b/docs/html/tools/support-library/features.jd new file mode 100644 index 000000000000..8d25d96c9116 --- /dev/null +++ b/docs/html/tools/support-library/features.jd @@ -0,0 +1,288 @@ +page.title=Support Library Features + +@jd:body + +<div id="qv-wrapper"> + <div id="qv"> + + <h2>In this document</h2> + <ol> + <li><a href="#v4">v4 Support Library</a></li> + <li><a href="#v7">v7 Libraries</a> + <ol> + <li><a href="#v7-appcompat">v7 appcompat library</a></li> + <li><a href="#v7-gridlayout">v7 gridlayout library</a></li> + <li><a href="#v7-mediarouter">v7 mediarouter library</a></li> + </ol> + </li> + <li><a href="#v13">v13 Support Library</a></li> + </ol> + + <h2>See also</h2> + <ol> + <li><a href="{@docRoot}tools/support-library/index.html#revisions"> + Support Library Revisions</a></li> + <li><a href="{@docRoot}tools/support-library/setup.html"> + Support Library Setup</a></li> + </ol> + + </div> +</div> + +<p>The Android Support Library package contains several libraries that can be included + in your application. Each of these libraries supports a specific range of Android platform + versions and set of features.</p> + +<p>This guide explains the important features and version support provided by the Support + Libraries to help you decide which of them you should include in your application. In general, + we recommend including the <a href="#v4">v4 support</a> and <a href="#v7-appcompat">v7 + appcompat</a> libraries, because they support a wide range of + Android versions and provide APIs for recommended user interface patterns.</p> + +<p>In order to use any of the following libraries, you must download the library files to your + Android SDK installation. Follow the directions for downloading the Support Libraries in + <a href="{@docRoot}tools/support-library/setup.html#download">Support Library Setup</a> to + complete this step. You must take additional steps to include a specific Support Library in + your application. See the end of each library section below for important information on how to + include the library in your application.</p> + + +<h2 id="v4">v4 Support Library</h2> + +<p>This library is designed to be used with Android 1.6 (API level 4) and higher. It includes the + largest set of APIs compared to the other libraries, including support for application components, + user interface features, accessibility, data handling, network connectivity, and programming + utilities. Here are a few of the key classes included in the v4 library:</p> + +<ul> + <li>App Components + <ul> + <li>{@link android.support.v4.app.Fragment} + - Adds support encapsulation of user interface and functionality with Fragments, enabling + applications provide layouts that adjust between small and large-screen devices.</li> + </ul> + <ul> + <li>{@link android.support.v4.app.NotificationCompat} - Adds support for rich notification + features.</li> + </ul> + <ul> + <li>{@link android.support.v4.content.LocalBroadcastManager} - Allows applications to easily + register for and receive intents within a single application without broadcasting them + globally.</li> + </ul> + </li> + <li>User Interface + <ul> + <li>{@link android.support.v4.view.ViewPager} - Adds a + {@link android.view.ViewGroup} that manages the layout for the + child views, which the user can swipe between.</li> + <li>{@link android.support.v4.view.PagerTitleStrip} + - Adds a non-interactive title strip, that can be added as a child of + {@link android.support.v4.view.ViewPager}.</li> + <li>{@link android.support.v4.view.PagerTabStrip} - Adds a + navigation widget for switching between paged views, that can also be used with + {@link android.support.v4.view.ViewPager}.</li> + <li>{@link android.support.v4.widget.DrawerLayout} - Adds + support for creating a <a href="{@docRoot}training/implementing-navigation/nav-drawer.html" + >Navigation Drawer</a> that can be pulled in from the edge of a window.</li> + <li>{@link android.support.v4.widget.SlidingPaneLayout} + - Adds widget for creating linked summary and detail views that + appropriately adapt to various screen sizes.</li> + </ul> + </li> + <li>Accessibility + <ul> + <li>{@link android.support.v4.widget.ExploreByTouchHelper} + - Adds a helper class for implementing accessibility support for custom views.</li> + </ul> + <ul> + <li>{@link android.support.v4.view.accessibility.AccessibilityEventCompat} - Adds support for + {@link android.view.accessibility.AccessibilityEvent}. For more information about implementing + accessibility, see <a href="{@docRoot}guide/topics/ui/accessibility/index.html" + >Accessibility</a>.</li> + </ul> + <ul> + <li>{@link android.support.v4.view.accessibility.AccessibilityNodeInfoCompat} - Adds support + for {@link android.view.accessibility.AccessibilityNodeInfo}.</li> + </ul> + <ul> + <li>{@link android.support.v4.view.accessibility.AccessibilityNodeProviderCompat} - Adds + support for {@link android.view.accessibility.AccessibilityNodeProvider}.</li> + </ul> + <ul> + <li>{@link android.support.v4.view.AccessibilityDelegateCompat} - Adds support for + {@link android.view.View.AccessibilityDelegate}.</li> + </ul> + </li> + <li>Content + <ul> + <li>{@link android.support.v4.content.Loader} - Adds support for asynchronous loading of data. + The library also provides concrete implementations of this class, including + {@link android.support.v4.content.CursorLoader} and + {@link android.support.v4.content.AsyncTaskLoader}.</li> + </ul> + <ul> + <li>{@link android.support.v4.content.FileProvider} - Adds support for sharing of private + files between applications.</li> + </ul> + </li> +</ul> + +<p> + There are many other APIs included in this library. For complete, detailed information about the + v4 Support Library APIs, see the {@link android.support.v4.app android.support.v4} package in the + API reference. +</p> + +<p>This library is located in the {@code <sdk>/extras/android/support/v4/} directory after + you download the Android Support Libraries. This library does not contain user interface + resources. To include it in your application project, follow the instructions for + <a href="{@docRoot}tools/support-library/setup.html#libs-without-res">adding libraries without + resources</a>.</p> + +<p>The Gradle build script dependency identifier for this library is as follows:</p> + +<pre> +com.android.support:support-v4:18.0.+ +</pre> + +<p>This dependency notation specifies the release version 18.0.0 or higher.</p> + + +<h2 id="v7">v7 Libraries</h2> + +<p>There are several libraries designed to be used with Android 2.1 (API level 7) and higher. + These libraries provide specific feature sets and can be included in your application + independently from each other.</p> + + +<h3 id="v7-appcompat">v7 appcompat library</h3> + +<p>This library adds support for the <a href="{@docRoot}guide/topics/ui/actionbar.html">Action + Bar</a> user interface <a href="{@docRoot}design/patterns/actionbar.html">design pattern</a>. +</p> + +<p class="note"><strong>Note:</strong> + This library depends on the v4 Support Library. If you are using Ant or Eclipse, make sure + you include the v4 Support Library as part of this library's classpath. +</p> + +<p>Here are a few of the key classes included in the v7 appcompat library:</p> + +<ul> + <li>{@link android.support.v7.app.ActionBar} - Provides an implementation of the action bar + <a href="{@docRoot}design/patterns/actionbar.html">user interface pattern</a>. For more + information on using the Action Bar, see the + <a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer guide. + </li> + <li>{@link android.support.v7.app.ActionBarActivity} - Adds an application activity class that + must be used as a base class for activities that uses the Support Library action bar + implementation. + </li> + <li>{@link android.support.v7.widget.ShareActionProvider} - Adds support for a standardized + sharing action (such as email or posting to social applications) that can be included in an + action bar. + </li> +</ul> + +<p>This library is located in the {@code <sdk>/extras/android/support/v7/appcompat/} + directory after you download the Android Support Libraries. This library contains user + interface resources. To include it in your application project, follow the instructions for + <a href="{@docRoot}tools/support-library/setup.html#libs-with-res">adding libraries with + resources</a>.</p> + +<p>The Gradle build script dependency identifier for this library is as follows:</p> + +<pre> +com.android.support:appcompat-v7:18.0.+ +</pre> + +<p>This dependency notation specifies the release version 18.0.0 or higher.</p> + +<h3 id="v7-gridlayout">v7 gridlayout library</h3> + +<p>This library adds support for the {@link android.support.v7.widget.GridLayout} class, which + allows you to arrange user interface elements using a grid of rectangular cells. + For detailed information about the v7 gridlayout library APIs, see the + {@link android.support.v7.widget android.support.v7.widget} package in the API reference.</p> + +<p>This library is located in the {@code <sdk>/extras/android/support/v7/gridlayout/} + directory after you download the Android Support Libraries. This library contains user + interface resources. To include it in your application project, follow the instructions for + <a href="{@docRoot}tools/support-library/setup.html#libs-with-res">adding libraries with + resources</a>.</p> + +<p>The Gradle build script dependency identifier for this library is as follows:</p> + +<pre> +com.android.support:gridlayout-v7:18.0.+ +</pre> + +<p>This dependency notation specifies the release version 18.0.0 or higher.</p> + +<h3 id="v7-mediarouter">v7 mediarouter library</h3> + +<p>This library provides {@link android.support.v7.media.MediaRouter}, {@link +android.support.v7.media.MediaRouteProvider}, and related media classes that +support the <a href="https://developers.google.com/cast/">Google Cast +developer preview</a>. </p> + +<p>In general, the APIs in the v7 mediarouter library provide a means of +controlling the routing of media channels and streams from the current device to +external screens, speakers, and other destination devices. The library includes +APIs for publishing app-specific media route providers, for discovering and +selecting destination devices, for checking media status, and more. For detailed +information about the v7 mediarouter library APIs, see the +{@link android.support.v7.media android.support.v7.media} package in the API +reference.</p> + +<p>The v7 mediarouter library is located in the +<code><sdk>/extras/android/support/v7/mediarouter/</code> directory after +you download the Android Support Library. It's provided as a library project +with a dependency on the v7 appcompat library, so you'll need to include both +libraries in your build path when setting up your project. For more information +on how to set up your project, follow the instructions in <a +href="{@docRoot}tools/support-library/setup.html#libs-with-res">adding libraries +with resources</a>. If you are developing in Eclipse/ADT, make sure to include +both the <code>android-support-v7-mediarouter.jar</code> and +<code>android-support-v7-appcompat.jar</code> files.</p> + +<p>If you are using Android Studio, all you need to do is specify the Gradle build +script dependency identifier <code>com.android.support:support-v7-mediarouter:<revision></code>, +where "18.0.0" is the minimum revision at which the library is available. For example:</p> + +<pre> +com.android.support:support-v7-mediarouter:18.0.0 +</pre> + +<p class="caution">The v7 mediarouter library APIs introduced in Support Library +r18 are subject to change in later revisions of the Support Library. At this +time, we recommend using the library only in connection with the <a +href="https://developers.google.com/cast/">Google Cast +developer preview</a>. </p> + + +<h2 id="v13">v13 Support Library</h2> + +<p>This library is designed to be used for Android 3.2 (API level 13) and higher. It adds support + for the <a href="{@docRoot}guide/components/fragments.html">Fragment</a> user interface pattern + with the ({@link android.support.v13.app.FragmentCompat}) class and additional fragment support + classes For more information about fragments, see the + <a href="{@docRoot}guide/components/fragments.html">Fragments</a> developer guide. For detailed + information about the v13 Support Library APIs, see the {@link android.support.v13.app + android.support.v13} package in the API reference. +</p> + +<p>This library is located in the {@code <sdk>/extras/android/support/v13/} directory after + you download the Android Support Libraries. This library does not contain user interface + resources. To include it in your application project, follow the instructions for + <a href="{@docRoot}tools/support-library/setup.html#libs-without-res">adding libraries without + resources</a>.</p> + +<p>The Gradle build script dependency identifier for this library is as follows:</p> + +<pre> +com.android.support:support-v13:18.0.+ +</pre> + +<p>This dependency notation specifies the release version 18.0.0 or higher.</p> diff --git a/docs/html/tools/extras/support-library.jd b/docs/html/tools/support-library/index.jd index a82a98ae4eba..06c7a3ff638a 100644 --- a/docs/html/tools/extras/support-library.jd +++ b/docs/html/tools/support-library/index.jd @@ -3,52 +3,166 @@ page.title=Support Library @jd:body <div id="qv-wrapper"> -<div id="qv"> - -<h2>In this document</h2> -<ol> - <li><a href="#Notes">Revisions</a></li> - <li><a href="#Downloading">Downloading the Support Package</a></li> - <li><a href="#SettingUp">Setting Up a Project to Use a Library</a></li> - <li><a href="#Using">Using the v4 Library APIs</a></li> - <li><a href="#Docs">Reference Docs</a></li> - <li><a href="#Samples">Samples</a></li> -</ol> - -<h2>See also</h2> -<ol> - <li><a -href="{@docRoot}training/basics/fragments/support-lib.html">Using the Support Library</a></li> -</ol> + <div id="qv"> + + <h2>In this document</h2> + <ol> + <li><a href="#overview">Overview</a></li> + <li><a href="#revisions">Revisions</a></li> + </ol> + + <h2>See also</h2> + <ol> + <li><a href="{@docRoot}tools/support-library/features.html"> + Support Library Features</a></li> + <li><a href="{@docRoot}tools/support-library/setup.html"> + Support Library Setup </a></li> + </ol> + </div> </div> -</div> -<p><em>Minimum API level supported:</em> <b>4</b></p> +<p>The Android Support Library package is a set of code libraries that provide + backward-compatible versions of Android framework APIs as well as features that are only available + through the library APIs. Each Support Library is backward-compatible to a specific Android API + level. This design means that your applications can use the libraries' features and still be + compatible with devices running Android 1.6 (API level 4) and up.</p> + +<p>This guide provides information about what features are enabled by the Support Libraries, + how to use them in your development environment and information about library releases.</p> + + +<h2 id="overview">Overview</h2> -<p>The Support Package includes static "support libraries" that you can add to your Android -application in order to use APIs that are either not available for older platform versions or that -offer "utility" APIs that aren't a part of the framework APIs. The goal is to simplify your -development by offering more APIs that you can bundle with your application so you can -worry less about platform versions.</p> +<p>Including the Support Libraries in your Android project is considered a best practice for + application developers, depending on the range of platform versions your app is targeting + and the APIs that it uses. Using the features the libraries provide can help you improve the look of your + application, increase performance and broaden the reach of your application to more users. + If you use the Android + <a href="{@docRoot}tools/projects/templates.html">code template</a> tools, you will notice that + all the Android application templates include one or more of the Support Libraries by default.</p> -<p class="note"><strong>Note:</strong> The Support Package includes more than one support -library. Each one has a different <em>minimum API level</em>. For example, one library requires API -level 4 or higher, while another requires API level 13 or higher (v13 is a superset of v4 and -includes additional -support classes to work with v13 APIs). The minimum version is indicated -by the directory name, such as {@code v4/} and {@code v13/}.</p> +<p>The Support Libraries each target a base Android API level and each provides a different set + of features. In order to effectively use the libraries, it is important to consider what features + you want to support and understand what features are supported by each library at what Android + API level. To get started, review the + <a href="{@docRoot}tools/support-library/features.html">Support Library Features</a> guide. + After that, go to the + <a href="{@docRoot}tools/support-library/setup.html">Support Library Setup</a> topic to + learn how to incorporate the Support Libraries into your application. For more details + about Support Library APIs, see the {@link android.support.v4.app android.support} + packages in the API reference.</p> -<h2 id="Notes">Revisions</h2> +<h2 id="revisions">Revisions</h2> -<p>The sections below provide notes about successive releases of -the Support Package, as denoted by revision number.</p> +<p>This section provides details about the Support Library package releases.</p> <div class="toggle-content opened"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img" alt="" -/>Support Package, revision 13</a> <em>(May 2013)</em> +/>Android Support Library, revision 18</a> <em>(July 2013)</em> + </p> + <div class="toggle-content-toggleme"> + <dl> + <dt>Changes for v4 support library:</dt> + <dd> + <ul> + <li>User interface + <ul> + <li>Added {@link android.support.v4.text.BidiFormatter} for handling + text strings that combine right to left and left to right-formatted text.</li> + <li>Modified {@link android.support.v4.view.ViewPager} to better handle cases where the + pager has a measured width of zero in the initial layout processing.</li> + <li>Modified {@link android.support.v4.widget.DrawerLayout} and + {@link android.support.v4.widget.SlidingPaneLayout} to not throw exceptions for + measurement while the project code is being edited.</li> + </ul> + </li> + + <li>Accessibility + <ul> + <li>Added {@link android.support.v4.widget.ExploreByTouchHelper} to simplify the + implementation of accessibility for custom views.</li> + <li>Fixed a problem with {@link android.support.v4.view.ViewPager} incorrectly + populating {@link + android.support.v4.view.accessibility.AccessibilityEventCompat#TYPE_VIEW_SCROLLED + TYPE_VIEW_SCROLLED} accessibility events.</li> + <li>Fixed a null pointer exception in {@link android.support.v4.view.ViewPager} when + populating an accessibility event.</li> + <li>Simplified {@link android.support.v4.view.accessibility.AccessibilityNodeInfoCompat} + by changing {@link java.lang.CharSequence} inputs to {@link java.lang.String} objects. + </li> + <li>Deprecated an {@link android.support.v4.view.accessibility.AccessibilityRecordCompat} + constructor that used an {@link java.lang.Object} as input.</li> + </ul> + </li> + + <li>Media + <ul> + <li>Added {@link android.support.v4.media.TransportMediator} helper class to manage + media transport control, such as play, pause, skip and other media actions.</li> + <li>Added {@link android.support.v4.hardware.display.DisplayManagerCompat} for managing + display output to one or more device displays.</li> + </ul> + </li> + + <li>Other changes + <ul> + <li>Added {@link android.support.v4.content.WakefulBroadcastReceiver} helper class for + implementing a common pattern of detecting a device wakeup event and passing work off + to a {@link android.app.Service} while ensuring that the device does not go back to + sleep before the handoff is complete.</li> + <li>Added two new APIs, + {@link android.support.v4.content.AsyncTaskLoader#commitContentChanged + commitContentChanged()} and + {@link android.support.v4.content.AsyncTaskLoader#rollbackContentChanged + rollbackContentChanged()}, to {@link android.support.v4.content.AsyncTaskLoader} to + help deal with background updates for data changes that are subsequently canceled. + </li> + </ul> + </li> + </ul> + </dd> + + <dt>New v7 appcompat library:</dt> + <dd> + <ul> + <li>Added {@link android.support.v7.app.ActionBar} to allow implementation of the + action bar user interface <a href="{@docRoot}design/patterns/actionbar.html">design + pattern</a> back to Android 2.1 (API level 7) and higher. Use of this class requires + that you implement your activity by extending the new + {@link android.support.v7.app.ActionBarActivity} class.</li> + </ul> + </dd> + + <dt>New v7 mediarouter library:</dt> + <dd> + <p>Added a new mediarouter library that provides support for the <a + href="https://developers.google.com/cast/">Google Cast developer preview</a>. + The v7 mediarouter library APIs provide a means of controlling the routing of + media channels and streams from the current device to external screens, + speakers, and other destination devices, with compatibility back to Android 2.1 + (API level 7). See <a + href="{@docRoot}tools/support-library/features.html#v7-mediarouter">V7 + mediarouter library</a> for more information. </p> + + <p class="caution">The v7 mediarouter library APIs introduced in Support + Library r18 are subject to change in later revisions of the Support + Library. At this time, we recommend using the library only in connection + with the <a href="https://developers.google.com/cast/">Google Cast + developer preview</a>.</p> + </dd> + + </dl> + </div> +</div> + + +<div class="toggle-content closed"> + <p><a href="#" onclick="return toggleContent(this)"> + <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" +/>Android Support Library, revision 13</a> <em>(May 2013)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -71,8 +185,9 @@ the Support Package, as denoted by revision number.</p> <li>Added {@link android.support.v4.content.FileProvider} to allow sharing of private files between applications.</li> <li>Updated {@link android.support.v4.view.ViewPager} to throw an exception if the - associated {@link android.support.v4.view.PagerAdapter} class is modified without a call - to {@link android.support.v4.view.PagerAdapter#notifyDataSetChanged notifyDataSetChanged()}. + associated {@link android.support.v4.view.PagerAdapter} class is modified without a + call to {@link android.support.v4.view.PagerAdapter#notifyDataSetChanged + notifyDataSetChanged()}. </li> <li>Fixed an issue with {@link android.support.v4.view.ViewPager} children drawing sort order.</li> @@ -81,6 +196,15 @@ the Support Package, as denoted by revision number.</p> between tap timeout and long press events.</li> </ul> </dd> + + <dt>New v7 gridlayout library:</dt> + <dd> + <ul> + <li>Added {@link android.support.v7.widget.GridLayout} to provide support for the + {@link android.widget.GridLayout} layout object.</li> + <li>Added {@link android.support.v7.widget.Space} which can be used to create blank areas + within a {@link android.support.v7.widget.GridLayout} layout object.</li> + </ul> </dl> </div> </div> @@ -89,7 +213,7 @@ the Support Package, as denoted by revision number.</p> <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Support Package, revision 12</a> <em>(February 2013)</em> +/>Android Support Library, revision 12</a> <em>(February 2013)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -110,10 +234,11 @@ the Support Package, as denoted by revision number.</p> </div> </div> + <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Support Package, revision 11</a> <em>(November 2012)</em> +/>Android Support Library, revision 11</a> <em>(November 2012)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -175,7 +300,7 @@ the Support Package, as denoted by revision number.</p> <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Support Package, revision 10</a> <em>(August 2012)</em> +/>Android Support Library, revision 10</a> <em>(August 2012)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -194,7 +319,7 @@ the Support Package, as denoted by revision number.</p> <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Support Package, revision 9</a> <em>(June 2012)</em> +/>Android Support Library, revision 9</a> <em>(June 2012)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -260,10 +385,11 @@ isActiveNetworkMetered()} method.</li> </div> </div> + <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Support Package, revision 8</a> <em>(April 2012)</em> +/>Android Support Library, revision 8</a> <em>(April 2012)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -282,10 +408,11 @@ isActiveNetworkMetered()} method.</li> </div> </div> + <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Support Package, revision 7</a> <em>(March 2012)</em> +/>Android Support Library, revision 7</a> <em>(March 2012)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -311,10 +438,11 @@ for creating standardized system notifications.</li> </div> </div> + <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Support Package, revision 6</a> <em>(December 2011)</em> +/>Android Support Library, revision 6</a> <em>(December 2011)</em> </p> <div class="toggle-content-toggleme"> @@ -367,7 +495,7 @@ for creating standardized system notifications.</li> <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Support Package, revision 5</a> <em>(December 2011)</em> +/>Android Support Library, revision 5</a> <em>(December 2011)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -426,7 +554,7 @@ for creating standardized system notifications.</li> <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Support Package, revision 4</a> <em>(October 2011)</em> +/>Android Support Library, revision 4</a> <em>(October 2011)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -468,7 +596,7 @@ for creating standardized system notifications.</li> <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Compatibility Package, revision 3</a> <em>(July 2011)</em> +/>Android Support Library, revision 3</a> <em>(July 2011)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -519,7 +647,7 @@ Android 3.2 and higher (all other APIs in the v4 library are already available w <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Compatibility Package, revision 2</a> <em>(May 2011)</em> +/>Android Support Library, revision 2</a> <em>(May 2011)</em> </p> <div class="toggle-content-toggleme"> <dl> @@ -527,7 +655,7 @@ Android 3.2 and higher (all other APIs in the v4 library are already available w <dd> <ul> <li>Support for fragment animations</li> - <li>Fix {@code android.support.v4.app.Fragment#onActivityResult Fragment.onActivityResult()} + <li>Fix {@link android.support.v4.app.Fragment#onActivityResult Fragment.onActivityResult()} bug</li> </ul> </dd> @@ -539,204 +667,10 @@ Android 3.2 and higher (all other APIs in the v4 library are already available w <div class="toggle-content closed"> <p><a href="#" onclick="return toggleContent(this)"> <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt="" -/>Compatibility Package, revision 1</a> <em>(March 2011)</em> +/>Android Support Library, revision 1</a> <em>(March 2011)</em> </p> <div class="toggle-content-toggleme"> <p>Initial release with the v4 library.</p> </div> </div> - - -<h2 id="Downloading">Downloading the Support Package</h2> - -<p>The Support Package is provided as a downloadable package from the Android SDK -Manager. To install:</p> - -<ol> - <li>Launch the Android SDK Manager. - <p>From Eclipse, you can select <strong>Window</strong> -> <strong>Android SDK Manager</strong>. Or, launch {@code SDK Manager.exe} from -the {@code <sdk>/} directory (on Windows only) or {@code android} from the {@code -<sdk>/tools/} directory.</p></li> - <li>Expand the Android Repository, check <strong>Android Support package</strong> -and click <strong>Install selected</strong>.</li> - <li>Proceed to install the package.</li> -</ol> - -<p>When done, all files (including source code, samples, and the JAR files) are saved -into the <code><sdk>/extras/android/support/</code> directory. This directory contains -each of the different support libraries, such as the library for API level 4 and up and the library -for API level 13 and up, each named with the respective version (such as {@code v4/}).</p> - - -<h2 id="SettingUp">Setting Up a Project to Use a Library</h2> - -<p>To add one of the libraries to your Android project:</p> -<dl> - <dt> - Add the JAR file to your project. - </dt> - <dd> - Copy the JAR file for the library you want to use into your Android project. To do this: - <ul> - <li> - Create the directory {@code libs/} at the root of your project - (next to {@code src/}, {@code res/}, and so forth). - </li> - <li> - Locate the JAR file for the library you want to use and copy it into the - {@code libs/} directory. - <p> - For example, the library that supports API level 4 and up is located at - {@code <sdk>/extras/android/support/v4/android-support-v4.jar}. - </p> - </li> - </ul> - <p> - Your build system may expect to find the JAR file in a directory other than - {@code libs}. Read the documentation for your build system to learn where to put the - JAR file. - </p> - </dd> - <dt> - If necessary, add the {@code libs/} directory to your build path. - </dt> - <dd> - Read the documentation for your build system to learn how to add the JAR file to the - build path. - </dd> -</dl> -<p> - To confirm that you've added the JAR file to the correct directory and added it to the build - path: -</p> -<ol> - <li> - Edit one of your source files to add an {@code import} statement that imports a - class from the {@code android.support.*} package. - </li> - <li> - Build your app. The code should compile cleanly. - </li> - <li> - As a double-check, run your app. It should run correctly, without any runtime exceptions - indicating that the class in {@code android.support.*} can't be found. - </li> -</ol> -<p>Your application is now ready to use the library APIs. All the -provided APIs are available in the {@code android.support} package (for -example, {@code android.support.v4}).</p> - -<p class="note"><strong>Tip:</strong> To see the library APIs in action, take a look at the sample -apps in {@code <sdk>/extras/android/support/<version>/samples/}.</p> - -<p class="warning"><strong>Warning:</strong> Be certain that you not confuse the standard -{@code android} packages with those in {@code android.support} library. Some code completion tools -might -get this wrong, especially if you're building against recent versions of the platform. To be safe, -keep your build target set to the same version as you have defined for your <a -href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code android:minSdkVersion}</a> -and double check the import statements for classes that also exist in the support library, such as -{@code SimpleCursorAdapter}.</p> - - -<h2 id="Using">Using the v4 Library APIs</h2> - -<p>The support library for v4 provides access to several classes introduced with Android 3.0 and -beyond, plus some updated version of existing classes, and even some APIs that currently don't -exist in the Android platform. Some of the most useful and notable classes that have -counterparts in the v4 support library are:</p> - -<ul> - <li>{@link android.app.Fragment}</li> - <li>{@link android.app.FragmentManager}</li> - <li>{@link android.app.FragmentTransaction}</li> - <li>{@link android.app.ListFragment}</li> - <li>{@link android.app.DialogFragment}</li> - <li>{@link android.app.LoaderManager}</li> - <li>{@link android.content.Loader}</li> - <li>{@link android.content.AsyncTaskLoader}</li> - <li>{@link android.content.CursorLoader}</li> -</ul> - -<p>For each of the classes above (and others not listed), the APIs work almost exactly the same -as the counterparts in the latest Android platform. Thus, you can usually refer to -the online documentation for information about the supported APIs. There are some -differences, however. Most notably:</p> - -<ul> - <li>When creating an activity to use fragments, you must declare your activity to extend the -{@link android.support.v4.app.FragmentActivity} class (instead of the traditional -{@link android.app.Activity} class).</li> - <li>To manage your fragments and loaders, you must use the methods - {@link android.support.v4.app.FragmentActivity#getSupportFragmentManager - FragmentActivity.getSupportFragmentManager()} and - {@link android.support.v4.app.FragmentActivity#getSupportLoaderManager - FragmentActivity.getSupportLoaderManager()} (instead of the - {@link android.app.Activity#getFragmentManager()} and - {@link android.app.Activity#getLoaderManager()} methods).</li> - <li>The {@link android.app.ActionBar} is <strong>not supported</strong> by the library. -However, when creating your <a href="{@docRoot}guide/topics/ui/menus.html#options-menu">Options -Menu</a>, you can declare which items should be added to the Action Bar when it's available (on -Android 3.0 or later). You can do so with the -{@link android.support.v4.view.MenuCompat#setShowAsAction MenuCompat.setShowAsAction()} method, for -example: -<pre> -public boolean onCreateOptionsMenu(Menu menu) { - MenuInflater inflater = getMenuInflater(); - inflater.inflate(R.menu.options, menu); - MenuCompat.setShowAsAction(menu.findItem(R.id.action_search), 1); - return true; -} -</pre> -<p>Also see the <a href="{@docRoot}resources/samples/ActionBarCompat/index.html">Action Bar -Compatibility</a> sample for a demonstration of how to use {@link android.app.ActionBar} on Android -3.0+ and also support action bar functionality on older versions.</p> -</li> -</ul> - -<div class="note"><p><strong>Tip:</strong> To enable the Holographic theme on devices -running Android 3.0 or higher, declare in your manifest file that your application targets -API level 11, for example:</p> -<pre> -<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="11" /> -</pre> -<p>This way, your application automatically receives the Holographic theme and the Action Bar for -each activity when running on Android 3.0 and higher.</p> -</div> - -<p>For more information about how you can optimize your application for the latest -Android-powered devices, read <a href="{@docRoot}guide/practices/tablets-and-handsets.html" ->Supporting Tablets and Handsets</a>.</p> - - -<h2 id="Docs">Reference Docs</h2> - -<p>The reference documentation for the Support Packages is included as part of the Android -online developer documentation:</p> - -<ul> - <li><a href="{@docRoot}reference/android/support/v4/app/package-summary.html">Support Package - API 4 Reference</a></li> - <li><a href="{@docRoot}reference/android/support/v13/app/package-summary.html">Support Package - API 13 Reference</a></li> -</ul> - - -<h2 id="Samples">Samples</h2> - -<p>If you want to see some code that uses the support libraries, samples are included with the -Support Package, inside each support library directory, for example; {@code -<sdk>/extras/android/support/v4/samples/}. You can also view these samples as part of the -Android online developer documentation:</p> - -<ul> - <li><a href="{@docRoot}resources/samples/Support4Demos/index.html">Support API 4 Demos</a></li> - <li><a href="{@docRoot}resources/samples/Support13Demos/index.html">Support API 13 Demos</a></li> -</ul> - -<p>Additionally, the <a href="http://code.google.com/p/iosched/">Google I/O App</a> is a complete -application that uses the v4 support library to provide a single APK for both handsets and tablets -and also demonstrates some of Android's best practices in Android UI design.</p> - diff --git a/docs/html/tools/support-library/setup.jd b/docs/html/tools/support-library/setup.jd new file mode 100644 index 000000000000..6cca897557ff --- /dev/null +++ b/docs/html/tools/support-library/setup.jd @@ -0,0 +1,308 @@ +page.title=Support Library Setup + +@jd:body + + +<div id="qv-wrapper"> + <div id="qv"> + + <h2>In this document</h2> + <ol> + <li><a href="#download">Downloading the Support Library</a></li> + <li><a href="#choosing">Choosing Support Libraries</a></li> + <li><a href="add-library">Adding Support Libraries</a> + <ol> + <li><a href="#libs-without-res">Adding libraries without resources</a></li> + <li><a href="#libs-with-res">Adding libraries with resources</a></li> + </ol> + </li> + <li><a href="#using-apis">Using Support Library APIs</a> + <ol> + <li><a href="#manifest">Manifest Declaration Changes</a></li> + </ol> + </li> + <li><a href="#samples">Code Samples</a></li> + </ol> + + <h2>See also</h2> + <ol> + <li><a href="{@docRoot}tools/support-library/index.html#revisions"> + Support Library Revisions</a></li> + <li><a href="{@docRoot}tools/support-library/features.html"> + Support Library Features</a></li> + </ol> + + </div> +</div> + +<p>How you setup the Android Support Libraries in your development project depends on what features + you want to use and what range of Android platform versions you want to support with your + application.</p> + +<p>This document guides you through downloading the Support Library package and adding libraries + to your development environment.</p> + + +<h2 id="download">Downloading the Support Libraries</h2> + +<p>The Android Support Library package is provided as a supplemental download to the Android SDK + and is available through the Android + <a href="{@docRoot}tools/help/sdk-manager.html">SDK Manager</a>. Follow the + instructions below to obtain the Support Library files. +</p> + +<p>To download the Support Library through the SDK Manager:</p> + +<ol> + <li>Start the Android <a href="{@docRoot}tools/help/sdk-manager.html">SDK Manager</a>.</li> + <li>In the SDK Manager window, scroll to the end of the <em>Packages</em> list, + find the <em>Extras</em> folder and, if necessary, expand to show its contents.</li> + <li>Select the <strong>Android Support Library</strong> item. + <p class="note"> + <strong>Note:</strong> If you're developing with Android Studio, select and install the + <strong>Android Support Repository</strong> item instead. + </p> + </li> + <li>Click the <strong>Install packages...</strong> button.</li> +</ol> + +<img src="{@docRoot}images/tools/sdk-manager-support-libs.png" width="525" alt="" /> +<p class="img-caption"><strong>Figure 1.</strong> The Android SDK Manager with the +Android Support Library selected.</p> + +<p>After downloading, the tool installs the Support Library files to your existing Android SDK + directory. The library files are located in the following subdirectory of your SDK: + {@code <sdk>/extras/android/support/} directory.</p> + + +<h2 id="choosing">Choosing Support Libraries</h2> + +<p>Before adding a Support Library to your application, decide what features you want to include + and the lowest Android versions you want to support. For more information on the features + provided by the different libraries, see + <a href="{@docRoot}tools/support-library/features.html">Support Library Features</a>.</p> + + +<h2 id="add-library">Adding Support Libraries</h2> + +<p>In order to use a Support Library, you must modify your application's project's + classpath dependencies within your development environment. You must perform this procedure for + each Support Library you want to use.</p> + +<p>Some Support Libraries contain resources beyond compiled code classes, such as images or XML + files. For example, the <a href="tools/support-library/features.html#v7-appcompat">v7 + appcompat</a> and <a href="tools/support-library/features.html#v7-gridlayout">v7 gridlayout</a> + libraries include resources.</p> + +<p>If you are not sure if a library contains resources, check the + <a href="{@docRoot}tools/support-library/features.html">Support Library Features</a> page. + The following sections describe how to add a Support Library with or without resources to your + application project. </p> + + +<h3 id="libs-without-res">Adding libraries without resources</h3> + +<p>To add a Support Library without resources to your application project:</p> + +<div class="toggle-content closed"> +<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)"> + <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt="" + />Using Eclipse</a></p> + + <div class="toggle-content-toggleme"> + <ol> + <li>Make sure you have downloaded the <strong>Android Support Library</strong> + using the <a href="#download">SDK Manager</a>.</li> + <li>Create a {@code libs/} directory in the root of your application project.</li> + <li>Copy the JAR file from your Android SDK installation directory (e.g., + {@code <sdk>/extras/android/support/v4/android-support-v4.jar}) into your + application's project {@code libs/} directory. + <li>Right click the JAR file and select <strong>Build Path > Add to Build Path</strong>. + </li> + </ol> + </div> +</div> + +<div class="toggle-content closed"> +<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)"> + <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt="" + />Using Android Studio</a></p> + + <div class="toggle-content-toggleme"> + <ol> + <li>Make sure you have downloaded the <strong>Android Support Repository</strong> + using the <a href="#download">SDK Manager</a>.</li> + <li>Open the {@code build.gradle} file for your application.</li> + <li>Add the support library to the {@code dependencies} section. For example, to add the v4 + support library, add the following lines: +<pre> +dependencies { + ... + <b>compile "com.android.support:support-v4:18.0.+"</b> +} +</pre> + </li> + </ol> + </div> +</div> + + +<h3 id="libs-with-res">Adding libraries with resources</h3> + +<p>To add a Support Library with resources to your application project:</p> + +<div class="toggle-content closed"> + <p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)"> + <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt="" + />Using Eclipse</a></p> + <div class="toggle-content-toggleme"> + +<p>Create a <a href="{@docRoot}tools/projects/index.html#LibraryProjects">library +project</a> based on the support library code:</p> + +<ol> + <li>Make sure you have downloaded the <strong>Android Support Library</strong> + using the <a href="#download">SDK Manager</a>.</li> + <li>Create a library project and ensure the required JAR files are included in the project's + build path: + <ol> + <li>Select <strong>File > Import</strong>.</li> + <li>Select <strong>Existing Android Code Into Workspace</strong> and click + <strong>Next</strong>.</li> + <li>Browse to the SDK installation directory and then to the Support Library folder. + For example, if you are adding the {@code appcompat} project, browse to + <code><sdk>/extras/android/support/v7/appcompat/</code>.</li> + <li>Click <strong>Finish</strong> to import the project. For the v7 appcompat project, you + should now see a new project titled <em>android-support-v7-appcompat</em>.</li> + <li>In the new library project, expand the {@code libs/} folder, right-click each {@code .jar} + file and select <strong>Build Path > Add to Build Path</strong>. For example, when + creating the the v7 appcompat project, add both the {@code android-support-v4.jar} and + {@code android-support-v7-appcompat.jar} files to the build path.</li> + <li>Right-click the project and select <strong>Build Path > Configure Build Path</strong>. + </li> + <li>In the <strong>Order and Export</strong> tab, check the <code>.jar</code> files you just + added to the build path, so they are available to projects that depend on this library + project. For example, the {@code appcompat} project requires you to export both the + {@code android-support-v4.jar} and {@code android-support-v7-appcompat.jar} files.</li> + <li>Uncheck <strong>Android Dependencies</strong>.</li> + <li>Click <strong>OK</strong> to complete the changes.</li> + </ol> + </li> +</ol> + +<p>You now have a library project for your selected Support Library that you can use with one or + more application projects.</p> + +<p>Add the library to your application project:</p> + <ol> + <li>In the Project Explorer, right-click your project and select <strong>Properties</strong>. + <li>In the Library pane, click <strong>Add</strong>. + <li>Select the library project and click <strong>OK</strong>. For example, the + {@code appcompat} project should be listed as <strong>android-support-v7-appcompat</strong>. + </li> + <li>In the properties window, click <strong>OK</strong>. + </ol> + + </div> +</div> + + +<div class="toggle-content closed"> +<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)"> + <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt="" + />Using Android Studio</a></p> + + <div class="toggle-content-toggleme"> + <ol> + <li>Make sure you have downloaded the <strong>Android Support Repository</strong> + using the <a href="#download">SDK Manager</a>.</li> + <li>Open the {@code build.gradle} file for your application.</li> + <li>Add the support library feature project identifier to the {@code dependencies} section. + For example, to include the {@code appcompat} project add + {@code compile "com.android.support:appcompat-v7:18.0.+"} to the dependencies section, as + shown in the following example: +<pre> +dependencies { + ... + <b>compile "com.android.support:appcompat-v7:18.0.+"</b> +} +</pre> + </li> + </ol> + </div> +</div> + + +<h2 id="using-apis">Using Support Library APIs</h2> + +<p>Support Library classes that provide support for existing framework APIs typically have the + same name as framework class but are located in the <code>android.support</code> class packages, + or have a <code>*Compat</code> suffix.</p> + +<div class="caution"> + <p><strong>Caution:</strong> When using classes from the Support Library, be certain you import + the class from the appropriate package. For example, when applying the {@code ActionBar} + class:</p> + <ul> + <li>{@code android.support.v7.app.ActionBar} when using the Support Library.</li> + <li>{@code android.app.ActionBar} when developing only for API level 11 or higher.</li> + </ul> +</div> + +<p class="note"> + <strong>Note:</strong> After including the Support Library in your application project, we + strongly recommend using the + <a href="{@docRoot}tools/help/proguard.html">ProGuard</a> tool to prepare your application APK + for release. In addition to protecting your source code, the ProGuard tool also removes unused + classes from any libraries you include in your application, which keeps the download size of + your application as small as possible. For more information, see + <a href="{@docRoot}tools/help/proguard.html">ProGuard</a>. +</p> + +<p>Further guidance for using some Support Library features is provided in the Android developer + <a href="{@docRoot}training/index.html">training classes</a>, + <a href="{@docRoot}guide/components/index.html">guides</a> + and samples. For more information about the individual Support Library classes and methods, see + the {@link android.support.v4.app android.support} packages in the API reference. +</p> + + +<h3 id="manifest">Manifest Declaration Changes</h3> + +<p>If you are increasing the backward compatibility of your existing application to an earlier + version of the Android API with the Support Library, make sure to update your application's + manifest. Specifically, you should update the <code>android:minSdkVersion</code> + element of the <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html"> + <code><uses-sdk></code></a> tag in the manifest to the new, lower version number, as + shown below:</p> + +<pre> + <uses-sdk + android:minSdkVersion="<b>7</b>" + android:targetSdkVersion="17" /> +</pre> + +<p>This change tells Google Play that your application can be installed on devices with Android + 2.1 (API level 7) and higher.</p> + +<p class="note"> + <strong>Note:</strong> If you are including the v4 support and v7 appcompat libraries in your + application, you should specify a minimum SDK version of <code>"7"</code> (and not + <code>"4"</code>). The highest support library level you include in your application determines + the lowest API version in which it can operate. +</p> + + +<h2 id="samples">Code Samples</h2> + +<p>Each Support Library includes code samples to help you get started using the support +APIs. The code is included in the download from the SDK Manager and is placed inside the Android +SDK installation directory, as listed below:</p> + +<ul> + <li>4v Samples: {@code <sdk>/extras/android/support/samples/Support4Demos/}</li> + <li>7v Samples: {@code <sdk>/extras/android/support/samples/Support7Demos/}</li> + <li>13v Samples: {@code <sdk>/extras/android/support/samples/Support13Demos/}</li> + <li>App Navigation: {@code <sdk>/extras/android/support/samples/SupportAppNavigation/}</li> +</ul> + diff --git a/docs/html/tools/tools_toc.cs b/docs/html/tools/tools_toc.cs index c555f9841841..8ad61ec20f53 100644 --- a/docs/html/tools/tools_toc.cs +++ b/docs/html/tools/tools_toc.cs @@ -56,7 +56,13 @@ <li><a href="<?cs var:toroot ?>tools/devices/emulator.html"><span class="en">Using the Emulator</span></a></li> </ul> </li> - <li><a href="<?cs var:toroot ?>tools/device.html"><span class="en">Using Hardware Devices</span></a></li> + <li class="nav-section"> + <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/device.html"><span class="en">Using Hardware Devices</span></a></div> + <ul> + <li><a href="<?cs var:toroot ?>tools/extras/oem-usb.html"><span + class="en">USB Drivers</span></a></li> + </ul> + </li> <li class="nav-section"> <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/projects/index.html"><span class="en">Setting Up Projects</span></a></div> <ul> @@ -144,8 +150,18 @@ <li><a href="<?cs var:toroot ?>tools/publishing/app-signing.html"><span class="en">Signing Your Apps</span></a></li> </ul> </li> -</ul> -</li> + </ul> + </li> + + <li class="nav-section"> + <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/support-library/index.html"><span +class="en">Support Library</span></a></div> + <ul> + <li><a href="<?cs var:toroot ?>tools/support-library/features.html">Features</a></li> + <li><a href="<?cs var:toroot ?>tools/support-library/setup.html">Setup</a></li> + </ul> + </li> + <li class="nav-section"> <div class="nav-section-header"><a href="<?cs var:toroot ?>tools/help/index.html"><span class="en">Tools Help</span></a></div> @@ -223,19 +239,6 @@ class="en">Platforms</span></a></li> <li class="nav-section"> - <div class="nav-section-header"><a href="<?cs var:toroot -?>tools/extras/index.html"><span class="en">Extras</span></a></div> - <ul> - <li><a href="<?cs var:toroot ?>tools/extras/support-library.html"><span class="en">Support -Library</span></a></li> - <li><a href="<?cs var:toroot ?>tools/extras/oem-usb.html"><span -class="en">USB Drivers</span></a> - </li> - </ul> - </li> - - - <li class="nav-section"> <div class="nav-section-header empty"><a href="<?cs var:toroot ?>tools/samples/index.html"><span class="en">Samples</span></a></div> </li> diff --git a/docs/html/training/animation/screen-slide.jd b/docs/html/training/animation/screen-slide.jd index 716805e6381c..07d779f0f072 100644 --- a/docs/html/training/animation/screen-slide.jd +++ b/docs/html/training/animation/screen-slide.jd @@ -28,7 +28,7 @@ trainingnavtop=true Screen slides are transitions between one entire screen to another and are common with UIs like setup wizards or slideshows. This lesson shows you how to do screen slides with a {@link android.support.v4.view.ViewPager} provided by the <a href= - "{@docRoot}tools/extras/support-library.html">support library</a>. + "{@docRoot}tools/support-library/index.html">support library</a>. {@link android.support.v4.view.ViewPager}s can animate screen slides automatically. Here's what a screen slide looks like that transitions from one screen of content to the next: diff --git a/docs/html/training/backward-compatible-ui/index.jd b/docs/html/training/backward-compatible-ui/index.jd index 82087a603ab4..4baa55c2b210 100644 --- a/docs/html/training/backward-compatible-ui/index.jd +++ b/docs/html/training/backward-compatible-ui/index.jd @@ -13,7 +13,7 @@ startpage=true <ul> <li>API level 5</li> - <li><a href="{@docRoot}tools/extras/support-library.html">The Android Support Package</a></li> + <li><a href="{@docRoot}tools/support-library/index.html">The Android Support Package</a></li> </ul> <h2>You should also read</h2> diff --git a/docs/html/training/basics/firstapp/starting-activity.jd b/docs/html/training/basics/firstapp/starting-activity.jd index 65f2290197fc..6f7fa5d5777d 100644 --- a/docs/html/training/basics/firstapp/starting-activity.jd +++ b/docs/html/training/basics/firstapp/starting-activity.jd @@ -350,7 +350,7 @@ to implement default navigation behaviors, such as <a href="{@docRoot}design/patterns/navigation.html">Up navigation</a> on Android 4.1 (API level 16) and higher. You can provide the same navigation behaviors for older versions of Android by using the -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a> and adding +<a href="{@docRoot}tools/support-library/index.html">Support Library</a> and adding the <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">{@code <meta-data>}</a> element as shown here.</p> @@ -361,7 +361,7 @@ a different IDE, you should have installed it during the When using the templates in Eclipse, the Support Library is automatically added to your app project (you can see the library's JAR file listed under <em>Android Dependencies</em>). If you're not using Eclipse, you need to manually add the library to your project—follow the guide for <a -href="{@docRoot}tools/extras/support-library.html#SettingUp">setting up the Support Library</a> +href="{@docRoot}tools/support-library/setup.html">setting up the Support Library</a> then return here.</p> <p>If you're developing with Eclipse, you can run the app now, but not much happens. diff --git a/docs/html/training/basics/fragments/support-lib.jd b/docs/html/training/basics/fragments/support-lib.jd index b097de15b5f8..d949267c1e0f 100644 --- a/docs/html/training/basics/fragments/support-lib.jd +++ b/docs/html/training/basics/fragments/support-lib.jd @@ -14,12 +14,12 @@ trainingnavtop=true </ol> <h2>You should also read</h2> <ul> - <li><a href="{@docRoot}tools/extras/support-library.html">Support Library</a></li> + <li><a href="{@docRoot}tools/support-library/index.html">Support Library</a></li> </ul> </div> </div> -<p>The Android <a href="{@docRoot}tools/extras/support-library.html">Support Library</a> provides a JAR +<p>The Android <a href="{@docRoot}tools/support-library/index.html">Support Library</a> provides a JAR file with an API library that allows you to use some of the more recent Android APIs in your app while running on earlier versions of Android. For instance, the Support Library provides a version of the {@link android.app.Fragment} APIs that you can use on Android 1.6 (API level 4) and diff --git a/docs/html/training/basics/intents/sending.jd b/docs/html/training/basics/intents/sending.jd index 37a06f16821b..1646b9138b37 100644 --- a/docs/html/training/basics/intents/sending.jd +++ b/docs/html/training/basics/intents/sending.jd @@ -172,7 +172,7 @@ Play</a>).</p> <h2 id="StartActivity">Start an Activity with the Intent</h2> -<div class="figure" style="width:200px"> +<div class="figure" style="width:200px;margin-top:-10px"> <img src="{@docRoot}images/training/basics/intents-choice.png" alt="" /> <p class="img-caption"><strong>Figure 1.</strong> Example of the selection dialog that appears when more than one app can handle an intent.</p> @@ -211,11 +211,9 @@ if (isIntentSafe) { <h2 id="AppChooser">Show an App Chooser</h2> -<div class="figure" style="width:200px"> +<div class="figure" style="width:200px;margin-top:-10px"> <img src="{@docRoot}images/training/basics/intent-chooser.png" alt="" /> - <p class="img-caption"><strong>Figure 2.</strong> Example of the chooser dialog that appears -when you use {@link android.content.Intent#createChooser createChooser()} to ensure -that the user is always shown a list of apps that respond to your intent.</p> + <p class="img-caption"><strong>Figure 2.</strong> A chooser dialog.</p> </div> <p>Notice that when you start an activity by passing your {@link android.content.Intent} to {@link @@ -223,11 +221,13 @@ android.app.Activity#startActivity startActivity()} and there is more than one a the intent, the user can select which app to use by default (by selecting a checkbox at the bottom of the dialog; see figure 1). This is nice when performing an action for which the user generally wants to use the same app every time, such as when opening a web page (users -likely use just one web browser) or taking a photo (users likely prefer one camera). However, if -the action to be performed could be handled by multiple apps and the user might +likely use just one web browser) or taking a photo (users likely prefer one camera).</p> + +<p>However, if the action to be performed could be handled by multiple apps and the user might prefer a different app each time—such as a "share" action, for which users might have several -apps through which they might share an item—you should explicitly show a chooser dialog, -which forces the user to select which app to use for the action every time (the user cannot select a +apps through which they might share an item—you should explicitly show a chooser dialog +as shown in figure 2. The chooser dialog +forces the user to select which app to use for the action every time (the user cannot select a default app for the action).</p> <p>To show the chooser, create an {@link android.content.Intent} using {@link @@ -238,8 +238,9 @@ android.app.Activity#startActivity startActivity()}. For example:</p> Intent intent = new Intent(Intent.ACTION_SEND); ... -// Always use string resources for UI text. This says something like "Share this photo with" -String title = getResources().getText(R.string.chooser_title); +// Always use string resources for UI text. +// This says something like "Share this photo with" +String title = (String) getResources().getText(R.string.chooser_title); // Create and start the chooser Intent chooser = Intent.createChooser(intent, title); startActivity(chooser); diff --git a/docs/html/training/basics/supporting-devices/platforms.jd b/docs/html/training/basics/supporting-devices/platforms.jd index 04872a342a9c..c38101a5c6cf 100644 --- a/docs/html/training/basics/supporting-devices/platforms.jd +++ b/docs/html/training/basics/supporting-devices/platforms.jd @@ -23,7 +23,7 @@ previous.link=screens.html <ul> <li><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Android API Levels</a></li> <li><a -href="{@docRoot}tools/extras/support-library.html">Android Support Library</a></li> +href="{@docRoot}tools/support-library/index.html">Android Support Library</a></li> </ul> </div> </div> @@ -42,7 +42,7 @@ targeting your app to the latest version.</p> <p class="note"><strong>Tip:</strong> In order to provide the best features and functionality across several Android versions, you should use the <a -href="{@docRoot}tools/extras/support-library.html">Android Support Library</a> in your app, +href="{@docRoot}tools/support-library/index.html">Android Support Library</a> in your app, which allows you to use several recent platform APIs on older versions.</p> diff --git a/docs/html/training/design-navigation/wireframing.jd b/docs/html/training/design-navigation/wireframing.jd index 42f892df1f61..1801f91f6c18 100644 --- a/docs/html/training/design-navigation/wireframing.jd +++ b/docs/html/training/design-navigation/wireframing.jd @@ -121,5 +121,5 @@ previous.link=ancestral-temporal.html <li><a href="{@docRoot}guide/topics/ui/index.html">Developer's Guide: User Interface</a>: learn how to implement your user interface designs using the Android SDK.</li> <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a>: implement tabs, up navigation, on-screen actions, etc. <li><a href="{@docRoot}guide/components/fragments.html">Fragments</a>: implement re-usable, multi-pane layouts - <li><a href="{@docRoot}tools/extras/support-library.html">Support Library</a>: implement horizontal paging (swipe views) using <code>ViewPager</code></li> + <li><a href="{@docRoot}tools/support-library/index.html">Support Library</a>: implement horizontal paging (swipe views) using <code>ViewPager</code></li> </ul> diff --git a/docs/html/training/displaying-bitmaps/cache-bitmap.jd b/docs/html/training/displaying-bitmaps/cache-bitmap.jd index b1608c3a49bc..25efe1ebbae0 100644 --- a/docs/html/training/displaying-bitmaps/cache-bitmap.jd +++ b/docs/html/training/displaying-bitmaps/cache-bitmap.jd @@ -324,14 +324,14 @@ private LruCache<String, Bitmap> mMemoryCache; @Override protected void onCreate(Bundle savedInstanceState) { ... - RetainFragment mRetainFragment = + RetainFragment retainFragment = RetainFragment.findOrCreateRetainFragment(getFragmentManager()); - mMemoryCache = RetainFragment.mRetainedCache; + mMemoryCache = retainFragment.mRetainedCache; if (mMemoryCache == null) { mMemoryCache = new LruCache<String, Bitmap>(cacheSize) { ... // Initialize cache here as usual } - mRetainFragment.mRetainedCache = mMemoryCache; + retainFragment.mRetainedCache = mMemoryCache; } ... } diff --git a/docs/html/training/displaying-bitmaps/index.jd b/docs/html/training/displaying-bitmaps/index.jd index 857edeefb9bf..1f44fa866096 100644 --- a/docs/html/training/displaying-bitmaps/index.jd +++ b/docs/html/training/displaying-bitmaps/index.jd @@ -12,7 +12,7 @@ startpage=true <h2>Dependencies and prerequisites</h2> <ul> <li>Android 2.1 (API Level 7) or higher</li> - <li><a href="{@docRoot}tools/extras/support-library.html">Support Library</a></li> + <li><a href="{@docRoot}tools/support-library/index.html">Support Library</a></li> </ul> <h2>Try it out</h2> diff --git a/docs/html/training/gestures/detector.jd b/docs/html/training/gestures/detector.jd index 65ddb1baee3a..a8e0fdbf166a 100644 --- a/docs/html/training/gestures/detector.jd +++ b/docs/html/training/gestures/detector.jd @@ -58,7 +58,7 @@ gestures your app supports. </li> <p>The examples in this lesson use the {@link android.support.v4.view.GestureDetectorCompat} and {@link android.support.v4.view.MotionEventCompat} classes. These classes are in the -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a>. You should use +<a href="{@docRoot}tools/support-library/index.html">Support Library</a>. You should use Support Library classes where possible to provide compatibility with devices running Android 1.6 and higher. Note that {@link android.support.v4.view.MotionEventCompat} is <em>not</em> a replacement for the {@link android.view.MotionEvent} class. Rather, it provides static utility diff --git a/docs/html/training/gestures/movement.jd b/docs/html/training/gestures/movement.jd index fdc1ea4ef4ff..136b37a3337e 100644 --- a/docs/html/training/gestures/movement.jd +++ b/docs/html/training/gestures/movement.jd @@ -91,7 +91,7 @@ determining factor in tracking a gesture's characteristics or even deciding whether the gesture occurred. To make velocity calculation easier, Android provides the {@link android.view.VelocityTracker} class and the {@link android.support.v4.view.VelocityTrackerCompat} class in the -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a>. +<a href="{@docRoot}tools/support-library/index.html">Support Library</a>. {@link android.view.VelocityTracker} helps you track the velocity of touch events. This is useful for gestures in which velocity is part of the criteria for the diff --git a/docs/html/training/gestures/multi.jd b/docs/html/training/gestures/multi.jd index 6a0df11f4c5c..58404827682d 100644 --- a/docs/html/training/gestures/multi.jd +++ b/docs/html/training/gestures/multi.jd @@ -123,7 +123,7 @@ the pointer associated with the action. This is illustrated in the snippet below <p class="note"><strong>Note:</strong> This example uses the {@link android.support.v4.view.MotionEventCompat} class. This class is in the -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a>. You should use +<a href="{@docRoot}tools/support-library/index.html">Support Library</a>. You should use {@link android.support.v4.view.MotionEventCompat} to provide the best support for a wide range of platforms. Note that {@link android.support.v4.view.MotionEventCompat} is <em>not</em> a replacement for the {@link android.view.MotionEvent} class. Rather, it provides static utility diff --git a/docs/html/training/implementing-navigation/ancestral.jd b/docs/html/training/implementing-navigation/ancestral.jd index c3c7ef8a882b..12d500589866 100644 --- a/docs/html/training/implementing-navigation/ancestral.jd +++ b/docs/html/training/implementing-navigation/ancestral.jd @@ -69,7 +69,7 @@ in the <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code &l element.</p> <p>If your app supports Android 4.0 and lower, include the -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a> with your app and +<a href="{@docRoot}tools/support-library/index.html">Support Library</a> with your app and add a <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">{@code <meta-data>}</a> element inside the <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code <activity>}</a>. Then specify the parent activity as the value diff --git a/docs/html/training/implementing-navigation/index.jd b/docs/html/training/implementing-navigation/index.jd index 519f6bb43a05..5b657164f720 100644 --- a/docs/html/training/implementing-navigation/index.jd +++ b/docs/html/training/implementing-navigation/index.jd @@ -13,7 +13,7 @@ startpage=true <ul> <li>Android 2.2 or higher</li> <li>Understanding of fragments and Android layouts</li> - <li><a href="{@docRoot}tools/extras/support-library.html">Android Support Library</a></li> + <li><a href="{@docRoot}tools/support-library/index.html">Android Support Library</a></li> <li><a href="{@docRoot}training/design-navigation/index.html">Designing Effective Navigation</a></li> </ul> @@ -46,7 +46,7 @@ implement navigation patterns with tabs, swipe views, and a navigation drawer. Y understand how to provide proper <em>Up</em> and <em>Back</em> navigation.</p> <p class="note"><strong>Note:</strong> Several elements of this class require the -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a> APIs. +<a href="{@docRoot}tools/support-library/index.html">Support Library</a> APIs. If you have not used the Support Library before, follow the lesson about <a href="{@docRoot}training/basics/fragments/support-lib.html">Using the Support Library</a> to get your project set up.</p> diff --git a/docs/html/training/implementing-navigation/lateral.jd b/docs/html/training/implementing-navigation/lateral.jd index b31449701a5e..97e039862677 100644 --- a/docs/html/training/implementing-navigation/lateral.jd +++ b/docs/html/training/implementing-navigation/lateral.jd @@ -57,7 +57,7 @@ Views</a> design guide.</p> <p>You can create swipe views in your app using the {@link android.support.v4.view.ViewPager} widget, available in the -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a>. The +<a href="{@docRoot}tools/support-library/index.html">Support Library</a>. The {@link android.support.v4.view.ViewPager} is a layout widget in which each child view is a separate page (a separate tab) in the layout.</p> diff --git a/docs/html/training/implementing-navigation/nav-drawer.jd b/docs/html/training/implementing-navigation/nav-drawer.jd index 38b7345456dd..2b5e4f809d64 100644 --- a/docs/html/training/implementing-navigation/nav-drawer.jd +++ b/docs/html/training/implementing-navigation/nav-drawer.jd @@ -43,7 +43,7 @@ app, the user touches the app icon in the action bar.</p> <p>This lesson describes how to implement a navigation drawer using the {@link android.support.v4.widget.DrawerLayout} APIs available in the -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a>.</p> +<a href="{@docRoot}tools/support-library/index.html">Support Library</a>.</p> <div class="note design"> <p><strong>Navigation Drawer Design</strong></p> diff --git a/docs/html/training/implementing-navigation/temporal.jd b/docs/html/training/implementing-navigation/temporal.jd index 0719ba6833c2..3abab53fc64f 100644 --- a/docs/html/training/implementing-navigation/temporal.jd +++ b/docs/html/training/implementing-navigation/temporal.jd @@ -85,7 +85,7 @@ because it can determine the logical <em>Back</em> or <em>Up</em> navigation pat information.</p> <p>If your app supports Android 4.0 and lower, include the -<a href="{@docRoot}tools/extras/support-library.html">Support Library</a> with your app and +<a href="{@docRoot}tools/support-library/index.html">Support Library</a> with your app and add a <a href="{@docRoot}guide/topics/manifest/meta-data-element.html">{@code <meta-data>}</a> element inside the <a href="{@docRoot}guide/topics/manifest/activity-element.html">{@code <activity>}</a>. Then specify the parent activity as the value diff --git a/docs/html/training/index.jd b/docs/html/training/index.jd index 82fbd1618b4a..72ad018949aa 100644 --- a/docs/html/training/index.jd +++ b/docs/html/training/index.jd @@ -3,14 +3,7 @@ page.trainingcourse=true page.metaDescription=Android Training provides a collection of classes that aim to help you build great apps for Android. Each class explains the steps required to solve a problem or implement a feature using code snippets and sample code for you to use in your apps. @jd:body -<div id="butterbar-wrapper" > - <div id="butterbar" > - <div id="butterbar-message"> -<a target="_blank" href="https://docs.google.com/a/google.com/forms/d/1EHLPGqhbxj2HungHRRN4_0K9TGpc-Izy-u46vBDgS8Q/viewform"> - Take the Android Developer Survey</a> - </div> - </div> -</div> + <p>Welcome to Training for Android developers. Here you'll find sets of lessons within classes that describe how to accomplish a specific task with code samples you can re-use in your app. diff --git a/docs/html/training/multiscreen/index.jd b/docs/html/training/multiscreen/index.jd index d09540e87ced..2d34b2870721 100644 --- a/docs/html/training/multiscreen/index.jd +++ b/docs/html/training/multiscreen/index.jd @@ -19,7 +19,7 @@ href="http://developer.android.com/guide/components/activities.html">Activities< <li>Experience building an Android <a href="http://developer.android.com/guide/topics/ui/index.html"> User Interface</a></li> <li>Several features require the use of the <a -href="{@docRoot}tools/extras/support-library.html">support library</a></li> +href="{@docRoot}tools/support-library/index.html">support library</a></li> </ul> <h2>You should also read</h2> @@ -58,7 +58,7 @@ optimizing for multiple screens. You can download the sample (to the right) and of reusable code for your own application.</p> <p class="note"><strong>Note:</strong> This class and the associated sample use the <a -href="{@docRoot}tools/extras/support-library.html">support library</a> in order to use the {@link +href="{@docRoot}tools/support-library/index.html">support library</a> in order to use the {@link android.app.Fragment} APIs on versions lower than Android 3.0. You must download and add the library to your application in order to use all APIs in this class.</p> diff --git a/graphics/java/android/renderscript/package.html b/graphics/java/android/renderscript/package.html index a844956803c6..eb178c1ea47e 100644 --- a/graphics/java/android/renderscript/package.html +++ b/graphics/java/android/renderscript/package.html @@ -2,11 +2,6 @@ <BODY> <p>RenderScript provides support for high-performance computation across heterogeneous processors.</p> -<p>This package is for the latest native version of RenderScript included on -Android devices. Developers interested in running RenderScript on any Android -device running {@link android.os.Build.VERSION_CODES#GINGERBREAD} or newer -should see the {@link android.support.v8.renderscript} package. - <p>For more information, see the <a href="{@docRoot}guide/topics/renderscript/index.html">RenderScript</a> developer guide.</p> {@more} |