Merge "docs: Noted how apps behave differntly on devices without buttons." into mnc-docs
am: 0d042d6
* commit '0d042d654b226e5f1ca169f4fa53e78f3fa23ef0':
docs: Noted how apps behave differntly on devices without buttons.
diff --git a/Android.mk b/Android.mk
index b4d21e4..7e42edd 100644
--- a/Android.mk
+++ b/Android.mk
@@ -930,6 +930,42 @@
$(full_target): $(static_doc_index_redirect)
$(full_target): $(framework_built)
+# ==== static html in the sdk, reference only ===============================
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
+LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
+LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
+LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
+LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
+LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
+LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
+LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
+
+LOCAL_MODULE := offline-refonly
+
+LOCAL_DROIDDOC_OPTIONS:=\
+ $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
+ -offlinemode \
+ -title "Android SDK" \
+ -proofread $(OUT_DOCS)/$(LOCAL_MODULE)-proofread.txt \
+ -sdkvalues $(OUT_DOCS) \
+ -hdf android.whichdoc offline \
+ -referenceonly
+
+LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk-refonly
+
+include $(BUILD_DROIDDOC)
+
+static_doc_index_redirect := $(out_dir)/index.html
+$(static_doc_index_redirect): \
+ $(LOCAL_PATH)/docs/docs-preview-index.html | $(ACP)
+ $(hide) mkdir -p $(dir $@)
+ $(hide) $(ACP) $< $@
+
+$(full_target): $(static_doc_index_redirect)
+$(full_target): $(framework_built)
+
# ==== docs for the web (on the androiddevdocs app engine server) =======================
include $(CLEAR_VARS)
diff --git a/docs/docs-documentation-redirect.html b/docs/docs-documentation-redirect.html
index 98a265e..dbdf8b4 100644
--- a/docs/docs-documentation-redirect.html
+++ b/docs/docs-documentation-redirect.html
@@ -1,9 +1,9 @@
<html>
<head>
-<meta http-equiv="refresh" content="0;url=documentation.html">
+<meta http-equiv="refresh" content="0;url=reference/packages.html">
</head>
<body>
-<a href="documentation.html">click here if you are not redirected</a>
+<a href="reference/packages.html">click here if you are not redirected</a>
</body>
</html>
diff --git a/docs/docs-preview-index.html b/docs/docs-preview-index.html
new file mode 100644
index 0000000..e26b57c
--- /dev/null
+++ b/docs/docs-preview-index.html
@@ -0,0 +1,103 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta content="IE=edge" http-equiv="X-UA-Compatible">
+<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
+
+<title>Android N Developer Preview</title>
+
+<!-- STYLESHEETS -->
+<link rel="stylesheet"
+href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+ title="roboto">
+<link href="assets/css/default.css?v=17" rel="stylesheet" type="text/css">
+<!-- JAVASCRIPT -->
+<script src="https://www.google.com/jsapi" type="text/javascript"></script>
+<script src="assets/js/android_3p-bundle.js" type="text/javascript"></script>
+<script type="text/javascript">
+ var toRoot = "../";
+ var metaTags = ["develop, getstarted, sdk, appquality, landing"];
+ var devsite = false;
+</script>
+<script src="assets/js/docs.js?v=3" type="text/javascript"></script>
+</head>
+
+<body>
+<div id="header-wrapper">
+ <div class="dac-header" id="header">
+ <div class="dac-header-inner">
+ <a class="dac-nav-toggle" data-dac-toggle-nav="" href="javascript:;"
+ title="Open navigation">
+ <span class="dac-nav-hamburger">
+ <span class="dac-nav-hamburger-top"></span>
+ <span class="dac-nav-hamburger-mid"></span>
+ <span class="dac-nav-hamburger-bot"></span>
+ </span>
+ </a>
+ <a class="dac-header-logo" href="index.html">
+ <img class="dac-header-logo-image" src="assets/images/android_logo.png"
+ srcset="assets/images/android_logo@2x.png 2x" width="32" height="36"
+ alt="Android"> Developers
+ </a>
+ </div>
+ </div>
+</div>
+<nav class="dac-nav">
+ <div class="dac-nav-dimmer" data-dac-toggle-nav=""></div>
+ <ul class="dac-nav-list" data-dac-nav="">
+ <li class="dac-nav-item dac-nav-head">
+ <a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav=""
+ href="javascript:;" title="Close navigation">
+ <img class="dac-logo-image" src="assets/images/android_logo.png"
+ srcset="assets/images/android_logo@2x.png 2x" width="32" height="36"
+ alt="Android"> Developers
+ </a>
+ </li>
+ <li class="dac-nav-item develop">
+ <a class="dac-nav-link" href="reference/packages.html"
+ >API Reference</a>
+ </li>
+ </ul>
+</nav>
+
+<section class="dac-expand" style="padding-top:40px;background-color:#eee">
+ <div class="wrap" style="max-width:1100px;margin-top:0;height:100%">
+ <div class="cols dac-hero-content" style="padding-bottom:1em;">
+ <div class="col-11of16">
+
+
+<h1>Android N Developer Preview</h1>
+<p>
+ Get ready for Android N!
+ <strong>Test your apps</strong> on Nexus devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+</p>
+
+<h2>Get Started</h2>
+<ul>
+ <li>View the <a href="reference/packages.html">API Reference</a></li>
+ <li>Read Diff Reports:</a>
+ <ul>
+ <li><a href="sdk/api_diff/n-preview-1/changes.html"
+ >API 23 --> Preview 1</a></li>
+ </ul>
+ </li>
+ <li>Downloads and additional documentation are available at the
+ <a href="http://developer.android.com/preview/index.html">
+ Android N Developer Preview site</a></li>
+ <li>For information about Developer Preview 1, visit the
+ <a href="http://developer.android.com/preview/support.html">Support</a>
+ page.</li>
+</ul>
+
+
+ </div>
+ </div>
+ </div>
+</section>
+</body>
+</html>
diff --git a/docs/html-intl/intl/es/index.jd b/docs/html-intl/intl/es/index.jd
index 46974cfe..66f9bf0 100644
--- a/docs/html-intl/intl/es/index.jd
+++ b/docs/html-intl/intl/es/index.jd
@@ -15,39 +15,37 @@
})
</script>
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
-
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="about/versions/marshmallow/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
<div class="wrap" style="max-width:1100px;margin-top:0">
- <div class="cols dac-hero-content">
- <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
- </div>
- <div class="col-8of16 col-pull-7of16">
- <div class="dac-hero-tag"></div>
-
- <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
- </div>
- <div class="col-6of16 col-push-1of16">
- <p class="dac-hero-description" style="color:white"><strong>The
- official Android 6.0 SDK is now available!</strong>
- Explore what's new — runtime permissions,
- Doze and App Standby power-saving features, new
- assist technology, and more.</p>
-
- <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
+ <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+ <a href="{@docRoot}preview/index.html">
+ <h1 class="dac-hero-title">Android N Developer Preview</h1>
+ <p class="dac-hero-description">
+ Get ready for the next version of Android!
+ <strong>Test your apps</strong> on Nexus and other devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+ </p>
+ <a class="dac-hero-cta" href="/preview/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
Learn more
- </a><br>
- </div>
- </div>
+ </a><!--<br>
+ <a class="dac-hero-cta" href="/preview/support.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Update to Developer Preview (final SDK)
+ </a><br>-->
+ </a>
+ </div>
+ <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+ <a href="{@docRoot}preview/index.html">
+ <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+ srcset="/images/home/n-preview-hero.png 1x,
+ /images/home/n-preview-hero_2x.png 2x">
+ </a>
</div>
</div>
-</a>
-</article></section>
+</section>
<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
<div class="wrap dac-offset-parent">
diff --git a/docs/html-intl/intl/ja/index.jd b/docs/html-intl/intl/ja/index.jd
index 6dfa0dd..755ec62 100644
--- a/docs/html-intl/intl/ja/index.jd
+++ b/docs/html-intl/intl/ja/index.jd
@@ -15,39 +15,37 @@
})
</script>
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
-
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="about/versions/marshmallow/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
<div class="wrap" style="max-width:1100px;margin-top:0">
- <div class="cols dac-hero-content">
- <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
- </div>
- <div class="col-8of16 col-pull-7of16">
- <div class="dac-hero-tag"></div>
-
- <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
- </div>
- <div class="col-6of16 col-push-1of16">
- <p class="dac-hero-description" style="color:white"><strong>The
- official Android 6.0 SDK is now available!</strong>
- Explore what's new — runtime permissions,
- Doze and App Standby power-saving features, new
- assist technology, and more.</p>
-
- <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
+ <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+ <a href="{@docRoot}preview/index.html">
+ <h1 class="dac-hero-title">Android N Developer Preview</h1>
+ <p class="dac-hero-description">
+ Get ready for the next version of Android!
+ <strong>Test your apps</strong> on Nexus and other devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+ </p>
+ <a class="dac-hero-cta" href="/preview/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
Learn more
- </a><br>
- </div>
- </div>
+ </a><!--<br>
+ <a class="dac-hero-cta" href="/preview/support.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Update to Developer Preview (final SDK)
+ </a><br>-->
+ </a>
+ </div>
+ <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+ <a href="{@docRoot}preview/index.html">
+ <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+ srcset="/images/home/n-preview-hero.png 1x,
+ /images/home/n-preview-hero_2x.png 2x">
+ </a>
</div>
</div>
-</a>
-</article></section>
+</section>
<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
<div class="wrap dac-offset-parent">
diff --git a/docs/html-intl/intl/ko/index.jd b/docs/html-intl/intl/ko/index.jd
index 8b1bfbc..01c8587 100644
--- a/docs/html-intl/intl/ko/index.jd
+++ b/docs/html-intl/intl/ko/index.jd
@@ -15,39 +15,37 @@
})
</script>
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
-
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="about/versions/marshmallow/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
<div class="wrap" style="max-width:1100px;margin-top:0">
- <div class="cols dac-hero-content">
- <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
- </div>
- <div class="col-8of16 col-pull-7of16">
- <div class="dac-hero-tag"></div>
-
- <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
- </div>
- <div class="col-6of16 col-push-1of16">
- <p class="dac-hero-description" style="color:white"><strong>The
- official Android 6.0 SDK is now available!</strong>
- Explore what's new — runtime permissions,
- Doze and App Standby power-saving features, new
- assist technology, and more.</p>
-
- <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
+ <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+ <a href="{@docRoot}preview/index.html">
+ <h1 class="dac-hero-title">Android N Developer Preview</h1>
+ <p class="dac-hero-description">
+ Get ready for the next version of Android!
+ <strong>Test your apps</strong> on Nexus and other devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+ </p>
+ <a class="dac-hero-cta" href="/preview/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
Learn more
- </a><br>
- </div>
- </div>
+ </a><!--<br>
+ <a class="dac-hero-cta" href="/preview/support.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Update to Developer Preview (final SDK)
+ </a><br>-->
+ </a>
+ </div>
+ <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+ <a href="{@docRoot}preview/index.html">
+ <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+ srcset="/images/home/n-preview-hero.png 1x,
+ /images/home/n-preview-hero_2x.png 2x">
+ </a>
</div>
</div>
-</a>
-</article></section>
+</section>
<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
<div class="wrap dac-offset-parent">
diff --git a/docs/html-intl/intl/pt-br/index.jd b/docs/html-intl/intl/pt-br/index.jd
index 8605ab8..f5e1569 100644
--- a/docs/html-intl/intl/pt-br/index.jd
+++ b/docs/html-intl/intl/pt-br/index.jd
@@ -15,39 +15,37 @@
})
</script>
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
-
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="about/versions/marshmallow/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
<div class="wrap" style="max-width:1100px;margin-top:0">
- <div class="cols dac-hero-content">
- <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
- </div>
- <div class="col-8of16 col-pull-7of16">
- <div class="dac-hero-tag"></div>
-
- <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
- </div>
- <div class="col-6of16 col-push-1of16">
- <p class="dac-hero-description" style="color:white"><strong>The
- official Android 6.0 SDK is now available!</strong>
- Explore what's new — runtime permissions,
- Doze and App Standby power-saving features, new
- assist technology, and more.</p>
-
- <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
+ <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+ <a href="{@docRoot}preview/index.html">
+ <h1 class="dac-hero-title">Android N Developer Preview</h1>
+ <p class="dac-hero-description">
+ Get ready for the next version of Android!
+ <strong>Test your apps</strong> on Nexus and other devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+ </p>
+ <a class="dac-hero-cta" href="/preview/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
Learn more
- </a><br>
- </div>
- </div>
+ </a><!--<br>
+ <a class="dac-hero-cta" href="/preview/support.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Update to Developer Preview (final SDK)
+ </a><br>-->
+ </a>
+ </div>
+ <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+ <a href="{@docRoot}preview/index.html">
+ <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+ srcset="/images/home/n-preview-hero.png 1x,
+ /images/home/n-preview-hero_2x.png 2x">
+ </a>
</div>
</div>
-</a>
-</article></section>
+</section>
<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
<div class="wrap dac-offset-parent">
diff --git a/docs/html-intl/intl/ru/index.jd b/docs/html-intl/intl/ru/index.jd
index 7faaac0..e917a8d 100644
--- a/docs/html-intl/intl/ru/index.jd
+++ b/docs/html-intl/intl/ru/index.jd
@@ -15,39 +15,37 @@
})
</script>
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
-
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="about/versions/marshmallow/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
<div class="wrap" style="max-width:1100px;margin-top:0">
- <div class="cols dac-hero-content">
- <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
- </div>
- <div class="col-8of16 col-pull-7of16">
- <div class="dac-hero-tag"></div>
-
- <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
- </div>
- <div class="col-6of16 col-push-1of16">
- <p class="dac-hero-description" style="color:white"><strong>The
- official Android 6.0 SDK is now available!</strong>
- Explore what's new — runtime permissions,
- Doze and App Standby power-saving features, new
- assist technology, and more.</p>
-
- <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
+ <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+ <a href="{@docRoot}preview/index.html">
+ <h1 class="dac-hero-title">Android N Developer Preview</h1>
+ <p class="dac-hero-description">
+ Get ready for the next version of Android!
+ <strong>Test your apps</strong> on Nexus and other devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+ </p>
+ <a class="dac-hero-cta" href="/preview/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
Learn more
- </a><br>
- </div>
- </div>
+ </a><!--<br>
+ <a class="dac-hero-cta" href="/preview/support.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Update to Developer Preview (final SDK)
+ </a><br>-->
+ </a>
+ </div>
+ <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+ <a href="{@docRoot}preview/index.html">
+ <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+ srcset="/images/home/n-preview-hero.png 1x,
+ /images/home/n-preview-hero_2x.png 2x">
+ </a>
</div>
</div>
-</a>
-</article></section>
+</section>
<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
<div class="wrap dac-offset-parent">
diff --git a/docs/html-intl/intl/zh-cn/index.jd b/docs/html-intl/intl/zh-cn/index.jd
index c915863..ca3a84b 100644
--- a/docs/html-intl/intl/zh-cn/index.jd
+++ b/docs/html-intl/intl/zh-cn/index.jd
@@ -15,39 +15,37 @@
})
</script>
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
-
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="about/versions/marshmallow/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
<div class="wrap" style="max-width:1100px;margin-top:0">
- <div class="cols dac-hero-content">
- <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
- </div>
- <div class="col-8of16 col-pull-7of16">
- <div class="dac-hero-tag"></div>
-
- <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
- </div>
- <div class="col-6of16 col-push-1of16">
- <p class="dac-hero-description" style="color:white"><strong>The
- official Android 6.0 SDK is now available!</strong>
- Explore what's new — runtime permissions,
- Doze and App Standby power-saving features, new
- assist technology, and more.</p>
-
- <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
+ <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+ <a href="{@docRoot}preview/index.html">
+ <h1 class="dac-hero-title">Android N Developer Preview</h1>
+ <p class="dac-hero-description">
+ Get ready for the next version of Android!
+ <strong>Test your apps</strong> on Nexus and other devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+ </p>
+ <a class="dac-hero-cta" href="/preview/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
Learn more
- </a><br>
- </div>
- </div>
+ </a><!--<br>
+ <a class="dac-hero-cta" href="/preview/support.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Update to Developer Preview (final SDK)
+ </a><br>-->
+ </a>
+ </div>
+ <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+ <a href="{@docRoot}preview/index.html">
+ <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+ srcset="/images/home/n-preview-hero.png 1x,
+ /images/home/n-preview-hero_2x.png 2x">
+ </a>
</div>
</div>
-</a>
-</article></section>
+</section>
<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
<div class="wrap dac-offset-parent">
diff --git a/docs/html-intl/intl/zh-cn/training/wearables/apps/creating-app-china.jd b/docs/html-intl/intl/zh-cn/training/wearables/apps/creating-app-china.jd
new file mode 100644
index 0000000..4e33d36
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/wearables/apps/creating-app-china.jd
@@ -0,0 +1,156 @@
+page.title=创建面向中国市场的 Android Wear 应用
+parent.title=培训
+parent.link=creating.html
+page.tags= "可穿戴式", "应用", "中国"
+page.article=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+ <li><a href="#ChinaSDK">在面向中国市场的 Android Wear 上支持您的应用</a></li>
+ <li><a href="#other-services">使用其他 Google Play Services API</a></li>
+</ol>
+<h2>依赖项和先决条件</h2>
+<ol>
+<li> 在手持式设备和可穿戴式设备上安装 Android 4.3(API 级别 18)或更高版本。</li>
+</ol>
+<h2>下载</h2>
+<ol>
+<div class="download-box">
+<a href="https://dl.google.com/androidwear/developers/china/google-play-services-7-8-87.zip" class="button">独立客户端库</a>
+<p class="filename">google-play-services-7-8-87.zip</p>
+</div>
+</ol>
+</div>
+</div>
+
+
+<p>
+在中国销售的手持式设备没有预装 Google Play 服务。为此,在面向中国市场的设备上运行的可穿戴式设备应用必须通过 Android Wear 协同应用与配对的手持式设备进行通信。
+
+为了让您能够开发出可与面向中国市场的 Android Wear 和面向全球其他市场的 Android Wear 配合使用的 APK,我们提供了专用版本的 Google Play services 客户端库。
+
+</p>
+
+<p>
+此客户端库与 Android 4.3(API 级别 18)及更高版本兼容,您只需将其拖放到您的应用中。
+您无需编写任何新代码,只需更改几个项目配置设置,然后重新编译应用。
+
+</p>
+
+
+<p>本页面的其余部分将介绍如何执行此过程。</p>
+
+
+
+<h2 id = "ChinaSDK">在面向中国市场的 Android Wear 上支持您的应用</h2>
+
+<p>
+<p>为了在所有手持式设备上支持您的可穿戴式设备应用,您必须下载 Google Play
+services 7.8.87 客户端库,并将其作为 Maven 存储库添加到您的项目中,配置开发项目以使用该库,然后重新编译您的应用。
+
+</p>
+
+<h3>添加 Google Play services 7.8.87 库</h3>
+
+<p>Google Play services 7.8.87 客户端库作为 Maven 存储库分发。要将此存储库添加到项目,请:
+</p>
+
+<ol>
+<li><a href="https://dl.google.com/androidwear/developers/china/google-play-services-7-8-87.zip">下载</a>客户端库。
+文件名为 {@code google-play-services-7-8-87.zip}。
+</li>
+<li>通过从下载的 zip 文件提取 {@code google-play-services-7-8-87/} 目录来创建本地 Maven 存储库,并将其放入项目的根目录中。
+
+</li>
+<li>在顶级项目 {@code build.gradle} 文件中,指定新创建的本地 Maven {@code google-play-services-7-8-87} 存储库的位置。
+
+</li>
+<p>
+以下示例向您展示如何操作:
+</p>
+<pre>
+allprojects {
+ repositories {
+
+ maven {
+ url "${rootProject.projectDir}/google-play-services-7-8-87"
+ }
+ // ... other repositories may go here ...
+
+ }</pre>
+</ol>
+<h3>配置应用以使用库</h3>
+<p>在 <em>mobile</em> 模块的 {@code build.gradle} 文件中,将 Google Play services 依赖项替换为指向客户端库(来自新添加的存储库)的引用。
+以下示例向您展示如何操作:
+
+</p>
+
+
+<pre>
+dependencies{
+ ...
+ wearApp project(':wear')
+ compile 'com.google.android.gms:play-services-wearable:7.8.87'
+ ...
+ }
+</pre>
+<p><em>wear</em> 模块的 {@code build.gradle} 文件也必须使用此版本的客户端库,例如:
+
+</p>
+<pre>
+dependencies {
+ compile 'com.google.android.support:wearable:1.3.0'
+ compile 'com.google.android.gms:play-services-wearable:7.8.87'
+}
+</pre>
+
+<p class="note"><strong>注</strong>:如果您在可穿戴式设备应用中使用任何其他 Google Play services API,则必须有选择地将这些 Google Play services API 添加到应用中,并显式指定 7.8.87 版本。
+
+例如,若要将 Google 位置 API 包含到可穿戴式设备应用中,则在您的 {@code build.gradle} 文件中添加以下行:
+
+</p>
+<pre>
+compile 'com.google.android.gms:play-services-location:7.8.87'
+</pre>
+</p>
+<h3>构建项目</h3>
+
+
+<p>现在,您可以<a href="{@docRoot}training/wearables/apps/packaging.html">构建</a>应用的新版本,并将其全局部署到 Android 手持式设备。
+</p>
+</ol>
+
+
+<h2 id= "other-services">使用其他 Google Play services API</h2>
+
+<p>
+如果您的应用使用 Google Play services API 而不是 Wearable API,那么您的应用需要检查这些 API 在运行时是否可用以及是否能够做出恰当的响应。
+检查 Google Play services API 可用性的方式有两种:
+
+</p>
+
+<ol>
+<li>使用独立的 <a href="https://developers.google.com/android/reference/com/google/android/gms/
+common/api/GoogleApiClient.html">{@code GoogleApiClient}</a> 实例来连接到其他 API。此界面包含回调以提醒您的应用连接成功还是失败。若要了解如何处理连接故障,请参阅<a href="https://developers.google.com/android/guides/api-client">访问 Google API</a>。
+
+
+</li>
+
+<li>使用
+<a href="https://developers.google.com/android/
+reference/com/google/android/gms/common/api/GoogleApiClient.Builder.html">{@code GoogleApiClient.Builder}
+</a>
+的 <a href="https://developers.google.com/android/reference/com/google/android/gms/common/
+api/GoogleApiClient.Builder.html#addApiIfAvailable(com.google.android.gms.common.api.Api<O>, O,
+com.google.android.gms.common.api.Scope...)"> {@code addApiIfAvailable()}</a> 方法以连接到必需的 API。在触发 <a href="https://developers.google.com/android/reference/
+com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks#onConnected(android.os.Bundle)">
+{@code onConnected()}</a> 回调后,使用 <a href="https://developers.google.com/android/reference/com/google/android/gms/common/api/
+GoogleApiClient.html#hasConnectedApi(com.google.android.gms.common.api.Api<?>)">
+ {@code hasConnectedApi()}</a> 方法检查所请求的每个 API 是否均已正确连接。
+
+
+</ol>
diff --git a/docs/html-intl/intl/zh-cn/training/wearables/apps/creating.jd b/docs/html-intl/intl/zh-cn/training/wearables/apps/creating.jd
new file mode 100644
index 0000000..5c9ec3f
--- /dev/null
+++ b/docs/html-intl/intl/zh-cn/training/wearables/apps/creating.jd
@@ -0,0 +1,225 @@
+page.title=创建并运行可穿戴式设备应用
+page.tags=wear
+helpoutsWidget=true
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>本课程将向您展示如何</h2>
+<ol>
+ <li><a href="#UpdateSDK">更新 SDK</a></li>
+ <li><a href="#SetupEmulator">设置 Android Wear 模拟器或设备</a></li>
+ <li><a href="#CreateProject">创建项目</a></li>
+ <li><a href="#Install">安装可穿戴式设备应用</a></li>
+ <li><a href="#Libraries">包含正确的库</a></li>
+</ol>
+</div>
+</div>
+
+<p>可穿戴式设备应用直接在可穿戴式设备上运行,让您可以直接访问可穿戴式设备上的底层硬件(如传感器)、Activity、服务等。
+
+</p>
+
+<p>如果您想要发布到 Google Play 商店,还需要提供包含可穿戴式设备应用的协同手持式设备应用。可穿戴式设备不支持 Google Play 商店,因此,用户可下载协同手持式设备应用,后者自动将可穿戴式设备应用推送到可穿戴式设备上。
+
+
+手持式设备应用还可用于执行繁重的处理、网络操作或其他工作,以及将处理结果发送到可穿戴式设备。
+
+
+</p>
+
+<p>此课程介绍如何设置设备或模拟器,并创建一个同时包含可穿戴式设备应用和手持式设备应用的项目。
+
+</p>
+
+<h2 id="UpdateSDK">更新 SDK</h2>
+
+<p>在您着手构建可穿戴式设备应用前,必须:</p>
+
+<ul>
+ <li><strong>将您的 SDK 工具更新到 23.0.0 或更高版本</strong>
+ <br>
+ 利用更新后的 SDK 工具,您可以构建和测试可穿戴式设备应用。
+ </li>
+ <li><strong>将您的 SDK 平台更新为 Android 4.4W.2 (API 20) 或更高版本</strong>
+ <br>
+ 更新后的平台版本提供了新的可穿戴式设备应用 API。
+ </li>
+</ul>
+
+<p>若要将 SDK 更新为上述组件,请参阅<a href="{@docRoot}sdk/installing/adding-packages.html#GetTools">获取最新的 SDK 工具</a>
+。</p>
+
+
+<h2 id="SetupEmulator">设置 Android Wear 模拟器或设备</h2>
+<p>我们建议您在真实的硬件上进行开发,以便您可以更好地衡量用户体验。
+不过,通过模拟器,您可以测试不同类型的屏幕形状,这对于测试非常有用。
+</p>
+
+<h3>设置 Android Wear 虚拟设备</h3>
+
+<p>若要设置 Android Wear 虚拟设备,请:</p>
+<ol>
+ <li>点击 <b>Tools > Android > AVD Manager</b>。</li>
+ <li>点击 <b>Create Virtual Device...</b>。</li>
+ <ol>
+ <li>在“Category”列表中点击 <b>Wear</b>:</li>
+ <li>选择 Android Wear Square 或 Android Wear Round。</li>
+ <li>点击 <b>Next</b>。</li>
+ <li>选择版本名称(例如,KitKat Wear)。</li>
+ <li>点击 <b>Next</b>。</li>
+ <li>(可选)更改虚拟设备的任意首选项。</li>
+ <li>点击 <b>Finish</b>。</li>
+ </ol>
+<li>启动模拟器:
+<ol>
+ <li>选择您刚创建的虚拟设备。</li>
+ <li>点击 <b>Play</b> 按钮。</li>
+ <li>等待模拟器初始化并显示 Android Wear 主屏幕。</li>
+</ol>
+</li>
+<li>将手持式设备与模拟器配对:
+<ol>
+ <li>在手持式设备上,从 Google Play 安装 Android Wear 应用。</li>
+ <li>通过 USB 将手持式设备连接到计算机。</li>
+ <li>将 AVD 的通信端口转发到连接的手持式设备(每次连接手持式设备时必须进行此操作):
+
+ <pre>adb -d forward tcp:5601 tcp:5601</pre>
+ </li>
+ <li>在手持式设备上启动 Android Wear 应用并连接到模拟器。</li>
+ <li>点击 Android Wear 应用右上角的菜单并选择
+<b>Demo Cards</b>。</li>
+ <li>您选择的卡片作为通知显示在模拟器主屏幕上。</li>
+</ol>
+</li>
+</ol>
+
+<h3 id="SetupDevice">设置 Android Wear 设备</h3>
+<p>若要设置 Android Wear 设备,请:</p>
+<ol>
+ <li>在手持式设备上安装 Android Wear 应用,可通过 Google Play 获取。</li>
+ <li>按照应用的说明将手持式设备与可穿戴式设备配对。
+ 这样,您可以测试同步的手持式设备通知(如果您正在构建这些通知)。</li>
+ <li>在您的手机上使 Android Wear 应用保持打开状态。</li>
+ <li>在 Android Wear 设备上启用 adb 调试。</li>
+ <ol>
+ <li>请转到 <strong>Settings > About</strong>。</li>
+ <li>连续点击 <strong>Build number</strong> 七次。</li>
+ <li>向右滑动返回“Settings”菜单。</li>
+ <li>转到屏幕底部的 <strong>Developer options</strong>。
+ </li>
+ <li>点击 <strong>ADB Debugging</strong> 以启用 adb。</li>
+ </ol>
+ <li>通过 USB 将可穿戴式设备连接到您的计算机,以便您可以在开发时将应用直接安装在可穿戴式设备上。
+可穿戴式设备应用和 Android Wear 应用上会显示一条消息,提示您允许调试。
+</li>
+
+ <p class="note"><strong>注</strong>:如果您无法通过 USB 将可穿戴式设备连接到计算机,您可以尝试<a href="{@docRoot}training/wearables/apps/bt-debugging.html">通过蓝牙连接</a>。
+
+
+ </p>
+
+ <li>在 Android Wear 应用上,选择 <strong>Always allow from this computer</strong> 并点击
+<strong>OK</strong>。</li>
+</ol>
+
+<p>Android Studio 上的 Android 工具窗口显示来自可穿戴式设备的系统日志。<i></i>
+运行 <code>adb devices</code> 命令也可列出可穿戴式设备。</p>
+
+<h2 id="CreateProject">创建项目</h2>
+
+<p>若要着手开发,请先创建包含可穿戴式设备和手持式设备应用模块的应用项目。
+在 Android Studio 中,点击 <b>File</b> >
+ <b>New Project</b>,并按照项目向导说明操作,如<a href="{@docRoot}sdk/installing/create-project.html">创建项目</a>中所述。
+
+按照向导进行操作时,请输入以下信息:</p>
+
+<ol>
+ <li>在 <b>Configure your Project</b> 窗口中,输入应用名称和软件包名称。
+</li>
+ <li>在 <b>Form Factors</b> 窗口中:
+ <ul>
+ <li>选择 <b>Phone and Tablet</b>,然后在 <b>Minimum SDK</b> 下选择 <b>API 9: Android 2.3 (Gingerbread)</b>。
+</li>
+ <li>选择 <b>Wear</b>,然后在 <b>Minimum SDK</b> 下选择 <b>API 20: Android 4.4 (KitKat Wear)</b>。
+</li>
+ </ul>
+ </li>
+ <li>在第一个 <b>Add an Activity</b> 窗口中,针对移动设备添加空白 Activity。</li>
+ <li>在第二个 <b>Add an Activity</b> 窗口中,针对穿戴设备添加空白 Activity。</li>
+</ol>
+ <p>向导完成时,Android Studio 将创建一个包含两个模块(<b>mobile</b>
+和 <b>wear</b>)的新项目。现在,您有一个可供手持式设备应用和可穿戴式设备应用使用的项目,您可以针对该项目创建 Activity、服务和自定义布局。
+手持式设备应用处理大多数繁重事务,如网络通信、密集型处理或需要大量用户交互的任务。
+
+当应用完成这些操作时,您的应用可通过通知或同步数据并将其发送到可穿戴式设备,将处理结果通知给可穿戴式设备。
+
+</p>
+
+ <p class="note"><b>注</b>:<b>wear</b> 模块还包含一个使用
+<a href="{@docRoot}reference/android/support/wearable/view/WatchViewStub.html"><code>WatchViewStub</code></a>的 "Hello World" Activity。
+
+ 该类可根据设备屏幕是圆形还是方形扩充布局。
+ <a href="{@docRoot}reference/android/support/wearable/view/WatchViewStub.html"><code>WatchViewStub</code></a>
+ 类是<a href="{@docRoot}training/wearables/apps/layouts.html#UiLibrary">可穿戴式设备支持库</a>提供的 UI 小工具之一。
+
+
+ </p>
+</li>
+
+<h2 id="Install">安装可穿戴式设备应用</h2>
+
+<p>开发时,与手持式设备应用相似,直接将应用安装到可穿戴式设备。使用 Android Studio 上的 <code>adb install</code> 或 <b>Play</b> 按钮。
+</p>
+
+<p>准备向用户发布应用时,将可穿戴式设备应用嵌入手持式设备应用的内部。
+用户从 Google Play 安装手持式设备应用时,已连接的可穿戴式设备会自动接收可穿戴式设备应用。
+</p>
+
+<p class="note"><b>注</b>:自动安装可穿戴式设备应用的功能仅支持发布密钥,如果您使用调试密钥签署应用,将无法自动安装。
+有关如何正确打包可穿戴式设备应用的完整信息,请参阅<a href="{@docRoot}training/wearables/apps/packaging.html">打包可穿戴式设备应用</a>
+
+。</p>
+
+<li>
+要将“Hello World”应用安装到可穿戴式设备,请从 <b>Run/Debug
+configuration</b> 下拉菜单中选择 <b>wear</b>,然后点击 <b>Play</b> 按钮。此时,该 Activity 将出现在可穿戴式设备上并显示“Hello world!”
+
+</li></ol>
+<h2 id="Libraries">包含正确的库</h2>
+
+<p>项目向导将在相应模块的 <code>build.gradle</code> 文件中为您导入正确的依赖项。不过,这些依赖项并不是必需的,因此,请阅读以下说明以了解您是否需要它们:
+
+
+</p>
+
+<b>通知</b>
+<p><a href="{@docRoot}tools/support-library/features.html#v4">Android
+v4 支持库</a>(或 v13,其包含 v4)包含的 API 可扩展手持式设备上的现有通知,使之支持可穿戴式设备。
+</p>
+
+<p>对于仅显示在可穿戴式设备上的通知(意味着这些通知由可穿戴式设备上运行的应用发出),您只需在可穿戴式设备上使用标准框架 API(API 级别 20),并在项目的 <b>mobile</b> 模块中移除支持库依赖项。
+
+
+
+</p>
+
+<b>Wearable Data Layer</b>
+<p>若要通过 Wearable Data Layer API 在可穿戴式设备和手持式设备之间同步和发送数据,您需要最新版本的
+<a href="{@docRoot}google/play-services/setup.html">Google Play 服务</a>。如果您不打算使用这些 API,则从这两个模块中移除依赖项。
+
+</p>
+
+<b>Wearable UI 支持库</b>
+<p>这是非官方库,其包含<a href="{@docRoot}training/wearables/apps/layouts.html#UiLibrary">专为可穿戴式设备设计的 UI 小工具</a>。
+
+我们建议您在应用中使用这些库,因为它们可作为最佳实践的范例,但仍可随时进行更改。
+不过,更新库时,您的应用不会中断,因为这些库已编译到您的应用中。
+要从更新的库中获取新功能,您只需静态链接新版本,然后相应更新您的应用。
+此库仅适用于创建可穿戴式设备应用。
+
+</p>
+
+<p>在后面的课程中,您将学习如何创建专为可穿戴式设备设计的布局,以及如何使用平台支持的各种语音操作。
+</p>
diff --git a/docs/html-intl/intl/zh-tw/index.jd b/docs/html-intl/intl/zh-tw/index.jd
index 493283b..a5772ef 100644
--- a/docs/html-intl/intl/zh-tw/index.jd
+++ b/docs/html-intl/intl/zh-tw/index.jd
@@ -15,39 +15,37 @@
})
</script>
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
-
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="about/versions/marshmallow/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
<div class="wrap" style="max-width:1100px;margin-top:0">
- <div class="cols dac-hero-content">
- <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
- </div>
- <div class="col-8of16 col-pull-7of16">
- <div class="dac-hero-tag"></div>
-
- <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
- </div>
- <div class="col-6of16 col-push-1of16">
- <p class="dac-hero-description" style="color:white"><strong>The
- official Android 6.0 SDK is now available!</strong>
- Explore what's new — runtime permissions,
- Doze and App Standby power-saving features, new
- assist technology, and more.</p>
-
- <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
+ <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+ <a href="{@docRoot}preview/index.html">
+ <h1 class="dac-hero-title">Android N Developer Preview</h1>
+ <p class="dac-hero-description">
+ Get ready for the next version of Android!
+ <strong>Test your apps</strong> on Nexus and other devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+ </p>
+ <a class="dac-hero-cta" href="/preview/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
Learn more
- </a><br>
- </div>
- </div>
+ </a><!--<br>
+ <a class="dac-hero-cta" href="/preview/support.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Update to Developer Preview (final SDK)
+ </a><br>-->
+ </a>
+ </div>
+ <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+ <a href="{@docRoot}preview/index.html">
+ <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+ srcset="/images/home/n-preview-hero.png 1x,
+ /images/home/n-preview-hero_2x.png 2x">
+ </a>
</div>
</div>
-</a>
-</article></section>
+</section>
<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
<div class="wrap dac-offset-parent">
diff --git a/docs/html/about/_book.yaml b/docs/html/about/_book.yaml
new file mode 100644
index 0000000..207bcc0
--- /dev/null
+++ b/docs/html/about/_book.yaml
@@ -0,0 +1,49 @@
+toc:
+- title: Marshmallow
+ path: /about/versions/marshmallow/index.html
+ section:
+ - title: Android 6.0 APIs
+ path: /about/versions/marshmallow/android-6.0.html
+ - title: Android 6.0 Changes
+ path: /about/versions/marshmallow/android-6.0-changes.html
+ - title: Android 6.0 Samples
+ path: /about/versions/marshmallow/samples.html
+
+- title: Lollipop
+ path: /about/versions/lollipop.html
+ section:
+ - title: Android 5.1 APIs
+ path: /about/versions/android-5.1.html
+ - title: Android 5.0 APIs
+ path: /about/versions/android-5.0.html
+ custom_link_attributes:
+ - es-lang: "API de Android 5.0"
+ - ja-lang: "Android 5.0 API"
+ - ko-lang: "Android 5.0 API"
+ - ru-lang: "API для Android 5.0"
+ - zh-cn-lang: "Android 5.0 API"
+ - zh-tw-lang: "Android 5.0 API"
+ - title: Android 5.0 Changes
+ path: /about/versions/android-5.0-changes.html
+
+- title: KitKat
+ path: /about/versions/kitkat.html
+ section:
+ - title: Android 4.4 APIs
+ path: /about/versions/android-4.4.html
+
+- title: Jelly Bean
+ path: /about/versions/jelly-bean.html
+ section:
+ - title: Android 4.3 APIs
+ path: /about/versions/android-4.3.html
+ - title: Android 4.2 APIs
+ path: /about/versions/android-4.2.html
+ - title: Android 4.1 APIs
+ path: /about/versions/android-4.1.html
+
+- title: About Android
+ path: /about/android.html
+
+- title: Dashboards
+ path: /about/dashboards/index.html
diff --git a/docs/html/about/versions/android-1.5.jd b/docs/html/about/versions/android-1.5.jd
index ca8771b..522f855 100644
--- a/docs/html/about/versions/android-1.5.jd
+++ b/docs/html/about/versions/android-1.5.jd
@@ -80,12 +80,12 @@
//$(".toggleme", toggleable).slideDown("fast");
toggleable.removeClass("closed");
toggleable.addClass("open");
- $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
+ $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/styles/disclosure_up.png"));
} else {
//$(".toggleme", toggleable).slideUp("fast");
toggleable.removeClass("open");
toggleable.addClass("closed");
- $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
+ $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/styles/disclosure_down.png"));
}
return false;
}
@@ -115,7 +115,7 @@
<div class="toggleable opened">
<a href="#" onclick="return toggleDiv(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-img" height="9px" width="9px" />
Android 1.5, Revision 4</a> <em>(May 2010)</em></a>
<div class="toggleme">
<dl>
@@ -138,7 +138,7 @@
<div class="toggleable closed">
<a href="#" onclick="return toggleDiv(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
Android 1.5, Revision 3</a> <em>(July 2009)</em></a>
<div class="toggleme">
<dl>
@@ -152,7 +152,7 @@
<div class="toggleable closed">
<a href="#" onclick="return toggleDiv(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
Android 1.5, Revision 2</a> <em>(May 2009)</em></a>
<div class="toggleme">
<p>Not available as an SDK component — please use Android 1.5, r3 instead. </p>
@@ -161,7 +161,7 @@
<div class="toggleable closed">
<a href="#" onclick="return toggleDiv(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
Android 1.5, Revision 1</a> <em>(April 2009)</em></a>
<div class="toggleme">
<p>Not available as an SDK component — please use Android 1.5, r3 instead. </p>
diff --git a/docs/html/about/versions/android-1.6.jd b/docs/html/about/versions/android-1.6.jd
index 97ada3c..dc30b49 100755
--- a/docs/html/about/versions/android-1.6.jd
+++ b/docs/html/about/versions/android-1.6.jd
@@ -82,12 +82,12 @@
//$(".toggleme", toggleable).slideDown("fast");
toggleable.removeClass("closed");
toggleable.addClass("open");
- $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
+ $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/styles/disclosure_up.png"));
} else {
//$(".toggleme", toggleable).slideUp("fast");
toggleable.removeClass("open");
toggleable.addClass("closed");
- $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
+ $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/styles/disclosure_down.png"));
}
return false;
}
@@ -117,7 +117,7 @@
<div class="toggleable opened">
<a href="#" onclick="return toggleDiv(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-img" height="9px" width="9px" />
Android 1.6, Revision 3</a> <em>(May 2010)</em></a>
<div class="toggleme">
<dl>
@@ -137,7 +137,7 @@
<div class="toggleable closed">
<a href="#" onclick="return toggleDiv(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
Android 1.6, Revision 2</a> <em>(December 2009)</em></a>
<div class="toggleme">
<dl>
@@ -180,7 +180,7 @@
<div class="toggleable closed">
<a href="#" onclick="return toggleDiv(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
Android 1.6, Revision 1</a> <em>(September 2009)</em></a>
<div class="toggleme">
<dl>
diff --git a/docs/html/about/versions/android-2.0.1.jd b/docs/html/about/versions/android-2.0.1.jd
index ba00231..2974152 100644
--- a/docs/html/about/versions/android-2.0.1.jd
+++ b/docs/html/about/versions/android-2.0.1.jd
@@ -82,12 +82,12 @@
//$(".toggleme", toggleable).slideDown("fast");
toggleable.removeClass("closed");
toggleable.addClass("open");
- $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
+ $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/styles/disclosure_up.png"));
} else {
//$(".toggleme", toggleable).slideUp("fast");
toggleable.removeClass("open");
toggleable.addClass("closed");
- $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
+ $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/styles/disclosure_down.png"));
}
return false;
}
@@ -113,7 +113,7 @@
<div class="toggleable closed">
<a href="#" onclick="return toggleDiv(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-img" height="9px" width="9px" />
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-img" height="9px" width="9px" />
Android 2.0.1, Revision 1</a> <em>(December 2009)</em></a>
<div class="toggleme">
<dl>
diff --git a/docs/html/about/versions/android-2.0.jd b/docs/html/about/versions/android-2.0.jd
index 82bb78f..5c0d3dc 100644
--- a/docs/html/about/versions/android-2.0.jd
+++ b/docs/html/about/versions/android-2.0.jd
@@ -75,12 +75,12 @@
//$(".toggleme", toggleable).slideDown("fast");
toggleable.removeClass("closed");
toggleable.addClass("open");
- $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/triangle-opened.png"));
+ $(".toggle-img", toggleable).attr("title", "hide").attr("src", (toRoot + "assets/images/styles/disclosure_up.png"));
} else {
//$(".toggleme", toggleable).slideUp("fast");
toggleable.removeClass("open");
toggleable.addClass("closed");
- $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/triangle-closed.png"));
+ $(".toggle-img", toggleable).attr("title", "show").attr("src", (toRoot + "assets/images/styles/disclosure_down.png"));
}
return false;
}
@@ -106,7 +106,7 @@
<div class="toggleable opened">
<a href="#" onclick="return toggleDiv(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-img" height="9px" width="9px" />
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-img" height="9px" width="9px" />
Android 2.0, Revision 1</a> <em>(October 2009)</em></a>
<div class="toggleme">
<dl>
diff --git a/docs/html/about/versions/android-2.1.jd b/docs/html/about/versions/android-2.1.jd
index 2d5988a..02dec7e 100644
--- a/docs/html/about/versions/android-2.1.jd
+++ b/docs/html/about/versions/android-2.1.jd
@@ -78,7 +78,7 @@
<div class="toggle-content opened" style="padding-left:1em;">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png"
class="toggle-content-img" alt="" />
Android {@sdkPlatformVersion}, Revision 3</a> <em>(July 2011)</em>
</a></p>
@@ -106,7 +106,7 @@
<div class="toggle-content closed" style="padding-left:1em;">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />
Android {@sdkPlatformVersion}, Revision 2</a> <em>(May 2010)</em>
</a></p>
@@ -133,7 +133,7 @@
<div class="toggle-content closed" style="padding-left:1em;">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />
Android {@sdkPlatformVersion}, Revision 1</a> <em>(January 2010)</em>
</a></p>
diff --git a/docs/html/about/versions/android-4.0.3.jd b/docs/html/about/versions/android-4.0.3.jd
index f9627a3..073e0d7 100644
--- a/docs/html/about/versions/android-4.0.3.jd
+++ b/docs/html/about/versions/android-4.0.3.jd
@@ -45,7 +45,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" /><strong>Table of Contents</strong>
</a></p>
diff --git a/docs/html/about/versions/android-4.0.jd b/docs/html/about/versions/android-4.0.jd
index cc1d1c7..92e611e 100644
--- a/docs/html/about/versions/android-4.0.jd
+++ b/docs/html/about/versions/android-4.0.jd
@@ -49,7 +49,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />
<strong>Table of Contents</strong>
</a></p>
diff --git a/docs/html/design/_book.yaml b/docs/html/design/_book.yaml
new file mode 100644
index 0000000..0bfc2d2
--- /dev/null
+++ b/docs/html/design/_book.yaml
@@ -0,0 +1,111 @@
+toc:
+- title: Creative Vision
+ path: /design/get-started/creative-vision.html
+ section:
+ - title: Design Principles
+ path: /design/get-started/principles.html
+ custom_link_attributes:
+ - es-lang: "Principios de diseño para Android"
+ - ja-lang: "Android デザイン指針"
+ - ko-lang: "Android 디자인 원칙"
+ - pt-br-lang: "Princípios de projeto para Android"
+ - ru-lang: "Принципы проектирования Android"
+ - zh-cn-lang: "Android 设计原则"
+ - zh-tw-lang: "Android 設計原則"
+ - title: New in Android
+ path: /design/patterns/new.html
+
+- title: Material for Android
+ path: /design/material/index.html
+ custom_link_attributes:
+ - ja-lang: "マテリアル デザイン"
+ - ko-lang: "머티어리얼 디자인"
+ - zh-cn-lang: "材料设计"
+ - zh-tw-lang: "材料設計"
+
+- title: Devices
+ path: /design/devices.html
+ section:
+ - title: Phones & Tablets
+ path: /design/handhelds/index.html
+ - title: Wear
+ path: /design/wear/index.html
+ section:
+ - title: Creative Vision
+ path: /design/wear/creative-vision.html
+ - title: Design Principles
+ path: /design/wear/principles.html
+ - title: App Structure
+ path: /design/wear/structure.html
+ - title: Context Awareness
+ path: /design/wear/context.html
+ - title: UI Patterns
+ path: /design/wear/patterns.html
+ - title: Style
+ path: /design/wear/style.html
+ - title: Watch Faces
+ path: /design/wear/watchfaces.html
+ - title: TV
+ path: /design/tv/index.html
+ section:
+ - title: Creative Vision
+ path: /design/tv/principles.html
+ - title: UI Patterns
+ path: /design/tv/patterns.html
+ - title: Style
+ path: /design/tv/style.html
+ - title: Auto
+ path: /design/auto/index.html
+
+- title: Pure Android
+ path: /design/patterns/index.html
+ section:
+ - title: Devices and Displays
+ path: /design/style/devices-displays.html
+ - title: Navigation
+ path: /design/patterns/navigation.html
+ custom_link_attributes:
+ - es-lang: "Navegación con los botones Back y Up"
+ - ja-lang: "Back と Up を使用したナビゲーション"
+ - ko-lang: "뒤로 및 위로 탐색 기능이 포함된 탐색"
+ - pt-br-lang: "Navegação com Voltar e Para cima"
+ - ru-lang: "Навигация с помощью кнопок \"Назад\" и \"Вверх\""
+ - zh-cn-lang: "使用返回和向上导航"
+ - zh-tw-lang: "使用 [返回] 及 [上一層] 導覽"
+ - title: Notifications
+ path: /design/patterns/notifications.html
+ custom_link_attributes:
+ - es-lang: "Notificaciones"
+ - ja-lang: "通知"
+ - ko-lang: "알림"
+ - pt-br-lang: "Notificações"
+ - ru-lang: "Уведомления"
+ - zh-cn-lang: "通知"
+ - zh-tw-lang: "通知"
+ - title: Widgets
+ path: /design/patterns/widgets.html
+ - title: Swipe Views
+ path: /design/patterns/swipe-views.html
+ - title: Full Screen
+ path: /design/patterns/fullscreen.html
+ - title: Confirming & Acknowledging
+ path: /design/patterns/confirming-acknowledging.html
+ custom_link_attributes:
+ - es-lang: "Confirmación y reconocimiento"
+ - ja-lang: "確認と通知"
+ - ko-lang: "확인 및 승인하기"
+ - pt-br-lang: "Confirmação e reconhecimento"
+ - ru-lang: "Подтверждение и уведомление"
+ - zh-cn-lang: "确认和确知"
+ - zh-tw-lang: "確認及確認完成"
+ - title: Pure Android
+ path: /design/patterns/pure-android.html
+ - title: Compatibility
+ path: /design/patterns/compatibility.html
+ - title: Accessibility
+ path: /design/patterns/accessibility.html
+ - title: Help
+ path: /design/patterns/help.html
+
+- title: Downloads
+ path: /design/downloads/index.html
diff --git a/docs/html/design/downloads/index.jd b/docs/html/design/downloads/index.jd
index e37b305..788c7c1 100644
--- a/docs/html/design/downloads/index.jd
+++ b/docs/html/design/downloads/index.jd
@@ -31,10 +31,10 @@
</div>
<div class="col-4">
<a class="download-button" onClick="ga('send', 'event', 'Design', 'Download', 'Wear Toolkit AI');"
- href="{@docRoot}downloads/design/Android_Wear_Toolkit_20140722.ai">Adobe® Illustrator® Toolkit</a>
+ href="{@docRoot}downloads/design/Android_Wear_Toolkit_371.ai">Adobe® Illustrator® Toolkit</a>
<a class="download-button" onClick="ga('send', 'event', 'Design', 'Download', 'Wear Toolkit PDF');"
- href="{@docRoot}downloads/design/Android_Wear_Toolkit_20140722.pdf">PDF Toolkit</a>
+ href="{@docRoot}downloads/design/Android_Wear_Toolkit_371.pdf">PDF Toolkit</a>
</div>
</div>
@@ -108,7 +108,7 @@
<div class="col-4">
<img src="{@docRoot}design/media/downloads_wear_Slide_Ai_Icon.png" width="150"
- style="width:150px;margin:0 auto;display:block">
+ style="width:150px;margin:0 auto 15px;display:block">
</div>
<div class="col-4">
@@ -128,7 +128,7 @@
<div class="col-4">
<img src="{@docRoot}design/media/downloads_wear_Slide_Psd_Icon.png" width="150"
- style="width:150px;margin:0 auto;display:block">
+ style="width:150px;margin:0 auto 15px;display:block">
</div>
<div class="col-4">
@@ -148,11 +148,35 @@
<div class="col-4">
<img src="{@docRoot}design/media/downloads_wear_Slide_IconExample.png" width="150"
- style="width:150px;margin:0 auto;display:block">
+ style="width:150px;margin:0 auto 20px;display:block">
</div>
<div class="col-4">
<a class="download-button" onClick="ga('send', 'event', 'Design', 'Download', 'Wear Watch Face Example Specifications');"
href="{@docRoot}downloads/design/Slide_IconExample.psd">Adobe® Photoshop® Icon</a>
</div>
+</div>
+
+<div class="cols">
+ <div class="col-5">
+ <h4>Hardware technical drawings</h4>
+<p>Technical drawings and specifications for the latest Android Wear devices.
+</p>
+
+ </div>
+ <div class="col-4">
+
+ <img src="{@docRoot}design/media/nemo_preview.png" width="150"
+ style="width:150px;margin:0 auto;display:block">
+
+ </div>
+ <div class="col-4">
+ <a class="download-button" onClick="ga('send', 'event', 'Design', 'Download', 'Hardware Technical Drawings');"
+ href="{@docRoot}downloads/design/AndroidWear_AllGear_TechDrawings&Spec_20151101_square.png">
+PNG Toolkit (Square)</a>
+
+ <a class="download-button" onClick="ga('send', 'event', 'Design', 'Download', 'Hardware Technical Drawings');"
+ href="{@docRoot}downloads/design/AndroidWear_AllGear_TechDrawings&Spec_20151101_round.png">
+PNG Toolkit (Round)</a>
+ </div>
</div>
\ No newline at end of file
diff --git a/docs/html/design/media/nemo_preview.png b/docs/html/design/media/nemo_preview.png
new file mode 100644
index 0000000..757b87a
--- /dev/null
+++ b/docs/html/design/media/nemo_preview.png
Binary files differ
diff --git a/docs/html/design/patterns/pure-android.jd b/docs/html/design/patterns/pure-android.jd
index e617711..6446e39 100644
--- a/docs/html/design/patterns/pure-android.jd
+++ b/docs/html/design/patterns/pure-android.jd
@@ -65,28 +65,6 @@
<div class="vspace size-2"> </div>
-<div class="cols">
- <div class="col-5">
-
-<h4>Don't use bottom tab bars</h4>
-<p>Other platforms use the bottom tab bar to switch between the app's views. Per platform convention,
-Android's tabs for view control are shown in action bars at the top of the screen instead. In
-addition, Android apps may use a bottom bar to display actions on a split action bar.</p>
-<p>You should follow this guideline to create a consistent experience with other apps on the Android
-platform and to avoid confusion between actions and view switching on Android.</p>
-<p>For more information on how to properly use action bars for view control, see
-<a href="{@docRoot}design/patterns/actionbar.html">Action Bars</a>.</p>
-
- </div>
- <div class="col-8">
-
- <img src="{@docRoot}design/media/migrating_ios_dialers.png">
- <div class="figure-caption">
- Android dialer with tabs in an action bar vs. bottom tabs in iOS.
- </div>
-
- </div>
-</div>
<div class="cols">
<div class="col-5">
diff --git a/docs/html/develop/index.jd b/docs/html/develop/index.jd
index 3b29318..460d056 100644
--- a/docs/html/develop/index.jd
+++ b/docs/html/develop/index.jd
@@ -63,7 +63,6 @@
<h2 class="norule">Latest</h2>
<div class="resource-widget resource-flow-layout col-16"
data-query="type:youtube+tag:develop+tag:featured, type:blog+tag:develop+tag:featured"
- data-query="collection:develop/landing/latest"
data-sortOrder="-timestamp"
data-cardSizes="6x6"
data-items-per-page="6"
diff --git a/docs/html/distribute/analyze/_book.yaml b/docs/html/distribute/analyze/_book.yaml
new file mode 100644
index 0000000..1e24cb9
--- /dev/null
+++ b/docs/html/distribute/analyze/_book.yaml
@@ -0,0 +1,18 @@
+toc:
+- title: Get Started with Analytics
+ path: /distribute/analyze/start.html
+
+- title: Measure What Matters
+ path: /distribute/analyze/measure.html
+
+- title: Understand User Value
+ path: /distribute/analyze/understand-user-value.html
+
+- title: Improve Marketing ROI
+ path: /distribute/analyze/improve-roi.html
+
+- title: Build Better Apps
+ path: /distribute/analyze/build-better-apps.html
+
+- title: Act Across Google Services
+ path: /distribute/analyze/google-services.html
diff --git a/docs/html/distribute/engage/_book.yaml b/docs/html/distribute/engage/_book.yaml
new file mode 100644
index 0000000..ef86a2a
--- /dev/null
+++ b/docs/html/distribute/engage/_book.yaml
@@ -0,0 +1,30 @@
+toc:
+- title: Increase Usage through Intents
+ path: /distribute/engage/intents.html
+
+- title: Build Useful Widgets
+ path: /distribute/engage/widgets.html
+
+- title: Use Rich Notifications
+ path: /distribute/engage/notifications.html
+
+- title: Drive Usage with Search
+ path: /distribute/engage/deep-linking.html
+
+- title: Drive Engagement with Ads
+ path: /distribute/engage/ads.html
+
+- title: Encourage Competition
+ path: /distribute/engage/game-services.html
+
+- title: Understand User Behavior
+ path: /distribute/engage/analytics.html
+
+- title: Add Google Sign-in
+ path: /distribute/engage/easy-signin.html
+
+- title: Integrate GCM
+ path: /distribute/engage/gcm.html
+
+- title: Get Feedback with Beta Tests
+ path: /distribute/engage/beta.html
diff --git a/docs/html/distribute/essentials/_book.yaml b/docs/html/distribute/essentials/_book.yaml
new file mode 100644
index 0000000..a953074
--- /dev/null
+++ b/docs/html/distribute/essentials/_book.yaml
@@ -0,0 +1,50 @@
+toc:
+- title: Core App Quality
+ path: /distribute/essentials/quality/core.html
+ custom_link_attributes:
+ - zh-cn-lang: "应用的核心质量"
+
+- title: Tablet App Quality
+ path: /distribute/essentials/quality/tablets.html
+ custom_link_attributes:
+ - zh-cn-lang: "平板电脑应用的质量"
+
+- title: Wear App Quality
+ path: /distribute/essentials/quality/wear.html
+
+- title: TV App Quality
+ path: /distribute/essentials/quality/tv.html
+
+- title: Auto App Quality
+ path: /distribute/essentials/quality/auto.html
+
+- title: Launch Checklist
+ path: /distribute/tools/launch-checklist.html
+ custom_link_attributes:
+ - zh-cn-lang: "发布检查清单"
+
+- title: Localization Checklist
+ path: /distribute/tools/localization-checklist.html
+ custom_link_attributes:
+ - zh-cn-lang: "本地化检查清单"
+
+- title: Brand Guidelines
+ path: /distribute/tools/promote/brand.html
+ custom_link_attributes:
+ - zh-cn-lang: "品牌指南"
+
+- title: Device Art Generator
+ path: /distribute/tools/promote/device-art.html
+
+- title: Google Play Badges
+ path: https://play.google.com/intl/en_us/badges/
+ custom_link_attributes:
+ - zh-cn-lang: "Google Play 徽章生成器"
+
+- title: Linking to Your Products
+ path: /distribute/tools/promote/linking.html
+ custom_link_attributes:
+ - zh-cn-lang: "链接到您的商品"
+
+- title: Alternative Distribution
+ path: /distribute/tools/open-distribution.html
diff --git a/docs/html/distribute/googleplay/_book.yaml b/docs/html/distribute/googleplay/_book.yaml
new file mode 100644
index 0000000..63c9008
--- /dev/null
+++ b/docs/html/distribute/googleplay/_book.yaml
@@ -0,0 +1,100 @@
+toc:
+- title: The Google Play Opportunity
+ path: /distribute/googleplay/about.html
+ custom_link_attributes:
+ - es-lang: "La oportunidad de Google Play"
+ - ja-lang: "Google Play の可能性"
+ - ko-lang: "Google Play 활용 기회"
+ - pt-br-lang: "A oportunidade do Google Play"
+ - ru-lang: "Возможности Google Play"
+ - zh-cn-lang: "Google Play 蕴藏的机会"
+ - zh-tw-lang: "Google Play商機"
+
+- title: Get Started with Publishing
+ path: /distribute/googleplay/start.html
+ custom_link_attributes:
+ - es-lang: "Comienza a publicar"
+ - ja-lang: "アプリを公開する"
+ - ko-lang: "게시 시작하기"
+ - pt-br-lang: "Introdução à publicação"
+ - ru-lang: "Первые шаги в публикациях"
+ - zh-cn-lang: "开始发布"
+ - zh-tw-lang: "開始發行"
+
+- title: Developer Console
+ path: /distribute/googleplay/developer-console.html
+ custom_link_attributes:
+ - es-lang: "Consola para desarrolladores"
+ - ja-lang: "デベロッパー コンソール"
+ - ko-lang: "개발자 콘솔"
+ - pt-br-lang: "Console do Desenvolvedor"
+ - ru-lang: "Консоль разработчика"
+ - zh-cn-lang: "开发者控制台"
+
+- title: Distribute to Android Wear
+ path: /distribute/googleplay/wear.html
+ custom_link_attributes:
+ - es-lang: "Distribución para Android Wear"
+ - ja-lang: "Android Wear への配布"
+ - ko-lang: "Android Wear에 배포"
+ - pt-br-lang: "Distribuindo para Android Wear"
+ - ru-lang: "Распространение приложений Android Wear"
+ - zh-cn-lang: "分发到 Android Wear"
+ - zh-tw-lang: "散佈至 Android Wear"
+
+- title: Distribute to Android TV
+ path: /distribute/googleplay/tv.html
+ custom_link_attributes:
+ - es-lang: "Distribución para Android TV"
+ - ja-lang: "Android TV への配布"
+ - ko-lang: "Android TV에 배포"
+ - pt-br-lang: "Distribuindo para Android TV"
+ - ru-lang: "Распространение приложений в Android TV"
+ - zh-cn-lang: "分发到 Android TV"
+ - zh-tw-lang: "散佈至 Android 電視"
+
+- title: Distribute to Android Auto
+ path: /distribute/googleplay/auto.html
+ custom_link_attributes:
+ - es-lang: "Distribución para Android Auto"
+ - ja-lang: "Android Auto への配布"
+ - ko-lang: "Android Auto에 배포"
+ - pt-br-lang: "Distribuindo para o Android Auto"
+ - ru-lang: "Распространение приложений для Android Auto"
+ - zh-cn-lang: "分发到 Android Auto"
+ - zh-tw-lang: "散佈至 Android Auto"
+
+- title: Designed for Families
+ path: /distribute/googleplay/families/about.html
+ custom_link_attributes:
+ - es-lang: "Diseñado para la familia"
+ - ru-lang: "Для всей семьи"
+ - zh-cn-lang: "为家庭设计"
+
+- title: Google Play for Work
+ path: /distribute/googleplay/work/about.html
+
+- title: Google Play for Education
+ path: /distribute/googleplay/edu/about.html
+ section:
+ - title: Publish Apps
+ path: /distribute/googleplay/edu/start.html
+ - title: Video Resources
+ path: /distribute/googleplay/edu/videos.html
+
+- title: Stream Your Content with Cast
+ path: /distribute/googleplay/cast.html
+
+- title: Build VR with Cardboard
+ path: /distribute/googleplay/cardboard.html
+
+- title: Find Success on Google Play
+ path: /distribute/googleplay/guide.html
+ custom_link_attributes:
+ - es-lang: "Cómo tener éxito en Google Play"
+ - ja-lang: "Google Play で成功を手にする"
+ - ko-lang: "Google Play에서 성공 모색"
+ - pt-br-lang: "Obtendo sucesso no Google Play"
+ - ru-lang: "Найдите свой путь к успеху в Google Play"
+ - zh-cn-lang: "在 Google Play 上取得成功"
+ - zh-tw-lang: "在 Google Play 上尋找成功"
diff --git a/docs/html/distribute/monetize/_book.yaml b/docs/html/distribute/monetize/_book.yaml
new file mode 100644
index 0000000..2ebc695
--- /dev/null
+++ b/docs/html/distribute/monetize/_book.yaml
@@ -0,0 +1,18 @@
+toc:
+- title: Premium
+ path: /distribute/monetize/premium.html
+
+- title: Freemium
+ path: /distribute/monetize/freemium.html
+
+- title: Subscriptions
+ path: /distribute/monetize/subscriptions.html
+
+- title: AdMob Ads
+ path: /distribute/monetize/ads.html
+
+- title: E-commerce
+ path: /distribute/monetize/ecommerce.html
+
+- title: Purchasing
+ path: /distribute/monetize/payments.html
diff --git a/docs/html/distribute/stories/_book.yaml b/docs/html/distribute/stories/_book.yaml
new file mode 100644
index 0000000..ef245d3
--- /dev/null
+++ b/docs/html/distribute/stories/_book.yaml
@@ -0,0 +1,12 @@
+toc:
+- title: Videos
+ path: /distribute/stories/index.html
+
+- title: Going Global
+ path: /distribute/stories/localization.html
+
+- title: Games
+ path: /distribute/stories/games.html
+
+- title: Tablets
+ path: /distribute/stories/tablets.html
diff --git a/docs/html/distribute/stories/games.jd b/docs/html/distribute/stories/games.jd
index 4c1b662..fe059eb 100644
--- a/docs/html/distribute/stories/games.jd
+++ b/docs/html/distribute/stories/games.jd
@@ -32,3 +32,4 @@
data-items-per-page="15"
data-initial-results="6"></div>
</div></section>
+
diff --git a/docs/html/distribute/stories/rvappstudios-zombie.jd b/docs/html/distribute/stories/games/rvappstudios-zombie.jd
similarity index 97%
rename from docs/html/distribute/stories/rvappstudios-zombie.jd
rename to docs/html/distribute/stories/games/rvappstudios-zombie.jd
index 8638a90..134bac4 100644
--- a/docs/html/distribute/stories/rvappstudios-zombie.jd
+++ b/docs/html/distribute/stories/games/rvappstudios-zombie.jd
@@ -1,6 +1,6 @@
page.title=Localization improves Zombie Ragdoll engagement at launch
page.metaDescription=Zombie Ragdoll is a physics based zombie shooting game launched by RV AppStudios in August 2013. Having attended Google I/O talks, the team at RV AppStudios was inspired to go global with Zombie Ragdoll at launch.
-page.tags="stories", "Google Play"
+page.tags="developerstory", "games", "googleplay"
page.image=images/cards/distribute/stories/rvappstudios-zombie.jpg
page.timestamp=1454440882
diff --git a/docs/html/distribute/tools/_book.yaml b/docs/html/distribute/tools/_book.yaml
new file mode 100644
index 0000000..a55250a
--- /dev/null
+++ b/docs/html/distribute/tools/_book.yaml
@@ -0,0 +1,31 @@
+toc:
+- title: Launch Checklist
+ path: /distribute/tools/launch-checklist.html
+ custom_link_attributes:
+ - zh-cn-lang: "发布检查清单"
+
+- title: Localization Checklist
+ path: /distribute/tools/localization-checklist.html
+ custom_link_attributes:
+ - zh-cn-lang: "本地化检查清单"
+
+- title: Device Art Generator
+ path: /distribute/tools/promote/device-art.html
+
+- title: Google Play Badges
+ path: /distribute/tools/promote/badges.html
+ custom_link_attributes:
+ - zh-cn-lang: "Google Play 徽章生成器"
+
+- title: Linking to Your Products
+ path: /distribute/tools/promote/linking.html
+ custom_link_attributes:
+ - zh-cn-lang: "链接到您的商品"
+
+- title: Brand Guidelines
+ path: /distribute/tools/promote/brand.html
+ custom_link_attributes:
+ - zh-cn-lang: "品牌指南"
+
+- title: Alternative Distribution
+ path: /distribute/tools/open-distribution.html
diff --git a/docs/html/distribute/tools/localization-checklist.jd b/docs/html/distribute/tools/localization-checklist.jd
index e640243..1497c36 100644
--- a/docs/html/distribute/tools/localization-checklist.jd
+++ b/docs/html/distribute/tools/localization-checklist.jd
@@ -549,12 +549,6 @@
<img src="{@docRoot}images/gp-localization-trans-0.png" class="border-img">
</div>
-<h3 class="rel-resources clearfloat">Related resources</h3>
-
-<div class="resource-widget resource-flow-layout col-13" data-query=
-"collection:distribute/toolsreference/localizationchecklist/translatestrings"
-data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
-</div>
<div class="headerLine">
<h2 id="test">
diff --git a/docs/html/distribute/users/_book.yaml b/docs/html/distribute/users/_book.yaml
new file mode 100644
index 0000000..0febb02
--- /dev/null
+++ b/docs/html/distribute/users/_book.yaml
@@ -0,0 +1,33 @@
+toc:
+- title: Create a Great Listing
+ path: /distribute/users/your-listing.html
+
+- title: Promote with Ads
+ path: /distribute/users/promote-with-ads.html
+
+- title: Drive Installs from Search
+ path: /distribute/users/appindexing.html
+
+- title: Expand to New Markets
+ path: /distribute/users/expand-to-new-markets.html
+
+- title: Offer Over-the-air Installs
+ path: /distribute/users/ota-installs.html
+
+- title: Smarter App Invites
+ path: /distribute/users/app-invites.html
+
+- title: Drive installs from YouTube
+ path: /distribute/users/youtube.html
+
+- title: Cross-Sell with House Ads
+ path: /distribute/users/house-ads.html
+
+- title: Increase installs with Store Listing Experiments
+ path: /distribute/users/experiments.html
+
+- title: Add an App Install Banner On Your Mobile Website
+ path: /distribute/users/banners.html
+
+- title: Understand Where Your Users Come From
+ path: /distribute/users/user-acquisition.html
diff --git a/docs/html/distribute/users/promote-with-ads.jd b/docs/html/distribute/users/promote-with-ads.jd
index f0e3256..2db4ca3 100644
--- a/docs/html/distribute/users/promote-with-ads.jd
+++ b/docs/html/distribute/users/promote-with-ads.jd
@@ -29,10 +29,8 @@
</h3>
<img src="/images/distribute/promote_ads_play.png">
<p class="figure-caption">
- Search ads on Google Play are still undergoing testing and not yet
- available to buy. <a href=
- "http://android-developers.blogspot.com/2015/02/a-new-way-to-promote-your-app-on-google.html">
- Find out more</a>.
+ Promote your app on Google Play when users are searching and browsing
+ for apps.
</p>
</div>
diff --git a/docs/html/google/_book.yaml b/docs/html/google/_book.yaml
new file mode 100644
index 0000000..7c8e272
--- /dev/null
+++ b/docs/html/google/_book.yaml
@@ -0,0 +1,75 @@
+toc:
+- title: Google Play In-app Billing
+ path: /google/play/billing/index.html
+ custom_link_attributes:
+ - zh-cn-lang: "应用内结算"
+ section:
+ - title: Overview
+ path: /google/play/billing/billing_overview.html
+ custom_link_attributes:
+ - zh-cn-lang: "应用内结算概述"
+ - title: Version 3 API
+ path: /google/play/billing/api.html
+ custom_link_attributes:
+ - zh-cn-lang: "应用内结算 API"
+ section:
+ - title: Implementing the API
+ path: /google/play/billing/billing_integrate.html
+ - title: Reference
+ path: /google/play/billing/billing_reference.html
+ - title: Subscriptions
+ path: /google/play/billing/billing_subscriptions.html
+ - title: Promotions
+ path: /google/play/billing/billing_promotions.html
+ - title: Security and Design
+ path: /google/play/billing/billing_best_practices.html
+ custom_link_attributes:
+ - zh-cn-lang: "安全性和设计"
+ - title: Testing In-app Billing
+ path: /google/play/billing/billing_testing.html
+ custom_link_attributes:
+ - zh-cn-lang: "测试应用内结算"
+ - title: Administering In-app Billing
+ path: /google/play/billing/billing_admin.html
+ custom_link_attributes:
+ - zh-cn-lang: "管理应用内结算"
+ - title: Version Notes
+ path: /google/play/billing/versions.html
+
+- title: Filters on Google Play
+ path: /google/play/filters.html
+ custom_link_attributes:
+ - es-lang: "Filtros en Google Play"
+ - ja-lang: "Google Play 上のフィルタ"
+ - ko-lang: "Google Play 필터"
+ - pt-br-lang: "Filtros no Google Play"
+ - ru-lang: "Фильтры в Google Play"
+ - zh-cn-lang: "Google Play 上的筛选器"
+ - zh-tw-lang: "Google Play 上的篩選器"
+
+- title: Google Play Developer API
+ path: /google/play/developer-api.html
+
+- title: Multiple APK Support
+ path: /google/play/publishing/multiple-apks.html
+
+- title: APK Expansion Files
+ path: /google/play/expansion-files.html
+
+- title: Application Licensing
+ path: /google/play/licensing/index.html
+ section:
+ - title: Licensing Overview
+ path: /google/play/licensing/overview.html
+ - title: Setting Up for Licensing
+ path: /google/play/licensing/setting-up.html
+ - title: Adding Licensing to Your App
+ path: /google/play/licensing/adding-licensing.html
+ - title: Licensing Reference
+ path: /google/play/licensing/licensing-reference.html
+
+- title: Android Backup Service
+ path: /google/backup/index.html
+ section:
+ - title: Register
+ path: /google/backup/signup.html
diff --git a/docs/html/google/google_toc.cs b/docs/html/google/google_toc.cs
index 8151b10..e5d8c13 100644
--- a/docs/html/google/google_toc.cs
+++ b/docs/html/google/google_toc.cs
@@ -57,6 +57,11 @@
<span class="en">Google Play Developer API</span></a>
</div>
</li>
+ <li class="nav-section">
+ <div class="nav-section-header empty"><a href="<?cs var:toroot?>google/play-services/id.html">
+ <span class="en">Advertising ID</span></a>
+ </div>
+ </li>
<li class="nav-section">
<div class="nav-section-header empty"><a href="<?cs var:toroot ?>google/play/publishing/multiple-apks.html">
<span class="en">Multiple APK Support</span></a>
diff --git a/docs/html/google/play-services/id.jd b/docs/html/google/play-services/id.jd
new file mode 100644
index 0000000..f95ebef
--- /dev/null
+++ b/docs/html/google/play-services/id.jd
@@ -0,0 +1,193 @@
+page.title=Advertising ID
+page.tags=Ads,Advertising ID,ID
+
+@jd:body
+<div class="landing-banner">
+
+<div class="col-8">
+<p itemprop="description">
+ The advertising ID is a user-specific, unique, resettable ID for advertising,
+ provided by Google Play services. It gives users better controls and provides
+ developers with a simple, standard system to continue to monetize your apps.
+ It is an anonymous identifier for advertising purposes and enables users to
+ reset their identifier or opt out of interest-based ads within Google Play
+ apps.
+</p>
+<p>
+ The advertising ID is accessible through a straightforward API that you can
+ implement in your apps. For details, take a look at the <a href=
+ "#get_started">overview</a> and the <a href=
+ "https://developers.google.com/android/reference/com/google/android/gms/ads/identifier/package-summary">
+ advertising ID API reference</a>.
+</p>
+</div>
+</div>
+<div class="landing-docs">
+ <div class="col-6 normal-links">
+ <h3 style="clear:left">Key Developer Features</h3>
+ <h4>Standard, simple ID</h4>
+ <p>The advertising ID is a part of a standard, simple system for serving ads and performing analytics.</p>
+ <h4>Giving users control</h4>
+ <p>Users can reset their advertising ID or opt out of interest-based ads at any time, right from the Google Settings app.
+ Their preferences apply across all ad companies that use the advertising ID.</p>
+
+ </div>
+ <div class="col-6 normal-links">
+ <h3 style="clear:left">Getting Started</h3>
+ <h4>1. Get the Google Play services SDK</h4>
+ <p>The advertising ID APIs are part of the Google Play services platform.</p>
+ <p>To get started, <a href="https://developers.google.com/android/guides/setup">set up
+ the Google Play services SDK</a>. </p>
+ <h4>2. Read the docs and example code</h4>
+ <p>Once you've installed the Google Play services package, review the <a href="#get_started">overview</a>
+ below, as well as the <a href="#example">example</a>.</p>
+ <p>
+ For detailed documentation, take a look at the <a href=
+ "https://developers.google.com/android/reference/com/google/android/gms/ads/identifier/package-summary">
+ advertising ID API reference documentation</a>.
+ </p>
+ </div>
+</div>
+<p class="caution" style=
+"background-color:#fffdeb;width:100%;margin-bottom:1em;padding:.5em;">
+ As a reminder, please note that starting <strong>1 August 2014</strong>, new
+ apps and app updates distributed through Google Play must use the advertising
+ ID in lieu of any other persistent identifiers for any advertising purposes,
+ on devices that support the advertising ID.<br>
+ <br>
+ To learn how to check your app's compliance through the Developer Console, or
+ for details on the associated developer policy changes, please see the
+ <a href=
+ "https://support.google.com/googleplay/android-developer/answer/6048248">Advertising
+ ID topic</a> in the Google Play developer help center.
+</p>
+<h2 id="get_started">Using the Advertising ID</h2>
+<p>
+ The <strong>advertising ID</strong> is a unique but
+ user-resettable string identifier that lets ad networks and other apps anonymously
+ identify a user. The user's advertising ID is made available to apps through APIs
+ provided in Google Play services.
+</p>
+<p>
+ Users can reset their advertising ID at any time, right from the Ads section of the
+ Google Settings app on their devices. From the same app, users can also
+ opt-out of targeted advertising based on the advertising ID by setting the appropriate
+ <strong style="white-space:nowrap">ad tracking preference</strong>. When the
+ user opts-out of targeted ads, this ad tracking preference is made available
+ to apps through a Google Play services API.
+</p>
+<p>
+ Apps making use of the advertising ID <strong>must check for and respect</strong> the
+ user's ad tracking preference. Also please note that any use of the advertising ID
+ must abide by the terms of the <a class="external-link"
+ href="http://play.google.com/about/developer-content-policy.html#ADID">Google Play
+ Developer Content Policies</a>.
+</p>
+<h3 id="format">Format of the Advertising ID</h3>
+<p>
+ Google Play services APIs expose the user's advertising ID as a string format of UUID,
+ with values similar to this:
+</p>
+<p style="margin-left:1.5em;"><code>"38400000-8cf0-11bd-b23e-10b96e40000d"</code></p>
+<h3 id="requirements">Requirements</h3>
+<ul>
+ <li>The advertising ID APIs are supported in Google Play services 4.0+</li>
+ <li>Support for the advertising ID on specific devices is based on their installed versions
+ of Google Play services</li>
+</ul>
+<h3 id="obtaining">Obtaining the user's advertising ID and ad tracking preference</h3>
+<p>
+ If you want to use the advertising ID in your app, you must first install the Google
+ Play services SDK. As noted in the requirements above, you should install the
+ SDK for Google Play services 4.0 or higher if you will develop using the advertising ID
+ APIs. For information about how to get started, see <a href=
+ "https://developers.google.com/android/guides/setup">Setting Up Google Play services</a>.
+</p>
+<p>
+ The advertising ID APIs are available in the <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/package-summary.html">
+ <code>com.google.android.gms.ads.identifier</code></a> package in the Google
+ Play Services library. To obtain the user's advertising ID and tracking preference,
+ call the method
+ <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.html#getAdvertisingIdInfo(android.content.Context)">
+ <code>getAdvertisingIdInfo()</code></a>, which returns an <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html">
+ <code>AdvertisingIdClient.Info</code></a> encapsulating the user's current Advertising ID
+ and tracking preference.
+</p>
+<p class="note">
+ <strong>Note:</strong> The
+ <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.html#getAdvertisingIdInfo(android.content.Context)"><code>getAdvertisingIdInfo()</code></a>
+ method is a blocking call, so you must not call it on the main (UI) thread.
+ If called on the main thread, the method throws
+ {@link java.lang.IllegalStateException}.
+</p>
+<p>
+ Once you've retrieved the
+ <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html">
+ <code>AdvertisingIdClient.Info</code></a>
+ object, you can use its <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html#getId()">
+ <code>getId()</code></a> and <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html#isLimitAdTrackingEnabled()">
+ <code>isLimitAdTrackingEnabled()</code></a> methods to access the advertising ID and
+ ad tracking preference.
+</p>
+<table>
+<tr>
+<th>Method</th>
+<th>Description</th>
+</tr>
+<tr>
+<td><code>public String <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html#getId()">getId()</a></code></td>
+<td style="white-space:nowrap;">Retrieves the advertising ID.</td>
+</tr>
+<tr>
+<td style="white-space:nowrap;"><code>public boolean <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info.html#isLimitAdTrackingEnabled()">isLimitAdTrackingEnabled()</a></code></td>
+<td>Retrieves whether the user has limit ad tracking enabled or not.</td>
+</tr>
+</table>
+<p>
+ The advertising ID APIs do not include a "reset" method. Only users can initiate a
+ reset of their own advertising IDs, through the Google Settings application.
+</p>
+<p>
+ For more information about the advertising ID APIs, see the <a href=
+ "{@docRoot}reference/com/google/android/gms/ads/identifier/package-summary.html">
+ reference documentation</a>.
+</p>
+<h3 id="example">Example implementation</h3>
+<p>
+ Here's a basic illustration of how you can retrieve the user's advertising ID and ad
+ tracking preference in your app:
+</p>
+<pre>
+import com.google.android.gms.ads.identifier.AdvertisingIdClient;
+import com.google.android.gms.ads.identifier.AdvertisingIdClient.Info;
+import com.google.android.gms.common.GooglePlayServicesAvailabilityException;
+import com.google.android.gms.common.GooglePlayServicesNotAvailableException;
+import java.io.IOException;
+...
+// Do not call this function from the main thread. Otherwise,
+// an IllegalStateException will be thrown.
+public void getIdThread() {
+ Info adInfo = null;
+ try {
+ adInfo = AdvertisingIdClient.getAdvertisingIdInfo(mContext);
+ } catch (IOException e) {
+ // Unrecoverable error connecting to Google Play services (e.g.,
+ // the old version of the service doesn't support getting AdvertisingId).
+
+ } catch (GooglePlayServicesAvailabilityException e) {
+ // Encountered a recoverable error connecting to Google Play services.
+ } catch (GooglePlayServicesNotAvailableException e) {
+ // Google Play services is not available entirely.
+ }
+ final String id = adInfo.getId();
+ final boolean isLAT = adInfo.isLimitAdTrackingEnabled();
+}</pre>
diff --git a/docs/html/google/play/billing/billing_admin.jd b/docs/html/google/play/billing/billing_admin.jd
index 383ef5d..ff7acc9 100644
--- a/docs/html/google/play/billing/billing_admin.jd
+++ b/docs/html/google/play/billing/billing_admin.jd
@@ -155,8 +155,8 @@
application.</p>
</li>
<li><strong>Title</strong>
- <p>The title is a short descriptor for the item. For example, "Sleeping potion." Titles must be
- unique across an application's namespace. Every item must have a title. The title is visible to
+ <p>The title is a short descriptor for the item. For example, "Sleeping potion."
+ Every item must have a title. The title is visible to
users during checkout. For optimum appearance, titles should be no longer than 25 characters;
however, titles can be up to 55 characters in length.</p>
</li>
@@ -201,7 +201,7 @@
<p>To add a batch of items to a product list using a CSV file, you first need to create your CSV
file. The data values that you specify in the CSV file represent the same data values you specify
manually through the In-app Products UI (see <a href="#billing-form-add">Adding items one at a time
-to a product list</a>).
+to a product list</a>).
<p>If you are importing and exporting CSV files with in-app products, please
keep tax-inclusive pricing in mind. If you use auto-fill, you can provide a
diff --git a/docs/html/guide/_book.yaml b/docs/html/guide/_book.yaml
new file mode 100644
index 0000000..3cf9f92
--- /dev/null
+++ b/docs/html/guide/_book.yaml
@@ -0,0 +1,409 @@
+toc:
+- title: Introduction
+ path: /guide/index.html
+ section:
+ - title: App Fundamentals
+ path: /guide/components/fundamentals.html
+ - title: Device Compatibility
+ path: /guide/practices/compatibility.html
+ - title: System Permissions
+ path: /guide/topics/security/permissions.html
+
+- title: App Components
+ path: /guide/components/index.html
+ section:
+ - title: Intents and Intent Filters
+ path: /guide/components/intents-filters.html
+ section:
+ - title: Common Intents
+ path: /guide/components/intents-common.html
+ - title: Activities
+ path: /guide/components/activities.html
+ section:
+ - title: Fragments
+ path: /guide/components/fragments.html
+ - title: Loaders
+ path: /guide/components/loaders.html
+ - title: Tasks and Back Stack
+ path: /guide/components/tasks-and-back-stack.html
+ - title: Overview Screen
+ path: /guide/components/recents.html
+ - title: Services
+ path: /guide/components/services.html
+ section:
+ - title: Bound Services
+ path: /guide/components/bound-services.html
+ - title: AIDL
+ path: /guide/components/aidl.html
+ - title: Content Providers
+ path: /guide/topics/providers/content-providers.html
+ section:
+ - title: Content Provider Basics
+ path: /guide/topics/providers/content-provider-basics.html
+ - title: Creating a Content Provider
+ path: /guide/topics/providers/content-provider-creating.html
+ - title: Calendar Provider
+ path: /guide/topics/providers/calendar-provider.html
+ - title: Contacts Provider
+ path: /guide/topics/providers/contacts-provider.html
+ - title: Storage Access Framework
+ path: /guide/topics/providers/document-provider.html
+ - title: App Widgets
+ path: /guide/topics/appwidgets/index.html
+ section:
+ - title: App Widget Host
+ path: /guide/topics/appwidgets/host.html
+ - title: Processes and Threads
+ path: /guide/components/processes-and-threads.html
+
+- title: App Resources
+ path: /guide/topics/resources/index.html
+ section:
+ - title: Overview
+ path: /guide/topics/resources/overview.html
+ - title: Providing Resources
+ path: /guide/topics/resources/providing-resources.html
+ - title: Accessing Resources
+ path: /guide/topics/resources/accessing-resources.html
+ - title: Handling Runtime Changes
+ path: /guide/topics/resources/runtime-changes.html
+ - title: Localization
+ path: /guide/topics/resources/localization.html
+ - title: Resource Types
+ path: /guide/topics/resources/available-resources.html
+ section:
+ - title: Animation
+ path: /guide/topics/resources/animation-resource.html
+ - title: Color State List
+ path: /guide/topics/resources/color-list-resource.html
+ - title: Drawable
+ path: /guide/topics/resources/drawable-resource.html
+ - title: Layout
+ path: /guide/topics/resources/layout-resource.html
+ - title: Menu
+ path: /guide/topics/resources/menu-resource.html
+ - title: String
+ path: /guide/topics/resources/string-resource.html
+ - title: Style
+ path: /guide/topics/resources/style-resource.html
+ - title: More Types
+ path: /guide/topics/resources/more-resources.html
+
+- title: App Manifest
+ path: /guide/topics/manifest/manifest-intro.html
+ section:
+ - title: <action>
+ path: /guide/topics/manifest/action-element.html
+ - title: <activity>
+ path: /guide/topics/manifest/activity-element.html
+ - title: <activity-alias>
+ path: /guide/topics/manifest/activity-alias-element.html
+ - title: <application>
+ path: /guide/topics/manifest/application-element.html
+ - title: <category>
+ path: /guide/topics/manifest/category-element.html
+ - title: <compatible-screens>
+ path: /guide/topics/manifest/compatible-screens-element.html
+ - title: <data>
+ path: /guide/topics/manifest/data-element.html
+ - title: <grant-uri-permission>
+ path: /guide/topics/manifest/grant-uri-permission-element.html
+ - title: <instrumentation>
+ path: /guide/topics/manifest/instrumentation-element.html
+ - title: <intent-filter>
+ path: /guide/topics/manifest/intent-filter-element.html
+ - title: <manifest>
+ path: /guide/topics/manifest/manifest-element.html
+ - title: <meta-data>
+ path: /guide/topics/manifest/meta-data-element.html
+ - title: <path-permission>
+ path: /guide/topics/manifest/path-permission-element.html
+ - title: <permission>
+ path: /guide/topics/manifest/permission-element.html
+ - title: <permission-group>
+ path: /guide/topics/manifest/permission-group-element.html
+ - title: <permission-tree>
+ path: /guide/topics/manifest/permission-tree-element.html
+ - title: <provider>
+ path: /guide/topics/manifest/provider-element.html
+ - title: <receiver>
+ path: /guide/topics/manifest/receiver-element.html
+ - title: <service>
+ path: /guide/topics/manifest/service-element.html
+ - title: <supports-gl-texture>
+ path: /guide/topics/manifest/supports-gl-texture-element.html
+ - title: <supports-screens>
+ path: /guide/topics/manifest/supports-screens-element.html
+ - title: <uses-configuration>
+ path: /guide/topics/manifest/uses-configuration-element.html
+ - title: <uses-feature>
+ path: /guide/topics/manifest/uses-feature-element.html
+ - title: <uses-library>
+ path: /guide/topics/manifest/uses-library-element.html
+ - title: <uses-permission>
+ path: /guide/topics/manifest/uses-permission-element.html
+ - title: <uses-permission-sdk-23>
+ path: /guide/topics/manifest/uses-permission-sdk-23-element.html
+ - title: <uses-sdk>
+ path: /guide/topics/manifest/uses-sdk-element.html
+
+- title: User Interface
+ path: /guide/topics/ui/index.html
+ section:
+ - title: Overview
+ path: /guide/topics/ui/overview.html
+ - title: Layouts
+ path: /guide/topics/ui/declaring-layout.html
+ section:
+ - title: Linear Layout
+ path: /guide/topics/ui/layout/linear.html
+ - title: Relative Layout
+ path: /guide/topics/ui/layout/relative.html
+ - title: List View
+ path: /guide/topics/ui/layout/listview.html
+ - title: Grid View
+ path: /guide/topics/ui/layout/gridview.html
+ - title: Input Controls
+ path: /guide/topics/ui/controls.html
+ section:
+ - title: Buttons
+ path: /guide/topics/ui/controls/button.html
+ - title: Text Fields
+ path: /guide/topics/ui/controls/text.html
+ - title: Checkboxes
+ path: /guide/topics/ui/controls/checkbox.html
+ - title: Radio Buttons
+ path: /guide/topics/ui/controls/radiobutton.html
+ - title: Toggle Buttons
+ path: /guide/topics/ui/controls/togglebutton.html
+ - title: Spinners
+ path: /guide/topics/ui/controls/spinner.html
+ - title: Pickers
+ path: /guide/topics/ui/controls/pickers.html
+ - title: Input Events
+ path: /guide/topics/ui/ui-events.html
+ - title: Menus
+ path: /guide/topics/ui/menus.html
+ - title: Settings
+ path: /guide/topics/ui/settings.html
+ - title: Dialogs
+ path: /guide/topics/ui/dialogs.html
+ - title: Notifications
+ path: /guide/topics/ui/notifiers/notifications.html
+ - title: Toasts
+ path: /guide/topics/ui/notifiers/toasts.html
+ - title: Search
+ path: /guide/topics/search/index.html
+ section:
+ - title: Creating a Search Interface
+ path: /guide/topics/search/search-dialog.html
+ - title: Adding Recent Query Suggestions
+ path: /guide/topics/search/adding-recent-query-suggestions.html
+ - title: Adding Custom Suggestions
+ path: /guide/topics/search/adding-custom-suggestions.html
+ - title: Searchable Configuration
+ path: /guide/topics/search/searchable-config.html
+ - title: Drag and Drop
+ path: /guide/topics/ui/drag-drop.html
+ - title: Accessibility
+ path: /guide/topics/ui/accessibility/index.html
+ section:
+ - title: Making Applications Accessible
+ path: /guide/topics/ui/accessibility/apps.html
+ - title: Accessibility Developer Checklist
+ path: /guide/topics/ui/accessibility/checklist.html
+ - title: Building Accessibility Services
+ path: /guide/topics/ui/accessibility/services.html
+ - title: Styles and Themes
+ path: /guide/topics/ui/themes.html
+ - title: Custom Components
+ path: /guide/topics/ui/custom-components.html
+
+- title: Animation and Graphics
+ path: /guide/topics/graphics/index.html
+ section:
+ - title: Overview
+ path: /guide/topics/graphics/overview.html
+ - title: Property Animation
+ path: /guide/topics/graphics/prop-animation.html
+ - title: View Animation
+ path: /guide/topics/graphics/view-animation.html
+ - title: Drawable Animation
+ path: /guide/topics/graphics/drawable-animation.html
+ - title: Canvas and Drawables
+ path: /guide/topics/graphics/2d-graphics.html
+ - title: OpenGL ES
+ path: /guide/topics/graphics/opengl.html
+ - title: Hardware Acceleration
+ path: /guide/topics/graphics/hardware-accel.html
+
+- title: Computation
+ path: /guide/topics/renderscript/index.html
+ section:
+ - title: RenderScript
+ path: /guide/topics/renderscript/compute.html
+ - title: Advanced RenderScript
+ path: /guide/topics/renderscript/advanced.html
+ - title: Runtime API Reference
+ path: /guide/topics/renderscript/reference/overview.html
+ section:
+ - title: Numerical Types
+ path: /guide/topics/renderscript/reference/rs_value_types.html
+ - title: Object Types
+ path: /guide/topics/renderscript/reference/rs_object_types.html
+ - title: Conversion Functions
+ path: /guide/topics/renderscript/reference/rs_convert.html
+ - title: Mathematical Constants and Functions
+ path: /guide/topics/renderscript/reference/rs_math.html
+ - title: Vector Math Functions
+ path: /guide/topics/renderscript/reference/rs_vector_math.html
+ - title: Matrix Functions
+ path: /guide/topics/renderscript/reference/rs_matrix.html
+ - title: Quaternion Functions
+ path: /guide/topics/renderscript/reference/rs_quaternion.html
+ - title: Atomic Update Functions
+ path: /guide/topics/renderscript/reference/rs_atomic.html
+ - title: Time Functions and Types
+ path: /guide/topics/renderscript/reference/rs_time.html
+ - title: Allocation Data Access Functions
+ path: /guide/topics/renderscript/reference/rs_allocation_data.html
+ - title: Object Characteristics Functions
+ path: /guide/topics/renderscript/reference/rs_object_info.html
+ - title: Kernel Invocation Functions and Types
+ path: /guide/topics/renderscript/reference/rs_for_each.html
+ - title: Input/Output Functions
+ path: /guide/topics/renderscript/reference/rs_io.html
+ - title: Debugging Functions
+ path: /guide/topics/renderscript/reference/rs_debug.html
+ - title: Graphics Functions and Types
+ path: /guide/topics/renderscript/reference/rs_graphics.html
+ - title: Index
+ path: /guide/topics/renderscript/reference/index.html
+
+- title: Media and Camera
+ path: /guide/topics/media/index.html
+ section:
+ - title: Media Playback
+ path: /guide/topics/media/mediaplayer.html
+ - title: Media Router
+ path: /guide/topics/media/mediarouter.html
+ - title: Media Route Provider
+ path: /guide/topics/media/mediarouteprovider.html
+ - title: ExoPlayer
+ path: /guide/topics/media/exoplayer.html
+ - title: Supported Media Formats
+ path: /guide/appendix/media-formats.html
+ - title: Audio Capture
+ path: /guide/topics/media/audio-capture.html
+ - title: JetPlayer
+ path: /guide/topics/media/jetplayer.html
+ - title: Camera
+ path: /guide/topics/media/camera.html
+
+- title: Location and Sensors
+ path: /guide/topics/sensors/index.html
+ section:
+ - title: Location and Maps
+ path: /guide/topics/location/index.html
+ - title: Location Strategies
+ path: /guide/topics/location/strategies.html
+ - title: Sensors Overview
+ path: /guide/topics/sensors/sensors_overview.html
+ - title: Motion Sensors
+ path: /guide/topics/sensors/sensors_motion.html
+ - title: Position Sensors
+ path: /guide/topics/sensors/sensors_position.html
+ - title: Environment Sensors
+ path: /guide/topics/sensors/sensors_environment.html
+
+- title: Connectivity
+ path: /guide/topics/connectivity/index.html
+ section:
+ - title: Bluetooth
+ path: /guide/topics/connectivity/bluetooth.html
+ section:
+ - title: Bluetooth Low Energy
+ path: /guide/topics/connectivity/bluetooth-le.html
+ - title: NFC
+ path: /guide/topics/connectivity/nfc/index.html
+ section:
+ - title: NFC Basics
+ path: /guide/topics/connectivity/nfc/nfc.html
+ - title: Advanced NFC
+ path: /guide/topics/connectivity/nfc/advanced-nfc.html
+ - title: Host-based Card Emulation
+ path: /guide/topics/connectivity/nfc/hce.html
+ - title: Wi-Fi P2P
+ path: /guide/topics/connectivity/wifip2p.html
+ - title: USB
+ path: /guide/topics/connectivity/usb/index.html
+ section:
+ - title: Accessory
+ path: /guide/topics/connectivity/usb/accessory.html
+ - title: Host
+ path: /guide/topics/connectivity/usb/host.html
+ - title: SIP
+ path: /guide/topics/connectivity/sip.html
+
+- title: Text and Input
+ path: /guide/topics/text/index.html
+ section:
+ - title: Copy and Paste
+ path: /guide/topics/text/copy-paste.html
+ - title: Creating an IME
+ path: /guide/topics/text/creating-input-method.html
+ - title: Spelling Checker
+ path: /guide/topics/text/spell-checker-framework.html
+
+- title: Data Storage
+ path: /guide/topics/data/index.html
+ section:
+ - title: Storage Options
+ path: /guide/topics/data/data-storage.html
+ - title: Data Backup
+ path: /guide/topics/data/backup.html
+ - title: App Install Location
+ path: /guide/topics/data/install-location.html
+
+- title: Administration
+ path: /guide/topics/admin/index.html
+ section:
+ - title: Device Policies
+ path: /guide/topics/admin/device-admin.html
+
+- title: Web Apps
+ path: /guide/webapps/index.html
+ section:
+ - title: Supporting Different Screens in Web Apps
+ path: /guide/webapps/targeting.html
+ - title: Building Web Apps in WebView
+ path: /guide/webapps/webview.html
+ - title: Migrating to WebView in Android 4.4
+ path: /guide/webapps/migrating.html
+ - title: Debugging Web Apps
+ path: /guide/webapps/debugging.html
+ - title: Best Practices for Web Apps
+ path: /guide/webapps/best-practices.html
+
+- title: Best Practices
+ path: /guide/practices/index.html
+ custom_link_attributes:
+ - de-lang: "Bewährte Verfahren"
+ - es-lang: "Prácticas recomendadas"
+ - fr-lang: "Meilleures pratiques"
+ - it-lang: "Best practice"
+ - ja-lang: "ベスト プラクティス"
+ - zh-cn-lang: "最佳实践"
+ - zh-tw-lang: "最佳實務"
+ section:
+ - title: Supporting Multiple Screens
+ path: /guide/practices/screens_support.html
+ section:
+ - title: Distributing to Specific Screens
+ path: /guide/practices/screens-distribution.html
+ - title: Screen Compatibility Mode
+ path: /guide/practices/screen-compat-mode.html
+ - title: Supporting Tablets and Handsets
+ path: /guide/practices/tablets-and-handsets.html
+ - title: Verifying App Behavior on ART
+ path: /guide/practices/verifying-apps-art.html
diff --git a/docs/html/guide/topics/manifest/manifest-intro.jd b/docs/html/guide/topics/manifest/manifest-intro.jd
index d2a9308..d7b176e 100644
--- a/docs/html/guide/topics/manifest/manifest-intro.jd
+++ b/docs/html/guide/topics/manifest/manifest-intro.jd
@@ -279,7 +279,7 @@
should be localized and therefore set from a resource or theme. Resource
values are expressed in the following format,</p>
-<p style="margin-left: 2em">{@code @[<i>package</i>:]<i>type</i>:<i>name</i>}</p>
+<p style="margin-left: 2em">{@code @[<i>package</i>:]<i>type</i>/<i>name</i>}</p>
<p>
where the <i>package</i> name can be omitted if the resource is in the same package
@@ -295,7 +295,7 @@
rather than '{@code @}':
</p>
-<p style="margin-left: 2em">{@code ?[<i>package</i>:]<i>type</i>:<i>name</i>}
+<p style="margin-left: 2em">{@code ?[<i>package</i>:]<i>type</i>/<i>name</i>}
</p></dd>
<dt><b>String values</b></dt>
diff --git a/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd b/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd
index ff45499..860d30f 100644
--- a/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd
+++ b/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd
@@ -19,14 +19,16 @@
<dd itemprop="description">
Specifies that an app wants a particular permission, but <em>only</em> if
- the app is running on a device with SDK version 23 or higher. If the device
- is running SDK version 22 or lower, the app does not have the specified
+ the app is running on a device with <a
+ href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API
+ level</a> 23 or higher. If the device
+ is running API level 22 or lower, the app does not have the specified
permission.
<p>
This element is useful when you update an app to include a new
feature that requires an additional permission. If a user updates an app on a
- device that is running SDK version 22 or lower, the system prompts the user
+ device that is running API level 22 or lower, the system prompts the user
at install time to grant all new permissions that are declared in that
update. If a new feature is minor enough, you may prefer to disable
the feature altogether on those devices, so the user does not have to grant
@@ -34,7 +36,9 @@
<code><uses-permission-sdk-23></code> element instead of <a href=
"uses-permission-element.html"><code><uses-permission></code></a>,
you can request the permission <em>only</em> if the app is running on
- platforms that support the runtime permissions model, in which the user
+ platforms that support the <a
+ href="{@docRoot}training/permissions/requesting.html">runtime permissions</a>
+ model, in which the user
grants permissions to the app while it is running.
</p>
diff --git a/docs/html/guide/topics/ui/drag-drop.jd b/docs/html/guide/topics/ui/drag-drop.jd
index 9d8aa9b..4eb54f2 100644
--- a/docs/html/guide/topics/ui/drag-drop.jd
+++ b/docs/html/guide/topics/ui/drag-drop.jd
@@ -643,7 +643,7 @@
// Defines a callback that sends the drag shadow dimensions and touch point back to the
// system.
@Override
- public void onProvideShadowMetrics (Point size, Point touch)
+ public void onProvideShadowMetrics (Point size, Point touch) {
// Defines local variables
private int width, height;
diff --git a/docs/html/images/cards/card-n-apis_2x.png b/docs/html/images/cards/card-n-apis_2x.png
new file mode 100644
index 0000000..296ea6c
--- /dev/null
+++ b/docs/html/images/cards/card-n-apis_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-changes_2x.png b/docs/html/images/cards/card-n-changes_2x.png
new file mode 100644
index 0000000..7d08e37
--- /dev/null
+++ b/docs/html/images/cards/card-n-changes_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-downloads_2x.png b/docs/html/images/cards/card-n-downloads_2x.png
new file mode 100644
index 0000000..febc661
--- /dev/null
+++ b/docs/html/images/cards/card-n-downloads_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-overview_2x.png b/docs/html/images/cards/card-n-overview_2x.png
new file mode 100644
index 0000000..2c7392a
--- /dev/null
+++ b/docs/html/images/cards/card-n-overview_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-samples_2x.png b/docs/html/images/cards/card-n-samples_2x.png
new file mode 100644
index 0000000..d6621eb
--- /dev/null
+++ b/docs/html/images/cards/card-n-samples_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-sdk_2x.png b/docs/html/images/cards/card-n-sdk_2x.png
new file mode 100644
index 0000000..05d2eb9
--- /dev/null
+++ b/docs/html/images/cards/card-n-sdk_2x.png
Binary files differ
diff --git a/docs/html/images/cards/card-n-support_2x.png b/docs/html/images/cards/card-n-support_2x.png
new file mode 100644
index 0000000..0aec6cf
--- /dev/null
+++ b/docs/html/images/cards/card-n-support_2x.png
Binary files differ
diff --git a/docs/html/images/home/androidn-hero-n5.png b/docs/html/images/home/androidn-hero-n5.png
new file mode 100644
index 0000000..58c0837
--- /dev/null
+++ b/docs/html/images/home/androidn-hero-n5.png
Binary files differ
diff --git a/docs/html/images/home/n-preview-hero.png b/docs/html/images/home/n-preview-hero.png
new file mode 100644
index 0000000..b9636dd
--- /dev/null
+++ b/docs/html/images/home/n-preview-hero.png
Binary files differ
diff --git a/docs/html/images/home/n-preview-hero_2x.png b/docs/html/images/home/n-preview-hero_2x.png
new file mode 100644
index 0000000..c59d195
--- /dev/null
+++ b/docs/html/images/home/n-preview-hero_2x.png
Binary files differ
diff --git a/docs/html/images/n-preview-updates-narrow_2x.png b/docs/html/images/n-preview-updates-narrow_2x.png
new file mode 100644
index 0000000..cf2ad90
--- /dev/null
+++ b/docs/html/images/n-preview-updates-narrow_2x.png
Binary files differ
diff --git a/docs/html/images/n-preview-updates_2x.png b/docs/html/images/n-preview-updates_2x.png
new file mode 100644
index 0000000..ec64d68
--- /dev/null
+++ b/docs/html/images/n-preview-updates_2x.png
Binary files differ
diff --git a/docs/html/images/tools/as-debugbutton.png b/docs/html/images/tools/as-debugbutton.png
index 55e95d1..f8edf4d 100644
--- a/docs/html/images/tools/as-debugbutton.png
+++ b/docs/html/images/tools/as-debugbutton.png
Binary files differ
diff --git a/docs/html/images/tools/as-find-apk.png b/docs/html/images/tools/as-find-apk.png
new file mode 100644
index 0000000..e68d2b1
--- /dev/null
+++ b/docs/html/images/tools/as-find-apk.png
Binary files differ
diff --git a/docs/html/images/tools/as-gradle.png b/docs/html/images/tools/as-gradle.png
new file mode 100644
index 0000000..a1b88ae
--- /dev/null
+++ b/docs/html/images/tools/as-gradle.png
Binary files differ
diff --git a/docs/html/images/tools/as-run.png b/docs/html/images/tools/as-run.png
index 76c7020..dbc3e33 100644
--- a/docs/html/images/tools/as-run.png
+++ b/docs/html/images/tools/as-run.png
Binary files differ
diff --git a/docs/html/images/tools/signstudio3.png b/docs/html/images/tools/signstudio3.png
index f25bf00..4d51764 100644
--- a/docs/html/images/tools/signstudio3.png
+++ b/docs/html/images/tools/signstudio3.png
Binary files differ
diff --git a/docs/html/index.jd b/docs/html/index.jd
index 1777e72..2f67c58 100644
--- a/docs/html/index.jd
+++ b/docs/html/index.jd
@@ -16,39 +16,37 @@
})
</script>
-<!-- <div class="dac-hero-carousel" data-carousel-query="collection:index/carousel">
-</div> -->
-<section class="dac-hero-carousel">
-
-<!-- <article class="dac-expand dac-hero dac-invert active" style="background-color: rgb(38, 50, 56);"> -->
-<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
-<a href="about/versions/marshmallow/index.html">
+<section class="dac-expand dac-hero dac-invert" style="background-color:#455A64">
<div class="wrap" style="max-width:1100px;margin-top:0">
- <div class="cols dac-hero-content">
- <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
- </div>
- <div class="col-8of16 col-pull-7of16">
- <div class="dac-hero-tag"></div>
-
- <h1 class="dac-hero-title" style="white-space:nowrap;">Android 6.0 Marshmallow</h1>
- </div>
- <div class="col-6of16 col-push-1of16">
- <p class="dac-hero-description" style="color:white"><strong>The
- official Android 6.0 SDK is now available!</strong>
- Explore what's new — runtime permissions,
- Doze and App Standby power-saving features, new
- assist technology, and more.</p>
-
- <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
+ <div class="col-7of16 col-push-9of16" style="padding-left:2em;">
+ <a href="{@docRoot}preview/index.html">
+ <h1 class="dac-hero-title">Android N Developer Preview</h1>
+ <p class="dac-hero-description">
+ Get ready for the next version of Android!
+ <strong>Test your apps</strong> on Nexus and other devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+ </p>
+ <a class="dac-hero-cta" href="/preview/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
Learn more
- </a><br>
- </div>
- </div>
+ </a><!--<br>
+ <a class="dac-hero-cta" href="/preview/support.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Update to Developer Preview (final SDK)
+ </a><br>-->
+ </a>
+ </div>
+ <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:0em;padding-right:1.5em;">
+ <a href="{@docRoot}preview/index.html">
+ <img style="" class="dac-hero-image" src="/images/home/n-preview-hero.png"
+ srcset="/images/home/n-preview-hero.png 1x,
+ /images/home/n-preview-hero_2x.png 2x">
+ </a>
</div>
</div>
-</a>
-</article></section>
+</section>
<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
<div class="wrap dac-offset-parent">
@@ -59,7 +57,7 @@
<li class="dac-action">
<a class="dac-action-link" href="{@docRoot}sdk/index.html">
<i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
- Get the SDK
+ Get Android Studio
</a>
</li>
<li class="dac-action">
@@ -86,7 +84,7 @@
<div class="actions">
<div><a href="{@docRoot}sdk/index.html">
<span class="dac-sprite dac-auto-chevron-large"></span>
- Get the SDK
+ Get Android Studio
</a></div>
<div><a href="{@docRoot}samples/index.html">
<span class="dac-sprite dac-auto-chevron-large"></span>
diff --git a/docs/html/jd_collections.js b/docs/html/jd_collections.js
index fd76d19..ce8f5fb 100644
--- a/docs/html/jd_collections.js
+++ b/docs/html/jd_collections.js
@@ -16,8 +16,8 @@
"index/secondary/carousel": {
"title": "",
"resources": [
- "http://www.youtube.com/watch?v=Pms0pcyPbAM",
"http://www.youtube.com/watch?v=9m6MoBM-sFI",
+ "http://www.youtube.com/watch?v=Pms0pcyPbAM",
"http://www.youtube.com/watch?v=e7t3svG9PTk",
"http://www.youtube.com/watch?v=J3IvOfvH1ys"
]
@@ -135,6 +135,33 @@
"https://www.youtube.com/watch?v=5Be2mJzP-Uw&list=PLWz5rJ2EKKc9e0d55YHgJFHXNZbGHEXJX"
]
},
+ "preview/landing/resources": {
+ "title": "",
+ "resources": [
+ "preview/overview.html",
+ "preview/api-overview.html",
+ "preview/behavior-changes.html",
+ "preview/setup-sdk.html",
+ "preview/samples.html",
+ "preview/support.html"
+ ]
+ },
+ "preview/landing/more": {
+ "title": "",
+ "resources": [
+ "https://www.youtube.com/watch?v=CsulIu3UaUM",
+ "preview/features/multi-window.html",
+ "preview/features/notification-updates.html",
+ "preview/features/background-optimization.html",
+ "preview/features/data-saver.html",
+ "preview/features/direct-boot.html",
+ "preview/features/icu4j-framework.html",
+ "preview/features/multilingual-support.html",
+ "preview/features/scoped-folder-access.html",
+ "preview/features/picture-in-picture.html",
+ "preview/features/tv-recording-api.html"
+ ]
+ },
"google/landing/services": {
"title": "",
"resources": [
@@ -1022,7 +1049,6 @@
"resources": [
"distribute/tools/localization-checklist.html",
"https://support.google.com/googleplay/android-developer/table/3541286",
- "distribute/stories/localization.html",
"https://play.google.com/intl/en_us/badges/",
"distribute/tools/promote/device-art.html",
"https://www.youtube.com/watch?v=SkHHPf3EdzE"
@@ -1144,12 +1170,6 @@
"https://en.wikipedia.org/wiki/XLIFF"
]
},
- "distribute/toolsreference/localizationchecklist/translatestrings": {
- "title": "",
- "resources": [
- "distribute/stories/localization.html",
- ]
- },
"distribute/toolsreference/localizationchecklist/preplaunch": {
"title": "",
"resources": [
@@ -1251,8 +1271,7 @@
"distribute/toolsreference/launchchecklist/localization": {
"title": "",
"resources": [
- "distribute/tools/localization-checklist.html",
- "guide/topics/resources/localization.html",
+ "distribute/tools/localization-checklist.html"
]
},
"distribute/toolsreference/launchchecklist/graphics": {
@@ -1358,11 +1377,18 @@
"https://support.google.com/googleplay/android-developer/answer/138000?hl=zh-Hans"
]
},
+ "distribute/stories/localization": {
+ "title": "",
+ "resources": [
+ "distribute/stories/games/rvappstudios-zombie.html",
+ "distribute/stories/games/g4a-indian-rummy.html",
+ "distribute/stories/apps/sayhi.html"
+ ]
+ },
"distribute/toolsreference/launchchecklist/localization/zhcn": {
"title": "",
"resources": [
"intl/zh-cn/distribute/tools/localization-checklist.html",
- "guide/topics/resources/localization.html"
]
},
"distribute/toolsreference/launchchecklist/graphics/zhcn": {
diff --git a/docs/html/jd_extras.js b/docs/html/jd_extras.js
index e108d13..75b51fb 100644
--- a/docs/html/jd_extras.js
+++ b/docs/html/jd_extras.js
@@ -3281,6 +3281,18 @@
"type":"distribute"
},
{
+ "title":"What’s New in Android N Developer Preview",
+ "titleFriendly":"",
+ "summary":"Learn all about the new features in the Android N Preview.",
+ "url":"https://www.youtube.com/watch?v=CsulIu3UaUM",
+ "group":"",
+ "keywords": ["n preview"],
+ "tags": [],
+ "image":"https://i1.ytimg.com/vi/CsulIu3UaUM/maxresdefault.jpg",
+ "lang":"en",
+ "type":"Video"
+ },
+ {
"title":"Developing for Android 6.0 (Marshmallow)",
"titleFriendly":"",
"summary":"This video covers how to get started with the preview, important APIs to test and how to provide feedback on the preview.",
diff --git a/docs/html/jd_extras_en.js b/docs/html/jd_extras_en.js
index d35dbb5..f43ddd6 100644
--- a/docs/html/jd_extras_en.js
+++ b/docs/html/jd_extras_en.js
@@ -4718,6 +4718,32 @@
"sdk/installing/studio-tips.html",
]
},
+ "preview/landing/resources": {
+ "title": "",
+ "resources": [
+ "preview/overview.html",
+ "preview/api-overview.html",
+ "preview/behavior-changes.html",
+ "preview/setup-sdk.html",
+ "preview/samples.html",
+ "preview/support.html"
+ ]
+ },
+ "preview/landing/more": {
+ "title": "",
+ "resources": [
+ "preview/features/multi-window.html",
+ "preview/features/notification-updates.html",
+ "preview/features/background-optimization.html",
+ "preview/features/data-saver.html",
+ "preview/features/direct-boot.html",
+ "preview/features/icu4j-framework.html",
+ "preview/features/multilingual-support.html",
+ "preview/features/scoped-folder-access.html",
+ "preview/features/picture-in-picture.html",
+ "preview/features/tv-recording-api.html"
+ ]
+ }
};
/**
diff --git a/docs/html/jd_tag_helpers.js b/docs/html/jd_tag_helpers.js
index 7538e4d..3ad3633 100644
--- a/docs/html/jd_tag_helpers.js
+++ b/docs/html/jd_tag_helpers.js
@@ -16,7 +16,8 @@
TOOLS_RESOURCES,
TRAINING_RESOURCES,
YOUTUBE_RESOURCES,
- BLOGGER_RESOURCES
+ BLOGGER_RESOURCES,
+ PREVIEW_RESOURCES
);
for (var i = 0; i < ALL_RESOURCES.length; i++) {
@@ -72,6 +73,7 @@
'samples': SAMPLES_RESOURCES,
'tools': TOOLS_RESOURCES,
'training': TRAINING_RESOURCES,
+ 'preview': PREVIEW_RESOURCES,
'youtube': YOUTUBE_RESOURCES,
'blog': BLOGGER_RESOURCES
};
diff --git a/docs/html/ndk/downloads/_book.yaml b/docs/html/ndk/downloads/_book.yaml
new file mode 100644
index 0000000..a5e92ce
--- /dev/null
+++ b/docs/html/ndk/downloads/_book.yaml
@@ -0,0 +1,6 @@
+toc:
+- title: Downloads
+ path: /ndk/downloads/index.html
+
+- title: Revision History
+ path: /ndk/downloads/revision_history.html
diff --git a/docs/html/ndk/downloads/index.jd b/docs/html/ndk/downloads/index.jd
index 301eea1..116bbbb 100644
--- a/docs/html/ndk/downloads/index.jd
+++ b/docs/html/ndk/downloads/index.jd
@@ -307,7 +307,7 @@
</div>
- <p>Select, from the table below, the NDK package for your development platform. For information
+ <p>Select, from the table above, the NDK package for your development platform. For information
about the changes in the newest version of the NDK, see <a href="#rel">Release Notes</a>. For
information about earlier revisions, see <a href="{@docRoot}ndk/downloads/revision_history.html">
NDK Revision History.</a></p>
@@ -317,196 +317,52 @@
$('#Downloads').after($('#download-table'));
</script>
- <h2 id="extract">Extraction</h2>
- <p>The NDK package is a self-extracting binary. To unpack it, follow the procedure for your
- development platform:</p>
- <ul>
- <li>On Linux and Mac OS X (Darwin):
- <ul>
- <ol>
- <li>Download the appropriate package from this page.</li>
- <li>Open a terminal window.</li>
- <li>Go to the directory to which you downloaded the package.</li>
- <li>Run <code>chmod a+x</code> on the downloaded package.</li>
- <li>Execute the package. For example:
- <pre class="no-pretty-print">
-ndk$ chmod a+x android-ndk-r10c-darwin-x86_64.bin
-ndk$ ./android-ndk-r10c-darwin-x86_64.bin
- </pre></li>
- <p>The folder containing the NDK extracts itself.</p>
- <p>You can also use a program like 7z to extract the package.</p>
- </ol>
- </ul>
- </li>
- <li>On Windows:</li>
- <ul>
- <ol>
- <li>Download the appropriate package from this page.</li>
- <li>Navigate to the folder to which you downloaded the package.</li>
- <li>Double-click the downloaded file. The folder containing the NDK extracts itself.</li>
- </ol>
- </ul>
- </ul>When uncompressed, the NDK files are contained in a directory called
- <code>android-ndk-<version></code>. You can rename the NDK directory if necessary and you
- can move it to any location on your computer. This documentation refers to the NDK directory as
- <code><ndk></code>.
-
-
- <p>You are now ready to start working with the NDK.</p>
-
<h2 id="rel">Release Notes</h2>
- <p>Android NDK, Revision 10e</a> <em>(May 2015)</em></p>
+ <p>Android NDK, Revision 11b</a> <em>(March 2016)</em></p>
<dl>
- <dt>Important changes:</dt>
+ <dt>NDK</dt>
<dd>
<ul>
- <li>Integrated the workaround for Cortex-A53 Erratum 843419 into the
- {@code aarch64-linux-android-4.9} linker. For more information on this workaround, see
- <a href="https://sourceware.org/ml/binutils/2015-03/msg00446.html">Workaround for cortex-a53
- erratum 843419.</a></li>
+ <li>Important announcements
+ <ul>
+ <li>We’ve moved our bug tracker to <a href="https://github.com/android-ndk/ndk/issues">
+ GitHub.</a></li>
+ </ul>
+ </li>
- <li>Added Clang 3.6; {@code NDK_TOOLCHAIN_VERSION=clang} now picks that version
- of Clang by default.</li>
-
- <li>Removed Clang 3.4.</li>
-
- <li>Removed GCC 4.6.</li>
-
- <li>Implemented multithreading support in {@code ld.gold} for all architectures. It can
- now link with or without support for multithreading; the default is to do it without.
- <ul>
- <li>To compile with multithreading, use the {@code --threads} option.</li>
- <li>To compile without multithreading, use the {@code --no-threads} option.</li>
- </ul>
- </li>
-
- <li>Upgraded GDB/gdbserver to 7.7 for all architectures.</li>
-
- <li>Removed the NDK package for 32-bit Darwin.</li>
- </ul>
+ <li>Changes
+ <ul>
+ <li>{@code ndk-gdb.py} is fixed. It had
+ <a href="https://github.com/android-ndk/ndk/issues/3">regressed entirely</a>
+ in r11.</li>
+ <li>{@code ndk-gdb} for Mac <a href="https://github.com/android-ndk/ndk/issues/2">
+ is fixed</a>.</li>
+ <li>Added more top-level shortcuts for command line tools:
+ <ul>
+ <li>{@code ndk-depends}.</li>
+ <li>{@code ndk-gdb}.</li>
+ <li>{@code ndk-stack}.</li>
+ <li>{@code ndk-which}. This command had been entirely absent from previous
+ releases.</li>
+ </ul>
+ </li>
+ <li>Fixed standalone toolchains for libc++, which had been missing
+ {@code __cxxabi_config.h}.</li>
+ <li>Fixed help documentation for {@code --toolchain} in
+ {@code make-standalone-toolchain.sh}.</li>
+ </li>
+ </ul>
</dd>
<dl>
-
-
- <dt>Important bug fixes:</dt>
- <dd>
- <ul>
- <li>Fixed a crash that occurred when there were OpenMP loops outside of the main thread.</li>
-
- <li>Fixed a GCC 4.9 internal compiler error (<i>ICE</i>) that occured when the user declared
- {@code #pragma GCC optimize ("O0")}, but had a different level of optimization specified
- on the command line. The {@code pragma} takes precedence.</li>
-
- <li>Fixed an error that used to produce a crash with the following error message:
-<pre>
-in add_stores, at var-tracking.c:6000
-</pre>
- </li>
-
- <li>Implemented a workaround for a Clang 3.5 issue in which LLVM auto-vectorization
- generates {@code llvm.cttz.v2i64()}, an instruction with no counterpart in the ARM
- instruction set.</li>
- </ul>
- </dd>
-
- <dt>Other bug fixes:</dt>
- <dd>
- <ul>
- <li>Made the following header and library fixes:</li>
- <ul>
- <li>Fixed {@code PROPERTY_*} in {@code media/NdkMediaDrm.h}.</li>
- <li>Fixed {@code sys/ucontext.h} for {@code mips64}.</li>
- <li>Dropped the Clang version check for {@code __builtin_isnan} and
- {@code __builtin_isinf}.</li>
- <li>Added {@code android-21/arch-mips/usr/include/asm/reg.h}
- and {@code android-21/arch-mips64/usr/include/asm/reg.h}.</li>
- </ul>
- </li>
-
- <li>Fixed a spurious array-bounds warning that GCC 4.9 produced for x86, and reenabled the
- array bounds warning that GCC 4.9 had produced for ARM. The warning for ARM had
- previously been unconditionally disabled.</li>
-
- <li>Fixed Clang 3.5 for {@code mips} and {@code mips64} to create a writable
- {@code .gcc_except_table} section, thus matching GCC behavior. This change allows you
- to avoid the following linker warning:
-
-<pre>
-.../ld: warning: creating a DT_TEXTREL in a shared object
-</pre>
- </li>
-
- <li>Backported a fix for {@code compiler-rt} issues that were causing crashes when Clang
- compiled for {@code mips64}. For more information, see LLVM Issue
- <a href="http://llvm.org/bugs/show_bug.cgi?id=20098">20098</a>.</li>
-
- <li>Fixed Clang 3.5 crashes that occurred on non-ASCII comments. (Issue
- <a href="https://code.google.com/p/android/issues/detail?id=81440">81440</a>)</li>
-
- <li>Fixed {@code stlport collate::compare} to return {@code -1} and {@code 1}. Previously,
- it had returned arbitrary signed numbers.</li>
-
- <li>Fixed {@code ndk-gdb} for 64-bit ABIs. (Issue
- <a href="https://code.google.com/p/android/issues/detail?id=118300">118300</a>)</li>
-
- <li>Fixed the crash that the HelloComputeNDK sample for RenderScript was producing on
- Android 4.4 (Android API level 19). For more information, see
- <a href="http://stackoverflow.com/questions/28057049/targeting-pre-lollipop-devices-using-renderscript-from-ndk-c">this page</a>.</li>
-
- <li>Fixed {@code libc++ __wrap_iter} for GCC. For more information, see LLVM Issue
- <a href="http://llvm.org/bugs/show_bug.cgi?id=22355">22355</a>.</li>
-
- <li>Fixed {@code .asm} support for ABI {@code x86_64}.</li>
-
- <li>Implemented a workaround for the GCC 4.8 {@code stlport} issue. (Issue
- <a href="https://android-review.googlesource.com/#/c/127773">127773</a>)</li>
-
- <li>Removed the trailing directory separator {@code \\} from the project path in Windows.
- (Issue <a href="https://code.google.com/p/android/issues/detail?id=160584">160584</a>)
- </li>
-
- <li>Fixed a {@code no rule to make target} error that occurred when compiling a single
- {@code .c} file by executing the {@code ndk-build.cmd} command from {@code gradle}. (Issue
- <a href="https://code.google.com/p/android/issues/detail?id=66937">66937</a>)</li>
-
- <li>Added the {@code libatomic.a} and {@code libgomp.a} libraries that had been missing from
- the following host toolchains:
- <ul>
- <li>{@code aarch64-linux-android-4.9}</li>
- <li>{@code mips64el-linux-android-4.9}</li>
- <li>{@code mipsel-linux-android-4.9}</li>
- <li>{@code x86_64-4.9}</li>
- </ul>
- </ul>
- </dd>
-
- <dt>Other changes:</dt>
- <dd>
- <ul>
- <li>Added {@code ld.gold} for {@code aarch64}. The default linker remains {@code ld.bfd}.
- To explicitly enable {@code ld.gold}, add {@code -fuse-ld=gold} to the
- {@code LOCAL_LDFLAGS} or {@code APP_LDFLAGS} variable.</li>
-
- <li>Built the MIPS and MIPS64 toolchains with {@code binutils-2.25}, which provides improved
- R6 support.</li>
-
- <li>Made {@code -fstandalone-debug} (full debug info) a default option for Clang.</li>
-
- <li>Replaced {@code -fstack-protector} with {@code -fstack-protector-strong} for
- the ARM, AArch64, X86, and X86_64 toolchains for GCC 4.9, Clang 3.5, and
- Clang 3.6.</li>
-
- <li>Added the {@code --package} command-line switch to {@code ndk-gdb} to allow the build
- system to override the package name. (Issue
- <a href="https://code.google.com/p/android/issues/detail?id=56189">56189</a>)</li>
-
- <li> Deprecated {@code -mno-ldc1-stc1} for MIPS. This option may not work with the new
- {@code -fpxx} and {@code -mno-odd-spreg} options, or with the FPXX ABI.</li>
-
- <li>Added MIPS MSA and R6 detection to {@code cpu-features}.</li>
-
- </ul>
- </dd>
-
- </dl>
+ <dt>Clang</dt>
+ <dd>
+ <ul>
+ <li>Errata</li>
+ <ul>
+ <li>Contrary to what we reported in the r11 Release Notes, {@code __thread}
+ does not work. This is because the version of Clang we ship is missing a bug fix for
+ emulated TLS support.</li>
+ </ul>
+ </ul>
+ </dd>
diff --git a/docs/html/ndk/downloads/revision_history.jd b/docs/html/ndk/downloads/revision_history.jd
index a32b814..5a7b7fc 100644
--- a/docs/html/ndk/downloads/revision_history.jd
+++ b/docs/html/ndk/downloads/revision_history.jd
@@ -5,10 +5,438 @@
took place in each new version.</p>
<div class="toggle-content closed">
-<a name="10d"></a>
+<a name="11"></a>
<p>
<a href="#" onclick="return toggleContent(this)"> <img
src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ >Android NDK, Revision 11</a> <em>(March 2016)</em>
+ </p>
+ <div class="toggle-content-toggleme">
+ <dl>
+ <dt>Clang</dt>
+ <dd>
+ <ul>
+ <li>Important announcements
+ <ul>
+ <li>We strongly recommend switching to Clang.
+ <ul>
+ <li>If you experience problems with Clang, file bugs
+ <a href="https://github.com/android-ndk/ndk/issues">here</a> for issues
+ specific to Clang in the NDK. For more general Clang issues,
+ file bugs by following the instructions on
+ <a href="http://llvm.org/docs/HowToSubmitABug.html">this page</a>.</li>
+ </ul>
+ </li>
+ <li>Clang has been updated to 3.8svn (r243773, build 2481030).
+ <ul>
+ <li>This version is a nearly pure upstream Clang.</li>
+ <li>The Windows 64-bit downloadable NDK package contains a 32-bit
+ version of Clang.</li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+
+ <li>Additions
+ <ul>
+ <li>Clang now provides support for emulated TLS.
+ <ul>
+ <li>The compiler now supports {@code __thread} by emulating
+ ELF TLS with pthread thread-specific data.</li>
+ <li>C++11 {@code thread_local} works in some cases, but not
+ for data with non-trivial destructors, because those cases
+ require support from libc. This limitation does not
+ apply when running on Android 6.0 (API level 23) or newer.</li>
+ <li>Emulated TLS does not yet work with Aarch64 when
+ TLS variables are accessed from a shared library.</li>
+ </ul>
+ </li>
+ </ul>
+ </dd>
+ <dl>
+
+ <dl>
+ <dt>GCC</dt>
+ <dd>
+ <ul>
+ <li>Important announcements</li>
+ <ul>
+ <li>GCC in the NDK is now deprecated in favor of Clang.
+ <ul>
+ <li>The NDK will neither be upgrading to 5.x, nor accept
+ non-critical backports.</li>
+ <li>Maintenance for miscompiles and internal compiler errors
+ in 4.9 will be handled on a case by case basis.</li>
+ </ul>
+ </li>
+ </ul>
+ <li>Removals
+ <ul>
+ <li>Removed GCC 4.8. All targets now use GCC 4.9.</li>
+ </ul>
+ </li>
+ <li>Other changes
+ <ul>
+ <li>Synchronized google/gcc-4_9 to r224707. Previously, it had been
+ synchronized with r214835.</li>
+ </ul>
+ </li>
+ </ul>
+ </dd>
+ <dl>
+ <dl>
+ <dt>NDK</dt>
+ <dd>
+ <ul>
+ <li>Important announcements
+ <ul>
+ <li>The samples are no longer included in the NDK package.
+ They are instead available on
+ <a href="https://github.com/googlesamples/android-ndk">GitHub.</a>
+ </li>
+ <li>The documentation is no longer included in the NDK package.
+ Instead, it is on the <a href="{@docRoot}ndk/index.html">Android
+ developer website.</a></li>
+ </ul>
+ </li>
+
+ <li>Additions
+ <ul>
+ <li>Added a native tracing API to {@code android-23}.</li>
+ <li>Added a native multinetwork API to {@code android-23}.</li>
+ <li>Enabled libc, m, and dl to provide versioned symbols, starting
+ from API level 21.</li>
+ <li>Added Vulkan headers and library to API level N.</li>
+ </ul>
+ </li>
+
+ <li>Removals
+ <ul>
+ <li>Removed support for {@code _WCHAR_IS_8BIT}.</li>
+ <li>Removed sed.</li>
+ <li>Removed mclinker.</li>
+ <li>Removed Perl.</li>
+ <li>Removed from all versions of NDK libc, m, and dl all symbols which
+ the platform versions of those libs do not support.</li>
+ <li>Partially removed support for mips64r2. The rest will be removed
+ in the future.</li>
+ </ul>
+ </li>
+
+ <li>Other changes
+ <ul>
+ <li>Changed ARM standalone toolchains to default to arm7.
+ <ul>
+ <li>You can restore the old behavior by passing specifying the
+ {@code -target} option as {@code armv5te-linux-androideabi}.
+ </li>
+ </ul>
+ </li>
+ <li>Changed the build system to use {@code -isystem} for platform
+ includes.
+ <ul>
+ <li>Warnings that bionic causes no longer break app builds.</li>
+ </ul>
+ </li>
+ <li>Fixed a segfault that occurred when a binary threw exceptions
+ via gabi++. (Issue <a href="http://b.android.com/179410">179410</a>)
+ </li>
+ <li>Changed libc++’s inline namespace to {@code std::__ndk1}
+ to prevent ODR issues with platform libc++.</li>
+
+ <li>All libc++ libraries are now built with libc++abi.
+ <li>Bumped default {@code APP_PLATFORM} to Gingerbread.
+ <ul>
+ <li>Expect support for Froyo and older to be dropped in a
+ future release.</ul>
+ </ul>
+ <li>Updated gabi++ {@code _Unwind_Exception} struct for 64 bits.
+ <li>Added the following capabilities to cpufeatures:
+ <ul>
+ <li>Detect SSE4.1 and SSE4.2.</li>
+ <li>Detect cpu features on x86_64.</li>
+ </ul>
+ </li>
+ <li>Updated libc++abi to upstream
+ <a href="http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20150302/124603.html">
+ r231075</a>.
+ <li>Updated {@code byteswap.h}, {@code endian.h}, {@code sys/procfs.h},
+ {@code sys/ucontext.h}, {@code sys/user.h}, and {@code uchar.h} from
+ ToT Bionic.
+ <li>Synchronized {@code sys/cdefs.h} across all API levels.
+
+ <li>Fixed {@code fegetenv and fesetenv} for arm.
+ <li>Fix end pointer size/alignment of {@code crtend_*} for mips64
+ and x86_64.
+ </ul>
+ </li>
+ </ul>
+ </ul>
+ </dd>
+ <dl>
+ <dl>
+ <dt>Binutils</dt>
+ <dd>
+ <ul>
+ <li>Additions
+ <ul>
+ <li>Added a new option: {@code --pic-veneer}.</li>
+ </ul>
+ </li>
+
+ <li>Removals
+ <ul>
+ <li>The 32-bit Windows package no longer contains ld.gold.
+ You can instead get ld.gold from the 64-bit Windows package.</li>
+ </ul>
+ </li>
+
+ <li>Changes
+ <ul>
+ <li>Unified binutils source between Android and ChromiumOS.
+ For more information on this change, see the comments
+ <a href="https://android-review.googlesource.com/#/c/182865/">
+ here.</a></li>
+ <li>Improved reliability of Gold for aarch64. Use
+ {@code -fuse-ld=gold} at link time to use gold instead of bfd.
+ The default will likely switch in the next release.</li>
+ <li>Improved linking time for huge binaries for Gold ARM back end
+ (up to 50% linking time reduction for debuggable Chrome Browser).
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </dd>
+ <dl>
+ <dl>
+ <dt>GDB</dt>
+ <dd>
+ <ul>
+
+ <li>Removals
+ <ul>
+ <li>Removed ndk-gdb in favor of ndk-gdb.py.</li>
+ </ul>
+ </li>
+
+ <li>Changes
+ <ul>
+ <li>Updated gdb to version 7.10.</li>
+ <li>Improved performance.</li>
+ <li>Improved error messages.</li>
+ <li>Fixed relative project paths.</li>
+ <li>Stopped Ctrl-C from killing the backgrounded gdbserver.</li>
+ <li>Improved Windows support.</li>
+ </ul>
+ </li>
+ </ul>
+ </dd>
+
+ <dl>
+ <dl>
+ <dt>YASM</dt>
+ <dd>
+ <ul>
+
+ <li>Changes
+ <ul>
+ <li>Updated YASM to version 1.3.0.</li>
+ </ul>
+ </li>
+ </ul>
+ </dd>
+
+ <dl>
+ <dl>
+ <dt>Known issues</dt>
+ <dd>
+ <ul>
+ <li>x86 ASAN does not currently work. For more information, see the
+ discussion <a href="https://android-review.googlesource.com/#/c/186276/">
+ here.</a></li>
+ <li>The combination of Clang, x86, stlport_static, and optimization
+ levels higher than {@code -O0} causes test failures with
+ {@code dynamic_cast}. For more information, see the comments
+ <a href="https://android-review.googlesource.com/#/c/185920">here</a>.
+ </li>
+ <li>Exception handling often fails with c++_shared on ARM32. The root
+ cause is incompatibility between the LLVM unwinder that libc++abi uses
+ for ARM32 and libgcc. This behavior is not a regression from r10e.</li>
+ </ul>
+ </dd>
+ </dl>
+
+ </div>
+</div>
+<div class="toggle-content closed">
+<a name="10e"></a>
+ <p>
+ <a href="#" onclick="return toggleContent(this)"> <img
+ src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
+ >Android NDK, Revision 10e</a> <em>(May 2015)</em>
+ </p>
+ <div class="toggle-content-toggleme">
+ <dl>
+ <dt>Important changes:</dt>
+ <dd>
+ <ul>
+ <li>Integrated the workaround for Cortex-A53 Erratum 843419 into the
+ {@code aarch64-linux-android-4.9} linker. For more information on this workaround, see
+ <a href="https://sourceware.org/ml/binutils/2015-03/msg00446.html">Workaround for cortex-a53
+ erratum 843419.</a></li>
+
+ <li>Added Clang 3.6; {@code NDK_TOOLCHAIN_VERSION=clang} now picks that version
+ of Clang by default.</li>
+
+ <li>Removed Clang 3.4.</li>
+
+ <li>Removed GCC 4.6.</li>
+
+ <li>Implemented multithreading support in {@code ld.gold} for all architectures. It can
+ now link with or without support for multithreading; the default is to do it without.
+ <ul>
+ <li>To compile with multithreading, use the {@code --threads} option.</li>
+ <li>To compile without multithreading, use the {@code --no-threads} option.</li>
+ </ul>
+ </li>
+
+ <li>Upgraded GDB/gdbserver to 7.7 for all architectures.</li>
+
+ <li>Removed the NDK package for 32-bit Darwin.</li>
+ </ul>
+ </dd>
+ <dl>
+
+
+ <dt>Important bug fixes:</dt>
+ <dd>
+ <ul>
+ <li>Fixed a crash that occurred when there were OpenMP loops outside of the main thread.</li>
+
+ <li>Fixed a GCC 4.9 internal compiler error (<i>ICE</i>) that occured when the user declared
+ {@code #pragma GCC optimize ("O0")}, but had a different level of optimization specified
+ on the command line. The {@code pragma} takes precedence.</li>
+
+ <li>Fixed an error that used to produce a crash with the following error message:
+<pre>
+in add_stores, at var-tracking.c:6000
+</pre>
+ </li>
+
+ <li>Implemented a workaround for a Clang 3.5 issue in which LLVM auto-vectorization
+ generates {@code llvm.cttz.v2i64()}, an instruction with no counterpart in the ARM
+ instruction set.</li>
+ </ul>
+ </dd>
+
+ <dt>Other bug fixes:</dt>
+ <dd>
+ <ul>
+ <li>Made the following header and library fixes:</li>
+ <ul>
+ <li>Fixed {@code PROPERTY_*} in {@code media/NdkMediaDrm.h}.</li>
+ <li>Fixed {@code sys/ucontext.h} for {@code mips64}.</li>
+ <li>Dropped the Clang version check for {@code __builtin_isnan} and
+ {@code __builtin_isinf}.</li>
+ <li>Added {@code android-21/arch-mips/usr/include/asm/reg.h}
+ and {@code android-21/arch-mips64/usr/include/asm/reg.h}.</li>
+ </ul>
+ </li>
+
+ <li>Fixed a spurious array-bounds warning that GCC 4.9 produced for x86, and reenabled the
+ array bounds warning that GCC 4.9 had produced for ARM. The warning for ARM had
+ previously been unconditionally disabled.</li>
+
+ <li>Fixed Clang 3.5 for {@code mips} and {@code mips64} to create a writable
+ {@code .gcc_except_table} section, thus matching GCC behavior. This change allows you
+ to avoid the following linker warning:
+
+<pre>
+.../ld: warning: creating a DT_TEXTREL in a shared object
+</pre>
+ </li>
+
+ <li>Backported a fix for {@code compiler-rt} issues that were causing crashes when Clang
+ compiled for {@code mips64}. For more information, see LLVM Issue
+ <a href="http://llvm.org/bugs/show_bug.cgi?id=20098">20098</a>.</li>
+
+ <li>Fixed Clang 3.5 crashes that occurred on non-ASCII comments. (Issue
+ <a href="https://code.google.com/p/android/issues/detail?id=81440">81440</a>)</li>
+
+ <li>Fixed {@code stlport collate::compare} to return {@code -1} and {@code 1}. Previously,
+ it had returned arbitrary signed numbers.</li>
+
+ <li>Fixed {@code ndk-gdb} for 64-bit ABIs. (Issue
+ <a href="https://code.google.com/p/android/issues/detail?id=118300">118300</a>)</li>
+
+ <li>Fixed the crash that the HelloComputeNDK sample for RenderScript was producing on
+ Android 4.4 (Android API level 19). For more information, see
+ <a href="http://stackoverflow.com/questions/28057049/targeting-pre-lollipop-devices-using-renderscript-from-ndk-c">this page</a>.</li>
+
+ <li>Fixed {@code libc++ __wrap_iter} for GCC. For more information, see LLVM Issue
+ <a href="http://llvm.org/bugs/show_bug.cgi?id=22355">22355</a>.</li>
+
+ <li>Fixed {@code .asm} support for ABI {@code x86_64}.</li>
+
+ <li>Implemented a workaround for the GCC 4.8 {@code stlport} issue. (Issue
+ <a href="https://android-review.googlesource.com/#/c/127773">127773</a>)</li>
+
+ <li>Removed the trailing directory separator {@code \\} from the project path in Windows.
+ (Issue <a href="https://code.google.com/p/android/issues/detail?id=160584">160584</a>)
+ </li>
+
+ <li>Fixed a {@code no rule to make target} error that occurred when compiling a single
+ {@code .c} file by executing the {@code ndk-build.cmd} command from {@code gradle}. (Issue
+ <a href="https://code.google.com/p/android/issues/detail?id=66937">66937</a>)</li>
+
+ <li>Added the {@code libatomic.a} and {@code libgomp.a} libraries that had been missing from
+ the following host toolchains:
+ <ul>
+ <li>{@code aarch64-linux-android-4.9}</li>
+ <li>{@code mips64el-linux-android-4.9}</li>
+ <li>{@code mipsel-linux-android-4.9}</li>
+ <li>{@code x86_64-4.9}</li>
+ </ul>
+ </ul>
+ </dd>
+
+ <dt>Other changes:</dt>
+ <dd>
+ <ul>
+ <li>Added {@code ld.gold} for {@code aarch64}. The default linker remains {@code ld.bfd}.
+ To explicitly enable {@code ld.gold}, add {@code -fuse-ld=gold} to the
+ {@code LOCAL_LDFLAGS} or {@code APP_LDFLAGS} variable.</li>
+
+ <li>Built the MIPS and MIPS64 toolchains with {@code binutils-2.25}, which provides improved
+ R6 support.</li>
+
+ <li>Made {@code -fstandalone-debug} (full debug info) a default option for Clang.</li>
+
+ <li>Replaced {@code -fstack-protector} with {@code -fstack-protector-strong} for
+ the ARM, AArch64, X86, and X86_64 toolchains for GCC 4.9, Clang 3.5, and
+ Clang 3.6.</li>
+
+ <li>Added the {@code --package} command-line switch to {@code ndk-gdb} to allow the build
+ system to override the package name. (Issue
+ <a href="https://code.google.com/p/android/issues/detail?id=56189">56189</a>)</li>
+
+ <li> Deprecated {@code -mno-ldc1-stc1} for MIPS. This option may not work with the new
+ {@code -fpxx} and {@code -mno-odd-spreg} options, or with the FPXX ABI.</li>
+
+ <li>Added MIPS MSA and R6 detection to {@code cpu-features}.</li>
+
+ </ul>
+ </dd>
+ </dl>
+
+ </div>
+</div>
+
+<div class="toggle-content closed">
+<a name="10d"></a>
+ <p>
+ <a href="#" onclick="return toggleContent(this)"> <img
+ src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
>Android NDK, Revision 10d</a> <em>(December 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -136,7 +564,7 @@
<a name="10c"></a>
<p>
<a href="#" onclick="return toggleContent(this)"> <img
- src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
>Android NDK, Revision 10c</a> <em>(October 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -323,7 +751,7 @@
<a name="10b"></a>
<p>
<a href="#" onclick="return toggleContent(this)"> <img
- src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
>Android NDK, Revision 10b</a> <em>(September 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -394,7 +822,7 @@
<a name="10"></a>
<p>
<a href="#" onclick="return toggleContent(this)"> <img
- src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
>Android NDK, Revision 10</a> <em>(July 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -571,7 +999,7 @@
<a name="9d"></a>
<p>
<a href="#" onclick="return toggleContent(this)"> <img
- src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
>Android NDK, Revision 9d</a> <em>(March 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -758,7 +1186,7 @@
<a name="9c"></a>
<p>
<a href="#" onclick="return toggleContent(this)"> <img
- src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
>Android NDK, Revision 9c</a> <em>(December 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -882,7 +1310,7 @@
<a name="9b"></a>
<p>
<a href="#" onclick="return toggleContent(this)"> <img
- src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
>Android NDK, Revision 9b</a> <em>(October 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1045,7 +1473,7 @@
<a name="9"></a>
<p>
<a href="#" onclick="return toggleContent(this)"> <img
- src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
>Android NDK, Revision 9</a> <em>(July 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1321,7 +1749,7 @@
<div class="toggle-content closed">
<a name="lower"></a>
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 8e</a> <em>(March 2013)</em>
</p>
@@ -1540,7 +1968,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 8d</a> <em>(December 2012)</em>
</p>
@@ -1706,7 +2134,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 8c</a> <em>(November 2012)</em>
</p>
@@ -2019,7 +2447,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 8b</a> <em>(July 2012)</em>
</p>
@@ -2214,7 +2642,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 8</a> <em>(May 2012)</em>
</p>
@@ -2287,7 +2715,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 7c</a> <em>(April 2012)</em>
</p>
@@ -2341,7 +2769,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 7b</a> <em>(February 2012)</em>
</p>
@@ -2452,7 +2880,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 7</a> <em>(November 2011)</em>
</p>
@@ -2756,7 +3184,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 6b</a> <em>(August 2011)</em>
</p>
@@ -2790,7 +3218,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 6</a> <em>(July 2011)</em>
</p>
@@ -2844,7 +3272,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 5c</a> <em>(June 2011)</em>
</p>
@@ -2930,7 +3358,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 5b</a> <em>(January 2011)</em>
</p>
@@ -2991,7 +3419,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 5</a> <em>(December 2010)</em>
</p>
@@ -3082,7 +3510,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 4b</a> <em>(June 2010)</em>
</p>
@@ -3155,7 +3583,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 3</a> <em>(March 2010)</em>
</p>
@@ -3182,7 +3610,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 2</a> <em>(September 2009)</em>
</p>
@@ -3207,7 +3635,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android NDK, Revision 1</a> <em>(June 2009)</em>
</p>
diff --git a/docs/html/ndk/guides/_book.yaml b/docs/html/ndk/guides/_book.yaml
new file mode 100644
index 0000000..fdcfe46
--- /dev/null
+++ b/docs/html/ndk/guides/_book.yaml
@@ -0,0 +1,65 @@
+toc:
+- title: Getting Started
+ path: /ndk/guides/index.html
+ section:
+ - title: Setup
+ path: /ndk/guides/setup.html
+ - title: Concepts
+ path: /ndk/guides/concepts.html
+
+- title: Building
+ path: /ndk/guides/build.html
+ section:
+ - title: Android.mk
+ path: /ndk/guides/android_mk.html
+ - title: Application.mk
+ path: /ndk/guides/application_mk.html
+ - title: ndk-build
+ path: /ndk/guides/ndk-build.html
+ - title: Standalone Toolchain
+ path: /ndk/guides/standalone_toolchain.html
+
+- title: Architectures and CPUs
+ path: /ndk/guides/arch.html
+ section:
+ - title: ABI Management
+ path: /ndk/guides/abis.html
+ - title: NEON
+ path: /ndk/guides/cpu-arm-neon.html
+ - title: x86
+ path: /ndk/guides/x86.html
+ - title: x86-64
+ path: /ndk/guides/x86-64.html
+ - title: MIPS
+ path: /ndk/guides/mips.html
+ - title: The cpufeatures Library
+ path: /ndk/guides/cpu-features.html
+
+- title: Debugging
+ path: /ndk/guides/debug.html
+ section:
+ - title: ndk-gdb
+ path: /ndk/guides/ndk-gdb.html
+ - title: ndk-stack
+ path: /ndk/guides/ndk-stack.html
+
+- title: Libraries
+ path: /ndk/guides/libs.html
+ section:
+ - title: Prebuilt Libraries
+ path: /ndk/guides/prebuilts.html
+ - title: C++ Support
+ path: /ndk/guides/cpp-support.html
+ - title: Stable APIs
+ path: /ndk/guides/stable_apis.html
+
+- title: Audio
+ path: /ndk/guides/audio/index.html
+ section:
+ - title: Basics
+ path: /ndk/guides/audio/basics.html
+ - title: OpenSL ES for Android
+ path: /ndk/guides/audio/opensl-for-android.html
+
+- title: Graphics
+ path: /ndk/guides/graphics/index.html
diff --git a/docs/html/ndk/guides/abis.jd b/docs/html/ndk/guides/abis.jd
index f4819b2..b2d8324 100644
--- a/docs/html/ndk/guides/abis.jd
+++ b/docs/html/ndk/guides/abis.jd
@@ -364,16 +364,17 @@
ABI</a></li>
</ul>
-<p>The MIPS-specific documentation is available
-<a href="http://www.imgtec.com/mips/architectures/mips32.asp">here</a>, with
-further information
-<a href="https://sourcery.mentor.com/sgpp/lite/mips/portal/target_arch?@action=faq&target_arch=MIPS">here</a>.</p>
+<p>For more specific details, see
+<a href="http://www.imgtec.com/mips/architectures/mips32/">MIPS32 Architecture</a>.
+Answers to common questions are in the
+<a href="https://sourcery.mentor.com/sgpp/lite/mips/portal/target_arch?@action=faq&target_arch=MIPS">MIPS FAQ</a>.
+</p>
</li>
</ul>
<h3 id="mips64">mips64</h3>
<p>This ABI is for MIPS64 R6. For more information, see
-<a href="http://www.imgtec.com/mips/architectures/mips64.asp">MIPS64 Architecture</a>.</p>
+<a href="http://www.imgtec.com/mips/architectures/mips64/">MIPS64 Architecture</a>.</p>
<h2 id="gc">Generating Code for a Specific ABI</h2>
<p>By default, the NDK generates machine code for the armeabi ABI. You can
diff --git a/docs/html/ndk/reference/_book.yaml b/docs/html/ndk/reference/_book.yaml
new file mode 100644
index 0000000..ab8b8f9
--- /dev/null
+++ b/docs/html/ndk/reference/_book.yaml
@@ -0,0 +1,60 @@
+toc:
+- title: Asset Manager
+ path: /ndk/reference/group___asset.html
+ section:
+ - title: asset_manager.h
+ path: /ndk/reference/asset__manager_8h.html
+ - title: asset_manager_jni.h
+ path: /ndk/reference/asset__manager__jni_8h.html
+
+- title: Bitmap
+ path: /ndk/reference/group___bitmap.html
+ section:
+ - title: bitmap.h
+ path: /ndk/reference/bitmap_8h.html
+
+- title: Configuration
+ path: /ndk/reference/group___configuration.html
+ section:
+ - title: configuration.h
+ path: /ndk/reference/configuration_8h.html
+
+- title: Input
+ path: /ndk/reference/group___input.html
+ section:
+ - title: input.h
+ path: /ndk/reference/input_8h.html
+ - title: keycodes.h
+ path: /ndk/reference/keycodes_8h.html
+
+- title: Looper
+ path: /ndk/reference/group___looper.html
+ section:
+ - title: looper.h
+ path: /ndk/reference/looper_8h.html
+
+- title: Native Activity and Window
+ path: /ndk/reference/group___native_activity.html
+ section:
+ - title: native_activity.h
+ path: /ndk/reference/native__activity_8h.html
+ - title: native_window.h
+ path: /ndk/reference/native__window_8h.html
+ - title: native_window.h
+ path: /ndk/reference/native__window__jni_8h.html
+ - title: rect.h
+ path: /ndk/reference/rect_8h.html
+
+- title: Sensor
+ path: /ndk/reference/group___sensor.html
+ section:
+ - title: sensor.h
+ path: /ndk/reference/sensor_8h.html
+
+- title: Storage Manager
+ path: /ndk/reference/group___storage.html
+ section:
+ - title: storage_manager.h
+ path: /ndk/reference/storage__manager_8h.html
+ - title: obb.h
+ path: /ndk/reference/obb_8h.html
diff --git a/docs/html/ndk/samples/_book.yaml b/docs/html/ndk/samples/_book.yaml
new file mode 100644
index 0000000..3665f5a
--- /dev/null
+++ b/docs/html/ndk/samples/_book.yaml
@@ -0,0 +1,13 @@
+toc:
+- title: Overview
+ path: /ndk/samples/index.html
+
+- title: Walkthroughs
+ path: /ndk/samples/walkthroughs.html
+ section:
+ - title: hello-jni
+ path: /ndk/samples/sample_hellojni.html
+ - title: native-activity
+ path: /ndk/samples/sample_na.html
+ - title: Teapot
+ path: /ndk/samples/sample_teapot.html
diff --git a/docs/html/preview/_book.yaml b/docs/html/preview/_book.yaml
new file mode 100644
index 0000000..85e3bd3
--- /dev/null
+++ b/docs/html/preview/_book.yaml
@@ -0,0 +1,94 @@
+toc:
+- title: Program Overview
+ path: /preview/overview.html
+ custom_link_attributes:
+ - es-lang: "Información general del programa"
+ - ja-lang: "プログラム概要"
+ - ko-lang: "프로그램 개요"
+ - pt-br-lang: "Visão geral do programa"
+ - ru-lang: "Обзор программы"
+ - zh-cn-lang: "计划概览"
+ - zh-tw-lang: "程式總覽"
+
+- title: Support and Release Notes
+ path: /preview/support.html
+
+- title: Set Up to Develop
+ path: /preview/setup-sdk.html
+ custom_link_attributes:
+ - es-lang: "Configurar el SDK de la versión preliminar"
+ - ja-lang: "Preview SDK のセットアップ"
+ - ko-lang: "미리 보기 SDK 설정하기"
+ - pt-br-lang: "Configuração do Preview SDK"
+ - ru-lang: "Настройка пакета SDK Preview"
+ - zh-cn-lang: "设置预览版 SDK"
+ - zh-tw-lang: "設定預覽版 SDK"
+
+- title: Test on a Device
+ path: /preview/download.html
+
+- title: Behavior Changes
+ path: /preview/behavior-changes.html
+ custom_link_attributes:
+ - es-lang: "Cambios en los comportamientos"
+ - ja-lang: "動作の変更点"
+ - ko-lang: "동작 변경"
+ - pt-br-lang: "Mudanças de comportamento"
+ - ru-lang: "Изменения в работе"
+ - zh-cn-lang: "行为变更"
+ - zh-tw-lang: "行為變更"
+ section:
+ - title: Background Optimizations
+ path: /preview/features/background-optimization.html
+ - title: Language and Locale
+ path: /preview/features/multilingual-support.html
+
+- title: Android N for Developers
+ path: /preview/api-overview.html
+ custom_link_attributes:
+ - es-lang: "Información general de la API"
+ - ja-lang: "API の概要"
+ - ko-lang: "API 개요"
+ - pt-br-lang: "Visão geral da API"
+ - ru-lang: "Обзор API-интерфейсов"
+ - zh-cn-lang: "API 概览"
+ - zh-tw-lang: "API 總覽"
+ section:
+ - title: Multi-Window Support
+ path: /preview/features/multi-window.html
+ - title: Notifications
+ path: /preview/features/notification-updates.html
+ - title: Data Saver
+ path: /preview/features/data-saver.html
+ - title: TV Recording
+ path: /preview/features/tv-recording-api.html
+ - title: Network Security Configuration
+ path: /preview/features/security-config.html
+ - title: ICU4J Support
+ path: /preview/features/icu4j-framework.html
+ - title: Java 8 Language Features
+ path: /preview/j8-jack.html
+ - title: Android for Work Updates
+ path: /preview/features/afw.html
+
+- title: Samples
+ path: /preview/samples.html
+ custom_link_attributes:
+ - es-lang: "Ejemplos"
+ - ja-lang: "サンプル"
+ - ko-lang: "샘플"
+ - pt-br-lang: "Exemplos"
+ - ru-lang: "Примеры"
+ - zh-cn-lang: "示例"
+ - zh-tw-lang: "範例"
+
+- title: License Agreement
+ path: /preview/license.html
+ custom_link_attributes:
+ - es-lang: "Contrato de licencia"
+ - ja-lang: "使用許諾契約"
+ - ko-lang: "라이선스 계약"
+ - pt-br-lang: "Contrato de licença"
+ - ru-lang: "Лицензионное соглашение"
+ - zh-cn-lang: "许可协议"
+ - zh-tw-lang: "授權協議"
diff --git a/docs/html/preview/api-overview.jd b/docs/html/preview/api-overview.jd
new file mode 100644
index 0000000..478f068
--- /dev/null
+++ b/docs/html/preview/api-overview.jd
@@ -0,0 +1,703 @@
+page.title=Android N for Developers
+meta.tags="preview", "androidn"
+page.tags="preview", "developer preview"
+page.image=images/cards/card-n-apis_2x.png
+@jd:body
+
+
+
+
+<div id="qv-wrapper">
+<div id="qv">
+ <h2>Key developer features</h2>
+ <ol>
+ <ul style="list-style-type:none;">
+ <li><a href="#multi-window_support">Multi-window support</a></li>
+ <li><a href="#notification_enhancements">Notifications</a></li>
+ <li><a href="#jit_aot">JIT/AOT compilation</a></li>
+ <li><a href="#quick_path_to_app_install">Quick path to app install</a></li>
+ <li><a href="#doze_on_the_go">Doze on the go</a></li>
+ <li><a href="#background_optimizations">Background optimizations</a></li>
+ <li><a href="#data_saver">Data Saver</a></li>
+ <li><a href="#tile_api">Quick Settings Tile API</a></li>
+ <li><a href="#number-blocking">Number-blocking</a></li>
+ <li><a href="#call_screening">Call screening</a></li>
+ <li><a href="#multi-locale_languages">Locales and languages</a></li>
+ <li><a href="#icu4">ICU4J APIs in Android</a></li>
+ <li><a href="#gles_32">OpenGL ES 3.2 API</a></li>
+ <li><a href="#android_tv_recording">Android TV recording</a></li>
+ <li><a href="#android_for_work">Android for Work</a></li>
+ <li><a href="#accessibility_enhancements">Accessibility</a></li>
+ <li><a href="#direct_boot">Direct Boot</a></li>
+ <li><a href="#key_attestation">Key Attestation</a></li>
+ <li><a href="#network_security_config">Network Security Config</a></li>
+ <li><a href="#default_trusted_ca">Default Trusted CA</a></li>
+ <li><a href="apk_signature_v2">APK signature scheme v2</a></li>
+ <li><a href="#scoped_directory_access">Scoped directory access</a></li>
+ </ol>
+</div>
+</div>
+
+
+
+<p>Android N is still in active development, but you can try it
+now as part of the N Developer Preview. The sections below highlight some of
+the new features for developers. </p>
+
+<p>
+ Make sure to check out the <a href=
+ "{@docRoot}preview/behavior-changes.html">Behavior Changes</a> to learn about
+ areas where platform changes may affect your apps, take a look at the
+ developer guides to learn more about key features, and download the <a href=
+ "{@docRoot}preview/setup-sdk.html#docs-dl">API Reference</a> for details on
+ new APIs.
+</p>
+
+<h2 id="multi-window_support">Multi-window support</h2>
+
+
+<p>In Android N, we're introducing a new and much-requested multitasking feature
+into the platform — multi-window support. </p>
+
+ <p>Users can now pop open two apps on the screen at once. </p>
+ <ul>
+ <li>On phones and tablets
+running Android N, users can run two apps side-by-side or
+one-above-the-other in splitscreen mode. Users can resize the apps by dragging
+the divider between them. </li>
+
+<li>On Android TV devices, apps can put themselves in <a
+href="{@docRoot}preview/features/picture-in-picture.html">picture-in-picture
+mode</a>, allowing them to continue showing content while the user browses or
+interacts with other apps.</li>
+ </ul>
+
+<div class="col-4of10">
+<img src="{@docRoot}preview/images/mw-portrait.png" alt="" style="height:460px;padding-left:1em;"
+ id="img-split-screen" />
+<p class="img-caption">
+ <strong>Figure 1.</strong> Apps running in split-screen mode.
+</p>
+ </div>
+
+<p>Especially on tablets and other larger-screen devices, multi-window support
+gives you new ways to engage users. You can even enable drag-and-drop in
+your app to let users conveniently drag content to or from your app — a great
+way to enhance your user experience. </p>
+
+<p>It's straightforward to add multi-window support to your app and configure how it
+handles multi-window display. For example, you can specify your activity's
+minimum allowable dimensions, preventing users from resizing the activity below
+that size. You can also disable multi-window display for your app, which
+ ensures that the system will only show your app in full-screen mode.</p>
+
+<p>
+ For more information, see the <a href=
+ "{@docRoot}preview/features/multi-window.html">Multi-Window Support</a>
+ developer documentation.
+</p>
+
+<h2 id="notification_enhancements">Notification enhancements</h2>
+
+<p>In Android N we've redesigned notifications to make them easier and faster to
+use. Some of the changes include:</p>
+
+<ul>
+ <li>
+ <strong>Template updates</strong>: We're updating notification templates to
+ put a new emphasis on hero image and avatar. Developers will be able to
+ take advantage of the new templates with minimal adjustments in their code.
+ </li>
+
+ <li>
+ <strong>Bundled notifications</strong>: The system can group messages
+ together, for example by message topic, and display the group. A user can
+ take actions, such as Dismiss or Archive, on them in place. If you’ve
+ implemented notifications for Android Wear, you’ll already be familiar with
+ this model.
+ </li>
+
+ <li>
+ <strong>Direct reply</strong>: For real-time communication apps, the
+ Android system supports inline replies so that users can quickly respond to
+ an SMS or text message directly within the notification interface.
+ </li>
+
+ <li>
+ <strong>Custom views</strong>: Two new APIs enable you to leverage system
+ decorations, such as notification headers and actions, when using custom
+ views in notifications.
+ </li>
+</ul>
+
+<div class="col-4of12">
+ <img src="{@docRoot}preview/images/notifications-1.png" alt=""
+ style="padding:.5em;max-width:226px">
+</div>
+
+<div class="col-4of12">
+ <img src="{@docRoot}preview/images/notifications-3.png" alt=""
+ style="padding:.5em;max-width:226px">
+</div>
+
+<div class="col-4of12">
+ <img src="{@docRoot}preview/images/notifications-2.png" alt=""
+ style="padding:.5em;max-width:226px">
+</div>
+
+
+<p class="img-caption">
+ <strong>Figure 2.</strong> Bundled notifications and direct reply.
+</p>
+
+<p>To learn how to implement the new features, see the
+ <a href="{@docRoot}preview/features/notification-updates.html">Notifications</a>
+ guide.</p>
+
+
+
+<h2 id="jit_aot">Profile-guided JIT/AOT compilation</h2>
+
+<p>In Android N, we've added a Just in Time (JIT) compiler with code profiling to
+ART, which lets it constantly improve the performance of Android apps as they
+run. The JIT compiler complements ART's current Ahead of Time (AOT) compiler
+and helps improve runtime performance, save storage space, and speed up app
+updates and system updates.</p>
+
+<p>Profile-guided compilation lets ART manage the AOT/JIT compilation for each app
+according to its actual usage, as well as conditions on the device. For
+example, ART maintains a profile of each app's hot methods and can precompile
+and cache those methods for best performance. It leaves other parts of the app
+uncompiled until they are actually used.</p>
+
+<p>Besides improving performance for key parts of the app, profile-guided
+compilation helps reduce an app's overall RAM footprint, including associated
+binaries. This feature is especially important on low-memory devices.</p>
+
+<p>ART manages profile-guided compilation in a way that minimizes impact on the
+device battery. It does precompilation only when then the device is idle and
+charging, saving time and battery by doing that work in advance.</p>
+
+<h2 id="quick_path_to_app_install">Quick path to app install</h2>
+
+<p>One of the most tangible benefits of ART's JIT compiler is the speed of app
+installs and system updates. Even large apps that required several minutes to
+optimize and install in Android 6.0 can now install in just a matter of
+seconds. System updates are also faster, since there's no more optimizing step. </p>
+
+<h2 id="doze_on_the_go">Doze on the go...</h2>
+
+<p>Android 6.0 introduced Doze, a system mode that saves battery by deferring
+apps' CPU and network activities when the device is idle, such as when it's
+sitting on a table or in a drawer. </p>
+
+<p>Now in Android N, Doze takes a step further and saves battery while on the go.
+Any time the screen is off for a period of time and the device is unplugged,
+Doze applies a subset of the familiar CPU and network restrictions to apps.
+This means users can save battery even when carrying their devices in their
+pockets.</p>
+
+
+<img src="/preview/images/doze-diagram-1.png"
+ alt="" id="figure1" />
+<p class="img-caption">
+ <strong>Figure 3.</strong> Doze now applies
+ restrictions to improve battery life even when the device is not stationary.
+</p>
+
+
+<p>A short time after the screen turns off while the device is on battery, Doze
+restricts network access and defers jobs and syncs. During brief maintenance
+windows, applications are allowed network access and any of their deferred
+jobs/syncs are executed. Turning the screen on or plugging in the device brings
+the device out of Doze.</p>
+
+<p>When the device is stationary again, with screen off and on battery for a
+period of time, Doze applies the full CPU and network restrictions on {@link
+android.os.PowerManager.WakeLock}, {@link android.app.AlarmManager} alarms, and
+GPS/Wi-Fi scans.</p>
+
+<p>The best practices for adapting your app to Doze are the same whether the
+device is moving or not, so if you already updated your app to gracefully
+handle Doze, you're all set. If not, start <a
+href="{@docRoot}training/monitoring-device-state/doze-standby.html#assessing_your_app">adapting
+your app to Doze</a> now.</p>
+
+<h2 id="background_optimizations">Project Svelte: Background optimizations</h2>
+
+<p>Project Svelte is an ongoing effort to minimize RAM use by system and apps
+across the range of Android devices in the ecosystem. In Android N, Project
+Svelte is focused on optimizing the way apps run in the background. </p>
+
+<p>Background processing is an essential part of most apps. When handled right, it
+can make your user experience amazing — immediate, fast, and context-aware.
+When not handled right, background processing can needlessly consume RAM (and
+battery) and affect system performance for other apps. </p>
+
+<p>Since Android 5.0, {@link android.app.job.JobScheduler} has been the
+preferred way of performing background work in a way that's good
+for users. Apps can schedule jobs while letting the system optimize based on
+memory, power, and connectivity conditions. JobScheduler offers control and
+simplicity, and we want all apps to use it. </p>
+
+<p>
+ Another good option is <a href=
+ "https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmNetworkManager">
+ <code>GCMNetworkManager</code></a>, part of Google Play Services, which
+ offers similar job scheduling with compatibility across legacy versions of
+ Android.
+</p>
+
+<p>We're continuing to extend <code>JobScheduler</code> and
+<code>GCMNetworkManager</code> to meet more of
+your use cases — for example, in Android N you can now schedule background
+work based on changes in Content Providers. At the same time we're starting to
+deprecate some of the older patterns that can reduce system performance,
+especially on low-memory devices.</p>
+
+<p>In Android N we're removing three commonly-used implicit broadcasts —
+ {@link android.net.ConnectivityManager#CONNECTIVITY_ACTION}, {@link
+ android.hardware.Camera#ACTION_NEW_PICTURE}, and {@link
+ android.hardware.Camera#ACTION_NEW_VIDEO} — since those can wake the
+background processes of multiple apps at once and strain memory and battery. If
+your app is receiving these, take advantage of the N Developer Preview to
+ migrate to <code>JobScheduler</code> and related APIs instead. </p>
+
+<p>
+ Take a look at the <a href=
+ "{@docRoot}preview/features/background-optimization.html">Background
+ Optimizations</a> documentation for details.
+</p>
+
+
+<h2 id="data_saver">Data Saver</h2>
+
+<div class="col-5of12" style="margin-right:1.5em;">
+<img src="{@docRoot}preview/images/datasaver.png" style="border:2px solid #ddd">
+
+<p class="img-caption" style="padding-right:2em;">
+ <strong>Figure 4.</strong> Data Saver in Settings.
+</p>
+ </div>
+
+<p>Over the life of a mobile device, the cost of a cellular data plan typically
+exceeds the cost of the device itself. For many users, cellular data is an
+expensive resource that they want to conserve. </p>
+
+<p>Android N introduces Data Saver mode, a new system service that helps reduce
+cellular data use by apps, whether roaming, near the end of the billing cycle,
+or on a small prepaid data pack. Data Saver gives users control over how apps
+use cellular data and lets developers provide more efficient service when Data
+Saver is on. </p>
+
+<p>When a user enables Data Saver in <strong>Settings</strong> and the device is
+on a metered network, the system blocks background data usage and signals apps
+to use less data in the foreground wherever possible — such as by limiting
+bit rate for streaming, reducing image quality, deferring optimistic precaching,
+and so on. Users can whitelist specific apps to allow background metered data
+usage even when Data Saver is turned on.</p>
+
+<p>Android N extends the {@link android.net.ConnectivityManager} to provide apps a
+way to <a href="{@docRoot}preview/features/data-saver.html#status">retrieve the
+user's Data Saver preferences</a> and <a
+href="{@docRoot}preview/features/data-saver.html#monitor-changes">monitor
+preference changes</a>. All apps should check whether the user has enabled Data
+Saver and make an effort to limit foreground and background data usage.</p>
+
+
+<h2 id="tile_api">Quick Settings Tile API</h2>
+
+
+<div style="float:right;max-width:320px">
+<img src="{@docRoot}preview/images/quicksettings.png" style="padding-left:1.5em;">
+
+<p class="img-caption" style="padding-left:2em;">
+ <strong>Figure 5.</strong> Quick Settings tiles in the notification shade.
+</p>
+
+
+ </div><p>Quick Settings is a popular and simple way to expose key settings and actions,
+directly from the notification shade. In Android N, we've expanded the scope of
+Quick Settings to make it even more useful and convenient. </p>
+
+<p>We've added more room for additional Quick Settings tiles, which users can
+access across a paginated display area by swiping left or right. We've also
+given users control over what Quick Settings tiles appear and where they are
+displayed — users can add or move tiles just by dragging and dropping them. </p>
+
+<p>For developers, Android N also adds a new API that lets you define your own
+ Quick Settings tiles to give users easy access to key controls and actions in your app.</p>
+
+<p>
+ Quick Settings tiles are reserved for controls or actions that are either
+ urgently required or frequently used, and should not be used as shortcuts to
+ launching an app.
+</p>
+
+<p>
+ Once you’ve defined your tiles, you can surface them to users, who can add
+ them to Quick Settings just by drag and drop.
+</p>
+
+<p>
+ For information about creating an app tile, see the
+ <code>android.service.quicksettings.Tile</code> in the downloadable <a href=
+ "{@docRoot}preview/setup-sdk.html#docs-dl">API Reference</a>.
+</p>
+
+
+
+<h2 id="number-blocking">Number-blocking</h2>
+
+<p>Android N now supports number-blocking in the platform and provides a
+framework API to let service providers maintain a blocked-number list. The
+default SMS app, the default phone app, and carrier apps can read from and
+write to the blocked-number list. The list is not accessible to other apps.</p>
+
+<p>By making number-blocking a standard feature of the platform, Android provides
+a consistent way for apps to support number-blocking across a wide range of
+devices. Among the other benefits that apps can take advantage of are:</p>
+
+<ul>
+ <li> Numbers blocked on calls are also blocked on texts
+ <li> Blocked numbers can persist across resets and devices through the Backup &
+Restore feature
+ <li> Multiple apps can use the same blocked numbers list
+</ul>
+
+<p>Additionally, carrier app integration through Android means that carriers can
+read the blocked numbers list on the device and perform service-side blocking
+for the user in order to stop unwanted calls and texts from reaching the user
+through any medium, such as a VOIP endpoint or forwarding phones.</p>
+
+<p>
+ For more information, see <code>android.provider.BlockedNumberContract</code>
+ in the downloadable <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API
+ Reference</a>.
+</p>
+
+<h2 id="call_screening">Call screening</h2>
+
+<p>
+ Android N allows the default phone app to screen incoming calls. The phone
+ app does this by implementing the new <code>CallScreeningService</code>,
+ which allows the phone app to perform a number of actions based on an
+ incoming call's {@link android.telecom.Call.Details Call.Details}, such as:
+</p>
+
+<ul>
+ <li> Reject the incoming call
+ <li> Do not allow the call to the call log
+ <li> Do not show the user a notification for the call
+</ul>
+
+<p>
+ For more information, see <code>android.telecom.CallScreeningService</code>
+ in the downloadable <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API
+ Reference</a>.
+</p>
+
+
+<h2 id="multi-locale_languages">Multi-locale support, more languages</h2>
+
+
+<p>Android N now lets users select <strong>multiple locales</strong> in Settings,
+to better support bilingual use-cases. Apps can use
+a new API to get the user's selected locales and then offer more sophisticated
+user experiences for multi-locale users — such as showing search results in
+multiple languages and not offering to translate webpages in a language the
+user already knows.</p>
+
+<p>Along with multi-locale support, Android N also expands the range of languages
+available to users. It offers more than 25 variants each for commonly used
+languages such as English, Spanish, French, and Arabic. It also adds partial
+support for more than 100 new languages.</p>
+
+<p>Apps can get the list of locales set by the user by calling <code>LocaleList.GetDefault()</code>. To support the expanded number of locales, Android N is changing the way
+that it resolves resources. Make sure that you test and verify that your apps
+working as expected with the new resource resolution logic.</p>
+
+<p>To learn about the new resource-resolution behavior and the best practices you
+should follow, see <a href="{@docRoot}preview/features/multilingual-support.html"
+>Multilingual Support</a>.</p>
+
+<h2 id="icu4">ICU4J APIs in Android</h2>
+
+<p>
+ Android N now offers a subset of <a href=
+ "http://site.icu-project.org/">ICU4J</a> APIs in the Android framework under
+ the <code>android.icu</code> package. Migration is easy, and mostly entails
+ simply changing from the <code>com.java.icu</code> namespace to
+ <code>android.icu</code>. If you are already using an ICU4J bundle in your
+ apps, switching to the <code>android.icu</code> APIs provided in the Android
+ framework can produce substantial savings in APK size.
+</p>
+
+<p>
+ To learn more about the Android ICU4J APIs, see <a href=
+ "{@docRoot}preview/features/icu4j-framework.html">ICU4J Support</a>.
+</p>
+
+
+
+<h2 id="gles_32">OpenGL™ ES 3.2 API</h2>
+
+<p>Android N adds framework interfaces and platform support for OpenGL ES 3.2, including:</p>
+
+<ul>
+ <li> All extensions from the <a class="external-link"
+href="https://www.khronos.org/registry/gles/extensions/ANDROID/ANDROID_extension_pack_es31a.txt">Android Extension Pack</a></a> (AEP) except for <code>EXT_texture_sRGB_decode</code>.
+ <li> Floating-point framebuffers for HDR and deferred shading.
+ <li> BaseVertex draw calls to enable better batching and streaming.
+ <li> Robust buffer access control to reduce WebGL overhead.
+</ul>
+
+<p>The framework API for OpenGL ES 3.2 on Android N is provided with the
+<code>GLES32</code> class. When using OpenGL ES 3.2, be sure to declare the
+requirement in your manifest file, using the <code><uses-feature></code> tag and
+the <code>android:glEsVersion</code> attribute. </p>
+
+<p>For information about using OpenGL ES, including how to check a device's
+supported OpenGL ES version at runtime, see the <a
+href="{@docRoot}guide/topics/graphics/opengl.html">OpenGL ES API guide</a>.</p>
+
+
+<h2 id="android_tv_recording">Android TV recording</h2>
+
+<p>Android N adds the ability to record and playback content from Android TV input
+services via new recording APIs. Building on top of existing time-shifting
+APIs, TV input services can control what channel data can be recorded, how
+recorded sessions are saved, and manage user interaction with recorded content. </p>
+
+<p>For more information, see <a
+href="{@docRoot}preview/features/tv-recording-api.html">Android TV Recording APIs</a>.</p>
+
+
+<h2 id="android_for_work">Android for Work</h2>
+
+<p>Android for Work adds many new features and APIs for devices running Android N.
+Some highlights are below — for a complete list of changes, see
+<a href="{@docRoot}preview/features/afw.html">Android for Work Updates</a>.</p>
+
+<h3 id="work_profile_security_challenge">Work profile security challenge </h3>
+
+<p>
+ Profile owners can specify a separate security challenge for apps running in
+ the work profile. The work challenge is shown when a user attempts to open
+ any work apps. Successful completion of the security challenge unlocks the
+ work profile and decrypts it if necessary. For profile owners,
+ <code>ACTION_SET_NEW_PASSWORD</code> prompts the user to set a work
+ challenge, and <code>ACTION_SET_NEW_PARENT_PROFILE_PASSWORD</code> prompts
+ the user to set a device lock.
+</p>
+
+<p>
+ Profile owners can set distinct password policies for the work challenge
+ (such as how long the PIN needs to be, or whether a fingerprint can be used
+ to unlock the profile) using the <code>setPasswordQuality()</code>,
+ <code>setPasswordMinimumLength()</code> and related methods. The profile
+ owner can also set the device lock using the <code>DevicePolicyManager</code>
+ instance returned by the new <code>getParentProfileInstance()</code> method.
+ Additionally, profile owners can customize the credentials screen for the
+ work challenge using the new <code>setOrganizationColor()</code> and
+ <code>setOrganizationName()</code> methods.
+</p>
+<h3 id="turn_off_work">Turn off work </h3>
+
+<p>On a device with a work profile, users can toggle work mode. When work mode is
+off the managed user is temporarily shut down, which disables work profile
+apps, background sync, and notifications. This includes the profile owner
+application. When work mode is off, the system displays a persistent status
+icon to remind the user that they can't launch work apps. The launcher
+indicates that work apps and widgets are not accessible. </p>
+
+<h3 id="always_on_vpn">Always on VPN </h3>
+
+<p>Device owners and profile owners can ensure that work apps always connect
+through a specified VPN. The system automatically starts that VPN after the
+device boots.</p>
+
+<p>
+ New <code>DevicePolicyManager</code> methods are
+ <code>setAlwaysOnVpnPackage()</code> and
+ <code>getAlwaysOnVpnPackage()</code>.
+</p>
+
+<p>Because VPN services can be bound directly by the system without app
+interaction, VPN clients need to handle new entry points for Always on VPN. As
+before, services are indicated to the system by an intent filter matching
+action <code>android.net.VpnService</code>. </p>
+
+<p>
+ Users can also manually set Always on VPN clients that implement
+ <code>VPNService</code> methods in the primary user using
+ <strong>Settings>More>Vpn</strong>.
+</p>
+
+<h2 id="accessibility_enhancements">Accessibility enhancements</h2>
+
+<p>Android N now offers Vision Settings directly on the Welcome screen for new
+device setup. This makes it much easier for users to discover and configure
+accessibility features on their devices, including magnification gesture, font
+size, display size, and TalkBack. </p>
+
+<p>With these accessibility features getting more prominent placement, your users
+are more likely to try your app with them enabled. Make sure you test your apps
+early with these settings enabled. You can enable them from Settings >
+Accessibility.</p>
+
+<p>Also in Android N, accessibility services can now help users with motor
+impairments to touch the screen. The new API allows building services with
+features such as face-tracking, eye-tracking, point scanning, and so on, to
+meet the needs of those users.</p>
+
+<p>For more information, see <code>android.accessibilityservice.GestureDescription</code>
+ in the downloadable <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API Reference</a>.</p>
+
+
+<h2 id="direct_boot">Direct boot</h2>
+
+<p>Direct boot improves device startup times and lets registered
+apps have limited functionality even after an unexpected reboot.
+For example, if an encrypted device reboots while the user is sleeping,
+registered alarms, messages and incoming calls can now continue notify
+the user as normal. This also means accessibility services can also be
+ available immediately after a restart.</p>
+
+<p>Direct boot takes advantage of file based encryption in Android N
+to enable fine grained encryption policies for both system and app data.
+The system uses a device-encrypted store for select system data and explicitly
+registered app data. By default a credential-encrypted store is used for all
+ other system data, user data, apps, and app data. </p>
+
+<p>At boot, the system starts in a restricted mode with access to
+device-encrypted data only, and without general access to apps or data.
+If you have components that you want to run in this mode, you can register
+them by setting a flag in the manifest. After restart, the system activates
+registered components by broadcasting the <code>LOCKED_BOOT_COMPLETED</code>
+intent. The system ensures registered device-encrypted app data is available
+before unlock. All other data is unavailable until the User confirms their lock
+ screen credentials to decrypt it. </p>
+
+For more information, see <a href="{@docRoot}preview/features/direct-boot.html">Direct Boot</a>.</p>
+</p>
+
+
+<h2 id="key_attestation">Key Attestation</h2>
+
+<p>Hardware-backed keystores provide a much safer method to create, store,
+and use cryptographic keys on Android devices. They protect keys from the
+Linux kernel, potential Android vulnerabilities, and extraction
+from rooted devices.</p>
+
+<p>To make it easier and more secure to use hardware-backed keystores,
+Android N introduces Key Attestation. Apps and off-devices can use Key
+Attestation to strongly determine whether an RSA or EC key pair is
+hardware-backed, what the properties of the key pair are, and what
+ constraints are applied to its usage and validity. </p>
+
+<p>Apps and off-device services can request information about a key pair
+through an X.509 attestation certificate which must be signed by a valid
+attestation key. The attestation key is an ECDSA signing key which is
+injected into the device’s hardware-backed keystore at the factory.
+Therefore, an attestation certificate signed by a valid attestation
+key confirms the existence of a hardware-backed keystore, along with
+ details of key pairs in that keystore.</p>
+
+<p>To ensure that the device is using a secure, official Android factory
+image, Key Attestation requires that the device <a
+class="external-link"
+href="https://source.android.com/security/verifiedboot/verified-boot.html#bootloader_requirements">bootloader</a>
+provide the following information to the <a class="external-link"
+href="https://source.android.com/security/trusty/index.html">Trusted
+Execution Environment (TEE)</a>:</p>
+
+<ul>
+<li>The OS version and patch level installed on the device</li>
+<li>The <a href="https://source.android.com/security/verifiedboot/index.html"
+class="external-link" >Verified Boot</a> public key and lock status</li>
+ </ul>
+
+<p>For more information about the hardware-backed keystore feature,
+see the guide for <a href="https://source.android.com/security/keystore/"
+class="external-link">Hardware-backed Keystore</a>.</p>
+
+<p>In addition to Key Attestation, Android N also introduces
+ fingerprint-bound keys that are not revoked on fingerprint enrollment.</p>
+
+<h2 id="network_security_config">Network Security Config</h2>
+
+<p>In Android N, apps can customize the behavior of their secure (HTTPS, TLS)
+connections safely, without any code modification, by using the declarative
+<em>Network Security Config</em> instead of using the conventional
+error-prone programmatic APIs (e.g. X509TrustManager).</p>
+
+ <p>Supported features:</p>
+<ul>
+<li><b>Custom trust anchors.</b> Lets an application customize which
+Certificate Authorities (CA) are trusted for its secure connections. For
+example, trusting particular self-signed certificates or a restricted set of public CAs.
+</li>
+<li><b>Debug-only overrides.</b> Lets an application developer safely debug
+secure connections of their application without added risk to the installed
+base.
+</li>
+<li><b>Cleartext traffic opt-out.</b> Lets an application protect itself from
+accidental usage of cleartext traffic.</li>
+<li><b>Certificate pinning.</b> An advanced feature that lets an application
+ limit which server keys are trusted for secure connections.</li>
+</ul>
+
+<p>For more information, see <a
+href="{@docRoot}preview/features/security-config.html">Network Security
+Config</a>.</p>
+
+<h2 id="default_trusted_ca">Default Trusted Certificate Authority</h2>
+
+<p>By default, apps that target Android N only trust system-provided certificates
+and no longer trust user-added Certificate Authorities (CA). Apps targeting Android
+N that wish to trust user-added CAs should use the
+<a href="{@docRoot}preview/features/security-config.html">Network Security Config</a> to
+specify how user CAs should be trusted.</p>
+
+<h2 id="apk_signature_v2">APK signature scheme v2</h2>
+
+<p>The PackageManager class now supports verifying apps using the APK
+signature scheme v2. The APK signature scheme v2 is a whole-file signature scheme
+that significantly improves verification speed and strengthens integrity
+ guarantees by detecting any unauthorized changes to APK files.</p>
+
+<p>To maintain backward-compatibility, an APK must be signed with the v1 signature
+scheme (JAR signature scheme) before being signed with the v2 signature scheme.
+With the v2 signature scheme, verification fails if you sign the APK with an
+ additional certificate after signing with the v2 scheme. </p>
+
+<p>APK signature scheme v2 support will be available later in the N Developer
+Preview.</p>
+
+<h2 id="scoped_directory_access">Scoped directory access</h2>
+
+<p>In Android N, apps can use new APIs to request access to specific <a
+href="{@docRoot}guide/topics/data/data-storage.html#filesExternal">external
+storage</a> directories, including directories on removable media such as SD
+cards. The new APIs greatly simplify how your application accesses standard
+external storage directories, such as the <code>Pictures</code> directory. Apps
+like photo apps can use these APIs instead of using
+<code>READ_EXTERNAL_STORAGE</code>, which grants access to all storage
+directories, or the Storage Access Framework, which makes the user navigate to
+the directory.</p>
+
+<p>Additionally, the new APIs simplify the steps a user takes to grant external
+storage access to your app. When you use the new APIs, the system uses a simple
+permissions UI that clearly details what directory the application is
+requesting access to.</p>
+
+<p>For more information, see the
+<a href="{@docRoot}preview/features/scoped-folder-access.html">Scoped
+Directory Access</a> developer documentation.</p>
+
+
+
+
+
+
diff --git a/docs/html/preview/behavior-changes.jd b/docs/html/preview/behavior-changes.jd
new file mode 100644
index 0000000..245fa88
--- /dev/null
+++ b/docs/html/preview/behavior-changes.jd
@@ -0,0 +1,529 @@
+page.title=Behavior Changes
+page.keywords=preview,sdk,compatibility
+meta.tags="preview", "compatibility"
+page.tags="preview", "developer preview"
+page.image=images/cards/card-n-changes_2x.png
+@jd:body
+
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>In this document</h2>
+
+<ol>
+ <li><a href="#perf">Performance Improvements</a>
+ <ol>
+ <li><a href="#doze">Doze</a></li>
+ <li><a href="#bg-opt">Background Optimizations</a></li>
+ </ol>
+ </li>
+ <li><a href="#perm">Permissions Changes</a>
+ <ol>
+ <li><a href="#permfilesys">File System Permission Changes</a></li>
+ </ol>
+ </li>
+ <li><a href="#accessibility">Accessibility Improvements</a>
+ <ol>
+ <li><a href="#screen-zoom">Screen Zoom</a></li>
+ <li><a href="#vision-settings">Vision Settings in Setup Wizard</a></li>
+ </ol>
+ </li>
+ <li><a href="#ndk">NDK Apps Linking to Platform Libraries</a></li>
+ <li><a href="#afw">Android for Work</a></li>
+</ol>
+
+<h2>See Also</h2>
+<ol>
+ <li><a href="{@docRoot}preview/api-overview.html">
+ Android N API Overview</a></li>
+</ol>
+
+</div>
+</div>
+
+
+<p>
+ Along with new features and capabilities, Android N
+ includes a variety of system and API behavior changes. This document
+ highlights some of the key changes that you should understand and account for
+ in your apps.
+</p>
+
+<p>
+ If you have previously published an app for Android, be aware that your app
+ might be affected by these changes in the platform.
+</p>
+
+
+<h2 id="perf">Performance Improvements</h2>
+
+<p>
+ Android N contains system behavior changes aimed at improving the battery
+ life of devices, RAM usage, and app performance. These changes can impact the
+ availability of system resources and system notifications to your app. You
+ should review these changes and evaluate how your app may need to adjust to
+ them.
+</p>
+
+<h3 id="doze">Doze</h3>
+
+<p>
+ Introduced in Android 6.0 (API level 23), Doze improves battery life by
+ deferring CPU and network activities when a user leaves a device unplugged,
+ stationary, and with the screen turned off. Android N brings further
+ enhancements to Doze by applying a subset of CPU and network restrictions
+ while the device is unplugged with the screen turned off, but not necessarily
+ stationary, for example, when a handset is traveling in a user’s pocket.
+</p>
+
+
+<img src="{@docRoot}preview/images/doze-diagram-1.png"
+ alt="" height="251px" id="figure1" />
+<p class="img-caption">
+ <strong>Figure 1.</strong> Illustration of how Doze applies a first level of
+ system activity restrictions to improve battery life.
+</p>
+
+<p>
+ When a device is on battery power, and the screen has been off for a certain
+ time, the device enters Doze and applies the first subset of restrictions: It
+ shuts off app network access, and defers jobs and syncs. If the device is
+ stationary for a certain time after entering Doze, the system applies the
+ rest of the Doze restrictions to {@link android.os.PowerManager.WakeLock},
+ {@link android.app.AlarmManager} alarms, GPS, and Wi-Fi scans. Regardless of
+ whether some or all Doze restrictions are being applied, the system wakes the
+ device for brief maintenance windows, during which applications are allowed
+ network access and can execute any deferred jobs/syncs.
+</p>
+
+
+<img src="{@docRoot}preview/images/doze-diagram-2.png"
+ alt="" id="figure2" />
+<p class="img-caption">
+ <strong>Figure 2.</strong> Illustration of how Doze applies a second level of
+ system activity restrictions after the device is stationary for a certain time.
+</p>
+
+<p>
+ Note that activating the screen on or plugging in the device exits Doze and
+ removes these processing restrictions. The additional behavior does not
+ affect recommendations and best practices in adapting your app to the prior
+ version of Doze introduced in Android 6.0 (API level 23), as discussed in
+ <a href="{@docRoot}training/monitoring-device-state/doze-standby.html">
+ Optimizing for Doze and App Standby</a>. You should still
+ follow those recommendations, such as using Google Cloud Messaging (GCM) to
+ send and receive messages, and start planning updates to accomodate the
+ additional Doze behavior.
+</p>
+
+
+<h3 id="bg-opt">Project Svelte: Background Optimizations</h3>
+
+<p>
+ Android N removes three implicit broadcasts in order to help optimize both
+ memory use and power consumption. This change is necessary because implicit
+ broadcasts frequently start apps that have registered to listen for them in
+ the background. Removing these broadcasts can substantially benefit device
+ performance and user experience.
+</p>
+
+<p>
+ Mobile devices experience frequent connectivity changes, such as when moving
+ between Wi-Fi and mobile data. Currently, apps can monitor for changes in
+ connectivity by registering a receiver for the implicit {@link
+ android.net.ConnectivityManager#CONNECTIVITY_ACTION} broadcast in their
+ manifest. Since many apps register to receive this broadcast, a single
+ network switch can cause them all to wake up and process the broadcast at
+ once.
+</p>
+
+<p>
+ Similarly, apps can register to receive implicit {@link
+ android.hardware.Camera#ACTION_NEW_PICTURE} and {@link
+ android.hardware.Camera#ACTION_NEW_VIDEO} broadcasts from other apps, such as
+ Camera. When a user takes a picture with the Camera app, these apps wake up
+ to process the broadcast.
+</p>
+
+<p>
+ To alleviate these issues, Android N applies the following
+ optimizations:
+</p>
+
+<ul>
+ <li>Apps targeting Android N do not receive {@link
+ android.net.ConnectivityManager#CONNECTIVITY_ACTION} broadcasts, even if they
+ have manifest entries to request notification of these events. Apps running
+ in the foreground can still listen for {@code CONNECTIVITY_CHANGE} on their
+ main thread if they request notification with a {@link
+ android.content.BroadcastReceiver}.
+ </li>
+
+ <li>Apps cannot send or receive {@link
+ android.hardware.Camera#ACTION_NEW_PICTURE} or {@link
+ android.hardware.Camera#ACTION_NEW_VIDEO} broadcasts. This optimization
+ affects all apps, not only those targeting Android N.
+ </li>
+</ul>
+
+<p>If your app uses any of these intents, you should remove dependencies
+ on them as soon as possible so that you can target Android N devices properly.
+ The Android framework provides several solutions to mitigate the need for
+ these implicit broadcasts. For example, the {@link
+ android.app.job.JobScheduler} API provides a robust mechanism to schedule
+ network operations when specified conditions, such as connection to an
+ unmetered network, are met. You can even use {@link
+ android.app.job.JobScheduler} to react to changes to content providers.
+</p>
+
+<p>
+ For more information about background optimizations in N and how to adapt your app,
+ see <a href=
+ "{@docRoot}preview/features/background-optimization.html">Background
+ Optimizations</a>.
+</p>
+
+
+<h2 id="perm">Permissions Changes</h2>
+
+<p>
+ Android N includes changes to permissions that may affect your app,
+ including user accounts permissions and a new permission for writing to
+ external storage. Here is a summary of the permissions that have changed in
+ the preview:
+</p>
+
+<ul>
+ <li>{@code GET_ACCOUNTS} (Deprecated)
+ <p>
+ The GET_ACCOUNTS permission is now deprecated. The system ignores this
+ permission for apps that target Android N.
+ </p>
+ </li>
+
+</ul>
+
+<h3 id="permfilesys">File system permission changes</h3>
+
+<p>
+ In order to improve the security of private files, the private directory of
+ apps targeting Android N or higher has restricted access (0700). This prevents
+ leakage of metadata of private files, such as their size or existence. This
+ has multiple side effects:
+</p>
+
+<ul>
+ <li>
+ Private files’ file permissions can no longer be relaxed by the owner, and
+ an attempt to do so using
+ {@link android.content.Context#MODE_WORLD_READABLE} and/or
+ {@link android.content.Context#MODE_WORLD_WRITEABLE}, will trigger a
+ {@link java.lang.SecurityException}.
+ </li>
+ <li>
+ Passing <code>file://</code> URIs outside the package domain may leave the
+ receiver with an unaccessible path. Therefore, attempts to pass a
+ <code>file://</code> URI trigger a
+ <code>FileUriExposedException</code>. The recommended way to share the
+ content of a private file is using the {@link
+ android.support.v4.content.FileProvider}.
+ </li>
+ <li>
+ The {@link android.app.DownloadManager} can no longer share privately
+ stored files by filename. Legacy applications may end up with an
+ unaccessible path when accessing {@link
+ android.app.DownloadManager#COLUMN_LOCAL_FILENAME}. Apps targeting
+ Android N or higher trigger a {@link java.lang.SecurityException} when
+ attempting to access
+ {@link android.app.DownloadManager#COLUMN_LOCAL_FILENAME}.
+ Legacy applications that set the download location to a public location by
+ using
+ {@link
+ android.app.DownloadManager.Request#setDestinationInExternalFilesDir} or
+ {@link
+ android.app.DownloadManager.Request#setDestinationInExternalPublicDir}
+ can still access the path in
+ {@link android.app.DownloadManager#COLUMN_LOCAL_FILENAME}, however, this
+ method is strongly discouraged. The preferred way of accessing a file
+ exposed by the {@link android.app.DownloadManager} is using
+ {@link android.content.ContentResolver#openFileDescriptor}.
+ </li>
+</ul>
+
+<h2 id="accessibility">Accessibility Improvements</h2>
+
+<p>
+ Android N includes changes intended to improve the usability of the
+ platform for users with low or impaired vision. These changes should
+ generally not require code changes in your app, however you should review
+ these feature and test them with your app to assess potential impacts to user
+ experience.
+</p>
+
+
+<h3 id="screen-zoom">Screen Zoom</h3>
+
+<p>
+ Android N enables users to set <strong>Display size</strong>which magnifies
+ or shrinks all elements on the screen, thereby improving device accessibility
+ for users with low vision. Users cannot zoom the screen past a minimum screen
+ width of <a href=
+ "http://developer.android.com/guide/topics/resources/providing-resources.html">
+ sw320dp</a>, which is the width of a Nexus 4, a common medium-sized phone.
+</p>
+
+<div class="cols">
+
+<div class="col-6">
+ <img src="{@docRoot}preview/images/screen-zoom-1.png" alt="" height="XXX" id="figure1" />
+</div>
+<div class="col-6">
+ <img src="{@docRoot}preview/images/screen-zoom-2.png" alt="" height="XXX" id="figure1" />
+</div>
+
+</div> <!-- end cols -->
+<p class="img-caption">
+ <strong>Figure 3.</strong> The screen on the right shows the effect of
+ increasing the Display size of a device running an Android N system image.
+</p>
+
+
+<p>
+ When the device density changes, the system notifies running apps in the
+ following ways:
+</p>
+
+<ul>
+ <li>If an app targets API level 23 or lower, the system automatically kills
+ all its background processes. This means that if a user switches away from
+ such an app to open the <em>Settings</em> screen and changes the
+ <strong>Display size</strong> setting, the system kills the app in the same
+ manner that it would in a low-memory situation. If the app has any foreground
+ processes, the system notifies those processes of the configuration change as
+ described in <a href="{@docRoot}guide/topics/resources/runtime-changes.html">Handling
+ Runtime Changes</a>, just as if the device's orientation had changed.
+ </li>
+
+ <li>If an app targets Android N, all of its processes
+ (foreground and background) are notified of the configuration change as
+ described in <a href=
+ "{@docRoot}guide/topics/resources/runtime-changes.html">Handling
+ Runtime Changes</a>.
+ </li>
+</ul>
+
+<p>
+ Most apps do not need to make any changes to support this feature, provided
+ the apps follow Android best practices. Specific things to check for:
+</p>
+
+<ul>
+ <li>Test your app on a device with screen width <code><a href=
+ "{@docRoot}guide/topics/resources/providing-resources.html">sw320dp</a></code>
+ and be sure it performs adequately.
+ </li>
+
+ <li>When the device configuration changes, update any density-dependent
+ cached information, such as cached bitmaps or resources loaded from the
+ network. Check for configuration changes when the app resumes from the paused
+ state.
+ <p class="note">
+ <strong>Note:</strong> If you cache configuration-dependent data, it's a
+ good idea to include relevant metadata such as the appropriate screen
+ size or pixel density for that data. Saving this metadata allows you to
+ decide whether you need to refresh the cached data after a configuration
+ change.
+ </p>
+ </li>
+
+ <li>Avoid specifying dimensions with px units, since they do not scale with
+ screen density. Instead, specify dimensions with <a href=
+ "{@docRoot}guide/practices/screens_support.html">density-independent
+ pixel</a> (<code>dp</code>) units.
+ </li>
+</ul>
+
+<h3 id="vision-settings">Vision Settings in Setup Wizard</h3>
+
+<p>
+ Android N includes Vision Settings on the Welcome screen, where users can
+ set up the following accessibility settings on a new device:
+ <strong>Magnification gesture</strong>, <strong>Font size</strong>,
+ <strong>Display size</strong> and <strong>TalkBack</strong>. This change
+ increases the visibility of bugs related to different screen settings. To
+ assess the impact of this feature, you should test your apps with these
+ settings enabled. You can find the settings under <strong>Settings >
+ Accessibility</strong>.
+</p>
+
+<h2 id="ndk">NDK Apps Linking to Platform Libraries</h2>
+
+<p>
+ Android N includes namespace changes to prevent loading of non-public APIs.
+ If you use the NDK, you should only be using public APIs from the Android
+ platform. Using non-public APIs in the next official release of Android
+ can cause your app to crash.
+</p>
+
+<p>
+ In order to alert you to use of non-public APIs, apps running on an Android N
+ device generate an error in logcat output when an app calls a non-public API.
+ This error is also displayed on the device screen as a message to help
+ raise awareness of this situation. You should review your app code to
+ remove use of non-public platform APIs and thoroughly test your apps using
+ a preview device or emulator.
+</p>
+
+<p>
+ If your app depends on platform libraries, see the NDK documentation for
+ typical fixes for replacing common private APIs with public API equivalents.
+ You may also be linking to platform libraries without realizing it,
+ especially if your app uses a library that is part of the platform (such as
+ <code>libpng</code>), but is not part of the NDK. In that case, ensure that
+ your APK contains all the .so files you intended to link against.
+</p>
+
+<p class="caution">
+ <strong>Caution:</strong> Some third-party libraries may link to non-public
+ APIs. If your app uses these libraries, your app may crash when running
+ on the next official release of Android.
+</p>
+
+<p>
+ Apps should not depend on or use native libraries that are not included in
+ the NDK, because they may change, or be removed from one Android release to
+ another. The switch from OpenSSL to BoringSSL is an example of such a change.
+ Also, different devices may offer different levels of compatibility, because
+ there are no compatibility requirements for platform libraries not included
+ in the NDK. If you must access non-NDK libraries on older devices, make the
+ loading dependent on the Android API level.
+</p>
+
+<p>
+ To help you diagnose these types problems here are some example Java and NDK
+ errors you might encounter when attempting to build your app with Android N:
+</p>
+
+<p>Example Java error:</p>
+<pre class="no-pretty-print">
+java.lang.UnsatisfiedLinkError: dlopen failed: library "/system/lib/libcutils.so"
+ is not accessible for the namespace "classloader-namespace"
+</pre>
+
+<p>Example NDK error:</p>
+<pre class="no-pretty-print">
+dlopen failed: cannot locate symbol "__system_property_get" referenced by ...
+</pre>
+
+
+<p>
+ Here are some typical fixes for apps encountering these types of errors:
+</p>
+
+<ul>
+ <li>Use of getJavaVM and getJNIEnv from libandroid_runtime.so can be replaced
+ with standard JNI functions:
+<pre class="no-pretty-print">
+AndroidRuntime::getJavaVM -> GetJavaVM from <jni.h>
+AndroidRuntime::getJNIEnv -> JavaVM::GetEnv or
+JavaVM::AttachCurrentThread from <jni.h>.
+</pre>
+ </li>
+
+ <li>Use of {@code property_get} symbol from {@code libcutils.so} can be
+ replaced with the public {@code alternative __system_property_get}.
+ To do this, use {@code __system_property_get} with the following include:
+<pre>
+#include <sys/system_properties.h>
+</pre>
+ </li>
+
+ <li>Use of {@code SSL_ctrl} symbol from {@code libcrypto.so} should be
+ replaced with an app local version. For example, you should statically link
+ {@code libcyrpto.a} in your {@code .so} file or include your own dynamically
+ {@code libcrypto.so} from BoringSSL or OpenSSL in your app.
+ </li>
+</ul>
+
+<h2 id="afw">Android for Work</h2>
+<p>
+ Android N contains changes for apps that target Android for Work, including
+ changes to certificate installation, password resetting, secondary user
+ management, and access to device identifiers. If you are building apps for
+ Android for Work environments, you should review these changes and modify
+ your app accordingly.
+</p>
+
+<ul>
+ <li>You must install a delegated certificate installer before the DPC can set
+ it. For both profile and device-owner apps targeting the N SDK, you should
+ install the delegated certificate installer before the device policy
+ controller (DPC) calls
+ <code>DevicePolicyManager.setCertInstallerPackage()</code>. If the installer
+ is not already installed, the system throws an
+ <code>IllegalArgumentException</code>.
+ </li>
+
+ <li>Reset password restrictions for device admins now apply to profile
+ owners. Device admins can no longer use
+ <code>DevicePolicyManager.resetPassword()</code> to clear passwords or change
+ ones that are already set. Device admins can still set a password, but only
+ when the device has no password, PIN, or pattern.
+ </li>
+
+ <li>Device and profile owners can manage accounts even if restrictions are
+ set. Device owners and profile owners can call the Account Management APIs
+ even if <code>DISALLOW_MODIFY_ACCOUNTS</code> user restrictions are in place.
+ </li>
+
+ <li>Device owners can manage secondary users more easily. When a device is
+ running in device owner mode, the <code>DISALLOW_ADD_USER</code> restriction
+ is automatically set. This prevents users from creating unmanaged secondary
+ users. In addition, the <code>CreateUser()</code> and
+ <code>createAndInitial()</code> methods are deprecated; the new
+ <code>DevicePolicyManager.createAndManageUser()</code> method replaces them.
+ </li>
+
+ <li>Device owners can access device identifiers. A Device owner can access the
+ Wi-Fi MAC address of a device, using
+ <code>DevicePolicyManagewr.getWifiMacAddress()</code>. If Wi-Fi has never
+ been enabled on the device, this method returns a value of {@code null}.
+ </li>
+</ul>
+
+<p>
+ For more information about changes to Android for Work in Android N, see
+ <a href="{@docRoot}preview/features/afw.html">Android for Work Updates</a>.
+</p>
+
+<h2 id="other">Other important points</h2>
+
+<ul>
+<li>When an app is running on Android N, but targets a lower API level,
+and the user changes display size, the app process is killed. The app
+must be able to gracefully handle this scenario. Otherwise, it crashes
+when the user restores it from Recents.
+
+<p>
+You should test your app to ensure
+that this behavior does not occur.
+You can do so by causing an identical crash
+when killing the app manually via DDMS.
+</p>
+
+<p>
+Apps targeting N and above are not automatically killed on density changes;
+however, they may still respond poorly to configuration changes.
+</p>
+</li>
+
+<li>
+Apps on Android N should be able to gracefully handle configuration changes,
+and should not crash on subsequent starts. You can verify app behavior
+by changing font size (<strong>Setting</strong> >
+<strong>Display</strong> > <strong>Font size</strong>), and then restoring
+the app from Recents.
+</li>
+</ul>
+
diff --git a/docs/html/preview/download-ota.jd b/docs/html/preview/download-ota.jd
new file mode 100644
index 0000000..68f3c74
--- /dev/null
+++ b/docs/html/preview/download-ota.jd
@@ -0,0 +1,323 @@
+page.title=Applying a Device OTA Image
+
+@jd:body
+
+<div style="position:relative; min-height:600px">
+
+ <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
+
+ <p class="sdk-terms-intro">Before downloading and installing components of
+ the Android Preview SDK, you must agree to the following terms and
+ conditions.</p>
+
+ <h2 class="norule">Terms and Conditions</h2>
+
+ <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
+This is the Android SDK Preview License Agreement (the “License Agreement”).
+
+1. Introduction
+
+1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 “Android-compatible” means any Android implemation that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+2. Accepting the License Agreement
+
+2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement.
+
+2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview.
+
+2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity.
+
+3. Preview License from Google
+
+3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the Preview solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this Preview to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this Preview is not used for that purpose.
+
+3.3 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
+
+3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights.
+
+3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview.
+
+4. Use of the Preview by You
+
+4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released.
+
+5. Your Developer Credentials
+
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+6. Privacy and Information
+
+6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/.
+
+7. Third Party Applications
+
+7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party.
+
+8. Using Google APIs
+
+8.1 Google APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+9. Terminating the License Agreement
+
+9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you.
+
+9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of:
+(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and
+(B) Google issues a final release version of the Android SDK.
+
+9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely.
+
+10. DISCLAIMERS
+
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+11. LIMITATION OF LIABILITY
+
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+12. Indemnification
+
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement.
+
+13. Changes to the License Agreement
+
+13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available.
+
+14. General Legal Terms
+
+14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+ </div><!-- sdk terms -->
+
+
+
+ <div id="sdk-terms-form">
+ <p>
+ <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+ <label id="agreeLabel" for="agree">I have read and agree with the above terms and conditions</label>
+ </p>
+ <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+ </div>
+
+
+ </div><!-- end TOS -->
+
+
+ <div id="landing">
+
+<p>
+ This page provides links to over-the-air (OTA) device images and describes
+ how to manually apply an OTA update to a device. This procedure may be useful
+ in recovering devices that received OTA updates through the Android Beta
+ Program and do not start up after the update is installed.
+</p>
+
+<h2 id="install-ota">Installing OTA Images</h2>
+
+<p></p>
+
+<p>To install an OTA package to a device:</p>
+
+<ol>
+ <li>Download an OTA device image from the table below.</li>
+ <li>Reboot the device into Recovery mode. For more information on putting
+ Nexus devices in this mode, see
+ <a href="https://support.google.com/nexus/answer/4596836">Reset your Nexus
+ device to factory settings</a>.
+ </li>
+ <li>On the device, select <strong>ADB sideload</strong>.</li>
+ <li>Connect the device to a computer with the Android development environment
+ loaded and the Android Debug Bridge (adb) tool installed.</li>
+ <li>Run the following command:
+ <pre>adb sideload <em><ota-package></em></pre>
+ </li>
+</ol>
+
+
+
+<h2 id="ota-images">Device OTA Images</h2>
+
+<table>
+ <tr>
+ <th scope="col">Device</th>
+ <th scope="col">Download / Checksums</th>
+ </tr>
+
+ <tr id="bullhead">
+ <td>Nexus 5X <br>"bullhead"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >bullhead-ota-2659757-4fab1a6f.zip</a><br>
+ MD5: 2a3263bb4935cdc7a326298f2cf13535<br>
+ SHA-1: 4fab1a6f1a68d94c02500d7acb15503192455f20
+ </td>
+ </tr>
+
+ <tr id="shamu">
+ <td>Nexus 6 <br>"shamu"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >shamu-ota-2659757-073c33ae.zip</a><br>
+ MD5: c201a9ccdfa5afdd2f1a9967e462098f<br>
+ SHA-1: 073c33aef3ecc5961e0ba92c5611b98f7750fa94
+ </td>
+ </tr>
+
+ <tr id="angler">
+ <td>Nexus 6P <br>"angler"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >angler-ota-2659757-938ecff3.zip</a><br>
+ MD5: 3363c343fafe03b118776738a37623a8<br>
+ SHA-1: 938ecff398f896c21c03615942727493aeae3556
+ </td>
+ </tr>
+
+ <tr id="volantis">
+ <td>Nexus 9 <br>"volantis"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >volantis-ota-NPC56X-2785955f.zip</a><br>
+ MD5: 36d813350fd660ab751a434782f5523f<br>
+ SHA-1: 2785955fd77310106d2fa9f02f93b595d77b8e72
+ </td>
+ </tr>
+
+ <tr id="volantisg">
+ <td>Nexus 9G <br>"volantisg"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >volantisg-ota-NPC56X-d93e161c.zip</a><br>
+ MD5: 1fb7d83cd065a962dbed49e72db97dc4<br>
+ SHA-1: d93e161c15503dc641b654f6ef4c1611222bc9fd
+ </td>
+ </tr>
+
+ <tr id="fugu">
+ <td>Nexus Player <br>"fugu"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >fugu-ota-2665432-f0f8fea4.zip</a><br>
+ MD5: 4403af764b57502d89111fd68ecb7da5<br>
+ SHA-1: f0f8fea49ea3874b751cf67462ecc5d8e039875e
+ </td>
+ </tr>
+
+ <tr id="ryu">
+ <td>Pixel C <br>"ryu"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >ryu-ota-2659757-1e496acd.zip</a><br>
+ MD5: 1ebd7fddb52cba59b7f686a972e023db<br>
+ SHA-1: 1e496acd67b8fdbee7b5c6ef721746f8e98e704f
+ </td>
+ </tr>
+
+</table>
+
+
+ </div><!-- landing -->
+
+</div><!-- relative wrapper -->
+
+
+
+<script>
+ var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/ota/";
+ function onDownload(link) {
+
+ $("#downloadForRealz").html("Download " + $(link).text());
+ $("#downloadForRealz").attr('href', urlRoot + $(link).text());
+
+ $("#tos").fadeIn('fast');
+ $("#landing").fadeOut('fast');
+
+ return true;
+ }
+
+
+ function onAgreeChecked() {
+ /* verify that the TOS is agreed */
+ if ($("input#agree").is(":checked")) {
+ /* reveal the download button */
+ $("a#downloadForRealz").removeClass('disabled');
+ } else {
+ $("a#downloadForRealz").addClass('disabled');
+ }
+ }
+
+ function onDownloadForRealz(link) {
+ if ($("input#agree").is(':checked')) {
+ /*
+ $("#tos").fadeOut('fast');
+ $("#landing").fadeIn('fast');
+ */
+
+ ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
+
+ /*
+ location.hash = "";
+ */
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ $(window).hashchange( function(){
+ if (location.hash == "") {
+ location.reload();
+ }
+ });
+
+</script>
diff --git a/docs/html/preview/download.jd b/docs/html/preview/download.jd
new file mode 100644
index 0000000..59b1cf7
--- /dev/null
+++ b/docs/html/preview/download.jd
@@ -0,0 +1,552 @@
+page.title=Test on a Device
+meta.tags="preview", "nexus","system image"
+page.tags="preview", "androidn"
+page.image=images/cards/card-n-downloads_2x.png
+
+@jd:body
+
+<div style="position:relative; min-height:600px">
+
+ <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
+
+ <p class="sdk-terms-intro">Before downloading and installing components of
+ the Android Preview SDK, you must agree to the following terms and
+ conditions.</p>
+
+ <h2 class="norule">Terms and Conditions</h2>
+
+ <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
+This is the Android SDK Preview License Agreement (the “License Agreement”).
+
+1. Introduction
+
+1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 “Android-compatible” means any Android implemation that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+2. Accepting the License Agreement
+
+2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement.
+
+2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview.
+
+2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity.
+
+3. Preview License from Google
+
+3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the Preview solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this Preview to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this Preview is not used for that purpose.
+
+3.3 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
+
+3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights.
+
+3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview.
+
+4. Use of the Preview by You
+
+4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released.
+
+5. Your Developer Credentials
+
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+6. Privacy and Information
+
+6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/.
+
+7. Third Party Applications
+
+7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party.
+
+8. Using Google APIs
+
+8.1 Google APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+9. Terminating the License Agreement
+
+9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you.
+
+9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of:
+(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and
+(B) Google issues a final release version of the Android SDK.
+
+9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely.
+
+10. DISCLAIMERS
+
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+11. LIMITATION OF LIABILITY
+
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+12. Indemnification
+
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement.
+
+13. Changes to the License Agreement
+
+13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available.
+
+14. General Legal Terms
+
+14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+ </div><!-- sdk terms -->
+
+
+
+ <div id="sdk-terms-form">
+ <p>
+ <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+ <label id="agreeLabel" for="agree">I have read and agree with the above terms and conditions</label>
+ </p>
+ <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+ </div>
+
+
+ </div><!-- end TOS -->
+
+
+ <div id="landing">
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>In this document</h2>
+ <ol>
+ <li><a href="#device-preview">Set up a hardware device</a>
+ <ol>
+ <li><a href="#ota">Get over-the-air updates</a></li>
+ <li><a href="#flash">Manually flash a device</a></li>
+ <li><a href="#revertDevice">Uninstalling</a></li>
+ </ol>
+ </li>
+ <li><a href="#setupAVD">Set up an emulator</a></li>
+ </ol>
+ </div>
+</div>
+
+<p>
+ To run and test your app on the new platform you need to set up an Android N
+ runtime environment. You can do that in either of these ways:
+</p>
+
+<ul>
+ <li>Install Android N on a supported hardware device, or</li>
+ <li>Set up an Android emulator running Android N</li>
+</ul>
+
+<p>
+ If you want an environment for basic compatibility testing of your app on the
+ new platform, all you need is your current APK and a hardware device or
+ emulator. You don't necessarily need to update your full development
+ environment to do basic testing.
+</p>
+
+<p>
+ If you want to modify your app to target Android N or use new Android N APIs,
+ you need to set up a development environment that's updated to support
+ Android N. <a href="{@docRoot}preview/setup-sdk.html">Set Up to Develop for
+ Android N</a> has details.
+</p>
+
+
+<h2 id="device-preview">Set up a hardware device</h2>
+
+<p>
+ The N Developer Preview offers system updates for a range of hardware devices
+ that you can use for testing your app, from phones to tablets and TV.
+</p>
+
+<p>
+ If you have access to a supported device, you can update it to a Developer
+ Preview milestone build in one of these ways:
+</p>
+
+<ul>
+ <li><strong>Enroll the device in automatic OTA system updates</strong> through the
+ <a href="https://g.co/androidbeta">Android Beta Program</a>. Once enrolled, your device will receive regular
+ over-the-air (OTA) updates of all milestone builds in the N Developer Preview. This
+ approach is recommended because it lets you seamlessly transition from your current
+ environment through the various releases of the N Developer Preview.</li>
+ <li><strong>Download a Developer Preview system image and flash the device</strong>.
+ OTA updates are not provided automatically for devices that you flash manually, but
+ you can enroll those devices in Android Beta Program to get OTA updates. </li>
+</ul>
+
+<h3 id="ota">Enroll the device in automatic OTA updates</h3>
+
+<p>
+ If you have access to a supported device (see the list in the Downloads
+ table), you can receive over-the-air updates to preview versions of Android
+ by enrolling that device in the <a href="https://g.co/androidbeta">Android Beta Program</a>. These updates are
+ automatically downloaded and will update your device just like official
+ system updates.
+</p>
+
+<p>
+ You can un-enroll a device at any time. The device will receive an OTA update
+ to the most recent production version of Android available for that device
+ (for example, Android 6.0 Marshmallow). The update requires a full device
+ reset, so user data on the device will be removed. Make sure to <strong>back
+ up important data</strong> before un-enrolling a device.
+</p>
+
+<p>
+ For more information and to enroll your device, see
+ the <a href="https://g.co/androidbeta">Android Beta Program</a> web site.
+</p>
+
+<p class="note"><strong>Note:</strong>
+ Un-enrolling requires a full device reset. Back up
+ important data first.
+</p>
+
+<h3 id="flash">Flashing a device manually</h3>
+
+<p>
+ At any time you can download the latest Developer Preview system image and
+ manually flash it to your device. See the table below to download the system
+ image for your test device. Manually flashing a device is useful if you need
+ precise control over the test environment or need to reinstall frequently,
+ such as for automated testing.
+</p>
+
+<!-- You can flash by ota or system image --><p>
+ Installing a system image on a device <strong>removes all data from the
+ device</strong>, so you should back up your data first.
+</p>
+
+<p>
+ After you back up your device data and download the system image below that
+ matches your device, follow the instructions at <a href=
+ "https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
+ to flash the image onto your device.
+</p>
+
+<p>
+ Manually flashed system images <strong>do not
+ automatically receive OTA updates</strong> to later Developer Preview
+ milestone builds. Make sure to keep your environment up-to-date and flash a
+ new system image at each Developer Preview milestone.
+</p>
+
+<p>
+ If you decide you want to get OTA updates after manually flashing a device,
+ all you need to do is enroll the device in the <a href="https://g.co/androidbeta">Android
+ Beta Program</a>. You can enroll the device at any time to receive the next Preview
+ update over the air.
+</p>
+
+<table>
+ <tr>
+ <th scope="col">Device</th>
+ <th scope="col">Download / Checksums</th>
+ </tr>
+
+ <tr id="bullhead">
+ <td>Nexus 5X <br>"bullhead"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >bullhead-npc56w-preview-d86c7559.tgz</a><br>
+ MD5: d84b6c31a7754e505149594887b3481a<br>
+ SHA-1: d86c7559c93724cca6af91040b012c48529f2c94
+ </td>
+ </tr>
+
+ <tr id="shamu">
+ <td>Nexus 6 <br>"shamu"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >shamu-npc56p-preview-54b13c67.tgz</a><br>
+ MD5: af183638cf34e0eb944a1957d7696f60<br>
+ SHA-1: 54b13c6703d369cc79a8fd8728fe4103c6343973
+ </td>
+ </tr>
+
+ <tr id="angler">
+ <td>Nexus 6P <br>"angler"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >angler-npc56w-preview-2834ca3c.tgz</a><br>
+ MD5: fd5c74f256cf82262779513854869570<br>
+ SHA-1: 2834ca3c425d7a61f5dfabb9d8dd108aec1ab58b
+ </td>
+ </tr>
+
+ <tr id="volantis">
+ <td>Nexus 9 <br>"volantis"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >volantis-npc56x-preview-5c323abd.tgz</a><br>
+ MD5: 474a13915e22d683cab5cf59ed868157<br>
+ SHA-1: 5c323abdec121b2f07fdabaa3d70d12106e450ad
+ </td>
+ </tr>
+
+ <tr id="volantisg">
+ <td>Nexus 9G <br>"volantisg"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >volantisg-npc56x-preview-41ae398c.tgz</a><br>
+ MD5: 5a145a546a4a9f68c2b8e2624cf9832b<br>
+ SHA-1: 41ae398c30536a2d96b04d61b9ef97a043bf59cf
+ </td>
+ </tr>
+
+ <tr id="fugu">
+ <td>Nexus Player <br>"fugu"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >fugu-npc56r-preview-7027d5b6.tgz</a><br>
+ MD5: f5d3d8f75836ccfe4c70e8162e498be4<br>
+ SHA-1: 7027d5b662bceda4c80a91a0a14ef0e5a7ba795b
+ </td>
+ </tr>
+
+ <tr id="ryu">
+ <td>Pixel C <br>"ryu"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >ryu-npc56p-preview-335a86a4.tgz</a><br>
+ MD5: 4e21fb183bbbf467bee91598d587fd2e<br>
+ SHA-1: 335a86a435ee51f18464de343ad2e071c38f0e92
+ </td>
+ </tr>
+ <tr id="seed">
+ <td>General Mobile 4G (Android One) <br>"seed"</td>
+ <td><a href="#top" onclick="onDownload(this)"
+ >seed_l8150-npc56p-preview-82472ebc.tgz</a><br>
+ MD5: 983e083bc7cd0c4a2d39d6ebaa20202a<br>
+ SHA-1: 82472ebc9a6054a103f53cb400a1351913c95127
+ </td>
+ </tr>
+
+</table>
+
+<h3 id="revertDevice">Uninstalling the Preview from a device</h3>
+
+<p>
+ If you want to uninstall the preview from a device, you can do so in one of
+ these ways: </p>
+ <ul>
+ <li><strong>Obtain a factory spec system image</strong> and then manually
+ flash it to the device.
+ <ul>
+ <li>For <strong>Nexus devices and Pixel C devices</strong>, see
+ the <a href="http://developers.google.com/android/nexus/images">Factory Images
+ for Nexus Devices</a> page for downloads. </li>
+ <li>For <strong>other devices</strong>, please contact the device manufacturer
+ directly. Alternatively, if the device is supported
+ in the Android Beta Program, you can enroll the device in the
+ program and then un-enroll it (see below).</li>
+ </ul>
+ </li>
+ <li><strong>Un-enroll the device from Android Beta Program</strong>. If the
+ device is enrolled in the <a href="https://g.co/androidbeta">Android Beta
+ Program</a>, regardless of device, you can simply un-enroll it from the program.
+ <p>
+ The device will receive an OTA update to the most recent production version
+ of Android available for that device (for example, Android 6.0 Marshmallow).
+ The update requires a full device reset, so user data on the device will be
+ removed. Make sure to <strong>back up important data</strong> before
+ un-enrolling a device.
+ </p>
+ </li>
+</ul>
+
+<p class="note"><strong>Note:</strong>
+ Uninstalling a Developer Preview system image prior to
+ the end of the program requires a full device reset and removes all user data
+ on the device.
+</p>
+
+
+<h2 id="setupAVD">Set up an emulator</h2>
+
+<p>To use the Android Emulator to run the Android N Preview, you need to
+download the Android N Preview SDK and create a virtual device for the
+emulator.</p>
+
+<p>First, download the Android N Preview SDK as follows (if you
+already got it while <a href="{@docRoot}preview/setup-sdk.html">setting up
+to develop for Android N</a>, you can skip this part):
+
+<ol>
+ <li>In Android Studio, open the Settings dialog
+ (<strong>File > Settings</strong> on Windows/Linux, or
+ <strong>Android Studio > Preferences</strong> on Mac). In the left
+ panel, select <strong>Appearance & Behavior >
+ System Settings > Android SDK</strong>.
+
+ <li>Click the <strong>SDK Platforms</strong> tab, then select the
+ <strong>Android N Preview</strong> check box.</li>
+
+ <li>Click the <strong>SDK Tools</strong> tab, then select the
+ <strong>Android SDK Build Tools</strong>, <strong>Android SDK
+ Platform-Tools</strong>, and <strong>Android SDK Tools</strong> check
+ boxes.
+ </li>
+
+ <li>Click <strong>OK</strong> and accept the license
+ agreements for any packages to be installed.
+ </li>
+</ol>
+
+<p>You should now have <strong>Android SDK Built-Tools 24.0 0 rc1</strong>,
+<strong>Platform-Tools 24.0.0 rc1</strong>, and <strong>SDK Tools
+25.0.9</strong>. If you do not update the SDK Tools to 25.0.9, then you won't
+be able to run the x86_64 system images for Android N.</p>
+
+
+<p>Now create a virtual device with the Android N system image:</p>
+
+<ol>
+ <li>Open the AVD Manager by selecting <strong>Tools > Android >
+ AVD Manager</strong>.</li>
+ <li>Click <strong>Create Virtual Device</strong>.</li>
+ <li>Select a device such as Nexus 5X, Nexus 6P, Nexus 9, or Android TV,
+ then click <strong>Next</strong>.</li>
+ <li>Select the <strong>N</strong> system image (with the
+ <strong>x86</strong> ABI), then click <strong>Next</strong>.
+ (Only x86 system images are currently supported with the Android Emulator
+for the Android N Preview.)
+ <li>Complete the rest of the AVD configuration and click
+ <strong>Finish</strong>.</li>
+</ol>
+
+<p>You can now launch the Android Emulator with the Android N Preview AVD.</p>
+
+<p>
+For the best experience in the Android Emulator, install
+Android Studio 2.1 Preview, which supports the <a
+href="http://tools.android.com/tech-docs/emulator">Android Emulator 2.0 Beta</a>
+with much faster performance compared to the Emulator in
+Android Studio 1.5.</p>
+
+<p class="note"><strong>Note:</strong>
+ If you're currently using Android Studio 2.0 Beta, there's a known issue
+ that prevents you from creating AVDs with the N Preview system images, so
+ you currently need to use the Android Studio 2.1 preview to create AVDs.
+</p>
+
+<p>For more information about creating virtual devices, see <a href=
+ "{@docRoot}tools/devices/index.html">Managing Virtual Devices</a>.
+</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ </div><!-- landing -->
+
+</div><!-- relative wrapper -->
+
+
+
+<script>
+ var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
+ function onDownload(link) {
+
+ $("#downloadForRealz").html("Download " + $(link).text());
+ $("#downloadForRealz").attr('href', urlRoot + $(link).text());
+
+ $("#tos").fadeIn('fast');
+ $("#landing").fadeOut('fast');
+
+ return true;
+ }
+
+
+ function onAgreeChecked() {
+ /* verify that the TOS is agreed */
+ if ($("input#agree").is(":checked")) {
+ /* reveal the download button */
+ $("a#downloadForRealz").removeClass('disabled');
+ } else {
+ $("a#downloadForRealz").addClass('disabled');
+ }
+ }
+
+ function onDownloadForRealz(link) {
+ if ($("input#agree").is(':checked')) {
+ /*
+ $("#tos").fadeOut('fast');
+ $("#landing").fadeIn('fast');
+ */
+
+ ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
+
+ /*
+ location.hash = "";
+ */
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ $(window).hashchange( function(){
+ if (location.hash == "") {
+ location.reload();
+ }
+ });
+
+</script>
diff --git a/docs/html/preview/features/afw.jd b/docs/html/preview/features/afw.jd
new file mode 100644
index 0000000..24f67ef
--- /dev/null
+++ b/docs/html/preview/features/afw.jd
@@ -0,0 +1,543 @@
+page.title=Android for Work Updates
+page.metaDescription=New Android for Work APIs and features in Android N.
+page.keywords="android for work", "android N", "enterprise", "QR code"
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>In this document</h2>
+ <ol>
+ <li><a href="#qr">QR Code Provisioning
+ </a></li>
+
+ <li><a href="#sec-challenge">Work Profile Security Challenge
+ </a></li>
+
+ <li><a href="#suspend">Disable Access to Apps
+ </a></li>
+
+ <li><a href="#toggle-work">Toggle Work Mode
+ </a></li>
+
+ <li><a href="#always-on-vpn">Always-On VPN
+ </a></li>
+
+ <li><a href="#contacts">Contacts Integration with Work Profile
+ </a></li>
+
+ <li><a href="#remote-reboot">Remote Reboot
+ </a></li>
+
+ <li><a href="#disable-roaming">Disable Data Roaming
+ </a></li>
+
+ <li><a href="#process-logging">Enterprise Process Logging
+ </a></li>
+
+ <li><a href="#bug-reports">Remote Bug Reports
+ </a></li>
+
+ <li><a href="#remove-cert">Remove a Client Certificate
+ </a></li>
+
+ <li><a href="#grant-cert-on-install">Grant Access to Client Certificate
+ on Installation</a></li>
+
+ <li><a href="#ui-policy">System UI Policy Transparency
+ </a></li>
+
+ <li><a href="#restrictions-mgmt">App Restrictions Management Enhancements
+ </a></li>
+
+ <li><a href="#location-off">Location Off Switch
+ </a></li>
+
+ <li><a href="#custom-provisioning">Customized Provisioning
+ </a></li>
+
+ <li><a href="#multi-wifi-ca">Multiple Wi-Fi CA Certificates
+ </a></li>
+
+ <li><a href="#custom-lock">Customized Lockscreen Message
+ </a></li>
+
+ <li><a href="#work-connectionservice">Work Profile ConnectionService
+ </a></li>
+
+ <li><a href="#lock-wp">Lock Down Wallpaper
+ </a></li>
+
+ <li><a href="#lock-user-icon">Lock Down User Icon
+ </a></li>
+
+ <li><a href="#health-monitoring">Device Health Monitoring
+ </a></li>
+
+ </ol>
+
+ <h2>See Also</h2>
+ <ul>
+ <li><a href="{@docRoot}preview/setup-sdk.html#docs-dl">N Preview SDK
+ Reference</a></li>
+ </ul>
+ </div>
+</div>
+
+<p>This document describes the new Android for Work features provided in
+Android N.</p>
+
+<h2 id="qr">QR Code Provisioning</h2>
+
+<p>
+ Android for Work now supports using QR codes to provision corporate-liable
+ devices. The setup wizard now allows you to scan a QR code to provision
+ the device.
+</p>
+
+<h2 id="sec-challenge">Work Profile Security Challenge</h2>
+
+<p>
+ Profile owners can require users to specify a security challenge for apps
+ running in the work profile. The system shows the security challenge when the
+ user attempts to open any work apps. If the user successfully completes the
+ security challenge, the system unlocks the work profile and decrypts it if
+ necessary.
+</p>
+
+<p>
+ If a profile owner sends an {@link
+ android.app.admin.DevicePolicyManager#ACTION_SET_NEW_PASSWORD} intent, the
+ system prompts a user to set up a security challenge. The profile owner can
+ also send an <code>ACTION_SET_NEW_PARENT_PROFILE_PASSWORD</code> intent to
+ prompt the user to set a device lock.
+</p>
+
+<p>
+ Profile owners can choose to set the password policies for the work challenge
+ differently from the policies for other device passwords. For example, the
+ minimum length for the device challenge response can be different from the
+ length required for other passwords. Profile owners set the challenge
+ policies using the usual {@link android.app.admin.DevicePolicyManager}
+ methods, such as {@link
+ android.app.admin.DevicePolicyManager#setPasswordQuality
+ setPasswordQuality()} and {@link
+ android.app.admin.DevicePolicyManager#setPasswordMinimumLength
+ setPasswordMinimumLength()}. The profile owner can also set the device lock,
+ by using the {@link android.app.admin.DevicePolicyManager} instance returned
+ by the new <code>DevicePolicyManager.getParentProfileInstance()</code>
+ method. Additionally, profile owners can customize the credentials screen for
+ the work challenge by using the {@link android.app.admin.DevicePolicyManager}
+ class's new <code>setOrganizationColor()</code> and
+ <code>setOrganizationName()</code> methods.
+</p>
+
+<p>
+ For details on the new methods and constants, see the
+ <code>DevicePolicyManager</code> reference page in the <a
+ href="{@docRoot}preview/setup-sdk.html#docs-dl">N Preview SDK Reference</a>.
+</p>
+
+<h2 id="suspend">Disable Access to Apps</h2>
+
+<p>
+ Device owners and profile owners can temporarily suspend access to packages
+ by calling the new <code>DevicePolicyManager.getPackagesSuspended()</code>
+ method.Owners can use the same method to re-enable those packages.
+</p>
+
+<p>
+ While a package is suspended, it cannot start activities, and notifications
+ to the package are suppressed. Suspended packages do not show in the <a href=
+ "{@docRoot}guide/components/recents.html">overview screen</a>, and they
+ cannot show dialogs (including toasts and snackbars). They also cannot play
+ audio or vibrate the device.
+</p>
+
+<p>
+ Launchers should apply a distinctive UI to suspended apps to show that the
+ apps aren't currently available; for example, they might render the app icon
+ in gray. Launchers can find out which apps are suspended by calling the new
+ <code>DevicePolicyManager.getPackagesSuspended()</code> method.
+</p>
+
+<h2 id="toggle-work">Toggle Work Mode</h2>
+
+<p>On dual-profile devices, users can toggle work mode on and off. While work
+ mode is turned off, the managed profile is temporarily shut down. Work profile apps, background sync, and notifications are all disabled, including the profile
+ owner app. While the work profile is disabled, the system displays a persistent status icon to remind users that they can't launch work apps. The system launcher
+ indicates that work apps and widgets are not accessible.
+</p>
+
+
+<h2 id="always-on-vpn">Always-On VPN</h2>
+
+<p>
+ Device owners and profile owners can require that work apps always connect to
+ the network through a specified VPN. If owners set this requirement, the
+ device automatically starts that VPN at boot time.
+</p>
+
+<p>
+ Owners can require use of a VPN by calling the new
+ <code>DevicePolicyManager.setAlwaysOnVpnPackage()</code> method. To find out
+ if the owner has set a VPN requirement, call the new
+ <code>DevicePolicyManager.GetAlwaysOnVpnPackage()</code> method.
+</p>
+
+<p>
+ Because the system can directly bind VPN services without app interaction,
+ VPN clients need to handle new entry points for always-on VPN. As before, you
+ can find active services by using an intent filter that matches the action
+ {@link android.net.VpnService android.net.VpnService}.
+</p>
+
+<p>
+ Users can manually set an always-on VPN client that implement {@link
+ android.net.VpnService} by using the <strong>Settings > More >
+ VPN</strong> screen.
+</p>
+
+<h2 id="contacts">Contacts Integration with Work Profile</h2>
+
+<p>
+ Profile owners can allow local search and directory lookup of work contacts
+ from the primary user. For example, a user can access both personal and work
+ directory contacts from their personal dialer or contacts application (if
+ permitted by their profile administrator).
+</p>
+
+<p>
+ Developers that leverage the Contact Provider can use the Enterprise Contacts
+ API to access work profile directory entries from the primary user if allowed
+ by policy:
+</p>
+
+<ul>
+ <li><code>ContactsContract.Contacts.ENTERPRISE_CONTENT_FILTER_URI</code>
+ </li>
+
+ <li><code>ContactsContract.Phone.ENTERPRISE_CONTENT_FILTER_URI</code>
+ </li>
+
+ <li><code>ContactsContract.Email.ENTERPRISE_CONTENT_FILTER_URI</code>
+ </li>
+
+ <li><code>ContactsContract.Callable.ENTERPRISE_CONTENT_FILTER_URI</code>
+ </li>
+
+ <li><code>ContactsContract.Directory.ENTERPRISE_CONTENT_URI</code>
+ </li>
+
+ <li><code>ContactsContract.Directory.isEntepriseDirectoryId()</code>
+ </li>
+</ul>
+
+<p>
+ Profile owners can control the visibility of work contacts in the primary
+ user using the following new methods:
+</p>
+
+<ul>
+ <li>
+ <code>DevicePolicyManager.setCrossProfileContactsSearchDisabled()</code>
+ </li>
+
+ <li>
+ <code>DevicePolicyManager.getCrossProfileContactsSearchDisabled()</code>
+ </li>
+</ul>
+
+<h2 id="remote-reboot">Remote Reboot</h2>
+
+<p>
+ Device owners can remotely reboot devices. In some cases, devices deployed in
+ public places inside enclosures can prevent access to the power button. If a
+ device needs to be rebooted, administrators can do so using the new
+ <code>DevicePolicyManager.reboot()</code> method.
+</p>
+
+<h2 id="disable-roaming">Disable Data Roaming</h2>
+
+<p>
+ Device owners can disable data roaming using the new {@link
+ android.os.UserManager} user restriction <code>DISALLOW_DATA_ROAMING</code>.
+</p>
+
+<h2 id="process-logging">Enterprise Process Logging</h2>
+
+<p>
+ Device owners can identify suspicious activity by remotely tracking device
+ activity, including app launches, adb activity, and screen unlocks. Process
+ logs don’t require user consent. To retrieve logs, device owners enable
+ device logging using <code>setDeviceLoggingEnabled()</code>.
+</p>
+
+<p>
+ The new <code>android.auditing.SecurityLog</code> class includes these
+ methods:
+</p>
+
+<ul>
+ <li>
+ <code>void DevicePolicyManager.setDeviceLoggingEnabled()</code>
+ </li>
+
+ <li>
+ <code>boolean DevicePolicyManager.getDeviceLoggingEnabled()</code>
+ </li>
+
+ <li>
+ <code>List DevicePolicyManager.retrieveDeviceLogs()</code>
+ </li>
+
+ <li>
+ <code>List DevicePolicyManager.retrievePreviousDeviceLogs()</code>
+ </li>
+
+ <li>
+ <code>void DeviceAdminReceiver.onSecurityLogsAvailable()</code>
+ </li>
+</ul>
+
+<h2 id="bug-reports">Remote Bug Reports</h2>
+
+<p>
+ Device owners can remotely trigger and retrieve a bug report that contains a
+ device state dump file, which allows forensic investigation of a known
+ incident or compromised device. Due to the detailed nature of the bug report,
+ user consent is required.
+</p>
+
+<p>
+ Android N includes the following API additions to support this feature. For
+ details, see the <a href="{@docRoot}preview/setup-sdk.html#docs-dl">N Preview SDK
+ Reference</a>.
+</p>
+
+<ul>
+ <li>
+ <code>DevicePolicyManager.requestBugreport()</code>
+ </li>
+
+ <li>
+ <code>DeviceAdminReceiver.onBugreportFailed()</code>
+ </li>
+
+ <li>
+ <code>DeviceAdminReceiver.onBugreportShared()</code>
+ </li>
+
+ <li>
+ <code>DeviceAdminReceiver.onBugreportSharingDeclined()</code>
+ </li>
+
+ <li>
+ <code>DeviceAdminReceiver.BUGREPORT_FAILURE_FAILED_COMPLETING</code>
+ </li>
+
+ <li>
+ <code>DeviceAdminReceiver.BUGREPORT_FAILURE_FILE_NO_LONGER_AVAILABLE</code>
+ </li>
+</ul>
+
+<h2 id="remove-cert">Remove a Client Certificate</h2>
+
+<p>
+ Profile owners and device owners can now remove client certificates that were
+ installed through {@link android.app.admin.DevicePolicyManager#installKeyPair
+ installKeyPair()} by calling the new method
+ <code>DevicePolicyManager.removeKeyPair()</code>.
+</p>
+
+<h2 id="grant-cert-on-install">Grant Access to Client Certificate on
+ Installation</h2>
+
+<p>
+ If a profile owner or device owner grants a third-party app the ability to
+ manage certificates, the app can grant itself access to certificates it
+ installs without any intervention by the owner.
+</p>
+
+<p>
+ The existing API for managing certificates is extended to include:
+</p>
+
+<ul>
+ <li><code>DevicePolicyManager.installKeyPair()</code>
+ </li>
+</ul>
+
+<h2 id="ui-policy">System UI Policy Transparency</h2>
+
+<p>
+ Policies that affect the user experience or restrict user Settings are fully
+ disclosed to the user, and profile owners and device owners can attribute the
+ policy to their company’s IT department. In addition to a consistent “Action
+ not allowed” message in Settings, IT administrators can set an
+ organization-specific support message in device settings with the following
+ new {@link android.app.admin.DevicePolicyManager} methods:
+</p>
+
+<ul>
+ <li>
+ <code>DevicePolicyManager.setShortSupportMessage()</code>
+ </li>
+
+ <li>
+ <code>DevicePolicyManager.setLongSupportMessage()</code>
+ </li>
+</ul>
+
+<h2 id="restrictions-mgmt">App Restrictions Management Enhancements</h2>
+
+<p>
+ The device or profile owner can enable another application to manage app
+ restrictions via the new
+ <code>DevicePolicyManager.setApplicationRestrictionsManagingPackage()</code>
+ method. The nominated application can check whether this permission has been
+ granted by calling
+ <code>DevicePolicyManager.isCallerApplicationRestrictionsManagingPackage()</code>.
+</p>
+
+<p>
+ An application nominated to manage app restrictions can call {@link
+ android.app.admin.DevicePolicyManager#setApplicationRestrictions
+ setApplicationRestrictions()} and {@link
+ android.app.admin.DevicePolicyManager#getApplicationRestrictions
+ getApplicationRestrictions()} for any packages within that user or profile.
+</p>
+
+<h2 id="location-off">Location Off Switch</h2>
+
+<p>
+ Users can disable location permissions for work apps while continuing to
+ access location information in their personal apps. A separate location
+ access switch in Location Settings allows users to deny location updates or
+ last-location queries for apps running in the work profile.
+</p>
+
+<p>
+ The top level location off switch disables location access for both the
+ primary profile and the managed profile.
+</p>
+
+<h2 id="custom-provisioning">Customized Provisioning</h2>
+
+<p>
+ An application can customize the profile owner and device owner provisioning
+ flows with corporate colors and logos.
+</p>
+
+<dl>
+ <dt>
+ <code>DevicePolicyManager.EXTRA_PROVISIONING_MAIN_COLOR</code>
+ </dt>
+
+ <dd>
+ Customizes flow color.
+ </dd>
+
+ <dt>
+ <code>DevicePolicyManager.EXTRA_PROVISIONING_LOGO_URI</code>
+ </dt>
+
+ <dd>
+ Customizes the flow with a corporate logo.
+ </dd>
+</dl>
+
+<h2 id="multi-wifi-ca">Multiple Wi-Fi CA Certificates</h2>
+
+<p>
+ Profile owners and device owners can set multiple CA certificates for a given
+ Wi-Fi configuration. When corporate Wi-Fi networks have separate CAs for
+ separate access points with the same SSID, IT administrators can include all
+ relevant CAs in the Wi-Fi configuration using the new method
+ <code>setCaCertificates()</code>.
+</p>
+
+<p>
+ APIs added are:
+</p>
+
+<ul>
+ <li>
+ <code>WifiEnterpriseConfig.setCaCertificates()</code>
+ </li>
+
+ <li>
+ <code>WifiEnterpriseConfig.getCaCertificates()</code>
+ </li>
+</ul>
+
+<h2 id="custom-lock">Customized Lockscreen Message</h2>
+
+<p>
+ Device owners can provide owner information to be shownon the lockscreen.
+ This information takes precedence the user lock screen message (if one is
+ set). New {@link android.app.admin.DevicePolicyManager} methods are:
+</p>
+
+<ul>
+ <li>
+ <code>setDeviceOwnerLockScreenInfo()</code>
+ </li>
+
+ <li>
+ <code>getDeviceOwnerLockScreenInfo()</code>
+ </li>
+</ul>
+
+<h2 id="work-connectionservice">Work Profile ConnectionService</h2>
+
+<p>
+ Profile owners can specify a work dialer application that uses a
+ work-specific {@link android.telecom.ConnectionService} for the calling
+ backend (calling accounts). The work dialer maintains a work-only call log
+ and relies on work contacts only. Users have a consistent in-call UI
+ experience regardless of dialing application. Incoming work calls to the work
+ calling accounts are distinguished from personal incoming calls to the
+ personal calling accounts.
+</p>
+
+<p>
+ The dialer should check for the new flag
+ <code>android.telecom.Call.PROPERTY_WORK_CALL</code> to determine if a call
+ is a work call. If a call is a work call, the dialer should indicate this,
+ such as by adding a work badge.
+</p>
+
+<h2 id="lock-wp">Lock Down Wallpaper</h2>
+
+<p>
+ A new user restriction (<code>DISALLOW_SET_WALLPAPER</code>) prevents the
+ user from changing their wallpaper. The device owner or profile owner can
+ still change the wallpaper, but they can only change the wallpaper for the
+ user or profile they control. For example, a profile owner can’t change the
+ wallpaper of the parent user, but a profile owner in the primary profile or
+ device owner can. A profile owner or device owner that wants to change the
+ wallpaper should check whether the the user or profile they manage has a
+ wallpaper ({@link android.app.WallpaperManager#isWallpaperSupported
+ isWallpaperSupported()}) and whether they are allowed to change it (with the
+ new method <code>WallpaperManager.isWallpaperSettingAllowed()</code>)
+</p>
+
+<h2 id="lock-user-icon">Lock Down User Icon</h2>
+
+<p>
+ A new user restriction (<code>DISALLOW_SET_USER_ICON</code>) prevents the
+ user from changing their user icon. The user’s device owner or profile owner
+ can still change the icon. However, a profile owner can only change the user
+ icon for the profile it controls.
+</p>
+
+<h2 id="health-monitoring">Device Health Monitoring</h2>
+
+<p>
+ A device owner or profile owner can use the new
+ <code>HardwarePropertiesManager</code> interface to retrieve information
+ about device health, such as CPU or GPU temperatures and CPU usage. The new
+ monitoring interface is especially useful for monitoring unattended devices
+ running in a remote location.
+</p>
diff --git a/docs/html/preview/features/background-optimization.jd b/docs/html/preview/features/background-optimization.jd
new file mode 100644
index 0000000..e415bd3
--- /dev/null
+++ b/docs/html/preview/features/background-optimization.jd
@@ -0,0 +1,394 @@
+page.title=Background Optimizations
+page.metaDescription=New restrictions to implicit broadcasts.
+page.keywords="android N", "implicit broadcasts", "job scheduler"
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>
+ In this document
+ </h2>
+
+ <ol>
+ <li>
+ <a href="#connectivity-action">Restrictions on CONNECTIVITY_ACTION</a>
+ </li>
+
+ <li>
+ <a href="#sched-jobs">Scheduling Network Jobs on Unmetered
+ Connections</a>
+ </li>
+
+ <li>
+ <a href="#monitor-conn">Monitoring Network Connectivity While the App
+ is Running</a>
+ </li>
+
+ <li>
+ <a href="#media-broadcasts">Restrictions on NEW_PICTURE and
+ NEW_VIDEO</a>
+ </li>
+
+ <li>
+ <a href="#new-jobinfo">New JobInfo methods</a>
+ </li>
+
+ <li>
+ <a href="#new-jobparam">New JobParameter Methods</a>
+ </li>
+
+ <li>
+ <a href="#further-optimization">Further Optimizing Your App</a>
+ </li>
+ </ol>
+ </div>
+</div>
+
+<p>
+ Background processes can be memory- and battery-intensive. For example, an
+ implicit broadcast may start many background processes that have registered
+ to listen for it, even if those processes may not do much work. This can have
+ a substantial impact on both device performance and user experience.
+</p>
+
+<p>
+ To alleviate this issue, Android N applies the following
+ restrictions:
+</p>
+
+<ul>
+ <li>Apps targeting the Preview do not receive {@link
+ android.net.ConnectivityManager#CONNECTIVITY_ACTION} broadcasts if they
+ register to receive them in their manifest. Apps running in the foreground
+ can still listen for {@code CONNECTIVITY_CHANGE} on their main thread by
+ registering a {@link android.content.BroadcastReceiver} with {@link
+ android.content.Context#registerReceiver Context.registerReceiver()}.
+ </li>
+
+ <li>Apps cannot send or receive {@link
+ android.hardware.Camera#ACTION_NEW_PICTURE} or {@link
+ android.hardware.Camera#ACTION_NEW_VIDEO} broadcasts. This optimization
+ affects all apps, not only those targeting the Preview.
+ </li>
+</ul>
+
+<p>
+ If your app uses any of these intents, you should remove dependencies on
+ them as soon as possible so that you can target Android N devices properly.
+ The Android framework provides several solutions to mitigate the need for
+ these implicit broadcasts. For example, {@link android.app.job.JobScheduler}
+ and <a href=
+ "https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmNetworkManager">
+ {@code GcmNetworkManager}</a> provide robust mechanisms to schedule network
+ operations when specified conditions, such as a connection to an unmetered
+ network, are met. You can now also use {@link android.app.job.JobScheduler}
+ to react to changes to content providers. {@link android.app.job.JobInfo}
+ objects encapsulate the parameters that {@link android.app.job.JobScheduler}
+ uses to schedule your job. When the conditions of the job are met, the system
+ executes this job on your app's {@link android.app.job.JobService}.
+</p>
+
+<p>
+ In this document, we will learn how to use alternative methods, such as
+ {@link android.app.job.JobScheduler}, to adapt your app to these new
+ restrictions.
+</p>
+
+<h2 id="connectivity-action">
+ Restrictions on CONNECTIVITY_ACTION
+</h2>
+
+<p>
+ Apps targeting the Android N do not receive {@link
+ android.net.ConnectivityManager#CONNECTIVITY_ACTION} broadcasts if they
+ register to receive them in their manifest, and processes that depend on this
+ broadcast will not start. This could pose a problem for apps that want
+ to listen for network changes or perform bulk network activities when the
+ device connects to an unmetered network. Several solutions to get around this
+ restriction already exist in the Android framework, but choosing the right
+ one depends on what you want your app to accomplish.
+</p>
+
+<p class="note">
+ <strong>Note:</strong> A {@link android.content.BroadcastReceiver} registered with
+ {@link android.content.Context#registerReceiver Context.registerReceiver()}
+ continues to receive these broadcasts while the app is in the foreground.
+</p>
+
+<h3 id="sched-jobs">
+ Scheduling Network Jobs on Unmetered Connections
+</h3>
+
+<p>
+ When using the {@link android.app.job.JobInfo.Builder JobInfo.Builder} class
+ to build your {@link android.app.job.JobInfo} object, apply the {@link
+ android.app.job.JobInfo.Builder#setRequiredNetworkType
+ setRequiredNetworkType()} method and pass {@link android.app.job.JobInfo
+ JobInfo.NETWORK_TYPE_UNMETERED} as a job parameter. The following code sample
+ schedules a service to run when the device connects to an unmetered
+ network and is charging:
+</p>
+
+<pre>
+public static final int MY_BACKGROUND_JOB = 0;
+...
+public static void scheduleJob(Context context) {
+ JobScheduler js =
+ (JobScheduler) context.getSystemService(Context.JOB_SCHEDULER_SERVICE);
+ JobInfo job = new JobInfo.Builder(
+ MY_BACKGROUND_JOB,
+ new ComponentName(context, MyJobService.class))
+ .setRequiredNetworkType(JobInfo.NETWORK_TYPE_UNMETERED)
+ .setRequiresCharging(true)
+ .build();
+ js.schedule(job);
+}
+</pre>
+
+<p>
+ When the conditions for your job are met, your app receives a callback to run
+ the {@link android.app.job.JobService#onStartJob onStartJob()} method in the
+ specified {@code JobService.class}. To see more examples of {@link
+ android.app.job.JobScheduler} implementation, see the <a href=
+ "{@docRoot}samples/JobScheduler/index.html">JobScheduler sample app</a>.
+</p>
+
+<p>
+ Applications that use GMSCore services, and target Android 5.0 (API level 21)
+ or lower, can use <a href=
+ "https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmNetworkManager">
+ {@code GcmNetworkManager}</a> and specify {@code Task.NETWORK_STATE_UNMETERED}.
+</p>
+
+<h3 id="monitor-conn">
+ Monitoring Network Connectivity While the App is Running
+</h3>
+
+<p>
+ Apps running in the foreground can still listen for {@code
+ CONNECTIVITY_CHANGE} with a registered {@link
+ android.content.BroadcastReceiver}. However, the {@link
+ android.net.ConnectivityManager} API provides a more robust method to request
+ a callback only when specified network conditions are met.
+</p>
+
+<p>
+ {@link android.net.NetworkRequest} objects define the parameters of the
+ network callback in terms of {@link android.net.NetworkCapabilities}. You
+ create {@link android.net.NetworkRequest} objects with the {@link
+ android.net.NetworkRequest.Builder NetworkRequest.Builder} class. {@link
+ android.net.ConnectivityManager#registerNetworkCallback(android.net.NetworkRequest,
+ android.net.ConnectivityManager.NetworkCallback) registerNetworkCallback()}
+ then passes the {@link android.net.NetworkRequest} object to the system. When
+ the network conditions are met, the app receives a callback to execute the
+ {@link android.net.ConnectivityManager.NetworkCallback#onAvailable
+ onAvailable()} method defined in its {@link
+ android.net.ConnectivityManager.NetworkCallback} class.
+</p>
+
+<p>
+ The app continues to receive callbacks until either the app exits or it calls
+ {@link android.net.ConnectivityManager#unregisterNetworkCallback
+ unregisterNetworkCallback()}.
+</p>
+
+<h2 id="media-broadcasts">
+ Restrictions on NEW_PICTURE and NEW_VIDEO
+</h2>
+
+<p>
+ In the Android N, apps are not able to send or receive {@link
+ android.hardware.Camera#ACTION_NEW_PICTURE} or {@link
+ android.hardware.Camera#ACTION_NEW_VIDEO} broadcasts. This restriction helps
+ alleviate the performance and user experience impacts when several apps must
+ wake up in order to process a new image or video. Android N
+ extends {@link android.app.job.JobInfo} and {@link
+ android.app.job.JobParameters} to provide an alternative solution.
+</p>
+
+<h3 id="new-jobinfo">
+ New JobInfo methods
+</h3>
+
+<p>
+ To trigger jobs on content URI changes, Android N extends
+ the {@link android.app.job.JobInfo} API with the following methods:
+</p>
+
+<dl>
+ <dt>
+ {@code JobInfo.TriggerContentUri()}
+ </dt>
+
+ <dd>
+ Encapsulates parameters required to trigger a job on content URI changes.
+ </dd>
+
+ <dt>
+ {@code JobInfo.Builder.addTriggerContentUri()}
+ </dt>
+
+ <dd>
+ Passes a {@code TriggerContentUri} object to {@link
+ android.app.job.JobInfo}. A {@link android.database.ContentObserver}
+ monitors the encapsulated content URI. If there are multiple {@code
+ TriggerContentUri} objects associated with a job, the system provides a
+ callback even if it reports a change in only one of the content URIs.
+ </dd>
+
+ <dd>
+ Add the {@code TriggerContentUri.FLAG_NOTIFY_FOR_DESCENDANTS} flag to
+ trigger the job if any descendants of the given URI change. This flag
+ corresponds to the {@code notifyForDescendants} parameter passed to {@link
+ android.content.ContentResolver#registerContentObserver
+ registerContentObserver()}.
+ </dd>
+</dl>
+
+<p class="note">
+ <strong>Note:</strong> {@code TriggerContentUri()} cannot be used in
+ combination with {@link android.app.job.JobInfo.Builder#setPeriodic
+ setPeriodic()} or {@link android.app.job.JobInfo.Builder#setPersisted
+ setPersisted()}. To continually monitor for content changes, schedule a new
+ {@link android.app.job.JobInfo} before the app’s {@link
+ android.app.job.JobService} finishes handling the most recent callback.
+</p>
+
+<p>
+ The following sample code schedules a job to trigger when the system reports
+ a change to the content URI, {@code MEDIA_URI}:
+</p>
+
+<pre>
+public static final int MY_BACKGROUND_JOB = 0;
+...
+public static void scheduleJob(Context context) {
+ JobScheduler js =
+ (JobScheduler) context.getSystemService(Context.JOB_SCHEDULER_SERVICE);
+ JobInfo.Builder builder = new JobInfo.Builder(
+ MY_BACKGROUND_JOB,
+ new ComponentName(context, MediaContentJob.class));
+ builder.addTriggerContentUri(
+ new JobInfo.TriggerContentUri(MEDIA_URI,
+ JobInfo.TriggerContentUri.FLAG_NOTIFY_FOR_DESCENDANTS));
+ js.schedule(builder.build());
+}
+</pre>
+<p>
+ When the system reports a change in the specified content URI(s), your app
+ receives a callback and a {@link android.app.job.JobParameters} object is
+ passed to the {@link android.app.job.JobService#onStartJob onStartJob()}
+ method in {@code MediaContentJob.class}.
+</p>
+
+<h3 id="new-jobparam">
+ New JobParameter Methods
+</h3>
+
+<p>
+ Android N also extends {@link android.app.job.JobParameters} to
+ allow your app to receive useful information about what content authorities
+ and URIs triggered the job:
+</p>
+
+<dl>
+ <dt>
+ {@code Uri[] getTriggeredContentUris()}
+ </dt>
+
+ <dd>
+ Returns an array of URIs that have triggered the job. This will be {@code
+ null} if either no URIs have triggered the job (for example, the job was
+ triggered due to a deadline or some other reason), or the number of changed
+ URIs is greater than 50.
+ </dd>
+
+ <dt>
+ {@code String[] getTriggeredContentAuthorities()}
+ </dt>
+
+ <dd>
+ Returns a string array of content authorities that have triggered the job.
+ If the returned array is not {@code null}, use {@code getTriggeredContentUris()}
+ to retrieve the details of which URIs have changed.
+ </dd>
+</dl>
+
+<p>
+ The following sample code overrides the {@link
+ android.app.job.JobService#onStartJob JobService.onStartJob()} method and
+ records the content authorities and URIs that have triggered the job:
+</p>
+
+<pre>
+@Override
+public boolean onStartJob(JobParameters params) {
+ StringBuilder sb = new StringBuilder();
+ sb.append("Media content has changed:\n");
+ if (params.getTriggeredContentAuthorities() != null) {
+ sb.append("Authorities: ");
+ boolean first = true;
+ for (String auth :
+ params.getTriggeredContentAuthorities()) {
+ if (first) {
+ first = false;
+ } else {
+ sb.append(", ");
+ }
+ sb.append(auth);
+ }
+ if (params.getTriggeredContentUris() != null) {
+ for (Uri uri : params.getTriggeredContentUris()) {
+ sb.append("\n");
+ sb.append(uri);
+ }
+ }
+ } else {
+ sb.append("(No content)");
+ }
+ Log.i(TAG, sb.toString());
+ return true;
+}
+</pre>
+
+<h2 id="further-optimization">
+ Further Optimizing Your App
+</h2>
+
+<p>
+ Optimizing your apps to run on low-memory devices, or in low-memory
+ conditions, can improve performance and user experience. Removing
+ dependencies on background services and statically-registered implicit
+ broadcast receivers can help your app run better on such devices. Although
+ Android N takes steps to reduce some of these issues, it is
+ recommended that you optimize your app to run without the use of these
+ background processes entirely.
+</p>
+
+<p>
+ Android N introduces some additional <a href=
+ "{@docRoot}tools/help/adb.html">Android Debug Bridge (ADB)</a> commands that
+ you can use to test app behavior with those background processes disabled:
+</p>
+
+<ul>
+ <li>To simulate conditions where implicit broadcasts and background services
+ are unavailable, enter the following command:
+ </li>
+
+ <li style="list-style: none; display: inline">
+<pre class="no-pretty-print">
+{@code $ adb shell cmd appops set RUN_IN_BACKGROUND ignore}
+</pre>
+ </li>
+
+ <li>To re-enable implicit broadcasts and background services, enter the
+ following command:
+ </li>
+
+ <li style="list-style: none; display: inline">
+<pre class="no-pretty-print">
+{@code $ adb shell cmd appops set RUN_IN_BACKGROUND allow}
+</pre>
+ </li>
+</ul>
\ No newline at end of file
diff --git a/docs/html/preview/features/data-saver.jd b/docs/html/preview/features/data-saver.jd
new file mode 100644
index 0000000..ba8f165
--- /dev/null
+++ b/docs/html/preview/features/data-saver.jd
@@ -0,0 +1,207 @@
+page.title=Data Saver
+metaDescription=User-enabled data usage optimization.
+page.keywords="android N", "data usage", "metered network"
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>
+ In this document
+ </h2>
+
+ <ol>
+ <li>
+ <a href="#status">Checking Data Saver Preferences</a>
+ </li>
+
+ <li>
+ <a href="#monitor-changes">Monitoring Changes to Data Saver Preferences</a>
+ </li>
+
+ <li>
+ <a href="#testing">Testing with Android Debug Bridge Commands</a>
+ </li>
+ </ol>
+ </div>
+</div>
+
+<p>
+ Over the life of a smartphone, the cost of a cellular data plan can easily
+ exceed the cost of the device itself. In the N Developer Preview, users can
+ enable Data Saver on a device-wide basis in order to use less data, whether
+ roaming, near the end of the billing cycle, or on a small prepaid data pack.
+</p>
+
+<p>
+ When a user enables Data Saver in <strong>Settings</strong> and the device is
+ on a metered network, the system blocks background data usage and signals
+ apps to use less data in the foreground wherever possible. Users can
+ whitelist specific apps to allow background metered data usage even when Data
+ Saver is turned on.
+</p>
+
+<p>
+ The N Developer Preview extends the {@link android.net.ConnectivityManager}
+ API to provide apps with a way to <a href="#status">retrieve the user’s Data
+ Saver preferences</a> and <a href="#monitor-changes">monitor preference
+ changes</a>. It is considered good practice for apps to check whether the
+ user has enabled Data Saver and make an effort to limit foreground and
+ background data usage.
+</p>
+
+<h2 id="status">
+ Checking Data Saver Preferences
+</h2>
+
+<p>
+ In the N Developer Preview, apps can use the {@link
+ android.net.ConnectivityManager} API to determine what data usage
+ restrictions are being applied. The {@code getRestrictBackgroundStatus()}
+ method returns one of the following values:
+</p>
+
+<dl>
+ <dt>
+ {@code RESTRICT_BACKGROUND_STATUS_DISABLED}
+ </dt>
+
+ <dd>
+ Data Saver is disabled.
+ </dd>
+
+ <dt>
+ {@code RESTRICT_BACKGROUND_STATUS_ENABLED}
+ </dt>
+
+ <dd>
+ The user has enabled Data Saver for this app. Apps should make an effort to limit data
+ usage in the foreground and gracefully handle restrictions to background
+ data usage.
+ </dd>
+
+ <dt>
+ {@code RESTRICT_BACKGROUND_STATUS_WHITELISTED}
+ </dt>
+
+ <dd>
+ The user has enabled Data Saver but the app is whitelisted. Apps should
+ still make an effort to limit foreground and background data usage.
+ </dd>
+</dl>
+
+<p>
+ It is considered good practice to limit data usage whenever the device is
+ connected to a metered network, even if Data Saver is disabled or the app
+ is whitelisted. The following sample code uses {@link
+ android.net.ConnectivityManager#isActiveNetworkMetered
+ ConnectivityManager.isActiveNetworkMetered()} and {@code
+ ConnectivityManager.getRestrictBackgroundStatus()} to determine how much data
+ the app should use:
+</p>
+
+<pre>
+ConnectivityManager connMgr = (ConnectivityManager)
+ getSystemService(Context.CONNECTIVITY_SERVICE);
+// Checks if the device is on a metered network
+if (connMgr.isActiveNetworkMetered()) {
+ // Checks user’s Data Saver settings.
+ switch (connMgr.getRestrictBackgroundStatus()) {
+ case RESTRICT_BACKGROUND_STATUS_ENABLED:
+ // Background data usage is blocked for this app. Wherever possible,
+ // the app should also use less data in the foreground.
+
+ case RESTRICT_BACKGROUND_STATUS_WHITELISTED:
+ // The app is whitelisted. Wherever possible,
+ // the app should use less data in the foreground and background.
+
+ case RESTRICT_BACKGROUND_STATUS_DISABLED:
+ // Data Saver is disabled. Since the device is connected to a
+ // metered network, the app should use less data wherever possible.
+ }
+} else {
+ // The device is not on a metered network.
+ // Use data as required to perform syncs, downloads, and updates.
+}
+</pre>
+
+<h2 id="monitor-changes">
+ Monitoring Changes to Data Saver Preferences
+</h2>
+
+<p>
+ Apps can monitor changes to Data Saver preferences by creating a {@link
+ android.content.BroadcastReceiver} to listen for {@code
+ ConnectivityManager.ACTION_RESTRICT_BACKGROUND_CHANGED} ({@code
+ "android.net.conn.RESTRICT_BACKGROUND_CHANGED"}) and dynamically registering
+ the receiver with {@link android.content.Context#registerReceiver
+ Context.registerReceiver()}. When an app receives this broadcast, it should
+ <a href="#status">check if the new Data Saver preferences affect its
+ permissions</a> by calling {@code
+ ConnectivityManager.getRestrictBackgroundStatus()}.
+</p>
+
+<p class="note">
+ <strong>Note:</strong> The system only sends this broadcast to apps that
+ dynamically register for them with {@link
+ android.content.Context#registerReceiver Context.registerReceiver()}. Apps
+ that register to receive this broadcast in their manifest will not receive
+ them.
+</p>
+
+<h2 id="testing">
+ Testing with Android Debug Bridge Commands
+</h2>
+
+The <a href="{@docRoot}tools/help/adb.html">Android Debug Bridge (ADB)</a>
+provides a few commands that you can use to check and configure network
+permissions:
+
+<dl>
+ <dt>
+ <code>$ adb shell dumpsys netpolicy</code>
+ </dt>
+
+ <dd>
+ Generates a report that includes the current global background network
+ restriction setting, package UIDs currently on a whitelist, and the network
+ permissions of other known packages.
+ </dd>
+
+ <dt>
+ <code>$ adb shell cmd netpolicy</code>
+ </dt>
+
+ <dd>
+ Displays a full list of Network Policy Manager (netpolicy) commands.
+ </dd>
+
+ <dt>
+ <code>$ adb shell cmd netpolicy set restrict-background
+ <boolean></code>
+ </dt>
+
+ <dd>
+ Enables or disables Data Saver mode when passing <code>true</code> or
+ <code>false</code>, respectively.
+ </dd>
+
+ <dt>
+ <code>$ adb shell cmd netpolicy add restrict-background-whitelist
+ <UID></code>
+ </dt>
+
+ <dd>
+ Adds the specified package UID to the whitelist to allow background metered
+ data usage.
+ </dd>
+
+ <dt>
+ <code>$ adb shell cmd netpolicy remove restrict-background-whitelist
+ <UID></code>
+ </dt>
+
+ <dd>
+ Removes the specified package UID from the whitelist to block background
+ metered data usage while Data Saver is enabled.
+ </dd>
+</dl>
\ No newline at end of file
diff --git a/docs/html/preview/features/direct-boot.jd b/docs/html/preview/features/direct-boot.jd
new file mode 100644
index 0000000..aefa4dc
--- /dev/null
+++ b/docs/html/preview/features/direct-boot.jd
@@ -0,0 +1,180 @@
+page.title=Direct Boot
+page.keywords=preview,sdk,direct boot
+page.tags=androidn
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+ <h2>In this document</h2>
+ <ol>
+ <li><a href="#run">Requesting Access to Run During Direct Boot</a></li>
+ <li><a href="#access">Accessing Device Encrypted Storage</a></li>
+ <li><a href="#notification">Getting Notified of User Unlock</a></li>
+ <li><a href="#migrating">Migrating Existing Data</a></li>
+ <li><a href="#testing">Testing Your Encryption Aware App</a></li>
+ </ol>
+</div>
+</div>
+
+<p>Android N runs in a secure, <i>Direct Boot</i> mode
+when the device has been powered on but the user has not unlocked the
+device. To support this, the system provides two storage locations for data:</p>
+
+<ul>
+<li><i>Credential encrypted storage</i>, which is the default storage location
+and only available after the user has unlocked the device.</li>
+<li><i>Device encrypted storage</i>, which is a storage location available both
+during Direct Boot mode and after the user has unlocked the device.</li>
+</ul>
+
+<p>By default, apps do not run during Direct Boot mode.
+If your app needs to take action during Direct Boot mode, you can register
+app components that should be run during this mode. Some common use cases
+for apps needing to run during Direct Boot mode include:</p>
+
+<ul>
+<li>Apps that have scheduled notifications, such as alarm clock
+apps.</li>
+<li>Apps that provide important user notifications, like SMS apps.</li>
+<li>Apps that provide accessibility services, like Talkback.</li>
+</ul>
+
+<p>If your app needs to access data while running in Direct Boot mode, use
+device encrypted storage. Device encrypted storage contains data
+encrypted with a key that is only available after a device has performed a
+successful verified boot.</p>
+
+<p>For data that should be encrypted with a key associated with user
+credentials, such as a PIN or password, use credential encrypted storage.
+Credential encrypted storage is only available after the user has successfully
+unlocked the device, up until when the user restarts the device again. If the
+user enables the lock screen after unlocking the device, this doesn't lock
+credential encrypted storage.</p>
+
+<h2 id="run">Requesting Access to Run During Direct Boot</h2>
+
+<p>Apps must register their components with the system before they
+can run during Direct Boot mode or access device encrypted
+storage. Apps register with the system by marking components as
+<i>encryption aware</i>. To mark your component as encryption aware, set the
+<code>android:encryptionAware</code> attribute to true in your manifest.<p>
+
+<p>Encryption aware components can register to receive a
+<code>LOCKED_BOOT_COMPLETED</code> broadcast message from the
+system when the device has been restarted. At this point device encrypted
+storage is available, and your component can execute tasks that need to be
+run during Direct Boot mode, such as triggering a scheduled alarm.</p>
+
+<p>The following code snippet is an example of how to register a
+{@link android.content.BroadcastReceiver} as encryption aware, and add an
+intent filter for <code>LOCKED_BOOT_COMPLETED</code>, in the app manifest:</p>
+
+<pre>
+<receiever
+ android:encryptionAware="true" >
+ ...
+ <intent-filter>
+ <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
+ </intent-filter>
+</receiver>
+</pre>
+
+<p>Once the user has unlocked the device, all components can access both the
+device encrypted storage as well as credential encrypted storage.</p>
+
+<h2 id="access">Accessing Device Encrypted Storage</h2>
+
+<p>To access device encrypted storage, create a second
+{@link android.content.Context} instance by calling
+<code>Context.createDeviceEncryptedStorageContext()</code>. All storage API
+calls made using this context access the device encrypted storage. The
+following example accesses the device encrypted storage and opens an existing
+app data file:</p>
+
+<pre>
+Context directBootContext = Context.createDeviceEncryptedStorageContext();
+// Access appDataFilename that lives in device encrypted storage
+FileInputStream inStream = directBootContext.openFileInput(appDataFilename);
+// Use inStream to read content...
+</pre>
+
+<p>Use device encrypted storage only for
+information that must be accessible during Direct Boot mode.
+Don't use device encrypted storage as a general-purpose encrypted store.
+For private user information, or encrypted data that isn't needed during
+Direct Boot mode, use credential encrypted storage.</p>
+
+<h2 id="notification">Getting Notified of User Unlock</h2>
+
+<p>Once the user unlocks the device after restart, your app can switch to
+accessing credential encrypted storage and use regular system services that
+depend on user credentials.</p>
+
+<p>To get notified when the user unlocks the device after a reboot,
+register a {@link android.content.BroadcastReceiver} from a running component
+to listen for the <code>ACTION_USER_UNLOCKED</code> message. Or, you can
+receive the existing {@link android.content.Intent#ACTION_BOOT_COMPLETED
+ACTION_BOOT_COMPLETED} message, which now indicates the device has booted and
+the user has unlocked the device.</p>
+
+<p>You can directly query if the user has unlocked the device by calling
+<code>UserManager.isUserUnlocked()</code>.</p>
+
+<h2 id="migrating">Migrating Existing Data</h2>
+
+<p>If a user updates their device to use Direct Boot mode, you might have
+existing data that needs to get migrated to device encrypted storage. Use
+<code>Context.migrateSharedPreferencesFrom()</code> and
+<code>Context.migrateDatabaseFrom()</code> to migrate preference and database
+data between credential encrypted storage and device encrypted storage.</p>
+
+<p>Use your best judgment when deciding what data to migrate from credential
+encrypted storage to device encrypted storage. You should not migrate
+private user information, such as passwords or authorization tokens, to
+device encrypted storage. In some scenarios, you might need to manage
+separate sets of data in the two encrypted stores.</p>
+
+<h2 id="testing">Testing Your Encryption Aware App</h2>
+
+<p>Test your encryption aware app using the new Direct Boot mode. There are
+two ways to enable Direct Boot.</p>
+
+<p class="caution"><strong>Caution:</strong> Enabling Direct Boot
+wipes all user data on the device.</p>
+
+<p>On supported devices with Android N installed, enable
+Direct Boot by doing one of the following:</p>
+
+<ul>
+<li>On the device, enable <b>Developer options</b> if you haven't already by
+going to <b>Settings > About phone</b>, and tapping <b>Build number</b>
+seven times. Once the developer options screen is available, go to
+<b>Settings > Developer options</b> and select
+<b>Convert to file encryption</b>.</li>
+<li>Use the following adb shell commands to enable Direct Boot mode:
+<pre class="no-pretty-print">
+$ adb reboot-bootloader
+$ fastboot --wipe-and-use-fbe
+</pre>
+</li>
+</ul>
+
+<p>An emulated Direct Boot mode is also available, in case you need to switch
+modes on your test devices. Emulated mode should only be used during
+development and may cause data loss. To enable emulated Direct Boot mode,
+set a lock pattern on the device, choose "No thanks" if prompted for a
+secure start-up screen when setting a lock pattern, and then use the
+following adb shell command:</p>
+
+<pre class="no-pretty-print">
+$ adb shell sm set-emulate-fbe true
+</pre>
+
+<p>To turn off emulated Direct Boot mode, use the following command:</p>
+
+<pre class="no-pretty-print">
+$ adb shell sm set-emulate-fbe false
+</pre>
+
+<p>Using these commands causes the device to reboot.</p>
diff --git a/docs/html/preview/features/icu4j-framework.jd b/docs/html/preview/features/icu4j-framework.jd
new file mode 100644
index 0000000..6698194
--- /dev/null
+++ b/docs/html/preview/features/icu4j-framework.jd
@@ -0,0 +1,162 @@
+page.title=ICU4J Android Framework APIs
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document:</h2>
+<ol>
+ <li><a href="#relation">Relationship to ICU4J</a></li>
+ <li><a href="#migration">Migrating to android.icu APIs from ICU4J </a></li>
+ <li><a href="#licence">Licensing</a></li>
+</ol>
+
+<h2>See Also</h2>
+<ol>
+ <li>
+ <a class="external-link" href=
+ "http://userguide.icu-project.org">Documentation for ICU4J</a>
+ </li>
+
+ <li>
+ <a class="external-link" href=
+ "http://site.icu-project.org/#TOC-What-is-ICU-">Latest standards supported
+ by ICU4J</a>
+ </li>
+</ol>
+</div>
+</div>
+
+<p>
+ ICU4J is an open-source, widely used set of Java libraries providing Unicode
+ and globalization support for software applications. Android N
+ exposes a subset of the ICU4J APIs in the Android framework for app developers
+ to use under the {@code android.icu} package. These APIs use
+ localization data present on the device. As a result, you can reduce your APK
+ footprint by not compiling the ICU4J libraries into your APK; instead, you can
+ simply call out to them in the framework. (In this case, you may want to provide
+ <a href="{@docRoot}google/play/publishing/multiple-apks.html">multiple versions
+ of your APK</a>, so users running versions of Android lower than Android N
+ can download a version of the app that contains the ICU4J libraries.)
+</p>
+
+<p>
+ This document begins by providing some basic information on the minimum
+ Android API levels required to support these libraries. It then explains what
+ you need to know about the Android-specific implementation of ICU4J. Finally,
+ it tells you how to use the ICU4J APIs in the Android framework.
+</p>
+
+<h2 id="relation">Relationship to ICU4J</h2>
+
+<p>
+ Android N exposes a subset of the ICU4J APIs via the
+ <code>android.icu</code> package, rather than <code>com.ibm.icu</code>. The
+ Android framework may choose not to
+ expose ICU4J APIs for various reasons; for example, Android N does not expose
+ some deprecated APIs or those that the ICU team have not yet declared as
+ stable. As the ICU team deprecates APIs in the future, Android will also mark
+ them as deprecated but will continue to include them.
+</p>
+
+<p class="table-caption"><strong>Table 1.</strong> ICU and CLDR versions used
+ in Android N.</p>
+<table>
+<tr>
+<th>Android API level</th>
+<th>ICU version</th>
+<th>CLDR version</th>
+</tr>
+<tr>
+<td>Android N</td>
+<td>56</td>
+<td>28</td>
+</tr>
+</table>
+
+<p>Here are a few important things to note:</p>
+
+<ul>
+<li>The ICU4J Android framework APIs do not include all the ICU4J APIs.</li>
+<li>NDK developers should know that Android ICU4C is not supported.</li>
+<li>The APIs in the Android framework do not replace Android’s support for
+<a href="{@docRoot}guide/topics/resources/localization.html">localizing with
+resources</a>.</li>
+</ul>
+
+<h2 id="migration">Migrating to the android.icu package from com.ibm.icu</h2>
+
+<p>
+ If you are already using the ICU4J APIs in your app, and the
+ <code>android.icu</code> APIs meet your requirements, then migrating to
+ the framework APIs requires you to change your Java imports
+ from <code>com.ibm.icu</code> to <code>android.icu</code>. You may then
+ remove your own copy of ICU4J files from the APK.
+</p>
+
+<p class="note">
+ <b>Note</b>: The ICU4J framework APIs use the {@code android.icu}
+ namespace instead of {@code com.ibm.icu}. This is to avoid namespace
+ conflicts in APKs that contain their own {@code com.ibm.icu} libraries.
+</p>
+
+<h3 id="migrate-from-android">
+ Migrating to android.icu APIs from other Android SDK APIs
+</h3>
+
+<p>
+ Some classes in the <code>java</code> and<code>android</code> packages have
+ equivalents to those found in ICU4J. However, ICU4J often provides broader
+ support for standards and languages.
+</p>
+<p>Here are some examples to get you started:</p>
+<table>
+<tr>
+<th>Class</th>
+<th>Alternatives</th>
+</tr>
+<tr>
+<td><code>java.lang.Character</code> </td>
+<td><code>android.icu.lang.UCharacter</code> </td>
+</tr>
+<tr>
+<td><code>java.text.BreakIterator</code> </td>
+<td><code>android.icu.text.BreakIterator</code> </td>
+</tr>
+<tr>
+<td><code>java.text.DecimalFormat</code> </td>
+<td><code>android.icu.text.DecimalFormat</code> </td>
+</tr>
+<tr>
+<td><code>java.util.Calendar</code></td>
+<td>
+<code>android.icu.util.Calendar</code></td>
+</tr>
+<tr>
+<td><code>android.text.BidiFormatter</code>
+ </td>
+<td><code>android.icu.text.Bidi</code>
+ </td>
+</tr>
+<tr>
+<td><code>android.text.format.DateFormat</code>
+ </td>
+<td><code>android.icu.text.DateFormat</code>
+ </td>
+</tr>
+<tr>
+<td><code>android.text.format.DateUtils</code> </td>
+<td><code>android.icu.text.DateFormat</code>
+<code>android.icu.text.RelativeDateTimeFormatter</code>
+</td>
+</tr>
+</table>
+
+<h2 id="licence">Licensing</h2>
+
+<p>
+ ICU4J is released under the ICU license. For details, see the <a class=
+ "external-link" href=
+ "http://userguide.icu-project.org/icufaq#TOC-How-is-the-ICU-licensed-">ICU
+ User Guide.</a>
+</p>
diff --git a/docs/html/preview/features/multi-window.jd b/docs/html/preview/features/multi-window.jd
new file mode 100644
index 0000000..a12ab94
--- /dev/null
+++ b/docs/html/preview/features/multi-window.jd
@@ -0,0 +1,590 @@
+page.title=Multi-Window Support
+page.metaDescription=New support in Android N for showing more than one app at a time.
+page.keywords="multi-window", "android N", "split screen", "free-form"
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>In this document</h2>
+ <ol>
+ <li><a href="#overview">Overview</a></li>
+ <li><a href="#lifecycle">Multi-Window Lifecycle</a></li>
+ <li><a href="#configuring">Configuring Your App for Multi-Window
+ Mode</a></li>
+ <li><a href="#running">Running Your App in Multi-Window Mode</a></li>
+ <li><a href="#testing">Testing Your App's Multi-Window Support</a></li>
+ </ol>
+ <h2>See Also</h2>
+ <ol>
+ <li><a class="external-link"
+ href="https://github.com/googlesamples/android-MultiWindowPlayground">Multi-Window
+ Playground sample app</a></li>
+ </ol>
+ </div>
+</div>
+
+<p>
+ Android N adds support for displaying more than one app at the
+ same time. On handheld devices, two apps can run side-by-side or
+ one-above-the-other in <em>split-screen</em> mode. On TV devices, apps can
+ use <em>picture-in-picture</em> mode to continue video playback while users
+ are interacting with another app.
+</p>
+
+<p>
+ If you build your app with the N Preview SDK, you can configure how your app
+ handles multi-window display. For example, you can specify your activity's
+ minimum allowable dimensions. You can also disable multi-window display for
+ your app, ensuring that the system only shows your app in full-screen
+ mode.
+</p>
+
+<h2 id="overview">Overview</h2>
+
+<p>
+ Android N allows several apps to share the screen at once. For
+ example, a user could split the screen, viewing a web page on the left side
+ while composing an email on the right side. The user experience depends on
+ the device:
+</p>
+
+<ul>
+ <li>Handheld devices running Android N offer split-screen
+ mode. In this mode, the system fills the screen with two apps, showing them
+ either side-by-side or one-above-the-other. The user can drag the dividing
+ line separating the two to make one app larger and the other smaller.
+ </li>
+
+ <li>On Nexus Player running Android N, apps can put themselves
+ in <a href="picture-in-picture.html">picture-in-picture mode</a>, allowing
+ them to continue showing content while the user browses or interacts with
+ other apps.
+ </li>
+
+ <li>Manufacturers of larger devices can choose to enable freeform
+ mode, in which the user can freely resize each activity. If the
+ manufacturer enables this feature, the device offers freeform mode in addition
+ to split-screen mode.
+ </li>
+</ul>
+
+<img src="{@docRoot}preview/images/mw-splitscreen.png" alt="" width="650"
+ srcset="{@docRoot}preview/images/mw-splitscreen.png 1x,
+ {@docRoot}preview/images/mw-splitscreen_2x.png 2x,"
+ id="img-split-screen" />
+<p class="img-caption">
+ <strong>Figure 1.</strong> Two apps running side-by-side in split-screen mode.
+</p>
+
+<p>
+ The user can switch into multi-window mode in the following ways:
+</p>
+
+<ul>
+ <li>If the user opens the <a href="{@docRoot}guide/components/recents.html">Overview
+ screen</a> and performs a long press on an
+ activity title, they can drag that activity to a highlighted portion of the
+ screen to put the activity in multi-window mode.
+ </li>
+
+ <li>If the user performs a long press on the Overview button, the device puts
+ the current activity in multi-window mode, and opens the Overview screen to
+ let the user choose another activity to share the screen.
+ </li>
+</ul>
+
+<p>
+ Users can <a href="{@docRoot}guide/topics/ui/drag-drop.html">drag and
+ drop</a> data from one activity to another while the activities are sharing
+ the screen. (Previously, users could only drag and drop data within a single
+ activity.)
+</p>
+
+<h2 id="lifecycle">Multi-Window Lifecycle</h2>
+
+<p>
+ Multi-window mode does not change the <a href=
+ "{@docRoot}training/basics/activity-lifecycle/index.html">activity
+ lifecycle</a>.
+</p>
+
+<p>
+ In multi-window mode, only the activity the user has most recently interacted
+ with is active at a given time. This activity is considered <em>topmost</em>.
+ All other activities are in the paused state, even if they are visible.
+ However, the system gives these paused-but-visible activities higher priority
+ than activities that are not visible. If the user interacts with one of the
+ paused activities, that activity is resumed, and the previously topmost
+ activity is paused.
+</p>
+
+<p class="note">
+ <strong>Note:</strong> In multi-window mode, an app can be in the paused
+ state and still be visible to the user. An app might need to continue its
+ activities even while paused. For example, a video-playing app that is in
+ paused mode but is visible should continue showing its video. For this
+ reason, we recommend that activities that play video <em>not</em> pause the
+ video in their {@link android.app.Activity#onPause onPause()} handlers.
+ Instead, they should pause video in {@link android.app.Activity#onStop
+ onStop()}, and resume playback in {@link android.app.Activity#onStart
+ onStart()}.
+</p>
+
+<p>
+ When the user puts an app into multi-window mode, the system notifies the
+ activity of a configuration change, as specified in <a href=
+ "{@docRoot}guide/topics/resources/runtime-changes.html">Handling Runtime
+ Changes</a>. Essentially, this change has the same activity-lifecycle
+ implications as when the system notifies the app that the device has switched
+ from portrait to landscape mode, except that the device dimensions are
+ changed instead of just being swapped. As discussed in <a href=
+ "{@docRoot}guide/topics/resources/runtime-changes.html">Handling Runtime
+ Changes</a>, your activity can handle the configuration change itself, or it
+ can allow the system to destroy the activity and recreate it with the new
+ dimensions.
+</p>
+
+<p>
+ If the user is resizing a window and makes it larger in either dimension, the
+ system resizes the activity to match the user action and issues <a href=
+ "{@docRoot}guide/topics/resources/runtime-changes.html">runtime changes</a>
+ as needed. If the app lags behind in drawing in newly-exposed areas, the
+ system temporarily fills those areas with the color specified by the {@link
+ android.R.attr#windowBackground windowBackground} attribute or by the default
+ <code>windowBackgroundFallback</code> style attribute.
+</p>
+
+<h2 id="configuring">Configuring Your App for Multi-Window Mode</h2>
+
+<p>
+ If your app targets Android N, you can configure how and
+ whether your app's activities support multi-window display. You can set
+ attributes in your manifest to control both size and layout.
+ A root activity's attribute settings apply to all activities
+ within its task stack.
+</p>
+
+<p class="note">
+ <strong>Note:</strong> If you build a multi-orientation app with a version of the
+ SDK lower than Android N, and the user uses the app in
+ multi-window mode, the system forcibly resizes the app. The system presents a
+ dialog box warning the user that the app may behave unexpectedly. The system
+ does <em>not</em> resize fixed-orientation apps; if
+ the user attempts to open a fixed-orientation app under multi-window mode,
+ the app takes over the whole screen.
+</p>
+
+<h4 id="resizeableActivity">android:resizeableActivity</h4>
+<p>
+ Set this attribute in your manifest's <code><activity></code> or
+ <code><application></code> node to enable or disable multi-window
+ display:
+</p>
+
+<pre>
+android:resizeableActivity=["true" | "false"]
+</pre>
+
+<p>
+ If this attribute is set to true, the activity can be launched in
+ split-screen and freeform modes. If the attribute is set to false, the
+ activity does not support multi-window mode. If this value is false, and the
+ user attempts to launch the activity in multi-window mode, the activity takes
+ over the full screen.
+</p>
+
+<p>
+ If your app targets Android N, but you do not specify a value
+ for this attribute, the attribute's value defaults to true.
+</p>
+
+<h4 id="supportsPictureInPicture">android:supportsPictureInPicture</h4>
+
+<p>
+ Set this attribute in your manifest's <code><activity></code> node to
+ indicate whether the activity supports picture-in-picture display. This
+ attribute is ignored if <code>android:resizeableActivity</code> is false.
+</p>
+
+<pre>
+android:supportsPictureInPicture=["true" | "false"]
+</pre>
+
+<h3 id="layout">Layout attributes</h3>
+
+<p>
+ With Android N, the <code><layout></code> manifest element
+ supports several attributes that affect how an activity behaves in
+ multi-window mode:
+</p>
+
+<dl>
+ <dt>
+ <code>android:defaultWidth</code>
+ </dt>
+
+ <dd>
+ Default width of the activity when launched in freeform mode.
+ </dd>
+
+ <dt>
+ <code>android:defaultHeight</code>
+ </dt>
+
+ <dd>
+ Default height of the activity when launched in freeform mode.
+ </dd>
+
+ <dt>
+ <code>android:gravity</code>
+ </dt>
+
+ <dd>
+ Initial placement of the activity when launched in freeform mode. See the
+ {@link android.view.Gravity} reference for suitable values.
+ </dd>
+
+ <dt>
+ <code>android:minimalSize</code>
+ </dt>
+
+ <dd>
+ Minimum height and minimum width for the activity in both split-screen
+ and freeform modes. If the user moves the divider in split-screen mode
+ to make an activity smaller than the specified minimum, the system crops
+ the activity to the size the user requests.
+ </dd>
+</dl>
+
+<p>
+ For example, the following code shows how to specify an activity's default
+ size and location, and its minimum size, when the activity is displayed in
+ freeform mode:
+</p>
+
+<pre>
+<activity android:name=".MyActivity">
+ <layout android:defaultHeight="500dp"
+ android:defaultWidth="600dp"
+ android:gravity="top|end"
+ android:minimalSize="450dp" />
+</activity>
+</pre>
+
+<h2 id="running">Running Your App in Multi-Window Mode</h2>
+
+<p>
+ Android N offers new functionality to support apps that can run
+ in multi-window mode.
+</p>
+
+<h3 id="disabled-features">Disabled features in multi-window mode</h3>
+
+<p>
+ Certain features are disabled or ignored when a device is in multi-window
+ mode, because they don’t make sense for an activity which may be sharing the
+ device screen with other activities or apps. Such features include:
+
+<ul>
+ <li>Some <a href="{@docRoot}training/system-ui/index.html">System UI</a>
+ customization options are disabled; for example, apps cannot hide the status
+ bar if they are not running in full-screen mode.
+ </li>
+
+ <li>The system ignores changes to the <code><a href=
+ "{@docRoot}guide/topics/manifest/activity-element.html#screen"
+ >android:screenOrientation</a></code> attribute.
+ </li>
+</ul>
+
+<h3 id="change-notification">Multi-window change notification and querying</h3>
+
+<p>
+ The following new methods have been added to the {@link android.app.Activity}
+ class to support multi-window display. For details on each method, see the
+ <a href="{@docRoot}preview/setup-sdk.html#docs-dl">N Preview SDK Reference</a>.
+</p>
+
+<dl>
+ <dt>
+ <code>Activity.inMultiWindow()</code>
+ </dt>
+
+ <dd>
+ Call to find out if the activity is in multi-window mode.
+ </dd>
+
+ <dt>
+ <code>Activity.inPictureInPicture()</code>
+ </dt>
+
+ <dd>
+ Call to find out if the activity is in picture-in-picture mode.
+
+ <p class="note">
+ <strong>Note:</strong> Picture-in-picture mode is a special case of
+ multi-window mode. If <code>myActivity.inPictureInPicture()</code>
+ returns true, then <code>myActivity.inMultiWindow()</code> also returns
+ true.
+ </p>
+ </dd>
+
+ <dt>
+ <code>Activity.onMultiWindowChanged()</code>
+ </dt>
+
+ <dd>
+ The system calls this method whenever the activity goes into or out of
+ multi-window mode. The system passes the method a value of true if the
+ activity is entering multi-window mode, and false if the activity is
+ leaving multi-window mode.
+ </dd>
+
+ <dt>
+ <code>Activity.onPictureInPictureChanged()</code>
+ </dt>
+
+ <dd>
+ The system calls this method whenever the activity goes into or out of
+ picture-in-picture mode. The system passes the method a value of true if
+ the activity is entering picture-in-picture mode, and false if the activity
+ is leaving picture-in-picture mode.
+ </dd>
+</dl>
+
+<p>
+ There are also {@link android.app.Fragment} versions of each of these
+ methods, for example <code>Fragment.inMultiWindow()</code>.
+</p>
+
+<h3 id="entering-pip">Entering picture-in-picture mode</h3>
+
+<p>
+ To put an activity in picture-in-picture mode, call the new method
+ <code>Activity.enterPictureInPicture()</code>. This method has no effect if
+ the device does not support picture-in-picture mode. For more information,
+ see the <a href="picture-in-picture.html">Picture-in-Picture</a> documentation.
+</p>
+
+<h3 id="launch">Launch New Activities in Multi-Window Mode</h3>
+
+<p>
+ When you launch a new activity, you can hint to the system that the new
+ activity should be displayed adjacent to the current one, if possible. To do
+ this, use the flag
+ <code>Intent.FLAG_ACTIVITY_LAUNCH_TO_ADJACENT</code>. Passing
+ this flag requests the following behavior:
+</p>
+
+<ul>
+ <li>If the device is in split-screen mode, the system attempts to create the
+ new activity next to the activity that launched it, so the two activities
+ share the screen. The system is not guaranteed to be able to do this, but it
+ makes the activities adjacent if possible.
+ </li>
+
+ <li>If the device is not in split-screen mode, this flag has no effect.
+ </li>
+</ul>
+
+<p>
+ If a device is in freeform mode and you are launching a new activity, you can
+ specify the new activity's dimensions and screen location by calling
+ <code>ActivityOptions.setLaunchBounds()</code>. This method has no effect if
+ the device is not in multi-window mode.
+</p>
+
+<p class="note">
+ <strong>Note:</strong> If you launch an activity within a task stack, the
+ activity replaces the activity on the screen, inheriting all of its
+ multi-window properties. If you want to launch the new activity as a separate
+ window in multi-window mode, you must launch it in a new task stack.
+</p>
+
+<h3 id="dnd">Supporting drag and drop</h3>
+
+<p>
+ Users can <a href="{@docRoot}guide/topics/ui/drag-drop.html">drag and
+ drop</a> data from one activity to another while the two activities are
+ sharing the screen. (Previously, users could only drag and drop data within a
+ single activity.) For this reason, you may want to add drag and drop
+ functionality to your app if your app does not currently support it.
+</p>
+
+<p>
+ The N Preview SDK extends the <a href=
+ "{@docRoot}reference/android/view/package-summary.html"><code>android.view</code></a>
+ package to support cross-app drag and drop. For details on the following
+ classes and methods, see the <a href="{@docRoot}preview/setup-sdk.html#docs-dl">N
+ Preview SDK Reference</a>.
+</p>
+
+<dl>
+ <dt>
+ <code>android.view.DropPermissions</code>
+ </dt>
+
+ <dd>
+ Token object responsible for specifying the permissions granted to the app
+ that receives a drop.
+ </dd>
+
+ <dt>
+ <code>View.startDragAndDrop()</code>
+ </dt>
+
+ <dd>
+ New alias for {@link android.view.View#startDrag View.startDrag()}. To
+ enable cross-activity drag and drop, pass the new flag
+ <code>View.DRAG_FLAG_GLOBAL</code>. If you need to give URI permissions to
+ the recipient activity, pass the new flags
+ <code>View.DRAG_FLAG_GLOBAL_URI_READ</code> or
+ <code>View.DRAG_FLAG_GLOBAL_URI_WRITE</code>, as appropriate.
+ </dd>
+
+ <dt>
+ <code>View.cancelDragAndDrop()</code>
+ </dt>
+
+ <dd>
+ Cancels a drag operation currently in progress. Can only be called by the
+ app that originated the drag operation.
+ </dd>
+
+ <dt>
+ <code>View.updateDragShadow()</code>
+ </dt>
+
+ <dd>
+ Replaces the drag shadow for a drag operation currently in progress. Can
+ only be called by the app that originated the drag operation.
+ </dd>
+
+ <dt>
+ <code>Activity.requestDropPermissions()</code>
+ </dt>
+
+ <dd>
+ Requests the permissions for the content URIs passed with the {@link
+ android.content.ClipData} contained in a {@link android.view.DragEvent}.
+ </dd>
+</dl>
+
+<h2 id="testing">Testing Your App's Multi-Window Support</h2>
+
+<p>
+ Whether or not you update your app for Android N, you should
+ verify how it behaves in multi-window mode in case a user tries to launch it
+ in multiwindow mode on a device running Android N.
+</p>
+
+<h3 id="configuring">Configuring a Test Device</h3>
+
+<p>
+ If you install Android N on a device, split-screen mode is
+ automatically supported.
+</p>
+
+<h3 id="test-non-n">If your app was not built with the N Preview SDK</h3>
+
+<p>
+ If you did not build your app with the N Preview SDK and the user attempts to use
+ the app in multi-window mode, the system forcibly resizes the app unless the app
+ declares a fixed orientation.
+</p>
+
+<p>
+ If your app does not declare a fixed orientation, you should launch your app
+ on a device running Android N and attempt to put the app in
+ split-screen mode. Verify that the user experience is
+ acceptable when the app is forcibly resized.
+</p>
+
+<p>
+ If the app declares a fixed orientation, you should attempt to put the app in
+ multi-window mode. Verify that when you do so, the app remains
+ in full-screen mode.
+</p>
+
+<h3 id="test-mw">If you support multi-window mode</h3>
+
+<p>
+ If you built your app with the N Preview SDK and have not disabled
+ multi-window support, verify the following behavior under both split-screen
+ and freeform modes.
+</p>
+
+<ul>
+ <li>Launch the app in full-screen mode, then switch to multi-window mode by
+ long-pressing the Overview button. Verify that the app switches properly.
+ </li>
+
+ <li>Launch the app directly in multi-window mode, and verify that the app
+ launches properly. You can launch an app in multi-window mode by pressing the
+ Overview button, then long-pressing the title bar of your app and dragging it
+ to one of the highlighted areas on the screen.
+ </li>
+
+ <li>Resize your app in split-screen mode by dragging the divider line.
+ Verify that the app resizes without crashing, and that necessary UI elements
+ are visible.
+ </li>
+
+ <li>If you have specified minimum dimensions for your app, attempt to resize
+ the app below those dimensions. Verify that you cannot resize the app to be
+ smaller than the specified minimum.
+ </li>
+
+ <li>Through all tests, verify that your app's performance is acceptable. For
+ example, verify that there is not too long a lag to update the UI after the
+ app is resized.
+ </li>
+</ul>
+
+<h4 id="test-checklist">Testing checklist</h4>
+
+<p>
+ To verify your app's performance in multi-window mode, try the following
+ operations. You should try these operations in both split-screen and
+ multi-window mode, except where otherwise noted.
+</p>
+
+<ul>
+ <li>Enter and leave multi-window mode.
+ </li>
+
+ <li>Switch from your app to another app, and verify that the app behaves
+ properly while it is visible but not active. For example, if your app is
+ playing video, verify that the video continues to play while the user is
+ interacting with another app.
+ </li>
+
+ <li>In split-screen mode, try moving the dividing bar to make your app both
+ larger and smaller. Try these operations in both side-by-side and
+ one-above-the-other configurations. Verify that the app does not crash,
+ essential functionality is visible, and the resize operation doesn't take too
+ long.
+ </li>
+
+ <li>Perform several resize operations in rapid succession. Verify that your
+ app doesn't crash or leak memory. For information about checking your app's
+ memory usage, see <a href="{@docRoot}tools/debugging/debugging-memory.html">
+ Investigating Your RAM Usage</a>.
+ </li>
+
+ <li>Use your app normally in a number of different window configurations, and
+ verify that the app behaves properly. Verify that text is readable, and that
+ UI elements aren't too small to interact with.
+ </li>
+</ul>
+
+<h3 id="test-disabled-mw">If you have disabled multi-window support</h3>
+
+<p>
+ If you disabled multi-window support by setting
+ <code>android:resizableActivity="false"</code>, you should launch your app on
+ a device running Android N and attempt to put the app in
+ freeform and split-screen modes. Verify that when you do so, the app remains
+ in full-screen mode.
+</p>
diff --git a/docs/html/preview/features/multilingual-support.jd b/docs/html/preview/features/multilingual-support.jd
new file mode 100644
index 0000000..ac96452
--- /dev/null
+++ b/docs/html/preview/features/multilingual-support.jd
@@ -0,0 +1,218 @@
+page.title=Language and Locale
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document:</h2>
+<ol>
+ <li><a href="#preN">Challenges in Resolving Language Resources</a></li>
+ <li><a href="#postN">Improvements to Resource-Resolution Strategy</a></li>
+ <li><a href="#design">Designing your App to Support Additional
+ Locales</a></li>
+
+</ol>
+
+</div>
+</div>
+
+<p>Android N provides enhanced support for multilingual users,
+allowing them to select multiple locales in settings. Android N
+provides this capability by greatly expanding the number of locales supported
+and changing the way the system resolves resources. The new method of resolving
+resources is more robust and designed to be compatible with existing APKs, but
+you should take extra care to spot any unexpected behavior. For example, you
+should test to make sure that your app defaults to the expected language. Also,
+if your app supports multiple languages, you should ensure that this support works as
+intended. Finally, you should try to ensure that your app gracefully handles
+languages that you didn't explicitly design it to support.</p>
+
+<p>This document starts by explaining the resource resolution strategy prior to
+Android N. Next, it describes Android N's improved
+resource-resolution strategy. Last, it explains how to take advantage of
+the expanded number of locales to support more multilingual users.</p>
+
+<h2 id="preN">Challenges in Resolving Language Resources</h2>
+
+<p>Prior to Android N, Android could not always successfully
+ match app and system locales.</p>
+
+ <p>For example, assume that you have the following situation:</p>
+ <ul>
+ <li>Your app's default language is {@code en_US} (US English), and it also has
+ Spanish strings localized in {@code es_ES}
+ resource files.</li>
+ <li> A device is set to {@code es_MX} </li>
+
+<p>When your Java code refers to strings, the system would load
+strings from the default ({@code en_US}) resource file, even if the app has
+Spanish resources localized under {@code es_ES}. This is because when the system
+ cannot find an exact match, it continues to look for resources by stripping the
+ country code off the locale. Finally, if no match is found, the system falls
+ back to the default, which is {@code en_US}. </p>
+
+
+<p>The system would also default to {@code en_US} if the user chose a language that
+the app didn't support at all, like French. For example:</p>
+
+<p class="table-caption" id="t-resource-res">
+<strong>Table 1.</strong> Resource resolution without an exact locale match.
+</p>
+<table>
+<tbody>
+<tr>
+<th>User Settings</th>
+<th>App Resources</th>
+<th>Resource Resolution</th>
+</tr>
+<tr>
+<td>fr_CH</td>
+<td>
+default (en)<br>
+de_DE<br>
+es_ES<br>
+fr_FR<br>
+it_IT<br>
+</td>
+ <td>
+Try fr_CH => Fail<br>
+Try fr => Fail<br>
+Use default (en)
+</td>
+ </tr>
+ </tbody>
+</table>
+
+
+<p>In this example, the system displays English strings without
+knowing whether the user can understand English. This behavior is pretty common
+today. Android N should substantially reduce the frequency
+of outcomes like this one.</p>
+
+<h2 id="postN">Improvements to Resource-Resolution Strategy</h2>
+<p>Android N brings more robust resource resolution, and
+finds better fallbacks automatically. However, to speed up resolution and improve
+ maintainability, you should store resources in the most common parent dialect.
+ For example, if you were storing Spanish resources in the {@code es-US} directory
+ before, move them into the {@code es-419} directory, which contains Latin American Spanish.
+ Similarly, if you have resource strings in a folder named {@code en-GB}, rename
+ the folder to {@code en-001} (international English), because the most common
+ parent for <code>en-GB</code> strings is {@code en-001}.
+ The following examples explain why these practices improve performance and
+reliability of resource resolution.</p>
+
+<h3>Resource resolution examples</h3>
+
+<p>With Android N, the case described in <strong>Table 1</strong> is resolved
+differently:</p>
+
+<p class="table-caption" id="t-improved-res">
+<strong>Table 2.</strong> An improved resolution strategy for when there is no
+exact locale match.</p>
+<table>
+<tr>
+<th>User Settings</th>
+<th>App Resources</th>
+<th>Resource Resolution</th>
+</tr>
+<tr>
+<td><ol>
+<li> fr_CH</li>
+</ol>
+</td>
+<td>
+default (en)<br>
+de_DE<br>
+es_ES<br>
+fr_FR<br>
+it_IT<br>
+</td>
+<td>
+Try fr_CH => Fail<br>
+Try fr => Fail<br>
+Try children of fr => fr_FR<br>
+Use fr_FR
+</td>
+</tr>
+
+</table>
+
+
+<p>Now the user gets French resources instead of English. This example also shows
+ why you should store French strings in {@code fr} rather than {@code fr_FR}
+ for Android N. Here the course of action is to match the closest parent dialect,
+ making resolution faster and more predictable.</p>
+
+<p>In addition to this improved resolution logic, Android now offers more
+ user languages to choose from. Let’s try the above example again with Italian
+ specified as an additional user language, but without app support for French. </p>
+
+<p class="table-caption" id="t-2d-choice">
+<strong>Table 3.</strong> Resource resolution when the app only matches the
+user's second-preferred locale setting.</p>
+<table>
+<tr>
+<th>User Settings</th>
+<th>App Resources</th>
+<th>Resource Resolution</th>
+
+</tr>
+<tr>
+<td><ol>
+<li> fr_CH</li>
+<li> it_CH</li>
+</ol>
+</td>
+<td>
+default (en)<br>
+de_DE<br>
+es_ES<br>
+it_IT<br>
+</td>
+<td>
+Try fr_CH => Fail<br>
+Try fr => Fail<br>
+Try children of fr => Fail<br>
+Try it_CH => Fail<br>
+Try it => Fail<br>
+Try children of it => it_IT<br>
+Use it_IT
+</td>
+
+</tr>
+
+</table>
+<p>The user still gets a language they understand, even though the app doesn’t
+support French.</p>
+
+
+<h2 id="design">Designing your App to Support Additional Locales</h2>
+<h3>LocaleList API</h3>
+
+<p>Android N adds a new API {@code LocaleList.GetDefault()}
+that lets apps directly query the list of languages a user has specified. This API
+allows you to create more sophisticated
+ app behavior and better-optimized display of content. For example, Search
+ can show results in multiple languages based on user’s settings. Browser apps
+ can avoid offering to translate pages in a language the user already knows,
+ and keyboard apps can auto-enable all appropriate layouts. </p>
+
+<h3>Formatters</h3>
+
+<p>Up through Android 6.0 (API level 23), Android supported only one or two locales
+ for many common languages
+(en, es, ar, fr, ru). Because there were only a few variants of each language,
+apps could get away with storing some numbers and dates as hard coded strings
+in resource files. However, with Android's broadened set of supported locales,
+there can be
+significant differences in formats for dates, times, currencies, and similar
+information even within a single locale. Hard-coding your formats can produce a
+confusing experience for end users. Therefore, when developing for Android N
+make sure to use formatters instead of hard coding numbers and date strings.</p>
+
+<p>A prime example is Arabic, whose support Android N expands from
+one {@code ar_EG} to 27 Arabic locales. These locales can share most resources,
+but some prefer ASCII digits, while others prefer native digits. For example,
+when you want to create a sentence with a digit variable, such as
+"Choose a 4 digit pin", use formatters as shown below:</p>
+
+<pre> format(locale, "Choose a %d-digit PIN", 4)</pre>
diff --git a/docs/html/preview/features/notification-updates.jd b/docs/html/preview/features/notification-updates.jd
new file mode 100644
index 0000000..d3042ad
--- /dev/null
+++ b/docs/html/preview/features/notification-updates.jd
@@ -0,0 +1,334 @@
+page.title=Notifications
+page.tags=notifications
+helpoutsWidget=true
+page.image=/preview/images/notifications-card.png
+
+trainingnavtop=true
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<!-- table of contents -->
+<h2>This document includes</h2>
+<ol>
+ <li><a href="#direct">Direct Reply</a></li>
+ <li><a href="#bundle">Bundled Notifications</a></li>
+ <li><a href="#custom">Custom Views</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>Android N introduces several new APIs that allow apps to post
+notifications that are highly visible and interactive.</p>
+
+<p>Android N extends the existing {@link android.support.v4.app.RemoteInput}
+notification API to support inline replies on handsets. This feature allows users
+ to quickly respond from the notification shade without visiting your app.</p>
+
+<p>
+ Android N also allows you to bundle similar notifications to
+ appear as a single notification. To make this possible, Android N uses the existing {@link
+ android.support.v4.app.NotificationCompat.Builder#setGroup
+ NotificationCompat.Builder.setGroup()} method. Users can expand each of the
+ notifications, and perform actions such as reply and dismiss on each of the
+ notifications, individually from the notification shade.
+</p>
+
+<p>Last, Android N also adds new APIs that allow you to leverage system
+decorations in your app’s customized notification views. These APIs help
+ensure that the notification views share a consistent presentation with
+standard templates.</p>
+
+<p>This document highlights some of the key changes that you should take into
+ account when using the new notification features in your apps.</p>
+
+<h2 id="direct">Direct Reply</h2>
+
+<p>With the Direct Reply feature in Android N, users can quickly
+respond to text messages or update task lists directly within the notification
+interface. On a handheld, the inline reply action appears as an additional button
+ attached to the notification. When a user replies via keyboard, the system attaches
+ the text response to the intent
+ you had specified for the notification action and sends the intent to your
+ handheld app.
+
+
+<img id="fig-reply-button" src="{@docRoot}preview/images/inline-reply.png"
+ srcset="{@docRoot}preview/images/inline-reply.png 1x,
+ {@docRoot}preview/images/inline-reply_2x.png 2x"
+ width="400">
+<p class="img-caption">
+ <strong>Figure 1.</strong> Android N adds the <strong>Reply</strong>
+ action button.
+</p>
+
+<h3>Adding inline reply actions</h3>
+
+<p>To create a notification action that supports direct reply:
+</p>
+
+<ol>
+<li>Create an instance of {@link android.support.v4.app.RemoteInput.Builder}
+ that you can add to your notification
+action. This class's constructor accepts a string that the system uses as the key
+ for the text input. Later, your handheld app uses that key to retrieve the text
+ of the input.
+
+<pre>
+// Key for the string that's delivered in the action's intent
+private static final String KEY_TEXT_REPLY = "key_text_reply";
+String replyLabel = getResources().getString(R.string.reply_label);
+RemoteInput remoteInput = new RemoteInput.Builder(KEY_TEXT_REPLY)
+ .setLabel(replyLabel)
+ .build();
+</pre>
+</li>
+<li>Attach the {@link android.support.v4.app.RemoteInput}
+ object to an action using <code>addRemoteInput()</code>.
+
+<pre>
+// Create the reply action and add the remote input
+Notification.Action action =
+ new Notification.Action.Builder(R.drawable.ic_reply_icon,
+ getString(R.string.label), replyPendingIntent)
+ .addRemoteInput(remoteInput)
+ .build();
+</pre>
+</li>
+
+<li>Apply the action to a notification and issue the notification.
+
+<pre>
+// Build the notification and add the action
+Notification notification =
+ new Notification.Builder(mContext)
+ .setSmallIcon(R.drawable.ic_message)
+ .setContentTitle(getString(R.string.title))
+ .setContentText(getString(R.string.content))
+ .addAction(action))
+ .build();
+
+// Issue the notification
+NotificationManager notificationManager =
+ NotificationManager.from(mContext);
+notificationManager.notify(notificationId, notification);
+
+</pre>
+</li>
+
+</ol>
+
+
+<p> The system prompts the user to input a response when they trigger the
+notification action. </p>
+
+<img id="fig-user-input" src="{@docRoot}preview/images/inline-type-reply.png"
+ srcset="{@docRoot}preview/images/inline-type-reply.png 1x,
+ {@docRoot}preview/images/inline-type-reply_2x.png 2x"
+ width="300">
+<p class="img-caption">
+ <strong>Figure 2.</strong> The user inputs text from the notification shade.
+</p>
+
+<h3>Retrieving user input from the inline reply</h3>
+
+<p>To receive user input from the notification interface to the activity you
+declared in the reply action's intent:</p>
+<ol>
+<li> Call {@link android.support.v4.app.RemoteInput#getResultsFromIntent
+ getResultsFromIntent()} by passing the notification action’s intent as
+ the input parameter. This method returns a {@link android.os.Bundle} that
+ contains the text response.
+</li>
+
+<pre>
+Bundle remoteInput = RemoteInput.getResultsFromIntent(intent);
+</pre>
+
+<li>Query the bundle using the result key (provided to the {@link
+ android.support.v4.app.RemoteInput.Builder} constructor).
+</li>
+</ol>
+
+<p>The following code snippet illustrates how a method retrieves the input text
+from a bundle:</p>
+
+<pre>
+// Obtain the intent that started this activity by calling
+// Activity.getIntent() and pass it into this method to
+// get the associated string.
+
+private CharSequence getMessageText(Intent intent) {
+ Bundle remoteInput = RemoteInput.getResultsFromIntent(intent);
+ if (remoteInput != null) {
+ return remoteInput.getCharSequence(KEY_TEXT_REPLY);
+ }
+ return null;
+ }
+</pre>
+
+<p>Apps can apply logic to decide what actions to take on the retrieved
+text.
+For interactive apps (like chats), provide more context in the notification itself
+ (for example, multiple lines of chat history, including the user’s own messages)
+ so that the user can respond appropriately.
+When the user responds via {@link android.support.v4.app.RemoteInput},
+ include the text in the reply history with the {@code setRemoteInputHistory()}
+ method.</p>
+
+<h2 id="bundle">Bundled Notifications</h2>
+
+<p>Android N provides developers with a new way to represent
+ a queue of notifications: <i>bundled notifications</i>. This is similar to the
+ <a href="{@docRoot}training/wearables/notifications/stacks.html">Notification
+ Stacks</a> feature in Android Wear. For example, if your app creates notifications
+ for received messages, when more than one message is received, bundle the
+ notifications together as a single group. You can
+ use the existing {@link android.support.v4.app.NotificationCompat.Builder#setGroup
+Builder.setGroup()} method to bundle similar notifications.</p>
+
+<p>
+ A notification group imposes a hierarchy on the notifications comprising it.
+ At the top of that hierarchy is a parent notification that displays summary
+ information for the group. The user can progressively
+ expand the notification group, and the system shows more information as the
+ user drills deeper. When the user expands the bundle, the system reveals more
+ information for all its child notifications; when the user
+ expands one of those notifications, the system reveals its entire content.
+</p>
+
+<img id="fig-bundles" src="{@docRoot}preview/images/bundles.png"
+ srcset="{@docRoot}preview/images/bundles.png 1x,
+ {@docRoot}preview/images/bundles_2x.png 2x"
+ width="300">
+<p class="img-caption">
+ <strong>Figure 3.</strong> The user can progressively expand the notification
+ group.
+</p>
+
+<p>To learn how to add notifications to a group, see
+<a href="{@docRoot}training/wearables/notifications/stacks.html#AddGroup">Add
+Each Notification to a Group</a>.</p>
+
+
+<h3 id="best-practices">Best practices for bundled notifications</h3>
+<p>This section provides guidelines about when to use notification groups instead
+of the {@link android.app.Notification.InboxStyle InboxStyle}
+notifications that have been available in earlier versions of the
+Android platform.</p>
+
+<h3>When to use bundled notifications</h3>
+
+<p>You should use notification groups only if all of the following conditions are
+true for your use case:</p>
+
+<ul>
+ <li>The child notifications are complete notifications and can be displayed
+ individually without the need for a group summary.</li>
+ <li>There is a benefit to surfacing the child notifications individually. For
+ example:
+ </li>
+ <ul>
+ <li>They are actionable, with actions specific to each child.</li>
+ <li>There is more information to the child that the user wants to read.</li>
+ </ul>
+</ul>
+
+<p>Examples of good use cases for notification groups include: a messaging app
+displaying a list of incoming messages, or an email app displaying a list of
+received emails.</p>
+
+<p>
+Examples of cases where a single notification is preferable
+ include individual messages from a single person, or a list representation of
+ single-line text items. You can use
+({@link android.app.Notification.InboxStyle InboxStyle} or
+{@link android.app.Notification.BigTextStyle BigTextStyle}) to accomplish
+this.
+</p>
+
+<h3 id ="post">Displaying bundled notifications</h3>
+
+<p>
+ The app should always post a group summary, even if the group contains just a
+ single child. The system will suppress the summary and directly display the
+ child notification if it only contains a single notification. This ensures
+ that the system can provide a consistent experience when the user swipes away
+ children of a group.
+</p>
+
+<p class="note">
+ <strong>Note:</strong> This version of Android N does not yet
+ suppress the summary for notification groups containing a single child. This
+ functionality will be added in a later version of Android N.
+</p>
+
+<h3>Peeking notifications</h3>
+
+<p>While the system usually displays child notifications as a group, you can set
+ them to temporarily appear as
+ <a href="{@docRoot}guide/topics/ui/notifiers/notifications.html#Heads-up">
+ heads-up notifications</a>. This feature is especially useful because it allows
+ immediate access to the most recent child and the actions associated with it.
+</p>
+
+
+<h3>Backwards compatibility</h3>
+
+<p>
+ Both notification groups and remote input have been a part of the {@link
+ android.app.Notification} API since Android 5.0 (API level 21) to support
+ Android Wear devices. If you've already built notifications with these APIs,
+ the only action you must take is to verify that the app behavior corresponds
+ to the guidelines described above, and to consider implementing {@code
+ setRemoteInputHistory()}.
+</p>
+
+<p>
+ In order to support backward compatibility, the same APIs are available with
+ the support library's {@link android.support.v4.app.NotificationCompat}
+ class, allowing you to build notifications that works on earlier Android
+ versions. On handhelds and tablets, users only see the summary notification,
+ so an app should still have an inbox style or an equivalent notification
+ representative for the whole information content of the group. As Android
+ Wear devices allow users to see all child notifications even on older
+ platform levels, you should build child notifications regardless of API
+ level.
+</p>
+
+<h2 id="custom"> Custom Views</h2>
+<p>Starting from Android N, you can customize notification views and
+still obtain system decorations like notification headers, actions, and
+expandable layouts.</p>
+
+<p>To enable this capability, Android N adds the following APIs to style your
+ custom view:</p>
+
+<dl>
+<dt>
+{@code DecoratedCustomViewStyle()}</dt>
+<dd> Styles notifications other than media
+notifications.</dd>
+<dt>
+{@code DecoratedMediaCustomViewStyle()}</dt>
+<dd> Styles media notifications.</dd>
+</dl>
+
+<p>To use this new API, call the {@code setStyle()} method, passing to it
+the desired custom view style.</p>
+
+<p>This snippet shows how to construct a custom notification object with the
+{@code DecoratedCustomViewStyle()} method.</p>
+
+<pre>
+Notification noti = new Notification.Builder()
+ .setSmallIcon(R.drawable.ic_stat_player)
+ .setLargeIcon(albumArtBitmap))
+ .setCustomContentView(contentView);
+ .setStyle(new Notification.DecoratedCustomViewStyle())
+ .build();
+
+</pre>
diff --git a/docs/html/preview/features/picture-in-picture.jd b/docs/html/preview/features/picture-in-picture.jd
new file mode 100644
index 0000000..106ad8b
--- /dev/null
+++ b/docs/html/preview/features/picture-in-picture.jd
@@ -0,0 +1,213 @@
+page.title=Picture-in-picture
+page.keywords=preview,sdk,PIP,Picture-in-picture
+page.tags=androidn
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>In this document</h2>
+<ol>
+ <li><a href="#declaring">Declaring Your Activity Supports
+Picture-in-picture</a></li>
+ <li><a href="#pip_button">Switching Your Activity to Picture-in-picture</a>
+</li>
+ <li><a href="#handling_ui">Handling UI During Picture-in-picture</a>
+</li>
+ <li><a href="#continuing_playback">Continuing Video Playback While in
+Picture-in-picture</a></li>
+ <li><a href="#single_playback">Using a Single Playback Activity for
+Picture-in-picture</a></li>
+ <li><a href="#best">Best Practices</a></li>
+</ol>
+
+<h2>See Also</h2>
+<ol>
+ <li><a href="{@docRoot}preview/features/multi-window.html">Multi-Window
+Support</a></li>
+</ol>
+
+</div>
+</div>
+
+<p>In Android N, Android TV users can now watch a video
+in a pinned window in a corner of the screen when navigating within
+apps. Picture-in-picture (PIP) mode lets apps run a video
+activity in the pinned window while another activity continues in the
+background. The PIP window lets users multitask while using your app, which
+helps users be more productive.</p>
+
+<p>Your app can decide when to trigger PIP mode. Here are some examples of
+when to enter PIP mode:</p>
+
+<ul>
+<li>Your app can move a video into PIP mode when the user navigates
+back from the video to browse other content.</li>
+<li>Your app can switch a video into PIP mode while a user watches the end
+of an episode of content. The main screen displays promotional or summary
+information about the next episode in the series.</li>
+<li>Your app can provide a way for users to queue up additional content while
+they watch a video. The video continues playing in PIP mode while the main
+screen displays a content selection activity.</li>
+</ul>
+
+<p>The PIP window is 240x135 dp and is shown at the top-most layer in one of
+the four corners of the screen, chosen by the system. The user can bring up a
+PIP menu that lets them toggle the PIP window to full-screen, or close the PIP
+window, by holding down the <b>Home</b> button on the remote. If another
+video starts playing on the main screen, the PIP window is automatically
+closed. Users can also close the PIP window through Recents.</p>
+
+<img src="{@docRoot}preview/images/pip-active.png" />
+<p class="img-caption"><strong>Figure 1.</strong> A Picture-in-picture
+video visible in a corner of the screen while the user browses content
+on the main screen.</p>
+
+<p>PIP leverages the multi-window APIs available in Android N to
+provide the pinned video overlay window. To add PIP to your app, you need to
+register your activities that support PIP, switch your activity to PIP mode as
+needed, and make sure UI elements are hidden and video playback continues when
+the activity is in PIP mode.</p>
+
+<h2 id="declaring">Declaring Your Activity Supports Picture-in-picture</h2>
+
+<p>By default, the system does not automatically support PIP for apps.
+If you want support PIP in your app, register your video
+activity in your manifest by setting
+<code>android:supportsPictureInPicture</code> and
+<code>android:resizeableActivity</code> to <code>true</code>. Also, specify
+that your activity handles layout configuration changes so that your activity
+doesn't relaunch when layout changes occur during PIP mode transitions.</p>
+
+<pre>
+<activity android:name="VideoActivity"
+ android:resizeableActivity="true"
+ android:supportsPictureInPicture="true"
+ android:configChanges=
+ "screenSize|smallestScreenSize|screenLayout|orientation"
+ ...
+</pre>
+
+<p>When registering your activity, keep in mind that in PIP mode, your
+activity is shown in a small overlay window on a TV screen. Video playback
+activities with minimal UI provide the best user experience. Activities that
+contain small UI elements might not provide a good user experience
+when switched to PIP mode, because users can't see details of the UI elements
+in the PIP window.</p>
+
+<h2 id="pip_button">Switching Your Activity to Picture-in-picture</h2>
+
+When you need to switch your activity into PIP mode, call
+<code>Activity.enterPictureInPicture()</code>. The following example switches
+to PIP mode when the user selects a dedicated PIP button on a media control
+bar:</p>
+
+<pre>
+@Override
+public void onActionClicked(Action action) {
+ if (action.getId() == R.id.lb_control_picture_in_picture) {
+ getActivity().enterPictureInPicture();
+ return;
+ }
+ ...
+</pre>
+
+<p>Adding a PIP button to your media control bar lets your user easily switch
+to PIP mode while controlling video playback.</p>
+
+<img src="{@docRoot}preview/images/pip-button.png" />
+<p class="img-caption"><strong>Figure 1.</strong> A Picture-in-picture
+button on a media control bar.</p>
+
+<p>Android N includes a new
+<code>PlaybackControlsRow.PictureInPictureAction</code> class which defines
+control bar PIP actions and uses the PIP icon.</p>
+
+<h2 id="handling_ui">Handling UI During Picture-in-picture</h2>
+
+<p>When your activity enters PIP mode, your activity should only show video
+playback. Remove UI elements before your activity enters PIP,
+and restore these elements when your activity becomes full-screen again.
+Override <code>Activity.onPictureInPictureChanged()</code> or
+<code>Fragment.onPictureInPictureChanged()</code> and enable or
+disable your UI elements as needed, for example:</p>
+
+<pre>
+@Override
+public void onPictureInPictureChanged(boolean inPictureInPicture) {
+ if (inPictureInPicture) {
+ // Hide the controls in picture-in-picture mode.
+ ...
+ } else {
+ // Restore the playback UI based on the playback status.
+ ...
+ }
+}
+</pre>
+
+<h2 id="continuing_playback">Continuing Video Playback While in
+Picture-in-picture</h2>
+
+<p>When your activity switches to PIP, the system considers the activity in a
+paused state, and calls your activity's <code>onPause()</code> method. Video
+playback should not be paused and should continue playing if the activity is
+paused due to PIP mode. Check for PIP in your activity's
+<code>onPause()</code> method and handle playback appropriately, for
+example:</p>
+
+<pre>
+@Override
+public void onPause() {
+ // If called due to PIP, do not pause playback
+ if (inPictureInPicture()) {
+ // Continue playback
+ ...
+ }
+ // If paused but not in PIP, pause playback if necessary
+ ...
+}
+</pre>
+
+<p>When your activity switches out of PIP mode back to full-screen mode, the
+system resumes your activity and calls your <code>onResume()</code> method.</p>
+
+<h2 id="single_playback">Using a Single Playback Activity for
+Picture-in-picture</h2>
+
+<p>In your app, a user might select a new video when browsing for content on
+the main screen, while a video playback activity is in PIP mode. Play the new
+video in the existing playback activity in full screen mode, instead of
+launching a new activity that might confuse the user.</p>
+
+<p>To ensure a single activity is used for video playback requests and
+switched into or out of PIP mode as needed, set the activity's
+<code>android:launchMode</code> to <code>singleTask</code> in your manifest:
+</p>
+
+<pre>
+<activity android:name="VideoActivity"
+ ...
+ android:supportsPictureInPicture="true"
+ android:launchMode="singleTask"
+ ...
+</pre>
+
+<p>In your activity, override {@link android.app.Activity#onNewIntent
+Activity.onNewIntent()} and handle the new video, stopping any existing video
+playback if needed.</p>
+
+<h2 id="best">Best Practices</h2>
+
+<p>PIP is intended for activities that play full-screen video. When switching
+your activity into PIP mode, avoid showing anything except video content.
+Track when your activity enters PIP mode and hide UI elements, as described
+in <a href="#handling_ui">Handling UI During Picture-in-picture</a>.</p>
+
+<p>Since the PIP window is shown as a floating window in the corner of the
+screen, you should avoid showing critical information in the main screen
+in any area that can be obscured by the PIP window.</p>
+
+<p>When an activity is in PIP mode, by default it doesn't get input focus. To
+receive input events while in PIP mode, use
+<code>MediaSession.setMediaButtonReceiver()</code>.</p>
diff --git a/docs/html/preview/features/scoped-folder-access.jd b/docs/html/preview/features/scoped-folder-access.jd
new file mode 100644
index 0000000..932d8a9
--- /dev/null
+++ b/docs/html/preview/features/scoped-folder-access.jd
@@ -0,0 +1,125 @@
+page.title=Scoped Directory Access
+page.keywords=preview,sdk,scoped directory access
+page.tags=androidn
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+ <h2>In this document</h2>
+ <ol>
+ <li><a href="#accessing">Accessing an External Storage Directory</a></li>
+ <li><a href="#removable">Accessing a Directory on Removable Media</a></li>
+ <li><a href="#best">Best Practices</a></li>
+ </ol>
+</div>
+</div>
+
+<p>Apps such as photo apps usually just need access to specific directories in
+external storage, such as the <code>Pictures</code> directory. Existing
+approaches to accessing external storage aren't designed to easily provide
+targeted directory access for these types of apps. For example:</p>
+
+<ul>
+<li>Requesting {@link android.Manifest.permission#READ_EXTERNAL_STORAGE}
+or {@link android.Manifest.permission#WRITE_EXTERNAL_STORAGE} in your manifest
+allows access to all public directories on external storage, which might be
+more access than what your app needs.</li>
+<li>Using the
+<a href="{@docRoot}guide/topics/providers/document-provider.html">Storage
+Access Framework</a> usually makes your user pick directories
+via a system UI, which is unnecessary if your app always accesses the same
+external directory.</li>
+</ul>
+
+<p>Android N provides a new simplified API to access
+common external storage directories. </p>
+
+<h2 id="accessing">Accessing an External Storage Directory</h2>
+
+<p>Use the <code>StorageManager</code> class to get the appropriate
+<code>StorageVolume</code> instance. Then, create an intent by calling the
+<code>StorageVolume.createAccessIntent()</code> method of that instance.
+Use this intent to access external storage directories. To get a list of
+all available volumes, including removable media volumes, use
+<code>StorageManager.getVolumesList()</code>.</p>
+
+<p>The following code snippet is an example of how to open the
+<code>Pictures</code> directory in the primary shared storage:</p>
+
+<pre>
+StorageManager sm = (StorageManager)getSystemService(Context.STORAGE_SERVICE);
+StorageVolume volume = sm.getPrimaryVolume();
+Intent intent = volume.createAccessIntent(Environment.DIRECTORY_PICTURES);
+startActivityForResult(intent, request_code);
+</pre>
+
+<p>The system attempts to grant access to the external directory, and if
+necessary confirms access with the user using a simplified UI:</p>
+
+<img src="{@docRoot}preview/images/scoped-folder-access-framed.png"
+srcset="{@docRoot}preview/images/scoped-folder-access-framed.png 1x,
+{@docRoot}preview/images/scoped-folder-access-framed_2x.png 2x" />
+<p class="img-caption"><strong>Figure 1.</strong> An application requesting
+access to the Pictures directory.</p>
+
+<p>If the user grants access, the system calls your
+<code>onActivityResult()</code> override with a result code of
+<code>Activity.RESULT_OK</code>, and intent data that contains the URI. Use
+the provided URI to access directory information, similar to using URIs
+returned by the
+<a href="{@docRoot}guide/topics/providers/document-provider.html">Storage
+Access Framework</a>.</p>
+
+<p>If the user doesn't grant access, the system calls your
+<code>onActivityResult()</code> override with a result code of
+<code>Activity.RESULT_CANCELED</code>, and null intent data.</p>
+
+<p class="note"><b>Note</b>: Getting access to a specific external directory
+also gains access to subdirectories within that directory.</p>
+
+<h2 id="removable">Accessing a Directory on Removable Media</h2>
+
+<p>To use Scoped Directory Access to access directories on removable media,
+first add a {@link android.content.BroadcastReceiver} that listens for the
+{@link android.os.Environment#MEDIA_MOUNTED} notification, for example:</p>
+
+<pre>
+<receiver
+ android:name=".MediaMountedReceiver"
+ android:enabled="true"
+ android:exported="true" >
+ <intent-filter>
+ <action android:name="android.intent.action.MEDIA_MOUNTED" />
+ <data android:scheme="file" />
+ </intent-filter>
+</receiver>
+</pre>
+
+<p>When the user mounts removable media, like an SD card, the system sends a
+{@link android.os.Environment#MEDIA_MOUNTED} notification. This notification
+provides a <code>StorageVolume</code> object in the intent data that you can
+use to access directories on the removable media. The following example
+accesses the <code>Pictures</code> directory on removable media:</p>
+
+<pre>
+// BroadcastReceiver has already cached the MEDIA_MOUNTED
+// notification Intent in mediaMountedIntent
+StorageVolume volume = (StorageVolume)
+ mediaMountedIntent.getParcelableExtra(StorageVolume.EXTRA_STORAGE_VOLUME);
+volume.createAccessIntent(Environment.DIRECTORY_PICTURES);
+startActivityForResult(intent, request_code);
+</pre>
+
+<h2 id="best">Best Practices</h2>
+
+<p>Where possible, persist the external directory access URI so you don't have
+to repeatedly ask the user for access. Once the user has granted access, call
+<code>getContentResolver().takePersistableUriPermssion()</code> with the
+directory access URI. The system will persist the URI and subsequent access
+requests will return <code>RESULT_OK</code> and not show confirmation UI to the
+user.</p>
+
+<p>If the user denies access to an external directory, do not immediately
+request access again. Repeatedly insisting on access results in a poor user
+experience.</p>
diff --git a/docs/html/preview/features/security-config.jd b/docs/html/preview/features/security-config.jd
new file mode 100644
index 0000000..92d98b4
--- /dev/null
+++ b/docs/html/preview/features/security-config.jd
@@ -0,0 +1,748 @@
+page.title=Network Security Configuration
+page.keywords=preview,security,network
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+
+<h2>In this document</h2>
+<ol>
+ <li><a href="#manifest">Adding a Security Configuration File</a></li>
+ <li><a href="#CustomTrust">Customizing Trusted CAs</a>
+ <ol>
+ <li><a href="#ConfigCustom">Configuring a Trusted Custom CA</a></li>
+ <li><a href="#LimitingCas">Limiting the Set of Trusted CAs</a></li>
+ <li><a href="#TrustingAdditionalCas">Trusting Additional CAs</a></li>
+ </ol>
+ </li>
+ <li><a href="#TrustingDebugCa">Debugging-only CAs</a></li>
+ <li><a href="#UsesCleartextTraffic">Opting Out of Cleartext Traffic</a></li>
+ <li><a href="#CertificatePinning">Pinning Certificates</a></li>
+ <li><a href="#ConfigInheritance">Configuration Inheritance Behavior</a></li>
+ <li><a href="#FileFormat">Configuration File Format</a></li>
+</ol>
+</div>
+</div>
+
+
+<p>
+ Android N includes a Network Security Configuration
+ feature that lets apps customize their network security settings in a safe,
+ declarative configuration file without modifying app code. These settings can
+ be configured for specific domains and for a specific app. The key
+ capabilities of this feature are as follows:
+</p>
+
+<ul>
+ <li>
+ <b>Custom trust anchors:</b> Customize which Certificate Authorities (CA)
+ are trusted for an app's secure connections. For
+ example, trusting particular self-signed certificates or restricting the
+ set of public CAs that the app trusts.
+ </li>
+
+ <li>
+ <b>Debug-only overrides:</b> Safely debug secure connections in an app
+ without added risk to the installed base.
+ </li>
+
+ <li>
+ <b>Cleartext traffic opt-out:</b> Protect apps from from
+ accidental usage of cleartext traffic.
+ </li>
+
+ <li>
+ <b>Certificate pinning:</b> Restrict an app's secure connection to
+ particular certificates.
+ </li>
+</ul>
+
+
+<h2 id="manifest">Adding a Security Configuration File</h2>
+
+<p>
+ The Network Security Configuration feature uses an XML file where you specify
+ the settings for your app. You must include an entry in the manifest of your
+ app to point to this file. The following code excerpt from a manifest
+ demonstrates how to create this entry:
+</p>
+
+<pre>
+<?xml version="1.0" encoding="utf-8"?>
+...
+<app ...>
+ <meta-data android:name="android.security.net.config"
+ android:resource="@xml/network_security_config" />
+ ...
+</app>
+</pre>
+
+<h2 id="CustomTrust">Customizing Trusted CAs</h2>
+
+<p>
+ An app may want to trust a custom set of CAs instead of the platform
+ default. The most common reasons of this are:
+</p>
+
+<ul>
+ <li>Connecting to a host with a custom certificate authority(self-signed,
+ issued by an internal corporate CA, etc).
+ </li>
+
+ <li>Limiting the set of CAs to only the CAs you trust instead of every
+ preinstalled CA.
+ </li>
+
+ <li>Trusting additional CAs not included in the system.
+ </li>
+</ul>
+
+<p>
+ By default secure (e.g. TLS, HTTPS) connections from all apps trust
+ the pre-installed system CAs, and apps targeting API level 23
+ (Android M) and below also trust the user-added CA store by default. An
+ app can customize its own connections using {@code base-config} (for
+ app-wide customization) or {@code domain-config} (for per-domain
+ customization).
+</p>
+
+
+<h3 id="ConfigCustom">Configuring a Custom CA</h3>
+
+<p>
+ Assume you want to connect to your host which uses a self-signed SSL
+ certificate or to a host whose SSL certificate is issued by a non-public CA
+ which you trust, such as your company's internal CA.
+</p>
+
+<p>
+ <code>res/xml/network_security_config.xml</code>:
+<pre>
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+ <domain-config>
+ <domain includeSubdomains="true">example.com</domain>
+ <trust-anchors>
+ <certificates src="@raw/my_ca"/>
+ </trust-anchors>
+ </domain-config>
+</network-security-config>
+</pre>
+</p>
+
+<p>
+ Add the self-signed or non-public CA certificate, in PEM or DER format, to
+ {@code res/raw/my_ca}.
+</p>
+
+
+<h3 id="LimitingCas">Limiting the Set of Trusted CAs</h3>
+
+<p>
+ An app that does not want to trust all CAs trusted by system can
+ instead specify its own reduced set of CAs to trust. This protects the
+ app from fradulent certificates issued by any of the other CAs.
+</p>
+
+<p>
+ The config to limit the set of trusted CAs is similar to <a href=
+ "#TrustingACustomCa">trusting a custom CA</a> for a specific domain except
+ that multiple CAs are provided in the resource.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+ <domain-config>
+ <domain includeSubdomains="true">secure.example.com</domain>
+ <domain includeSubdomains="true">cdn.example.com</domain>
+ <trust-anchors>
+ <certificates src="@raw/trusted_roots"/>
+ </trust-anchors>
+ </domain-config>
+</network-security-config>
+</pre>
+</p>
+
+<p>
+ Add the trusted CAs, in PEM or DER format, to {@code res/raw/trusted_roots}.
+ Note that if using PEM format the file must contain <em>only</em> PEM data
+ and no extra text. You can also provide multiple
+ <a href="#certificates"><code><certificates></code></a>
+elements instead of one.
+</p>
+
+
+<h3 id="TrustingAdditionalCas">
+ Trusting Additional CAs
+</h3>
+
+<p>
+ An app may want to trust additional CAs not trusted by the system,
+ this could be due to the system not yet including the CA or a CA that does
+ not meet the requirements for inclusion into the Android system. An
+ app can do this by specifying multiple certificate sources for a
+ configuration.
+</p>
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+ <base-config>
+ <trust-anchors>
+ <certificates src="@raw/extracas"/>
+ <certificates src="system"/>
+ </trust-anchors>
+ </base-config>
+</network-security-config>
+</pre>
+</p>
+
+
+<h2 id="TrustingDebugCa">Configuring CAs for Debugging</h2>
+
+<p>
+ When debugging an app that connects over HTTPS you may want to
+ connect to a local development server, which does not have the SSL
+ certificate for your production server. In order to support this without any
+ modification to your app's code you can specify debug-only CAs that
+ are <i>only</i> trusted when <a href=
+ "{@docRoot}guide/topics/manifest/application-element.html#debug">
+android:debuggable</a>
+ is {@code true} by using {@code debug-overrides}. Normally IDEs and build
+ tools set this flag automatically for non-release builds.
+</p>
+
+<p>
+ This is safer than the usual conditional code because, as a security
+ precaution, app stores do not accept apps which are marked
+ debuggable.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+ <debug-overrides>
+ <trust-anchors>
+ <certificates src="@raw/debug_cas"/>
+ </trust-anchors>
+ </debug-overrides>
+</network-security-config>
+</pre>
+</p>
+
+
+<h2 id="UsesCleartextTraffic">Opting Out of Cleartext Traffic</h2>
+
+<p>
+ Applications intending to connect to destinations using only secure
+ connections can opt-out of supporting cleartext (using unencrypted HTTP
+ protocol instead of HTTPS) to those destinations. This option helps prevent
+ accidental regressions in apps due to changes in URLs provided by external
+ sources such as backend servers.
+ See {@link android.security.NetworkSecurityPolicy#isCleartextTrafficPermitted
+ NetworkSecurityPolicy.isCleartextTrafficPermitted()} for more details.
+</p>
+
+<p>
+ For example, an app may want to ensure that all connections to {@code
+ secure.example.com} are always done over HTTPS to protect sensitive traffic
+ from hostile networks.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+ <domain-config usesCleartextTraffic="false">
+ <domain includeSubdomains="true">secure.example.com</domain>
+ </domain-config>
+</network-security-config>
+</pre>
+</p>
+
+
+<h2 id="CertificatePinning">Pinning Certificates</h2>
+
+<p>
+ Normally an app trusts all preinstalled CAs. If any of these CAs were
+ to issue a fradulent certificate the app would be at risk from a MiTM
+ attack. Some apps choose to limit the set of certificates they accept
+ by either limiting the set of CAs they trust or by certificate pinning.
+</p>
+
+<p>
+ Certificate pinning is done by providing a set of certificates by hash of the
+ public key (SubjectPublicKeyInfo of the X.509 certificate). A certificate
+ chain is then only valid if the certificate chain contains at least one of
+ the pinned public keys.
+</p>
+
+<p>
+ Note that when using certificate pinning you should always include a backup
+ key so that if you are forced to switch to new keys, or change CAs (when
+ pinning to a CA certificate or an intermediate of that CA), your
+ app's connectivity is unaffected. Otherwise you must to push out
+ an update to the app to restore connectivity.
+</p>
+
+<p>
+ Additionally it is possible to set an expiration time for pins after which
+ pinning is not performed. This helps prevent connectivity issues in
+ apps which have not been updated. However, setting an expiration time
+ on pins may enable pinning bypass.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+ <domain-config>
+ <domain includeSubdomains="true">example.com</domain>
+ <pin-set expiration="2018-01-01">
+ <pin digest="SHA-256">7HIpactkIAq2Y49orFOOQKurWxmmSFZhBCoQYcRhJ3Y=</pin>
+ <!-- backup pin -->
+ <pin digest="SHA-256">fwza0LRMXouZHRC8Ei+4PyuldPDcf3UKgO/04cDM1oE=</pin>
+ </domain-config>
+</network-security-config>
+</pre>
+</p>
+
+
+<h2 id="ConfigInheritance">Configuration Inheritance Behavior</h2>
+
+<p>
+ Values not set in a specific config are inherited. This behavior allows more
+ complex configurations while keeping the configuration file readable.
+</p>
+
+<p>
+ If a value is not set in a specific entry then value from the next more
+ general entry is used. Values not set in a {@code domain-config} is
+ taken from the parent {@code domain-config}, if nested, or from the {@code
+ base-config} if not. Values not set in the {@code base-config} uses the
+ platform default values.
+</p>
+
+<p>
+ For example consider, where all connections to subdomains of {@code
+ example.com} must use a custom set of CAs. Additonally cleartext traffic to
+ these domains is permitted <em>except</em> when connecting to {@code
+ secure.example.com}. By nesting the configuration for {@code
+ secure.example.com} inside the configuration for {@code example.com} the
+ {@code trust-anchors} does not need to be duplicated.
+</p>
+
+<p>
+<code>res/xml/network_security_config.xml</code>:
+<pre>
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+ <domain-config>
+ <domain includeSubdomains="true">example.com</domain>
+ <trust-anchors>
+ <certificates src="@raw/my_ca"/>
+ </trust-anchors>
+ <domain-config cleartextTrafficPermitted="false">
+ <domain includeSubdomains="true">secure.example.com</domain>
+ </domain-config>
+ </domain-config>
+</network-security-config>
+</pre>
+</p>
+
+
+<h2 id="FileFormat">Configuration File Format</h2>
+
+<p>
+ The Network Security Configuration feature uses an XML file format.
+ The overall structure of the file is shown in the following code sample:
+</p>
+
+<pre>
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+ <base-config>
+ <trust-anchors>
+ <certificates src="..."/>
+ ...
+ </trust-anchors>
+ </base-config>
+
+ <domain-config>
+ <domain>android.com</domain>
+ ...
+ <trust-anchors>
+ <certificates src="..."/>
+ ...
+ </trust-anchors>
+ <pin-set>
+ <pin digest="...">...</pin>
+ ...
+ </pin-set>
+ </domain-config>
+ ...
+ <debug-overrides>
+ <trust-anchors>
+ <certificates src="..."/>
+ ...
+ </trust-anchors>
+ </debug-overrides>
+</network-security-config>
+</pre>
+
+<p>
+ The following sections describe the syntax and other details of the file
+ format.
+</p>
+
+<h3 id="network-security-config">
+ <network-security-config>
+</h3>
+
+<dl class="xml">
+ <dt>
+ can contain:
+ </dt>
+
+ <dd>
+ 0 or 1 of <code><a href="#base-config"><base-config></a></code><br>
+ Any number of <code><a href=
+ "#domain-config"><domain-config></a></code><br>
+ 0 or 1 of <code><a href="#debug-overrides"><debug-overrides></a></code>
+ </dd>
+</dl>
+
+<h3 id="base-config">
+ <base-config>
+</h3>
+
+<dl class="xml">
+ <dt>
+ syntax:
+ </dt>
+</dl>
+
+<pre class="stx">
+<base-config <a href=
+"#usesCleartextTraffic">usesCleartextTraffic</a>=["true" | "false"]>
+ ...
+</base-config>
+</pre>
+<dl class="xml">
+ <dt>
+ can contain:
+ </dt>
+
+ <dd>
+ <code><a href="#trust-anchors"><trust-anchors></a></code>
+ </dd>
+
+ <dt>
+ description:
+ </dt>
+
+ <dd>
+ The default configuration used by all connections whose destination is not
+ covered by a <a href="#domain-config"><code>domain-config</code></a>.
+
+<p>
+ Any values that are not set use the platform default values. The default
+ configuration for apps targeting above API level 24 and above:
+</p>
+
+<pre>
+<base-config usesCleartextTraffic="true">
+ <trust-anchors>
+ <certificates src="system" />
+ </trust-anchors>
+</base-config>
+</pre>
+The default configuration for apps targeting API level 23 and below is:
+<pre>
+<base-config usesCleartextTraffic="true">
+ <trust-anchors>
+ <certificates src="system" />
+ <certificates src="user" />
+ </trust-anchors>
+</base-config>
+</pre>
+
+ </dd>
+</dl>
+
+<h3 id="domain-config"><domain-config></h3>
+<dl class="xml">
+<dt>syntax:</dt>
+<dd>
+<pre class="stx"><domain-config <a href="#usesCleartextTraffic">usesCleartextTraffic</a>=["true" | "false"]>
+ ...
+</domain-config></pre>
+</dd>
+
+<dt>Can Contain:</dt>
+
+<dd>
+1 or more <code><a href="#domain"><domain></a></code>
+<br/>0 or 1 <code><a href="#trust-anchors"><trust-anchors></a></code>
+<br/>0 or 1 <code><a href="#pin-set"><pin-set></code></a>
+<br/>Any number of nested <code><domain-config></code></dd>
+
+<dt>Description</dt>
+<dd>Configuration used for connections to specific destinations as the defined by {@code domain} elements.
+
+<p>Note that if multiple {@code domain-config} elements cover a destination the config with the most specific (longest)
+matching domain rule is used.</p></dd>
+</dl>
+
+
+<h3 id="domain"><domain></h3>
+
+<dl class="xml">
+ <dt>
+ syntax:
+ </dt>
+
+ <dd>
+ <pre class="stx">
+<domain includeSubdomains=["true" | "false"]>example.com</domain>
+</pre>
+ </dd>
+
+ <dt>
+ Attributes:
+ </dt>
+
+ <dd>
+ <dl class="attr">
+ <dt>
+ {@code includeSubdomains}
+ </dt>
+
+ <dd>
+ If {@code "true"} then this domain rule matches the domain and all
+ subdomains, including subdomains of subdomains, otherwise the rule only
+ applies to exact matches.
+ </dd>
+ </dl>
+ </dd>
+
+ <dt>
+ Description:
+ </dt>
+</dl>
+
+<h3 id="debug-overrides"><debug-overrides></h3>
+
+<dl class="xml">
+ <dt>
+ syntax:
+ </dt>
+
+ <dd>
+ <pre class="stx">
+<debug-overrides>
+ ...
+</debug-overrides>
+</pre>
+ </dd>
+
+ <dt>
+ Can Contain:
+ </dt>
+
+ <dd>
+ 0 or 1 <code><a href="#trust-anchors"><trust-anchors></a></code>
+ </dd>
+
+ <dt>
+ Description:
+ </dt>
+
+ <dd>
+ Overrides to be applied when <a href=
+ "{@docRoot}guide/topics/manifest/application-element.html#debug">android:debuggable</a>
+ is {@code "true"} which is normally the case for non-release builds
+ generated by IDEs and build tools. Trust anchors specified in {@code
+ debug-overrides} are added to all other configurations and certificate
+ pinning is not performed when the server's certificate chain uses one of
+ these debug-only trust anchors. If <a href=
+ "{@docRoot}guide/topics/manifest/application-element.html#debug">android:debuggable</a>
+ is {@code "false"} then this section is completely ignored.
+ </dd>
+</dl>
+
+<h3 id="trust-anchors"><trust-anchors></h3>
+<dl class="xml">
+ <dt>
+ syntax:
+ </dt>
+
+ <dd>
+ <pre class="stx">
+<trust-anchors>
+...
+</trust-anchors>
+</pre>
+ </dd>
+
+ <dt>
+ Can Contain:
+ </dt>
+
+ <dd>
+ Any number of <code><a href="#certificates"><certificates></a></code>
+ </dd>
+
+ <dt>
+ Description:
+ </dt>
+
+ <dd>
+ Set of trust anchors for secure connections.
+ </dd>
+</dl>
+
+
+<h3 id="certificates"><certificates></h3>
+<dl class="xml">
+<dt>syntax:</dt>
+<dd><pre class="stx"><certificates src=["system" | "user" | "<i>raw resource</i>"]
+ overridePins=["true" | "false"] />
+</pre></dd>
+<dt>description:</dt>
+<dd>Set of X.509 certificates for {@code trust-anchors} elements.</dd>
+
+<dt>attributes:</dt>
+<dd><dl class="attr">
+<dt>{@code src}</dt>
+<dd>
+The source of CA certificates, can be one of
+<ul>
+ <li>a raw resource id pointing to a file containing X.509 certificates.
+ Certificates must be encoded in DER or PEM format. In the case of PEM
+ certificates the file <em>must not</em> contain extra non-PEM data such as
+ comments.
+ </li>
+
+ <li>{@code "system"} for the pre-installed system CA certificates
+ </li>
+
+ <li>{@code "user"} for user-added CA certificates
+ </li>
+</ul>
+</dd>
+
+<dt>{@code overridePins}</dt>
+<dd>
+ <p>
+ Specifies if the CAs from this source bypass certificate pinning. If {@code
+ "true"} then certificate chains which chain through one of the CAs from this
+ source then pinning is not be performed. This can be useful for debug CAs
+ or to support letting the user MiTM your app's secure traffic.
+ </p>
+
+ <p>
+ Default is {@code "false"} unless specified in a {@code debug-overrides}
+ element, in which case the default is {@code "true"}.
+ </p>
+</dd>
+</dl>
+</dd>
+
+
+<h3 id="pin-set"><pin-set></h3>
+
+<dl class="xml">
+ <dt>
+ syntax:
+ </dt>
+
+ <dd>
+<pre class="stx">
+<pin-set expiration="date">
+...
+</pin-set>
+</pre>
+ </dd>
+
+ <dt>
+ Can Contain:
+ </dt>
+
+ <dd>
+ Any number of <code><a href="#pin"><pin></a></code>
+ </dd>
+
+ <dt>
+ Description:
+ </dt>
+
+ <dd>
+ A set of public key pins. For a secure connection to be trusted, one of the
+ public keys in the chain of trust must be in the set of pins. See
+ <code><a href="#pin"><pin></a></code> for the format of pins.
+ </dd>
+
+ <dt>
+ Attributes:
+ </dt>
+
+ <dd>
+ <dl class="attr">
+ <dt>
+ {@code expiration}
+ </dt>
+
+ <dd>
+ The date, in {@code yyyy-MM-dd} format, at and after which the pins
+ expire, thus disabling pinning. If the attribute is not set then the
+ pins do not expire.
+ <p>
+ Expiration helps prevent connectivity issues in apps which do
+ not get updates to their pin set, for example because the user
+ disabled app updates.
+ </p>
+ </dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="pin"><pin></h3>
+<dl class="xml">
+ <dt>
+ syntax:
+ </dt>
+
+ <dd>
+<pre class="stx">
+<pin digest=["SHA-256"]>base64 encoded digest of X.509
+ SubjectPublicKeyInfo (SPKI)</pin>
+</pre>
+ </dd>
+
+ <dt>
+ Attributes:
+ </dt>
+
+ <dd>
+ <dl class="attr">
+ <dt>
+ {@code digest}
+ </dt>
+
+ <dd>
+ The digest algorithm used to generate the pin. Currently only
+ {@code "SHA-256"} is supported.
+ </dd>
+ </dl>
+ </dd>
+</dl>
diff --git a/docs/html/preview/features/tv-recording-api.jd b/docs/html/preview/features/tv-recording-api.jd
new file mode 100644
index 0000000..ee37bff
--- /dev/null
+++ b/docs/html/preview/features/tv-recording-api.jd
@@ -0,0 +1,120 @@
+page.title=TV Recording
+page.keywords=preview,sdk,tv,recording
+page.tags=androidn
+
+@jd:body
+
+<div id="qv-wrapper">
+<div id="qv">
+ <h2>In this document</h2>
+ <ol>
+ <li><a href="#supporting">Indicating Support for Recording</a></li>
+ <li><a href="#recording">Recording a Session</a></li>
+ <li><a href="#errors">Handling Recording Errors</a></li>
+ <li><a href="#sessions">Managing Recorded Sessions</a></li>
+ <li><a href="#best">Best Practices</a></li>
+ </ol>
+</div>
+</div>
+
+<p>TV input services let the user pause and resume channel playback via
+time-shifting APIs. Android N expands on time-shifting
+by letting the user save multiple recorded sessions.</p>
+
+<p>Users can schedule recordings in advance, or start a recording as they watch
+a program. Once the system has saved a recording, the user can browse, manage,
+and play back the recording using the system TV app.</p>
+
+<p>If you want to provide recording functionality for your TV input service,
+you must indicate to the system that your app supports recording, implement
+the ability to record programs, handle and communicate any errors that occur
+during recording, and manage your recorded sessions.</p>
+
+<h2 id="supporting">Indicating Support for Recording</h2>
+
+<p>To tell the system that your TV input service supports recording, follow
+these steps:</p>
+
+<ol>
+<li>In your <code>TvInputService.onCreate()</code> method, create a new
+<code>TvInputInfo</code> object using the <code>TvInputInfo.Builder</code>
+class.</li>
+<li>When creating the new <code>TvInputInfo</code> object, call
+<code>setCanRecord(true)</code> before calling <code>build()</code> to
+indicate your service supports recording.</li>
+<li>Register your <code>TvInputInfo</code> object with the system by calling
+<code>TvInputService.updateTvInputInfo()</code>.</li>
+</ol>
+
+<h2 id="recording">Recording a Session</h2>
+
+<p>After your TV input service registers that it supports recording
+functionality, the system calls your
+<code>TvInputService.onCreateRecordingSession()</code> when it needs to access
+your app's recording implementation. Implement your own
+<code>TvInputService.RecordingSession</code> subclass and return it
+when the <code>onCreateRecordingSession()</code> callback
+fires. This subclass is responsible for switching to the correct channel data,
+recording the requested data, and communicating recording status and errors to
+the system.</p>
+
+<p>When the system calls <code>RecordingSession.onTune()</code>, passing in a
+channel URI, tune to the channel that the URI specifies. Notify the system that
+your app has tuned to the desired channel by calling <code>notifyTuned()</code>,
+or, if your app could not tune to the proper channel, call
+<code>notifyError()</code>.</p>
+
+<p>The system next invokes the <code>RecordingSession.onStartRecording()</code>
+callback. Your app must start recording immediately. When the system invokes
+this callback, it may provide a URI that contains information about the program
+that is about to be recorded. When the recording is done, you need to copy this
+data to the <code>RecordedPrograms</code> data table.</p>
+
+<p>Finally, the system calls <code>RecordingSession.onStopRecording()</code>.
+At this point, your app must stop recording immediately. You also need to
+create an entry in the <code>RecordedPrograms</code> table. This entry should
+include the recorded session data URI in the
+<code>RecordedPrograms.COLUMN_RECORDING_DATA_URI</code> column, and any program
+information that the system provided in the initial call to
+<code>onStartRecording()</code>.</p>
+
+<p>For more details on how to access the <code>RecordedPrograms</code> table
+see <a href="#sessions">Managing Recorded Sessions</a>.</p>
+
+<h2 id="errors">Handling Recording Errors</h2>
+
+<p>If an error occurs during recording, rendering the recorded data unusable,
+notify the system by calling <code>RecordingSession.notifyError()</code>.
+Similarly, you can call <code>notifyError()</code> after a recording session is
+created to let the system know that your app can no longer record sessions.</p>
+
+<p>If an error occurs during recording, but you'd like to provide a usable
+partial recording to users for playback, call
+<code>RecordingSession.notifyRecordingStopped()</code> to enable the system to
+use the partial session.</p>
+
+<h2 id="sessions">Managing Recorded Sessions</h2>
+
+<p>The system maintains information for all recorded sessions from all
+recording-capable channel apps in the <code>TvContract.RecordedPrograms</code>
+content provider table. This information is accessible via the
+<code>RecordedPrograms.Uri</code> content URI. Use content provider APIs to
+read, add, and delete entries from this table.</p>
+
+<p>For more information on working with content provider data see
+<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">
+Content Provider Basics</a> .</p>
+
+<h2 id="best">Best Practices</h2>
+
+<p>TV devices may have limited storage, so use your best judgment when
+allocating storage to save recorded sessions. Use
+<code>RecordingCallback.onError(RECORDING_ERROR_INSUFFICIENT_SPACE)</code> when
+there isn't enough space to save a recorded session.</p>
+
+<p>When the user initiates recording, you should start recording data as soon
+as possible. To facilitate this, complete any up-front time-consuming tasks,
+like accessing and allocating storage space, when the system invokes the
+<code>onCreateRecordingSession()</code> callback. Doing so lets you start
+recording immediately when the <code>onStartRecording()</code> callback
+fires.</p>
diff --git a/docs/html/preview/guide.jd b/docs/html/preview/guide.jd
new file mode 100644
index 0000000..28c0fe9
--- /dev/null
+++ b/docs/html/preview/guide.jd
@@ -0,0 +1,190 @@
+page.title=Testing Guide
+page.image=images/cards/card-n-guide_2x.png
+meta.tags="preview", "testing"
+page.tags="preview", "developer preview"
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>In this document</h2>
+ <ol>
+ <li><a href="#runtime-permissions">Testing Permissions</a></li>
+ <li><a href="#doze-standby">Testing Doze and App Standby</a></li>
+ <li><a href="#ids">Auto Backup and Device Identifiers</a></li>
+ </ol>
+ </div>
+</div>
+
+<p>
+ Android N gives you an opportunity to ensure your apps work with the next
+ version of the platform. This preview includes a number of APIs and behavior changes that can
+ impact your app, as described in the <a href="{@docRoot}preview/api-overview.html">API
+ Overview</a> and <a href="{@docRoot}preview/behavior-changes.html">Behavior Changes</a>. In testing
+ your app with the preview, there are some specific system changes that you should focus on to
+ ensure that users have a good experience.
+</p>
+
+<p>
+ This guide describes the what and how to test preview features with your app. You should
+ prioritize testing of these specific preview features, due to their high potential impact on your
+ app's behavior:
+</p>
+
+<ul>
+ <li><a href="#runtime-permissions">Permissions</a>
+ </li>
+ <li><a href="#doze-standby">Doze and App Standby</a>
+ </li>
+ <li><a href="#ids">Auto Backup and Device Identifiers</a></li>
+</ul>
+
+<p>
+ For more information about how to set up devices or virtual devices with a preview system image
+ for testing, see <a href="{@docRoot}preview/setup-sdk.html">Set up
+the Android N SDK</a>.
+</p>
+
+
+<h2 id="runtime-permissions">Testing Permissions</h2>
+
+<p>
+ The new <a href="{@docRoot}preview/features/runtime-permissions.html">Permissions</a> model
+ changes the way that permissions are allocated to your app by the user. Instead of granting all
+ permissions during the install procedure, your app must ask the user for individual permissions
+ at runtime. For users this behavior provides more granular control over each app’s activities, as
+ well as better context for understanding why the app is requesting a specific permission. Users
+ can grant or revoke the permissions granted to an app individually at any time. This feature of
+ the preview is most likely to have an impact on your app's behavior and may prevent some of your
+ app features from working, or they may work in a degraded state.
+</p>
+
+<p class="caution">
+ This change affects all apps running on the new platform, even those not targeting the new
+ platform version. The platform provides a limited compatibility behavior for legacy apps, but you
+ should begin planning your app’s migration to the new permissions model now, with a goal of
+ publishing an updated version of your app at the official platform launch.
+</p>
+
+
+<h3 id="permission-test-tips">Test tips</h3>
+
+<p>
+ Use the following test tips to help you plan and execute testing of your app with the new
+ permissions behavior.
+</p>
+
+<ul>
+ <li>Identify your app’s current permissions and the related code paths.</li>
+ <li>Test user flows across permission-protected services and data.</li>
+ <li>Test with various combinations of granted/revoked permission.</li>
+ <li>Use the {@code adb} tool to manage permssions from the command line:
+ <ul>
+ <li>List permissions and status by group:
+ <pre>adb shell pm list permissions -d -g</pre>
+ </li>
+ <li>Grant or revoke one or more permissions using the following syntax:<br>
+ <pre>adb shell pm [grant|revoke] <permission.name> ...</pre>
+ </li>
+ </ul>
+ </li>
+ <li>Analyze your app for services that use permissions.</li>
+</ul>
+
+<h3 id="permission-test-strategy">Test strategy</h3>
+
+<p>
+ The permissions change affects the structure and design of your app, as well as
+ the user experience and flows you provide to users. You should assess your app’s current
+ permissions use and start planning for the new flows you want to offer. The official release of
+ the platform provides compatibility behavior, but you should plan on updating your app and not
+ rely on these behaviors.
+</p>
+
+<p>
+ Identify the permissions that your app actually needs and uses, and then find the various code
+ paths that use the permission-protected services. You can do this through a combination of
+ testing on the new platform and code analysis. In testing, you should focus on opting in to
+ runtime permissions by changing the app’s {@code targetSdkVersion} to the preview version. For
+ more information, see <a href="{@docRoot}preview/setup-sdk.html#">Set up
+the Android N SDK</a>.
+</p>
+
+<p>
+ Test with various combinations of permissions revoked and added, to highlight the user flows that
+ depend on permissions. Where a dependency is not obvious or logical you should consider
+ refactoring or compartmentalizing that flow to eliminate the dependency or make it clear why the
+ permission is needed.
+</p>
+
+<p>
+ For more information on the behavior of runtime permissions, testing, and best practices, see the
+ <a href="{@docRoot}preview/features/runtime-permissions.html">Permissions</a> developer
+ preview page.
+</p>
+
+
+<h2 id="doze-standby">Testing Doze and App Standby</h2>
+
+<p>
+ The power saving features of Doze and App Standby limit the amount of background processing that
+ your app can perform when a device is in an idle state or while your app is not in focus. The
+ restrictions the system may impose on apps include limited or no network access,
+ suspended background tasks, suspended Notifications, ignored wake requests, and alarms. To ensure
+ that your app behaves properly with these power saving optimizations, you should test your app by
+ simulating these low power states.
+</p>
+
+<h4 id="doze">Testing your app with Doze</h4>
+
+<p>To test Doze with your app:</p>
+
+<ol>
+<li>Configure a hardware device or virtual device with an Android N system image.</li>
+<li>Connect the device to your development machine and install your app.</li>
+<li>Run your app and leave it active.</li>
+<li>Simulate the device going into Doze mode by running the following commands:
+
+<pre>
+$ adb shell dumpsys battery unplug
+$ adb shell dumpsys deviceidle step
+$ adb shell dumpsys deviceidle -h
+</pre>
+
+ </li>
+ <li>Observe the behavior of your app when the device is re-activated. Make sure it
+ recovers gracefully when the device exits Doze.</li>
+</ol>
+
+
+<h4 id="standby">Testing apps with App Standby</h4>
+
+<p>To test the App Standby mode with your app:</p>
+
+<ol>
+ <li>Configure a hardware device or virtual device with an Android N system image.</li>
+ <li>Connect the device to your development machine and install your app.</li>
+ <li>Run your app and leave it active.</li>
+ <li>Simulate the app going into standby mode by running the following commands:
+
+<pre>
+$ adb shell am broadcast -a android.os.action.DISCHARGING
+$ adb shell am set-idle <packageName> true
+</pre>
+
+ </li>
+ <li>Simulate waking your app using the following command:
+ <pre>$ adb shell am set-idle <packageName> false</pre>
+ </li>
+ <li>Observe the behavior of your app when it is woken. Make sure it recovers gracefully
+ from standby mode. In particular, you should check if your app's Notifications and background
+ jobs continue to function as expected.</li>
+</ol>
+
+<h2 id="ids">Auto Backup for Apps and Device-Specific Identifiers</h2>
+
+<p>If your app is persisting any device-specific identifiers, such as Google
+Cloud Messaging registration ID, in internal storage,
+make sure to follow best practices to exclude the storage
+location from auto-backup, as described in <a href="{@docRoot}preview/backup/index.html">Auto
+Backup for Apps</a>. </p>
diff --git a/docs/html/preview/images/bundles.png b/docs/html/preview/images/bundles.png
new file mode 100644
index 0000000..8b022b1
--- /dev/null
+++ b/docs/html/preview/images/bundles.png
Binary files differ
diff --git a/docs/html/preview/images/bundles_2x.png b/docs/html/preview/images/bundles_2x.png
new file mode 100644
index 0000000..4669096
--- /dev/null
+++ b/docs/html/preview/images/bundles_2x.png
Binary files differ
diff --git a/docs/html/preview/images/datasaver.png b/docs/html/preview/images/datasaver.png
new file mode 100644
index 0000000..c5a58fb
--- /dev/null
+++ b/docs/html/preview/images/datasaver.png
Binary files differ
diff --git a/docs/html/preview/images/doze-diagram-1.png b/docs/html/preview/images/doze-diagram-1.png
new file mode 100644
index 0000000..0814447
--- /dev/null
+++ b/docs/html/preview/images/doze-diagram-1.png
Binary files differ
diff --git a/docs/html/preview/images/doze-diagram-2.png b/docs/html/preview/images/doze-diagram-2.png
new file mode 100644
index 0000000..c20c6cb
--- /dev/null
+++ b/docs/html/preview/images/doze-diagram-2.png
Binary files differ
diff --git a/docs/html/preview/images/inline-reply.png b/docs/html/preview/images/inline-reply.png
new file mode 100644
index 0000000..79a1a72
--- /dev/null
+++ b/docs/html/preview/images/inline-reply.png
Binary files differ
diff --git a/docs/html/preview/images/inline-reply_2x.png b/docs/html/preview/images/inline-reply_2x.png
new file mode 100644
index 0000000..13c6e35
--- /dev/null
+++ b/docs/html/preview/images/inline-reply_2x.png
Binary files differ
diff --git a/docs/html/preview/images/inline-type-reply.png b/docs/html/preview/images/inline-type-reply.png
new file mode 100644
index 0000000..b22aacd
--- /dev/null
+++ b/docs/html/preview/images/inline-type-reply.png
Binary files differ
diff --git a/docs/html/preview/images/inline-type-reply_2x.png b/docs/html/preview/images/inline-type-reply_2x.png
new file mode 100644
index 0000000..6e52a80
--- /dev/null
+++ b/docs/html/preview/images/inline-type-reply_2x.png
Binary files differ
diff --git a/docs/html/preview/images/m-preview-timeline-crop.png b/docs/html/preview/images/m-preview-timeline-crop.png
new file mode 100644
index 0000000..724a6af
--- /dev/null
+++ b/docs/html/preview/images/m-preview-timeline-crop.png
Binary files differ
diff --git a/docs/html/preview/images/m-preview-timeline.png b/docs/html/preview/images/m-preview-timeline.png
new file mode 100644
index 0000000..e9a339e
--- /dev/null
+++ b/docs/html/preview/images/m-preview-timeline.png
Binary files differ
diff --git a/docs/html/preview/images/mw-portrait.png b/docs/html/preview/images/mw-portrait.png
new file mode 100644
index 0000000..e752387
--- /dev/null
+++ b/docs/html/preview/images/mw-portrait.png
Binary files differ
diff --git a/docs/html/preview/images/mw-splitscreen.png b/docs/html/preview/images/mw-splitscreen.png
new file mode 100644
index 0000000..bf71999
--- /dev/null
+++ b/docs/html/preview/images/mw-splitscreen.png
Binary files differ
diff --git a/docs/html/preview/images/mw-splitscreen_2x.png b/docs/html/preview/images/mw-splitscreen_2x.png
new file mode 100644
index 0000000..38114db
--- /dev/null
+++ b/docs/html/preview/images/mw-splitscreen_2x.png
Binary files differ
diff --git a/docs/html/preview/images/n-preview-setup.png b/docs/html/preview/images/n-preview-setup.png
new file mode 100644
index 0000000..612e031
--- /dev/null
+++ b/docs/html/preview/images/n-preview-setup.png
Binary files differ
diff --git a/docs/html/preview/images/notifications-1.png b/docs/html/preview/images/notifications-1.png
new file mode 100644
index 0000000..5712002
--- /dev/null
+++ b/docs/html/preview/images/notifications-1.png
Binary files differ
diff --git a/docs/html/preview/images/notifications-2.png b/docs/html/preview/images/notifications-2.png
new file mode 100644
index 0000000..0d07948
--- /dev/null
+++ b/docs/html/preview/images/notifications-2.png
Binary files differ
diff --git a/docs/html/preview/images/notifications-3.png b/docs/html/preview/images/notifications-3.png
new file mode 100644
index 0000000..261d010
--- /dev/null
+++ b/docs/html/preview/images/notifications-3.png
Binary files differ
diff --git a/docs/html/preview/images/notifications-card.png b/docs/html/preview/images/notifications-card.png
new file mode 100644
index 0000000..d9d0590
--- /dev/null
+++ b/docs/html/preview/images/notifications-card.png
Binary files differ
diff --git a/docs/html/preview/images/pip-active.png b/docs/html/preview/images/pip-active.png
new file mode 100644
index 0000000..a24cb03
--- /dev/null
+++ b/docs/html/preview/images/pip-active.png
Binary files differ
diff --git a/docs/html/preview/images/pip-button.png b/docs/html/preview/images/pip-button.png
new file mode 100644
index 0000000..b876b12
--- /dev/null
+++ b/docs/html/preview/images/pip-button.png
Binary files differ
diff --git a/docs/html/preview/images/quicksettings.png b/docs/html/preview/images/quicksettings.png
new file mode 100644
index 0000000..68e1f74
--- /dev/null
+++ b/docs/html/preview/images/quicksettings.png
Binary files differ
diff --git a/docs/html/preview/images/sample-activenotifications.png b/docs/html/preview/images/sample-activenotifications.png
new file mode 100644
index 0000000..8817469
--- /dev/null
+++ b/docs/html/preview/images/sample-activenotifications.png
Binary files differ
diff --git a/docs/html/preview/images/sample-directboot.png b/docs/html/preview/images/sample-directboot.png
new file mode 100644
index 0000000..cc409d3
--- /dev/null
+++ b/docs/html/preview/images/sample-directboot.png
Binary files differ
diff --git a/docs/html/preview/images/sample-messagingservice.png b/docs/html/preview/images/sample-messagingservice.png
new file mode 100644
index 0000000..0d8fb3e
--- /dev/null
+++ b/docs/html/preview/images/sample-messagingservice.png
Binary files differ
diff --git a/docs/html/preview/images/sample-multiwindow.png b/docs/html/preview/images/sample-multiwindow.png
new file mode 100644
index 0000000..979bf61
--- /dev/null
+++ b/docs/html/preview/images/sample-multiwindow.png
Binary files differ
diff --git a/docs/html/preview/images/sample-scopeddirectoryaccess.png b/docs/html/preview/images/sample-scopeddirectoryaccess.png
new file mode 100644
index 0000000..58515dc
--- /dev/null
+++ b/docs/html/preview/images/sample-scopeddirectoryaccess.png
Binary files differ
diff --git a/docs/html/preview/images/scoped-folder-access-framed.png b/docs/html/preview/images/scoped-folder-access-framed.png
new file mode 100644
index 0000000..0169e41
--- /dev/null
+++ b/docs/html/preview/images/scoped-folder-access-framed.png
Binary files differ
diff --git a/docs/html/preview/images/scoped-folder-access-framed_2x.png b/docs/html/preview/images/scoped-folder-access-framed_2x.png
new file mode 100644
index 0000000..fd59ef1
--- /dev/null
+++ b/docs/html/preview/images/scoped-folder-access-framed_2x.png
Binary files differ
diff --git a/docs/html/preview/images/screen-zoom-1.png b/docs/html/preview/images/screen-zoom-1.png
new file mode 100644
index 0000000..f62d04e
--- /dev/null
+++ b/docs/html/preview/images/screen-zoom-1.png
Binary files differ
diff --git a/docs/html/preview/images/screen-zoom-2.png b/docs/html/preview/images/screen-zoom-2.png
new file mode 100644
index 0000000..172b5b3
--- /dev/null
+++ b/docs/html/preview/images/screen-zoom-2.png
Binary files differ
diff --git a/docs/html/preview/images/studio-jdk-location.jpg b/docs/html/preview/images/studio-jdk-location.jpg
new file mode 100644
index 0000000..1b1ba23
--- /dev/null
+++ b/docs/html/preview/images/studio-jdk-location.jpg
Binary files differ
diff --git a/docs/html/preview/index.jd b/docs/html/preview/index.jd
new file mode 100644
index 0000000..bce5dec
--- /dev/null
+++ b/docs/html/preview/index.jd
@@ -0,0 +1,121 @@
+page.title=Android N Developer Preview
+page.tags="preview","developer"
+meta.tags="preview", "android"
+fullpage=true
+forcelocalnav=true
+header.hide=1
+footer.hide=1
+@jd:body
+
+<script>
+ $(document).ready(function() {
+ if (useUpdatedTemplates) {
+ $("#useUpdatedTemplates").css("display","block");
+ } else {
+ $("#useOldTemplates").css("display","block");
+ }
+ })
+</script>
+
+<section class="dac-expand dac-hero dac-light" style="background-color:#B2DFDB">
+ <div class="wrap" style="max-width:1100px;margin-top:0">
+ <div class="cols dac-hero-content" style="padding-bottom:1em;">
+
+ <div class="col-7of16 col-push-9of16" style="padding-left:2em">
+ <h1 class="dac-hero-title">Android N Developer Preview</h1>
+ <p class="dac-hero-description">
+ Get ready for Android N!
+ <strong>Test your apps</strong> on Nexus and other devices. Support new system
+ behaviors to <strong>save power and memory</strong>.
+ Extend your apps with <strong>multi-window UI</strong>,
+ <strong>direct reply notifications</strong> and more.
+ </p>
+
+ <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Get started
+ </a><!--<br>
+ <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Update to Android N (final SDK)
+ </a><br>-->
+ </div>
+ <div class="col-9of16 col-pull-7of16 dac-hero-figure" style="margin-top:1.5em;padding-right:1.5em;">
+ <img class="dac-hero-image" src="{@docRoot}images/home/n-preview-hero.png"
+ srcset="{@docRoot}images/home/n-preview-hero.png 1x,
+ {@docRoot}images/home/n-preview-hero_2x.png 2x">
+ </div>
+ </div>
+ <div class="dac-section dac-small">
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="collection:preview/landing/resources"
+ data-cardSizes="6x2"
+ data-maxResults="6"></div>
+ </div>
+ </div>
+</section>
+
+<div id="useUpdatedTemplates" style="display:none" class="dac-section dac-slim dac-gray dac-expand">
+ <div class="wrap dac-offset-parent">
+ <a class="dac-fab dac-scroll-button" data-scroll-button href="#build-apps">
+ <i class="dac-sprite dac-arrow-down-gray"></i>
+ </a>
+ <ul class="dac-actions">
+ <li class="dac-action">
+ <a class="dac-action-link" href="https://developer.android.com/preview/bug">
+ <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+ Report an issue
+ </a>
+ </li>
+ <li class="dac-action">
+ <a class="dac-action-link" href="{@docRoot}preview/support.html">
+ <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+ See release notes
+ </a>
+ </li>
+ <li class="dac-action">
+ <a class="dac-action-link" href="{@docRoot}preview/dev-community">
+ <i class="dac-action-sprite dac-sprite dac-auto-chevron-large"></i>
+ Join dev community
+ </a>
+ </li>
+ </ul>
+ </div><!-- end .wrap -->
+</div><!-- end .dac-actions -->
+
+<div id="useOldTemplates" style="display:none;color:black" class="actions-bar dac-expand dac-invert">
+ <div class="wrap dac-offset-parent">
+
+ <div class="actions">
+ <div><a href="https://developer.android.com/preview/bug">
+ <span class="dac-sprite dac-auto-chevron-large"></span>
+ Report an issue
+ </a></div>
+ <div><a href="{@docRoot}preview/support.html">
+ <span class="dac-sprite dac-auto-chevron-large"></span>
+ See release notes
+ </a></div>
+ <div><a href="{@docRoot}preview/dev-community">
+ <span class="dac-sprite dac-auto-chevron-large"></span>
+ Join dev community
+ </a></div>
+ </div><!-- end .actions -->
+ </div><!-- end .wrap -->
+</div>
+
+<section class="dac-section dac-light"><div class="wrap">
+ <h1 class="dac-section-title">Resources</h1>
+ <div class="dac-section-subtitle">
+ Essential information to help you get your apps ready for Android N.
+ </div>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="collection:preview/landing/more"
+ data-cardSizes="6x6"
+ data-items-per-page="6"
+ data-maxResults="15"
+ data-initial-results="6"></div>
+
+ </div>
+</section>
+
diff --git a/docs/html/preview/j8-jack.jd b/docs/html/preview/j8-jack.jd
new file mode 100644
index 0000000..78252f0
--- /dev/null
+++ b/docs/html/preview/j8-jack.jd
@@ -0,0 +1,196 @@
+page.title=Java 8 Language Features
+page.keywords="android N", "Java 8", "Jack"
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <ol>
+ <li>
+ <a href="#supported-features">Supported Java 8 Language Features and APIs</a>
+ </li>
+ <li>
+ <a href="#configuration">Enabling Java 8 Features and the Jack Toolchain</a>
+ </li>
+ </ol>
+ </div>
+</div>
+
+<p>Android N introduces support for Java 8 language features
+ that you can use when developing apps that target Android N.
+ This page describes the new language features supported in the Android N
+ Preview, how to properly set up your project to use them, and any known
+ issues you may encounter.
+</p>
+
+<p>To start using these features, you need to download and set up Android
+Studio 2.1 (preview) and the Android N Preview SDK, which includes the required
+Jack toolchain and updated Android Plugin for Gradle. If you haven't yet
+installed the Android N Preview SDK, see <a href=
+"{@docRoot}preview/setup-sdk.html">Set Up to Develop for Android N</a>.</p>
+
+
+
+<p class="note">
+ <strong>Note:</strong> Using the new Java 8 language features is not a
+ requirement for developing apps that target the Android N platform. If you
+ don't want to write code with Java 8 language features, you can keep your
+ project's source and target compatibility values set to Java 7, but you still
+ must compile with JDK 8 to build against the Android N platform.
+</p>
+
+<h2 id="supported-features">
+ Supported Java 8 Language Features and APIs
+</h2>
+
+<p>
+ Android does not currently support all Java 8 language features. However, the
+ following features are now available when developing apps targeting the
+ Android N Preview:
+</p>
+
+<ul>
+ <li>
+ <a class="external-link" href=
+ "https://docs.oracle.com/javase/tutorial/java/IandI/defaultmethods.html">Default
+ and static interface methods</a>
+ </li>
+
+ <li>
+ <a class="external-link" href=
+ "https://docs.oracle.com/javase/tutorial/java/javaOO/lambdaexpressions.html">
+ Lambda expressions</a>
+ </li>
+
+ <li>
+ <a class="external-link" href=
+ "https://docs.oracle.com/javase/tutorial/java/annotations/repeating.html">Repeatable
+ annotations</a>
+ </li>
+</ul>
+
+
+<p>
+ Additionally, the following Java 8 language feature APIs are now available:
+</p>
+
+<ul>
+ <li>Reflection and language-related APIs:
+ </li>
+
+ <li style="list-style: none; display: inline">
+ <ul>
+ <li>{@code java.lang.FunctionalInterface}
+ </li>
+
+ <li>{@code java.lang.annotation.Repeatable}
+ </li>
+
+ <li>{@code java.lang.reflect.Method.isDefault()}
+ </li>
+
+ <li>and Reflection APIs associated with repeatable annotations, such as
+ {@code AnnotatedElement.getAnnotationsByType(Class)}
+ </li>
+ </ul>
+ </li>
+ <li>Utility APIs:
+ </li>
+
+ <li style="list-style: none; display: inline">
+ <ul>
+ <li>{@code java.util.function}
+ </li>
+ </ul>
+ </li>
+</ul>
+
+<p class="note">
+ <strong>Note:</strong> The Android N bases its implementation of
+ lambda expressions on anonymous classes. This approach allows them to be
+ backwards compatible and executable on earlier versions of Android. To test
+ lambda expressions on earlier versions, remember to go to your {@code
+ build.gradle} file, and set {@code compileSdkVersion} and {@code
+ targetSdkVersion} to 23 or lower.
+</p>
+
+<h2 id="configuration">
+ Enabling Java 8 Features and the Jack Toolchain
+</h2>
+
+<p>
+ In order to use the new Java 8 language features, you need to also use the
+ new <a class="external-link" href=
+ "https://source.android.com/source/jack.html">Jack toolchain</a>. This new
+ Android toolchain compiles Java language source into Android-readable dex
+ bytecode, has its own {@code .jack} library format, and provides most toolchain
+ features as part of a single tool: repackaging, shrinking, obfuscation and
+ multidex.
+</p>
+
+<p>Here is a comparison of the two toolchains used to build Android DEX files:</p>
+<ul>
+ <li>Legacy javac toolchain:<br>
+ <b>javac</b> ({@code .java} --> {@code .class}) --> <b>dx</b> ({@code
+ .class} --> {@code .dex})
+ </li>
+
+ <li>New Jack toolchain:<br>
+ <b>Jack</b> ({@code .java} --> {@code .jack} --> {@code .dex})
+ </li>
+</ul>
+
+<h3>
+ Configuring Gradle
+</h3>
+
+<p>
+ To enable the Java 8 language features and Jack for your project, enter the
+ following in your module-specific {@code build.gradle} file:
+</p>
+
+<pre>
+android {
+ ...
+ defaultConfig {
+ ...
+ jackOptions {
+ enabled true
+ }
+ }
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
+ }
+}
+</pre>
+
+<h3>
+ Known Issues
+</h3>
+
+<p>
+ Instant Run, introduced in Android Studio 2.0 (Beta), does not currently work
+ with Jack and will be disabled while using the new toolchain.
+</p>
+
+<p>Because Jack does not generate intermediate class files when compiling an
+app, tools that depend on these files do not currently work with Jack. Some
+examples of these tools are:</p>
+
+<ul>
+ <li>Lint detectors that operate on class files
+ </li>
+
+ <li>Tools and libraries that require the app’s class files (such as
+ instrumentation tests with JaCoCo)
+ </li>
+</ul>
+
+<p>
+ Calls to an interface's default method on a <a class="external-link" href=
+ "https://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Proxy.html"><code>
+ Proxy</code></a> instance fail with an exception.
+</p>
+
+<p>If you find other problems while using Jack, <a href=
+"http://tools.android.com/filing-bugs">please report bugs</a>.</p>
\ No newline at end of file
diff --git a/docs/html/preview/license.jd b/docs/html/preview/license.jd
new file mode 100644
index 0000000..ae02aae
--- /dev/null
+++ b/docs/html/preview/license.jd
@@ -0,0 +1,145 @@
+page.title=License Agreement
+
+@jd:body
+
+<p>
+To get started with the Android SDK Preview, you must agree to the following terms and conditions.
+As described below, please note that this is a preview version of the Android SDK, subject to change, that you use at your own risk. The Android SDK Preview is not a stable release, and may contain errors and defects that can result in serious damage to your computer systems, devices and data.
+</p>
+
+<p>
+This is the Android SDK Preview License Agreement (the “License Agreement”).
+</p>
+<div class="sdk-terms" style="height:auto;border:0;padding:0;width:700px">
+1. Introduction
+
+1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 “Android-compatible” means any Android implemation that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).
+
+1.4 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+2. Accepting the License Agreement
+
+2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement.
+
+2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview.
+
+2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity.
+
+3. Preview License from Google
+
+3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable, non-exclusive, and non-sublicensable license to use the Preview solely to develop applications for compatible implementations of Android.
+
+3.2 You may not use this Preview to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this Preview is not used for that purpose.
+
+3.3 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.4 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
+
+3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights.
+
+3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview.
+
+4. Use of the Preview by You
+
+4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released.
+
+5. Your Developer Credentials
+
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+6. Privacy and Information
+
+6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/.
+
+7. Third Party Applications
+
+7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party.
+
+8. Using Google APIs
+
+8.1 Google APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+9. Terminating the License Agreement
+
+9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you.
+
+9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of:
+(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and
+(B) Google issues a final release version of the Android SDK.
+
+9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely.
+
+10. DISCLAIMERS
+
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+11. LIMITATION OF LIABILITY
+
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+12. Indemnification
+
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement.
+
+13. Changes to the License Agreement
+
+13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available.
+
+14. General Legal Terms
+
+14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+
+
+</div>
\ No newline at end of file
diff --git a/docs/html/preview/overview.jd b/docs/html/preview/overview.jd
new file mode 100644
index 0000000..c542e18
--- /dev/null
+++ b/docs/html/preview/overview.jd
@@ -0,0 +1,446 @@
+page.title=Program Overview
+page.metaDescription=Get your apps ready for the next version of Android.
+page.image=images/cards/card-n-overview_2x.png
+meta.tags="preview", "developer", "android"
+page.tags="preview", "developer", "android"
+
+@jd:body
+<!--
+<div class="cols" style=
+"background-color:#f2daf5; padding: 5px 0;margin-bottom:1em; text-align:center;">
+<h3>
+ Developer Preview 3 is now available
+ </h3>
+ <p>Includes final SDK and near-final system images</p>
+ <div style="margin:auto 1em">
+ <ul class="dac-section-links">
+ <li class="dac-section-link">
+ <a href="{@docRoot}preview/support.html#preview3-notes">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Read the Notes</a>
+ </li>
+
+ <li class="dac-section-link">
+ <a href="{@docRoot}preview/support.html#preview3-get">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Get the Update</a>
+ </li>
+
+ <li class="dac-section-link">
+ <a href="https://code.google.com/p/android-developer-preview/">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Report Issues</a>
+ </li>
+ </ul>
+ </div>
+</div>
+-->
+
+<p>
+ Welcome to the <strong>Android N Developer Preview</strong>, a program that
+ gives you everything you need to test and optimize your apps for the next
+ version of Android. It's free, and you can get started right away just by
+ downloading the N Developer Preview tools.
+</p>
+
+
+
+
+
+
+
+<div style="background-color:#eceff1;padding:1em;">
+<div class="wrap">
+ <div class="cols">
+ <div class="col-4of12">
+ <h5>
+ Hardware and emulator images
+ </h5>
+
+ <p>
+ Run and test your apps on a range of devices or on an emulator.
+
+ </p>
+ </div>
+
+ <div class="col-4of12">
+ <h5>
+ Latest platform code
+ </h5>
+
+ <p>
+ We’ll provide monthly updates during the Preview, so you’ll be testing against the latest platform changes.
+ </p>
+ </div>
+
+ <div class="col-4of12">
+ <h5>
+ Priority for developer issues
+ </h5>
+
+ <p>
+ During the first several weeks we’ll give priority to developer-reported
+ issues, so test and give feedback as soon as possible.
+ </p>
+ </div>
+
+ </div>
+
+ <div class="cols">
+
+
+ <div class="col-4of12">
+ <h5>
+ New behaviors and capabilities
+ </h5>
+
+ <p>
+ Start work early to support new platform behaviors and develop with new features.
+ </p>
+ </div>
+
+ <div class="col-4of12">
+ <h5>
+ Updates delivered by OTA
+ </h5>
+
+ <p>
+ Seamless over-the-air updates for any supported device through the
+ Android Beta Program. No flashing is needed.
+ </p>
+ </div>
+
+ <div class="col-4of12">
+ <h5>
+ Feedback and support
+ </h5>
+
+ <p>
+ Report issues and give us feedback using our
+ <a href="{@docRoot}preview/bug">issue tracker</a>. Connect with other
+ developers in the
+ <a href="{@docRoot}preview/dev-community">N Developer Community</a>.
+ </p>
+ </div>
+ </div>
+</div>
+</div>
+
+<!--
+<p>New in the Android N Developer Preview: </p>
+
+<ul>
+ <li> Accompanying Android Beta Program for consumers, starting later in the preview</li>
+ <li> More supported devices, including devices from OEM partners</li>
+ <li> Seamless OTAs for your devices, from initial release to final N release without flashing</li>
+</ul>
+-->
+
+<h2 id="timeline">Timeline and updates</h2>
+<img src="{@docRoot}images/n-preview-updates_2x.png">
+
+<p>
+ The N Developer Preview runs from 9 March 2016 until the final Android N
+ public release to AOSP and OEMs, planned for Q3 2016.
+</p>
+
+<p>
+ At key development milestones, we’ll deliver updates for your development and
+ testing environment. In general you can expect an update each month (4 to 6
+ week interval). The milestones are listed below.
+</p>
+
+<ul>
+ <li><strong><a href="{@docRoot}preview/support.html">Preview 1</a></strong> (initial release, alpha)</li>
+ <li><strong>Preview 2</strong> (incremental update, beta)</li>
+ <li><strong>Preview 3</strong> (incremental update, beta)</li>
+ <li><strong>Preview 4</strong> (final APIs and official SDK, Play publishing)</li>
+ <li><strong>Preview 5</strong> (near-final system images for final testing)</li>
+ <li><strong>Final release</strong> to AOSP and ecosystem</li>
+</ul>
+
+<p>
+ Each update includes SDK tools, preview system images, emulators, reference
+ documentation, and API diffs.
+</p>
+
+<p>
+ The <strong>first three preview milestones</strong> provide an <strong>early
+ test and development environment</strong> that help you identify
+ compatibility issues in your current apps and plan migration or feature work
+ needed to target the new platform. This is the priority period in which to
+ give us your feedback on features and APIs and file compatibility issues
+ — for all of these, please use the <a href="{@docRoot}preview/bug">issue
+ tracker</a>. You can expect some API changes across these updates.
+</p>
+
+<p>
+ At <strong>previews 4 and 5</strong> you’ll have access to the <strong>final
+ N APIs and SDK</strong> to develop with, as well as near-final system images
+ to test system behaviors and features. Android N will provide a standard API
+ level at this time. You can begin final compatibility testing of your legacy
+ apps and refine any new code that is using the N APIs or features.
+</p>
+
+<p>
+ Also starting in preview 4, you’ll be able to <strong>publish apps to
+ devices</strong> running Android N at the official API level, such as
+ consumer devices that have opted into the Android Beta program. You can
+ publish into the Google Play alpha and beta channels first, so you can test
+ your apps with Android Beta consumers before distributing broadly on the
+ store.
+</p>
+
+<p>
+ As you test and develop on Android N, we strongly recommend <strong>keeping
+ your development environment up-to-date</strong> as preview updates are
+ released. To make the process easier, you can enroll your test devices in the
+ Android Beta program and get <strong>updates over-the-air (OTA)</strong> at
+ each milestone. Alternatively, updated preview images are available that you
+ download and flash manually.
+</p>
+
+<p>
+ We’ll notify you when preview updates are available via the <a href=
+ "http://android-developers.blogspot.com/">Android Developers Blog</a>, as
+ well as this site and the <a href="{@docRoot}preview/dev-community">Android
+ N Developer Community</a>.
+</p>
+
+
+<h2 id="preview_tools">What's in the N Developer Preview?</h2>
+
+<p>
+ The N Developer Preview includes everything you need to test your existing
+ apps on a variety of screen sizes, network technologies, CPU/GPU chipsets,
+ and hardware architectures.
+</p>
+
+<h3 id="sdk_tools">SDK tools</h3>
+
+<p>You can download these components through the SDK Manager in <a href="{@docRoot}sdk/installing/adding-packages.html">Android Studio</a>:</p>
+
+<ul>
+ <li> N Developer Preview <strong>SDK and tools</strong>
+ <li> N Developer Preview <strong>emulator system image</strong> (32-bit & 64-bit)
+ <li> N Developer Preview <strong>emulator system Image for Android TV</strong> (32-bit)
+ <li> N Developer Preview support libraries (for new app templates)
+</ul>
+
+<p>
+ We’ll provide updates to these development tools at each milestone as needed.
+</p>
+
+<h3 id="hardware_system_images">Hardware system images</h3>
+
+<p>
+ The N Developer Preview includes Nexus and other hardware system images that you can use when
+ testing and developing on physical devices. See the <a href=
+ "{@docRoot}preview/download.html">Device Images</a> page for the full list
+ of hardware images.
+</p>
+
+<p>
+ We’ll deliver updated system images for these devices at each milestone. You
+ can download and flash the updated system images to your test devices
+ manually, as frequently as you need. This is especially useful for automated
+ testing environments where you might need to reflash your device multiple
+ times.
+</p>
+
+<p class="note"><strong>Note</strong>:
+ <strong>Devices flashed manually will not get OTA updates</strong> like in
+ last year’s preview. This year, you can get OTAs by enrolling devices in the
+ Android Beta Program — see details in the next section.
+</p>
+
+<h3 id="android_beta">OTA Updates through Android Beta Program</h3>
+
+<p>
+ New for Android N is an Over-the-Air (OTA) update program that automatically
+ delivers the latest preview updates of Android N directly to devices enrolled
+ in the program. The program is free, and it’s open to anyone who has a
+ supported device that’s registered to their Google account.
+</p>
+
+<p>
+ To enroll in the program visit the <a href="https://g.co/androidbeta">Android
+ Beta Program</a> site. You’ll
+ see all of the devices registered to your account that are eligible to enroll
+ in Android Beta.
+</p>
+
+<ol>
+ <li> Choose the devices you want to receive the Android N updates
+ <li> Click Enroll, read and agree to the terms of service, and then click OK
+</ol>
+
+<p>
+ Once you’ve enrolled, your device will soon receive an update. In most cases,
+ you will not need to do a full reset of your data to move to Android N, but
+ it’s recommended that you back up any data you don’t want to lose before
+ enrolling the device.
+</p>
+
+<p>
+ As updates are delivered to your device, we recommend downloading and
+ installing them as soon as possible. You’ll want to stay current with the
+ latest changes in system UI, behavior, APIs, and features.
+</p>
+
+<p>
+ At the conclusion of the Developer Preview, your enrolled devices will
+ receive an update to the official Android N release.
+</p>
+
+<p>
+ You can un-enroll your devices from the Android Beta program at any time from
+ the Android Beta site. Before un-enrolling, make sure to back-up your data on
+ the device.
+</p>
+
+ <p class="note"><strong>Note</strong>:
+ When you un-enroll, <strong>your device will be factory reset</strong>
+ to the latest version
+ of Android 6.0 Marshmallow (not necessarily the version that you had
+ installed prior to enrolling the device). To ensure a clean installation,
+ your data will be erased from the device, including contacts, messages,
+ photos, and so on.
+</p>
+
+<h3 id="documentation_and_sample_code">Documentation and sample code</h3>
+
+<p>
+ These documentation resources are available on the Developer Preview site to
+ help you learn about the Android N:
+</p>
+
+<ul>
+ <li> <a href="{@docRoot}preview/setup-sdk.html">Set Up to Develop for
+Android N</a> has
+ step-by-step instructions for getting started.</li>
+ <li> <a href="{@docRoot}preview/behavior-changes.html">Behavior
+ Changes</a> points you to key areas to test.</li>
+ <li> Documentation of new APIs, including an <a
+ href="{@docRoot}preview/api-overview.html">API Overview</a>, downloadable
+ <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API
+ Reference</a>, and detailed developer guides on key features such as add
+ here, and others.
+ <li> <a href="{@docRoot}preview/samples.html">Sample code</a> that
+ demonstrates how to support permissions and other new features.
+ <li> <a href="{@docRoot}preview/support.html#release-notes">Release notes</a>
+ for the current version of the N Developer Preview, including change notes and
+ diff reports.
+</ul>
+
+<h4 id="reference">Downloadable API Reference</h4>
+
+<p>
+ During the early preview updates, you can download the latest
+ <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API Reference
+ for the Android N platform</a> as a separate zip archive. The reference
+ download also includes a diff report that helps you identify API changes from
+ API 23 and the previous update.
+</p>
+
+<p>
+ When the Android N APIs are final and an official API level is assigned,
+ we’ll provide the API reference to you online at <a href=
+ "https://developer.android.com">https://developer.android.com</a>.
+</p>
+
+<h3 id="support_resources">
+ Support resources
+</h3>
+
+<p>
+ As you test and develop on the N Developer Preview, please use these channels
+ to report issues and give feedback.
+</p>
+
+<ul>
+ <li> <a href="https://code.google.com/p/android-developer-preview/">N Developer Preview Issue
+ Tracker</a> is your <strong>primary feedback channel.</strong> You can report bugs, performance
+ issues, and general feedback through the issue tracker. You can also check for
+<a href="{@docRoot}preview/bug">known issues</a> and
+ find workaround steps. We’ll keep you updated on your issue as it’s triaged and sent to
+ the Android engineering team for review. </li>
+ <li> The <a href="{@docRoot}preview/dev-community">Android N Developer Community</a> is
+ a Google+ community where you can <strong>connect with other developers</strong>working with
+ Android N. You can share observations or ideas or find answers to
+ questions about Android N. We’ll moderate the community and provide answers and
+ guidance as needed.</li>
+</ul>
+
+<h3 id="targeting">Targeting, preview APIs, and publishing</h3>
+
+<p>
+ The N Developer Preview provides a development-only system and Android
+ library that <strong>does not have a standard API level</strong>. If you want
+ to opt out of compatibility behaviors to test your app (which is strongly
+ recommended), you can target the preview version of Android N by setting your
+ app's <code><a href=
+ "{@docRoot}preview/setup-sdk.html#create-update">targetSdkVersion</a></code>
+ to <code>“N”</code>.
+</p>
+
+<p>
+ The Android N Developer Preview delivers <strong>preview APIs</strong>
+ — the APIs will not be official until the final SDK is released,
+ currently planned for the third quarter of 2016. This means that you can
+ <strong>expect minor API changes</strong> over time, especially during
+ initial weeks of the program. We’ll provide a summary of changes to you with
+ each update of the Android N Developer Preview.
+</p>
+
+<p class="note">
+ <strong>Note</strong>: Although preview APIs may change, underlying
+ system behaviors are stable and ready for testing against
+ right away.
+</p>
+
+<p>
+ Google Play <strong>prevents publishing of apps targeting the N Developer
+ Preview</strong>. When the Android N final SDK is available, you’ll be able
+ to target the official Android N API level and publish your app to Google
+ Play via the alpha and beta release channels. Meanwhile, if you want to
+ distribute an app targeting Android N to testers, you can do so via email or
+ by direct download from your site.
+</p>
+
+<p>
+ At the full release of Android N to AOSP and OEMs, planned for Q3 2016,
+ you’ll be able to publish your apps targeting Android N to the public release
+ channel in Google Play.
+</p>
+
+
+<h2 id="how_to_get_started">How to get started</h2>
+
+<p>
+ To get started testing your app with Android N:
+</p>
+
+<ol>
+ <li> Review the <a href="{@docRoot}preview/api-overview.html">API Overview</a>
+ and <a href="{@docRoot}preview/behavior-changes.html">Behavior Changes</a> to
+ get an idea of what's new and how it affects your apps. In particular,
+ learn about the new <a href="{@docRoot}preview/features/notification-updates.html"
+ >notifications</a> features and
+ <a href="{@docRoot}preview/features/multi-window.html">multi-window support</a>.</li>
+ <li> Set up your environment by following the instructions for <a
+ href="{@docRoot}preview/setup-sdk.html">Setting up the Preview SDK</a>
+ and configuring test devices.</li>
+ <li> Follow the <a href="https://developers.google.com/android/nexus/images">flashing
+ instructions</a> to flash the latest Android N system image for your device. </li>
+ <li> Review the <a href="{@docRoot}preview/setup-sdk.html#docs-dl">API Reference</a>
+ and <a href="{@docRoot}preview/samples.html">Android N samples</a> to gain more
+ insight into new API features and how to use them in your app.
+ <li> Join the <a href="{@docRoot}preview/dev-community">Android N
+ Developer Community</a> to get the latest news and connect with other
+ developers working with the new platform.</li>
+</ol>
+
+<p>
+ Thank you for your participation in the Android N Developer Preview program!
+</p>
diff --git a/docs/html/preview/preview_toc.cs b/docs/html/preview/preview_toc.cs
new file mode 100644
index 0000000..f96bf1f
--- /dev/null
+++ b/docs/html/preview/preview_toc.cs
@@ -0,0 +1,132 @@
+<ul id="nav">
+
+ <li class="nav-section">
+ <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/overview.html"
+ es-lang="Información general del programa"
+ ja-lang="プログラム概要"
+ ko-lang="프로그램 개요"
+ pt-br-lang="Visão geral do programa"
+ ru-lang="Обзор программы"
+ zh-cn-lang="计划概览"
+ zh-tw-lang="程式總覽">
+ Program Overview</a></div>
+ </li>
+
+
+ <li class="nav-section">
+ <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/support.html">
+ Support and Release Notes</a></div>
+ </li>
+
+ <li class="nav-section">
+ <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/setup-sdk.html"
+ es-lang="Configurar el SDK de la versión preliminar"
+ ja-lang="Preview SDK のセットアップ"
+ ko-lang="미리 보기 SDK 설정하기"
+ pt-br-lang="Configuração do Preview SDK"
+ ru-lang="Настройка пакета SDK Preview"
+ zh-cn-lang="设置预览版 SDK"
+ zh-tw-lang="設定預覽版 SDK">
+ Set Up to Develop</a></div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/download.html">
+ Test on a Device</a></div>
+ </li>
+
+
+ <li class="nav-section">
+ <div class="nav-section-header"><a href="<?cs var:toroot ?>preview/behavior-changes.html"
+ es-lang="Cambios en los comportamientos"
+ ja-lang="動作の変更点"
+ ko-lang="동작 변경"
+ pt-br-lang="Mudanças de comportamento"
+ ru-lang="Изменения в работе"
+ zh-cn-lang="行为变更"
+ zh-tw-lang="行為變更">Behavior Changes
+ </a></div>
+ <ul>
+ <li><a href="<?cs var:toroot ?>preview/features/background-optimization.html"
+ >Background Optimizations</a></li>
+ <li><a href="<?cs var:toroot ?>preview/features/multilingual-support.html"
+ >Language and Locale</a></li>
+ </ul>
+ </li>
+
+ <li class="nav-section">
+ <div class="nav-section-header"><a href="<?cs var:toroot ?>preview/api-overview.html"
+ es-lang="Información general de la API"
+ ja-lang="API の概要"
+ ko-lang="API 개요"
+ pt-br-lang="Visão geral da API"
+ ru-lang="Обзор API-интерфейсов"
+ zh-cn-lang="API 概览"
+ zh-tw-lang="API 總覽">Android N for Developers
+ </a></div>
+ <ul>
+
+ <li><a href="<?cs var:toroot ?>preview/features/multi-window.html"
+ >Multi-Window Support</a></li>
+
+ <li><a href="<?cs var:toroot ?>preview/features/notification-updates.html"
+ >Notifications</a></li>
+
+ <li><a href="<?cs var:toroot ?>preview/features/data-saver.html"
+ >Data Saver</a></li>
+
+ <li><a href="<?cs var:toroot ?>preview/features/tv-recording-api.html"
+ >TV Recording</a></li>
+
+ <li><a href="<?cs var:toroot ?>preview/features/security-config.html"
+ >Network Security Configuration</a></li>
+
+ <li><a href="<?cs var:toroot ?>preview/features/icu4j-framework.html"
+ >ICU4J Support</a></li>
+
+ <li><a href="<?cs var:toroot ?>preview/j8-jack.html"
+ >Java 8 Language Features</a></li>
+
+ <li><a href="<?cs var:toroot ?>preview/features/afw.html"
+ >Android for Work Updates</a></li>
+ </ul>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class="nav-section">
+ <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/samples.html"
+ es-lang="Ejemplos"
+ ja-lang="サンプル"
+ ko-lang="샘플"
+ pt-br-lang="Exemplos"
+ ru-lang="Примеры"
+ zh-cn-lang="示例"
+ zh-tw-lang="範例">
+ Samples</a></div>
+ </li>
+
+ <li class="nav-section">
+ <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/license.html"
+ es-lang="Contrato de licencia"
+ ja-lang="使用許諾契約"
+ ko-lang="라이선스 계약"
+ pt-br-lang="Contrato de licença"
+ ru-lang="Лицензионное соглашение"
+ zh-cn-lang="许可协议"
+ zh-tw-lang="授權協議">
+ License Agreement</a></div>
+ </li>
+
+</ul>
diff --git a/docs/html/preview/samples.jd b/docs/html/preview/samples.jd
new file mode 100644
index 0000000..1544d9c
--- /dev/null
+++ b/docs/html/preview/samples.jd
@@ -0,0 +1,85 @@
+page.title=Samples
+page.tags="preview", "samples", "android"
+page.image=images/cards/card-n-samples_2x.png
+@jd:body
+
+<p>
+ The following code samples are provided for Android N. To
+ download the samples in Android Studio, select the <b>File > Import
+ Samples</b> menu option.
+</p>
+
+<p class="note">
+ <strong>Note:</strong> These downloadable projects are designed
+ for use with Gradle and Android Studio.
+</p>
+
+
+<h3 id="mw">Multi-Window Playground</h3>
+<img src="{@docRoot}preview/images/sample-multiwindow.png" style="float: left; padding-right: 0.5em" height="250" width="156"/>
+<p>
+ This sample demonstrates how to take advantage of multiple window
+ user interfaces with your app.
+</p>
+<p>
+ <a href="https://github.com/googlesamples/android-MultiWindowPlayground">
+ Get it on GitHub</a>
+</p>
+
+<div style="clear: both;"></div>
+<h3 id="an">Active Notifications</h3>
+<img src="{@docRoot}preview/images/sample-activenotifications.png" style="float: left; padding-right: 0.5em" height="250" width="141" />
+<p>
+ This is a pre-existing sample which shows a simple service that sends
+ notifications using NotificationCompat. Each unread conversation from a user
+ is sent as a distinct notification.
+</p>
+<p>
+ This sample has been updated to take advantage of new notification features
+ available in Android N.
+</p>
+<p>
+ <a href="https://github.com/googlesamples/android-ActiveNotifications">
+ Get it on GitHub</a>
+</p>
+
+<div style="clear: both;"></div>
+<h3 id="ms">Messaging Service</h3>
+<img src="{@docRoot}preview/images/sample-messagingservice.png" style="float: left; padding-right: 0.5em" height="250" width="150" />
+<p>
+ This is a pre-existing sample which demonstrates how to use
+ NotificationManager to tell how many notifications an application is currently
+ showing.
+</p>
+<p>
+ This sample has been updated to take advantage of new notification features
+ available in Android N.
+</p>
+<p>
+ <a href="https://github.com/googlesamples/android-MessagingService">
+ Get it on GitHub</a>
+</p>
+
+<div style="clear: both;"></div>
+<h3 id="fbe">Direct Boot</h3>
+<img src="{@docRoot}preview/images/sample-directboot.png" style="float: left; padding-right: 0.5em" height="250" width="141" />
+<p>
+ This sample demonstrates how to store and access data in a device encrypted
+ storage which is always available while the device is booted.
+</p>
+<p>
+ <a href="https://github.com/googlesamples/android-DirectBoot">
+ Get it on GitHub</a>
+</p>
+
+<div style="clear: both;"></div>
+<h3 id="sda">Scoped Directory Access</h3>
+<img src="{@docRoot}preview/images/sample-scopeddirectoryaccess.png" style="float: left; padding-right: 0.5em" height="250" width="141" />
+<p>
+ This sample demonstrates how to read and write data from specific
+ directories, while requiring fewer permissions.
+</p>
+<p>
+ <a href="https://github.com/googlesamples/android-ScopedDirectoryAccess">
+ Get it on GitHub</a>
+</p>
\ No newline at end of file
diff --git a/docs/html/preview/setup-sdk.jd b/docs/html/preview/setup-sdk.jd
new file mode 100644
index 0000000..bc40ebd
--- /dev/null
+++ b/docs/html/preview/setup-sdk.jd
@@ -0,0 +1,232 @@
+page.title=Set Up the Preview
+meta.keywords="preview", "android"
+page.tags="preview", "developer preview"
+page.image=images/cards/card-n-sdk_2x.png
+
+@jd:body
+
+
+<div id="qv-wrapper">
+ <div id="qv">
+<ol>
+ <li><a href="#get-as13">Get Android Studio 2.1</a></li>
+ <li><a href="#get-sdk">Get the Android N SDK</a>
+ <ol>
+ <li><a href="#docs-dl">Reference documentation</a>
+ </ol>
+ </li>
+ <li><a href="#java8">Get the Java 8 JDK and JRE</a></li>
+ <li><a href="#create-update">Update or Create a Project</a></li>
+ <li><a href="#next">Next Steps</a></li>
+</ol>
+ </div>
+</div>
+
+<p>To develop apps for the Android N Preview, you need to make some updates
+to your developer environment, as described on this page.</p>
+
+<p>To simply test your app's compatibility on the
+Android N system image, follow the guide to <a
+href="{@docRoot}preview/download.html">Test on an Android N Device</a>.</p>
+
+<img src="{@docRoot}preview/images/n-preview-setup.png" width="700" alt="" />
+
+
+<h2 id="get-as13">Get Android Studio 2.1 (preview)</h2>
+
+<p>The Android N platform adds support for <a
+href="{@docRoot}preview/j8-jack.html">Java 8 language features</a>,
+which require a new compiler called Jack. The latest version of Jack
+is currently supported only in Android Studio 2.1. So if you want to
+use Java 8 language features, you need to use Android Studio 2.1 to
+build your app. Otherwise, you don't need to use the Jack compiler, but you
+still need to update to JDK 8 to compile against the Android N platform,
+as described below.
+</p>
+
+<iframe width="400" height="225" src="//www.youtube.com/embed/SBbWGxXCMqQ?autohide=1&showinfo=0" frameborder="0" allowfullscreen="" style="float: right; margin: 0 0 20px 20px;"></iframe>
+
+<p>Android Studio 2.1 is currently available as a preview in the canary
+release channel. If you already
+have Android Studio and don't want to update to the canary channel, you can
+download Android Studio 2.1 as a separate installation and use it
+for development with Android N, leaving your primary Android Studio
+environment unaffected.</p>
+
+<p>To download Android Studio 2.1 as a separate installation, follow these
+steps (or if you want to receive Android Studio 2.1 as an update to your
+existing installation, skip to step 4):</p>
+
+<ol>
+ <li>Edit the name of your
+ existing Android Studio installation and append the version number. This way,
+ when you install the new version, it will not override the existing one.</li>
+ <li>Download the appropriate ZIP file for your operating system from the
+ <a href="http://tools.android.com/download/studio/canary/latest"
+ >canary channel download page</a>.
+ </li>
+ <li>Unzip the package and move the Android Studio 2.1 contents to the
+ appropriate location for applications on your system, then launch it.</li>
+ <li>Open the Settings dialog
+ (<strong>File > Settings</strong> on Windows/Linux, or
+ <strong>Android Studio > Preferences</strong> on Mac). In the left
+ panel, select <strong>Appearance & Behavior > System Settings >
+ Updates</strong>.
+ </li>
+ <li>On the Updates panel, select the <strong>Automatically
+ check updates for</strong> check box and select
+ <strong>Canary Channel</strong> from the drop-down list.
+ </li>
+</ol>
+
+<p>Keep this settings window open for the next step.</p>
+
+
+<h2 id="get-sdk">Get the N Preview SDK</h2>
+
+<p>To start developing with Android N APIs, you need to install the
+Android N Preview SDK in Android Studio as follows:</p>
+
+<ol>
+ <li>While still viewing the Updates panel (step 4 from above),
+ select the <strong>Automatically
+ check updates for Android SDK</strong> check box and select
+ <strong>Preview Channel</strong> from the drop-down list.
+ </li>
+ <li>Click <strong>Check Now</strong>.</li>
+
+ <li>In the left panel, select <strong>Appearance & Behavior >
+ System Settings > Android SDK</strong>.
+
+ <li>Click the <strong>SDK Platforms</strong> tab, then select the
+ <strong>Android N Preview</strong> check box.</li>
+
+ <li>Click the <strong>SDK Tools</strong> tab, then select the
+ <strong>Android SDK Build Tools</strong>, <strong>Android SDK
+ Platform-Tools</strong>, and <strong>Android SDK Tools</strong> check
+ boxes.
+ </li>
+
+ <li>Click <strong>OK</strong>, then accept the licensing
+ agreements for any packages that need to be installed.
+ </li>
+</ol>
+
+<h3 id="docs-dl">Get the N Preview reference documentation</h3>
+
+<p>
+ Detailed information about the Android N APIs is available in the N Preview
+ reference documentation, which you can download from the following table.
+ This package contains an abridged, offline version of the Android developer
+ web site, and includes an updated API reference for the Android N APIs and an
+ API difference report.
+</p>
+
+<table>
+ <tr>
+ <th scope="col">Documentation</th>
+ <th scope="col">Checksums</th>
+ </tr>
+ <tr>
+ <td style="white-space: nowrap">
+ <a href="{@docRoot}shareables/preview/n-preview-1-docs.zip"
+ >n-preview-1-docs.zip</a></td>
+ <td width="100%">
+ MD5: 4ab33ccbe698f46f125cc5b807cf9c2f<br>
+ SHA-1: 6a3880b3ccd19614daae5a4d0698ea6ae11c20a5
+ </td>
+ </tr>
+<table>
+
+
+
+<h2 id="java8">Get the Java 8 JDK and JRE</h2>
+
+<p>To compile your app against the Android N platform, you need to use
+the Java 8 Developer Kit (JDK 8), and in order to use some tools with Android
+Studio 2.1, you need to install the Java 8 Runtime Environment (JRE 8). So, if
+you don't have the latest version of each already, download JDK 8 and JRE 8
+now.</p>
+
+<p>Then set the JDK version in Android Studio as follows:</p>
+
+<ol>
+ <li>Open an Android project in Android Studio, then open the
+ Project Structure dialog by selecting <strong>File >
+ Project Structure</strong>. (Alternatively, you can set the default
+ for all projects by selecting <strong>File > Other Settings >
+ Default Project Structure</strong>.)
+ </li>
+ <li>In the left panel of the dialog, click <strong>SDK Location</strong>.
+ </li>
+ <li>In the <strong>JDK Location</strong> field, enter the location of the
+ Java 8 JDK (click the button on the right
+ to browse your files), then click <strong>OK</strong>.
+ </li>
+</ol>
+
+<img src="{@docRoot}preview/images/studio-jdk-location.jpg" width="700"
+ alt="" />
+
+
+<h2 id="create-update">Update or Create a Project</h2>
+
+<p>
+ To use the Android N APIs, your project must be configured appropriately.
+</p>
+
+<p>If you plan to use Java 8 language features, you should also read
+<a href="{@docRoot}preview/j8-jack.html">Java 8 Language Features</a>
+for information about the supported Java 8 features and
+how to configure your project with the Jack compiler.</p>
+
+
+<h3 id="update">Update an existing project</h3>
+
+<p>Open the
+ <code>build.gradle</code> file for your module and update the values as
+ follows:
+</p>
+
+<pre>
+android {
+ compileSdkVersion <strong>'android-N'</strong>
+ buildToolsVersion <strong>'24.0.0-rc1'</strong>
+ ...
+
+ defaultConfig {
+ minSdkVersion <strong>'N'</strong>
+ targetSdkVersion <strong>'N'</strong>
+ ...
+ }
+ ...
+}</pre>
+
+
+<h3 id="create">Create a new project</h3>
+
+
+<p>To create a new project for development with the Android N Preview SDK:</p>
+
+<ol>
+ <li>Click <strong>File > New Project</strong>. and follow the steps until
+ you reach the Target Android Devices page.
+ </li>
+ <li>On this page, select <strong>Phone and Tablet</strong> option.</li>
+ <li>Under <strong>Phone and Tablet</strong> option, in the <strong>Minimum
+ SDK</strong> option list, select
+ <strong>N: Android API 23, N Preview (Preview)</strong>.</li>
+</ol>
+
+
+<h2 id="next">Next Steps</h2>
+
+<ul>
+ <li>Follow the guide to <a
+href="{@docRoot}preview/download.html">Test on an Android N Device</a>.</li>
+ <li>Learn more about the Android N platform with
+<a href="{@docRoot}preview/behavior-changes.html">Behavior Changes</a>
+and <a href="{@docRoot}preview/api-overview.html">Android N APIs
+and Features</a>.</li>
+</ul>
+
diff --git a/docs/html/preview/support.jd b/docs/html/preview/support.jd
new file mode 100644
index 0000000..3945ecd
--- /dev/null
+++ b/docs/html/preview/support.jd
@@ -0,0 +1,382 @@
+page.title=Support and Release Notes
+meta.keywords="preview", "android"
+page.tags="preview", "developer preview"
+page.image=images/cards/card-n-support_2x.png
+
+@jd:body
+
+<p>
+ Two primary support channels are available to you when developing and testing
+ with the Android N Developer Preview: Please file bugs at <a href=
+ "https://developer.android.com/preview/bug">https://developer.android.com/preview/bug</a> for
+ device-specific, system, and Google App bugs. For issues in other apps,
+ please contact the developer directly.
+</p>
+
+<p>To discuss issues or ideas with other developers working with Android N, join the
+<a href="{@docRoot}preview/dev-community">Developer Preview Google+ community</a>.</p>
+
+
+<h2 id="dp1">Developer Preview 1</h2>
+
+<div class="wrap">
+ <div class="cols">
+ <div class="col-6of12">
+ <p>
+ <em>Date: March 2016<br>
+ Builds: NPC56P, NPC56R, updated: NPC56W, NPC56X<br>
+ Emulator support: x86 & ARM (32/64-bit)<br>
+ Google Play services: 8.4</em>
+ </p>
+ </div>
+ </div>
+</div>
+
+<h3 id="general">General advisories</h3>
+
+<p>
+ This Developer Preview release is for app developers only and is designed for
+ use in compatibility testing and early development only. Please be aware of
+ these general notes about the release:
+</p>
+<ul>
+ <li>This release has various stability and performance issues on all devices
+ that make it <em>not suitable for daily use on phone or tablet</em>,
+ especially for non-developers.
+ </li>
+
+ <li>System and app performance is known to be <strong>periodically slow /
+ janky</strong>, and device may become occasionally unresponsive. These
+ problems may become more acute with prolonged use.
+ </li>
+
+ <li>Battery life may be regressed in this release for screen-on and
+ screen-off use cases.
+ </li>
+
+ <li>Some apps may not function normally on Developer Preview 1. This includes
+ Google’s apps as well as other apps.
+ </li>
+
+ <li>This early build is not Compatibility Test Suite (CTS) approved. Apps
+ that depend on CTS approved builds (Android Pay for example) won’t work.
+ </li>
+
+ <li>This preview release supports the following devices: Nexus 5X, Nexus 6,
+ Nexus 6P, Nexus 9, Nexus Player, and Pixel C, as well as General Mobile 4G
+ (Android One).
+ </li>
+</ul>
+
+<h3 id="platform">Platform Issues</h3>
+
+<h4 id="performance">Performance and battery</h4>
+
+<ul>
+ <li>System and app performance is known to be <strong>periodically slow /
+ janky</strong>, and device may become occasionally unresponsive. These
+ problems may become more acute with prolonged use.
+ </li>
+
+ <li>Battery life may be regressed in this release for screen-on and
+ screen-off use cases.
+ </li>
+</ul>
+<h4 id="dialer">Dialer</h4>
+
+<ul>
+ <li>Dialer app does not support Direct boot. This will be addressed later in
+ N Developer Preview.
+ </li>
+
+ <li>Voicemail playback does not work.
+ </li>
+</ul>
+
+<h4 id="microphone">Microphone</h4>
+
+<ul>
+ <li>The system may incorrect persists the microphone mute state across apps and reboots. If you mute the microphone in an app and the state is persisted, open any app that has microphone mute controls and unmute the microphone.</li>
+</ul>
+
+<h4 id="ui">System UI</h4>
+
+<ul>
+ <li>Some new or modified strings in the system UI are not translated to all
+ languages.
+ </li>
+
+ <li>Overview UI is still in development, and subject to change. For example,
+ we intend to remove the timer that appears when the user switches between
+ apps.
+ </li>
+
+ <li>Settings controls and toggles may be slow or appear to be unresponsive.
+ </li>
+
+ <li>Visual design of notifications is subject to change.
+ </li>
+
+ <li>In the Gmail app, direct archiving of emails included in a notification
+ bundle does not work properly.
+ </li>
+</ul>
+
+<h4 id="afw">Android for Work</h4>
+
+<ul>
+ <li>Work Security Challenge
+ <ul>
+ <li>After migration to N, or after the user creates work profiles, work
+ profiles can't create keys in the keystore until the user changes their
+ pattern, PIN, or password, or sets up a Work Challenge.
+ </li>
+
+ <li>In Direct boot mode, applying the passcode restrictions to the device
+ causes the work profile to be unlocked, even though the device is locked.
+ This makes the work profile accessible even though it should be protected
+ by the device lock screen.
+ </li>
+
+ <li>When the user enters a wrong password and pin, the system does not
+ display any informational message; instead, it only clears the input
+ field. This issue does not affect pattern or fingerprint input.
+ </li>
+
+ <li>On a tablet, the background displayed with the work challenge is
+ disproportionately small.
+ </li>
+
+ <li>The version of <a href=
+ "https://play.google.com/store/apps/details?id=com.google.android.apps.enterprise.dmagent">
+ Google Apps Device Policy</a> that is bundled with N Developer Preview
+ does not yet support the Work Profile Security Challenge feature.
+ Developers should instead use <a href=
+ "https://play.google.com/store/apps/details?id=com.afwsamples.testdpc">TestDPC</a>
+ to test this feature.
+ </li>
+ </ul>
+ </li>
+
+ <li>Always On VPN
+ <ul>
+ <li>If Always On VPN mode is turned on, but VPN is not available, apps
+ not specified as exceptions to the Always On policy connect over the
+ ordinary network. Unless specified as exceptions to Always On VPN policy,
+ apps should be offline if they have no VPN connection available.
+ <ul>
+ <li>When Always On mode is on, a VPN connection is not established
+ after a device reboots into Direct boot mode, even after the user
+ unlocks the secure lock screen.
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+
+ <li>Improved Contacts
+ <ul>
+ <li>Bluetooth PBAP/MAP devices do not display Caller ID for work
+ contacts. The next release of Preview resolves this issue.
+ </li>
+ </ul>
+ </li>
+
+ <li>Work Mode
+ <ul>
+ <li>The Google Now Launcher does not display whether Work Mode is on or
+ off. The Launcher also does not show app suspension state.
+ </li>
+
+ <li>After the user turns Work Mode off and on, the system no longer shows
+ Work profile app widgets, such as Calendar.
+ </li>
+ </ul>
+ </li>
+
+ <li>Suspend Packages
+ </li>
+
+ <li>Device admins can suspend critical system packages, which may lead to
+ unexpected behavior, such as placing calls despite the Telephone disabled
+ dialog’s being displayed.
+ </li>
+
+ <li>Other
+ <ul>
+ <li>The Settings app crashes on launch if {@link
+ android.os.UserManager#DISALLOW_MOUNT_PHYSICAL_MEDIA} is set to true when
+ the user inserts physical media such as an SD card.
+ </li>
+
+ <li>The {@code DPM.setPackagesSuspended} state does not persist when the
+ user uninstalls and then reinstalls an app. Either the app should remain
+ suspended after uninstall/reinstall, or suspended apps should not be
+ uninstallable
+ </li>
+
+ <li>The first check-in in a Work Profile takes several minutes to
+ complete. This may cause the device to take longer than normal to be
+ visible in the Play EMM API.
+ </li>
+
+ <li>Notifications from Work Profile apps are not visible to notification
+ listeners installed in the personal profile. As a result, the system does
+ not display Notifications as expected.
+ </li>
+
+ <li>The version of Google Apps Device Policy that is bundled with N
+ Developer Preview does not yet support the Work Profile Security
+ Challenge feature. Developers should instead use TestDPC to test this
+ feature.
+ </li>
+ </ul>
+ </li>
+</ul>
+
+<h4 id="keyboard">Keyboard</h4>
+
+<ul>
+<li>Bluetooth pairing between keyboards and Android devices may be unstable. </li>
+</ul>
+
+<h4 id="video">Video</h4>
+
+<ul>
+<li>Video playback may lag and show interruptions.</li>
+</ul>
+
+<h4 id="wifi">Wi-Fi</h4>
+
+<ul>
+ <li>Wi-Fi has undergone some refactoring which may change API corner case
+ behavior. Specifically, applications which attempt to connect to specific
+ networks, or attempt to reconnect to networks should retest.
+ </li>
+
+ <li>The legacy DHCP client has been removed from the platform. The only DHCP
+ client that the platform supports is the DHCP client introduced in M.
+ </li>
+</ul>
+
+<h4 id="direct">Direct boot</h4>
+
+<ul>
+ <li>NFC doesn't function until first unlock.
+ <ul>
+ <li>When a phone with Bluetooth enabled is restarted, Bluetooth does not
+ turn on automatically. You must manually re-enable Bluetooth.
+ </li>
+
+ <li>Under some circumstances, the default ringtone may not sound for
+ phone calls and messages. This behavior is fixed in the next N Preview
+ release, with one exception (and workaround):
+ </li>
+
+ <li>On a device that is not freshly wiped--one that has been booted at
+ least once since being set to direct boot mode--the default notification
+ ringtone does not sound. The user can work around this issue by manually
+ selecting a ringtone from Settings.
+ </li>
+
+ <li>Direct boot is not enabled by default on devices running an N
+ Developer Preview build. To enable direct boot for testing and
+ development, go to Developer Options and tap Convert to File Encryption.
+ In this dev preview, this requires a factory reset to repartition and
+ reformat your device for File-based Encryption.
+ </li>
+ </ul>
+ </li>
+</ul>
+
+<h4 id="pip">Picture-in-picture for Android TV</h4>
+
+<ul>
+ <li>The PIP integration in the Recents UI is not finalized, and is subject to
+ change.
+ <ul>
+ <li>The animation of the PIP window is not smooth. Future releases of the
+ Preview will improve this.
+ </li>
+ </ul>
+ </li>
+
+ <li style="list-style: none">Future releases of the Preview will improve upon
+ the visual design and layout alignment of PIP.
+ </li>
+</ul>
+
+<h4 id="bugs">Bug reports</h4>
+
+<ul>
+ <li>Bug reports do not always complete successfully (as a workaround,
+ sometimes they can still be accessed through the bug report document provider
+ in internal storage).
+ </li>
+</ul>
+
+<h4 id="split">Split-screen Multi-window</h4>
+
+<ul>
+ <li>Apps may experience crashes and unexpected UI behavior when put into
+ split-screen mode. These are app issues that must be fixed by the app
+ developer.
+ </li>
+
+ <li>When an app targets a version of the Android platform earlier than N, the
+ App may not work with split-screen toast may appear multiple times.
+ </li>
+
+ <li>Long-pressing the Overview button while using an app with a fixed
+ orientation may produce unexpected app behavior.
+ </li>
+
+ <li>Apps may flicker while resizing.
+ </li>
+
+ <li>Animations are not yet final.
+ </li>
+</ul>
+
+<h4 id="ime">Input method</h4>
+
+<ul>
+ <li>Google Keyboard unexpectedly falls back to the generic Google keyboard
+ when <b>Use system language</b>, but Google Keyboard doesn’t support any of
+ the languages selected in the system-language preferences. It should fall
+ back to American English.
+ <p>
+ You can work around this problem by adding at least one language that
+ Google Keyboard supports.
+ </p>
+ </li>
+</ul>
+
+
+<h4 id="accessibility">Accessibility</h4>
+
+<ul>
+ <li>TalkBack exhibits issues with features including Notifications, Quick Settings Tiles and Multi-window display that may cause system crashing or lack of spoken feedback from TalkBack. Future releases of the preview will address these issues.</li>
+</ul>
+
+<h3 id="device-sp">Device-Specific Notes and Issues</h3>
+
+<h4 id="player">Nexus Player</h4>
+<ul>
+<li>Video playback, app compatibility and stability issues are expected on Nexus Player in this release of the Preview.</li>
+</ul>
+
+<h4 id="pixelc">Pixel C</h4>
+<ul>
+<li>Multi-window resizing may cause crashing.</li>
+</ul>
+
+<h4 id="n9">Nexus 9</h4>
+<ul>
+<li>Nexus 9 devices may not start after receiving an over-the-air (OTA) update
+ via the Android Beta Program. To recover from this issue, you can try
+ to manually install the OTA image. For more information, see
+ <a href="{@docRoot}preview/download-ota.html">Applying a Device OTA Image</a>.
+</li>
+</ul>
+
diff --git a/docs/html/reference/android/support/test/InstrumentationRegistry.html b/docs/html/reference/android/support/test/InstrumentationRegistry.html
index c76d0d0..b4c4559 100644
--- a/docs/html/reference/android/support/test/InstrumentationRegistry.html
+++ b/docs/html/reference/android/support/test/InstrumentationRegistry.html
@@ -860,7 +860,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/annotation/Beta.html b/docs/html/reference/android/support/test/annotation/Beta.html
index a32d895..a5addc0 100644
--- a/docs/html/reference/android/support/test/annotation/Beta.html
+++ b/docs/html/reference/android/support/test/annotation/Beta.html
@@ -727,7 +727,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/annotation/UiThreadTest.html b/docs/html/reference/android/support/test/annotation/UiThreadTest.html
index 71d955f..ad5c3d5 100644
--- a/docs/html/reference/android/support/test/annotation/UiThreadTest.html
+++ b/docs/html/reference/android/support/test/annotation/UiThreadTest.html
@@ -735,7 +735,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder.html b/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder.html
index 5ee7f7d..c10bf16 100644
--- a/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder.html
@@ -933,7 +933,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.html b/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.html
index 3ce490d..ba5f8b0 100644
--- a/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.html
+++ b/docs/html/reference/android/support/test/espresso/AmbiguousViewMatcherException.html
@@ -891,7 +891,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1125,7 +1125,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/AppNotIdleException.html b/docs/html/reference/android/support/test/espresso/AppNotIdleException.html
index cf0f02e6..0bfd996 100644
--- a/docs/html/reference/android/support/test/espresso/AppNotIdleException.html
+++ b/docs/html/reference/android/support/test/espresso/AppNotIdleException.html
@@ -911,7 +911,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1145,7 +1145,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/DataInteraction.html b/docs/html/reference/android/support/test/espresso/DataInteraction.html
index 2bdc88f..a0aa432 100644
--- a/docs/html/reference/android/support/test/espresso/DataInteraction.html
+++ b/docs/html/reference/android/support/test/espresso/DataInteraction.html
@@ -965,7 +965,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/Espresso.html b/docs/html/reference/android/support/test/espresso/Espresso.html
index 1e42d18..3074910 100644
--- a/docs/html/reference/android/support/test/espresso/Espresso.html
+++ b/docs/html/reference/android/support/test/espresso/Espresso.html
@@ -1055,7 +1055,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/EspressoException.html b/docs/html/reference/android/support/test/espresso/EspressoException.html
index b9af84d..f3827c1 100644
--- a/docs/html/reference/android/support/test/espresso/EspressoException.html
+++ b/docs/html/reference/android/support/test/espresso/EspressoException.html
@@ -672,7 +672,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/FailureHandler.html b/docs/html/reference/android/support/test/espresso/FailureHandler.html
index a5cc938..9c3cbfd 100644
--- a/docs/html/reference/android/support/test/espresso/FailureHandler.html
+++ b/docs/html/reference/android/support/test/espresso/FailureHandler.html
@@ -675,7 +675,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/GraphHolder.html b/docs/html/reference/android/support/test/espresso/GraphHolder.html
index 9415f84..21899aa 100644
--- a/docs/html/reference/android/support/test/espresso/GraphHolder.html
+++ b/docs/html/reference/android/support/test/espresso/GraphHolder.html
@@ -766,7 +766,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/IdlingPolicies.html b/docs/html/reference/android/support/test/espresso/IdlingPolicies.html
index 24320fc..706ee8d 100644
--- a/docs/html/reference/android/support/test/espresso/IdlingPolicies.html
+++ b/docs/html/reference/android/support/test/espresso/IdlingPolicies.html
@@ -878,7 +878,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/IdlingPolicy.html b/docs/html/reference/android/support/test/espresso/IdlingPolicy.html
index e4729b1..a4b3cfe 100644
--- a/docs/html/reference/android/support/test/espresso/IdlingPolicy.html
+++ b/docs/html/reference/android/support/test/espresso/IdlingPolicy.html
@@ -847,7 +847,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/IdlingResource.html b/docs/html/reference/android/support/test/espresso/IdlingResource.html
index 96235f6..ed5d651 100644
--- a/docs/html/reference/android/support/test/espresso/IdlingResource.html
+++ b/docs/html/reference/android/support/test/espresso/IdlingResource.html
@@ -678,7 +678,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/IdlingResourceTimeoutException.html b/docs/html/reference/android/support/test/espresso/IdlingResourceTimeoutException.html
index 52fb232..f0384e4 100644
--- a/docs/html/reference/android/support/test/espresso/IdlingResourceTimeoutException.html
+++ b/docs/html/reference/android/support/test/espresso/IdlingResourceTimeoutException.html
@@ -883,7 +883,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1117,7 +1117,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/InjectEventSecurityException.html b/docs/html/reference/android/support/test/espresso/InjectEventSecurityException.html
index 647dcdb..c5341a5 100644
--- a/docs/html/reference/android/support/test/espresso/InjectEventSecurityException.html
+++ b/docs/html/reference/android/support/test/espresso/InjectEventSecurityException.html
@@ -886,7 +886,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1120,7 +1120,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/NoActivityResumedException.html b/docs/html/reference/android/support/test/espresso/NoActivityResumedException.html
index 2dda253..1846c14 100644
--- a/docs/html/reference/android/support/test/espresso/NoActivityResumedException.html
+++ b/docs/html/reference/android/support/test/espresso/NoActivityResumedException.html
@@ -894,7 +894,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1128,7 +1128,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/NoMatchingRootException.html b/docs/html/reference/android/support/test/espresso/NoMatchingRootException.html
index 792c693..9cd9bbc 100644
--- a/docs/html/reference/android/support/test/espresso/NoMatchingRootException.html
+++ b/docs/html/reference/android/support/test/espresso/NoMatchingRootException.html
@@ -879,7 +879,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1113,7 +1113,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/NoMatchingViewException.Builder.html b/docs/html/reference/android/support/test/espresso/NoMatchingViewException.Builder.html
index e0eb5c3..70bdf58 100644
--- a/docs/html/reference/android/support/test/espresso/NoMatchingViewException.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/NoMatchingViewException.Builder.html
@@ -917,7 +917,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/NoMatchingViewException.html b/docs/html/reference/android/support/test/espresso/NoMatchingViewException.html
index 8d54d645..111c2c8 100644
--- a/docs/html/reference/android/support/test/espresso/NoMatchingViewException.html
+++ b/docs/html/reference/android/support/test/espresso/NoMatchingViewException.html
@@ -926,7 +926,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1160,7 +1160,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/PerformException.Builder.html b/docs/html/reference/android/support/test/espresso/PerformException.Builder.html
index b916da8..0ecef9c 100644
--- a/docs/html/reference/android/support/test/espresso/PerformException.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/PerformException.Builder.html
@@ -886,7 +886,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/PerformException.html b/docs/html/reference/android/support/test/espresso/PerformException.html
index b9b78ed..458a966 100644
--- a/docs/html/reference/android/support/test/espresso/PerformException.html
+++ b/docs/html/reference/android/support/test/espresso/PerformException.html
@@ -928,7 +928,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1162,7 +1162,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/Root.Builder.html b/docs/html/reference/android/support/test/espresso/Root.Builder.html
index a099a0f..f1392e9 100644
--- a/docs/html/reference/android/support/test/espresso/Root.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/Root.Builder.html
@@ -850,7 +850,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/Root.html b/docs/html/reference/android/support/test/espresso/Root.html
index cc11b48..d03b558 100644
--- a/docs/html/reference/android/support/test/espresso/Root.html
+++ b/docs/html/reference/android/support/test/espresso/Root.html
@@ -858,7 +858,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/ViewAction.html b/docs/html/reference/android/support/test/espresso/ViewAction.html
index 4c8625a..46cccc5 100644
--- a/docs/html/reference/android/support/test/espresso/ViewAction.html
+++ b/docs/html/reference/android/support/test/espresso/ViewAction.html
@@ -675,7 +675,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/ViewFinder.html b/docs/html/reference/android/support/test/espresso/ViewFinder.html
index 1f847fc..bdc2193 100644
--- a/docs/html/reference/android/support/test/espresso/ViewFinder.html
+++ b/docs/html/reference/android/support/test/espresso/ViewFinder.html
@@ -675,7 +675,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/ViewInteraction.html b/docs/html/reference/android/support/test/espresso/ViewInteraction.html
index 59118fd..cc4fc2b 100644
--- a/docs/html/reference/android/support/test/espresso/ViewInteraction.html
+++ b/docs/html/reference/android/support/test/espresso/ViewInteraction.html
@@ -876,7 +876,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterDataLoaderAction.html b/docs/html/reference/android/support/test/espresso/action/AdapterDataLoaderAction.html
index d124c03..87d0833 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterDataLoaderAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterDataLoaderAction.html
@@ -906,7 +906,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1108,7 +1108,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.Builder.html b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.Builder.html
index 0ff0f06..525d869 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.Builder.html
@@ -867,7 +867,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.html b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.html
index f0ce051..a83e524 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocol.AdaptedData.html
@@ -889,7 +889,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocols.html b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocols.html
index 73ab2bc..8abdd3e 100644
--- a/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocols.html
+++ b/docs/html/reference/android/support/test/espresso/action/AdapterViewProtocols.html
@@ -804,7 +804,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/action/CloseKeyboardAction.html b/docs/html/reference/android/support/test/espresso/action/CloseKeyboardAction.html
index a7507f4..0cb2a96 100644
--- a/docs/html/reference/android/support/test/espresso/action/CloseKeyboardAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/CloseKeyboardAction.html
@@ -888,7 +888,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1090,7 +1090,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/CoordinatesProvider.html b/docs/html/reference/android/support/test/espresso/action/CoordinatesProvider.html
index 436ef09..43c1c07 100644
--- a/docs/html/reference/android/support/test/espresso/action/CoordinatesProvider.html
+++ b/docs/html/reference/android/support/test/espresso/action/CoordinatesProvider.html
@@ -676,7 +676,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/action/EditorAction.html b/docs/html/reference/android/support/test/espresso/action/EditorAction.html
index 121bdb7..3d5f2126 100644
--- a/docs/html/reference/android/support/test/espresso/action/EditorAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/EditorAction.html
@@ -888,7 +888,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1090,7 +1090,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/EspressoKey.Builder.html b/docs/html/reference/android/support/test/espresso/action/EspressoKey.Builder.html
index 067f475..c66f60f 100644
--- a/docs/html/reference/android/support/test/espresso/action/EspressoKey.Builder.html
+++ b/docs/html/reference/android/support/test/espresso/action/EspressoKey.Builder.html
@@ -908,7 +908,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/action/EspressoKey.html b/docs/html/reference/android/support/test/espresso/action/EspressoKey.html
index c7ea94d..bb56e78 100644
--- a/docs/html/reference/android/support/test/espresso/action/EspressoKey.html
+++ b/docs/html/reference/android/support/test/espresso/action/EspressoKey.html
@@ -855,7 +855,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/action/GeneralClickAction.html b/docs/html/reference/android/support/test/espresso/action/GeneralClickAction.html
index 4fa1ba7..36b63e5 100644
--- a/docs/html/reference/android/support/test/espresso/action/GeneralClickAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/GeneralClickAction.html
@@ -904,7 +904,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1106,7 +1106,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/GeneralLocation.html b/docs/html/reference/android/support/test/espresso/action/GeneralLocation.html
index a3f6fb8..c62721b 100644
--- a/docs/html/reference/android/support/test/espresso/action/GeneralLocation.html
+++ b/docs/html/reference/android/support/test/espresso/action/GeneralLocation.html
@@ -985,7 +985,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1187,7 +1187,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1389,7 +1389,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.action.CoordinatesProvider" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.action.CoordinatesProvider-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -1440,7 +1440,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/GeneralSwipeAction.html b/docs/html/reference/android/support/test/espresso/action/GeneralSwipeAction.html
index 8ec87f7..85ef9f6 100644
--- a/docs/html/reference/android/support/test/espresso/action/GeneralSwipeAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/GeneralSwipeAction.html
@@ -888,7 +888,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1090,7 +1090,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/KeyEventAction.html b/docs/html/reference/android/support/test/espresso/action/KeyEventAction.html
index 5a35f11..4a7bf4a 100644
--- a/docs/html/reference/android/support/test/espresso/action/KeyEventAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/KeyEventAction.html
@@ -936,7 +936,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1138,7 +1138,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/MotionEvents.DownResultHolder.html b/docs/html/reference/android/support/test/espresso/action/MotionEvents.DownResultHolder.html
index 40c7d4a..b167845 100644
--- a/docs/html/reference/android/support/test/espresso/action/MotionEvents.DownResultHolder.html
+++ b/docs/html/reference/android/support/test/espresso/action/MotionEvents.DownResultHolder.html
@@ -811,7 +811,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/action/MotionEvents.html b/docs/html/reference/android/support/test/espresso/action/MotionEvents.html
index 7ce7673..ac84b8b 100644
--- a/docs/html/reference/android/support/test/espresso/action/MotionEvents.html
+++ b/docs/html/reference/android/support/test/espresso/action/MotionEvents.html
@@ -887,7 +887,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/action/OpenLinkAction.html b/docs/html/reference/android/support/test/espresso/action/OpenLinkAction.html
index 2e454ad..db3af22 100644
--- a/docs/html/reference/android/support/test/espresso/action/OpenLinkAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/OpenLinkAction.html
@@ -890,7 +890,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1092,7 +1092,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/PrecisionDescriber.html b/docs/html/reference/android/support/test/espresso/action/PrecisionDescriber.html
index 433b3a6..a73878d 100644
--- a/docs/html/reference/android/support/test/espresso/action/PrecisionDescriber.html
+++ b/docs/html/reference/android/support/test/espresso/action/PrecisionDescriber.html
@@ -676,7 +676,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/action/Press.html b/docs/html/reference/android/support/test/espresso/action/Press.html
index 5b24536..f027a7b 100644
--- a/docs/html/reference/android/support/test/espresso/action/Press.html
+++ b/docs/html/reference/android/support/test/espresso/action/Press.html
@@ -901,7 +901,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1103,7 +1103,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1305,7 +1305,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.action.PrecisionDescriber" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.action.PrecisionDescriber-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -1356,7 +1356,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/ReplaceTextAction.html b/docs/html/reference/android/support/test/espresso/action/ReplaceTextAction.html
index 440fbf5..3f1d4e3 100644
--- a/docs/html/reference/android/support/test/espresso/action/ReplaceTextAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/ReplaceTextAction.html
@@ -888,7 +888,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1090,7 +1090,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/ScrollToAction.html b/docs/html/reference/android/support/test/espresso/action/ScrollToAction.html
index cf26912..63061cf 100644
--- a/docs/html/reference/android/support/test/espresso/action/ScrollToAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/ScrollToAction.html
@@ -888,7 +888,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1090,7 +1090,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/Swipe.html b/docs/html/reference/android/support/test/espresso/action/Swipe.html
index f33ee0f..c03b3d6 100644
--- a/docs/html/reference/android/support/test/espresso/action/Swipe.html
+++ b/docs/html/reference/android/support/test/espresso/action/Swipe.html
@@ -889,7 +889,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1091,7 +1091,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1293,7 +1293,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.action.Swiper" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.action.Swiper-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -1345,7 +1345,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/Swiper.Status.html b/docs/html/reference/android/support/test/espresso/action/Swiper.Status.html
index 1b02dee..ecd0666 100644
--- a/docs/html/reference/android/support/test/espresso/action/Swiper.Status.html
+++ b/docs/html/reference/android/support/test/espresso/action/Swiper.Status.html
@@ -877,7 +877,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1079,7 +1079,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1283,7 +1283,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/Swiper.html b/docs/html/reference/android/support/test/espresso/action/Swiper.html
index eeef569..b10ef30 100644
--- a/docs/html/reference/android/support/test/espresso/action/Swiper.html
+++ b/docs/html/reference/android/support/test/espresso/action/Swiper.html
@@ -679,7 +679,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/action/Tap.html b/docs/html/reference/android/support/test/espresso/action/Tap.html
index 605a6b8..ce5392c 100644
--- a/docs/html/reference/android/support/test/espresso/action/Tap.html
+++ b/docs/html/reference/android/support/test/espresso/action/Tap.html
@@ -901,7 +901,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1103,7 +1103,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1305,7 +1305,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.action.Tapper" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.action.Tapper-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -1356,7 +1356,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/Tapper.Status.html b/docs/html/reference/android/support/test/espresso/action/Tapper.Status.html
index 194003b..76d8420 100644
--- a/docs/html/reference/android/support/test/espresso/action/Tapper.Status.html
+++ b/docs/html/reference/android/support/test/espresso/action/Tapper.Status.html
@@ -890,7 +890,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1092,7 +1092,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1296,7 +1296,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/Tapper.html b/docs/html/reference/android/support/test/espresso/action/Tapper.html
index 342778a..36b742a 100644
--- a/docs/html/reference/android/support/test/espresso/action/Tapper.html
+++ b/docs/html/reference/android/support/test/espresso/action/Tapper.html
@@ -679,7 +679,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/action/TypeTextAction.html b/docs/html/reference/android/support/test/espresso/action/TypeTextAction.html
index 1165251a..87af578 100644
--- a/docs/html/reference/android/support/test/espresso/action/TypeTextAction.html
+++ b/docs/html/reference/android/support/test/espresso/action/TypeTextAction.html
@@ -918,7 +918,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1120,7 +1120,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/action/ViewActions.html b/docs/html/reference/android/support/test/espresso/action/ViewActions.html
index 2f80306..303ea32 100644
--- a/docs/html/reference/android/support/test/espresso/action/ViewActions.html
+++ b/docs/html/reference/android/support/test/espresso/action/ViewActions.html
@@ -1426,7 +1426,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/assertion/LayoutAssertions.html b/docs/html/reference/android/support/test/espresso/assertion/LayoutAssertions.html
index 2d8bb4e..73bfe57 100644
--- a/docs/html/reference/android/support/test/espresso/assertion/LayoutAssertions.html
+++ b/docs/html/reference/android/support/test/espresso/assertion/LayoutAssertions.html
@@ -840,7 +840,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/assertion/PositionAssertions.html b/docs/html/reference/android/support/test/espresso/assertion/PositionAssertions.html
index 25917f7..c54c361 100644
--- a/docs/html/reference/android/support/test/espresso/assertion/PositionAssertions.html
+++ b/docs/html/reference/android/support/test/espresso/assertion/PositionAssertions.html
@@ -936,7 +936,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/assertion/ViewAssertions.html b/docs/html/reference/android/support/test/espresso/assertion/ViewAssertions.html
index 27d223a..b22bcd7 100644
--- a/docs/html/reference/android/support/test/espresso/assertion/ViewAssertions.html
+++ b/docs/html/reference/android/support/test/espresso/assertion/ViewAssertions.html
@@ -816,7 +816,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.FailureHandlerHolder.html b/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.FailureHandlerHolder.html
index b358f90..e2ab59e 100644
--- a/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.FailureHandlerHolder.html
+++ b/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.FailureHandlerHolder.html
@@ -819,7 +819,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.html b/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.html
index 88592f6..0ed54af 100644
--- a/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.html
+++ b/docs/html/reference/android/support/test/espresso/base/BaseLayerModule.html
@@ -959,7 +959,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/base/Default.html b/docs/html/reference/android/support/test/espresso/base/Default.html
index 42e5cf3..d19184c 100644
--- a/docs/html/reference/android/support/test/espresso/base/Default.html
+++ b/docs/html/reference/android/support/test/espresso/base/Default.html
@@ -738,7 +738,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/base/DefaultFailureHandler.html b/docs/html/reference/android/support/test/espresso/base/DefaultFailureHandler.html
index 1c526ff..cd58415 100644
--- a/docs/html/reference/android/support/test/espresso/base/DefaultFailureHandler.html
+++ b/docs/html/reference/android/support/test/espresso/base/DefaultFailureHandler.html
@@ -824,7 +824,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1026,7 +1026,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.FailureHandler" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.FailureHandler-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/base/IdlingResourceRegistry.html b/docs/html/reference/android/support/test/espresso/base/IdlingResourceRegistry.html
index f24ebdc..f2b24b9 100644
--- a/docs/html/reference/android/support/test/espresso/base/IdlingResourceRegistry.html
+++ b/docs/html/reference/android/support/test/espresso/base/IdlingResourceRegistry.html
@@ -872,7 +872,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/base/MainThread.html b/docs/html/reference/android/support/test/espresso/base/MainThread.html
index e19fa9e..f5eb0b1 100644
--- a/docs/html/reference/android/support/test/espresso/base/MainThread.html
+++ b/docs/html/reference/android/support/test/espresso/base/MainThread.html
@@ -738,7 +738,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/base/RootViewPicker.html b/docs/html/reference/android/support/test/espresso/base/RootViewPicker.html
index 2115918..902e6ab 100644
--- a/docs/html/reference/android/support/test/espresso/base/RootViewPicker.html
+++ b/docs/html/reference/android/support/test/espresso/base/RootViewPicker.html
@@ -790,7 +790,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -992,7 +992,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-javax.inject.Provider" class="jd-expando-trigger closed"
><img id="inherited-methods-javax.inject.Provider-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/base/UiControllerModule.html b/docs/html/reference/android/support/test/espresso/base/UiControllerModule.html
index 8e5cbad..080a129 100644
--- a/docs/html/reference/android/support/test/espresso/base/UiControllerModule.html
+++ b/docs/html/reference/android/support/test/espresso/base/UiControllerModule.html
@@ -803,7 +803,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/base/ViewFinderImpl.html b/docs/html/reference/android/support/test/espresso/base/ViewFinderImpl.html
index 5070ce9..75720eb 100644
--- a/docs/html/reference/android/support/test/espresso/base/ViewFinderImpl.html
+++ b/docs/html/reference/android/support/test/espresso/base/ViewFinderImpl.html
@@ -794,7 +794,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -996,7 +996,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewFinder" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewFinder-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/contrib/AccessibilityChecks.html b/docs/html/reference/android/support/test/espresso/contrib/AccessibilityChecks.html
index 3b03f90..ffe9828 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/AccessibilityChecks.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/AccessibilityChecks.html
@@ -793,7 +793,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/contrib/CountingIdlingResource.html b/docs/html/reference/android/support/test/espresso/contrib/CountingIdlingResource.html
index 9963def..c5fef67 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/CountingIdlingResource.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/CountingIdlingResource.html
@@ -1020,7 +1020,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1222,7 +1222,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.IdlingResource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.IdlingResource-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/contrib/DrawerActions.html b/docs/html/reference/android/support/test/espresso/contrib/DrawerActions.html
index 820aec2..0f5adc1 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/DrawerActions.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/DrawerActions.html
@@ -957,7 +957,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/contrib/DrawerMatchers.html b/docs/html/reference/android/support/test/espresso/contrib/DrawerMatchers.html
index ea6ff3b..54822bd 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/DrawerMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/DrawerMatchers.html
@@ -844,7 +844,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/contrib/PickerActions.html b/docs/html/reference/android/support/test/espresso/contrib/PickerActions.html
index 96a3450..f090b22 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/PickerActions.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/PickerActions.html
@@ -804,7 +804,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.PositionableRecyclerViewAction.html b/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.PositionableRecyclerViewAction.html
index 102ffe1..acebfec 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.PositionableRecyclerViewAction.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.PositionableRecyclerViewAction.html
@@ -773,7 +773,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.html b/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.html
index 03d17d4..5343364 100644
--- a/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.html
+++ b/docs/html/reference/android/support/test/espresso/contrib/RecyclerViewActions.html
@@ -930,7 +930,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/intent/Checks.html b/docs/html/reference/android/support/test/espresso/intent/Checks.html
index aa13c57..ecbb224 100644
--- a/docs/html/reference/android/support/test/espresso/intent/Checks.html
+++ b/docs/html/reference/android/support/test/espresso/intent/Checks.html
@@ -866,7 +866,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/intent/Intents.html b/docs/html/reference/android/support/test/espresso/intent/Intents.html
index b457656..c517775 100644
--- a/docs/html/reference/android/support/test/espresso/intent/Intents.html
+++ b/docs/html/reference/android/support/test/espresso/intent/Intents.html
@@ -954,7 +954,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/intent/OngoingStubbing.html b/docs/html/reference/android/support/test/espresso/intent/OngoingStubbing.html
index c39ed7a..b2d6f11 100644
--- a/docs/html/reference/android/support/test/espresso/intent/OngoingStubbing.html
+++ b/docs/html/reference/android/support/test/espresso/intent/OngoingStubbing.html
@@ -777,7 +777,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/intent/ResettingStubber.html b/docs/html/reference/android/support/test/espresso/intent/ResettingStubber.html
index 42a34dc..e61b13b 100644
--- a/docs/html/reference/android/support/test/espresso/intent/ResettingStubber.html
+++ b/docs/html/reference/android/support/test/espresso/intent/ResettingStubber.html
@@ -665,7 +665,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
@@ -875,7 +875,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.runner.intent.IntentStubber" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.runner.intent.IntentStubber-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/intent/ResettingStubberImpl.html b/docs/html/reference/android/support/test/espresso/intent/ResettingStubberImpl.html
index cce40e1..3e5d98f 100644
--- a/docs/html/reference/android/support/test/espresso/intent/ResettingStubberImpl.html
+++ b/docs/html/reference/android/support/test/espresso/intent/ResettingStubberImpl.html
@@ -911,7 +911,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1113,7 +1113,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.intent.ResettingStubber" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.intent.ResettingStubber-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -1225,7 +1225,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.runner.intent.IntentStubber" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.runner.intent.IntentStubber-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/intent/ResolvedIntent.html b/docs/html/reference/android/support/test/espresso/intent/ResolvedIntent.html
index 75daee4..0bf2ffa 100644
--- a/docs/html/reference/android/support/test/espresso/intent/ResolvedIntent.html
+++ b/docs/html/reference/android/support/test/espresso/intent/ResolvedIntent.html
@@ -651,7 +651,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/intent/VerifiableIntent.html b/docs/html/reference/android/support/test/espresso/intent/VerifiableIntent.html
index bd24cf10..113655b 100644
--- a/docs/html/reference/android/support/test/espresso/intent/VerifiableIntent.html
+++ b/docs/html/reference/android/support/test/espresso/intent/VerifiableIntent.html
@@ -791,7 +791,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.intent.ResolvedIntent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.intent.ResolvedIntent-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/intent/VerificationModes.html b/docs/html/reference/android/support/test/espresso/intent/VerificationModes.html
index 18b24aa..5488c26 100644
--- a/docs/html/reference/android/support/test/espresso/intent/VerificationModes.html
+++ b/docs/html/reference/android/support/test/espresso/intent/VerificationModes.html
@@ -801,7 +801,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/intent/matcher/BundleMatchers.html b/docs/html/reference/android/support/test/espresso/intent/matcher/BundleMatchers.html
index a643a55..a2481fc 100644
--- a/docs/html/reference/android/support/test/espresso/intent/matcher/BundleMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/intent/matcher/BundleMatchers.html
@@ -857,7 +857,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/intent/matcher/ComponentNameMatchers.html b/docs/html/reference/android/support/test/espresso/intent/matcher/ComponentNameMatchers.html
index ccb82d4..1d6d21d 100644
--- a/docs/html/reference/android/support/test/espresso/intent/matcher/ComponentNameMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/intent/matcher/ComponentNameMatchers.html
@@ -865,7 +865,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/intent/matcher/IntentMatchers.html b/docs/html/reference/android/support/test/espresso/intent/matcher/IntentMatchers.html
index 02083bc..ce18381 100644
--- a/docs/html/reference/android/support/test/espresso/intent/matcher/IntentMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/intent/matcher/IntentMatchers.html
@@ -1183,7 +1183,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/intent/matcher/UriMatchers.html b/docs/html/reference/android/support/test/espresso/intent/matcher/UriMatchers.html
index f5f5162..aacd7c7 100644
--- a/docs/html/reference/android/support/test/espresso/intent/matcher/UriMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/intent/matcher/UriMatchers.html
@@ -938,7 +938,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/intent/rule/IntentsTestRule.html b/docs/html/reference/android/support/test/espresso/intent/rule/IntentsTestRule.html
index 4fd2739..c51c711 100644
--- a/docs/html/reference/android/support/test/espresso/intent/rule/IntentsTestRule.html
+++ b/docs/html/reference/android/support/test/espresso/intent/rule/IntentsTestRule.html
@@ -913,7 +913,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.rule.ActivityTestRule" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.rule.ActivityTestRule-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1091,7 +1091,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.rule.UiThreadTestRule" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.rule.UiThreadTestRule-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1172,7 +1172,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1374,7 +1374,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.rules.TestRule-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/matcher/BoundedMatcher.html b/docs/html/reference/android/support/test/espresso/matcher/BoundedMatcher.html
index 46ffbf3..796063d 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/BoundedMatcher.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/BoundedMatcher.html
@@ -712,7 +712,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -917,7 +917,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.BaseMatcher" class="jd-expando-trigger closed"
><img id="inherited-methods-org.hamcrest.BaseMatcher-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -991,7 +991,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1193,7 +1193,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.Matcher" class="jd-expando-trigger closed"
><img id="inherited-methods-org.hamcrest.Matcher-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -1267,7 +1267,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.SelfDescribing" class="jd-expando-trigger closed"
><img id="inherited-methods-org.hamcrest.SelfDescribing-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.CursorMatcher.html b/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.CursorMatcher.html
index 60b3ea2..2972f62 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.CursorMatcher.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.CursorMatcher.html
@@ -867,7 +867,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.matcher.BoundedMatcher" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.matcher.BoundedMatcher-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -925,7 +925,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.BaseMatcher" class="jd-expando-trigger closed"
><img id="inherited-methods-org.hamcrest.BaseMatcher-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -999,7 +999,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1201,7 +1201,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.Matcher" class="jd-expando-trigger closed"
><img id="inherited-methods-org.hamcrest.Matcher-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -1275,7 +1275,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.hamcrest.SelfDescribing" class="jd-expando-trigger closed"
><img id="inherited-methods-org.hamcrest.SelfDescribing-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.html
index 4c55f3a..fad8f56 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/CursorMatchers.html
@@ -1632,7 +1632,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/matcher/LayoutMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/LayoutMatchers.html
index 1c2b580..7fc0419 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/LayoutMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/LayoutMatchers.html
@@ -799,7 +799,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/matcher/PreferenceMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/PreferenceMatchers.html
index b956ff9..ce1268c 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/PreferenceMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/PreferenceMatchers.html
@@ -897,7 +897,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/matcher/RootMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/RootMatchers.html
index ffad327..e55797e 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/RootMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/RootMatchers.html
@@ -896,7 +896,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.Visibility.html b/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.Visibility.html
index f252755..65b46a7 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.Visibility.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.Visibility.html
@@ -879,7 +879,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1081,7 +1081,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1285,7 +1285,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.html b/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.html
index 79e3769..53d3d1e 100644
--- a/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/matcher/ViewMatchers.html
@@ -1884,7 +1884,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/util/ActivityLifecycles.html b/docs/html/reference/android/support/test/espresso/util/ActivityLifecycles.html
index 2161c4c..95a6b3e 100644
--- a/docs/html/reference/android/support/test/espresso/util/ActivityLifecycles.html
+++ b/docs/html/reference/android/support/test/espresso/util/ActivityLifecycles.html
@@ -815,7 +815,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/util/HumanReadables.html b/docs/html/reference/android/support/test/espresso/util/HumanReadables.html
index b68ae82..fe73d80 100644
--- a/docs/html/reference/android/support/test/espresso/util/HumanReadables.html
+++ b/docs/html/reference/android/support/test/espresso/util/HumanReadables.html
@@ -807,7 +807,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/util/TreeIterables.ViewAndDistance.html b/docs/html/reference/android/support/test/espresso/util/TreeIterables.ViewAndDistance.html
index 99ff54d..f544d58 100644
--- a/docs/html/reference/android/support/test/espresso/util/TreeIterables.ViewAndDistance.html
+++ b/docs/html/reference/android/support/test/espresso/util/TreeIterables.ViewAndDistance.html
@@ -777,7 +777,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/util/TreeIterables.html b/docs/html/reference/android/support/test/espresso/util/TreeIterables.html
index 5d1ec33..bc1e582 100644
--- a/docs/html/reference/android/support/test/espresso/util/TreeIterables.html
+++ b/docs/html/reference/android/support/test/espresso/util/TreeIterables.html
@@ -852,7 +852,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/action/AtomAction.html b/docs/html/reference/android/support/test/espresso/web/action/AtomAction.html
index 944ce79..807c098 100644
--- a/docs/html/reference/android/support/test/espresso/web/action/AtomAction.html
+++ b/docs/html/reference/android/support/test/espresso/web/action/AtomAction.html
@@ -939,7 +939,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1141,7 +1141,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/web/action/EnableJavascriptAction.html b/docs/html/reference/android/support/test/espresso/web/action/EnableJavascriptAction.html
index 7b4be03..290094d 100644
--- a/docs/html/reference/android/support/test/espresso/web/action/EnableJavascriptAction.html
+++ b/docs/html/reference/android/support/test/espresso/web/action/EnableJavascriptAction.html
@@ -859,7 +859,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1061,7 +1061,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.ViewAction" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.ViewAction-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/web/assertion/TagSoupDocumentParser.html b/docs/html/reference/android/support/test/espresso/web/assertion/TagSoupDocumentParser.html
index f134141..c095b81 100644
--- a/docs/html/reference/android/support/test/espresso/web/assertion/TagSoupDocumentParser.html
+++ b/docs/html/reference/android/support/test/espresso/web/assertion/TagSoupDocumentParser.html
@@ -788,7 +788,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/assertion/WebAssertion.html b/docs/html/reference/android/support/test/espresso/web/assertion/WebAssertion.html
index 604b169..894e603 100644
--- a/docs/html/reference/android/support/test/espresso/web/assertion/WebAssertion.html
+++ b/docs/html/reference/android/support/test/espresso/web/assertion/WebAssertion.html
@@ -844,7 +844,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.html b/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.html
index 1d546b2..af52ddc 100644
--- a/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.html
+++ b/docs/html/reference/android/support/test/espresso/web/assertion/WebViewAssertions.html
@@ -846,7 +846,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/bridge/Conduit.html b/docs/html/reference/android/support/test/espresso/web/bridge/Conduit.html
index ee60ff7..05ef71c 100644
--- a/docs/html/reference/android/support/test/espresso/web/bridge/Conduit.html
+++ b/docs/html/reference/android/support/test/espresso/web/bridge/Conduit.html
@@ -821,7 +821,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/bridge/JavaScriptBridge.html b/docs/html/reference/android/support/test/espresso/web/bridge/JavaScriptBridge.html
index aa5cf99..76fbfd6 100644
--- a/docs/html/reference/android/support/test/espresso/web/bridge/JavaScriptBridge.html
+++ b/docs/html/reference/android/support/test/espresso/web/bridge/JavaScriptBridge.html
@@ -818,7 +818,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/matcher/AmbiguousElementMatcherException.html b/docs/html/reference/android/support/test/espresso/web/matcher/AmbiguousElementMatcherException.html
index 767ed37..ed0b7b3 100644
--- a/docs/html/reference/android/support/test/espresso/web/matcher/AmbiguousElementMatcherException.html
+++ b/docs/html/reference/android/support/test/espresso/web/matcher/AmbiguousElementMatcherException.html
@@ -848,7 +848,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1082,7 +1082,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/matcher/DomMatchers.html b/docs/html/reference/android/support/test/espresso/web/matcher/DomMatchers.html
index 1c4cdad..ae850d9 100644
--- a/docs/html/reference/android/support/test/espresso/web/matcher/DomMatchers.html
+++ b/docs/html/reference/android/support/test/espresso/web/matcher/DomMatchers.html
@@ -937,7 +937,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/model/Atom.html b/docs/html/reference/android/support/test/espresso/web/model/Atom.html
index 90f5ff9..1eb87e0 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/Atom.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/Atom.html
@@ -658,7 +658,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/web/model/Atoms.html b/docs/html/reference/android/support/test/espresso/web/model/Atoms.html
index ec9ace1..fe4c2e3 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/Atoms.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/Atoms.html
@@ -924,7 +924,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/model/ElementReference.html b/docs/html/reference/android/support/test/espresso/web/model/ElementReference.html
index 5a05f90..bb72bdb 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/ElementReference.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/ElementReference.html
@@ -843,7 +843,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1045,7 +1045,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.JSONAble" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.web.model.JSONAble-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/web/model/Evaluation.html b/docs/html/reference/android/support/test/espresso/web/model/Evaluation.html
index dc8e3e5..959cd53 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/Evaluation.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/Evaluation.html
@@ -901,7 +901,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1103,7 +1103,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.JSONAble" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.web.model.JSONAble-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/web/model/JSONAble.html b/docs/html/reference/android/support/test/espresso/web/model/JSONAble.html
index 4508272..adb1d8a 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/JSONAble.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/JSONAble.html
@@ -661,7 +661,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/espresso/web/model/ModelCodec.html b/docs/html/reference/android/support/test/espresso/web/model/ModelCodec.html
index 60bab76..1dde64e 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/ModelCodec.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/ModelCodec.html
@@ -853,7 +853,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement.html b/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement.html
index 447f98a..24a874a 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement.html
@@ -859,7 +859,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1061,7 +1061,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1265,7 +1265,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.html b/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.html
index 1accc9a..8d67f05 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/SimpleAtom.html
@@ -1012,7 +1012,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1214,7 +1214,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.Atom" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.web.model.Atom-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.html b/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.html
index 96cdbcf..6e9006d 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/TransformingAtom.html
@@ -897,7 +897,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1099,7 +1099,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.Atom" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.web.model.Atom-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/web/model/WindowReference.html b/docs/html/reference/android/support/test/espresso/web/model/WindowReference.html
index 8dee39b..cf7d54e 100644
--- a/docs/html/reference/android/support/test/espresso/web/model/WindowReference.html
+++ b/docs/html/reference/android/support/test/espresso/web/model/WindowReference.html
@@ -843,7 +843,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1045,7 +1045,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.espresso.web.model.JSONAble" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.espresso.web.model.JSONAble-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/espresso/web/sugar/Web.WebInteraction.html b/docs/html/reference/android/support/test/espresso/web/sugar/Web.WebInteraction.html
index c0b5890..db6f8a2 100644
--- a/docs/html/reference/android/support/test/espresso/web/sugar/Web.WebInteraction.html
+++ b/docs/html/reference/android/support/test/espresso/web/sugar/Web.WebInteraction.html
@@ -1023,7 +1023,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/sugar/Web.html b/docs/html/reference/android/support/test/espresso/web/sugar/Web.html
index a99b512..d495700 100644
--- a/docs/html/reference/android/support/test/espresso/web/sugar/Web.html
+++ b/docs/html/reference/android/support/test/espresso/web/sugar/Web.html
@@ -841,7 +841,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/webdriver/DriverAtoms.html b/docs/html/reference/android/support/test/espresso/web/webdriver/DriverAtoms.html
index 9b663f2..b2dedb5 100644
--- a/docs/html/reference/android/support/test/espresso/web/webdriver/DriverAtoms.html
+++ b/docs/html/reference/android/support/test/espresso/web/webdriver/DriverAtoms.html
@@ -1000,7 +1000,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/espresso/web/webdriver/Locator.html b/docs/html/reference/android/support/test/espresso/web/webdriver/Locator.html
index 47c317f..e9e033a 100644
--- a/docs/html/reference/android/support/test/espresso/web/webdriver/Locator.html
+++ b/docs/html/reference/android/support/test/espresso/web/webdriver/Locator.html
@@ -933,7 +933,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1135,7 +1135,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1339,7 +1339,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/filters/FlakyTest.html b/docs/html/reference/android/support/test/filters/FlakyTest.html
index 1029c6b..498f8dd 100644
--- a/docs/html/reference/android/support/test/filters/FlakyTest.html
+++ b/docs/html/reference/android/support/test/filters/FlakyTest.html
@@ -726,7 +726,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/filters/RequiresDevice.html b/docs/html/reference/android/support/test/filters/RequiresDevice.html
index 6fb8d07..b88bebe 100644
--- a/docs/html/reference/android/support/test/filters/RequiresDevice.html
+++ b/docs/html/reference/android/support/test/filters/RequiresDevice.html
@@ -725,7 +725,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/filters/SdkSuppress.html b/docs/html/reference/android/support/test/filters/SdkSuppress.html
index 2d9a12e..e8661dc 100644
--- a/docs/html/reference/android/support/test/filters/SdkSuppress.html
+++ b/docs/html/reference/android/support/test/filters/SdkSuppress.html
@@ -725,7 +725,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/jank/GfxMonitor.html b/docs/html/reference/android/support/test/jank/GfxMonitor.html
index 813973d..f0b531f 100644
--- a/docs/html/reference/android/support/test/jank/GfxMonitor.html
+++ b/docs/html/reference/android/support/test/jank/GfxMonitor.html
@@ -954,7 +954,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/jank/JankTest.html b/docs/html/reference/android/support/test/jank/JankTest.html
index 8932584..c824c13e 100644
--- a/docs/html/reference/android/support/test/jank/JankTest.html
+++ b/docs/html/reference/android/support/test/jank/JankTest.html
@@ -726,7 +726,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/jank/JankTestBase.html b/docs/html/reference/android/support/test/jank/JankTestBase.html
index 9ce3750..9214f1d 100644
--- a/docs/html/reference/android/support/test/jank/JankTestBase.html
+++ b/docs/html/reference/android/support/test/jank/JankTestBase.html
@@ -1035,7 +1035,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.test.InstrumentationTestCase" class="jd-expando-trigger closed"
><img id="inherited-methods-android.test.InstrumentationTestCase-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1237,7 +1237,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.TestCase" class="jd-expando-trigger closed"
><img id="inherited-methods-junit.framework.TestCase-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1439,7 +1439,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Assert" class="jd-expando-trigger closed"
><img id="inherited-methods-junit.framework.Assert-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2073,7 +2073,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2275,7 +2275,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Test" class="jd-expando-trigger closed"
><img id="inherited-methods-junit.framework.Test-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/rule/ActivityTestRule.html b/docs/html/reference/android/support/test/rule/ActivityTestRule.html
index bbc4ded..f34e3e9 100644
--- a/docs/html/reference/android/support/test/rule/ActivityTestRule.html
+++ b/docs/html/reference/android/support/test/rule/ActivityTestRule.html
@@ -697,7 +697,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -1067,7 +1067,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.rule.UiThreadTestRule" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.rule.UiThreadTestRule-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1148,7 +1148,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1350,7 +1350,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.rules.TestRule-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/rule/DisableOnAndroidDebug.html b/docs/html/reference/android/support/test/rule/DisableOnAndroidDebug.html
index 3fa5c9b..a981fe9 100644
--- a/docs/html/reference/android/support/test/rule/DisableOnAndroidDebug.html
+++ b/docs/html/reference/android/support/test/rule/DisableOnAndroidDebug.html
@@ -870,7 +870,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1072,7 +1072,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.rules.TestRule-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/rule/ServiceTestRule.html b/docs/html/reference/android/support/test/rule/ServiceTestRule.html
index 270a1bf..bbe0c8d 100644
--- a/docs/html/reference/android/support/test/rule/ServiceTestRule.html
+++ b/docs/html/reference/android/support/test/rule/ServiceTestRule.html
@@ -1000,7 +1000,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1202,7 +1202,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.rules.TestRule-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/rule/UiThreadTestRule.html b/docs/html/reference/android/support/test/rule/UiThreadTestRule.html
index 4c0f6b5..e58ef8f 100644
--- a/docs/html/reference/android/support/test/rule/UiThreadTestRule.html
+++ b/docs/html/reference/android/support/test/rule/UiThreadTestRule.html
@@ -681,7 +681,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -724,7 +724,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
@@ -944,7 +944,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1146,7 +1146,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.rules.TestRule" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.rules.TestRule-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/runner/AndroidJUnit4.html b/docs/html/reference/android/support/test/runner/AndroidJUnit4.html
index ddc847f..79c3c9a 100644
--- a/docs/html/reference/android/support/test/runner/AndroidJUnit4.html
+++ b/docs/html/reference/android/support/test/runner/AndroidJUnit4.html
@@ -898,7 +898,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runners.BlockJUnit4ClassRunner" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.runners.BlockJUnit4ClassRunner-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1340,7 +1340,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runners.ParentRunner" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.runners.ParentRunner-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1702,7 +1702,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runner.Runner" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.runner.Runner-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1776,7 +1776,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1978,7 +1978,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runner.Describable" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.runner.Describable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -2020,7 +2020,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runner.manipulation.Filterable" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.runner.manipulation.Filterable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -2062,7 +2062,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-org.junit.runner.manipulation.Sortable" class="jd-expando-trigger closed"
><img id="inherited-methods-org.junit.runner.manipulation.Sortable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/runner/AndroidJUnitRunner.html b/docs/html/reference/android/support/test/runner/AndroidJUnitRunner.html
index 16656fb..f7f4fd3 100644
--- a/docs/html/reference/android/support/test/runner/AndroidJUnitRunner.html
+++ b/docs/html/reference/android/support/test/runner/AndroidJUnitRunner.html
@@ -914,7 +914,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Instrumentation" class="jd-expando-trigger closed"
><img id="inherited-constants-android.app.Instrumentation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Instrumentation
<div id="inherited-constants-android.app.Instrumentation">
@@ -1108,7 +1108,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.runner.MonitoringInstrumentation" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.runner.MonitoringInstrumentation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1548,7 +1548,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Instrumentation" class="jd-expando-trigger closed"
><img id="inherited-methods-android.app.Instrumentation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2566,7 +2566,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.ActivityFinisher.html b/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.ActivityFinisher.html
index 45c7243..5eff533 100644
--- a/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.ActivityFinisher.html
+++ b/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.ActivityFinisher.html
@@ -802,7 +802,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1004,7 +1004,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Runnable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Runnable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.html b/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.html
index 22d0b64..ed587c3 100644
--- a/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.html
+++ b/docs/html/reference/android/support/test/runner/MonitoringInstrumentation.html
@@ -698,7 +698,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -840,7 +840,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Instrumentation" class="jd-expando-trigger closed"
><img id="inherited-constants-android.app.Instrumentation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Instrumentation
<div id="inherited-constants-android.app.Instrumentation">
@@ -1370,7 +1370,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Instrumentation" class="jd-expando-trigger closed"
><img id="inherited-methods-android.app.Instrumentation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2388,7 +2388,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/runner/intent/IntentMonitorRegistry.html b/docs/html/reference/android/support/test/runner/intent/IntentMonitorRegistry.html
index 31a84fb..b57307a 100644
--- a/docs/html/reference/android/support/test/runner/intent/IntentMonitorRegistry.html
+++ b/docs/html/reference/android/support/test/runner/intent/IntentMonitorRegistry.html
@@ -796,7 +796,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/runner/intent/IntentStubber.html b/docs/html/reference/android/support/test/runner/intent/IntentStubber.html
index 30e1a72..88afd27 100644
--- a/docs/html/reference/android/support/test/runner/intent/IntentStubber.html
+++ b/docs/html/reference/android/support/test/runner/intent/IntentStubber.html
@@ -647,7 +647,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/test/runner/intent/IntentStubberRegistry.html b/docs/html/reference/android/support/test/runner/intent/IntentStubberRegistry.html
index fbd1ba1..f82ddec 100644
--- a/docs/html/reference/android/support/test/runner/intent/IntentStubberRegistry.html
+++ b/docs/html/reference/android/support/test/runner/intent/IntentStubberRegistry.html
@@ -835,7 +835,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry.html b/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry.html
index 180606f..def3bc2 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry.html
@@ -804,7 +804,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry.html b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry.html
index ddc35ff..0107635 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry.html
@@ -804,7 +804,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationStage.html b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationStage.html
index 793215e..5250cc1 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/ApplicationStage.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/ApplicationStage.html
@@ -858,7 +858,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1060,7 +1060,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1264,7 +1264,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/runner/lifecycle/Stage.html b/docs/html/reference/android/support/test/runner/lifecycle/Stage.html
index b71d408..8f5fd55 100644
--- a/docs/html/reference/android/support/test/runner/lifecycle/Stage.html
+++ b/docs/html/reference/android/support/test/runner/lifecycle/Stage.html
@@ -930,7 +930,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1132,7 +1132,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1336,7 +1336,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../../assets/images/triangle-closed.png"
+ src="../../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/uiautomator/By.html b/docs/html/reference/android/support/test/uiautomator/By.html
index 55e4fb4..9d73c605 100644
--- a/docs/html/reference/android/support/test/uiautomator/By.html
+++ b/docs/html/reference/android/support/test/uiautomator/By.html
@@ -1538,7 +1538,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/BySelector.html b/docs/html/reference/android/support/test/uiautomator/BySelector.html
index a4388fa..2f07225 100644
--- a/docs/html/reference/android/support/test/uiautomator/BySelector.html
+++ b/docs/html/reference/android/support/test/uiautomator/BySelector.html
@@ -1602,7 +1602,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/Configurator.html b/docs/html/reference/android/support/test/uiautomator/Configurator.html
index 18b1604..47ffa48 100644
--- a/docs/html/reference/android/support/test/uiautomator/Configurator.html
+++ b/docs/html/reference/android/support/test/uiautomator/Configurator.html
@@ -1040,7 +1040,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/Direction.html b/docs/html/reference/android/support/test/uiautomator/Direction.html
index 240fa0b..6e51748 100644
--- a/docs/html/reference/android/support/test/uiautomator/Direction.html
+++ b/docs/html/reference/android/support/test/uiautomator/Direction.html
@@ -917,7 +917,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Enum" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Enum-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1119,7 +1119,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1323,7 +1323,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Comparable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Comparable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/uiautomator/EventCondition.html b/docs/html/reference/android/support/test/uiautomator/EventCondition.html
index 75dfc7b..257e9a9 100644
--- a/docs/html/reference/android/support/test/uiautomator/EventCondition.html
+++ b/docs/html/reference/android/support/test/uiautomator/EventCondition.html
@@ -790,7 +790,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/SearchCondition.html b/docs/html/reference/android/support/test/uiautomator/SearchCondition.html
index caa63e9..3d31e02 100644
--- a/docs/html/reference/android/support/test/uiautomator/SearchCondition.html
+++ b/docs/html/reference/android/support/test/uiautomator/SearchCondition.html
@@ -788,7 +788,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/StaleObjectException.html b/docs/html/reference/android/support/test/uiautomator/StaleObjectException.html
index 21d5ee8..d552032 100644
--- a/docs/html/reference/android/support/test/uiautomator/StaleObjectException.html
+++ b/docs/html/reference/android/support/test/uiautomator/StaleObjectException.html
@@ -865,7 +865,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1099,7 +1099,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/UiAutomatorInstrumentationTestRunner.html b/docs/html/reference/android/support/test/uiautomator/UiAutomatorInstrumentationTestRunner.html
index 3af1b36..43dd410 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiAutomatorInstrumentationTestRunner.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiAutomatorInstrumentationTestRunner.html
@@ -814,7 +814,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.test.InstrumentationTestRunner" class="jd-expando-trigger closed"
><img id="inherited-constants-android.test.InstrumentationTestRunner-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.test.InstrumentationTestRunner
<div id="inherited-constants-android.test.InstrumentationTestRunner">
@@ -958,7 +958,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Instrumentation" class="jd-expando-trigger closed"
><img id="inherited-constants-android.app.Instrumentation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Instrumentation
<div id="inherited-constants-android.app.Instrumentation">
@@ -1131,7 +1131,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.test.InstrumentationTestRunner" class="jd-expando-trigger closed"
><img id="inherited-methods-android.test.InstrumentationTestRunner-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1269,7 +1269,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Instrumentation" class="jd-expando-trigger closed"
><img id="inherited-methods-android.app.Instrumentation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2287,7 +2287,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2489,7 +2489,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.test.TestSuiteProvider" class="jd-expando-trigger closed"
><img id="inherited-methods-android.test.TestSuiteProvider-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/uiautomator/UiAutomatorTestCase.html b/docs/html/reference/android/support/test/uiautomator/UiAutomatorTestCase.html
index eadaadb..166e174 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiAutomatorTestCase.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiAutomatorTestCase.html
@@ -981,7 +981,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.test.InstrumentationTestCase" class="jd-expando-trigger closed"
><img id="inherited-methods-android.test.InstrumentationTestCase-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1183,7 +1183,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.TestCase" class="jd-expando-trigger closed"
><img id="inherited-methods-junit.framework.TestCase-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1385,7 +1385,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Assert" class="jd-expando-trigger closed"
><img id="inherited-methods-junit.framework.Assert-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2019,7 +2019,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2221,7 +2221,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Test" class="jd-expando-trigger closed"
><img id="inherited-methods-junit.framework.Test-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/test/uiautomator/UiCollection.html b/docs/html/reference/android/support/test/uiautomator/UiCollection.html
index add13cb..5f489d0 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiCollection.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiCollection.html
@@ -720,7 +720,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -820,7 +820,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.test.uiautomator.UiObject" class="jd-expando-trigger closed"
><img id="inherited-constants-android.support.test.uiautomator.UiObject-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
<a href="../../../../../reference/android/support/test/uiautomator/UiObject.html">android.support.test.uiautomator.UiObject</a>
<div id="inherited-constants-android.support.test.uiautomator.UiObject">
@@ -1084,7 +1084,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.uiautomator.UiObject" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.uiautomator.UiObject-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2107,7 +2107,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/UiDevice.html b/docs/html/reference/android/support/test/uiautomator/UiDevice.html
index 9d289dd..3685972 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiDevice.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiDevice.html
@@ -2225,7 +2225,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/UiObject.html b/docs/html/reference/android/support/test/uiautomator/UiObject.html
index c6486dc..f1149dd 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiObject.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiObject.html
@@ -700,7 +700,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -744,7 +744,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
@@ -1997,7 +1997,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/UiObject2.html b/docs/html/reference/android/support/test/uiautomator/UiObject2.html
index 6fc08fc..b2195bd 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiObject2.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiObject2.html
@@ -1835,7 +1835,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/UiObject2Condition.html b/docs/html/reference/android/support/test/uiautomator/UiObject2Condition.html
index a496c24..99efb28 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiObject2Condition.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiObject2Condition.html
@@ -790,7 +790,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/UiObjectNotFoundException.html b/docs/html/reference/android/support/test/uiautomator/UiObjectNotFoundException.html
index e6949b3..4548cb8 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiObjectNotFoundException.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiObjectNotFoundException.html
@@ -870,7 +870,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1104,7 +1104,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/UiScrollable.html b/docs/html/reference/android/support/test/uiautomator/UiScrollable.html
index d55a208..a4a5973 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiScrollable.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiScrollable.html
@@ -807,7 +807,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.test.uiautomator.UiObject" class="jd-expando-trigger closed"
><img id="inherited-constants-android.support.test.uiautomator.UiObject-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
<a href="../../../../../reference/android/support/test/uiautomator/UiObject.html">android.support.test.uiautomator.UiObject</a>
<div id="inherited-constants-android.support.test.uiautomator.UiObject">
@@ -1640,7 +1640,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.uiautomator.UiCollection" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.uiautomator.UiCollection-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1762,7 +1762,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.test.uiautomator.UiObject" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.test.uiautomator.UiObject-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2785,7 +2785,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/UiSelector.html b/docs/html/reference/android/support/test/uiautomator/UiSelector.html
index ac8b127..9670a8b 100644
--- a/docs/html/reference/android/support/test/uiautomator/UiSelector.html
+++ b/docs/html/reference/android/support/test/uiautomator/UiSelector.html
@@ -1510,7 +1510,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/test/uiautomator/Until.html b/docs/html/reference/android/support/test/uiautomator/Until.html
index adf9d42..8af2f96 100644
--- a/docs/html/reference/android/support/test/uiautomator/Until.html
+++ b/docs/html/reference/android/support/test/uiautomator/Until.html
@@ -1452,7 +1452,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.anim.html b/docs/html/reference/android/support/wearable/R.anim.html
index 8976afe..f05d0cd 100644
--- a/docs/html/reference/android/support/wearable/R.anim.html
+++ b/docs/html/reference/android/support/wearable/R.anim.html
@@ -825,7 +825,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.animator.html b/docs/html/reference/android/support/wearable/R.animator.html
index 7ab63f2..07d43f5 100644
--- a/docs/html/reference/android/support/wearable/R.animator.html
+++ b/docs/html/reference/android/support/wearable/R.animator.html
@@ -761,7 +761,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.array.html b/docs/html/reference/android/support/wearable/R.array.html
index 95eef7e..8f3ccf0 100644
--- a/docs/html/reference/android/support/wearable/R.array.html
+++ b/docs/html/reference/android/support/wearable/R.array.html
@@ -761,7 +761,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.attr.html b/docs/html/reference/android/support/wearable/R.attr.html
index 099c981..3e0379c 100644
--- a/docs/html/reference/android/support/wearable/R.attr.html
+++ b/docs/html/reference/android/support/wearable/R.attr.html
@@ -1443,7 +1443,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.color.html b/docs/html/reference/android/support/wearable/R.color.html
index 07b5e0c..9b2eeea 100644
--- a/docs/html/reference/android/support/wearable/R.color.html
+++ b/docs/html/reference/android/support/wearable/R.color.html
@@ -1209,7 +1209,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.dimen.html b/docs/html/reference/android/support/wearable/R.dimen.html
index 215b2b3..8709625 100644
--- a/docs/html/reference/android/support/wearable/R.dimen.html
+++ b/docs/html/reference/android/support/wearable/R.dimen.html
@@ -1001,7 +1001,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.drawable.html b/docs/html/reference/android/support/wearable/R.drawable.html
index c83cd2e..3a40cf1 100644
--- a/docs/html/reference/android/support/wearable/R.drawable.html
+++ b/docs/html/reference/android/support/wearable/R.drawable.html
@@ -905,7 +905,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.html b/docs/html/reference/android/support/wearable/R.html
index 714f287..93bb8b4 100644
--- a/docs/html/reference/android/support/wearable/R.html
+++ b/docs/html/reference/android/support/wearable/R.html
@@ -965,7 +965,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.id.html b/docs/html/reference/android/support/wearable/R.id.html
index c6bad3b..530f2cb 100644
--- a/docs/html/reference/android/support/wearable/R.id.html
+++ b/docs/html/reference/android/support/wearable/R.id.html
@@ -1145,7 +1145,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.interpolator.html b/docs/html/reference/android/support/wearable/R.interpolator.html
index 01391a8..42761e3 100644
--- a/docs/html/reference/android/support/wearable/R.interpolator.html
+++ b/docs/html/reference/android/support/wearable/R.interpolator.html
@@ -841,7 +841,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.layout.html b/docs/html/reference/android/support/wearable/R.layout.html
index 4987ba7..92aaea7 100644
--- a/docs/html/reference/android/support/wearable/R.layout.html
+++ b/docs/html/reference/android/support/wearable/R.layout.html
@@ -809,7 +809,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.string.html b/docs/html/reference/android/support/wearable/R.string.html
index c8707ef..4c966e3 100644
--- a/docs/html/reference/android/support/wearable/R.string.html
+++ b/docs/html/reference/android/support/wearable/R.string.html
@@ -761,7 +761,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.style.html b/docs/html/reference/android/support/wearable/R.style.html
index 38ce308..af19ce2 100644
--- a/docs/html/reference/android/support/wearable/R.style.html
+++ b/docs/html/reference/android/support/wearable/R.style.html
@@ -1145,7 +1145,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/R.styleable.html b/docs/html/reference/android/support/wearable/R.styleable.html
index e43e070..e895060 100644
--- a/docs/html/reference/android/support/wearable/R.styleable.html
+++ b/docs/html/reference/android/support/wearable/R.styleable.html
@@ -2264,7 +2264,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../assets/images/triangle-closed.png"
+ src="../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/activity/ConfirmationActivity.html b/docs/html/reference/android/support/wearable/activity/ConfirmationActivity.html
index 92bfeca..519577c 100644
--- a/docs/html/reference/android/support/wearable/activity/ConfirmationActivity.html
+++ b/docs/html/reference/android/support/wearable/activity/ConfirmationActivity.html
@@ -940,7 +940,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Activity" class="jd-expando-trigger closed"
><img id="inherited-constants-android.app.Activity-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Activity
<div id="inherited-constants-android.app.Activity">
@@ -1064,7 +1064,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.content.Context
<div id="inherited-constants-android.content.Context">
@@ -1914,7 +1914,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From interface
android.content.ComponentCallbacks2
<div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -2039,7 +2039,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.app.Activity" class="jd-expando-trigger closed"
><img id="inherited-fields-android.app.Activity-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Activity
<div id="inherited-fields-android.app.Activity">
@@ -2169,7 +2169,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Activity" class="jd-expando-trigger closed"
><img id="inherited-methods-android.app.Activity-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -5555,7 +5555,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ContextThemeWrapper" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ContextThemeWrapper-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -5693,7 +5693,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ContextWrapper-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -7207,7 +7207,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -8849,7 +8849,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -9051,7 +9051,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.LayoutInflater.Factory2" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.LayoutInflater.Factory2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9093,7 +9093,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.Window.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.Window.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9455,7 +9455,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9545,7 +9545,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View.OnCreateContextMenuListener" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View.OnCreateContextMenuListener-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9587,7 +9587,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9629,7 +9629,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.LayoutInflater.Factory" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.LayoutInflater.Factory-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9671,7 +9671,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/activity/WearableActivity.html b/docs/html/reference/android/support/wearable/activity/WearableActivity.html
index 6f70f74..05fc156 100644
--- a/docs/html/reference/android/support/wearable/activity/WearableActivity.html
+++ b/docs/html/reference/android/support/wearable/activity/WearableActivity.html
@@ -899,7 +899,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Activity" class="jd-expando-trigger closed"
><img id="inherited-constants-android.app.Activity-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Activity
<div id="inherited-constants-android.app.Activity">
@@ -1023,7 +1023,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.content.Context
<div id="inherited-constants-android.content.Context">
@@ -1873,7 +1873,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From interface
android.content.ComponentCallbacks2
<div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -1998,7 +1998,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.app.Activity" class="jd-expando-trigger closed"
><img id="inherited-fields-android.app.Activity-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Activity
<div id="inherited-fields-android.app.Activity">
@@ -2325,7 +2325,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Activity" class="jd-expando-trigger closed"
><img id="inherited-methods-android.app.Activity-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -5711,7 +5711,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ContextThemeWrapper" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ContextThemeWrapper-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -5849,7 +5849,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ContextWrapper-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -7363,7 +7363,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -9005,7 +9005,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -9207,7 +9207,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.LayoutInflater.Factory2" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.LayoutInflater.Factory2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9249,7 +9249,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.Window.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.Window.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9611,7 +9611,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9701,7 +9701,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View.OnCreateContextMenuListener" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View.OnCreateContextMenuListener-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9743,7 +9743,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9785,7 +9785,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.LayoutInflater.Factory" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.LayoutInflater.Factory-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -9827,7 +9827,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/companion/WatchFaceCompanion.html b/docs/html/reference/android/support/wearable/companion/WatchFaceCompanion.html
index 8174777..202849b 100644
--- a/docs/html/reference/android/support/wearable/companion/WatchFaceCompanion.html
+++ b/docs/html/reference/android/support/wearable/companion/WatchFaceCompanion.html
@@ -770,7 +770,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/input/RemoteInputConstants.html b/docs/html/reference/android/support/wearable/input/RemoteInputConstants.html
index 35fe2d5..0c22ff1 100644
--- a/docs/html/reference/android/support/wearable/input/RemoteInputConstants.html
+++ b/docs/html/reference/android/support/wearable/input/RemoteInputConstants.html
@@ -762,7 +762,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/input/RemoteInputIntent.html b/docs/html/reference/android/support/wearable/input/RemoteInputIntent.html
index 34ae2d5..c3b8912 100644
--- a/docs/html/reference/android/support/wearable/input/RemoteInputIntent.html
+++ b/docs/html/reference/android/support/wearable/input/RemoteInputIntent.html
@@ -851,7 +851,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/media/MediaControlConstants.html b/docs/html/reference/android/support/wearable/media/MediaControlConstants.html
index 30ddc45..950eaed 100644
--- a/docs/html/reference/android/support/wearable/media/MediaControlConstants.html
+++ b/docs/html/reference/android/support/wearable/media/MediaControlConstants.html
@@ -818,7 +818,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Attendees.html b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Attendees.html
index 794973f..62aaf08 100644
--- a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Attendees.html
+++ b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Attendees.html
@@ -728,7 +728,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Instances.html b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Instances.html
index 77c3c67..18bc257 100644
--- a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Instances.html
+++ b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Instances.html
@@ -728,7 +728,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Reminders.html b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Reminders.html
index 9dfd7f7..7753695 100644
--- a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Reminders.html
+++ b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.Reminders.html
@@ -728,7 +728,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.html b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.html
index 588ae71..7b3b0e4 100644
--- a/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.html
+++ b/docs/html/reference/android/support/wearable/provider/WearableCalendarContract.html
@@ -843,7 +843,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/view/ActionLabel.html b/docs/html/reference/android/support/wearable/view/ActionLabel.html
index f8cb733..7c1303b 100644
--- a/docs/html/reference/android/support/wearable/view/ActionLabel.html
+++ b/docs/html/reference/android/support/wearable/view/ActionLabel.html
@@ -805,7 +805,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -1798,7 +1798,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3134,7 +3134,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -10872,7 +10872,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -11074,7 +11074,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11148,7 +11148,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11238,7 +11238,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/ActionPage.html b/docs/html/reference/android/support/wearable/view/ActionPage.html
index 69c4dfb..7f551df 100644
--- a/docs/html/reference/android/support/wearable/view/ActionPage.html
+++ b/docs/html/reference/android/support/wearable/view/ActionPage.html
@@ -829,7 +829,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup
<div id="inherited-constants-android.view.ViewGroup">
@@ -973,7 +973,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -2013,7 +2013,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3133,7 +3133,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -5751,7 +5751,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13489,7 +13489,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13691,7 +13691,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewParent-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14373,7 +14373,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewManager-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14447,7 +14447,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14521,7 +14521,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14611,7 +14611,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html b/docs/html/reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html
index d716836..6234430 100644
--- a/docs/html/reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html
+++ b/docs/html/reference/android/support/wearable/view/BoxInsetLayout.LayoutParams.html
@@ -894,7 +894,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup.LayoutParams
<div id="inherited-constants-android.view.ViewGroup.LayoutParams">
@@ -994,7 +994,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.widget.FrameLayout.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-fields-android.widget.FrameLayout.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.widget.FrameLayout.LayoutParams
<div id="inherited-fields-android.widget.FrameLayout.LayoutParams">
@@ -1034,7 +1034,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.ViewGroup.MarginLayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup.MarginLayoutParams
<div id="inherited-fields-android.view.ViewGroup.MarginLayoutParams">
@@ -1122,7 +1122,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.ViewGroup.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup.LayoutParams
<div id="inherited-fields-android.view.ViewGroup.LayoutParams">
@@ -1353,7 +1353,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup.MarginLayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1523,7 +1523,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1581,7 +1581,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/view/BoxInsetLayout.html b/docs/html/reference/android/support/wearable/view/BoxInsetLayout.html
index d315135..5c72b3c 100644
--- a/docs/html/reference/android/support/wearable/view/BoxInsetLayout.html
+++ b/docs/html/reference/android/support/wearable/view/BoxInsetLayout.html
@@ -881,7 +881,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup
<div id="inherited-constants-android.view.ViewGroup">
@@ -1025,7 +1025,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -2026,7 +2026,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3026,7 +3026,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.FrameLayout" class="jd-expando-trigger closed"
><img id="inherited-methods-android.widget.FrameLayout-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -3500,7 +3500,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -6118,7 +6118,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13856,7 +13856,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -14058,7 +14058,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewParent-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14740,7 +14740,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewManager-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14814,7 +14814,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14888,7 +14888,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14978,7 +14978,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/CardFragment.html b/docs/html/reference/android/support/wearable/view/CardFragment.html
index b73c6ca..3862bda 100644
--- a/docs/html/reference/android/support/wearable/view/CardFragment.html
+++ b/docs/html/reference/android/support/wearable/view/CardFragment.html
@@ -857,7 +857,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From interface
android.content.ComponentCallbacks2
<div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -1627,7 +1627,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Fragment" class="jd-expando-trigger closed"
><img id="inherited-methods-android.app.Fragment-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -3093,7 +3093,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -3295,7 +3295,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -3337,7 +3337,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View.OnCreateContextMenuListener" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View.OnCreateContextMenuListener-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -3379,7 +3379,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/CardFrame.html b/docs/html/reference/android/support/wearable/view/CardFrame.html
index 32224d5..522871b 100644
--- a/docs/html/reference/android/support/wearable/view/CardFrame.html
+++ b/docs/html/reference/android/support/wearable/view/CardFrame.html
@@ -873,7 +873,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup
<div id="inherited-constants-android.view.ViewGroup">
@@ -1017,7 +1017,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -2016,7 +2016,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3300,7 +3300,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -5918,7 +5918,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13656,7 +13656,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13858,7 +13858,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewParent-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14540,7 +14540,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewManager-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14614,7 +14614,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14688,7 +14688,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14778,7 +14778,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/CardScrollView.html b/docs/html/reference/android/support/wearable/view/CardScrollView.html
index a361847..552f533 100644
--- a/docs/html/reference/android/support/wearable/view/CardScrollView.html
+++ b/docs/html/reference/android/support/wearable/view/CardScrollView.html
@@ -847,7 +847,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup
<div id="inherited-constants-android.view.ViewGroup">
@@ -991,7 +991,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -1992,7 +1992,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3129,7 +3129,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.FrameLayout" class="jd-expando-trigger closed"
><img id="inherited-methods-android.widget.FrameLayout-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -3603,7 +3603,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -6221,7 +6221,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13959,7 +13959,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -14161,7 +14161,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewParent-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14843,7 +14843,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewManager-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14917,7 +14917,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14991,7 +14991,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -15081,7 +15081,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/CircledImageView.html b/docs/html/reference/android/support/wearable/view/CircledImageView.html
index a2ba3f7..d65979a 100644
--- a/docs/html/reference/android/support/wearable/view/CircledImageView.html
+++ b/docs/html/reference/android/support/wearable/view/CircledImageView.html
@@ -722,7 +722,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -822,7 +822,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -1815,7 +1815,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3129,7 +3129,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -10867,7 +10867,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -11069,7 +11069,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11143,7 +11143,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11233,7 +11233,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/CircularButton.html b/docs/html/reference/android/support/wearable/view/CircularButton.html
index ff626ce..8ea1d9a 100644
--- a/docs/html/reference/android/support/wearable/view/CircularButton.html
+++ b/docs/html/reference/android/support/wearable/view/CircularButton.html
@@ -818,7 +818,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -1811,7 +1811,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -2961,7 +2961,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -10699,7 +10699,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -10901,7 +10901,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -10975,7 +10975,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11065,7 +11065,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/CrossfadeDrawable.html b/docs/html/reference/android/support/wearable/view/CrossfadeDrawable.html
index 176e532..f468b55 100644
--- a/docs/html/reference/android/support/wearable/view/CrossfadeDrawable.html
+++ b/docs/html/reference/android/support/wearable/view/CrossfadeDrawable.html
@@ -1256,7 +1256,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2306,7 +2306,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2508,7 +2508,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.html b/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.html
index 10e10b9..5e43cad 100644
--- a/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.html
+++ b/docs/html/reference/android/support/wearable/view/DelayedConfirmationView.html
@@ -841,7 +841,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -1836,7 +1836,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -2812,7 +2812,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.view.CircledImageView" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.wearable.view.CircledImageView-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -3323,7 +3323,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -11061,7 +11061,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -11263,7 +11263,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11337,7 +11337,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11427,7 +11427,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/DismissOverlayView.html b/docs/html/reference/android/support/wearable/view/DismissOverlayView.html
index f146daf..c2d35f3 100644
--- a/docs/html/reference/android/support/wearable/view/DismissOverlayView.html
+++ b/docs/html/reference/android/support/wearable/view/DismissOverlayView.html
@@ -853,7 +853,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup
<div id="inherited-constants-android.view.ViewGroup">
@@ -997,7 +997,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -1998,7 +1998,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -2930,7 +2930,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.FrameLayout" class="jd-expando-trigger closed"
><img id="inherited-methods-android.widget.FrameLayout-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -3404,7 +3404,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -6022,7 +6022,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13760,7 +13760,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13962,7 +13962,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewParent-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14644,7 +14644,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewManager-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14718,7 +14718,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14792,7 +14792,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14882,7 +14882,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/DotsPageIndicator.html b/docs/html/reference/android/support/wearable/view/DotsPageIndicator.html
index 634cf95..879216c 100644
--- a/docs/html/reference/android/support/wearable/view/DotsPageIndicator.html
+++ b/docs/html/reference/android/support/wearable/view/DotsPageIndicator.html
@@ -808,7 +808,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -1805,7 +1805,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3456,7 +3456,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -11194,7 +11194,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -11396,7 +11396,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11470,7 +11470,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11560,7 +11560,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11618,7 +11618,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.view.GridViewPager.OnPageChangeListener" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.wearable.view.GridViewPager.OnPageChangeListener-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11714,7 +11714,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.view.GridViewPager.OnAdapterChangeListener" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.wearable.view.GridViewPager.OnAdapterChangeListener-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/FragmentGridPagerAdapter.html b/docs/html/reference/android/support/wearable/view/FragmentGridPagerAdapter.html
index ed7fecd..8da0b9aa 100644
--- a/docs/html/reference/android/support/wearable/view/FragmentGridPagerAdapter.html
+++ b/docs/html/reference/android/support/wearable/view/FragmentGridPagerAdapter.html
@@ -768,7 +768,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.wearable.view.GridPagerAdapter" class="jd-expando-trigger closed"
><img id="inherited-constants-android.support.wearable.view.GridPagerAdapter-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
<a href="../../../../../reference/android/support/wearable/view/GridPagerAdapter.html">android.support.wearable.view.GridPagerAdapter</a>
<div id="inherited-constants-android.support.wearable.view.GridPagerAdapter">
@@ -831,7 +831,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.support.wearable.view.GridPagerAdapter" class="jd-expando-trigger closed"
><img id="inherited-fields-android.support.wearable.view.GridPagerAdapter-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
<a href="../../../../../reference/android/support/wearable/view/GridPagerAdapter.html">android.support.wearable.view.GridPagerAdapter</a>
<div id="inherited-fields-android.support.wearable.view.GridPagerAdapter">
@@ -1224,7 +1224,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.view.GridPagerAdapter" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.wearable.view.GridPagerAdapter-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1738,7 +1738,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/view/GridPagerAdapter.html b/docs/html/reference/android/support/wearable/view/GridPagerAdapter.html
index b157c39..4112e21 100644
--- a/docs/html/reference/android/support/wearable/view/GridPagerAdapter.html
+++ b/docs/html/reference/android/support/wearable/view/GridPagerAdapter.html
@@ -676,7 +676,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -1419,7 +1419,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/view/GridViewPager.LayoutParams.html b/docs/html/reference/android/support/wearable/view/GridViewPager.LayoutParams.html
index c4d63e22..c7abf3e 100644
--- a/docs/html/reference/android/support/wearable/view/GridViewPager.LayoutParams.html
+++ b/docs/html/reference/android/support/wearable/view/GridViewPager.LayoutParams.html
@@ -783,7 +783,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup.LayoutParams
<div id="inherited-constants-android.view.ViewGroup.LayoutParams">
@@ -900,7 +900,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.ViewGroup.MarginLayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup.MarginLayoutParams
<div id="inherited-fields-android.view.ViewGroup.MarginLayoutParams">
@@ -988,7 +988,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.ViewGroup.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup.LayoutParams
<div id="inherited-fields-android.view.ViewGroup.LayoutParams">
@@ -1121,7 +1121,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup.MarginLayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1291,7 +1291,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1349,7 +1349,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html b/docs/html/reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html
index fcd6a3d..413be78 100644
--- a/docs/html/reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html
+++ b/docs/html/reference/android/support/wearable/view/GridViewPager.OnAdapterChangeListener.html
@@ -643,7 +643,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html b/docs/html/reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html
index 072f6c5..9d337eb 100644
--- a/docs/html/reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html
+++ b/docs/html/reference/android/support/wearable/view/GridViewPager.OnPageChangeListener.html
@@ -643,7 +643,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-indirect" class="jd-expando-trigger closed"
><img id="subclasses-indirect-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Indirect Subclasses
<div id="subclasses-indirect">
diff --git a/docs/html/reference/android/support/wearable/view/GridViewPager.html b/docs/html/reference/android/support/wearable/view/GridViewPager.html
index 3e2179d..98c60419 100644
--- a/docs/html/reference/android/support/wearable/view/GridViewPager.html
+++ b/docs/html/reference/android/support/wearable/view/GridViewPager.html
@@ -943,7 +943,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup
<div id="inherited-constants-android.view.ViewGroup">
@@ -1087,7 +1087,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -2086,7 +2086,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3608,7 +3608,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -6226,7 +6226,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13964,7 +13964,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -14166,7 +14166,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewParent-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14848,7 +14848,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewManager-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14922,7 +14922,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14996,7 +14996,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -15086,7 +15086,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/ProgressSpinner.html b/docs/html/reference/android/support/wearable/view/ProgressSpinner.html
index ad31f76..2768596 100644
--- a/docs/html/reference/android/support/wearable/view/ProgressSpinner.html
+++ b/docs/html/reference/android/support/wearable/view/ProgressSpinner.html
@@ -809,7 +809,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -1804,7 +1804,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -2785,7 +2785,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.ProgressBar" class="jd-expando-trigger closed"
><img id="inherited-methods-android.widget.ProgressBar-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -3643,7 +3643,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -11381,7 +11381,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -11583,7 +11583,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11657,7 +11657,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -11747,7 +11747,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/SimpleAnimatorListener.html b/docs/html/reference/android/support/wearable/view/SimpleAnimatorListener.html
index 9940f3b..ec510dd2 100644
--- a/docs/html/reference/android/support/wearable/view/SimpleAnimatorListener.html
+++ b/docs/html/reference/android/support/wearable/view/SimpleAnimatorListener.html
@@ -897,7 +897,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1099,7 +1099,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.animation.Animator.AnimatorListener" class="jd-expando-trigger closed"
><img id="inherited-methods-android.animation.Animator.AnimatorListener-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/WatchViewStub.html b/docs/html/reference/android/support/wearable/view/WatchViewStub.html
index 170a165..24a4750 100644
--- a/docs/html/reference/android/support/wearable/view/WatchViewStub.html
+++ b/docs/html/reference/android/support/wearable/view/WatchViewStub.html
@@ -877,7 +877,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup
<div id="inherited-constants-android.view.ViewGroup">
@@ -1021,7 +1021,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -2022,7 +2022,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -2989,7 +2989,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.widget.FrameLayout" class="jd-expando-trigger closed"
><img id="inherited-methods-android.widget.FrameLayout-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -3463,7 +3463,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -6081,7 +6081,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13819,7 +13819,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -14021,7 +14021,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewParent-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14703,7 +14703,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewManager-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14777,7 +14777,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14851,7 +14851,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14941,7 +14941,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html b/docs/html/reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html
index fb54c95..e77e373 100644
--- a/docs/html/reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html
+++ b/docs/html/reference/android/support/wearable/view/WearableFrameLayout.LayoutParams.html
@@ -810,7 +810,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup.LayoutParams
<div id="inherited-constants-android.view.ViewGroup.LayoutParams">
@@ -1007,7 +1007,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.widget.FrameLayout.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-fields-android.widget.FrameLayout.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.widget.FrameLayout.LayoutParams
<div id="inherited-fields-android.widget.FrameLayout.LayoutParams">
@@ -1047,7 +1047,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.ViewGroup.MarginLayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup.MarginLayoutParams
<div id="inherited-fields-android.view.ViewGroup.MarginLayoutParams">
@@ -1135,7 +1135,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.ViewGroup.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup.LayoutParams
<div id="inherited-fields-android.view.ViewGroup.LayoutParams">
@@ -1358,7 +1358,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.MarginLayoutParams" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup.MarginLayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1528,7 +1528,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup.LayoutParams" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup.LayoutParams-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1586,7 +1586,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/view/WearableFrameLayout.html b/docs/html/reference/android/support/wearable/view/WearableFrameLayout.html
index e269ab8..56f7a6f 100644
--- a/docs/html/reference/android/support/wearable/view/WearableFrameLayout.html
+++ b/docs/html/reference/android/support/wearable/view/WearableFrameLayout.html
@@ -878,7 +878,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup
<div id="inherited-constants-android.view.ViewGroup">
@@ -1022,7 +1022,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -2021,7 +2021,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3490,7 +3490,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -6108,7 +6108,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -13846,7 +13846,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -14048,7 +14048,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewParent-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14730,7 +14730,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewManager-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14804,7 +14804,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14878,7 +14878,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -14968,7 +14968,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.Adapter.html b/docs/html/reference/android/support/wearable/view/WearableListView.Adapter.html
index 0686ff2..d59ab63 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.Adapter.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.Adapter.html
@@ -784,7 +784,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.v7.widget.RecyclerView.Adapter" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.v7.widget.RecyclerView.Adapter-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1226,7 +1226,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.ViewHolder.html b/docs/html/reference/android/support/wearable/view/WearableListView.ViewHolder.html
index 270d8d8..b602067 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.ViewHolder.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.ViewHolder.html
@@ -756,7 +756,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.support.v7.widget.RecyclerView.ViewHolder" class="jd-expando-trigger closed"
><img id="inherited-fields-android.support.v7.widget.RecyclerView.ViewHolder-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.support.v7.widget.RecyclerView.ViewHolder
<div id="inherited-fields-android.support.v7.widget.RecyclerView.ViewHolder">
@@ -841,7 +841,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.v7.widget.RecyclerView.ViewHolder" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.v7.widget.RecyclerView.ViewHolder-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1011,7 +1011,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/view/WearableListView.html b/docs/html/reference/android/support/wearable/view/WearableListView.html
index 7fb9565..b3173c3 100644
--- a/docs/html/reference/android/support/wearable/view/WearableListView.html
+++ b/docs/html/reference/android/support/wearable/view/WearableListView.html
@@ -967,7 +967,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.v7.widget.RecyclerView" class="jd-expando-trigger closed"
><img id="inherited-constants-android.support.v7.widget.RecyclerView-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.support.v7.widget.RecyclerView
<div id="inherited-constants-android.support.v7.widget.RecyclerView">
@@ -1111,7 +1111,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.ViewGroup
<div id="inherited-constants-android.view.ViewGroup">
@@ -1255,7 +1255,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-constants-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-constants-android.view.View">
@@ -2256,7 +2256,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-fields-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.view.View
<div id="inherited-fields-android.view.View">
@@ -3488,7 +3488,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.v7.widget.RecyclerView" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.v7.widget.RecyclerView-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -4698,7 +4698,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewGroup" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewGroup-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -7316,7 +7316,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.View" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.View-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -15054,7 +15054,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -15256,7 +15256,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewParent" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewParent-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -15938,7 +15938,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.ViewManager" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.ViewManager-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -16012,7 +16012,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.graphics.drawable.Drawable.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.graphics.drawable.Drawable.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -16086,7 +16086,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.KeyEvent.Callback" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.KeyEvent.Callback-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -16176,7 +16176,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.view.accessibility.AccessibilityEventSource" class="jd-expando-trigger closed"
><img id="inherited-methods-android.view.accessibility.AccessibilityEventSource-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html b/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html
index 1a7aa76..e0ebe3e 100644
--- a/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html
+++ b/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html
@@ -927,7 +927,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1346,7 +1346,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService.Engine" class="jd-expando-trigger closed"
><img id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1692,7 +1692,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.html b/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.html
index aee337f..b50b963 100644
--- a/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.html
+++ b/docs/html/reference/android/support/wearable/watchface/CanvasWatchFaceService.html
@@ -880,7 +880,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.wearable.watchface.WatchFaceService" class="jd-expando-trigger closed"
><img id="inherited-constants-android.support.wearable.watchface.WatchFaceService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
<a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html">android.support.wearable.watchface.WatchFaceService</a>
<div id="inherited-constants-android.support.wearable.watchface.WatchFaceService">
@@ -1007,7 +1007,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
><img id="inherited-constants-android.service.wallpaper.WallpaperService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.service.wallpaper.WallpaperService
<div id="inherited-constants-android.service.wallpaper.WallpaperService">
@@ -1055,7 +1055,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Service" class="jd-expando-trigger closed"
><img id="inherited-constants-android.app.Service-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Service
<div id="inherited-constants-android.app.Service">
@@ -1165,7 +1165,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.content.Context
<div id="inherited-constants-android.content.Context">
@@ -2007,7 +2007,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From interface
android.content.ComponentCallbacks2
<div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -2190,7 +2190,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.watchface.WatchFaceService" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.wearable.watchface.WatchFaceService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2232,7 +2232,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
><img id="inherited-methods-android.service.wallpaper.WallpaperService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2338,7 +2338,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Service" class="jd-expando-trigger closed"
><img id="inherited-methods-android.app.Service-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2652,7 +2652,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ContextWrapper-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -4166,7 +4166,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -5808,7 +5808,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -6010,7 +6010,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -6052,7 +6052,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html b/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html
index aba23a6..2fdbff5 100644
--- a/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html
+++ b/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html
@@ -1097,7 +1097,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1516,7 +1516,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService.Engine" class="jd-expando-trigger closed"
><img id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1862,7 +1862,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.html b/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.html
index 1dcc7dd..26eca1b 100644
--- a/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.html
+++ b/docs/html/reference/android/support/wearable/watchface/Gles2WatchFaceService.html
@@ -883,7 +883,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.support.wearable.watchface.WatchFaceService" class="jd-expando-trigger closed"
><img id="inherited-constants-android.support.wearable.watchface.WatchFaceService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
<a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html">android.support.wearable.watchface.WatchFaceService</a>
<div id="inherited-constants-android.support.wearable.watchface.WatchFaceService">
@@ -1010,7 +1010,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
><img id="inherited-constants-android.service.wallpaper.WallpaperService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.service.wallpaper.WallpaperService
<div id="inherited-constants-android.service.wallpaper.WallpaperService">
@@ -1058,7 +1058,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Service" class="jd-expando-trigger closed"
><img id="inherited-constants-android.app.Service-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Service
<div id="inherited-constants-android.app.Service">
@@ -1168,7 +1168,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.content.Context
<div id="inherited-constants-android.content.Context">
@@ -2010,7 +2010,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From interface
android.content.ComponentCallbacks2
<div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -2193,7 +2193,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.watchface.WatchFaceService" class="jd-expando-trigger closed"
><img id="inherited-methods-android.support.wearable.watchface.WatchFaceService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2235,7 +2235,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
><img id="inherited-methods-android.service.wallpaper.WallpaperService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2341,7 +2341,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Service" class="jd-expando-trigger closed"
><img id="inherited-methods-android.app.Service-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2655,7 +2655,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ContextWrapper-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -4169,7 +4169,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -5811,7 +5811,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -6013,7 +6013,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -6055,7 +6055,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.Engine.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.Engine.html
index ad6cc2c..00ae893 100644
--- a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.Engine.html
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.Engine.html
@@ -662,7 +662,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -1217,7 +1217,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService.Engine" class="jd-expando-trigger closed"
><img id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1563,7 +1563,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.TapType.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.TapType.html
index 40e5417..d508a9c 100644
--- a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.TapType.html
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.TapType.html
@@ -695,7 +695,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.annotation.Annotation" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.annotation.Annotation-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.html
index 40cf0a3..06774b1 100644
--- a/docs/html/reference/android/support/wearable/watchface/WatchFaceService.html
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceService.html
@@ -768,7 +768,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="subclasses-direct" class="jd-expando-trigger closed"
><img id="subclasses-direct-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>Known Direct Subclasses
<div id="subclasses-direct">
@@ -1083,7 +1083,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
><img id="inherited-constants-android.service.wallpaper.WallpaperService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.service.wallpaper.WallpaperService
<div id="inherited-constants-android.service.wallpaper.WallpaperService">
@@ -1131,7 +1131,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.app.Service" class="jd-expando-trigger closed"
><img id="inherited-constants-android.app.Service-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.app.Service
<div id="inherited-constants-android.app.Service">
@@ -1241,7 +1241,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
android.content.Context
<div id="inherited-constants-android.content.Context">
@@ -2083,7 +2083,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-constants-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From interface
android.content.ComponentCallbacks2
<div id="inherited-constants-android.content.ComponentCallbacks2">
@@ -2266,7 +2266,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService" class="jd-expando-trigger closed"
><img id="inherited-methods-android.service.wallpaper.WallpaperService-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2372,7 +2372,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.app.Service" class="jd-expando-trigger closed"
><img id="inherited-methods-android.app.Service-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -2686,7 +2686,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ContextWrapper" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ContextWrapper-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -4200,7 +4200,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.Context" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.Context-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -5842,7 +5842,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -6044,7 +6044,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks2" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks2-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
@@ -6086,7 +6086,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.content.ComponentCallbacks" class="jd-expando-trigger closed"
><img id="inherited-methods-android.content.ComponentCallbacks-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html
index a5401e5..1b1d7d2 100644
--- a/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html
@@ -1029,7 +1029,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.html b/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.html
index 70c3851..6531992 100644
--- a/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.html
+++ b/docs/html/reference/android/support/wearable/watchface/WatchFaceStyle.html
@@ -901,7 +901,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.os.Parcelable" class="jd-expando-trigger closed"
><img id="inherited-constants-android.os.Parcelable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From interface
android.os.Parcelable
<div id="inherited-constants-android.os.Parcelable">
@@ -1341,7 +1341,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1543,7 +1543,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.os.Parcelable" class="jd-expando-trigger closed"
><img id="inherited-methods-android.os.Parcelable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/samples/_book.yaml b/docs/html/samples/_book.yaml
new file mode 100644
index 0000000..3fe0d19
--- /dev/null
+++ b/docs/html/samples/_book.yaml
@@ -0,0 +1,6 @@
+toc:
+- title: About the Samples
+ path: /samples/index.html
+
+- title: What's New
+ path: /samples/new/index.html
diff --git a/docs/html/sdk/sdk_vars.cs b/docs/html/sdk/sdk_vars.cs
index c911f5a..972980d 100644
--- a/docs/html/sdk/sdk_vars.cs
+++ b/docs/html/sdk/sdk_vars.cs
@@ -39,21 +39,18 @@
set:sdk.win_installer_checksum='f9b59d72413649d31e633207e31f456443e7ea0b' ?><?cs
-set:ndk.mac64_download='android-ndk-r10e-darwin-x86_64.bin' ?><?cs
-set:ndk.mac64_bytes='388937326' ?><?cs
-set:ndk.mac64_checksum='2cb8893a5701603519d38a7e04c50e81' ?><?cs
+set:ndk.mac64_download='android-ndk-r11b-darwin-x86_64.zip' ?><?cs
+set:ndk.mac64_bytes='772411311' ?><?cs
+set:ndk.mac64_checksum='c64fb355fec4da57d329ab45bf0aa29a1aec58dc' ?><?cs
-set:ndk.linux64_download='android-ndk-r10e-linux-x86_64.bin' ?><?cs
-set:ndk.linux64_bytes='401522849' ?><?cs
-set:ndk.linux64_checksum='19af543b068bdb7f27787c2bc69aba7f' ?><?cs
-set:ndk.linux32_download='android-ndk-r10e-linux-x86.bin' ?><?cs
-set:ndk.linux32_bytes='394281908' ?><?cs
-set:ndk.linux32_checksum='c3edd3273029da1cbd2f62c48249e978' ?><?cs
+set:ndk.linux64_download='android-ndk-r11b-linux-x86_64.zip' ?><?cs
+set:ndk.linux64_bytes='794138413' ?><?cs
+set:ndk.linux64_checksum='cf0658956945c81d3d3fad5f9a24fa062d4c9d41' ?><?cs
-set:ndk.win64_download='android-ndk-r10e-windows-x86_64.exe' ?><?cs
-set:ndk.win64_bytes='419616132' ?><?cs
-set:ndk.win64_checksum='8412bb4991a95e08fda50b5a44d95df7' ?><?cs
-set:ndk.win32_download='android-ndk-r10e-windows-x86.exe' ?><?cs
-set:ndk.win32_bytes='396563176' ?><?cs
-set:ndk.win32_checksum='1a82445baaf62aec3a46386ab1e5772c'
-?>
\ No newline at end of file
+set:ndk.win64_download='android-ndk-r11b-windows-x86_64.zip' ?><?cs
+set:ndk.win64_bytes='771396549' ?><?cs
+set:ndk.win64_checksum='480eca1b29cfe73a5b35374730e6a82ca65c2aa6' ?><?cs
+set:ndk.win32_download='android-ndk-r11b-windows-x86.zip' ?><?cs
+set:ndk.win32_bytes='728894948' ?><?cs
+set:ndk.win32_checksum='b42da395440cc1c5dc4eeeb383679331addeb3ea'
+?>
diff --git a/docs/html/tools/_book.yaml b/docs/html/tools/_book.yaml
new file mode 100644
index 0000000..ff96666
--- /dev/null
+++ b/docs/html/tools/_book.yaml
@@ -0,0 +1,280 @@
+toc:
+- title: Download
+ path: /sdk/index.html
+ section:
+ - title: Installing the SDK
+ path: /sdk/installing/index.html
+ - title: Adding SDK Packages
+ path: /sdk/installing/adding-packages.html
+
+- title: Workflow
+ path: /tools/workflow/index.html
+ section:
+ - title: Projects
+ path: /tools/projects/index.html
+ - title: Build and Run
+ path: /tools/building/index.html
+ - title: Virtual Devices
+ path: /tools/devices/index.html
+ - title: Hardware Devices
+ path: /tools/device.html
+ section:
+ - title: USB Drivers
+ path: /tools/extras/oem-usb.html
+ - title: Testing
+ path: /tools/testing/index.html
+ - title: Debugging
+ path: /tools/debugging/index.html
+ - title: Publishing
+ path: /tools/publishing/publishing_overview.html
+ custom_link_attributes:
+ - zh-cn-lang: "发布概述"
+ section:
+ - title: Preparing for Release
+ path: /tools/publishing/preparing.html
+ custom_link_attributes:
+ - zh-cn-lang: "准备发布"
+ - title: Versioning Your Apps
+ path: /tools/publishing/versioning.html
+ - title: Signing Your Apps
+ path: /tools/publishing/app-signing.html
+
+- title: Android Studio
+ path: /tools/studio/index.html
+ section:
+ - title: Features
+ path: /tools/studio/studio-features.html
+ - title: Configuration
+ path: /tools/studio/studio-config.html
+ section:
+ - title: SDK Manager
+ path: /tools/help/sdk-manager.html
+ - title: Project Tools
+ path: /sdk/installing/create-project.html
+ section:
+ - title: Project Structure Management
+ path: /tools/help/project-mgmt.html
+ - title: Using Code Templates
+ path: /tools/projects/templates.html
+ - title: Building and Running
+ path: /tools/building/building-studio.html
+ - title: Code Tools
+ path: /tools/studio/code-tools.html
+ section:
+ - title: Improving Your Code with lint
+ path: /tools/debugging/improving-w-lint.html
+ - title: Improving Code Inspection with Annotations
+ path: /tools/debugging/annotations.html
+ - title: Deep Link and App Indexing API Support
+ path: /tools/help/app-link-indexing.html
+ - title: UI Tools
+ path: /tools/studio/ui-tools.html
+ section:
+ - title: Layout Editor
+ path: /sdk/installing/studio-layout.html
+ - title: Theme Editor
+ path: /tools/help/theme-editor.html
+ - title: Translations Editor
+ path: /tools/help/translations-editor.html
+ - title: Vector Asset Studio
+ path: /tools/help/vector-asset-studio.html
+ - title: Image Asset Studio
+ path: /tools/help/image-asset-studio.html
+ - title: AVD Manager
+ path: /tools/devices/managing-avds.html
+ - title: Debugging Tools
+ path: /tools/debugging/debugging-studio.html
+ section:
+ - title: DDMS
+ path: /tools/debugging/ddms.html
+ - title: Android Monitor
+ path: /tools/help/android-monitor.html
+ section:
+ - title: logcat Monitor
+ path: /tools/help/am-logcat.html
+ - title: Memory Monitor
+ path: /tools/help/am-memory.html
+ - title: CPU Monitor
+ path: /tools/help/am-cpu.html
+ - title: GPU Monitor
+ path: /tools/help/am-gpu.html
+ - title: Network Monitor
+ path: /tools/help/am-network.html
+ - title: Tips and Tricks
+ path: /sdk/installing/studio-tips.html
+ - title: Migrating from Eclipse ADT
+ path: /sdk/installing/migrate.html
+ section:
+ - title: Transition Guide
+ path: /tools/studio/eclipse-transition-guide.html
+
+- title: Tools Help
+ path: /tools/help/index.html
+ section:
+ - title: adb
+ path: /tools/help/adb.html
+ - title: android
+ path: /tools/help/android.html
+ section:
+ - title: Managing AVDs
+ path: /tools/devices/managing-avds-cmdline.html
+ - title: Managing Projects
+ path: /tools/projects/projects-cmdline.html
+ - title: AVD Manager
+ path: /tools/help/avd-manager.html
+ - title: bmgr
+ path: /tools/help/bmgr.html
+ - title: Desktop Head Unit
+ path: /tools/help/desktop-head-unit.html
+ - title: Device Monitor
+ path: /tools/help/monitor.html
+ - title: dmtracedump
+ path: /tools/help/dmtracedump.html
+ - title: Draw 9-Patch
+ path: /tools/help/draw9patch.html
+ - title: etc1tool
+ path: /tools/help/etc1tool.html
+ - title: Hierarchy Viewer
+ path: /tools/help/hierarchy-viewer.html
+ section:
+ - title: Optimizing your UI
+ path: /tools/debugging/debugging-ui.html
+ - title: hprof-conv
+ path: /tools/help/hprof-conv.html
+ - title: jobb
+ path: /tools/help/jobb.html
+ - title: lint
+ path: /tools/help/lint.html
+ - title: logcat
+ path: /tools/help/logcat.html
+ section:
+ - title: Reading and Writing Logs
+ path: /tools/debugging/debugging-log.html
+ - title: mksdcard
+ path: /tools/help/mksdcard.html
+ - title: ProGuard
+ path: /tools/help/proguard.html
+ - title: Tracer for OpenGL ES
+ path: /tools/help/gltracer.html
+ - title: Virtual Device Emulator
+ path: /tools/devices/emulator.html
+ section:
+ - title: Command Reference
+ path: /tools/help/emulator.html
+ - title: zipalign
+ path: /tools/help/zipalign.html
+
+- title: Build System
+ path: /sdk/installing/studio-build.html
+ section:
+ - title: Running Gradle Builds
+ path: /tools/building/building-cmdline.html
+ - title: Configuring Gradle Builds
+ path: /tools/building/configuring-gradle.html
+ - title: Android Plugin for Gradle
+ path: /tools/building/plugin-for-gradle.html
+ - title: Manifest Merging
+ path: /tools/building/manifest-merge.html
+ - title: Apps Over 65K Methods
+ path: /tools/building/multidex.html
+
+- title: Performance Tools
+ path: /tools/performance/index.html
+ section:
+ - title: Overdraw Debugger
+ path: /tools/performance/debug-gpu-overdraw/index.html
+ - title: Rendering Profiler
+ path: /tools/performance/profile-gpu-rendering/index.html
+ - title: Hierarchy Viewer
+ path: /tools/performance/hierarchy-viewer/index.html
+ section:
+ - title: Setup
+ path: /tools/performance/hierarchy-viewer/setup.html
+ - title: Profiling
+ path: /tools/performance/hierarchy-viewer/profiling.html
+ - title: Memory Profilers
+ path: /tools/performance/comparison.html
+ section:
+ - title: Memory Monitor
+ path: /tools/performance/memory-monitor/index.html
+ - title: Heap Viewer
+ path: /tools/performance/heap-viewer/index.html
+ - title: Allocation Tracker
+ path: /tools/performance/allocation-tracker/index.html
+ - title: Investigating Your RAM Usage
+ path: /tools/debugging/debugging-memory.html
+ - title: Traceview
+ path: /tools/debugging/debugging-tracing.html
+ section:
+ - title: Walkthrough
+ path: /tools/performance/traceview/index.html
+ - title: Command Reference
+ path: /tools/help/traceview.html
+ - title: Systrace
+ path: /tools/debugging/systrace.html
+ section:
+ - title: Walkthrough
+ path: /tools/performance/systrace/index.html
+ - title: Command Reference
+ path: /tools/help/systrace.html
+ - title: Battery Profilers
+ path: /tools/performance/batterystats-battery-historian/index.html
+ section:
+ - title: Historian Charts
+ path: /tools/performance/batterystats-battery-historian/charts.html
+
+- title: Testing Tools
+ path: /tools/testing/testing-tools.html
+ section:
+ - title: Testing Concepts
+ path: /tools/testing/testing_android.html
+ - title: Testing Support Library
+ path: /tools/testing-support-library/index.html
+ section:
+ - title: API Reference
+ path: /reference/android/support/test/package-summary.html
+ - title: Testing with Android Studio
+ path: /training/testing/start/index.html
+ - title: Testing from the Command-Line
+ path: /tools/testing/testing_otheride.html
+ - title: monkey
+ path: /tools/help/monkey.html
+ - title: monkeyrunner
+ path: /tools/help/monkeyrunner_concepts.html
+ section:
+ - title: MonkeyDevice
+ path: /tools/help/MonkeyDevice.html
+ - title: MonkeyImage
+ path: /tools/help/MonkeyImage.html
+ - title: MonkeyRunner
+ path: /tools/help/MonkeyRunner.html
+
+- title: Support Library
+ path: /tools/support-library/index.html
+ section:
+ - title: Features
+ path: /tools/support-library/features.html
+ - title: Setup
+ path: /tools/support-library/setup.html
+
+- title: Data Binding Library
+ path: /tools/data-binding/guide.html
+
+- title: Revisions
+ path: /tools/revisions/index.html
+ section:
+ - title: Android Studio
+ path: /tools/revisions/studio.html
+ - title: SDK Tools
+ path: /tools/sdk/tools-notes.html
+ - title: SDK Build Tools
+ path: /tools/revisions/build-tools.html
+ - title: Android Plugin for Gradle
+ path: /tools/revisions/gradle-plugin.html
+ - title: SDK Platforms
+ path: /tools/revisions/platforms.html
+ - title: ADT Plugin
+ path: /tools/sdk/eclipse-adt.html
+
+- title: NDK
+ path: /tools/sdk/ndk/index.html
diff --git a/docs/html/tools/building/building-studio.jd b/docs/html/tools/building/building-studio.jd
index ef6e94b..2e3615e 100644
--- a/docs/html/tools/building/building-studio.jd
+++ b/docs/html/tools/building/building-studio.jd
@@ -6,239 +6,182 @@
<div id="qv-wrapper">
<div id="qv">
<h2>In this document</h2>
- <ol>
- <li><a href="#buildProject">Building your Project in Android Studio</a>
<ol>
- <li><a href="#buildRelease">Build a release version</a> </li>
+ <li><a href="#run-configuration">Changing the run configuration</a> </li>
+ <li><a href="#changing-variant">Changing build variants</a></li>
+ <li><a href="#gradle-console">Monitoring the build process</a></li>
+ <li><a href="#generating-apks">Generating APKs</a></li>
</ol>
- </li>
- <li><a href=id="RunningApp">Running your App</a>
+
+ <h2>See also</h2>
<ol>
- <li><a href="#RunConfig">Creating a Run Configuration</a></li>
- <li><a href="#AutoAndManualTargetModes">Automatic and manual target modes</a></li>
- <li><a href="#RunningOnEmulatorStudio">Running on an Emulator</a></li>
- <li><a href="#RunningOnDeviceStudio">Running on a Device</a></li>
+ <li><a href="{@docRoot}sdk/installing/studio-build.html">
+ Build System</a></li>
+ <li><a href="{@docRoot}tools/devices/managing-avds.html">
+ Managing AVDs with AVD Manager</a></li>
+ <li><a href="{@docRoot}tools/devices/emulator.html">
+ Using the Android Emulator</a></li>
+ <li><a href="{@docRoot}tools/device.html">
+ Using Hardware Devices</a></li>
+ <li><a href="{@docRoot}tools/publishing/app-signing.html">
+ Signing Your Applications</a></li>
</ol>
- </li>
- </ol>
-
- <h2>See also</h2>
- <ol>
- <li><a href="{@docRoot}sdk/installing/studio-build.html">
- Build System</a></li>
- <li><a href="{@docRoot}tools/devices/managing-avds.html">
- Managing AVDs with AVD Manager</a></li>
- <li><a href="{@docRoot}tools/devices/emulator.html">
- Using the Android Emulator</a></li>
- <li><a href="{@docRoot}tools/publishing/app-signing.html">
- Signing Your Applications</a></li>
- <li><a href="{@docRoot}tools/help/app-link-indexing.html">Deep Link and App Indexing API Support in Android Studio</a></li>
- </ol>
-
</div>
</div>
+<p>
+ By default, Android Studio sets up new projects to deploy to the Emulator or
+ a physical device with just a few clicks.
+</p>
-<p>This document shows you how to use Android Studio to build an application <code>.apk</code> for
-testing or release and how to run your application on an emulator or a real device.</p>
+<p>
+ To build and run your app, click <strong>Run 'app'</strong> <img src=
+ "{@docRoot}images/tools/as-run.png" alt="" style=
+ "vertical-align:bottom;margin:0;">. Android Studio builds your app with
+ Gradle, asks you to select a deployment target (an emulator or a connected
+ device), and then deploys your app to it. You can customize some of this
+ default behavior, such as selecting an automatic deployment target, by
+ <a href="#run-configuration">changing the run configuration</a>.
+</p>
+<p>
+ If you want to <a href="{@docRoot}tools/devices/emulator.html">use the Android
+ Emulator</a> to run your app, you need to have an Android Virtual Device
+ (AVD) ready. If you haven't already created one, then after you click
+ <strong>Run 'app'</strong>, click <strong>Create New Emulator</strong> in the
+ <strong>Select Deployment Target</strong> dialog. Follow the Virtual Device
+ Configuration wizard to define the type of device you want to emulate. For
+ more information, see <a href=
+ "{@docRoot}tools/devices/managing-avds.html">Managing AVDs with the AVD
+ Manager</a>.
+</p>
-<h2 id="buildProject">Build your Project in Android Studio</h2>
+<p>
+ If you're using a physical Android device, you need to enable USB debugging
+ on the device. For more information, see <a href=
+ "{@docRoot}tools/device.html">Using Hardware Devices</a>.
+</p>
-<p>To build the project on Android Studio, click <strong>Build</strong> and select
-<strong>Make Project</strong>. The status bar at the bottom of the window shows the current
-progress of the build:</p>
+<p class="note">
+ <strong>Note:</strong> You can also deploy your app in debug mode by clicking
+ <strong>Debug 'app'</strong> <img src=
+ "{@docRoot}images/tools/as-debugbutton.png" alt="" style=
+ "vertical-align:bottom;margin:0;">. Running your app in debug mode
+ allows you to set breakpoints in your code, examine variables and evaluate
+ expressions at run time, and run debugging tools. To learn more, read about
+ <a href="{@docRoot}tools/debugging/debugging-studio.html">Debugging with
+ Android Studio</a>.
+</p>
-<p><code>Gradle: Executing tasks: [:app:assembleDebug, :lib:bundleDebug]</code></p>
+<h3 id="run-configuration">
+ Changing the run configuration
+</h3>
-<p>Click <img src="{@docRoot}images/tools/as-gradlebutton.png" alt=""
-style="vertical-align:bottom;margin:0;"/> on the bottom
-right part of the window to show the <em>Gradle Console</em>, as shown in figure 1.</p>
+<p>
+ The run configuration specifies the module to run, package to deploy,
+ activity to start, target device, emulator settings, and Logcat options. The
+ default run configuration launches the default project activity and uses the
+ <strong>Device Chooser</strong> for target device selection. If the default
+ settings don't suit your project or module, you can customize the run
+ configuration, or even create a new one, at the project, default, and module
+ levels. To edit a run configuration:
+</p>
-<img src="{@docRoot}images/tools/studio-gradle-console.png" alt="" />
-<p class="img-caption"><strong>Figure 1.</strong> The Gradle Console in Android Studio.</p>
+<ol>
+ <li>Select <strong>Run</strong> > <strong>Edit Configurations</strong>.
+ </li>
-<p>The Gradle Console shows the build tasks and subtasks that the build system runs for
-Android Studio. If the build fails, you can find more details on the console. To hide the Gradle
-Console, click <img src="{@docRoot}images/tools/as-gradlebutton.png" alt=""
-style="vertical-align:bottom;margin:0;"/> again.</p>
-
-<p class="note">If your project uses product flavors, Android Studio invokes the task for the
-selected build variant. For more information, see the
-<a href="{@docRoot}sdk/installing/studio-build.html">Build System</a> guide.</p>
-
-<p>To view the list of all available build tasks in Android Studio, click <strong>Gradle</strong>
-on the right side of the IDE window. The <em>Gradle tasks</em> panel appears.</p>
-
-
-<h3 id="buildRelease">Build a release version</h3>
-
-<p>You can now use the <strong>Build</strong> menu options to build the release version of your
-application for distribution. </p>
-
-<p>The build generates an APK for each build variant:
-the <code>app/build/apk/</code> directory contains packages named
-<code>app-<flavor>-<buildtype>.apk</code>; for example, <code>app-full-release.apk</code> and
-<code>app-demo-debug.apk</code>.</p>
-
-
-<p>For more build system information, see
-<a href="{@docRoot}sdk/installing/studio-build.html">Build System</a>.</p>
-
-
- <h2 id="RunningApp">Running your app</h2>
-
- <p>This section shows you how to run your application on an emulator or a real device
- from Android Studio—all of which is done using the debug version of your application.
- For more information about how to sign your application with a private key for release, see
- <a href="{@docRoot}tools/publishing/app-signing.html">Signing Your Applications</a></p>
-
-
- <h3 id="RunConfig">Creating a Run Configuration</h3>
-
- <p>The run configuration specifies the module to run, package to deploy, Activity to start,
- target device, emulator settings, and Logcat options. Run configuration can be set at the project,
- default, and module levels. When you first run a module as an <em>Android Application</em>,
- Android Studio will automatically create a run configuration. The default run
- configuration will launch the default project Activity and use automatic target mode for device
- selection (with no preferred AVD). If the default settings don't suit your project or module, you
- can customize the run configuration or even create a new one.</p>
-
- <p>To create or modify a run configuration, see the IntelliJ documentation on
- <a href="https://www.jetbrains.com/idea/webhelp/run-debug-configuration-android-application.html">
- Run/Debug configurations</a>.</p>
-
- <p>The following steps highlight the important things you need to do for an Android project:</p>
-
- <ol>
- <li>Open <strong>Edit</strong> Configurations from the <strong>Run</strong> Menu.</li>
-
- <li>Expand the <strong>Android Application</strong> item and create a new configuration or open
- an existing one.</li>
-
- <li>With the Run Configuration selected, adjust your desired run configuration settings:
- <ul>
- <li>In the General tab, specify the Module settings to launch. In Target tab, consider whether
- you'd like to use Manual or Automatic mode when selecting an AVD to run your application. See
- the following section on <a href="#AutoAndManualTargetModes">Automatic and manual target modes</a>).
+ <li>Expand the <strong>Android Application</strong> item and select an
+ existing run configuration.
+ <ul>
+ <li>To create a new run configuration, click the '<strong>+</strong>'
+ button in the top left corner of the dialog box and select
+ <strong>Android Application</strong>.
</li>
- <li>In the Emulator tab, specify any emulator options to the Additional Emulator Command Line
- Options field. For example, you could add <code>-scale 96dpi</code> to scale the AVD's screen
- to an accurate size, based on the dpi of your computer monitor. For a full list of emulator
- options, see the <a href="{@docRoot}tools/help/emulator.html">Android
- Emulator</a> document.</p>
- </li>
- <li>In the Logcat tab, set the LogCat options for the application. </li>
- </ul>
- </li>
- </ol>
+ </ul>
+ </li>
+ <li>With a run configuration selected, adjust your desired settings. For
+ example, in the <strong>General</strong> tab, you can specify the APK
+ installation settings, launch options, and deployment target options.
+ </li>
+</ol>
- <h3 id="AutoAndManualTargetModes">Automatic and manual target modes</h3>
+<h3 id="changing-variant">
+ Changing the build variant
+</h3>
- <p>By default, a run configuration uses the <strong>automatic</strong> target mode in order to
- select an AVD. In this mode, Android Studio will select an AVD for the application in the following
- manner:</p>
+<p>
+ By default, Android Studio builds the debug version of your app, which is
+ intended only for testing, when you click <strong>Run 'app'</strong>. You
+ need to build the release version when <a href=
+ "{@docRoot}tools/publishing/preparing.html">preparing your app for public
+ release</a>.
+</p>
+<p>
+ To change the build variant Android Studio uses, go to <strong>Build</strong>
+ > <strong>Select Build Variant</strong> and select a different one from
+ the drop-down menu. By default, new projects are set up with a debug and
+ release build variant.
+</p>
- <ol>
- <li>If there's a device or emulator already running and its AVD configuration meets the
- requirements of the application's build target, the application is installed and run upon
- it.</li>
+<p>
+ Using <em>product flavors</em>, you can create additional build variants for
+ different versions of your app, each having different features or device
+ requirements. To learn more about build variants and product flavors, read
+ <a href="{@docRoot}tools/building/configuring-gradle.html">Configuring Gradle
+ Builds</a>.
+</p>
- <li>If there's more than one device or emulator running, each of which meets the requirements
- of the build target, a device chooser is shown to let you select which device to use.</li>
+<h3 id="gradle-console">
+ Monitoring the build process
+</h3>
- <li>If there are no devices or emulators running that meet the requirements of the build
- target, Android Studio looks at the available AVDs. If there is an AVD that matches the build
- target of the project, Android Studio chooses that AVD. If the AVD versions are newer than the
- build target of the project, Android Studio chooses the oldest possible version of an AVD that
- meets the project or module build target requirement.</li>
+<p>
+ You can view details about the build process by clicking <em>Gradle
+ Console</em> <img src="{@docRoot}images/tools/as-gradlebutton.png" alt=""
+ style="vertical-align:bottom;margin:0;">. The console displays each
+ task that Gradle executes in order to build your app, as shown in figure 1.
+</p>
- <li>If there are no suitable AVDs, the application is not installed and a console error warning
- tells you that there is no existing AVD that meets the build target requirements.</li>
- </ol>
+<img src="{@docRoot}images/tools/studio-gradle-console.png" alt="">
+<p class="img-caption">
+ <strong>Figure 1.</strong> The Gradle Console in Android Studio.
+</p>
- <p>However, if a "preferred" AVD is selected in the run configuration, then the application will
- <em>always</em> be deployed to that AVD. If it's not already running, then a new emulator will be
- launched.</p>
+<p>
+ If your build variants use product flavors, Gradle also invokes tasks to
+ build those product flavors. To view the list of all available build tasks,
+ click <strong>Gradle</strong> <img src=
+ "{@docRoot}images/tools/as-gradle.png" alt="" style=
+ "vertical-align:bottom;margin:0;"> on the right side of the IDE
+ window.
+</p>
- <p>If your run configuration uses <strong>manual</strong> mode, then the "device chooser" is
- presented every time that your application is run, so that you can select which AVD to use.</p>
+<p>
+ If an error occurs during the build process, the <em>Messages</em> window
+ will appear to describe the issue.
+</p>
+<h3 id="generating-apks">
+ Generating APKs
+</h3>
+<p>
+ When you click <strong>Run 'app'</strong>, Android Studio generates a debug
+ APK and deploys it to your target device. Before you can generate a release
+ version of your app for public distribution, however, you must first learn
+ how to <a href="{@docRoot}tools/publishing/app-signing.html#studio">sign your
+ app</a>. You can then generate multiple signed APKs of your debug or release
+ build variants. To locate the generated APK files, click the link in the
+ pop-up dialog, as shown in figure 2.
+</p>
- <h3 id="RunningOnEmulatorStudio">Running on the emulator</h3>
+<p>
+ <img src="{@docRoot}images/tools/as-find-apk.png" alt="">
+</p>
- <p>Before you can run your application on the Android Emulator, you verify the default AVD or
- <a href="{@docRoot}tools/devices/managing-avds.html">create an AVD</a>.</p>
-
- <p>To run (or debug) your application, select <strong>Run</strong> > <strong>Run</strong> (or
- <strong>Run</strong> > <strong>debug</strong>) from the Android Studio menu bar. Android Studio
- automatically creates a default run configuration for the project. Android Studio will then perform
- the following:</p>
-
- <ol>
- <li>Compile the project (if there have been changes since the last build).</li>
-
- <li>Create a default run configuration (if one does not already exist for the project).</li>
-
- <li>Install and start the application on an emulator (or device), based on the Deployment
- Target defined by the run configuration.
-
- <p>By default, Android run configurations use an "automatic target" mode for selecting a
- device target. For information on how automatic target mode selects a deployment target, see
- <a href="#AutoAndManualTargetModes">Automatic and manual target modes</a> above.</p>
- </li>
- </ol>
-
- <p>If you run the application with <strong>Debug</strong>, the <em>Choose a Device</em> option
- appears so you can select an attached device or emulator. Once the device or emulator is selected,
- Android Studio opens the Debug console and starts the application's main activity. Otherwise, if
- you run the application with the normal Run command, Android Studio installs the application on the
- device and launches the main activity.</p>
-
- <p>To set or change the run configuration used for your project or module, select
- <strong>Run</strong> > <strong>Edit Configurations</strong>. See the section below about
- <a href="#RunConfig">Creating a Run Configuration</a> for more information.</p>
-
- <p>Be certain to create multiple AVDs upon which to test your application. You should have one
- AVD for each platform and screen type with which your application is compatible. For instance, if
- your application compiles against the Android 4.0 (API Level 14) platform, you should create an
- AVD for each platform equal to and greater than 4.0 and an AVD for each <a href=
- "{@docRoot}guide/practices/screens_support.html">screen type</a> you support, then test your
- application on each one.</p>
-
- <h3 id="RunningOnDeviceStudio">Running on a device</h3>
-
- <p>Before you can run your application on a device, you must perform some basic setup for your
- device:</p>
-
- <ul>
- <li>Ensure that your application is debuggable by setting the
- <code>android:debuggable</code> attribute of the <code><application></code>
- element to <code>true</code> in the build.gradle file. </li>
-
- <li>Enable <strong>USB debugging</strong> on your device.
- <ul>
- <li>On most devices running Android 3.2 or older, you can find the option under
- <strong>Settings > Applications > Development</strong>.</li>
- <li>On Android 4.0 and newer, it's in <strong>Settings > Developer options</strong>.
- <p class="note"><strong>Note:</strong> On Android 4.2 and newer, <strong>Developer
- options</strong> is hidden by default. To make it available, go
- to <strong>Settings > About phone</strong> and tap <strong>Build number</strong>
- seven times. Return to the previous screen to find <strong>Developer options</strong>.</p>
- </li>
- </ul>
- </li>
-
- <li>Ensure that your development computer can detect your device when connected via USB</li>
- </ul>
-
- <p>Read <a href="{@docRoot}tools/device.html">Using Hardware Devices</a>
- for more information.</p>
-
- <p>Once set up and your device is connected via USB, install your application on the device by
- selecting <strong>Run</strong> > <strong>Run</strong> (or <strong>Run</strong> >
- <strong>Debug</strong>) from the Android Studio menu bar.</p>
-
-
+<p class="img-caption">
+ <strong>Figure 2.</strong> Click the link to locate the generated APK
+ files.
+</p>
\ No newline at end of file
diff --git a/docs/html/tools/debugging/systrace.jd b/docs/html/tools/debugging/systrace.jd
index 5d2cd89..bdeff12 100644
--- a/docs/html/tools/debugging/systrace.jd
+++ b/docs/html/tools/debugging/systrace.jd
@@ -43,7 +43,7 @@
systems on an Android device. It puts together system and application thread execution on a common
timeline. In order to analyze your app with Systrace, you first collect a trace log of your app, and
the system activity. The generated trace allows you to view highly detailed, interactive reports
-showing everything happening the system for the traced duration.</p>
+showing everything happening in the system for the traced duration.</p>
<img src="{@docRoot}images/systrace/overview.png" alt="Systrace example overview" id="figure1" />
<p class="img-caption">
diff --git a/docs/html/tools/help/systrace.jd b/docs/html/tools/help/systrace.jd
index 6aefffe..236d282 100755
--- a/docs/html/tools/help/systrace.jd
+++ b/docs/html/tools/help/systrace.jd
@@ -38,7 +38,7 @@
<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=""
+ <img src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Using Android Studio</a></p>
<div class="toggle-content-toggleme">
@@ -59,7 +59,7 @@
<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=""
+ <img src="/assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Using Device Monitor</a></p>
<div class="toggle-content-toggleme">
diff --git a/docs/html/tools/help/uiautomator/Configurator.jd b/docs/html/tools/help/uiautomator/Configurator.jd
index c898772..b6e15f6 100644
--- a/docs/html/tools/help/uiautomator/Configurator.jd
+++ b/docs/html/tools/help/uiautomator/Configurator.jd
@@ -281,7 +281,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/tools/help/uiautomator/UiAutomatorTestCase.jd b/docs/html/tools/help/uiautomator/UiAutomatorTestCase.jd
index 0d8d1bc..bd108ab 100644
--- a/docs/html/tools/help/uiautomator/UiAutomatorTestCase.jd
+++ b/docs/html/tools/help/uiautomator/UiAutomatorTestCase.jd
@@ -166,7 +166,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.TestCase" class="jd-expando-trigger closed"
><img id="inherited-methods-junit.framework.TestCase-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -304,7 +304,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Assert" class="jd-expando-trigger closed"
><img id="inherited-methods-junit.framework.Assert-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -938,7 +938,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1108,7 +1108,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-junit.framework.Test" class="jd-expando-trigger closed"
><img id="inherited-methods-junit.framework.Test-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From interface
diff --git a/docs/html/tools/help/uiautomator/UiCollection.jd b/docs/html/tools/help/uiautomator/UiCollection.jd
index 3fc32b7..78c5254 100644
--- a/docs/html/tools/help/uiautomator/UiCollection.jd
+++ b/docs/html/tools/help/uiautomator/UiCollection.jd
@@ -161,7 +161,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-com.android.uiautomator.core.UiObject" class="jd-expando-trigger closed"
><img id="inherited-methods-com.android.uiautomator.core.UiObject-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -826,7 +826,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/tools/help/uiautomator/UiDevice.jd b/docs/html/tools/help/uiautomator/UiDevice.jd
index 574245e..1203841 100644
--- a/docs/html/tools/help/uiautomator/UiDevice.jd
+++ b/docs/html/tools/help/uiautomator/UiDevice.jd
@@ -1015,7 +1015,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/tools/help/uiautomator/UiObject.jd b/docs/html/tools/help/uiautomator/UiObject.jd
index 45007e0..4ce257b 100644
--- a/docs/html/tools/help/uiautomator/UiObject.jd
+++ b/docs/html/tools/help/uiautomator/UiObject.jd
@@ -940,7 +940,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/tools/help/uiautomator/UiObjectNotFoundException.jd b/docs/html/tools/help/uiautomator/UiObjectNotFoundException.jd
index b41cfe5..c34fdfd 100644
--- a/docs/html/tools/help/uiautomator/UiObjectNotFoundException.jd
+++ b/docs/html/tools/help/uiautomator/UiObjectNotFoundException.jd
@@ -111,7 +111,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Throwable" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Throwable-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -313,7 +313,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/tools/help/uiautomator/UiScrollable.jd b/docs/html/tools/help/uiautomator/UiScrollable.jd
index 7405f3b..8f6b1dd 100644
--- a/docs/html/tools/help/uiautomator/UiScrollable.jd
+++ b/docs/html/tools/help/uiautomator/UiScrollable.jd
@@ -38,7 +38,7 @@
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-com.android.uiautomator.core.UiObject" class="jd-expando-trigger closed"
><img id="inherited-constants-com.android.uiautomator.core.UiObject-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>From class
<a href="UiObject.html">com.android.uiautomator.core.UiObject</a>
<div id="inherited-constants-com.android.uiautomator.core.UiObject">
@@ -696,7 +696,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-com.android.uiautomator.core.UiCollection" class="jd-expando-trigger closed"
><img id="inherited-methods-com.android.uiautomator.core.UiCollection-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -798,7 +798,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-com.android.uiautomator.core.UiObject" class="jd-expando-trigger closed"
><img id="inherited-methods-com.android.uiautomator.core.UiObject-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
@@ -1606,7 +1606,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/tools/help/uiautomator/UiSelector.jd b/docs/html/tools/help/uiautomator/UiSelector.jd
index 7084540..1f045fd 100644
--- a/docs/html/tools/help/uiautomator/UiSelector.jd
+++ b/docs/html/tools/help/uiautomator/UiSelector.jd
@@ -650,7 +650,7 @@
<td colspan="12">
<a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
><img id="inherited-methods-java.lang.Object-trigger"
- src="../../../../../assets/images/triangle-closed.png"
+ src="../../../../../assets/images/styles/disclosure_down.png"
class="jd-expando-trigger-img" /></a>
From class
diff --git a/docs/html/tools/publishing/app-signing.jd b/docs/html/tools/publishing/app-signing.jd
index 8f68ff7..4b74f5f 100644
--- a/docs/html/tools/publishing/app-signing.jd
+++ b/docs/html/tools/publishing/app-signing.jd
@@ -175,11 +175,23 @@
width="349" height="232" style="margin-top:15px"/>
<p class="img-caption"><strong>Figure 2</strong>. Select a private key in Android Studio.</p>
</li>
-<li><p>On the next window, select a destination for the signed APK and click
-<strong>Finish</strong>.</p>
+<li><p>
+ On the next window, select a destination for the signed APK(s), select the
+ build type, (if applicable) choose the product flavor(s), and click
+ <strong>Finish</strong>.</p>
<img src="{@docRoot}images/tools/signstudio3.png" alt=""
width="350" height="175" style="margin-top:15px"/>
-<p class="img-caption"><strong>Figure 3</strong>. Generate a signed APK in Android Studio.</p>
+<p class="img-caption">
+ <strong>Figure 3</strong>. Generate signed APKs for the selected product
+ flavors.
+</p>
+<p class="note">
+ <strong>Note:</strong> If your project uses product flavors, you can select
+ multiple product flavors while holding down the <strong>Ctrl</strong> key on
+ Windown/Linux, or the <strong>Command</strong> key on Mac OSX. Android Studio
+ will generate a separate APK for each selected product flavor.
+</p>
+
</li>
</ol>
diff --git a/docs/html/tools/revisions/build-tools.jd b/docs/html/tools/revisions/build-tools.jd
index 2202649..5d9ba05 100755
--- a/docs/html/tools/revisions/build-tools.jd
+++ b/docs/html/tools/revisions/build-tools.jd
@@ -51,7 +51,24 @@
<div class="toggle-content opened">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
+ alt=""/>Build Tools, Revision 23.0.3</a> <em>(March 2016)</em>
+ </p>
+ <div class="toggle-content-toggleme">
+ <ul>
+ <li>Fix issues in the <a href="{@docRoot}guide/topics/renderscript/compute.html">RenderScript</a>
+ Support Library on arm64 devices.</li>
+ <li>Fix issues in the <a href="{@docRoot}guide/topics/renderscript/compute.html">RenderScript</a>
+ Support Library on certain Jelly Bean devices.</li>
+ <li>Support <code>renderscriptTargetAPI 21+</code> when using Android
+ Plugin for Gradle, Revision 2.1.0 and above .</li>
+ </ul>
+ </div>
+</div>
+
+<div class="toggle-content opened">
+ <p><a href="#" onclick="return toggleContent(this)">
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 23.0.2</a> <em>(November 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -65,7 +82,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 23.0.1</a> <em>(October 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -75,7 +92,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 23.0.0</a> <em>(August 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -86,7 +103,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 22.0.1</a> <em>(March 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -99,7 +116,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 22.0.0</a> <em>(March 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -110,7 +127,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 21.1.2</a> <em>(February 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -121,7 +138,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 21.1.1</a> <em>(November 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -132,7 +149,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 21.1</a> <em>(October 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -144,7 +161,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 21.0.2</a> <em>(October 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -155,7 +172,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 21.0.1</a> <em>(October 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -166,7 +183,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 21.0.0</a> <em>(October 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -189,7 +206,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 20.0.0</a> <em>(June 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -208,7 +225,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 19.1.0</a> <em>(May 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -228,7 +245,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 19.0.3</a> <em>(March 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -240,7 +257,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 19.0.2</a> <em>(February 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -267,7 +284,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 19.0.1</a> <em>(December 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -290,7 +307,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 19</a> <em>(October 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -302,7 +319,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 18.1.1</a> <em>(September 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -314,7 +331,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 18.1.0</a> <em>(September 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -326,7 +343,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 18.0.1</a> <em>(July 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -338,7 +355,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 17</a> <em>(May 2013)</em>
</p>
<div class="toggle-content-toggleme">
diff --git a/docs/html/tools/revisions/gradle-plugin.jd b/docs/html/tools/revisions/gradle-plugin.jd
index 20f6b34..540bbcd 100644
--- a/docs/html/tools/revisions/gradle-plugin.jd
+++ b/docs/html/tools/revisions/gradle-plugin.jd
@@ -38,7 +38,7 @@
<div class="toggle-content opened">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.5.0</a> <em>(November 2015)</em>
</p>
@@ -134,7 +134,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.3.1</a> <em>(August 2015)</em>
</p>
@@ -174,7 +174,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.3.0</a> <em>(July 2015)</em>
</p>
@@ -274,7 +274,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.2.0</a> <em>(April 2015)</em>
</p>
@@ -341,7 +341,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.1.3</a> <em>(March 2015)</em>
</p>
@@ -371,7 +371,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.1.2</a> <em>(February 2015)</em>
</p>
@@ -403,7 +403,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.1.1</a> <em>(February 2015)</em>
</p>
@@ -440,7 +440,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.1.0</a> <em>(February 2015)</em>
</p>
@@ -510,7 +510,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.0.1</a> <em>(January 2015)</em>
</p>
@@ -551,7 +551,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Plugin for Gradle, Revision 1.0.0</a> <em>(December 2014)</em>
</p>
diff --git a/docs/html/tools/revisions/platforms.jd b/docs/html/tools/revisions/platforms.jd
index a054da5..b3941ae 100644
--- a/docs/html/tools/revisions/platforms.jd
+++ b/docs/html/tools/revisions/platforms.jd
@@ -58,7 +58,7 @@
<div class="toggle-content opened">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(November 2015)</em>
</p>
@@ -76,7 +76,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(August 2015)</em>
</p>
@@ -98,7 +98,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(March 2015)</em>
</p>
@@ -120,7 +120,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(December 2014)</em>
</p>
@@ -136,7 +136,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(October 2014)</em>
</p>
@@ -168,7 +168,7 @@
<div class="toggle-content open">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(October 2014)</em>
</p>
@@ -185,7 +185,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(June 2014)</em>
</p>
@@ -214,7 +214,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(December 2013)</em>
</p>
@@ -233,7 +233,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(October 2013)</em>
</p>
@@ -256,7 +256,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 4</a> <em>(March 2014)</em>
</p>
@@ -271,7 +271,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 3</a> <em>(February 2014)</em>
</p>
@@ -286,7 +286,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(December 2013)</em>
</p>
@@ -300,7 +300,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(October 2013)</em>
</p>
@@ -321,7 +321,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(August 2013)</em>
</p>
@@ -340,7 +340,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(July 2013)</em>
</p>
@@ -360,7 +360,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 3</a> <em>(September 2013)</em>
</p>
@@ -375,7 +375,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(August 2013)</em>
</p>
@@ -390,7 +390,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(July 2013)</em>
</p>
@@ -411,7 +411,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(February 2013)</em>
</p>
@@ -429,7 +429,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(November 2012)</em>
</p>
@@ -517,7 +517,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 3</a> <em>(October 2012)</em>
</p>
@@ -535,7 +535,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(July 2012)</em>
</p>
@@ -553,7 +553,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(June 2012)</em>
</p>
@@ -630,7 +630,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 3</a> <em>(March 2012)</em>
</p>
@@ -651,7 +651,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 2</a> <em>(January 2012)</em>
</p>
@@ -669,7 +669,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Revision 1</a> <em>(December 2011)</em>
</p>
@@ -739,7 +739,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android 4.0, Revision 2</a> <em>(December 2011)</em>
</p>
@@ -755,7 +755,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android 4.0, Revision 1</a> <em>(October 2011)</em>
</p>
@@ -832,7 +832,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android 3.2, Revision 1</a> <em>(July 2011)</em>
</p>
@@ -886,7 +886,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android 3.1, Revision 3</a> <em>(July 2011)</em>
</p>
@@ -914,7 +914,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android 3.1, Revision 2</a> <em>(May 2011)</em>
</p>
@@ -940,7 +940,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android 3.1, Revision 1</a> <em>(May 2011)</em>
</p>
@@ -989,7 +989,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android 3.0, Revision 2</a> <em>(July 2011)</em>
</p>
@@ -1016,7 +1016,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="" />Android 3.0, Revision 1</a> <em>(February 2011)</em>
</p>
@@ -1067,7 +1067,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="" />Android 2.3.4, Revision 1</a> <em>(May 2011)</em>
</p>
@@ -1127,7 +1127,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android 2.3.3, Revision 2</a> <em>(July 2011)</em>
</p>
@@ -1154,7 +1154,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android 2.3.3, Revision 1</a> <em>(February 2011)</em>
</p>
@@ -1214,7 +1214,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="" />Android 2.3, Revision 1</a> <em>(December 2010)</em>
</p>
@@ -1270,7 +1270,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android {@sdkPlatformVersion}, Revision 3</a> <em>(July 2011)</em>
</p>
@@ -1297,7 +1297,7 @@
<div class="toggle-content closed" >
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android {@sdkPlatformVersion}, Revision 2</a> <em>(July 2010)</em>
</p>
@@ -1325,7 +1325,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png"
class="toggle-content-img" alt="" />Android {@sdkPlatformVersion}, Revision 1</a> <em>(May 2010)</em></p>
<div class="toggle-content-toggleme">
diff --git a/docs/html/tools/revisions/studio.jd b/docs/html/tools/revisions/studio.jd
index 94faae1..a65c164 100755
--- a/docs/html/tools/revisions/studio.jd
+++ b/docs/html/tools/revisions/studio.jd
@@ -41,7 +41,7 @@
<div class="toggle-content opened">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
alt=""/>Android Studio v1.5.1</a> <em>(December 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -71,7 +71,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.5.0</a> <em>(November 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -125,7 +125,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.4.1</a> <em>(October 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -162,7 +162,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.4.0</a> <em>(September 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -190,7 +190,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.3.2</a> <em>(August 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -213,7 +213,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.3.1</a> <em>(August 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -233,7 +233,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.3.0</a> <em>(July 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -290,7 +290,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.2.2</a> <em>(June 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -304,7 +304,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.2.1</a> <em>(May 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -319,7 +319,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.2.0</a> <em>(April 2015)</em>
</p>
@@ -366,7 +366,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.1.0</a> <em>(February 2015)</em>
</p>
@@ -394,7 +394,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.0.1</a> <em>(December 2014)</em>
</p>
@@ -417,7 +417,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v1.0</a> <em>(December 2014)</em>
</p>
@@ -429,7 +429,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v0.8.14</a> <em>(October 2014)</em>
</p>
@@ -442,7 +442,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v0.8.6</a> <em>(August 2014)</em>
</p>
@@ -453,7 +453,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v0.8.0</a> <em>(June 2014)</em>
</p>
@@ -465,7 +465,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v0.5.2</a> <em>(May 2014)</em>
</p>
@@ -478,7 +478,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v0.4.6</a> <em>(March 2014)</em>
</p>
@@ -491,7 +491,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v0.4.2</a> <em>(Jan 2014)</em>
</p>
@@ -504,7 +504,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v0.3.2</a> <em>(Oct 2013)</em>
</p>
@@ -517,7 +517,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v0.2.x</a> <em>(July 2013)</em>
</p>
@@ -578,7 +578,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>Android Studio v0.1.x</a> <em>(May 2013)</em>
</p>
diff --git a/docs/html/tools/sdk/eclipse-adt.jd b/docs/html/tools/sdk/eclipse-adt.jd
index 3c12a64..368bef3 100644
--- a/docs/html/tools/sdk/eclipse-adt.jd
+++ b/docs/html/tools/sdk/eclipse-adt.jd
@@ -52,7 +52,7 @@
<div class="toggle-content opened">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
alt=""/>ADT 23.0.7</a> <em>(August 2015)</em>
</p>
@@ -85,7 +85,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 23.0.6</a> <em>(March 2015)</em>
</p>
@@ -119,7 +119,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 23.0.4</a> <em>(October 2014)</em>
</p>
@@ -153,7 +153,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 23.0.3</a> <em>(August 2014)</em>
</p>
@@ -189,7 +189,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 23.0.2</a> <em>(July 2014)</em>
</p>
@@ -224,7 +224,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 23.0.0</a> <em>(June 2014)</em>
</p>
@@ -256,7 +256,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.6.3</a> <em>(April 2014)</em>
</p>
@@ -296,7 +296,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.6.2</a> <em>(March 2014)</em>
</p>
@@ -341,7 +341,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.6.1</a> <em>(March 2014)</em>
</p>
@@ -389,7 +389,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.6.0</a> <em>(March 2014)</em>
</p>
@@ -453,7 +453,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.3.0</a> <em>(October 2013)</em>
</p>
@@ -490,7 +490,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.2.1</a> <em>(September 2013)</em>
</p>
@@ -524,7 +524,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.2</a> <em>(September 2013)</em>
</p>
@@ -562,7 +562,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.0.5</a> <em>(July 2013)</em>
</p>
@@ -597,7 +597,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.0.4</a> <em>(July 2013)</em>
</p>
@@ -634,7 +634,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.0.1</a> <em>(May 2013)</em>
</p>
@@ -671,7 +671,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 22.0.0</a> <em>(May 2013)</em>
</p>
@@ -715,7 +715,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 21.1.0</a> <em>(February 2013)</em>
</p>
@@ -773,7 +773,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 21.0.1</a> <em>(December 2012)</em>
</p>
@@ -893,7 +893,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 21.0.0</a> <em>(November 2012)</em>
</p>
@@ -1015,7 +1015,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 20.0.3</a> <em>(August 2012)</em>
</p>
@@ -1050,7 +1050,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 20.0.2</a> <em>(July 2012)</em>
</p>
@@ -1086,7 +1086,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 20.0.1</a> <em>(July 2012)</em>
</p>
@@ -1128,7 +1128,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 20.0.0</a> <em>(June 2012)</em>
</p>
@@ -1252,7 +1252,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 18.0.0</a> <em>(April 2012)</em>
</p>
@@ -1288,7 +1288,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 17.0.0</a> <em>(March 2012)</em>
</p>
@@ -1391,7 +1391,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 16.0.1</a> <em>(December 2011)</em>
</p>
@@ -1426,7 +1426,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 16.0.0</a> <em>(December 2011)</em>
</p>
@@ -1459,7 +1459,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 15.0.1</a> <em>(November 2011)</em>
</p>
@@ -1494,7 +1494,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 15.0.0</a> <em>(October 2011)</em>
</p>
@@ -1527,7 +1527,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 14.0.0</a> <em>(October 2011)</em>
</p>
@@ -1647,7 +1647,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 12.0.0</a> <em>(July 2011)</em>
</p>
@@ -1701,7 +1701,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 11.0.0</a> <em>(June 2011)</em>
</p>
@@ -1837,7 +1837,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 10.0.1</a> <em>(March 2011)</em>
</p>
@@ -1868,7 +1868,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 10.0.0</a> <em>(February 2011)</em>
</p>
@@ -1918,7 +1918,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 9.0.0</a> <em>(January 2011)</em>
</p>
@@ -2027,7 +2027,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 8.0.1</a> <em>(December 2010)</em>
</p>
@@ -2056,7 +2056,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 8.0.0</a> <em>(December 2010)</em>
</p>
@@ -2103,7 +2103,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 0.9.9</a> <em>(September 2010)</em>
</p>
@@ -2131,7 +2131,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 0.9.8</a> <em>(September 2010)</em>
</p>
@@ -2180,7 +2180,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 0.9.7</a> <em>(May 2010)</em>
</p>
@@ -2206,7 +2206,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 0.9.6</a> <em>(March 2010)</em>
</p>
@@ -2275,7 +2275,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 0.9.5</a> <em>(December 2009)</em>
</p>
@@ -2305,7 +2305,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>ADT 0.9.4</a> <em>(October 2009)</em>
</p>
diff --git a/docs/html/tools/sdk/tools-notes.jd b/docs/html/tools/sdk/tools-notes.jd
index 64e4f59..73afa3e 100644
--- a/docs/html/tools/sdk/tools-notes.jd
+++ b/docs/html/tools/sdk/tools-notes.jd
@@ -23,7 +23,7 @@
<div class="toggle-content opened">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
alt=""/>SDK Platform-tools, Revision 23.1.0</a> <em>(December 2015)</em>
</p>
@@ -45,7 +45,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.4.1</a> <em>(October 2015)</em>
</p>
@@ -79,7 +79,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.4.0</a> <em>(October 2015)</em>
</p>
@@ -109,7 +109,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.3.4</a> <em>(August 2015)</em>
</p>
@@ -161,7 +161,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.3.3</a> <em>(June 2015)</em>
</p>
@@ -189,7 +189,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.3.2</a> <em>(June 2015)</em>
</p>
@@ -216,7 +216,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.3.1</a> <em>(June 2015)</em>
</p>
@@ -246,7 +246,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.3.0</a> <em>(June 2015)</em>
</p>
@@ -277,7 +277,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.2.0</a> <em>(May 2015)</em>
</p>
@@ -304,7 +304,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.1.2</a> <em>(February 2015)</em>
</p>
@@ -333,7 +333,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.0.2</a> <em>(December 2014)</em>
</p>
@@ -360,7 +360,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.0.1</a> <em>(December 2014)</em>
</p>
@@ -387,7 +387,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 24.0.0</a> <em>(December 2014)</em>
</p>
@@ -415,7 +415,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 23.0.5</a> <em>(October 2014)</em>
</p>
@@ -447,7 +447,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 23.0.4</a> <em>(October 2014)</em>
</p>
@@ -479,7 +479,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 23.0.2</a> <em>(July 2014)</em>
</p>
@@ -513,7 +513,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 23.0.0</a> <em>(June 2014)</em>
</p>
@@ -544,7 +544,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.6.4</a> <em>(June 2014)</em>
</p>
@@ -577,7 +577,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.6.3</a> <em>(April 2014)</em>
</p>
@@ -617,7 +617,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.6.2</a> <em>(March 2014)</em>
</p>
@@ -652,7 +652,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.6.1</a> <em>(March 2014)</em>
</p>
@@ -700,7 +700,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.6</a> <em>(March 2014)</em>
</p>
@@ -783,7 +783,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.3</a> <em>(October 2013)</em>
</p>
@@ -815,7 +815,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.2.1</a> <em>(September 2013)</em>
</p>
@@ -849,7 +849,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.2</a> <em>(September 2013)</em>
</p>
@@ -897,7 +897,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.0.5</a> <em>(July 2013)</em>
</p>
@@ -937,7 +937,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.0.4</a> <em>(July 2013)</em>
</p>
@@ -973,7 +973,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22.0.1</a> <em>(May 2013)</em>
</p>
@@ -1014,7 +1014,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 22</a> <em>(May 2013)</em>
</p>
@@ -1069,7 +1069,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 21.1</a> <em>(February 2013)</em>
</p>
@@ -1104,7 +1104,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 21.0.1</a> <em>(December 2012)</em>
</p>
@@ -1207,7 +1207,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 21</a> <em>(November 2012)</em>
</p>
@@ -1293,7 +1293,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 20.0.3</a> <em>(August 2012)</em>
</p>
@@ -1324,7 +1324,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 20.0.1</a> <em>(July 2012)</em>
</p>
@@ -1361,7 +1361,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 20</a> <em>(June 2012)</em>
</p>
@@ -1435,7 +1435,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 19</a> <em>(April 2012)</em>
</p>
@@ -1469,7 +1469,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 18</a> <em>(April 2012)</em>
</p>
@@ -1511,7 +1511,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 17</a> <em>(March 2012)</em>
</p>
@@ -1615,7 +1615,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 16</a> <em>(December 2011)</em>
</p>
@@ -1665,7 +1665,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 15</a> <em>(October 2011)</em>
</p>
@@ -1713,7 +1713,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 14</a> <em>(October 2011)</em>
</p>
@@ -1768,7 +1768,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 13</a> <em>(September 2011)</em>
</p>
@@ -1799,7 +1799,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 12</a> <em>(July 2011)</em>
</p>
@@ -1827,7 +1827,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 11</a> <em>(May 2011)</em>
</p>
@@ -1855,7 +1855,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 10</a> <em>(February 2011)</em>
</p>
@@ -1886,7 +1886,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 9</a> <em>(January 2011)</em>
</p>
@@ -1945,7 +1945,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 8</a> <em>(December 2010)</em>
</p>
@@ -2013,7 +2013,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 7</a> <em>(September 2010)</em>
</p>
@@ -2047,7 +2047,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 6</a> <em>(May 2010)</em>
</p>
@@ -2078,7 +2078,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 5</a> <em>(March 2010)</em>
</p>
@@ -2127,7 +2127,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 4</a> <em>(December 2009)</em>
</p>
@@ -2177,7 +2177,7 @@
<div class="toggle-content closed">
<p><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt=""/>SDK Tools, Revision 3</a> <em>(October 2009)</em>
</p>
diff --git a/docs/html/tools/studio/index.jd b/docs/html/tools/studio/index.jd
index c01291c..6b9f073 100644
--- a/docs/html/tools/studio/index.jd
+++ b/docs/html/tools/studio/index.jd
@@ -12,47 +12,44 @@
<li><a href="#project-structure">Project and File Structure</a></li>
<li><a href="#build-system">Android Build System</a></li>
<li><a href="#debug-perf">Debug and Performance</a></li>
-
-
</ol>
- <h2>See also</h2>
- <ol>
- <li><a class="external-link" href="http://confluence.jetbrains.com/display/IntelliJIDEA/FAQ+on+Migrating+to+IntelliJ+IDEA">IntelliJ FAQ on migrating to IntelliJ IDEA</a></li>
- </ol>
+
+<a class="button" href="{@docRoot}sdk/index.html" style="margin:15px">
+ Get Android Studio
+</a>
</div>
</div>
-<p>Android Studio is the official IDE for Android application development,
+<p>Android Studio is the official IDE for Android app development,
based on <a class="external-link" href="https://www.jetbrains.com/idea/" target="_blank">IntelliJ IDEA</a>.
On top of the capabilities you expect from IntelliJ,
Android Studio offers:</p>
<ul>
<li>Flexible Gradle-based build system</li>
- <li>Build variants and multiple <code>apk</code> file generation</li>
+ <li>Build variants and multiple APK file generation</li>
<li>Code templates to help you build common app features</li>
<li>Rich layout editor with support for drag and drop theme editing</li>
- <li>{@code lint} tools to catch performance, usability, version compatibility, and other problems</li>
- <li>ProGuard and app-signing capabilities</li>
+ <li>Lint tools to catch performance, usability, version compatibility, and other problems</li>
+ <li>Code shrinking with ProGuard</li>
<li>Built-in support for
<a href="http://developers.google.com/cloud/devtools/android_studio_templates/">Google Cloud Platform</a>,
making it easy to integrate Google Cloud Messaging and App Engine</li>
<li>And much more</li>
</ul>
-<p>If you're new to Android Studio or the IntelliJ IDEA interface, this
-page provides an introduction to some key Android
-Studio features.</p>
-
-<p>For specific Android Studio how-to documentation, see the pages in the <a href=
+<p>This page provides an introduction to some key Android Studio features. For
+specific Android Studio how-to documentation, see the pages in the <a href=
"{@docRoot}tools/workflow/index.html">Workflow</a> section, such as <a href=
-"{@docRoot}sdk/installing/create-project.html">Managing Projects from Android Studio</a> and
-<a href="{@docRoot}tools/building/building-studio.html">Building and Running from Android
-Studio</a>. For a summary of the latest changes to Android Studio, see the
-<a href="{@docRoot}tools/revisions/studio.html">Android Studio Release Notes</a>.</p>
+"{@docRoot}sdk/installing/create-project.html">Managing Projects from Android
+Studio</a> and <a href="{@docRoot}tools/building/building-studio.html">Building
+and Running from Android Studio</a>. For a summary of the latest changes to
+Android Studio, see the <a href="{@docRoot}tools/revisions/studio.html">Android
+Studio Release Notes</a>.</p>
+
@@ -103,8 +100,8 @@
<h3 id="other-views">Other Android Studio views</h3>
<p>When you use the <em>Project</em> view in Android Studio, you
should notice that the project structure appears different than you may be used to in Eclipse. Each
-instance of Android Studio contains a project with one or more application modules. Each
-application module folder contains the complete source sets for that module, including
+instance of Android Studio contains a project with one or more app modules. Each
+app module folder contains the complete source sets for that module, including
{@code src/main/} and {@code src/androidTest/} directories, resources, build
file and the Android manifest. For the most part, you will need to modify the files under each
module's {@code src/main/} directory for source code updates, the gradle.build file for build
@@ -202,7 +199,7 @@
runtime window to launch the Android runtime window. Click the <strong>Memory</strong> or
<strong>CPU</strong> tab. </p>
-<img src="{@docRoot}images/tools/studio-memory-monitor.png"
+<img src="{@docRoot}images/tools/studio-memory-monitor.png"
srcset="{@docRoot}images/tools/studio-memory-monitor2x.png 2x" width"635" height="171" alt="" />
<p class="img-caption"><strong>Figure 4.</strong> Monitor memory and CPU usage.</p>
diff --git a/docs/html/tools/support-library/features.jd b/docs/html/tools/support-library/features.jd
index d0c0965..fa5a8b4 100755
--- a/docs/html/tools/support-library/features.jd
+++ b/docs/html/tools/support-library/features.jd
@@ -153,7 +153,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:support-v4:23.1.0
+com.android.support:support-v4:23.2.1
</pre>
@@ -237,7 +237,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:appcompat-v7:23.1.0
+com.android.support:appcompat-v7:23.2.1
</pre>
@@ -258,7 +258,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:cardview-v7:23.1.0
+com.android.support:cardview-v7:23.2.1
</pre>
@@ -280,7 +280,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:gridlayout-v7:23.1.0
+com.android.support:gridlayout-v7:23.2.1
</pre>
@@ -314,7 +314,7 @@
where "<revision>" is the minimum revision at which the library is available. For example:</p>
<pre>
-com.android.support:mediarouter-v7:23.1.0
+com.android.support:mediarouter-v7:23.2.1
</pre>
<p class="caution">The v7 mediarouter library APIs introduced in Support Library
@@ -340,7 +340,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:palette-v7:23.1.0
+com.android.support:palette-v7:23.2.1
</pre>
@@ -362,7 +362,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:recyclerview-v7:23.1.0
+com.android.support:recyclerview-v7:23.2.1
</pre>
@@ -391,7 +391,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:preference-v7:23.1.0
+com.android.support:preference-v7:23.2.1
</pre>
@@ -455,7 +455,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:support-v13:23.1.0
+com.android.support:support-v13:23.2.1
</pre>
@@ -487,7 +487,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:preference-v14:23.1.0
+com.android.support:preference-v14:23.2.1
</pre>
@@ -516,7 +516,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:preference-leanback-v17:23.1.0
+com.android.support:preference-leanback-v17:23.2.1
</pre>
@@ -558,7 +558,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:leanback-v17:23.1.0
+com.android.support:leanback-v17:23.2.1
</pre>
@@ -579,7 +579,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:support-annotations:23.1.0
+com.android.support:support-annotations:23.2.1
</pre>
@@ -604,7 +604,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:design:23.1.0
+com.android.support:design:23.2.1
</pre>
@@ -632,7 +632,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:customtabs:23.1.0
+com.android.support:customtabs:23.2.1
</pre>
@@ -663,7 +663,7 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:percent:23.1.0
+com.android.support:percent:23.2.1
</pre>
@@ -693,5 +693,5 @@
<p>The Gradle build script dependency identifier for this library is as follows:</p>
<pre>
-com.android.support:recommendation:23.1.0
+com.android.support:recommendation:23.2.1
</pre>
diff --git a/docs/html/tools/support-library/index.jd b/docs/html/tools/support-library/index.jd
index df9dcf9..0e3d94c 100644
--- a/docs/html/tools/support-library/index.jd
+++ b/docs/html/tools/support-library/index.jd
@@ -59,9 +59,314 @@
<p>This section provides details about the Support Library package releases.</p>
<div class="toggle-content opened">
+ <p id="rev23-2-1">
+ <a href="#" onclick="return toggleContent(this)"><img src=
+ "{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
+ alt="">Android Support Library, revision 23.2.1</a> <em>(March
+ 2016)</em>
+ </p>
+
+ <div class="toggle-content-toggleme">
+ <dl>
+ <dt>
+ Changes for <a href=
+ "{@docRoot}tools/support-library/features.html#v4">v4 Support
+ Library</a>:
+ </dt>
+
+ <dd>
+ <ul>
+ <li>Fixed an exception in {@link
+ android.support.v4.graphics.drawable.DrawableCompat#wrap
+ DrawableCompat.wrap()} and {@link android.graphics.drawable.LayerDrawable} on
+ API levels 17 to 19. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201817">Issue 201817</a>)
+ </li>
+
+ <li>Fixed an {@code ArrayIndexOutOfBoundsException} in {@link
+ android.support.v4.widget.ViewDragHelper#shouldInterceptTouchEvent
+ ViewDragHelper.shouldInterceptTouchEvent()}. (<a class="external-link"
+ href="https://code.google.com/p/android/issues/detail?id=182262">Issue
+ 182262</a>)
+ </li>
+
+ <li>Fixed a bug in {@link android.support.v4.view.ViewPager} related to
+ scroll calculation for size changes.
+ </li>
+
+ <li>Fixed a {@code NullPointerException} when {@code
+ DrawerLayout.removeDrawerListener()} is called without a set {@link
+ android.support.v4.widget.DrawerLayout.DrawerListener
+ DrawerLayout.DrawerListener}. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202478">Issue 202478</a>)
+ </li>
+
+ <li>Fixed a bug where {@link android.support.v4.view.ViewPager} does not set
+ {@link android.view.accessibility.AccessibilityEvent} parameters properly
+ when scrolling.
+ </li>
+
+ <li>Fixed an issue that caused lag during device rotation when using
+ {@link android.support.v4.graphics.drawable.DrawableCompat#wrap
+ Drawable.wrap()}. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201924">Issue 201924</a>)
+ </li>
+ </ul>
+ </dd>
+
+ <dt>
+ Changes for <a href=
+ "{@docRoot}tools/support-library/features.html#v7-appcompat">v7
+ appcompat library</a>:
+ </dt>
+
+ <dd>
+ <ul>
+ <li>Reverted dependency on vector assets so that developers using the
+ <a href="{@docRoot}tools/support-library/features.html#v7-appcompat">appcompat
+ library</a> are not forced to use {@link
+ android.graphics.drawable.VectorDrawable} and its associated build flags.
+ </li>
+
+ <li>Fixed a compatibility issue with Night Mode and API level 23.
+ (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201910">Issue
+ 201910</a>)
+ </li>
+
+ <li>Fixed a compatibility issue with {@link
+ android.support.v7.widget.SwitchCompat} and API level 7. (<a class=
+ "external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201942">Issue 201942</a>)
+ </li>
+
+ <li>Fixed an issue with propagating configuration values in Resources objects
+ <a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201928">Issue 201928</a>
+ </li>
+
+ <li>Fixed a compatibility issue where the {@link
+ android.support.v7.app.NotificationCompat.MediaStyle
+ NotificationCompat.MediaStyle} cancel button becomes invisible on API level
+ 21 and below. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202156">Issue 202156</a>)
+ </li>
+
+ <li>Fixed a compatibility crash with {@link
+ android.support.v7.widget.AppCompatSpinner} on API level 21 and below.
+ (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202246">Issue 202246</a>)
+ </li>
+
+ <li>Fixed an issue where the {@code app:textAllCaps = "false"} style did not
+ work. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202117">Issue 202117</a>)
+ </li>
+
+ <li>Fixed a crash when restoring {@link android.widget.SearchView}.
+ (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201836">Issue
+ 201836</a>)
+ </li>
+
+ <li>Fixed a memory leak that occurs when tinting drawable resources using
+ AppCompat. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202379">Issue 202379</a>)
+ </li>
+
+ <li>Fixed an issue with {@link android.view.KeyEvent} on API level 11 and
+ lower. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202939">Issue 202939</a>)
+ </li>
+ </ul>
+ </dd>
+
+ <dt>
+ Changes for <a href=
+ "{@docRoot}tools/support-library/features.html#v7-cardview">v7 cardview
+ library</a>:
+ </dt>
+
+ <dd>
+ <ul>
+ <li>Added Night Mode support for {@link
+ android.support.v7.widget.CardView}. (<a class="external-link"
+ href="https://code.google.com/p/android/issues/detail?id=194497">Issue
+ 194497</a>)
+ </li>
+ </ul>
+ </dd>
+
+ <dt>
+ Changes for <a href=
+ "{@docRoot}tools/support-library/features.html#v7-recyclerview">v7
+ recyclerview library</a>:
+ </dt>
+
+ <dd>
+ <ul>
+ <li>Fixed bugs related to various measure-spec methods. (<a class=
+ "external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201856">Issue
+ 201856</a>)
+ </li>
+
+ <li>Reduced the lockdown period in which {@link
+ android.support.v7.widget.RecyclerView} does not allow adapter
+ changes while calculating a layout or scroll. (<a class=
+ "external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202046">Issue
+ 202046</a>)
+ </li>
+
+ <li>Fixed a crash when calling {@link
+ android.support.v7.widget.RecyclerView.Adapter#notifyItemChanged
+ notifyItemChanged()} on an item that is out of view. (<a class=
+ "external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202136">Issue
+ 202136</a>)
+ </li>
+
+ <li>Fixed a crash that occurs when {@link
+ android.support.v7.widget.RecyclerView.LayoutManager
+ RecyclerView.LayoutManager} adds and removes a view in the same
+ measurement pass. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=193958">Issue
+ 193958</a>)
+ </li>
+ </ul>
+ </dd>
+
+ <dt>
+ Changes for <a href=
+ "{@docRoot}tools/support-library/features.html#v7-mediarouter">v7
+ mediarouter library</a>:
+ </dt>
+
+ <dd>
+ <ul>
+ <li>Fixed a crash that occurs when calling {@link
+ android.support.v7.media.MediaRouter#getInstance
+ MediaRouter.getInstance()} on API level 17. (<a class="external-link"
+ href=
+ "https://code.google.com/p/android/issues/detail?id=180654">Issue
+ 180654</a>)
+ </li>
+ </ul>
+ </dd>
+
+ <dt>
+ Changes for <a href=
+ "{@docRoot}tools/support-library/features.html#v17-leanback">v17
+ Leanback Library</a>:
+ </dt>
+
+ <dd>
+ <ul>
+ <li>Fixed an issue with {@code GridLayout.onAddFocusables()} that
+ caused the wrong item to be selected.
+ </li>
+
+ <li>Fixed issue with {@link
+ android.support.v17.leanback.app.GuidedStepFragment} actions
+ disappearing after an action was collapsed.
+ </li>
+ </ul>
+ </dd>
+
+ <dt>
+ Changes for <a href=
+ "{@docRoot}tools/support-library/features.html#design">Design Support
+ Library</a>:
+ </dt>
+
+ <dd>
+ <ul>
+ <li>Fixed a {@link android.support.design.widget.TabLayout} crash
+ caused by tab-pooling. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201827">Issue
+ 201827</a>)
+ </li>
+
+ <li>Fixed a bug in {@link
+ android.support.design.widget.NavigationView} that caused the wrong
+ color to be selected. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201951">Issue
+ 201951</a>)
+ </li>
+
+ <li>Fixed a bug where {@link
+ android.support.design.widget.FloatingActionButton#setBackgroundTintList
+ setBackgroundTintList()} was no longer able to change the background
+ color. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201873">Issue
+ 201873</a>)
+ </li>
+
+ <li>Fixed an issue where {@link
+ android.support.design.widget.AppBarLayout} did not completely scroll
+ out of view when used with {@code android:fitsSystemWindows = “true”}.
+ (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201822">Issue
+ 201822</a>)
+ </li>
+
+ <li>Fixed an issue where {@code BottomSheetDialog} did not display
+ short content views correctly. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201793">Issue
+ 201793</a>)
+ </li>
+
+ <li>Fixed an issue where {@code BottomSheetDialogFragment} moved
+ sporadically when content inside was changed. (<a class=
+ "external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202125">Issue
+ 202125</a>)
+ </li>
+
+ <li>Fixed a crash in TextInputLayout counter <a class="external-link"
+ href=
+ "https://code.google.com/p/android/issues/detail?id=202051">link</a>
+ </li>
+
+ <li>Fixed a crash that occured when {@link
+ android.support.design.widget.TextInputLayout#getCounterMaxLength
+ TextInputLayout.getCounterMaxLength()} restored a saved state.
+ (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=202375">Issue
+ 202375</a>)
+ </li>
+
+ <li>Fixed a {@code ClassCastException} that occurred when restoring a
+ {@link android.support.design.widget.CoordinatorLayout} using the
+ saved state of a view that was not a {@link
+ android.support.design.widget.CoordinatorLayout}.
+ </li>
+ </ul>
+ </dd>
+
+ <dt>
+ Changes for VectorDrawableCompat:
+ </dt>
+
+ <dd>
+ <ul>
+ <li>Fixed a bug where the wrong variable was read for {@code
+ android:tintMode}. (<a class="external-link" href=
+ "https://code.google.com/p/android/issues/detail?id=201907">Issue
+ 201907</a>)
+ </li>
+ </ul>
+ </dd>
+ </dl>
+ </div>
+</div>
+<!-- end of collapsible section -->
+
+<div class="toggle-content closed">
<p id="rev23-2-0">
<a href="#" onclick="return toggleContent(this)"><img src=
- "{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+ "{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img"
alt="">Android Support Library, revision 23.2.0</a> <em>(February
2016)</em>
</p>
@@ -417,7 +722,7 @@
<div class="toggle-content closed">
<p id="rev23-1-1"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 23.1.1</a> <em>(November 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -462,7 +767,7 @@
<div class="toggle-content closed">
<p id="rev23-1-0"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 23.1.0</a> <em>(October 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -624,7 +929,7 @@
<div class="toggle-content closed">
<p id="rev23-0-1"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 23.0.1</a> <em>(September 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -691,7 +996,7 @@
<div class="toggle-content closed">
<p id="rev23"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 23</a> <em>(August 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -721,7 +1026,7 @@
<div class="toggle-content closed">
<p id="rev22-2-1"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 22.2.1</a> <em>(July 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -761,7 +1066,7 @@
<div class="toggle-content closed">
<p id="rev21"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 22.2.0</a> <em>(May 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -917,7 +1222,7 @@
<div class="toggle-content closed">
<p id="rev21"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 22.1.0</a> <em>(April 2015)</em>
</p>
@@ -1141,7 +1446,7 @@
<div class="toggle-content closed">
<p id="rev21"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 22</a> <em>(March 2015)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1247,7 +1552,7 @@
<div class="toggle-content closed">
<p id="rev21"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 21.0.3</a> <em>(December 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1274,7 +1579,7 @@
<div class="toggle-content closed">
<p id="rev21"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 21.0.2</a> <em>(November 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1333,7 +1638,7 @@
<div class="toggle-content closed">
<p id="rev21"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 21.0.1</a> <em>(November 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1352,7 +1657,7 @@
<div class="toggle-content closed">
<p id="rev21"><a href="#" onclick="return toggleContent(this)">
- <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 21</a> <em>(October 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1435,7 +1740,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 20</a> <em>(July 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1462,7 +1767,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 19.1.0</a> <em>(March 2014)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1489,7 +1794,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 19.0.1</a> <em>(December 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1532,7 +1837,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 19</a> <em>(October 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1584,7 +1889,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 18</a> <em>(July 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1685,7 +1990,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 13</a> <em>(May 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1736,7 +2041,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 12</a> <em>(February 2013)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1761,7 +2066,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 11</a> <em>(November 2012)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1823,7 +2128,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 10</a> <em>(August 2012)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1842,7 +2147,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 9</a> <em>(June 2012)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1912,7 +2217,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 8</a> <em>(April 2012)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1935,7 +2240,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 7</a> <em>(March 2012)</em>
</p>
<div class="toggle-content-toggleme">
@@ -1965,7 +2270,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 6</a> <em>(December 2011)</em>
</p>
<div class="toggle-content-toggleme">
@@ -2018,7 +2323,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 5</a> <em>(December 2011)</em>
</p>
<div class="toggle-content-toggleme">
@@ -2077,7 +2382,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 4</a> <em>(October 2011)</em>
</p>
<div class="toggle-content-toggleme">
@@ -2119,7 +2424,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 3</a> <em>(July 2011)</em>
</p>
<div class="toggle-content-toggleme">
@@ -2170,7 +2475,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 2</a> <em>(May 2011)</em>
</p>
<div class="toggle-content-toggleme">
@@ -2190,7 +2495,7 @@
<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=""
+ <img src="{@docRoot}assets/images/styles/disclosure_down.png" class="toggle-content-img" alt=""
/>Android Support Library, revision 1</a> <em>(March 2011)</em>
</p>
<div class="toggle-content-toggleme">
diff --git a/docs/html/training/_book.yaml b/docs/html/training/_book.yaml
new file mode 100644
index 0000000..7b04892
--- /dev/null
+++ b/docs/html/training/_book.yaml
@@ -0,0 +1,1210 @@
+toc:
+- title: Getting Started
+ path: /training/index.html
+ section:
+ - title: Building Your First App
+ path: /training/basics/firstapp/index.html
+ custom_link_attributes:
+ - description: "After you've installed the Android SDK, start with this class to learn the basics about Android app development."
+ section:
+ - title: Creating an Android Project
+ path: /training/basics/firstapp/creating-project.html
+ - title: Running Your Application
+ path: /training/basics/firstapp/running-app.html
+ - title: Building a Simple User Interface
+ path: /training/basics/firstapp/building-ui.html
+ - title: Starting Another Activity
+ path: /training/basics/firstapp/starting-activity.html
+ - title: Supporting Different Devices
+ path: /training/basics/supporting-devices/index.html
+ custom_link_attributes:
+ - description: "How to build your app with alternative resources that provide an optimized user experience on multiple device form factors using a single APK."
+ section:
+ - title: Supporting Different Languages
+ path: /training/basics/supporting-devices/languages.html
+ - title: Supporting Different Screens
+ path: /training/basics/supporting-devices/screens.html
+ - title: Supporting Different Platform Versions
+ path: /training/basics/supporting-devices/platforms.html
+ - title: Managing the Activity Lifecycle
+ path: /training/basics/activity-lifecycle/index.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティのライフサイクル 管理"
+ - ko-lang: "액티비티 수명 주기 관리하기"
+ - pt-br-lang: "Como gerenciar o ciclo de vida da atividade"
+ - ru-lang: "Управление жизненным циклом операций"
+ - zh-cn-lang: "管理活动生命周期"
+ - zh-tw-lang: "管理應用行為顯示生命週期"
+ - description: "How Android activities live and die and how to create a seamless user experience by implementing lifecycle callback methods."
+ section:
+ - title: Starting an Activity
+ path: /training/basics/activity-lifecycle/starting.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティを開始する"
+ - ko-lang: "액티비티 시작하기"
+ - pt-br-lang: "Iniciando uma atividade"
+ - ru-lang: "Запуск операции"
+ - zh-cn-lang: "开始活动"
+ - zh-tw-lang: "啟動應用行為顯示"
+ - title: Pausing and Resuming an Activity
+ path: /training/basics/activity-lifecycle/pausing.html
+ - title: Stopping and Restarting an Activity
+ path: /training/basics/activity-lifecycle/stopping.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティの一時停止と再開"
+ - ko-lang: "액티비티 일시정지 및 재개하기"
+ - pt-br-lang: "Pausando e reiniciando uma atividade"
+ - ru-lang: "Приостановка и возобновление операции"
+ - zh-cn-lang: "暂停和继续活动"
+ - zh-tw-lang: "暫停並繼續應用行為顯示"
+ - title: Recreating an Activity
+ path: /training/basics/activity-lifecycle/recreating.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティを再作成する"
+ - ko-lang: "액티비티 재생성하기"
+ - pt-br-lang: "Recriando uma atividade"
+ - ru-lang: "Воссоздание операции"
+ - zh-cn-lang: "重新创建活动"
+ - zh-tw-lang: "重新建立應用行為顯示"
+ - title: Building a Dynamic UI with Fragments
+ path: /training/basics/fragments/index.html
+ custom_link_attributes:
+ - description: "How to build a user interface for your app that is flexible enough to present multiple UI components on large screens and a more constrained set of UI components on smaller screens—essential for building a single APK for both phones and tablets."
+ section:
+ - title: Creating a Fragment
+ path: /training/basics/fragments/creating.html
+ - title: Building a Flexible UI
+ path: /training/basics/fragments/fragment-ui.html
+ custom_link_attributes:
+ - zh-cn-lang: "构建灵活的界面"
+ - title: Communicating with Other Fragments
+ path: /training/basics/fragments/communicating.html
+ - title: Saving Data
+ path: /training/basics/data-storage/index.html
+ custom_link_attributes:
+ - ja-lang: "データの保存"
+ - ko-lang: "데이터 저장하기"
+ - pt-br-lang: "Salvando dados"
+ - ru-lang: "Сохранение данных"
+ - zh-cn-lang: "保存数据"
+ - zh-tw-lang: "儲存資料"
+ - description: "How to save data on the device, whether it's temporary files, downloaded app assets, user media, structured data, or something else."
+ section:
+ - title: Saving Key-Value Sets
+ path: /training/basics/data-storage/shared-preferences.html
+ custom_link_attributes:
+ - ja-lang: "キー値セットを保存する"
+ - ko-lang: "키-값 세트 저장하기"
+ - pt-br-lang: "Salvando conjuntos de valor-chave"
+ - ru-lang: "Сохранение наборов \"ключ-значение\""
+ - zh-cn-lang: "保存键值集"
+ - zh-tw-lang: "儲存索引鍵值組"
+ - title: Saving Files
+ path: /training/basics/data-storage/files.html
+ custom_link_attributes:
+ - ja-lang: "ファイルを保存する"
+ - ko-lang: "파일 저장하기"
+ - pt-br-lang: "Salvando arquivos"
+ - ru-lang: "Сохранение файлов"
+ - zh-cn-lang: "保存文件"
+ - zh-tw-lang: "儲存檔案"
+ - title: Saving Data in SQL Databases
+ path: /training/basics/data-storage/databases.html
+ custom_link_attributes:
+ - ja-lang: "SQL データベースにデータを保存する"
+ - ko-lang: "SQL 데이터베이스에 데이터 저장하기"
+ - pt-br-lang: "Salvando dados em bancos de dados do SQL"
+ - ru-lang: "Сохранение данных в базах данных SQL"
+ - zh-cn-lang: "在 SQL 数据库中保存数据"
+ - zh-tw-lang: "在 SQL 資料庫中儲存資料"
+ - title: Interacting with Other Apps
+ path: /training/basics/intents/index.html
+ custom_link_attributes:
+ - ja-lang: "他のアプリとの相互操作"
+ - ko-lang: "액티비티 수명 주기 관리하기"
+ - pt-br-lang: "Interagindo com outros aplicativos"
+ - ru-lang: "Взаимодействие с другими приложениями"
+ - zh-cn-lang: "与其他应用交互"
+ - zh-tw-lang: "與其他應用程式互動"
+ - description: "How to build a user experience that leverages other apps available on the device to perform advanced user tasks, such as capture a photo or view an address on a map."
+ section:
+ - title: Sending the User to Another App
+ path: /training/basics/intents/sending.html
+ custom_link_attributes:
+ - ja-lang: "別のアプリにユーザーを送る"
+ - ko-lang: "다른 앱으로 사용자 보내기"
+ - pt-br-lang: "Enviando o usuário para outro aplicativo"
+ - ru-lang: "Направление пользователя в другое приложение"
+ - zh-cn-lang: "向另一个应用发送用户"
+ - zh-tw-lang: "將使用者傳送至其他應用程式"
+ - title: Getting a Result from the Activity
+ path: /training/basics/intents/result.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティから結果を取得する"
+ - ko-lang: "액티비티로부터 결과 가져오기"
+ - pt-br-lang: "Obtendo resultados de uma atividade"
+ - ru-lang: "Получение результата операции"
+ - zh-cn-lang: "获取活动的结果"
+ - zh-tw-lang: "從應用行為顯示取得結果"
+ - title: Allowing Other Apps to Start Your Activity
+ path: /training/basics/intents/filters.html
+ custom_link_attributes:
+ - ja-lang: "他のアプリからのアクティビティの開始を許可する"
+ - ko-lang: "다른 앱이 자신의 액티비티를 시작하도록 허용하기"
+ - pt-br-lang: "Permitindo que outros aplicativos iniciem sua atividade"
+ - ru-lang: "Разрешение другим приложениям на запуск вашей операции"
+ - zh-cn-lang: "允许其他应用开始您的活动"
+ - zh-tw-lang: "允許其他應用程式啟動您的應用行為顯示"
+ - title: Working with System Permissions
+ path: /training/permissions/index.html
+ custom_link_attributes:
+ - description: "How to declare that your app needs access to features and resources outside of its 'sandbox', and how to request those privileges at runtime."
+ section:
+ - title: Declaring Permissions
+ path: /training/permissions/declaring.html
+ - title: Requesting Permissions at Run Time
+ path: /training/permissions/requesting.html
+ - title: Best Practices for Runtime Permissions
+ path: /training/permissions/best-practices.html
+
+- title: Building Apps with Content Sharing
+ path: /training/building-content-sharing.html
+ section:
+ - title: Sharing Simple Data
+ path: /training/sharing/index.html
+ custom_link_attributes:
+ - description: "How to take your app interaction to the next level by sharing information with other apps, receive information back, and provide a simple and scalable way to perform Share actions with user content."
+ section:
+ - title: Sending Simple Data to Other Apps
+ path: /training/sharing/send.html
+ - title: Receiving Simple Data from Other Apps
+ path: /training/sharing/receive.html
+ - title: Adding an Easy Share Action
+ path: /training/sharing/shareaction.html
+ - title: Sharing Files
+ path: /training/secure-file-sharing/index.html
+ custom_link_attributes:
+ - description: "How to provide secure access to a file associated with your app using a content URI and temporary access permissions."
+ section:
+ - title: Setting Up File Sharing
+ path: /training/secure-file-sharing/setup-sharing.html
+ - title: Sharing a File
+ path: /training/secure-file-sharing/share-file.html
+ - title: Requesting a Shared File
+ path: /training/secure-file-sharing/request-file.html
+ - title: Retrieving File Information
+ path: /training/secure-file-sharing/retrieve-info.html
+ - title: Sharing Files with NFC
+ path: /training/beam-files/index.html
+ custom_link_attributes:
+ - description: "How to transfer files between devices using the NFC Android Beam feature."
+ section:
+ - title: Sending Files to Another Device
+ path: /training/beam-files/send-files.html
+ - title: Receiving Files from Another Device
+ path: /training/beam-files/receive-files.html
+
+- title: Building Apps with Multimedia
+ path: /training/building-multimedia.html
+ section:
+ - title: Managing Audio Playback
+ path: /training/managing-audio/index.html
+ custom_link_attributes:
+ - description: "How to respond to hardware audio key presses, request audio focus when playing audio, and respond appropriately to changes in audio focus."
+ section:
+ - title: Controlling Your App's Volume and Playback
+ path: /training/managing-audio/volume-playback.html
+ - title: Managing Audio Focus
+ path: /training/managing-audio/audio-focus.html
+ - title: Dealing with Audio Output Hardware
+ path: /training/managing-audio/audio-output.html
+ - title: Capturing Photos
+ path: /training/camera/index.html
+ custom_link_attributes:
+ - description: "How to leverage existing camera apps on the user's device to capture photos or control the camera hardware directly and build your own camera app."
+ section:
+ - title: Taking Photos Simply
+ path: /training/camera/photobasics.html
+ - title: Recording Videos Simply
+ path: /training/camera/videobasics.html
+ - title: Controlling the Camera
+ path: /training/camera/cameradirect.html
+ - title: Printing Content
+ path: /training/printing/index.html
+ custom_link_attributes:
+ - description: "How to print photos, HTML documents, and custom documents from your app."
+ section:
+ - title: Photos
+ path: /training/printing/photos.html
+ - title: HTML Documents
+ path: /training/printing/html-docs.html
+ - title: Custom Documents
+ path: /training/printing/custom-docs.html
+
+- title: Building Apps with Graphics & Animation
+ path: /training/building-graphics.html
+ section:
+ - title: Displaying Bitmaps Efficiently
+ path: /training/displaying-bitmaps/index.html
+ custom_link_attributes:
+ - description: "How to load and process bitmaps while keeping your user interface responsive and avoid exceeding memory limits."
+ section:
+ - title: Loading Large Bitmaps Efficiently
+ path: /training/displaying-bitmaps/load-bitmap.html
+ - title: Processing Bitmaps Off the UI Thread
+ path: /training/displaying-bitmaps/process-bitmap.html
+ - title: Caching Bitmaps
+ path: /training/displaying-bitmaps/cache-bitmap.html
+ - title: Managing Bitmap Memory
+ path: /training/displaying-bitmaps/manage-memory.html
+ - title: Displaying Bitmaps in Your UI
+ path: /training/displaying-bitmaps/display-bitmap.html
+ - title: Displaying Graphics with OpenGL ES
+ path: /training/graphics/opengl/index.html
+ custom_link_attributes:
+ - description: "How to create OpenGL graphics within the Android app framework and respond to touch input."
+ section:
+ - title: Building an OpenGL ES Environment
+ path: /training/graphics/opengl/environment.html
+ - title: Defining Shapes
+ path: /training/graphics/opengl/shapes.html
+ - title: Drawing Shapes
+ path: /training/graphics/opengl/draw.html
+ - title: Applying Projection and Camera Views
+ path: /training/graphics/opengl/projection.html
+ - title: Adding Motion
+ path: /training/graphics/opengl/motion.html
+ - title: Responding to Touch Events
+ path: /training/graphics/opengl/touch.html
+ - title: Animating Views Using Scenes and Transitions
+ path: /training/transitions/index.html
+ custom_link_attributes:
+ - description: "How to animate state changes in a view hierarchy using transitions."
+ section:
+ - title: The Transitions Framework
+ path: /training/transitions/overview.html
+ - title: Creating a Scene
+ path: /training/transitions/scenes.html
+ - title: Applying a Transition
+ path: /training/transitions/transitions.html
+ - title: Creating Custom Transitions
+ path: /training/transitions/custom-transitions.html
+ - title: Adding Animations
+ path: /training/animation/index.html
+ custom_link_attributes:
+ - description: "How to add transitional animations to your user interface."
+ section:
+ - title: Crossfading Two Views
+ path: /training/animation/crossfade.html
+ - title: Using ViewPager for Screen Slide
+ path: /training/animation/screen-slide.html
+ - title: Displaying Card Flip Animations
+ path: /training/animation/cardflip.html
+ - title: Zooming a View
+ path: /training/animation/zoom.html
+ - title: Animating Layout Changes
+ path: /training/animation/layout.html
+
+- title: Building Apps with Connectivity & the Cloud
+ path: /training/building-connectivity.html
+ section:
+ - title: Connecting Devices Wirelessly
+ path: /training/connect-devices-wirelessly/index.html
+ custom_link_attributes:
+ - description: "How to find and connect to local devices using Network Service Discovery and how to create peer-to-peer connections with Wi-Fi."
+ section:
+ - title: Using Network Service Discovery
+ path: /training/connect-devices-wirelessly/nsd.html
+ - title: Creating P2P Connections with Wi-Fi
+ path: /training/connect-devices-wirelessly/wifi-direct.html
+ - title: Using Wi-Fi P2P for Service Discovery
+ path: /training/connect-devices-wirelessly/nsd-wifi-direct.html
+ - title: Performing Network Operations
+ path: /training/basics/network-ops/index.html
+ custom_link_attributes:
+ - description: "How to create a network connection, monitor the connection for changes in connectivity, and perform transactions with XML data."
+ section:
+ - title: Connecting to the Network
+ path: /training/basics/network-ops/connecting.html
+ - title: Managing Network Usage
+ path: /training/basics/network-ops/managing.html
+ - title: Parsing XML Data
+ path: /training/basics/network-ops/xml.html
+ - title: Transferring Data Without Draining the Battery
+ path: /training/efficient-downloads/index.html
+ custom_link_attributes:
+ - description: "How to minimize your app's impact on the battery when performing downloads and other network transactions."
+ section:
+ - title: Optimizing Downloads for Efficient Network Access
+ path: /training/efficient-downloads/efficient-network-access.html
+ - title: Minimizing the Effect of Regular Updates
+ path: /training/efficient-downloads/regular_updates.html
+ - title: Redundant Downloads are Redundant
+ path: /training/efficient-downloads/redundant_redundant.html
+ - title: Modifying Patterns Based on the Connectivity Type
+ path: /training/efficient-downloads/connectivity_patterns.html
+ - title: Syncing to the Cloud
+ path: /training/backup/index.html
+ custom_link_attributes:
+ - description: "How to sync and back up app and user data to remote web services in the cloud and how to restore the data back to multiple devices."
+ section:
+ - title: Configuring Auto Backup
+ path: /training/backup/autosyncapi.html
+ - title: Using the Backup API
+ path: /training/backup/backupapi.html
+ - title: Resolving Cloud Save Conflicts
+ path: /training/cloudsave/conflict-res.html
+ custom_link_attributes:
+ - description: "How to design a robust conflict resolution strategy for apps that save data to the cloud."
+ - title: Transferring Data Using Sync Adapters
+ path: /training/sync-adapters/index.html
+ custom_link_attributes:
+ - description: "How to transfer data between the cloud and the device using the Android sync adapter framework"
+ section:
+ - title: Creating a Stub Authenticator
+ path: /training/sync-adapters/creating-authenticator.html
+ - title: Creating a Stub Content Provider
+ path: /training/sync-adapters/creating-stub-provider.html
+ - title: Creating a Sync Adapter
+ path: /training/sync-adapters/creating-sync-adapter.html
+ - title: Running a Sync Adapter
+ path: /training/sync-adapters/running-sync-adapter.html
+ - title: Transmitting Network Data Using Volley
+ path: /training/volley/index.html
+ custom_link_attributes:
+ - description: "How to perform fast, scalable UI operations over the network using Volley"
+ section:
+ - title: Sending a Simple Request
+ path: /training/volley/simple.html
+ - title: Setting Up a RequestQueue
+ path: /training/volley/requestqueue.html
+ - title: Making a Standard Request
+ path: /training/volley/request.html
+ - title: Implementing a Custom Request
+ path: /training/volley/request-custom.html
+
+- title: Building Apps with Location & Maps
+ path: /training/building-location.html
+ section:
+ - title: Making Your App Location-Aware
+ path: /training/location/index.html
+ custom_link_attributes:
+ - description: "How to add location-aware features to your app by getting the user's current location."
+ section:
+ - title: Getting the Last Known Location
+ path: /training/location/retrieve-current.html
+ - title: Changing Location Settings
+ path: /training/location/change-location-settings.html
+ - title: Receiving Location Updates
+ path: /training/location/receive-location-updates.html
+ - title: Displaying a Location Address
+ path: /training/location/display-address.html
+ - title: Creating and Monitoring Geofences
+ path: /training/location/geofencing.html
+ - title: Adding Maps
+ path: /training/maps/index.html
+ custom_link_attributes:
+ - description: "How to add maps and mapping information to your app."
+
+- title: Building Apps with User Info & Sign-In
+ path: /training/building-userinfo.html
+ section:
+ - title: Accessing Contacts Data
+ path: /training/contacts-provider/index.html
+ custom_link_attributes:
+ - description: "How to use Android's central address book, the Contacts Provider, to display contacts and their details and modify contact information."
+ section:
+ - title: Retrieving a List of Contacts
+ path: /training/contacts-provider/retrieve-names.html
+ - title: Retrieving Details for a Contact
+ path: /training/contacts-provider/retrieve-details.html
+ - title: Modifying Contacts Using Intents
+ path: /training/contacts-provider/modify-data.html
+ - title: Displaying the Quick Contact Badge
+ path: /training/contacts-provider/display-contact-badge.html
+ - title: Adding Sign-In
+ path: /training/sign-in/index.html
+ custom_link_attributes:
+ - description: "How to add user sign-in functionality to your app."
+
+- title: Building Apps for Wearables
+ path: /training/building-wearables.html
+ section:
+ - title: Adding Wearable Features to Notifications
+ path: /training/wearables/notifications/index.html
+ custom_link_attributes:
+ - description: "How to build handheld notifications that are synced to and look great on wearables."
+ section:
+ - title: Creating a Notification
+ path: /training/wearables/notifications/creating.html
+ - title: Receiving Voice Input in a Notification
+ path: /training/wearables/notifications/voice-input.html
+ - title: Adding Pages to a Notification
+ path: /training/wearables/notifications/pages.html
+ - title: Stacking Notifications
+ path: /training/wearables/notifications/stacks.html
+ - title: Creating Wearable Apps
+ path: /training/wearables/apps/index.html
+ custom_link_attributes:
+ - description: "How to build apps that run directly on wearables."
+ section:
+ - title: Creating and Running a Wearable App
+ path: /training/wearables/apps/creating.html
+ - title: Creating Custom Layouts
+ path: /training/wearables/apps/layouts.html
+ - title: Keeping Your App Visible
+ path: /training/wearables/apps/always-on.html
+ - title: Adding Voice Capabilities
+ path: /training/wearables/apps/voice.html
+ - title: Packaging Wearable Apps
+ path: /training/wearables/apps/packaging.html
+ - title: Debugging over Bluetooth
+ path: /training/wearables/apps/bt-debugging.html
+ - title: Creating Custom UIs
+ path: /training/wearables/ui/index.html
+ custom_link_attributes:
+ - description: "How to create custom user interfaces for wearable apps."
+ section:
+ - title: Defining Layouts
+ path: /training/wearables/ui/layouts.html
+ - title: Creating Cards
+ path: /training/wearables/ui/cards.html
+ - title: Creating Lists
+ path: /training/wearables/ui/lists.html
+ - title: Creating a 2D Picker
+ path: /training/wearables/ui/2d-picker.html
+ - title: Showing Confirmations
+ path: /training/wearables/ui/confirm.html
+ - title: Exiting Full-Screen Activities
+ path: /training/wearables/ui/exit.html
+ - title: Sending and Syncing Data
+ path: /training/wearables/data-layer/index.html
+ custom_link_attributes:
+ - description: "How to sync data between handhelds and wearables."
+ section:
+ - title: Accessing the Wearable Data Layer
+ path: /training/wearables/data-layer/accessing.html
+ - title: Syncing Data Items
+ path: /training/wearables/data-layer/data-items.html
+ - title: Transferring Assets
+ path: /training/wearables/data-layer/assets.html
+ - title: Sending and Receiving Messages
+ path: /training/wearables/data-layer/messages.html
+ - title: Handling Data Layer Events
+ path: /training/wearables/data-layer/events.html
+ - title: Creating Watch Faces
+ path: /training/wearables/watch-faces/index.html
+ custom_link_attributes:
+ - description: "How to create watch faces for wearables."
+ section:
+ - title: Designing Watch Faces
+ path: /training/wearables/watch-faces/designing.html
+ - title: Building a Watch Face Service
+ path: /training/wearables/watch-faces/service.html
+ - title: Drawing Watch Faces
+ path: /training/wearables/watch-faces/drawing.html
+ - title: Showing Information in Watch Faces
+ path: /training/wearables/watch-faces/information.html
+ - title: Creating Interactive Watch Faces
+ path: /training/wearables/watch-faces/interacting.html
+ - title: Providing Configuration Activities
+ path: /training/wearables/watch-faces/configuration.html
+ - title: Addressing Common Issues
+ path: /training/wearables/watch-faces/issues.html
+ - title: Optimizing Performance and Battery Life
+ path: /training/wearables/watch-faces/performance.html
+ - title: Detecting Location
+ path: /training/articles/wear-location-detection.html
+ custom_link_attributes:
+ - description: "How to detect location data on Android Wear devices."
+ - title: Requesting Permissions
+ path: /training/articles/wear-permissions.html
+ custom_link_attributes:
+ - description: "How to request permissions on Android Wear devices."
+ - title: Using the Speaker
+ path: /training/wearables/wearable-sounds.html
+ custom_link_attributes:
+ - description: "How to use the speaker on Android Wear devices."
+
+- title: Building Apps for TV
+ path: /training/tv/index.html
+ section:
+ - title: Building TV Apps
+ path: /training/tv/start/index.html
+ custom_link_attributes:
+ - ja-lang: "TV アプリのビルド"
+ - description: "How to start building TV apps or extend your existing app to run on TV devices."
+ section:
+ - title: Getting Started with TV Apps
+ path: /training/tv/start/start.html
+ custom_link_attributes:
+ - ja-lang: "TV アプリのビルドを開始する"
+ - title: Handling TV Hardware
+ path: /training/tv/start/hardware.html
+ custom_link_attributes:
+ - ja-lang: "TV ハードウェアを処理する"
+ - title: Building TV Layouts
+ path: /training/tv/start/layouts.html
+ custom_link_attributes:
+ - ja-lang: "TV 向けレイアウトをビルドする"
+ - title: Creating TV Navigation
+ path: /training/tv/start/navigation.html
+ custom_link_attributes:
+ - ja-lang: "TV 用のナビゲーションを作成する"
+ - title: Building TV Playback Apps
+ path: /training/tv/playback/index.html
+ custom_link_attributes:
+ - ja-lang: "TV 再生アプリのビルド"
+ - description: "How to build apps that provide media catalogs and play content."
+ section:
+ - title: Creating a Catalog Browser
+ path: /training/tv/playback/browse.html
+ custom_link_attributes:
+ - ja-lang: "カタログ ブラウザを作成する"
+ - title: Providing a Card View
+ path: /training/tv/playback/card.html
+ - title: Building a Details View
+ path: /training/tv/playback/details.html
+ custom_link_attributes:
+ - ja-lang: "詳細ビューをビルドする"
+ - title: Displaying a Now Playing Card
+ path: /training/tv/playback/now-playing.html
+ custom_link_attributes:
+ - ja-lang: "再生中カードを表示する"
+ - title: Adding a Guided Step
+ path: /training/tv/playback/guided-step.html
+ - title: Enabling Background Playback
+ path: /training/tv/playback/options.html
+ - title: Helping Users Find Content on TV
+ path: /training/tv/discovery/index.html
+ custom_link_attributes:
+ - description: "How to help users discover content from your app."
+ section:
+ - title: Recommending TV Content
+ path: /training/tv/discovery/recommendations.html
+ - title: Making TV Apps Searchable
+ path: /training/tv/discovery/searchable.html
+ - title: Searching within TV Apps
+ path: /training/tv/discovery/in-app-search.html
+ - title: Building TV Games
+ path: /training/tv/games/index.html
+ custom_link_attributes:
+ - description: "How to build games for TV."
+ - title: Building TV Channels
+ path: /training/tv/tif/index.html
+ custom_link_attributes:
+ - description: "How to build channels for TV."
+ section:
+ - title: Developing a TV Input Service
+ path: /training/tv/tif/tvinput.html
+ - title: Working with Channel Data
+ path: /training/tv/tif/channel.html
+ - title: Managing User Interaction
+ path: /training/tv/tif/ui.html
+ - title: TV Apps Checklist
+ path: /training/tv/publishing/checklist.html
+ custom_link_attributes:
+ - description: "An itemized list of requirements for TV apps."
+
+- title: Building Apps for Auto
+ path: /training/auto/index.html
+ section:
+ - title: Getting Started with Auto
+ path: /training/auto/start/index.html
+ custom_link_attributes:
+ - description: "How to start building or extending apps that work with Auto devices."
+ - title: Playing Audio for Auto
+ path: /training/auto/audio/index.html
+ custom_link_attributes:
+ - description: "How to extend audio apps to play content on Auto devices."
+ - title: Messaging for Auto
+ path: /training/auto/messaging/index.html
+ custom_link_attributes:
+ - description: "How to extend text messaging apps to work with Auto devices."
+
+- title: Building Apps for Work
+ path: /training/enterprise/index.html
+ section:
+ - title: Ensuring Compatibility with Managed Profiles
+ path: /training/enterprise/app-compatibility.html
+ - title: Implementing App Restrictions
+ path: /training/enterprise/app-restrictions.html
+ - title: Building a Device Policy Controller
+ path: /training/enterprise/work-policy-ctrl.html
+ - title: Configuring Corporate-Owned, Single-Use Devices
+ path: /training/enterprise/cosu.html
+
+- title: Best Practices for Interaction & Engagement
+ path: /training/best-ux.html
+ section:
+ - title: Designing Effective Navigation
+ path: /training/design-navigation/index.html
+ custom_link_attributes:
+ - description: "How to plan your app's screen hierarchy and forms of navigation so users can effectively and intuitively traverse your app content using various navigation patterns."
+ section:
+ - title: Planning Screens and Their Relationships
+ path: /training/design-navigation/screen-planning.html
+ - title: Planning for Multiple Touchscreen Sizes
+ path: /training/design-navigation/multiple-sizes.html
+ - title: Providing Descendant and Lateral Navigation
+ path: /training/design-navigation/descendant-lateral.html
+ - title: Providing Ancestral and Temporal Navigation
+ path: /training/design-navigation/ancestral-temporal.html
+ - title: "Putting it All Together: Wireframing the Example App"
+ path: /training/design-navigation/wireframing.html
+ - title: Implementing Effective Navigation
+ path: /training/implementing-navigation/index.html
+ custom_link_attributes:
+ - description: "How to implement various navigation patterns such as swipe views, a navigation drawer, and up navigation."
+ section:
+ - title: Creating Swipe Views with Tabs
+ path: /training/implementing-navigation/lateral.html
+ - title: Creating a Navigation Drawer
+ path: /training/implementing-navigation/nav-drawer.html
+ - title: Providing Up Navigation
+ path: /training/implementing-navigation/ancestral.html
+ - title: Providing Proper Back Navigation
+ path: /training/implementing-navigation/temporal.html
+ - title: Implementing Descendant Navigation
+ path: /training/implementing-navigation/descendant.html
+ - title: Notifying the User
+ path: /training/notify-user/index.html
+ custom_link_attributes:
+ - description: "How to display messages called notifications outside of your application's UI."
+ section:
+ - title: Building a Notification
+ path: /training/notify-user/build-notification.html
+ - title: Preserving Navigation when Starting an Activity
+ path: /training/notify-user/navigation.html
+ - title: Updating Notifications
+ path: /training/notify-user/managing.html
+ - title: Using Big View Styles
+ path: /training/notify-user/expanded.html
+ - title: Displaying Progress in a Notification
+ path: /training/notify-user/display-progress.html
+ - title: Supporting Swipe-to-Refresh
+ path: /training/swipe/index.html
+ custom_link_attributes:
+ - description: "How to modify your app's layout to support manual content updates triggered by the swipe-to-refresh gesture."
+ section:
+ - title: Adding Swipe-to-Refresh To Your App
+ path: /training/swipe/add-swipe-interface.html
+ - title: Responding to a Refresh Gesture
+ path: /training/swipe/respond-refresh-request.html
+ - title: Adding Search Functionality
+ path: /training/search/index.html
+ custom_link_attributes:
+ - description: "How to properly add a search interface to your app and create a searchable database."
+ section:
+ - title: Setting up the Search Interface
+ path: /training/search/setup.html
+ - title: Storing and Searching for Data
+ path: /training/search/search.html
+ - title: Remaining Backward Compatible
+ path: /training/search/backward-compat.html
+ - title: Making Your App Content Searchable by Google
+ path: /training/app-indexing/index.html
+ custom_link_attributes:
+ - description: "How to enable deep linking and indexing of your application content so that users can open this content directly from their mobile search results."
+ section:
+ - title: Enabling Deep Links for App Content
+ path: /training/app-indexing/deep-linking.html
+ - title: Specifying App Content for Indexing
+ path: /training/app-indexing/enabling-app-indexing.html
+ - title: Optimizing Content for the Assistant
+ path: /training/articles/assistant.html
+ custom_link_attributes:
+ - description: "Support contextually relevant actions through the Assist API."
+ - title: Handling App Links
+ path: /training/app-links/index.html
+ custom_link_attributes:
+ - description: "How to enable the system to handle web requests by taking the user directly to your app instead of your website."
+
+- title: Best Practices for User Interface
+ path: /training/best-ui.html
+ section:
+ - title: Designing for Multiple Screens
+ path: /training/multiscreen/index.html
+ custom_link_attributes:
+ - es-lang: "Cómo diseñar aplicaciones para varias pantallas"
+ - ja-lang: "複数画面のデザイン"
+ - zh-cn-lang: "针对多种屏幕进行设计"
+ - description: "How to build a user interface that's flexible enough to fit perfectly on any screen and how to create different interaction patterns that are optimized for different screen sizes."
+ section:
+ - title: Supporting Different Screen Sizes
+ path: /training/multiscreen/screensizes.html
+ custom_link_attributes:
+ - es-lang: "Cómo admitir varios tamaños de pantalla"
+ - ja-lang: "さまざまな画面サイズのサポート"
+ - ko-lang: "다양한 화면 크기 지원"
+ - zh-cn-lang: "支持各种屏幕尺寸"
+ - title: Supporting Different Screen Densities
+ path: /training/multiscreen/screendensities.html
+ custom_link_attributes:
+ - es-lang: "Cómo admitir varias densidades de pantalla"
+ - ja-lang: "さまざまな画面密度のサポート"
+ - zh-cn-lang: "支持各种屏幕密度"
+ - title: Implementing Adaptive UI Flows
+ path: /training/multiscreen/adaptui.html
+ custom_link_attributes:
+ - es-lang: "Cómo implementar interfaces de usuario adaptables"
+ - ja-lang: "順応性のある UI フローの実装"
+ - zh-cn-lang: "实施自适应用户界面流程"
+ - title: Adding the App Bar
+ path: /training/appbar/index.html
+ custom_link_attributes:
+ - description: "How to use the support library's toolbar widget to implement an app bar that displays properly on a wide range of devices."
+ section:
+ - title: Setting Up the App Bar
+ path: /training/appbar/setting-up.html
+ - title: Adding and Handling Actions
+ path: /training/appbar/actions.html
+ - title: Adding an Up Action
+ path: /training/appbar/up-action.html
+ - title: Action Views and Action Providers
+ path: /training/appbar/action-views.html
+ - title: Showing Pop-Up Messages
+ path: /training/snackbar/index.html
+ custom_link_attributes:
+ - description: "How to use the support library's Snackbar widget to display a brief pop-up message."
+ section:
+ - title: Building and Displaying a Pop-Up Message
+ path: /training/snackbar/showing.html
+ - title: Adding an Action to a Message
+ path: /training/snackbar/action.html
+ - title: Creating Custom Views
+ path: /training/custom-views/index.html
+ custom_link_attributes:
+ - description: "How to build custom UI widgets that are interactive and smooth."
+ section:
+ - title: Creating a Custom View Class
+ path: /training/custom-views/create-view.html
+ - title: Implementing Custom Drawing
+ path: /training/custom-views/custom-drawing.html
+ - title: Making the View Interactive
+ path: /training/custom-views/making-interactive.html
+ - title: Optimizing the View
+ path: /training/custom-views/optimizing-view.html
+ - title: Creating Backward-Compatible UIs
+ path: /training/backward-compatible-ui/index.html
+ custom_link_attributes:
+ - description: "How to use UI components and other APIs from the more recent versions of Android while remaining compatible with older versions of the platform."
+ section:
+ - title: Abstracting the New APIs
+ path: /training/backward-compatible-ui/abstracting.html
+ - title: Proxying to the New APIs
+ path: /training/backward-compatible-ui/new-implementation.html
+ - title: Creating an Implementation with Older APIs
+ path: /training/backward-compatible-ui/older-implementation.html
+ - title: Using the Version-Aware Component
+ path: /training/backward-compatible-ui/using-component.html
+ - title: Implementing Accessibility
+ path: /training/accessibility/index.html
+ custom_link_attributes:
+ - description: "How to make your app accessible to users with vision impairment or other physical disabilities."
+ section:
+ - title: Developing Accessible Applications
+ path: /training/accessibility/accessible-app.html
+ - title: Developing Accessibility Services
+ path: /training/accessibility/service.html
+ - title: Accessibility Testing Checklist
+ path: /training/accessibility/testing.html
+ - title: Managing the System UI
+ path: /training/system-ui/index.html
+ custom_link_attributes:
+ - description: "How to hide and show status and navigation bars across different versions of Android, while managing the display of other screen components."
+ section:
+ - title: Dimming the System Bars
+ path: /training/system-ui/dim.html
+ - title: Hiding the Status Bar
+ path: /training/system-ui/status.html
+ - title: Hiding the Navigation Bar
+ path: /training/system-ui/navigation.html
+ - title: Using Immersive Full-Screen Mode
+ path: /training/system-ui/immersive.html
+ - title: Responding to UI Visibility Changes
+ path: /training/system-ui/visibility.html
+ - title: Creating Apps with Material Design
+ path: /training/material/index.html
+ custom_link_attributes:
+ - es-lang: "Crear aplicaciones con Material Design"
+ - in-lang: "Desain Bahan untuk Pengembang"
+ - ja-lang: "マテリアル デザインでのアプリ作成"
+ - ko-lang: "개발자를 위한 머티리얼 디자인"
+ - pt-br-lang: "Material Design para desenvolvedores"
+ - ru-lang: "Создание приложений с помощью Material Design"
+ - vi-lang: "Material Design cho Nhà phát triển"
+ - zh-cn-lang: "面向开发者的材料设计"
+ - zh-tw-lang: "開發人員材料設計"
+ - description: "How to implement material design on Android."
+ section:
+ - title: Getting Started
+ path: /training/material/get-started.html
+ custom_link_attributes:
+ - es-lang: "Comencemos"
+ - in-lang: "Memulai"
+ - ja-lang: "スタート ガイド"
+ - ko-lang: "시작하기"
+ - pt-br-lang: "Como iniciar"
+ - ru-lang: "Начало работы"
+ - vi-lang: "Bắt đầu"
+ - zh-cn-lang: "入门指南"
+ - zh-tw-lang: "開始使用"
+ - title: Using the Material Theme
+ path: /training/material/theme.html
+ custom_link_attributes:
+ - es-lang: "Usar el tema Material"
+ - in-lang: "Menggunakan Tema Bahan"
+ - ja-lang: "マテリアル テーマの使用"
+ - ko-lang: "머티어리얼 테마 사용"
+ - pt-br-lang: "Como usar o tema do Material"
+ - ru-lang: "Использование темы Material Design"
+ - vi-lang: "Sử dụng Chủ đề Material"
+ - zh-cn-lang: "使用材料主题"
+ - zh-tw-lang: "使用材料設計風格"
+ - title: Creating Lists and Cards
+ path: /training/material/lists-cards.html
+ custom_link_attributes:
+ - es-lang: "Crear listas y tarjetas"
+ - in-lang: "Membuat Daftar dan Kartu"
+ - ja-lang: "リストとカードの作成"
+ - ko-lang: "목록 및 카드 생성"
+ - pt-br-lang: "Como criar listas e cartões"
+ - ru-lang: "Создание списков и подсказок"
+ - vi-lang: "Tạo Danh sách và Thẻ"
+ - zh-cn-lang: "创建列表与卡片"
+ - zh-tw-lang: "建立清單和卡片"
+ - title: Defining Shadows and Clipping Views
+ path: /training/material/shadows-clipping.html
+ custom_link_attributes:
+ - es-lang: "Definir vistas de recorte y sombras"
+ - in-lang: "Mendefinisikan Bayangan dan Memangkas Tampilan"
+ - ja-lang: "シャドウとクリッピング ビューの定義"
+ - ko-lang: "그림자 정의 및 뷰 클리핑"
+ - pt-br-lang: "Como definir sombras e recortar visualizações"
+ - ru-lang: "Определение теней и обрезка представлений"
+ - vi-lang: "Định nghĩa Đổ bóng và Dạng xem Cắt hình"
+ - zh-cn-lang: "定义阴影与裁剪视图"
+ - zh-tw-lang: "定義陰影和裁剪檢視"
+ - title: Working with Drawables
+ path: /training/material/drawables.html
+ custom_link_attributes:
+ - es-lang: "Trabajar con interfaces dibujables"
+ - in-lang: "Bekerja dengan Drawable"
+ - ja-lang: "ドローアブルの使用"
+ - ko-lang: "Drawable 사용"
+ - pt-br-lang: "Como trabalhar com desenháveis"
+ - ru-lang: "Работа с элементами дизайна"
+ - vi-lang: "Làm việc với Nội dung vẽ được"
+ - zh-cn-lang: "使用 Drawables"
+ - zh-tw-lang: "使用可繪項目"
+ - title: Defining Custom Animations
+ path: /training/material/animations.html
+ custom_link_attributes:
+ - es-lang: "Definir animaciones personalizadas"
+ - in-lang: "Mendefinisikan Animasi Custom"
+ - ja-lang: "カスタム アニメーションの定義"
+ - ko-lang: "사용자지정 애니메이션 정의"
+ - pt-br-lang: "Como definir animações personalizadas"
+ - ru-lang: "Определение настраиваемой анимации"
+ - vi-lang: "Định nghĩa Hoạt hình Tùy chỉnh"
+ - zh-cn-lang: "定义定制动画"
+ - zh-tw-lang: "定義自訂動畫"
+ - title: Maintaining Compatibility
+ path: /training/material/compatibility.html
+ custom_link_attributes:
+ - es-lang: "Mantener la compatibilidad"
+ - in-lang: "Mempertahankan Kompatibilitas"
+ - ja-lang: "互換性の維持"
+ - ko-lang: "호환성 유지"
+ - pt-br-lang: "Como manter a compatibilidade"
+ - ru-lang: "Обеспечение совместимости"
+ - vi-lang: "Duy trì Tính tương thích"
+ - zh-cn-lang: "维护兼容性"
+ - zh-tw-lang: "維持相容性"
+
+- title: Best Practices for User Input
+ path: /training/best-user-input.html
+ section:
+ - title: Using Touch Gestures
+ path: /training/gestures/index.html
+ custom_link_attributes:
+ - description: "How to write apps that allow users to interact with the touch screen via touch gestures."
+ section:
+ - title: Detecting Common Gestures
+ path: /training/gestures/detector.html
+ - title: Tracking Movement
+ path: /training/gestures/movement.html
+ - title: Animating a Scroll Gesture
+ path: /training/gestures/scroll.html
+ - title: Handling Multi-Touch Gestures
+ path: /training/gestures/multi.html
+ - title: Dragging and Scaling
+ path: /training/gestures/scale.html
+ - title: Managing Touch Events in a ViewGroup
+ path: /training/gestures/viewgroup.html
+ - title: Handling Keyboard Input
+ path: /training/keyboard-input/index.html
+ custom_link_attributes:
+ - description: "How to specify the appearance and behaviors of soft input methods (such as on-screen keyboards) and how to optimize the experience with hardware keyboards."
+ section:
+ - title: Specifying the Input Method Type
+ path: /training/keyboard-input/style.html
+ - title: Handling Input Method Visibility
+ path: /training/keyboard-input/visibility.html
+ - title: Supporting Keyboard Navigation
+ path: /training/keyboard-input/navigation.html
+ - title: Handling Keyboard Actions
+ path: /training/keyboard-input/commands.html
+ - title: Supporting Game Controllers
+ path: /training/game-controllers/index.html
+ custom_link_attributes:
+ - description: "How to write apps that support game controllers."
+ section:
+ - title: Handling Controller Actions
+ path: /training/game-controllers/controller-input.html
+ - title: Supporting Controllers Across Android Versions
+ path: /training/game-controllers/compatibility.html
+ - title: Supporting Multiple Game Controllers
+ path: /training/game-controllers/multiple-controllers.html
+
+- title: Best Practices for Background Jobs
+ path: /training/best-background.html
+ section:
+ - title: Running in a Background Service
+ path: /training/run-background-service/index.html
+ custom_link_attributes:
+ - description: "How to improve UI performance and responsiveness by sending work to a Service running in the background"
+ section:
+ - title: Creating a Background Service
+ path: /training/run-background-service/create-service.html
+ - title: Sending Work Requests to the Background Service
+ path: /training/run-background-service/send-request.html
+ - title: Reporting Work Status
+ path: /training/run-background-service/report-status.html
+ - title: Loading Data in the Background
+ path: /training/load-data-background/index.html
+ custom_link_attributes:
+ - description: "How to use CursorLoader to query data without affecting UI responsiveness."
+ section:
+ - title: Running a Query with a CursorLoader
+ path: /training/load-data-background/setup-loader.html
+ - title: Handling the Results
+ path: /training/load-data-background/handle-results.html
+ - title: Managing Device Awake State
+ path: /training/scheduling/index.html
+ custom_link_attributes:
+ - description: "How to use repeating alarms and wake locks to run background jobs."
+ section:
+ - title: Keeping the Device Awake
+ path: /training/scheduling/wakelock.html
+ - title: Scheduling Repeating Alarms
+ path: /training/scheduling/alarms.html
+
+- title: Best Practices for Performance
+ path: /training/best-performance.html
+ section:
+ - title: Managing Your App's Memory
+ path: /training/articles/memory.html
+ custom_link_attributes:
+ - description: "How to keep your app's memory footprint small in order to improve performance on a variety of mobile devices."
+ - title: Performance Tips
+ path: /training/articles/perf-tips.html
+ custom_link_attributes:
+ - description: "How to optimize your app's performance in various ways to improve its responsiveness and battery efficiency."
+ - title: Improving Layout Performance
+ path: /training/improving-layouts/index.html
+ custom_link_attributes:
+ - description: "How to identify problems in your app's layout performance and improve the UI responsiveness."
+ section:
+ - title: Optimizing Layout Hierarchies
+ path: /training/improving-layouts/optimizing-layout.html
+ - title: Re-using Layouts with <include/>
+ path: /training/improving-layouts/reusing-layouts.html
+ - title: Loading Views On Demand
+ path: /training/improving-layouts/loading-ondemand.html
+ - title: Making ListView Scrolling Smooth
+ path: /training/improving-layouts/smooth-scrolling.html
+ - title: Optimizing Battery Life
+ path: /training/monitoring-device-state/index.html
+ custom_link_attributes:
+ - es-lang: "Cómo optimizar la duración de la batería"
+ - ja-lang: "電池消費量の最適化"
+ - zh-cn-lang: "优化电池使用时间"
+ - description: "How to minimize the amount of power your app requires by adapting to current power conditions and performing power-hungry tasks at proper intervals."
+ section:
+ - title: Reducing Network Battery Drain
+ path: /training/performance/battery/network/index.html
+ section:
+ - title: Collecting Network Traffic Data
+ path: /training/performance/battery/network/gather-data.html
+ - title: Analyzing Network Traffic Data
+ path: /training/performance/battery/network/analyze-data.html
+ - title: Optimizing User-Initiated Network Use
+ path: /training/performance/battery/network/action-user-traffic.html
+ - title: Optimizing App-Initiated Network Use
+ path: /training/performance/battery/network/action-app-traffic.html
+ - title: Optimizing Server-Initiated Network Use
+ path: /training/performance/battery/network/action-server-traffic.html
+ - title: Optimizing General Network Use
+ path: /training/performance/battery/network/action-any-traffic.html
+ - title: Optimizing for Doze and App Standby
+ path: /training/monitoring-device-state/doze-standby.html
+ - title: Monitoring the Battery Level and Charging State
+ path: /training/monitoring-device-state/battery-monitoring.html
+ custom_link_attributes:
+ - es-lang: "Cómo controlar el nivel de batería y el estado de carga"
+ - ja-lang: "電池残量と充電状態の監視"
+ - zh-cn-lang: "监控电池电量和充电状态"
+ - title: Determining and Monitoring the Docking State and Type
+ path: /training/monitoring-device-state/docking-monitoring.html
+ custom_link_attributes:
+ - es-lang: "Cómo determinar y controlar el tipo de conector y el estado de la conexión"
+ - ja-lang: "ホルダーの装着状態とタイプの特定と監視"
+ - zh-cn-lang: "确定和监控基座对接状态和类型"
+ - title: Determining and Monitoring the Connectivity Status
+ path: /training/monitoring-device-state/connectivity-monitoring.html
+ custom_link_attributes:
+ - es-lang: "Cómo determinar y controlar el estado de la conectividad"
+ - ja-lang: "接続状態の特定と監視"
+ - zh-cn-lang: "确定和监控网络连接状态"
+ - title: Manipulating Broadcast Receivers On Demand
+ path: /training/monitoring-device-state/manifest-receivers.html
+ custom_link_attributes:
+ - es-lang: "Cómo manipular los receptores de emisión bajo demanda"
+ - ja-lang: "オンデマンドでのブロードキャスト レシーバ操作"
+ - zh-cn-lang: "根据需要操作广播接收器"
+ - title: Sending Operations to Multiple Threads
+ path: /training/multiple-threads/index.html
+ custom_link_attributes:
+ - description: "How to improve the performance and scalability of long-running operations by dispatching work to multiple threads."
+ section:
+ - title: Specifying the Code to Run on a Thread
+ path: /training/multiple-threads/define-runnable.html
+ - title: Creating a Manager for Multiple Threads
+ path: /training/multiple-threads/create-threadpool.html
+ - title: Running Code on a Thread Pool Thread
+ path: /training/multiple-threads/run-code.html
+ - title: Communicating with the UI Thread
+ path: /training/multiple-threads/communicate-ui.html
+ - title: Keeping Your App Responsive
+ path: /training/articles/perf-anr.html
+ custom_link_attributes:
+ - description: "How to keep your app responsive to user interaction so the UI does not lock-up and display an \"Application Not Responding\" dialog."
+ - title: JNI Tips
+ path: /training/articles/perf-jni.html
+ custom_link_attributes:
+ - description: "How to efficiently use the Java Native Interface with the Android NDK."
+ - title: SMP Primer for Android
+ path: /training/articles/smp.html
+ custom_link_attributes:
+ - description: "Tips for coding Android apps on symmetric multiprocessor systems."
+
+- title: Best Practices for Security & Privacy
+ path: /training/best-security.html
+ section:
+ - title: Security Tips
+ path: /training/articles/security-tips.html
+ custom_link_attributes:
+ - description: "How to perform various tasks and keep your app's data and your user's data secure."
+ - title: Security with HTTPS and SSL
+ path: /training/articles/security-ssl.html
+ custom_link_attributes:
+ - description: "How to ensure that your app is secure when performing network transactions."
+ - title: Updating Your Security Provider to Protect Against SSL Exploits
+ path: /training/articles/security-gms-provider.html
+ custom_link_attributes:
+ - description: "How to use and update Google Play services security provider, to protect against SSL exploits."
+ - title: Checking Device Compatibility with SafetyNet
+ path: /training/safetynet/index.html
+ custom_link_attributes:
+ - description: "How to use the SafetyNet service to analyze a device where your app is running and get information about its compatibility with your app."
+ - title: Enhancing Security with Device Management Policies
+ path: /training/enterprise/device-management-policy.html
+ custom_link_attributes:
+ - description: "How to create an application that enforces security policies on devices."
+
+- title: Best Practices for Permissions & Identifiers
+ path: /training/best-permissions-ids.html
+ section:
+ - title: Permissions and User Data
+ path: /training/articles/user-data-overview.html
+ custom_link_attributes:
+ - description: "Overview of app permissions on Android and how they affect your users."
+ - title: Best Practices for App Permissions
+ path: /training/articles/user-data-permissions.html
+ custom_link_attributes:
+ - description: "How to manage permissions the right way for users."
+ - title: Best Practices for Unique Identifiers
+ path: /training/articles/user-data-ids.html
+ custom_link_attributes:
+ - description: "Unique identifiers available and how to choose the right one for your use case."
+
+- title: Best Practices for Testing
+ path: /training/testing/index.html
+ section:
+ - title: Getting Started with Testing
+ path: /training/testing/start/index.html
+ custom_link_attributes:
+ - description: "How to get started with testing your Android applications."
+ - title: Building Effective Unit Tests
+ path: /training/testing/unit-testing/index.html
+ custom_link_attributes:
+ - description: "How to build effective unit tests for Android apps."
+ section:
+ - title: Building Local Unit Tests
+ path: /training/testing/unit-testing/local-unit-tests.html
+ - title: Building Instrumented Unit Tests
+ path: /training/testing/unit-testing/instrumented-unit-tests.html
+ - title: Automating UI Tests
+ path: /training/testing/ui-testing/index.html
+ custom_link_attributes:
+ - description: "How to automate your user interface tests for Android apps."
+ section:
+ - title: Testing UI for a Single App
+ path: /training/testing/ui-testing/espresso-testing.html
+ - title: Testing UI for Multiple Apps
+ path: /training/testing/ui-testing/uiautomator-testing.html
+ - title: Testing App Component Integrations
+ path: /training/testing/integration-testing/index.html
+ custom_link_attributes:
+ - description: "How to build effective integration tests for Android apps."
+ section:
+ - title: Testing Your Service
+ path: /training/testing/integration-testing/service-testing.html
+ - title: Testing Your Content Provider
+ path: /training/testing/integration-testing/content-provider-testing.html
+ - title: Testing Display Performance
+ path: /training/testing/performance.html
+ custom_link_attributes:
+ - description: "How to automate UI performance testing."
+
+- title: Using Google Play to Distribute & Monetize
+ path: /training/distribute.html
+ section:
+ - title: Selling In-app Products
+ path: /training/in-app-billing/index.html
+ custom_link_attributes:
+ - description: "How to sell in-app products from your application using In-app Billing."
+ section:
+ - title: Preparing Your App
+ path: /training/in-app-billing/preparing-iab-app.html
+ - title: Establishing Products for Sale
+ path: /training/in-app-billing/list-iab-products.html
+ - title: Purchasing Products
+ path: /training/in-app-billing/purchase-iab-products.html
+ - title: Testing Your App
+ path: /training/in-app-billing/test-iab-app.html
+ - title: Maintaining Multiple APKs
+ path: /training/multiple-apks/index.html
+ custom_link_attributes:
+ - description: "How to publish your app on Google Play with separate APKs that target different devices, while using a single app listing."
+ section:
+ - title: Creating Multiple APKs for Different API Levels
+ path: /training/multiple-apks/api.html
+ - title: Creating Multiple APKs for Different Screen Sizes
+ path: /training/multiple-apks/screensize.html
+ - title: Creating Multiple APKs for Different GL Textures
+ path: /training/multiple-apks/texture.html
+ - title: Creating Multiple APKs with 2+ Dimensions
+ path: /training/multiple-apks/multiple.html
diff --git a/docs/html/training/basics/intents/filters.jd b/docs/html/training/basics/intents/filters.jd
index 221e31b..0b1f5e1 100644
--- a/docs/html/training/basics/intents/filters.jd
+++ b/docs/html/training/basics/intents/filters.jd
@@ -197,7 +197,7 @@
<pre>
// Create intent to deliver some kind of result data
-Intent result = new Intent("com.example.RESULT_ACTION", Uri.parse("content://result_uri");
+Intent result = new Intent("com.example.RESULT_ACTION", Uri.parse("content://result_uri"));
setResult(Activity.RESULT_OK, result);
finish();
</pre>
diff --git a/docs/html/training/sync-adapters/running-sync-adapter.jd b/docs/html/training/sync-adapters/running-sync-adapter.jd
index 194e94b..033450f 100644
--- a/docs/html/training/sync-adapters/running-sync-adapter.jd
+++ b/docs/html/training/sync-adapters/running-sync-adapter.jd
@@ -11,7 +11,6 @@
<ol>
<li><a href="#RunByMessage">Run the Sync Adapter When Server Data Changes</a>
<li><a href="#RunDataChange">Run the Sync Adapter When Content Provider Data Changes</a></li>
- <li><a href="#RunByNetwork">Run the Sync Adapter After a Network Message</a></li>
<li><a href="#RunPeriodic">Run the Sync Adapter Periodically</a></li>
<li><a href="#RunOnDemand">Run the Sync Adapter On Demand</a></li>
</ol>
@@ -69,15 +68,6 @@
content provider, detecting data changes may be more difficult.
</dd>
<dt>
- When the system sends out a network message
- </dt>
- <dd>
- Run a sync adapter when the Android system sends out a network message that keeps the
- TCP/IP connection open; this message is a basic part of the networking framework. Using
- this option is one way to run the sync adapter automatically. Consider using it in
- conjunction with interval-based sync adapter runs.
- </dd>
- <dt>
At regular intervals
</dt>
<dd>
@@ -283,60 +273,6 @@
...
}
</pre>
-<h2 id="RunByNetwork">Run the Sync Adapter After a Network Message</h2>
-<p>
- When a network connection is available, the Android system sends out a message
- every few seconds to keep the device's TCP/IP connection open. This message also goes to
- the {@link android.content.ContentResolver} of each app. By calling
- {@link android.content.ContentResolver#setSyncAutomatically setSyncAutomatically()},
- you can run the sync adapter whenever the {@link android.content.ContentResolver}
- receives the message.
-</p>
-<p>
- By scheduling your sync adapter to run when the network message is sent, you ensure that your
- sync adapter is always scheduled to run while the network is available. Use this option if you
- don't have to force a data transfer in response to data changes, but you do want to ensure
- your data is regularly updated. Similarly, you can use this option if you don't want a fixed
- schedule for your sync adapter, but you do want it to run frequently.
-</p>
-<p>
- Since the method
- {@link android.content.ContentResolver#setSyncAutomatically setSyncAutomatically()}
- doesn't disable {@link android.content.ContentResolver#addPeriodicSync addPeriodicSync()}, your
- sync adapter may be triggered repeatedly in a short period of time. If you do want to run
- your sync adapter periodically on a regular schedule, you should disable
- {@link android.content.ContentResolver#setSyncAutomatically setSyncAutomatically()}.
-</p>
-<p>
- The following code snippet shows you how to configure your
- {@link android.content.ContentResolver} to run your sync adapter in response to a network
- message:
-</p>
-<pre>
-public class MainActivity extends FragmentActivity {
- ...
- // Constants
- // Content provider authority
- public static final String AUTHORITY = "com.example.android.datasync.provider";
- // Account
- public static final String ACCOUNT = "default_account";
- // Global variables
- // A content resolver for accessing the provider
- ContentResolver mResolver;
- ...
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- ...
- // Get the content resolver for your app
- mResolver = getContentResolver();
- // Turn on automatic syncing for the default account and authority
- mResolver.setSyncAutomatically(ACCOUNT, AUTHORITY, true);
- ...
- }
- ...
-}
-</pre>
<h2 id="RunPeriodic">Run the Sync Adapter Periodically</h2>
<p>
You can run your sync adapter periodically by setting a period of time to wait between runs,
diff --git a/docs/html/training/system-ui/status.jd b/docs/html/training/system-ui/status.jd
index 9169efc..8e5b356 100755
--- a/docs/html/training/system-ui/status.jd
+++ b/docs/html/training/system-ui/status.jd
@@ -13,7 +13,6 @@
<li><a href="#40">Hide the Status Bar on Android 4.0 and Lower</a></li>
<li><a href="#41">Hide the Status Bar on Android 4.1 and Higher</a></li>
<li><a href="#behind">Make Content Appear Behind the Status Bar</a></li>
- <li><a href="#action-bar">Synchronize the Status Bar with Action Bar Transition</a></li>
</ol>
<!-- other docs (NOT javadocs) -->
@@ -102,7 +101,7 @@
super.onCreate(savedInstanceState);
// If the Android version is lower than Jellybean, use this call to hide
// the status bar.
- if (Build.VERSION.SDK_INT < 16) {
+ if (Build.VERSION.SDK_INT < 16) {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
@@ -192,33 +191,3 @@
view hierarchy when the content insets for a window have changed, to allow the window to
adjust its content accordingly. By overriding this method you can handle the
insets (and hence your app's layout) however you want. </p>
-
- <h2 id="action-bar">Synchronize the Status Bar with Action Bar Transition</h2>
-
- <p>On Android 4.1 and higher, to avoid resizing your layout when the action bar hides and
- shows, you can enable overlay mode for the action bar.
- When in overlay mode, your activity layout uses all the
- space available as if the action bar is not there and the system draws the action bar in
- front of your layout. This obscures some of the layout at the top, but now when the
- action bar hides or appears, the system does not need to resize your layout and the
- transition is seamless.</p>
-
- <p>To enable overlay mode for the action bar, you need to create a custom theme that
- extends an existing theme with an action bar and set the
- {@code android:windowActionBarOverlay} attribute
- to {@code true}. For more discussion of this topic, see
- <a href="{@docRoot}training/basics/actionbar/overlaying.html#EnableOverlay">
- Overlaying the Action Bar</a> in the <a href="{@docRoot}training/basics/actionbar/index.html">
- Adding the Action Bar</a> class.</p>
-
-
-<p>Then use
-{@link android.view.View#SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN},
-as described above,
-to set your activity layout to use the same screen area that's available when you've enabled
-{@link android.view.View#SYSTEM_UI_FLAG_FULLSCREEN}.
-
-When you want to hide the system UI, use
-{@link android.view.View#SYSTEM_UI_FLAG_FULLSCREEN}.
-This also hides the action bar (because {@code windowActionBarOverlay=”true”)} and does
-so with a coordinated animation when both hiding and showing the two.</p>
diff --git a/docs/html/training/wearables/data-layer/events.jd b/docs/html/training/wearables/data-layer/events.jd
index c797f68..9bed9d5 100644
--- a/docs/html/training/wearables/data-layer/events.jd
+++ b/docs/html/training/wearables/data-layer/events.jd
@@ -68,72 +68,100 @@
</pre>
-<h2 id="Listen">Listen for Data Layer Events </h2>
-<p>Because the data layer synchronizes and sends data across the handheld and
-wearable, you normally want to listen for important events, such as when data items
-are created, messages are received, or when the wearable and handset are connected.
+<h2 id="Listen">Listen for Data Layer Events</h2>
+<p>
+Because the data layer synchronizes and sends data across the handheld and
+wearable, it is usually necessary to listen for important events. Examples of
+such events include creation of data items and receipt of messages.
</p>
-<p>To listen for data layer events, you have two options:</p>
-
+<p>
+To listen for data layer events, you have two options:
+</p>
<ul>
- <li>Create a service that extends
- <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>.
- </li>
- <li>Create an activity that implements
- <a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html"><code>DataApi.DataListener</code></a>.
- </li>
+ <li>Create a service that extends <a href
+="https://developer.android.com/reference/com/google/android/gms/wearable/WearableListenerService.html">
+{@code WearableListenerService}</a>.</li>
+ <li>Create an activity that implements <a
+href="https://developer.android.com/reference/com/google/android/gms/wearable/DataApi.DataListener.html">
+{@code DataApi.DataListener}</a>.</li>
</ul>
-
-<p>With both these options, you override the data event callback methods for the events you
-are interested in handling.</p>
-
-<h3 id="listener-service">With a WearableListenerService</h3>
+<p>
+With both these options, you override the data event callback methods for the
+events you are interested in handling.
+</p>
+<h3>With a WearableListenerService</h3>
+<p>
+You typically create instances of this service in both your wearable and
+handheld apps. If you are not interested in data events in one of these apps,
+then you don't need to implement this service in that particular app.
+</p>
+<p>
+For example, you can have a handheld app that sets and gets data item objects
+and a wearable app that listens for these updates to update its UI. The
+wearable never updates any of the data items, so the handheld app doesn't
+listen for any data events from the wearable app.
+</p>
+<p>
+Some of the events you can listen for using <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html">
+{@code WearableListenerService}</a> are as follows:
+</p>
+<ul>
+ <li><a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)">
+{@code onDataChanged()}</a>:
+Whenever a data item object is created, deleted, or changed, the system triggers
+this callback on all connected nodes.
+</li>
+<li><a
+href="http://developer.android.com/reference/com/google/android/gms/wearable/WearableListenerService.html#onMessageReceived(com.google.android.gms.wearable.MessageEvent)">
+{@code onMessageReceived()}</a>: A message sent from a node triggers
+this callback on the target node.</li>
+<li><a
+href="https://developers.google.com/android/reference/com/google/android/gms/wearable/WearableListenerService.html#onCapabilityChanged(com.google.android.gms.wearable.CapabilityInfo)">
+{@code onCapabilityChanged()}</a>:
+When a capability that an instance of your app advertises becomes available
+on the network, that event triggers this callback. If you're looking for a
+nearby node you can query the
+<a
+href="https://developers.google.com/android/reference/com/google/android/gms/wearable/Node.html#isNearby()">
+{@code isNearby()}</a> method of the nodes provided in the callback.</li>
<p>
-You typically create instances of this service in both your wearable and handheld apps. If you
-are not interested in data events in one of these apps, then you don't need to implement this
-service in that particular app.</p>
-
-<p>For example, you can have a handheld app that sets and gets data item objects and a wearable app
-that listens for these updates to update it's UI. The wearable never updates any of the data items,
-so the handheld app doesn't listen for any data events from the wearable app.</p>
-
-<p>You can listen for the following events with
-<a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>:</p>
-
-<ul>
- <li><a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)"><code>onDataChanged()</code></a>
-- Called when data item objects are created, changed, or deleted. An event on one side of a connection
-triggers this callback on both sides.</li>
- <li><a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onMessageReceived(com.google.android.gms.wearable.MessageEvent)"><code>onMessageReceived()</code></a>
-- A message sent from one side of a connection triggers this callback on the other side of the connection.</li>
- <li><a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onMessageReceived(com.google.android.gms.wearable.MessageEvent)"><code>onPeerConnected()</code></a>
- and <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onPeerDisconnected(com.google.android.gms.wearable.Node)"><code>onPeerDisconnected()</code></a> -
- Called when the connection with the handheld or wearable is connected or disconnected.
- Changes in connection state on one side of the connection trigger these callbacks on both sides
- of the connection.
- </li>
+In addition to those on this list, you can listen for events from
+<a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener">
+{@code ChannelApi.ChannelListener}</a>, such as
+<a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html#onChannelOpened(com.google.android.gms.wearable.Channel)">
+{@code onChannelOpened()}</a>.
+</p>
</ul>
-
-<p>To create a <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>:</p>
+<p>To create a <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>, follow these steps:</p>
<ol>
<li>Create a class that extends
- <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>.
+ <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>.
</li>
<li>Listen for the events that you're interested in, such as
- <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)"><code>onDataChanged()</code></a>.
+ <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)">
+<code>onDataChanged()</code></a>.
</li>
- <li>Declare an intent filter in your Android manifest to notify the system about your
- <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>.
- This allows the system to bind your service as needed.
+ <li>Declare an intent filter in your Android manifest to notify the system
+about your
+ <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>
+WearableListenerService</code></a>.
+ This declaration allows the system to bind your service as needed.
</li>
</ol>
<p>The following example shows how to implement a simple
- <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>:
+ <a
+href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>
+WearableListenerService</code></a>:
</p>
-
<pre>
public class DataLayerListenerService extends WearableListenerService {
@@ -146,7 +174,7 @@
if (Log.isLoggable(TAG, Log.DEBUG)) {
Log.d(TAG, "onDataChanged: " + dataEvents);
}
- final List<DataEvent> events = FreezableUtils
+ final List events = FreezableUtils
.freezeIterable(dataEvents);
GoogleApiClient googleApiClient = new GoogleApiClient.Builder(this)
@@ -179,85 +207,139 @@
}
</pre>
-<p>Here's the corresponding intent filter in the Android manifest file:</p>
+<p>
+The next section explains how to use an intent filter with this listener.
+</p>
+
+<h3>Using filters with WearableListenerService</h3>
+
+<p>
+An intent filter for the
+<a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html">
+{@code WearableListenerService}</a> example shown in the previous section might look like this:
<pre>
<service android:name=".DataLayerListenerService">
- <intent-filter>
- <action android:name="com.google.android.gms.wearable.BIND_LISTENER" />
+ <intent-filter>
+ <action android:name="com.google.android.gms.wearable.DATA_CHANGED" />
+ <data android:scheme="wear" android:host="*"
+ android:path="/start-activity" />
</intent-filter>
</service>
</pre>
-
-<h4>Permissions within Data Layer Callbacks</h4>
-
<p>
-To deliver callbacks to your application for data layer events, Google Play services
-binds to your <a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html"><code>WearableListenerService</code></a>,
-and calls your callbacks via IPC. This has the consequence
-that your callbacks inherit the permissions of the calling process.</p>
-
-<p>If you try to perform a privileged operation within a callback, the security check fails because your callback is
-running with the identity of the calling process, instead of the identity of your app's
-process.</p>
-
-<p>To fix this, call {@link android.os.Binder#clearCallingIdentity} </a>,
-to reset identity after crossing the IPC boundary, and then restore identity with
-{@link android.os.Binder#restoreCallingIdentity restoreCallingIdentity()} when
-you've completed the privileged operation:
+In this filter, the {@code DATA_CHANGED} action replaces the
+previously recommended {@code BIND_LISTENER} action so that only specific
+events wake or launch your application. This change improves system efficiency
+and reduces battery consumption and other overhead associated with your
+application. In this example, the watch listens for the
+{@code /start-activity} data item, and the
+phone listens for the {@code /data-item-received} message response.
+</p>
+<p>
+Standard Android filter matching rules apply. You can specify multiple services
+per manifest, multiple intent filters per service, multiple actions per filter,
+and multiple data stanzas per filter. Filters can match on a wildcard host or on
+a specific one. To match on a wildcard host, use {@code host="*"}. To match
+on a specific host, specify {@code host=<node_id>}.
</p>
-<pre>
-long token = Binder.clearCallingIdentity();
-try {
- performOperationRequiringPermissions();
-} finally {
- Binder.restoreCallingIdentity(token);
-}
-</pre>
-
-<h3 id="Listen">With a Listener Activity</h3>
-
<p>
-If your app only cares about data layer events when the user is interacting
-with the app and does not need a long-running service to handle every data
-change, you can listen for events in an activity by implementing one or more
-of the following interfaces:
+You can also match a literal path or path prefix. If you are matching by path
+or path prefix, you must specify a wildcard or specific host.
+If you do not do so, the system ignores the path you specified.
+</p>
+<p>
+For more information on the filter types that Wear supports, see the
+API reference documentation for <a
+href="https://developers.google.com/android/reference/com/google/android/gms/wearable/WearableListenerService">
+{@code WearableListenerService}</a>.
+
+</p>
+<p>
+For more information on data filters and matching rules, see the API reference
+documentation for the <a
+href="{@docRoot}guide/topics/manifest/data-element.html">{@code data}</a>
+manifest element.
+</p>
+
+
+<p>When matching intent filters, there are two important rules to remember:</p>
<ul>
- <li><a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html"><code>DataApi.DataListener</code></a></li>
- <li><a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.MessageListener.html"><code>MessageApi.MessageListener</code></a></li>
- <li><a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.NodeListener.html"><code>NodeApi.NodeListener</code></a></li>
+ <li>If a scheme is not specified for the intent filter, the system ignores
+ all the other URI attributes.</li>
+ <li>If no host is specified for the filter, the system ignores the
+ port attribute and all the path attributes.</li>
</ul>
+
+<h3>With a listener activity</h3>
+<p>
+If your app only cares about data-layer events when the user is interacting
+with the app, it may not need a long-running service to handle every data
+change. In such a case, you can listen for events in an activity by
+implementing one or more of the following interfaces:
</p>
+<ul>
+ <li><a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html"><code>
+ DataApi.DataListener</code></a></li>
+
+ <li><a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.MessageListener.html">
+ <code>MessageApi.MessageListener</code></a></li>
+
+ <li><a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/CapabilityApi.CapabilityListener.html">{@code CapabilityApi.CapabilityListener}</a></li>
+</ul>
<p>To create an activity that listens for data events:</p>
<ol>
<li>Implement the desired interfaces.</li>
-<li>In {@link android.app.Activity#onCreate}, create an instance of
-<a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.html"><code>GoogleApiClient</code></a>
-to work with the Data Layer API.
+<li>In {@link android.app.Activity#onCreate onCreate()}, create an instance of
+<a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.html"><code>GoogleApiClient</code>
+</a>to work with the Data Layer API.</li>
+
<li>
-In {@link android.app.Activity#onStart onStart()}, call <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.html#connect()"><code>connect()</code></a> to connect the client to Google Play services.
+In {@link android.app.Activity#onStart onStart()}, call <a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.html#connect()">
+<code>connect()</code></a> to connect the client to Google Play services.
</li>
+
<li>When the connection to Google Play services is established, the system calls
<a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks.html#onConnected(android.os.Bundle)"><code>onConnected()</code></a>. This is where you call
-<a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.DataApi.DataListener)"><code>DataApi.addListener()</code></a>,
- <a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.MessageApi.MessageListener)"><code>MessageApi.addListener()</code></a>,
- or <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.NodeApi.NodeListener)"><code>NodeApi.addListener()</code></a>
- to notify Google Play services that your activity is interested in listening for data layer events.
-</li>
+
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.DataApi.DataListener)">
+<code>DataApi.addListener()</code></a>,
+
+<a href="{@docRoot}android/reference/com/google/android/gms/wearable/CapabilityApi.CapabilityListener">
+<code>MessageApi.addListener()</code></a>, or
+
+<a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/CapabilityApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient,%20com.google.android.gms.wearable.CapabilityApi.CapabilityListener,%20android.net.Uri,%20int)">
+{@code CapabilityApi.addListener()}</a> to notify Google Play services that your activity is
+interested in listening for data layer events.</li>
+
<li>In {@link android.app.Activity#onStop onStop()}, unregister any listeners with
<a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.DataApi.DataListener)"><code>DataApi.removeListener()</code></a>,
-<a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.MessageApi.MessageListener)"><code>MessageApi.removeListener()</code></a>,
-or <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.NodeApi.NodeListener)"><code>NodeApi.removeListener()</code></a>.
-</li>
-<li>Implement <a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)"><code>onDataChanged()</code>,
- <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.NodeListener.html#onPeerConnected(com.google.android.gms.wearable.Node)"><code>onMessageReceived()</code></a>,
- <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.NodeListener.html#onPeerConnected(com.google.android.gms.wearable.Node)"><code>onPeerConnected()</code></a>, and
- <a href="{@docRoot}reference/com/google/android/gms/wearable/NodeApi.NodeListener.html#onPeerDisconnected(com.google.android.gms.wearable.Node)"><code>onPeerDisconnected()</code></a>, depending on the interfaces that you implemented.
-</li>
+<a href="{@docRoot}reference/com/google/android/gms/wearable/MessageApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.MessageApi.MessageListener)"><code>MessageApi.removeListener()</code></a>, or
+<a href="http://developer.android.com/reference/com/google/android/gms/wearable/MessageApi.html#removeListener(com.google.android.gms.common.api.GoogleApiClient,%20com.google.android.gms.wearable.MessageApi.MessageListener)">
+{@code CapabilityApi.removeListener()}</a>.</li>
+
+
+<p>An alternative to adding listeners in
+<a href="{@docRoot}reference/com/google/android/gms/common/api/GoogleApiClient.ConnectionCallbacks.html#onConnected(android.os.Bundle)"><code>onConnected()</code></a>
+and removing them in
+{@link android.app.Activity#onStop onStop()} is to add a filtered listener in an activity’s {@link android.app.Activity#onResume onResume()} and
+remove it in {@link android.app.Activity#onPause onPause()}, so as to only receive data that is relevant to the
+current application state.</p>
+
+
+<li>Implement
+<a href="{@docRoot}reference/com/google/android/gms/wearable/DataApi.DataListener.html#onDataChanged(com.google.android.gms.wearable.DataEventBuffer)">
+<code>onDataChanged()</code></a>,
+ <a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/MessageApi.MessageListener.html#onMessageReceived(com.google.android.gms.wearable.MessageEvent)">
+ <code>onMessageReceived()</code></a>,
+ <a href="https://developers.google.com/android/reference/com/google/android/gms/wearable/WearableListenerService.html#onCapabilityChanged(com.google.android.gms.wearable.CapabilityInfo)">
+{@code onCapabilityChanged()}</a>,
+or methods from <a href="http://developer.android.com/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html">
+Channel API listener methods</a>, depending on the interfaces that you implemented.</li>
</ol>
<p>Here's an example that implements
@@ -318,3 +400,19 @@
}
}
</pre>
+<h3>Using Filters with Listener Activities</h3>
+<p>
+Just as you can specify intent filters for manifest-based
+<a href="{@docRoot}reference/com/google/android/gms/wearable/WearableListenerService.html">
+<code>WearableListenerService</code></a> objects, you can also use intent filters when registering a
+listener through the Wearable API. The same rules are applicable to both
+API-based listeners manifest-based listeners.
+</p>
+
+<p>
+A common pattern is to register a listener with a specific path or path prefix
+in an activity’s{@link android.app.Activity#onResume onResume()} method, and to
+remove the listener in the activity’s {@link android.app.Activity#onPause onPause()} method.
+Implementing listeners in this fashion allows your application to more selectively receive events,
+improving its design and efficiency.
+</p>
diff --git a/docs/html/wear/_book.yaml b/docs/html/wear/_book.yaml
new file mode 100644
index 0000000..35b9e2e
--- /dev/null
+++ b/docs/html/wear/_book.yaml
@@ -0,0 +1,46 @@
+toc:
+- title: Get Started
+ path: /wear/preview/start.html
+
+- title: UI Overview
+ path: /wear/design/user-interface.html
+
+- title: Design Principles
+ path: /wear/design/index.html
+
+- title: Creating Notifications for Android Wear
+ path: /wear/notifications/creating.html
+
+- title: Receiving Voice Input from a Notification
+ path: /wear/notifications/remote-input.html
+
+- title: Adding Pages to a Notification
+ path: /wear/notifications/pages.html
+
+- title: Stacking Notifications
+ path: /wear/notifications/stacks.html
+
+- title: Notification Reference
+ path: /reference/android/preview/support/package-summary.html
+ section:
+ - title: android.preview.support.v4.app
+ section:
+ - title: NotificationManagerCompat
+ path: /reference/android/preview/support/v4/app/NotificationManagerCompat.html
+ - title: android.preview.support.wearable.notifications
+ section:
+ - title: RemoteInput
+ path: /reference/android/preview/support/wearable/notifications/RemoteInput.html
+ - title: RemoteInput.Builder
+ path: /reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html
+ - title: WearableNotifications
+ path: /reference/android/preview/support/wearable/notifications/WearableNotifications.html
+ - title: WearableNotifications.Action
+ path: /reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html
+ - title: WearableNotifications.Action.Builder
+ path: /reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html
+ - title: WearableNotifications.Builder
+ path: /reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html
+
+- title: License Agreement
+ path: /wear/license.html
diff --git a/docs/image_sources/preview/features/bundles-orig.png b/docs/image_sources/preview/features/bundles-orig.png
new file mode 100644
index 0000000..298d1c0
--- /dev/null
+++ b/docs/image_sources/preview/features/bundles-orig.png
Binary files differ
diff --git a/docs/image_sources/preview/features/inline-reply_orig.png b/docs/image_sources/preview/features/inline-reply_orig.png
new file mode 100644
index 0000000..ae7cd30
--- /dev/null
+++ b/docs/image_sources/preview/features/inline-reply_orig.png
Binary files differ
diff --git a/docs/image_sources/preview/features/inline-type-reply-orig.png b/docs/image_sources/preview/features/inline-type-reply-orig.png
new file mode 100644
index 0000000..bb176f8
--- /dev/null
+++ b/docs/image_sources/preview/features/inline-type-reply-orig.png
Binary files differ
diff --git a/docs/image_sources/preview/features/mw-splitscreen-orig.png b/docs/image_sources/preview/features/mw-splitscreen-orig.png
new file mode 100644
index 0000000..658c7f9
--- /dev/null
+++ b/docs/image_sources/preview/features/mw-splitscreen-orig.png
Binary files differ