Doc change: updates to mm pages.
Change-Id: I676cb362c3efc0cff5ebb1c494a03bf1c117f0e5
diff --git a/docs/html-intl/intl/es/index.jd b/docs/html-intl/intl/es/index.jd
index e23c99f..7e3c1d0 100644
--- a/docs/html-intl/intl/es/index.jd
+++ b/docs/html-intl/intl/es/index.jd
@@ -7,32 +7,29 @@
<!-- <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 active" style="background-color: #455A64;">
-<a href="/preview/index.html">
- <div class="wrap" style="max-width:1100px;">
+<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
+<a href="about/versions/marshmallow/index.html">
+ <div class="wrap" style="max-width:1100px;margin-top:0">
<div class="cols dac-hero-content">
- <div class="col-10of16 col-push-6of16 dac-hero-figure">
- <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png"
- srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
- {@docRoot}images/home/devices-hero_620px_2x.png 2x">
+ <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
</div>
- <div class="col-6of16 col-pull-10of16">
+ <div class="col-8of16 col-pull-7of16">
<div class="dac-hero-tag"></div>
- <h1 class="dac-hero-title">Android M Developer Preview</h1>
- <p class="dac-hero-description">Prepárese para la próxima versión de
-Android. Pruebe sus aplicaciones en Nexus 5, 6, 9 y Player. </p>
+ <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}preview/index.html">
+ <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
- ¡Empiece hoy mismo!</a><br>
- <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
- <span class="dac-sprite dac-auto-chevron"></span>
- Developer Preview 2</a>
- </a>
+ Learn more
+ </a><br>
+ </div>
</div>
</div>
</div>
diff --git a/docs/html-intl/intl/ja/index.jd b/docs/html-intl/intl/ja/index.jd
index 3084b24..6e375cd 100644
--- a/docs/html-intl/intl/ja/index.jd
+++ b/docs/html-intl/intl/ja/index.jd
@@ -7,33 +7,29 @@
<!-- <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 active" style="background-color: #455A64;">
-<a href="/preview/index.html">
- <div class="wrap" style="max-width:1100px;">
+<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
+<a href="about/versions/marshmallow/index.html">
+ <div class="wrap" style="max-width:1100px;margin-top:0">
<div class="cols dac-hero-content">
- <div class="col-10of16 col-push-6of16 dac-hero-figure">
- <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png"
- srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
- {@docRoot}images/home/devices-hero_620px_2x.png 2x">
+ <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
</div>
- <div class="col-6of16 col-pull-10of16">
+ <div class="col-8of16 col-pull-7of16">
<div class="dac-hero-tag"></div>
- <h1 class="dac-hero-title">Android M Developer Preview</h1>
- <p class="dac-hero-description">次期バージョンの Android に向けて準備しましょう。
- Nexus 5、6、9、Nexus Player でアプリをテストします。 </p>
+ <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}preview/index.html">
+ <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
- スタートガイド
+ Learn more
</a><br>
- <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
- <span class="dac-sprite dac-auto-chevron"></span>
- Developer Preview 2</a>
-
+ </div>
</div>
</div>
</div>
diff --git a/docs/html-intl/intl/ko/index.jd b/docs/html-intl/intl/ko/index.jd
index 34c14ec..f17191a 100644
--- a/docs/html-intl/intl/ko/index.jd
+++ b/docs/html-intl/intl/ko/index.jd
@@ -7,32 +7,29 @@
<!-- <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 active" style="background-color: #455A64;">
-<a href="/preview/index.html">
- <div class="wrap" style="max-width:1100px;">
+<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
+<a href="about/versions/marshmallow/index.html">
+ <div class="wrap" style="max-width:1100px;margin-top:0">
<div class="cols dac-hero-content">
- <div class="col-10of16 col-push-6of16 dac-hero-figure">
- <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png"
- srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
- {@docRoot}images/home/devices-hero_620px_2x.png 2x">
+ <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
</div>
- <div class="col-6of16 col-pull-10of16">
+ <div class="col-8of16 col-pull-7of16">
<div class="dac-hero-tag"></div>
- <h1 class="dac-hero-title">Android M Developer Preview</h1>
- <p class="dac-hero-description">Android의 다음 버전을 만나볼 준비가
- 되셨습니까? 여러분의 앱을 Nexus 5, 6, 9 및 Player에서 테스트해보십시오. </p>
+ <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}preview/index.html">
+ <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
- 지금 시작하세요!
+ Learn more
</a><br>
- <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
- <span class="dac-sprite dac-auto-chevron"></span>
- Developer Preview 2</a>
+ </div>
</div>
</div>
</div>
diff --git a/docs/html-intl/intl/pt-br/index.jd b/docs/html-intl/intl/pt-br/index.jd
index 24dd2fe..3150b2f 100644
--- a/docs/html-intl/intl/pt-br/index.jd
+++ b/docs/html-intl/intl/pt-br/index.jd
@@ -7,31 +7,29 @@
<!-- <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 active" style="background-color: #455A64;">
-<a href="/preview/index.html">
- <div class="wrap" style="max-width:1100px;">
+<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
+<a href="about/versions/marshmallow/index.html">
+ <div class="wrap" style="max-width:1100px;margin-top:0">
<div class="cols dac-hero-content">
- <div class="col-10of16 col-push-6of16 dac-hero-figure">
- <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png"
- srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
- {@docRoot}images/home/devices-hero_620px_2x.png 2x">
+ <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
</div>
- <div class="col-6of16 col-pull-10of16">
+ <div class="col-8of16 col-pull-7of16">
<div class="dac-hero-tag"></div>
- <h1 class="dac-hero-title">Android M Developer Preview</h1>
- <p class="dac-hero-description">Prepare-se para a próxima versão do
- Android. Teste os aplicativos no Nexus 5, 6, 9 e Player. </p>
+ <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}preview/index.html">
+ <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
- Comece!</a><br>
- <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
- <span class="dac-sprite dac-auto-chevron"></span>
- Developer Preview 2</a>
+ Learn more
+ </a><br>
+ </div>
</div>
</div>
</div>
diff --git a/docs/html-intl/intl/ru/index.jd b/docs/html-intl/intl/ru/index.jd
index 3fe65ea..509db5a 100644
--- a/docs/html-intl/intl/ru/index.jd
+++ b/docs/html-intl/intl/ru/index.jd
@@ -7,33 +7,29 @@
<!-- <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 active" style="background-color: #455A64;">
-<a href="/preview/index.html">
- <div class="wrap" style="max-width:1100px;">
+<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
+<a href="about/versions/marshmallow/index.html">
+ <div class="wrap" style="max-width:1100px;margin-top:0">
<div class="cols dac-hero-content">
- <div class="col-10of16 col-push-6of16 dac-hero-figure">
- <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png"
- srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
- {@docRoot}images/home/devices-hero_620px_2x.png 2x">
+ <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
</div>
- <div class="col-6of16 col-pull-10of16">
+ <div class="col-8of16 col-pull-7of16">
<div class="dac-hero-tag"></div>
- <h1 class="dac-hero-title">Android M Developer Preview</h1>
- <p class="dac-hero-description">Подготовьтесь к выходу следующей версии
- платформы Android. Протестируйте ваши приложения на устройствах Nexus
- 5, 6, 9 и Player. </p>
+ <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}preview/index.html">
+ <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
- Итак, приступим!
+ Learn more
</a><br>
- <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
- <span class="dac-sprite dac-auto-chevron"></span>
- Developer Preview 2</a>
+ </div>
</div>
</div>
</div>
diff --git a/docs/html-intl/intl/zh-cn/index.jd b/docs/html-intl/intl/zh-cn/index.jd
index bbd7fbe..863b43c 100644
--- a/docs/html-intl/intl/zh-cn/index.jd
+++ b/docs/html-intl/intl/zh-cn/index.jd
@@ -7,32 +7,29 @@
<!-- <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 active" style="background-color: #455A64;">
-<a href="/preview/index.html">
- <div class="wrap" style="max-width:1100px;">
+<article class="dac-expand dac-hero dac-invert dac-darken mprev active" style="background-color: #75d1ff;">
+<a href="about/versions/marshmallow/index.html">
+ <div class="wrap" style="max-width:1100px;margin-top:0">
<div class="cols dac-hero-content">
- <div class="col-10of16 col-push-6of16 dac-hero-figure">
- <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png"
- srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
- {@docRoot}images/home/devices-hero_620px_2x.png 2x">
+ <div class="col-8of16 col-push-6of16 dac-hero-figure mprev">
</div>
- <div class="col-6of16 col-pull-10of16">
+ <div class="col-8of16 col-pull-7of16">
<div class="dac-hero-tag"></div>
- <h1 class="dac-hero-title">Android M Developer Preview</h1>
- <p class="dac-hero-description">准备迎接 Android 的下一版本。在 Nexus 5、
- 6、9 和 Player 中测试应用。 </p>
+ <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}preview/index.html">
+ <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/index.html">
<span class="dac-sprite dac-auto-chevron"></span>
- 开始!</a><br>
- <a class="dac-hero-cta" href="{@docRoot}preview/support.html">
- <span class="dac-sprite dac-auto-chevron"></span>
- Developer Preview 2</a>
- </a>
+ Learn more
+ </a><br>
+ </div>
</div>
</div>
</div>
diff --git a/docs/html/about/about_toc.cs b/docs/html/about/about_toc.cs
index fed6c8d..a7b03f0 100644
--- a/docs/html/about/about_toc.cs
+++ b/docs/html/about/about_toc.cs
@@ -8,7 +8,6 @@
Android 6.0 APIs</a></li>
<li><a href="<?cs var:toroot ?>about/versions/marshmallow/android-6.0-changes.html">
Android 6.0 Changes</a></li>
- <li><a href="<?cs var:toroot ?>about/versions/marshmallow/testing.html">Testing</a></li>
<li><a href="<?cs var:toroot ?>about/versions/marshmallow/samples.html">Samples</a></li>
<li><a href="<?cs var:toroot ?>about/versions/marshmallow/download.html">Downloads</a></li>
</li>
diff --git a/docs/html/about/versions/marshmallow/android-6.0-changes.jd b/docs/html/about/versions/marshmallow/android-6.0-changes.jd
index 33cfa11..cd13098 100644
--- a/docs/html/about/versions/marshmallow/android-6.0-changes.jd
+++ b/docs/html/about/versions/marshmallow/android-6.0-changes.jd
@@ -1,7 +1,8 @@
page.title=Android 6.0 Changes
-page.keywords=androidm,sdk,compatibility,marshmallow
-page.tags=androidm,marshmallow
+page.keywords=marshmallow,android60,sdk,compatibility
+meta.tags=marshmallow,api23,android60,androidm
sdk.platform.apiLevel=23
+page.image=images/cards/samples-new_2x.png
@jd:body
<div id="qv-wrapper">
@@ -11,17 +12,17 @@
<ol id="toc44" class="hide-nested">
<li><a href="#behavior-runtime-permissions">Runtime Permissions</a></li>
- <li><a href="#behavior-power">Power-Saving Optimizations</a></li>
- <li><a href="#behavior-adoptable-storage">Adoptable Storage Devices</a></li>
+ <li><a href="#behavior-power">Doze and App Standby</a></li>
<li><a href="#behavior-apache-http-client">Apache HTTP Client Removal</a></li>
- <li><a href="#behavior-audiomanager-Changes">AudioManager Changes</a></li>
+ <li><a href="#behavior-apache-http-client">BoringSSL</a></li>
+ <li><a href="#behavior-hardware-id">Access to Hardware Identifiers</a></li>
<li><a href="#behavior-notifications">Notifications</a></li>
+ <li><a href="#behavior-audiomanager-Changes">AudioManager Changes</a></li>
<li><a href="#behavior-test-selection">Text Selection</a></li>
<li><a href="#behavior-keystore">Android Keystore Changes</a></li>
<li><a href="#behavior-network">Wi-Fi and Networking Changes</a></li>
<li><a href="#behavior-camera">Camera Service Changes</a></li>
<li><a href="#behavior-runtime">Runtime</a></li>
- <li><a href="#behavior-hardware-id">Access to Hardware Identifier</a></li>
<li><a href="#behavior-apk-validation">APK Validation</a></li>
<li><a href="#behavior-usb">USB Connection</a></li>
<li><a href="#behavior-afw">Android for Work Changes</a></li>
@@ -67,8 +68,9 @@
Permissions</a> training page. For tips on how to assess the impact on your app,
see the <a href="{@docRoot}about/versions/marshmallow/testing.html">Testing Guide</a></p>
-<h2 id="behavior-power">Power-Saving Optimizations</h2>
-<p>This release introduces new power-saving optimizations for idle devices and apps.</p>
+<h2 id="behavior-power">Doze and App Standby</h2>
+<p>This release introduces new power-saving optimizations for idle devices and apps. These
+features affect all apps so make sure to test your apps in these new modes.</p>
<ul>
<li><strong>Doze</strong>: If a user unplugs a device and leaves it stationary, with its screen off,
for a period of time, the device goes into <em>Doze</em> mode, where it attempts to keep the system
@@ -83,55 +85,9 @@
<p>To learn more about these power-saving changes, see
<a href="{@docRoot}training/monitoring-device-state/doze-standby.html">Optimizing for Doze and App Standby</a>.</p>
-<h2 id="behavior-adoptable-storage">Adoptable Storage Devices</h2>
-<p>
-With this release, users can <em>adopt</em> external storage devices such as SD cards. Adopting an
-external storage device encrypts and formats the device to behave like internal storage. This
-feature allows users to move both apps and private data of those apps between storage devices. When
-moving apps, the system respects the
-<a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a>
-preference in the manifest.</p>
-
-<p>If your app accesses the following APIs or fields, be aware that the file paths they return
-will dynamically change when the app is moved between internal and external storage devices.
-When building file paths, it is strongly recommended that you always call these APIs dynamically.
-Don’t use hardcoded file paths or persist fully-qualified file paths that were built previously.</p>
-
-<ul>
-<li>{@link android.content.Context} methods:
- <ul>
- <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
- <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
- <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
- <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
- <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
- <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
- <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
- <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
- <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
- </ul>
-</li>
-<li>{@link android.content.pm.ApplicationInfo} fields:
- <ul>
- <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
- <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
- <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
- <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
- <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
- <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
- </ul>
-</li>
-</ul>
-
-<p>To debug this feature, you can enable adoption of a USB drive that is
-connected to an Android device through a USB On-The-Go (OTG) cable, by running this command:</p>
-
-<pre class="no-prettyprint">
-$ adb shell sm set-force-adoptable true
-</pre>
-
<h2 id="behavior-apache-http-client">Apache HTTP Client Removal</h2>
-<p>This release removes support for the Apache HTTP client. If your app is using this client and
+
+<p>Android 6.0 release removes support for the Apache HTTP client. If your app is using this client and
targets Android 2.3 (API level 9) or higher, use the {@link java.net.HttpURLConnection} class
instead. This API is more efficient because it reduces network use through transparent compression
and response caching, and minimizes power consumption. To continue using the Apache HTTP APIs, you
@@ -142,6 +98,9 @@
useLibrary 'org.apache.http.legacy'
}
</pre>
+
+<h2 id="boringSSL">BoringSSL </h2>
+
<p>Android is moving away from OpenSSL to the
<a href="https://boringssl.googlesource.com/boringssl/" class="external-link">BoringSSL</a>
library. If you’re using the Android NDK in your app, don't link against cryptographic libraries
@@ -151,6 +110,44 @@
native code to call the Java cryptography APIs via JNI or to statically link against a
cryptography library of your choice.</p>
+<h2 id="behavior-hardware-id">Access to Hardware Identifier</h2>
+<p>To provide users with greater data protection, starting in this release, Android
+removes programmatic access to the device’s local hardware identifier for
+apps using the Wi-Fi and Bluetooth APIs. The
+{@link android.net.wifi.WifiInfo#getMacAddress() WifiInfo.getMacAddress()} and the
+{@link android.bluetooth.BluetoothAdapter#getAddress() BluetoothAdapter.getAddress()} methods
+now return a constant value of {@code 02:00:00:00:00:00}.</p>
+
+<p>To access the hardware identifiers of nearby external devices via Bluetooth and Wi-Fi scans,
+your app must now have the following permissions:</p>
+<ul>
+<li>{@link android.net.wifi.WifiManager#getScanResults() WifiManager.getScanResults()}:
+Your app must have {@link android.Manifest.permission#ACCESS_FINE_LOCATION} or
+{@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permission.</li>
+<li>{@link android.bluetooth.BluetoothDevice#ACTION_FOUND BluetoothDevice.ACTION_FOUND}:
+Your app must have {@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permission.</li>
+<li>{@link android.bluetooth.le.BluetoothLeScanner#startScan(android.bluetooth.le.ScanCallback)
+BluetoothLeScanner.startScan()}: Your app must have
+{@link android.Manifest.permission#ACCESS_FINE_LOCATION} or
+{@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permission.</li>
+</ul>
+
+<p class="note"><strong>Note</strong>: When a device running Android 6.0 (API level 23) initiates a
+background Wi-Fi or Bluetooth scan, the operation is visible to external devices as
+originating from a randomized MAC address.</p>
+
+<h2 id="behavior-notifications">Notifications</h2>
+<p>
+This release removes the {@code Notification.setLatestEventInfo()} method. Use the
+{@link android.app.Notification.Builder} class instead to construct notifications. To update a
+notification repeatedly, reuse the {@link android.app.Notification.Builder} instance. Call the
+{@link android.app.Notification.Builder#build()} method to get
+updated {@link android.app.Notification} instances.
+</p>
+<p>The {@code adb shell dumpsys notification} command no longer prints out your notification text.
+Use the {@code adb shell dumpsys notification --noredact} command instead to print out the text
+in a notification object.</p>
+
<h2 id="behavior-audiomanager-Changes">AudioManager Changes</h2>
<p>Setting the volume directly or muting specific streams via the {@link android.media.AudioManager}
class is no longer supported. The {@link android.media.AudioManager#setStreamSolo(int,boolean)
@@ -163,17 +160,6 @@
{@link android.media.AudioManager#ADJUST_MUTE} or
{@link android.media.AudioManager#ADJUST_UNMUTE}.</p>
-<h2 id="behavior-notifications">Notifications</h2>
-<p>
-This release removes the {@code Notification.setLatestEventInfo()} method. Use the
-{@link android.app.Notification.Builder} class instead to construct notifications. To update a
-notification repeatedly, reuse the {@link android.app.Notification.Builder} instance. Call the
-{@link android.app.Notification.Builder#build()} method to get
-updated {@link android.app.Notification} instances.
-</p>
-<p>The {@code adb shell dumpsys notification} command no longer prints out your notification text.
-Use the {@code adb shell dumpsys notification --noredact} command instead to print out the text
-in a notification object.</p>
<h2 id="behavior-test-selection">Text Selection</h2>
@@ -319,32 +305,6 @@
call returns. To learn more about handling text relocations, see this
<a href="https://wiki.gentoo.org/wiki/Hardened/Textrels_Guide" class="external-link">guide</a>.</p>
-<h2 id="behavior-hardware-id">Access to Hardware Identifier</h2>
-<p>To provide users with greater data protection, starting in this release, Android
-removes programmatic access to the device’s local hardware identifier for
-apps using the Wi-Fi and Bluetooth APIs. The
-{@link android.net.wifi.WifiInfo#getMacAddress() WifiInfo.getMacAddress()} and the
-{@link android.bluetooth.BluetoothAdapter#getAddress() BluetoothAdapter.getAddress()} methods
-now return a constant value of {@code 02:00:00:00:00:00}.</p>
-
-<p>To access the hardware identifiers of nearby external devices via Bluetooth and Wi-Fi scans,
-your app must now have the following permissions:</p>
-<ul>
-<li>{@link android.net.wifi.WifiManager#getScanResults() WifiManager.getScanResults()}:
-Your app must have {@link android.Manifest.permission#ACCESS_FINE_LOCATION} or
-{@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permission.</li>
-<li>{@link android.bluetooth.BluetoothDevice#ACTION_FOUND BluetoothDevice.ACTION_FOUND}:
-Your app must have {@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permission.</li>
-<li>{@link android.bluetooth.le.BluetoothLeScanner#startScan(android.bluetooth.le.ScanCallback)
-BluetoothLeScanner.startScan()}: Your app must have
-{@link android.Manifest.permission#ACCESS_FINE_LOCATION} or
-{@link android.Manifest.permission#ACCESS_COARSE_LOCATION} permission.</li>
-</ul>
-
-<p class="note"><strong>Note</strong>: When a device running Android 6.0 (API level 23) initiates a
-background Wi-Fi or Bluetooth scan, the operation is visible to external devices as
-originating from a randomized MAC address.</p>
-
<h2 id="behavior-apk-validation">APK Validation</h2>
<p>The platform now performs stricter validation of APKs. An APK is considered corrupt if a file is
declared in the manifest but not present in the APK itself. An APK must be re-signed if any of the
diff --git a/docs/html/about/versions/marshmallow/android-6.0.jd b/docs/html/about/versions/marshmallow/android-6.0.jd
index dcff6e9..13eb40f 100644
--- a/docs/html/about/versions/marshmallow/android-6.0.jd
+++ b/docs/html/about/versions/marshmallow/android-6.0.jd
@@ -3,6 +3,7 @@
page.tags=androidm,marshmallow
sdk.platform.apiLevel=23
page.image=images/cards/card-api-overview_16-9_2x.png
+page.metaDescription=Get to know the new developer features in Android 6.0 Marshmallow.
@jd:body
@@ -15,17 +16,15 @@
<span class="less" style="display:none">show less</span></a></h2>
<ol id="toc44" class="hide-nested">
+
+ <li><a href="#fingerprint-authentication">Fingerprint Authentication</a></li>
+ <li><a href="#confirm-credential">Confirm Credential</a></li>
<li><a href="#app-linking">App Linking</a></li>
<li><a href="#backup">Auto Backup for Apps</a></li>
- <li><a href="#authentication">Authentication</a>
- <ol>
- <li><a href="#fingerprint-authentication">Fingerprint Authentication</a></li>
- <li><a href="#confirm-credential">Confirm Credential</a></li>
- </ol>
- </li>
<li><a href="#direct-share">Direct Share</a></li>
<li><a href="#voice-interactions">Voice Interactions</a></li>
<li><a href="#assist">Assist API</a></li>
+ <li><a href="#adoptable-storage">Adoptable Storage</a></li>
<li><a href="#notifications">Notifications</a></li>
<li><a href="#bluetooth-stylus">Bluetooth Stylus Support</a></li>
<li><a href="#ble-scanning">Improved Bluetooth Low Energy Scanning</a></li>
@@ -82,35 +81,13 @@
<p>For more information about how API levels work, read <a
href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">What is API
Level?</a></p>
-<h3>Important behavior changes</h3>
-<p>If you have previously published an app for Android, be aware that your app might be affected
-by changes in the platform.</p>
+<h2 id="fingerprint-authentication">Fingerprint Authentication</h2>
-<p>Please see <a href="android-6.0-changes.html">Android 6.0 Changes</a> for complete information.</p>
-
-<h2 id="app-linking">App Linking</h2>
-<p>This release enhances Android’s intent system by providing more powerful app linking.
-This feature allows you to associate an app with a web domain you own. Based on this
-association, the platform can determine the default app to use to handle a particular
-web link and skip prompting users to select an app. To learn how to implement this feature, see
-<a href="{@docRoot}training/app-links/index.html">Handling App Links</a>.
-
-<h2 id="backup">Auto Backup for Apps</h2>
-<p>The system now performs automatic full data backup and restore for apps. Your app must target
- Android 6.0 (API level 23) to enable this behavior; you do not need to add any additional code.
- If users delete their Google accounts, their backup data is deleted as well. To learn how this
- feature works and how to configure what to back up on the file system, see
- <a href="{@docRoot}training/backup/autosyncapi.html">Configuring Auto Backup for Apps</a>.</p>
-
-<h2 id="authentication">Authentication</h2>
<p>This release offers new APIs to let you authenticate users by using their fingerprint scans on
-supported devices, and check how recently the user was last authenticated using a device unlocking
-mechanism (such as a lockscreen password). Use these APIs in conjunction with
+supported devices, Use these APIs in conjunction with
the <a href="{@docRoot}training/articles/keystore.html">Android Keystore system</a>.</p>
-<h3 id="fingerprint-authentication">Fingerprint Authentication</h3>
-
<p>To authenticate users via fingerprint scan, get an instance of the new
{@link android.hardware.fingerprint.FingerprintManager} class and call the
{@link android.hardware.fingerprint.FingerprintManager#authenticate(android.hardware.fingerprint.FingerprintManager.CryptoObject, android.os.CancellationSignal, int, android.hardware.fingerprint.FingerprintManager.AuthenticationCallback, android.os.Handler) authenticate()}
@@ -158,7 +135,7 @@
</li>
</ol>
-<h3 id="confirm-credential">Confirm Credential</h3>
+<h2 id="confirm-credential">Confirm Credential</h2>
<p>Your app can authenticate users based on how recently they last unlocked their device. This
feature frees users from having to remember additional app-specific passwords, and avoids the need
for you to implement your own authentication user interface. Your app should use this feature in
@@ -180,6 +157,20 @@
<a href="{@docRoot}samples/ConfirmCredential/index.html">
Confirm Credential sample</a>.</p>
+<h2 id="app-linking">App Linking</h2>
+<p>This release enhances Android’s intent system by providing more powerful app linking.
+This feature allows you to associate an app with a web domain you own. Based on this
+association, the platform can determine the default app to use to handle a particular
+web link and skip prompting users to select an app. To learn how to implement this feature, see
+<a href="{@docRoot}training/app-links/index.html">Handling App Links</a>.
+
+<h2 id="backup">Auto Backup for Apps</h2>
+<p>The system now performs automatic full data backup and restore for apps. Your app must target
+ Android 6.0 (API level 23) to enable this behavior; you do not need to add any additional code.
+ If users delete their Google accounts, their backup data is deleted as well. To learn how this
+ feature works and how to configure what to back up on the file system, see
+ <a href="{@docRoot}training/backup/autosyncapi.html">Configuring Auto Backup for Apps</a>.</p>
+
<h2 id="direct-share">Direct Share</h2>
<img src="{@docRoot}images/android-6.0/direct-share-screen.png"
@@ -275,6 +266,53 @@
callback.
</ol>
+<h2 id="adoptable-storage">Adoptable Storage Devices</h2>
+<p>
+With this release, users can <em>adopt</em> external storage devices such as SD cards. Adopting an
+external storage device encrypts and formats the device to behave like internal storage. This
+feature allows users to move both apps and private data of those apps between storage devices. When
+moving apps, the system respects the
+<a href="{@docRoot}guide/topics/manifest/manifest-element.html#install">{@code android:installLocation}</a>
+preference in the manifest.</p>
+
+<p>If your app accesses the following APIs or fields, be aware that the file paths they return
+will dynamically change when the app is moved between internal and external storage devices.
+When building file paths, it is strongly recommended that you always call these APIs dynamically.
+Don’t use hardcoded file paths or persist fully-qualified file paths that were built previously.</p>
+
+<ul>
+<li>{@link android.content.Context} methods:
+ <ul>
+ <li>{@link android.content.Context#getFilesDir() getFilesDir()}</li>
+ <li>{@link android.content.Context#getCacheDir() getCacheDir()}</li>
+ <li>{@link android.content.Context#getCodeCacheDir() getCodeCacheDir()}</li>
+ <li>{@link android.content.Context#getDatabasePath(java.lang.String) getDatabasePath()}</li>
+ <li>{@link android.content.Context#getDir(java.lang.String,int) getDir()}</li>
+ <li>{@link android.content.Context#getNoBackupFilesDir() getNoBackupFilesDir()}</li>
+ <li>{@link android.content.Context#getFileStreamPath(java.lang.String) getFileStreamPath()}</li>
+ <li>{@link android.content.Context#getPackageCodePath() getPackageCodePath()}</li>
+ <li>{@link android.content.Context#getPackageResourcePath() getPackageResourcePath()}</li>
+ </ul>
+</li>
+<li>{@link android.content.pm.ApplicationInfo} fields:
+ <ul>
+ <li>{@link android.content.pm.ApplicationInfo#dataDir dataDir}</li>
+ <li>{@link android.content.pm.ApplicationInfo#sourceDir sourceDir}</li>
+ <li>{@link android.content.pm.ApplicationInfo#nativeLibraryDir nativeLibraryDir}</li>
+ <li>{@link android.content.pm.ApplicationInfo#publicSourceDir publicSourceDir}</li>
+ <li>{@link android.content.pm.ApplicationInfo#splitSourceDirs splitSourceDirs}</li>
+ <li>{@link android.content.pm.ApplicationInfo#splitPublicSourceDirs splitPublicSourceDirs}</li>
+ </ul>
+</li>
+</ul>
+
+<p>To debug this feature, you can enable adoption of a USB drive that is
+connected to an Android device through a USB On-The-Go (OTG) cable, by running this command:</p>
+
+<pre class="no-prettyprint">
+$ adb shell sm set-force-adoptable true
+</pre>
+
<h2 id="notifications">Notifications</h2>
<p>This release adds the following API changes for notifications:</p>
<ul>
diff --git a/docs/html/about/versions/marshmallow/download.jd b/docs/html/about/versions/marshmallow/download.jd
index 03866d0..978b33d 100644
--- a/docs/html/about/versions/marshmallow/download.jd
+++ b/docs/html/about/versions/marshmallow/download.jd
@@ -161,34 +161,27 @@
<div id="landing">
-<div id="qv-wrapper">
- <div id="qv">
- <h2>In this document</h2>
- <ol>
- <li><a href="#images">Hardware System Images</a></li>
- </ol>
- </div>
-</div>
-
<p>
- The Android M Preview SDK includes development tools, Android system images, and library files to
- help you test your app and the new APIs coming in the next release of the platform. This document
- describes how to get the downloadable components of the preview for testing your app.
+ The Android M Developer Preview 3 system images below are available to you for a limited
+ time for final testing. Once the Android 6.0 release is final (early October),
+ the Preview downloads will no longer be available. Instead,
+ you'll be able to download the official Android 6.0 images from the
+ <a href="https://developers.google.com/android/nexus/images?hl=en">Nexus
+ Factory Images</a> page.
</p>
+<p class="note"><strong>Note:</strong> If you previously flashed a device to
+ an Android M Developer Preview image, that device will not automatically
+ get the update to the final Android 6.0 build by OTA. To get the final Android 6.0
+ build, you must download it from the
+ <a href="https://developers.google.com/android/nexus/images?hl=en">Nexus
+ Factory Images</a> page when available and then flash it
+ manually to your device.</p>
+
<h2 id="images">Hardware System Images</h2>
-<p>
- These system images allow you to install a preview version of the platform on a physical device for
- testing. By configuring a device with one of these images, you can install and test your app to
- see how it performs on the next version of the platform. The process of installing a system image
- on a device <em>removes all data from the device</em>, so you should backup your data before
- installing a system image.
-</p>
-
-<p class="warning">
- <b>Warning:</b> The following Android system images are previews and are subject to change. Your
+<p>The following Android system images are previews and are subject to change. Your
use of these system images is governed by the Android SDK Preview License Agreement. The Android
preview system images are not stable releases, and may contain errors and defects that can result
in damage to your computer systems, devices, and data. The preview Android system images are not
diff --git a/docs/html/about/versions/marshmallow/index.jd b/docs/html/about/versions/marshmallow/index.jd
index 74f4cc4..0c80007 100644
--- a/docs/html/about/versions/marshmallow/index.jd
+++ b/docs/html/about/versions/marshmallow/index.jd
@@ -1,6 +1,6 @@
-page.title=Android 6.0
-page.tags="marshmallow",
-meta.tags=marshamallow,M,androidm
+page.title=Android 6.0 Marshmallow
+page.tags="marshmallow"
+meta.tags="marshamallow","android60"
fullpage=true
section.landing=true
header.hide=1
@@ -16,15 +16,15 @@
{@docRoot}images/home/devices-hero_620px_2x.png 2x">
</div>
<div class="col-7of16 col-pull-9of16">
- <h1 class="dac-hero-title">Android 6.0</h1>
+ <h1 class="dac-hero-title">Android 6.0 Marshmallow</h1>
<p class="dac-hero-description">
- <strong>The official Android 6.0 SDK is now available!</strong>
+ <strong>Get your apps ready for Android 6.0 Marshmallow!</strong>
Explore what's new — <strong>runtime permissions</strong>,
<strong>Doze</strong> and <strong>App Standby</strong> power-saving features, new
<strong>assist technology</strong>, and more.
</p>
- <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/android-6.0.html">
+ <a class="dac-hero-cta" href="{@docRoot}about/versions/marshmallow/android-6.0-changes.html">
<span class="dac-sprite dac-auto-chevron"></span>
Get started
</a><br>
@@ -46,37 +46,6 @@
</a>
</div>
-
-<section class="dac-section dac-gray" id="resources"><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 6.0.
- </div>
-
- <div class="resource-widget resource-flow-layout col-16"
- data-query="collection:marshmallow/landing/more"
- data-cardSizes="6x6"
- data-initial-results="3"></div>
- </div>
-</section>
-
-
-<section class="dac-section" id="videos"><div class="wrap">
- <h1 class="dac-section-title">Videos</h1>
- <div class="dac-section-subtitle">
- Watch these videos to understand and use the features provided in Android
- Marshmallow.
- </div>
-
- <div class="resource-widget resource-flow-layout col-16"
- data-query="collection:marshmallow/landing/videos"
- data-sortOrder="-timestamp"
- data-cardSizes="6x6"
- data-initial-results="3"></div>
- </div>
-</section>
-
-
<section class="dac-section dac-gray dac-small dac-invert" id="latest"><div class="wrap">
<h2 class="norule">Latest</h2>
<div class="resource-widget resource-flow-layout col-16"
@@ -87,3 +56,29 @@
data-initial-results="3">
</div>
</section>
+
+<section class="dac-section" id="videos"><div class="wrap">
+ <h1 class="dac-section-title">Videos</h1>
+ <div class="dac-section-subtitle">
+ New Android capabilities and the right way to use them in your apps.
+ </div>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="collection:marshmallow/landing/videos"
+ data-cardSizes="6x6"
+ data-initial-results="6"></div>
+ </div>
+</section>
+
+<section class="dac-section dac-gray" id="resources"><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 6.0.
+ </div>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="collection:marshmallow/landing/more"
+ data-cardSizes="6x6"
+ data-initial-results="6"></div>
+ </div>
+</section>
\ No newline at end of file
diff --git a/docs/html/about/versions/marshmallow/samples.jd b/docs/html/about/versions/marshmallow/samples.jd
index 14c704c..865b5fc 100644
--- a/docs/html/about/versions/marshmallow/samples.jd
+++ b/docs/html/about/versions/marshmallow/samples.jd
@@ -1,12 +1,15 @@
page.title=Samples
-page.image=images/cards/samples-new_2x.png
-page.tags=androidm,marshmallow
-page.keywords=marshmallow,androidm,samples
+page.image=images/cards/card-build_16x9_2x.png
+page.tags=marshmallow, samples
+meta.tags=marshmallow,androidm,samples
+page.metaDescription=Code to get your started with Android 6.0 APIs.
@jd:body
<p>
- The following code samples are provided for Android 6.0 (API level 23). To download
- the samples in Android Studio, select the <b>File > Import Samples</b> menu option.
+ Download or browse sample projects to get started with Android 6.0
+ APIs (API level 23). You can download the samples
+ directly from Android Studio — just select the <b>File > Import
+ Samples</b> menu option and pick the sample you want.
</p>
<p class="note">
diff --git a/docs/html/about/versions/marshmallow/testing.jd b/docs/html/about/versions/marshmallow/testing.jd
deleted file mode 100644
index c46540f..0000000
--- a/docs/html/about/versions/marshmallow/testing.jd
+++ /dev/null
@@ -1,32 +0,0 @@
-page.title=Android 6.0 Testing Guide
-page.image=images/cards/card-build_16x9_2x.png
-page.keywords=marshmallow,androidm,testing
-
-@jd:body
-
-<p>
- Android 6.0 (API level 23) includes a number of APIs and behavior changes that can
- impact your app, as described in the <a href="{@docRoot}about/versions/marshmallow/android-6.0.html">API
- Overview</a> and <a href="{@docRoot}about/versions/masrhmallow/android-6.0-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>
- The following resources describe what and how to test Android 6.0 (API level 23) features with
- your app. You should prioritize testing of these specific Android 6.0 (API level 23) features,
- due to their high potential impact on your app's behavior:
-</p>
-
-<ul>
- <li><a href="{@docRoot}training/permissions/best-practices.html#testing">Permissions</a>:
- Information on the behavior of runtime permissions, of runtime permissions, testing, and best
- practices.
- </li>
- <li><a href="{@docRoot}training/monitoring-device-state/doze-standby.html#testing_doze_and_app_standby">Doze and App Standby</a>:
- Information on the behavior of Doze and App Standby, testing, and best practices.
- </li>
- <li><a href="{@docRoot}training/backup/autosyncapi.html#testing">Auto Backup for Apps and Device Identifiers</a>:
- Information on the behavior of Auto Backup for Apps, testing, and best practices.
- </li>
-</ul>
\ No newline at end of file
diff --git a/docs/html/index.jd b/docs/html/index.jd
index a9bdbab..fbf5497 100644
--- a/docs/html/index.jd
+++ b/docs/html/index.jd
@@ -23,8 +23,10 @@
</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> Update to
- Android Marshmallow to get the latest features</p>
+ 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">
<span class="dac-sprite dac-auto-chevron"></span>
diff --git a/docs/html/jd_collections.js b/docs/html/jd_collections.js
index 672af58..a5e691d84 100644
--- a/docs/html/jd_collections.js
+++ b/docs/html/jd_collections.js
@@ -1643,23 +1643,27 @@
"marshmallow/landing/resources": {
"title": "",
"resources": [
+ "about/versions/marshmallow/android-6.0-changes.html",
"about/versions/marshmallow/android-6.0.html",
- "about/versions/marshmallow/download.html",
"about/versions/marshmallow/samples.html"
]
},
"marshmallow/landing/videos": {
"title": "",
"resources": [
- "https://www.youtube.com/watch?v=yYU4DHLwoRk",
- "https://www.youtube.com/watch?v=ndBdf1_oOGA",
- "https://www.youtube.com/watch?v=C8lUdPVSzDk",
- "https://www.youtube.com/watch?v=VOn7VrTRlA4",
- "https://www.youtube.com/watch?v=HXacyy0HSW0",
+ "https://youtu.be/U9tw5ypqEN0",
+ "https://youtu.be/N72ksDKrX6c",
+ "https://youtu.be/iZqDdvhTZj0",
"https://www.youtube.com/watch?v=vcSj8ln-BlE",
+ "https://youtu.be/LQoohRwojmw",
+ "https://www.youtube.com/watch?v=VOn7VrTRlA4",
+ "https://youtu.be/5sCQjeGoE7M",
+ "https://www.youtube.com/watch?v=C8lUdPVSzDk",
+ "https://www.youtube.com/watch?v=HXacyy0HSW0",
"https://www.youtube.com/watch?v=OW1A4XFRuyc",
+ "https://www.youtube.com/watch?v=j3QC6hcpy90",
"https://www.youtube.com/watch?v=f17qe9vZ8RM",
- "https://www.youtube.com/watch?v=j3QC6hcpy90"
+ "https://www.youtube.com/watch?v=ndBdf1_oOGA"
]
},
"marshmallow/landing/more": {
@@ -1668,9 +1672,10 @@
"about/versions/marshmallow/android-6.0-changes.html",
"training/permissions/requesting.html",
"training/backup/autosyncapi.html",
- "training/app-links/index.html",
"training/monitoring-device-state/doze-standby.html",
- "about/versions/marshmallow/testing.html"
+ "training/app-links/index.html",
+ "training/articles/assistant.html",
+ "training/testing/performance.html"
]
},
}
diff --git a/docs/html/jd_extras.js b/docs/html/jd_extras.js
index f7664e7..45bff55 100644
--- a/docs/html/jd_extras.js
+++ b/docs/html/jd_extras.js
@@ -3146,7 +3146,78 @@
"lang":"en",
"type":"Video"
},
-
+ {
+ "title":"Introduction to Doze",
+ "titleFriendly":"",
+ "summary":"An overview of Doze and how to make sure that your app behaves as expected both in and out of Doze mode. ",
+ "url":"https://youtu.be/N72ksDKrX6c",
+ "group":"",
+ "keywords": ["Marshmallow"],
+ "tags": [],
+ "image":"http://i1.ytimg.com/vi/N72ksDKrX6c/maxresdefault.jpg",
+ "lang":"en",
+ "type":"Video"
+ },
+ {
+ "title":"The Nexus 5X, Nexus 6P and Android Marshmallow",
+ "titleFriendly":"",
+ "summary":"The new Nexus 5X and Nexus 6P along with some of the most significant developer features in the latest Android release,.",
+ "url":"https://youtu.be/U9tw5ypqEN0",
+ "group":"",
+ "keywords": ["Marshmallow"],
+ "tags": [],
+ "image":"http://i1.ytimg.com/vi/U9tw5ypqEN0/maxresdefault.jpg",
+ "lang":"en",
+ "type":"Video"
+ },
+ {
+ "title":"Asking For Permission Fine",
+ "titleFriendly":"",
+ "summary":"Picking the right way and time to ask for a permission is critical to it being granted. ",
+ "url":"https://youtu.be/iZqDdvhTZj0",
+ "group":"",
+ "keywords": ["Marshmallow"],
+ "tags": [],
+ "image":"http://i1.ytimg.com/vi/iZqDdvhTZj0/maxresdefault.jpg",
+ "lang":"en",
+ "type":"Video"
+ },
+ {
+ "title":"Data Binding Library",
+ "titleFriendly":"",
+ "summary":"Data Binding Library is a way to write declarative layouts and minimize the glue code necessary to bind your application logic and layouts. ",
+ "url":"https://youtu.be/5sCQjeGoE7M",
+ "group":"",
+ "keywords": ["Marshmallow"],
+ "tags": [],
+ "image":"http://i1.ytimg.com/vi/5sCQjeGoE7M/maxresdefault.jpg",
+ "lang":"en",
+ "type":"Video"
+ },
+ {
+ "title":"App Links",
+ "titleFriendly":"",
+ "summary":"App Links is a new feature of Android Marshmallow that brings a faster way of opening website links for domains that you own.",
+ "url":"https://youtu.be/LQoohRwojmw",
+ "group":"",
+ "keywords": ["Marshmallow"],
+ "tags": [],
+ "image":"http://i1.ytimg.com/vi/LQoohRwojmw/maxresdefault.jpg",
+ "lang":"en",
+ "type":"Video"
+ },
+ {
+ "title":"Android M Permissions",
+ "titleFriendly":"",
+ "summary":"An introduction to Android M runtime permissions in Android M from Google I/O 2015. ",
+ "url":"https://www.youtube.com/watch?v=f17qe9vZ8RM",
+ "group":"",
+ "keywords": ["Marshmallow"],
+ "tags": [],
+ "image":"http://i1.ytimg.com/vi/f17qe9vZ8RM/maxresdefault.jpg",
+ "lang":"en",
+ "type":"Video"
+ },
{
"lang": "ja",
"title": "Gaming Everywhere",
diff --git a/docs/html/training/permissions/requesting.jd b/docs/html/training/permissions/requesting.jd
index f916084..03f46e2 100644
--- a/docs/html/training/permissions/requesting.jd
+++ b/docs/html/training/permissions/requesting.jd
@@ -1,7 +1,7 @@
page.title=Requesting Permissions at Run Time
page.tags="runtime permissions",androidm,marshmallow
-helpoutsWidget=true
-
+page.image=images/permissions_check.png
+page.metaDescription=Learn about runtime permissions and how they make it easier for users to install and upgrade your apps.
@jd:body
<div id="tb-wrapper">