Merge "Doc change: Add dev summit banner to landing." into mnc-docs
diff --git a/core/java/android/hardware/Camera.java b/core/java/android/hardware/Camera.java
index 1fc69c0..73bb426 100644
--- a/core/java/android/hardware/Camera.java
+++ b/core/java/android/hardware/Camera.java
@@ -3182,8 +3182,8 @@
         }
 
         /**
-         * Sets GPS processing method. It will store up to 32 characters
-         * in JPEG EXIF header.
+         * Sets GPS processing method. The method will be stored in a UTF-8 string up to 31 bytes
+         * long, in the JPEG EXIF header.
          *
          * @param processing_method The processing method to get this location.
          */
diff --git a/core/java/android/hardware/camera2/CameraMetadata.java b/core/java/android/hardware/camera2/CameraMetadata.java
index c580083..8d3cea6 100644
--- a/core/java/android/hardware/camera2/CameraMetadata.java
+++ b/core/java/android/hardware/camera2/CameraMetadata.java
@@ -472,13 +472,13 @@
      * <li>The maximum available resolution for RAW_SENSOR streams
      *   will match either the value in
      *   {@link CameraCharacteristics#SENSOR_INFO_PIXEL_ARRAY_SIZE android.sensor.info.pixelArraySize} or
-     *   {@link CameraCharacteristics#SENSOR_INFO_ACTIVE_ARRAY_SIZE android.sensor.info.activeArraySize}.</li>
+     *   {@link CameraCharacteristics#SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE android.sensor.info.preCorrectionActiveArraySize}.</li>
      * <li>All DNG-related optional metadata entries are provided
      *   by the camera device.</li>
      * </ul>
      *
-     * @see CameraCharacteristics#SENSOR_INFO_ACTIVE_ARRAY_SIZE
      * @see CameraCharacteristics#SENSOR_INFO_PIXEL_ARRAY_SIZE
+     * @see CameraCharacteristics#SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE
      * @see CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES
      */
     public static final int REQUEST_AVAILABLE_CAPABILITIES_RAW = 3;
diff --git a/core/java/android/hardware/camera2/CaptureRequest.java b/core/java/android/hardware/camera2/CaptureRequest.java
index 3f566eb..67835a0 100644
--- a/core/java/android/hardware/camera2/CaptureRequest.java
+++ b/core/java/android/hardware/camera2/CaptureRequest.java
@@ -556,6 +556,10 @@
          * Set a capture request field to a value. The field definitions can be
          * found in {@link CaptureRequest}.
          *
+         * <p>Setting a field to {@code null} will remove that field from the capture request.
+         * Unless the field is optional, removing it will likely produce an error from the camera
+         * device when the request is submitted.</p>
+         *
          * @param key The metadata field to write.
          * @param value The value to set the field to, which must be of a matching
          * type to the key.
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index fb31871..56689cc 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -843,7 +843,7 @@
     <!-- =============================================================== -->
     <eat-comment />
 
-    <!-- Allows an application to modify and remove existing voicemails in the system
+    <!-- Allows an application to modify and remove existing voicemails in the system.
         <p>Protection level: system|signature
     -->
     <permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"
@@ -860,7 +860,7 @@
     <!-- ======================================= -->
     <eat-comment />
 
-    <!-- Allows an application to access extra location provider commands
+    <!-- Allows an application to access extra location provider commands.
          <p>Protection level: normal
     -->
     <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
@@ -906,7 +906,7 @@
         android:label="@string/permlab_createNetworkSockets"
         android:protectionLevel="normal" />
 
-    <!-- Allows applications to access information about networks
+    <!-- Allows applications to access information about networks.
          <p>Protection level: normal
     -->
     <permission android:name="android.permission.ACCESS_NETWORK_STATE"
@@ -1037,7 +1037,7 @@
     <eat-comment />
 
     <!-- Allows access to the list of accounts in the Accounts Service.
-        <p>Protection level: normal
+        <p>Protection level: dangerous
     -->
     <permission android:name="android.permission.GET_ACCOUNTS"
         android:permissionGroup="android.permission-group.CONTACTS"
@@ -1934,7 +1934,7 @@
     <permission android:name="android.permission.BIND_PRINT_SPOOLER_SERVICE"
         android:protectionLevel="signature" />
 
-    <!-- Must be required by a TextService (e.g. SpellCheckerService)
+    <!-- Must be required by a TextService (eg SpellCheckerService)
          to ensure that only the system can bind to it.
          <p>Protection level: signature
     -->
diff --git a/docs/html/design/tv/images/icon.png b/docs/html/design/tv/images/icon.png
index ae34e18..9cf584c 100644
--- a/docs/html/design/tv/images/icon.png
+++ b/docs/html/design/tv/images/icon.png
Binary files differ
diff --git a/docs/html/design/tv/images/overscan.png b/docs/html/design/tv/images/overscan.png
index fb7e4bc..7957e97 100644
--- a/docs/html/design/tv/images/overscan.png
+++ b/docs/html/design/tv/images/overscan.png
Binary files differ
diff --git a/docs/html/design/tv/patterns.jd b/docs/html/design/tv/patterns.jd
index f38fa76..622e678 100644
--- a/docs/html/design/tv/patterns.jd
+++ b/docs/html/design/tv/patterns.jd
@@ -114,20 +114,24 @@
 
 <h4>Small icon</h4>
 
-<p>Recommendation cards include a small icon that is imposed over a colored background. The icon and
-background color display at 100% opacity when the card is selected, and at 50% opacity when not
-selected.</p>
+<p>Recommendation cards include a small icon that is imposed over a colored
+background. The icon and background color both display at 100% opacity when the card
+is selected and at 50% opacity when the card is not selected.</p>
 
 <img src="{@docRoot}design/tv/images/icon.png" alt="Recommendation icon examples" />
 
-<p>Here are the requirements for recommendation small icons:</p>
+<p>Here are the requirements for a small recommendation icon:</p>
 
 <ul>
-  <li>Flat image</li>
-  <li>Monocolor: size 16x16dp, white (#fff) icon with transparent background, PNG format</li>
-  <li>Graphics should be centered within the icon image</li>
+  <li>Visually flat graphic, monocolor, 16x16dp</li>
+  <li>Color <code>#eeeeee</code> with transparency</li>
+  <li>Graphic centered over transparent background</li>
+  <li>PNG file format</li>
 </ul>
 
+<p class="note"><strong>Note:</strong> The color value <code>#eeeeee</code> is actually a light
+gray, but it is used by the system to create a background which appears white.</p>
+
 <h2>Audio Feedback</h2>
 
 <p>Sounds on Android TV bring a cinematic quality to the interaction experience. You should
diff --git a/docs/html/design/tv/style.jd b/docs/html/design/tv/style.jd
index dd10a8a..4c43983 100644
--- a/docs/html/design/tv/style.jd
+++ b/docs/html/design/tv/style.jd
@@ -51,9 +51,11 @@
 
 <img src="{@docRoot}design/tv/images/overscan.png" alt="Overscan borders for TV" />
 
-<p>Build a 10% margin into your TV screen designs to account for overscan area the TV may not
-  display correctly. On a 1920 x 1080 pixel screen, this margin should be a minimum of 27px from the
-  top and bottom edges and a minimum of 48px from the right and left edges of the picture.</p>
+<p>Build a 5% margin into your TV screen designs to account for overscan area the TV may not
+  display correctly. On a 1920 x 1080 screen, this margin should be a minimum of 27 pixels
+  from the top and bottom edges and a minimum of 48 pixels from the right and left edges of the
+  picture.
+  </p>
 
 
 <h2>Color</h2>
diff --git a/docs/html/develop/index.jd b/docs/html/develop/index.jd
index 1c6139f..4591e76 100644
--- a/docs/html/develop/index.jd
+++ b/docs/html/develop/index.jd
@@ -84,6 +84,23 @@
        data-sortOrder="random"></div>
 </div></section>
 
+<section class="dac-section dac-gray"><div class="wrap">
+  <h1 class="dac-section-title">Android development patterns</h1>
+  <div class="dac-section-subtitle">
+    Fundamental components and best practices that can help you build better apps.
+  </div>
+  <div class="resource-widget resource-flow-layout col-16"
+       data-query="collection:develop/landing/devpatterns"
+       data-cardSizes="6x6"
+       data-maxResults="3"></div>
+  <ul class="dac-section-links">
+    <li class="dac-section-link"><a href="https://www.youtube.com/playlist?list=PLWz5rJ2EKKc-lJo_RGGXL2Psr8vVCTWjM">
+      <span class="dac-sprite dac-auto-chevron"></span>
+      Playlist
+    </a></li>
+  </ul>
+</div></section>
+
 <section class="dac-section dac-section-light"><div class="wrap">
   <h1 class="dac-section-title">Android performance patterns</h1>
   <div class="dac-section-subtitle">
diff --git a/docs/html/distribute/engage/beta.jd b/docs/html/distribute/engage/beta.jd
new file mode 100644
index 0000000..ff36a31
--- /dev/null
+++ b/docs/html/distribute/engage/beta.jd
@@ -0,0 +1,112 @@
+page.title=Get real user feedback with beta tests
+page.metaDescription=Run alpha and beta tests from the developer console, and make improvements and correct issues before you release.
+page.image=images/cards/distribute/engage/beta.jpg
+Xnonavpage=true
+
+@jd:body
+
+<p>
+  With alpha or beta tests run from the Developer Console you can collect user
+  feedback on early versions of your app, then make improvements and correct
+  issues before you release to the full Play Store audience.
+</p>
+
+<img src="{@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test.png"
+  srcset="{@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test.png 1x,
+      {@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test_2x.png 2x"
+  width="500">
+
+<p>Testing your app with a select group of users will give you a chance to fix any technical or user experience issues before you release it widely, so that you can be confident about releasing the best version of your app to the majority of your users. Feedback from your test users won't affect your app’s public rating.</p>
+
+<p>
+  Learn more about <a href=
+  "https://support.google.com/googleplay/android-developer/answer/3131213"
+  class="external-link">how to run a beta test.</a>
+</p>
+
+<h2 id="how-to">How to Do It</h2>
+
+<ul>
+
+<ul>
+  <li>
+    <strong>Open beta —</strong> Use an open beta when you want any user who
+    has the link to be able to join your beta with just one click. One of the
+    advantages of an open beta is that it allows you to scale to a large number
+    of testers. However, you can also limit the maximum number of users who can
+    join.
+  </li>
+
+  <li>
+    <strong>Closed beta using email addresses —</strong> If you want to
+    restrict which users can access your beta, you have a new option: you can
+    now set up a closed beta using lists of individual email addresses which
+    you can add individually or upload as a .csv file. These users will be able
+    to join your beta via a one-click opt-in link.
+  </li>
+
+  <li>
+    <strong>Closed beta with Google+ community or Google Group —</strong> You
+    can continue to use betas with Google+ communities or Google Groups. You
+    can also move closed betas to an open beta while maintaining your existing
+    testers.
+  </li>
+</ul>
+
+<h2 id="tips">Tips</h2>
+
+<ul>
+  <li>Your testers will need to have a Google Account (<code>@gmail.com</code>)
+  or a Google Apps account to join a test.
+  </li>
+
+  <li>Use alpha tests for early experimental versions of your app that might
+  contain incomplete or unstable functionality, and use beta tests for apps
+  that should be complete and stable.
+  </li>
+
+  <li>Start testing with a small group of more trusted testers in an alpha
+  test, then expand your test to a larger group of testers in a beta test.
+  </li>
+
+  <li>Testers can't leave public reviews for alpha/beta apps on Google Play, so
+  include a feedback channel or provide the option to send feedback by email,
+  website, or a message forum.
+  </li>
+
+  <li>For an APK to be available to alpha testers it must have a higher version
+  number than your beta or production version, and for beta testers the APK
+  must have a higher version number than your production version.
+  </li>
+
+  <li>Alpha testers receive the alpha, beta, or production version of your app
+  with the highest version code that is compatible with their device, while
+  beta testers receive the beta or production version of your app with the
+  highest version code that is compatible with their device. This also means
+  that posting a higher version number APK cancels earlier tests of earlier
+  versions, so posting a production 2.0 version would cancel a beta test of
+  version 1.9 and that beta test would have canceled an alpha test of version
+  1.8.
+  </li>
+
+  <li>Also consider using <a href=
+  "https://www.google.com/insights/consumersurveys/" class=
+  "external-link">Google Consumer Surveys</a> to conduct market research and
+  gather user feedback at scale.
+  </li>
+</ul>
+
+<p style="clear:both">
+</p>
+
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="related-resources">Related Resources</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/beta"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/engage/engage_toc.cs b/docs/html/distribute/engage/engage_toc.cs
index 91206d3..e86623f 100644
--- a/docs/html/distribute/engage/engage_toc.cs
+++ b/docs/html/distribute/engage/engage_toc.cs
@@ -29,6 +29,7 @@
         <span class="en">Drive Engagement with Ads</span></a>
     </div>
   </li>
+
   <li class="nav-section">
     <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
         var:toroot?>distribute/engage/game-services.html">
@@ -53,7 +54,12 @@
         <span class="en">Integrate GCM</span></a>
     </div>
   </li>
-
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
+        var:toroot?>distribute/engage/beta.html">
+        <span class="en">Get Feedback with Beta Tests</span></a>
+    </div>
+  </li>
 </ul>
 
 <script type="text/javascript">
diff --git a/docs/html/distribute/engage/game-services.jd b/docs/html/distribute/engage/game-services.jd
index 1c77d2d..910d55f 100644
--- a/docs/html/distribute/engage/game-services.jd
+++ b/docs/html/distribute/engage/game-services.jd
@@ -1,90 +1,193 @@
 page.title=Encourage Competition
 page.metaDescription= Bring out the competitor in your users with cloud save, multiplayer game play, and more.
 page.tags="games"
-page.image=/images/google/gps-play_games_logo.png
+page.image=/images/cards/distribute/engage/card-game-services.png
 
 @jd:body
 
-<div class="figure" style="width:330px;">
-  <img src="{@docRoot}images/google/gps-play_games_logo.png">
+
+
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>Features</h2>
+    <ul>
+      <li><a href="#simplify">Simplify your game development</a></li>
+      <li><a href="#acquire-users">Acquire and engage users</a></li>
+      <li><a href="#socialize">Socialize your games</a></li>
+      <li><a href="#extend">Extend across form factors</a></li>
+      <li><a href="#manage">Manage your games</a></li>
+    </ul>
+  </div>
 </div>
 
 <p>
-  Increase game installs, in-app revenue, and engagement with <a href=
-  "{@docRoot}google/play-services/games.html">Google Play
-  Game Services</a>. Bring out the competitor in your users with cloud save,
-  multiplayer game play, and more.
+  Three out of four Android users download games to their device, making games
+  one the most popular additions to users’ devices. Making your games stand out
+  from the crowd is therefore key to success.
 </p>
 
+<div class="figure">
+  <img src="{@docRoot}images/google/gps-play_games_logo.png"
+        srcset="{@docRoot}images/google/gps-play_games_logo.png 1x,
+            {@docRoot}images/google/gps-play_games_logo_2x.png 2x"
+      alt="" width="170" />
+</div>
+
+<p>
+  Google Play game services save you from implementing popular game features
+  yourself such as achievements, leaderboards, real-time multiplayer, and
+  others. You can also let players sign in using their Google identity and
+  share their gaming experience with friends. And there is comprehensive
+  reporting and statistics to help you track and improve your game’s
+  performance.
+</p>
+
+<p>
+  Start now by visiting <a href="https://developers.google.com/games/services/"
+  class="external-link">Google Play game services.</a>
+</p>
+
+<h3 id="simplify">Simplify your game development</h3>
+
 <ul>
   <li>
-    <p>
-      <a href=
-      "https://developers.google.com/games/services/android/achievements">Achievements</a>
-      encourage players to try new features, resulting in more time spent in
-      your games.
-    </p>
+    <strong>Set up Google Play Games Services:</strong> Use the Google Play
+    Developer Console to manage games services and configure metadata for
+    authorizing and authenticating your game.
   </li>
 
   <li>
-    <p>
-      <a href=
-      "https://developers.google.com/games/services/android/leaderboards">Leaderboards</a>
-      are a fun way to drive competition among your players.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      <a href=
-      "https://developers.google.com/games/services/android/cloudsave">Cloud
-      Save</a> allows users to continue where they left off on another device
-      or platform.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      Multiplayer features allow users to invite friends to install games and
-      play together in <a href=
-      "https://developers.google.com/games/services/common/concepts/realtimeMultiplayer">
-      real-time</a> or <a href=
-      "https://developers.google.com/games/services/common/concepts/turnbasedMultiplayer">
-      turn-by-turn</a>.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      <a href=
-      "https://play.google.com/store/apps/details?id=com.google.android.play.games">
-      Google Play Games App</a> provides additional exposure to increase
-      downloads and gameplay. It helps users play with friends, see what others
-      are playing, and discover featured games.
-    </p>
+    <strong>Use the Play Games APIs:</strong> Start integrating popular gaming
+    features into your games by using the <a href=
+    "https://developers.google.com/games/services/" class=
+    "external-link">Google Play Games Services APIs.</a>
   </li>
 </ul>
 
-<p>
-  And there is no need to worrying about device or OS version support. Google
-  Play Game Services is backward compatible, allowing you to reach more
-  users with less effort. Get started on <a href=
-  "{@docRoot}google/play-services/games.html">Google Play
-  Game Services</a>. For more tips on keeping gamers engaged, see the <a href=
-  "{@docRoot}distribute/essentials/best-practices/games.html">
-  Game Developer Best Practices</a>.
+<h3 id="acquire-users">Acquire and engage users</h3>
+
+<ul>
+  <li>
+    <strong>Player Analytics:</strong> View details on multiplayer games,
+    average revenue per paying user (ARPPU), sessions per user, and more; as
+    well as set and monitor daily revenue targets from a comprehensive
+    dashboard of player and engagement statistics.
+  </li>
+
+  <li>
+    <strong>Achievements:</strong> Set goals to encourage players to spend more
+    time in your games and try new features; reward them with experience points
+    that players redeem to gain level-ups in their Play Games profile.
+  </li>
+
+  <li>
+    <strong>Quests:</strong> Offer players in-game rewards and benefits for
+    exploring your game more deeply: use particular items, reach a certain
+    level, or perform a specific game action. And set up quests without the
+    need to release an app update.
+  </li>
+</ul>
+
+<h3 id="socialize">Socialize your games</h3>
+
+<ul>
+  <li>
+    <strong>Leaderboards:</strong> Drive competition among your players with
+    daily, weekly, and all-time leaderboards. Create multiple leaderboards for
+    game levels or other game features.
+  </li>
+
+  <li>
+    <strong>Multiplayer games:</strong> Add the challenge of playing against
+    others to your real-time and turn-by-turn games. Players can invite friends
+    to install your game across form factors and supported platforms.
+  </li>
+
+  <li>
+    <strong>Game gifts:</strong> Drive downloads and engagement by giving your
+    players the ability to send virtual in-game objects to their friends. Also
+    let players request gifts and use gifts as a trading mechanism within
+    games.
+  </li>
+</ul>
+
+<h3 id="extend">Extend across form factors</h3>
+
+<ul>
+  <li>
+    <strong>Saved Games:</strong> Save game states to the cloud and enable
+    players to resume games anytime on any of their devices. Cover images and
+    descriptions show players where they left off and attract them back.
+  </li>
+
+  <li>
+    <strong>Nearby Connections API:</strong> Enhance the experience of your
+    games for Android TV by connecting seamlessly with smartphones and tablets,
+    to use them as second-screen controllers.
+  </li>
+</ul>
+
+<h3 id="manage">Manage your games</h3>
+
+<ul>
+  <li>
+    <strong>Easily update your game metadata:</strong> Simplify your game
+    testing and player account management with the <a href=
+    "https://developers.google.com/games/services/management/" class=
+    "external-link">Google Play games services Management API.</a>
+  </li>
+
+  <li>
+    <strong>Automate your game production and distribution tasks:</strong>
+    Modify listings and upload icons for achievements and leaderboards with the
+    <a href="https://developers.google.com/games/services/publishing/" class=
+    "external-link">Google Play games services Publishing API.</a>
+  </li>
+
+  <li>
+    <strong>Insights and alerts:</strong> Get information on how to improve
+    your multiplayer, leaderboards, achievements, and other game services
+    implementations from the Developer Console.
+  </li>
+
+  <li>
+    <strong>Anti-piracy:</strong> Optionally disable game services for games
+    not purchased from the Play Store.
+  </li>
+</ul>
+
+<h3 id="tips">Tips</h3>
+<ul>
+  <li>The best Google Play game services integrations are highly visible,
+  customized, achievable, and incentivized.
+  </li>
+
+  <li>Prompt players to sign in to Google Play game services when your game
+  launches. This ensures they get access to the game service features, and also
+  maximizes the number of players online and ready to collaborate.
+  </li>
+
+  <li>Avoid creating achievements that rely too much on elements beyond the
+  player's control or cannot be earned once the player has made a decision in
+  your game.
+  </li>
+
+  <li>With Google Play game services, you can add seamless interaction between
+  Android and your games on the web and other platforms.
+  </li>
+</ul>
+
+<p style="clear:both">
 </p>
 
+<div class="dynamic-grid">
 <div class="headerLine">
-  <h2 id="related-resources">
-    Related Resources
-  </h2>
-
-
+<h2 id="related-resources">Related Resources</h2>
 </div>
 
-<div class="resource-widget resource-flow-layout col-13" data-query=
-"collection:distribute/engage/googleplaygames" data-sortorder="-timestamp"
-data-cardsizes="9x3" data-maxresults="6">
-</div>
-
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/engage/gamesservices/related"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/googleplay/about.jd b/docs/html/distribute/googleplay/about.jd
index 543d7d3..a93d1c7 100644
--- a/docs/html/distribute/googleplay/about.jd
+++ b/docs/html/distribute/googleplay/about.jd
@@ -6,367 +6,148 @@
 
 @jd:body
 
-    <div id="qv-wrapper">           
+<div id="qv-wrapper">
   <div id="qv">
   <h2>About Google Play</h2>
     <ol style="list-style-type:none;">
-      <li><a href="#reach">Worldwide Reach, Rapid Growth</a></li>
-      <li><a href="#ratings-reviews">User Ratings and Reviews</a></li>
-      <li><a href="#category-browsing">Category Browsing</a></li>
-      <li><a href="#search">Search</a></li>
-      <li><a href="#top-charts-and-lists">Top Charts and Lists</a></li>
-      <li><a href="#featured-staff-picks">Featured, Staff Picks, Collections, and Badges</a></li>
-      <li><a href="#product-detail-pages">Store Listing Pages</a></li>
-      <li><a href="#related-resources">Related Resources</a></li>
+
+      <li><a href="#playstore-discovery">Discovery on the Play Store and the Top Lists</a></li>
+      <li><a href="#playstore-listing">Your Play Store Listing</a></li>
+      <li><a href="#devpage">Your Developer Page</a></li>
+      <li><a href="#search-discovery">Discovery through Search</a></li>
+      <li><a href="#browsing">Personalized browsing experience</a></li>
+      <li><a href="#featured-staff-picks">Featured Apps and Collections</a></li>
+      <li><a href="#editors-choice">Editor's Choice, Top Developer, and Other Badges</a></li>
     </ol>
   </div>
 </div>
 
+<h2 id="reach">Reach Users Around the World</h2>
+
 <p>
   Google Play is the premier store for distributing Android apps. When you
-  publish on Google Play, you put your apps in front of Android's huge base of
-  active customers, in more than 190 countries and territories across the
+  publish on Google Play, you put your apps in front of over 1 billion active
+  Android users, in more than 190 countries and territories across the
   world.
 </p>
 
-<div>
-  <img src="{@docRoot}images/gp-about-0.jpg" alt="Google Play on an Android Tablet"
-  style="width:480px;position:relative" />
-</div>
+<img src="{@docRoot}images/distribute/googleplay/about_hero_play-opportunity.png"
+  srcset="{@docRoot}images/distribute/googleplay/about_hero_play-opportunity.png 1x,
+      {@docRoot}images/distribute/googleplay/about_hero_play-opportunity_2x.png 2x"
+  alt="" width="460" />
 
-<p>
-  Google Play is a central part of the Android experience. New users
-  personalize their devices with apps, games, and other Google Play content.
-  Existing users return regularly to see what's trending and new. Downloading
-  new apps is extremely convenient and fast&mdash; Google Play pushes apps to
-  the user's devices instantly, over the air.
-</p>
+<div class="wrap">
 
-<p>
-  Google Play is also a top destination for web users. Anyone with a browser
-  can explore Google Play on the web. Android users can even buy and install
-  the apps they want and Google Play pushes them automatically to their devices
-  with no cables required.
-</p>
-
-<p>
-  The accessibility and convenience of the Google Play web site give you new
-  ways to drive traffic to your products from many sources, such as online ads,
-  web search and cross-linking. Google Play is designed to connect users with
-  great apps and games. It provides key channels to get your app noticed and
-  gain traction in the marketplace.
-</p>
-
-<div class="headerLine">
-  <h2 id="ratings-reviews">
-    User Ratings and Reviews
-  </h2>
-
-
-</div>
-
-<p>
-  Prospective users look at ratings and reviews as key benchmarks of app
-  quality. By rating apps from one to five stars and posting reviews, Android
-  users show their appreciation for the apps they have downloaded.
-</p>
-
-<p>
-  <strong>Your app's rating is one of the most important factors influencing
-  its ranking</strong> in the Google Play lists and search results. It's also
-  one of the key metrics that the editorial staff looks for when curating apps
-  and games for promotion in the store.
-</p>
-
-<div class="img" style="padding: 1em auto;width:96%;">
-  <img src="{@docRoot}images/gp-rating-web.png" style="border:1px solid #ddd;">
-</div>
-
-<div class="headerLine">
-  <h2 id="category-browsing">
-    Category Browsing
-  </h2>
-
-
-</div>
-
-<p>
-  When you publish an app in Google Play, you pick the category where you want
-  users to find your app. More than 30 categories are available. Inside each
-  category, apps are ranked based on a combination of ratings, reviews,
-  downloads, country, and other factors.
-</p>
-
-<div class="headerLine">
-  <h2 id="search">
-    Search
-  </h2>
-
-
-</div>
-
-<p>
-  Search on Google Play lets users pinpoint an app or game quickly. Search uses
-  powerful heuristics to suggest terms as the user types, and it offers direct
-  links to apps as suggestions. In results, users find the most relevant, most
-  popular apps at the top.
-</p>
-
-<div class="headerLine">
-  <h2 id="top-charts-and-lists">
-    Top Charts and Lists
-  </h2>
-
-
-</div>
-
-<div class="figure">
-  <img src="{@docRoot}images/gp-about-top.jpg">
-</div>
-
-<p>
-  Top charts keep users in touch with what’s popular and trending with Android
-  users, right from the Apps and Games home pages. The charts stay fresh,
-  updating several times each day based on recent download activity. As an
-  app's ratings and download activity grow, it can move up in the charts.
-</p>
-
-<p>
-  To make the charts as relevant as possible for users across the world, they
-  are also country-specific in Google Play's most popular countries. As your
-  apps get traction and build momentum in downloads and ratings, they’ll climb
-  one or more of the top charts and gain even more exposure.
-</p>
-
-<table style="width:50%;">
-  <tr>
-    <td>
-      Top Free
-    </td>
-    <td>
-      Free apps and free games lists
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Top Paid
-    </td>
-    <td>
-      Paid apps and paid games lists
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Top Grossing
-    </td>
-    <td>
-      Gross proceeds, free or paid
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Top New Free
-    </td>
-    <td>
-      Less than 30 days old
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Top New Paid
-    </td>
-    <td>
-      Less than 30 days old
-    </td>
-  </tr>
-
-  <tr>
-    <td>
-      Trending
-    </td>
-    <td>
-      New arrivals growing quickly in installs
-    </td>
-  </tr>
-</table>
-
-<div class="headerLine">
-  <h2 id="featured-staff-picks">
-    Featured, Staff Picks, Collections, and Badges
-  </h2>
-
-
-</div>
-
-<p>
-  The Google Play editorial team is dedicated to bringing the best apps to the
-  attention of users and setting the tone for app quality throughout the store.
-  It constantly reviews apps from across Google Play to find not only the
-  best-known apps and games, but also the "diamonds in the rough" that they
-  want more people to see. The team promotes great apps in the
-  <em>Featured</em>, <em>Staff Picks</em>, and other collections.
-</p>
-
-<p>
-  You can't nominate your app for featuring, but the team is always monitoring
-  Google Play for great apps. If you build an app that users love and that
-  looks great on Android devices, the editorial team will notice.
-</p>
-
-<h3 id="featured-staff-picks2">
-  Featured and Staff Picks
-</h3>
-
-<p>
-  Each week the Google Play editorial staff selects a new set of apps to
-  promote in its popular <em>Featured</em> and <em>Staff Picks</em>
-  collections.
-</p>
-
-<p>
-  The <em>Featured</em> collections highlight the latest and greatest app and
-  game titles available for Android. The list also includes the best and most
-  popular apps in the top categories are also featured. <em>Staff Picks</em>
-  collects all recently featured apps and games on Google Play. To focus on
-  tablet users, A special <em>Staff Picks</em> collection highlights the best
-  apps for Android tablets.
-</p>
-
-<table style="text-align:center;margin:1.5em 0;">
-  <tr>
-    <td style="border:none;">
-      <img src="{@docRoot}images/gp-about-picks1.jpg">
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="playstore-discovery">Discovery on the Play Store and the top lists</h3>
       <p>
-        Featured
+        The Play Store has been built to make discovering relevant apps, games, and
+        other content simple and pleasurable. Users can browse over 30 categories of
+        ranked apps. They can also discover popular and trending apps from one of the
+        ‘top charts’; updated throughout the day, they’re even country-specific in
+        Google Play's most popular countries.
       </p>
-    </td>
-    <td style="border:none;">
-      <img src="{@docRoot}images/gp-about-picks2.jpg">
-      <p>
-        Collection
-      </p>
-    </td>
-    <td style="border:none;">
-      <img src="{@docRoot}images/gp-about-picks3.jpg">
-      <p>
-        Editors' Choice
-      </p>
-    </td>
-  </tr>
-</table>
-
-<h3 id="collections">
-  App collections
-</h3>
-
-<p>
-  From time to time the editorial staff puts together a collection of apps and
-  games based on a theme or seasonal event. Users frequently use these lists to
-  select apps, attracted by the timeliness of the collection.
-</p>
-
-<p>
-  The editorial staff chooses apps for collection promotions &mdash;
-  high-quality apps that show the best of Android on phones and tablets. The
-  staff also looks for apps that can make an interesting or unique contribution
-  to the collection as a whole.
-</p>
-
-<h3 id="editors-choice">
-  <img style="margin-right:.25em;margin-bottom:.5em;" src=
-  "{@docRoot}images/editorschoice_ann.png"> Editors' Choice
-</h3>
-
-<p>
-  <em>Editors’ Choice</em> is a curated collection of apps that highlights some
-  of the very best apps available on Android. Editors choose these apps for
-  quality and great user interface, long-term popularity and innovative use of
-  Android features.
-</p>
-
-<p>
-  Apps chosen for <em>Editors’ Choice</em> also receive a badge that is
-  displayed wherever the app name is seen in Google Play.
-</p>
-
-<h3 id="top-developer">
-  <img style="margin-right:.25em;margin-bottom:.5em;" src=
-  "{@docRoot}images/topdev_ann.png"> Top Developer
-</h3>
-
-<p>
-  Top Developer is a badge recognizing established, respected developers for
-  their commitment to launching high-quality and innovative apps on Android.
-  The Google Play editorial staff awards a Top Developer badge from
-  time-to-time based on the cumulative work of the developer.
-</p>
-
-<p>
-  The Top Developer badge appears next to the developer name wherever it is
-  displayed in Google Play. The badge means long-term recognition of all of the
-  developer’s apps. It signifies an additional level of trust and confidence
-  users have in a developer’s products.
-</p>
-
-<div class="headerLine">
-  <h2 id="product-detail-pages">
-    Store Listing Pages
-  </h2>
-
-
-</div>
-
-<div class="figure">
-  <img src="{@docRoot}images/gp-about-listing.jpg">
-</div>
-
-<p>
-  Your app’s Google Play storefront is its <em>store listing page</em>: a rich
-  and colorful page that lets you promote your app, highlight its ratings and
-  reviews, and show what your app can do.
-</p>
-
-<p>
-  Your store listing is where your users come to find out everything about your
-  app. When they see your app listed in search results, top charts, category
-  listings, and collections, one tap takes them directly to your store listing.
-</p>
-
-<p>
-  Manage your product details page through the <a href=
-  "https://play.google.com/apps/publish/">Google Play Developer Console</a>
-  from any web browser. Sign in to upload or update your brand assets, and
-  enter your product details in the languages of your markets.
-</p>
-
-<p>
-  When you publish, Google Play adds your app’s ratings, reviews, links to your
-  other products, and more. It also makes sure your store listing page looks
-  great on phones, tablets, and in a web browser.
-</p>
-
-<p>
-  You can link web users directly to your product details page from outside
-  Google Play, such as from your web site, an ad campaign, reviews, social
-  media posts, and more. See <a href=
-  "{@docRoot}distribute/tools/promote/linking.html">Linking to Your
-  Products</a> to find out how.
-</p>
-
-<p style="clear:both">
-</p>
-
-<div class="headerLine">
-<h2>Related Resources</h2>
-</div>
-
-<div class="resource-widget resource-flow-layout col-13"
-  data-query="collection:distribute/googleplay"
-  data-sortOrder="-timestamp"
-  data-cardSizes="9x3"
-  data-maxResults="4"></div>
     </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_play_store_home.png"
+        style="padding-top:1em;" width="225">
+    </div>
+  </div>
+
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="playstore-listing">Your Play Store listing</h3>
+      <p>
+        Your app’s Play Store listing is where users come to find out everything
+        about your app: hero image or video, age rating, total downloads, summary
+        rating, features, and screenshots. Users can also see the ratings and reviews
+        left by other users, which are an important influence on your app’s ranking
+        in lists and search. When creating your app’s page you can take advantage of
+        <a href="{@docRoot}distribute/users/experiments.html"
+        >Store Listing Experiments</a> to test variations in
+        text and graphics and find the combination that drives the most downloads.
+      </p>
+    </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_play_store_listing.png"
+          style="padding-top:1em;" width="225">
+    </div>
+  </div>
+
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="devpage">Your developer page</h3>
+      <p>
+        You can now promote your brand using your new <a href=
+        "https://support.google.com/googleplay/android-developer/answer/6226441"
+        class="external-link">developer page.</a> Add a hero image, logo, and
+        description, then optionally add a link to your website and a featured app.
+        This is a great way to increase exposure, in addition to your
+        developer-specific app collection on Google Play.
+      </p>
+    </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_developer_page.png"
+          style="padding-top:1em;" width="225">
+    </div>
+  </div>
+
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="search-discovery">Discovery through search</h3>
+      <p>
+        Search on Google Play is one of the single biggest drivers of installs and it
+        lets users pinpoint an app or game quickly. Search uses powerful heuristics
+        to suggest terms as the user types, and it offers direct links to apps as
+        suggestions. In results, users find the most relevant and most popular apps
+        at the top.
+      </p>
+    </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_search_results.png"
+          style="padding-top:1em;" width="225">
+    </div>
+  </div>
+
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-6of12">
+      <h3 id="browsing">Personalized browsing experience</h3>
+      <p>
+        Using manual and algorithmic curation, the Play Store creates unique
+        collections that represent deeper user interests. These collections are then
+        matched with a user’s interests and displayed on their Play Store home page.
+        Since its introduction this more-personalized approach to app listings has
+        doubled the likelihood a user will install an app. This example shows the
+        home page of a user who enjoys outdoor activity and fitness apps.
+      </p>
+    </div>
+    <div class="col-5of12 col-push-1of12">
+     <img src="{@docRoot}images/distribute/googleplay/about_personalized_home.png"
+          style="padding-top:1em;" width="225">
+    </div>
+  </div>
+</div>
+
+<h2 id="featured-staff-picks">Featured Apps and Collections</h2>
+<p>
+  The Google Play editorial team bring the best apps to the attention of users
+  through the Featured, Staff Picks, and Editor’s Choice collections.
+  Periodically they also create app collections based on a theme or seasonal
+  event. The apps and games featured will include some that are popular and
+  well known, but also innovative and groundbreaking apps that haven’t built
+  their ranking yet.
+</p>
+
+<h2 id="editors-choice">Editor's Choice, Top Developer, and Other Badges</h2>
+<p>
+  The best apps and games and the developers who create them are awarded badges
+  by the Google Play editorial staff: Editors’ Choice, Top Developer, and
+  others. Displayed with the app and developer name when they are seen in
+  Google Play, they give users an additional level of trust and confidence in
+  your apps.
+</p>
diff --git a/docs/html/distribute/googleplay/developer-console.jd b/docs/html/distribute/googleplay/developer-console.jd
index 7631980..b1eeb31 100644
--- a/docs/html/distribute/googleplay/developer-console.jd
+++ b/docs/html/distribute/googleplay/developer-console.jd
@@ -4,24 +4,16 @@
 Xnonavpage=true
 
 @jd:body
-    
-    <div id="qv-wrapper">           
+
+    <div id="qv-wrapper">
   <div id="qv">
-    <h2>Publishing Features</h2>
+    <h2>Features</h2>
     <ol>
-      <li><a href="#allapps">All Applications</a></li>
-      <li><a href="#account-details">Your Account Details</a></li>
-      <li><a href="#merchant-account">Linking Your Merchant Account</a></li>
-      <li><a href="#multiple-user-accounts">Multiple User Accounts</a></li>
-      <li><a href="#alpha-beta">Alpha and Beta Testing</a></li>
-      <li><a href="#staged-rollouts">Staged Rollouts</a></li>
-      <li><a href="#multiple-apk">Multiple APK Support</a></li>
-      <li><a href="#selling-pricing-your-products">Selling and Pricing</a></li>
-      <li><a href="#in-app-products">In-App Products</a></li>
-      <li><a href="#distribution-controls">Distribution Controls</a></li>
-      <li><a href="#reviews-reports">User Reviews, Crash Reports</a></li>
-      <li><a href="#app-stats">App Stats</a></li>
-      <li><a href="#related-resources">Related Resources</a></li>
+      <li><a href="#latest">Latest blog posts</a></li>
+      <li><a href="#publish">Publish with confidence</a></li>
+      <li><a href="#aquire-users">Acquire users</a></li>
+      <li><a href="#insights">Actionable insights</a></li>
+      <li><a href="#manage">Manage your app</a></li>
     </ol>
   </div>
 </div>
@@ -30,8 +22,9 @@
   The <a href="https://play.google.com/apps/publish/">Google Play Developer
   Console</a> is your home for publishing operations and tools.
 </p>
-<!-- <img src="{@docRoot}images/gp-dc-startscreen.jpg" style="width:480px;" /> -->
-<img src="{@docRoot}images/gp-devconsole-home.png" style="width:480px;">
+
+<img src="{@docRoot}images/distribute/googleplay/gp-devconsole-home.png" style="width:480px;">
+
 <p>
   Upload apps, build your product pages, configure prices and distribution, and
   publish. You can manage all phases of publishing on Google Play through the
@@ -44,547 +37,252 @@
   verification by email, you can sign in to your Google Play Developer Console.
 </p>
 
+
+<p style="clear:both">
+</p>
+
+<div class="dynamic-grid">
 <div class="headerLine">
-  <h2 id="allapps">
-    All Applications
-  </h2>
-
-
+<h2 id="latest">Latest blog posts</h2>
 </div>
 
-<p>
-  Start in All Applications, which gives you a quick overview of your apps,
-  lets you jump to stats, reviews, and product details, or upload a new app.
-</p>
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="type:blog+tag:developerconsole+tag:featured"
+  data-sortOrder="-timestamp"
+  data-cardSizes="6x3"
+  data-maxResults="3"></div>
+  </div>
 
-<div style="padding:1em 0em 0em 0em;">
-  <img src="{@docRoot}images/gp-dc-home.png" class="border-img">
-</div>
+<h2 id="publish">Publish with confidence</h2>
 
-<div class="headerLine" style="margin-top:-6px">
-  <h2 id="account-details">
-    Your Account Details
-  </h2>
+<div class="wrap">
+  <h3 id="alpha-beta">Alpha and beta tests</h3>
 
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Distribute your pre-release app to users as an open beta with a
+        one-click, opt-in URL or as a closed beta using an email list, Google
+        Group, or Google+ community. Users can then provide feedback, while not
+        affecting your app’s public reviews and rating. This valuable feedback
+        will help you test features and improve the quality of your app.
+        <a href="{@docRoot}distribute/engage/beta.html">Learn more</a>.
+      </p>
+    </div>
 
-</div>
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test.png 1x, {@docRoot}images/distribute/googleplay/dev-console_running-a-beta-test_2x.png 2x"
+      width="500">
+    </div>
+  </div>
 
-<p>
-  Specify basic developer profile information about yourself or your company on
-  the accounts detail page. This identifies you to Google Play and your
-  customers. You can go back at any time to edit the information and change
-  your settings.
-</p>
+  <h3 id="cloud-test">Clout Test Lab</h3>
 
-<div>
-  <img src="{@docRoot}images/gp-dc-profile.png" class="frame">
-</div>
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Get free automated testing of your app on physical devices covering
+        nearly every brand, model, and version of the devices your users might
+        be using. The lab will help you quickly find compatibility issues you
+        may miss using only your available test devices. Sign-up in the
+        Developer Console to become an early tester before this feature becomes
+        more widely available. <a href=
+        "https://developers.google.com/cloud-test-lab/" class=
+        "external-link">Learn more and sign up for updates.</a>
+      </p>
+    </div>
 
-<p>
-  Your developer profile contains:
-</p>
-
-<ul>
-  <li>
-    <p>
-      Developer name &mdash; displayed on your store listing page and elsewhere
-      on Google Play.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      Contact information &mdash; used by Google only, it isn't seen by your
-      customers.
-    </p>
-  </li>
-
-  <li>
-    <p>
-      Web site URL &mdash; displayed on your store listing page.
-    </p>
-  </li>
-</ul>
-
-<p>
-  On the account details page you can also add restricted access for marketers
-  and other teams, register for a merchant account, or set up test accounts for
-  Google Play licensing.
-</p>
-
-<div class="headerLine">
-  <h2 id="merchant-account">
-    Linking Your Merchant Account
-  </h2>
-
-
-</div>
-
-<p>
-  If you want to sell apps or in-app products, link your Google payments merchant
-  account to your developer profile. Google Play uses the linked merchant
-  account for financial and tax identification, as well as for monthly payouts
-  from sales.
-</p>
-
-<div class="headerLine">
-  <h2 id="multiple-user-accounts">
-    Multiple User Accounts
-  </h2>
-
-
-</div>
-
-<p>
-  Set up user accounts for other team members to access different parts of your
-  Developer Console.
-</p>
-
-<div style="width:550px;">
-  <img src="{@docRoot}images/gp-dc-invite.png" class="frame">
-</div>
-
-<p>
-  The first account registered is the <em>account owner</em>, with full access
-  to all parts of the console. The owner can add <em>user accounts</em> and
-  manage console access.
-</p>
-
-<p>
-  For example, an owner can grant users access to publishing and app
-  configuration, but not to financial reports. Learn how to <a href=
-  "https://support.google.com/googleplay/android-developer/answer/2528691">set
-  up multiple accounts</a> now.
-</p>
-
-<div class="headerLine">
-  <h2 id="store-listing-details">
-    Store Listing Details
-  </h2>
-
-
-</div>
-
-<p>
-  Use the Developer Console to set up a <em>Store Listing page</em>. This is
-  the home for your app in Google Play. It's the page users see on their mobile
-  phones or on the web to learn about your app and download it.
-</p>
-
-<p>
-  Upload custom brand assets, screenshots, and videos to highlight what's great
-  about your app. Provide a localized description, add notes about the latest
-  version, and more. You can update your store listing at any time.
-</p>
-
-<div>
-  <img src="{@docRoot}images/gp-dc-details.png" class="frame">
-</div>
-
-<div class="headerLine">
-  <h2 id="upload-instantly-publish">
-    Upload and Instantly Publish
-  </h2>
-
-
-</div>
-
-<p>
-  From the Developer Console you can quickly upload and publish a release-ready
-  Android application package file. The app is a <em>draft</em> until you
-  publish it, at which time Google Play makes your store listing page and app
-  available to users&mdash;your app appears in the store listings within hours,
-  not weeks.
-</p>
-
-<p>
-  Once your app is published, you can update it as often as you want: Change
-  prices, configuration, and distribution options at any time, without needing
-  to update your app binary.
-</p>
-
-<p>
-  As you add features or address code issues, you can publish an updated binary
-  at any time. The new version is available almost immediately and existing
-  customers are notified that an update is ready for download. Users can also
-  accept automatic updates to your app, so that your updates are delivered and
-  installed as soon as you publish them. You can unpublish your apps app at any
-  time.
-</p>
-
-<div class="headerLine">
-  <h2 id="alpha-beta">
-    Alpha and Beta Testing
-  </h2>
-
-
-</div>
-
-<p>
-  It's always valuable to get real-world feedback from users, especially before
-  launch. Google Play makes it easy to distribute pre-release versions of your
-  app to alpha and beta test groups anywhere in the world.
-</p>
-
-<p>
-  In the <strong>APK</strong> section of your Google Play Developer Console
-  you’ll find the <strong>Alpha Testing</strong> and <strong>Beta
-  Testing</strong> tabs. Here you can upload versions of your apps’ APK files
-  and define a list of testers as a <a href=
-  "https://support.google.com/groups/answer/46601">Google Group</a> or <a href=
-  "https://support.google.com/plus/topic/2888488">Google+ Community</a>. Once
-  this is done you’ll receive a URL that you forward to your testers, from
-  which they can opt-in to the testing program.
-</p>
-
-<div>
-  <img src="{@docRoot}images/gp-dc-ab.png" class="frame">
-</div>
-
-<p>
-  After opting-in, your testers then go to your app’s product page and when
-  they download the app Google Play will deliver them the alpha or beta version
-  as appropriate. Incidentally, if a user happens to be opted-in to both your
-  testing groups, Google Play will always deliver them the alpha test version.
-</p>
-
-<p>
-  Note that users cannot provide feedback and reviews on alpha and beta
-  versions of your apps. To gather feedback you could used the <a href=
-  "https://support.google.com/groups/answer/46601">Google Group</a> or <a href=
-  "https://support.google.com/plus/topic/2888488">Google+ Community</a>, or
-  setup an email address or your own website.
-</p>
-
-<p>
-  You can use these testing programs to <a href=
-  "{@docRoot}distribute/essentials/optimizing-your-app.html">optimize your
-  apps</a>, help with <a href=
-  "{@docRoot}distribute/users/expand-to-new-markets.html">rollout to new
-  markets</a>, and start <a href=
-  "{@docRoot}distribute/users/build-community.html">building your
-  community</a>. There is also more information on using beta test in the
-  <a href="{@docRoot}distribute/tools/launch-checklist.html">Launch
-  Checklist</a> and <a href=
-  "{@docRoot}distribute/tools/localization-checklist.html">Localization
-  Checklist</a>.
-</p>
-
-<div class="headerLine">
-  <h2 id="staged-rollouts">
-    Staged Rollouts
-  </h2>
-
-
-</div>
-
-<p>
-  You can also stage the rollout of your apps using the Production tab in the
-  APK section of your Google Play Developer Console. Here you can define the
-  percentage of user who’ll be able to download your app.
-</p>
-
-<p>
-  Staging your rollout will help limit the impact of unexpected bugs or server
-  load and enable you to gauge user feedback with an unbiased sample of users.
-  Users can rate and review your apps during staged roll outs, so if you’re
-  hesitant, start your rollout to a small percentage of users. Be sure to watch
-  for and respond to any negative reviews.
-</p>
-
-<p>
-  Note that rollbacks aren’t supported due to the <a href=
-  "{@docRoot}tools/publishing/versioning.html">app versioning requirements</a>
-  of the Android platform. If you need to rollback, consider launching a
-  previous APK with a new version number. However, this practice should be used
-  only as a last resort, as users will lose access to new features and your old
-  app may not be forward-compatible with your server changes or data formats,
-  so be sure to run <a href="#alpha-beta">alpha and beta tests</a> of your
-  updates.
-</p>
-
-<div class="headerLine">
-  <h2 id="multiple-apk">
-    Multiple APK Support
-  </h2>
-
-
-</div>
-
-<p>
-  In most cases, a single app package (APK) is all you need, and it’s usually
-  the easiest way to manage and maintain the app. However, if you need to
-  deliver a different APK to different devices, Google Play provides a way to
-  do that.
-</p>
-
-<p>
-  <em>Multiple APK support</em> lets you create multiple app packages that use
-  the same package name but differ in their OpenGL texture compression formats,
-  screen-size support, or Android platform versions supported. You can simply
-  upload all the APKs under a single product listing and Google Play selects
-  the best ones to deliver to users, based on the characteristics of their
-  devices.
-</p>
-
-<p>
-  You can also upload up to two secondary downloads for each published APK,
-  including multiple APKs, using the <em>APK Expansion Files</em> option. Each
-  expansion file can be up to 2GB and contain any type of code or assets.
-  Google Play hosts them for free and handles the download of the files as part
-  of the normal app installation.
-</p>
-
-<div class="headerLine">
-  <h2 id="selling-pricing-your-products">
-    Selling and Pricing Your Products
-  </h2>
-
-
-</div>
-
-<div class="figure-right">
-  <img src="{@docRoot}images/gp-buyer-currency.png" class="frame">
-</div>
-
-<p>
-  You have tools to set prices for your apps and in-app products. Your app can
-  be free to download or priced, requiring payment before download.
-</p>
-
-<ul>
-  <li>If you publish your app as free, it must <strong>remain free for the life
-  of the app</strong>. Free apps can be downloaded by all users in Google Play.
-  </li>
-
-  <li>If you publish it as priced, you can later change it to free. Priced apps
-  can be purchased and downloaded only by users who have registered a form of
-  payment in Google Play.
-  </li>
-</ul>
-
-<div class="sidebox-wrapper" style="float:right;">
-  <div class="sidebox">
-    <p>
-      See <a href=
-      "http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&amp;answer=138294&amp;topic=2365624&amp;ctx=topic">
-      Supported locations for distributing applications</a> for a list of
-      countries where you can distribute or sell your apps.
-    </p>
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_cloud-test-lab.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_cloud-test-lab.png 1x, {@docRoot}images/distribute/googleplay/dev-console_cloud-test-lab_2x.png 2x"
+      width="500">
+    </div>
   </div>
 </div>
 
-<p>
-  You can also offer in-app products and subscriptions, whether the app is free
-  or priced. Set prices separately for priced apps, in-app products, and
-  subscriptions.
-</p>
+<h3 id="staged-rollouts">Staged rollouts</h3>
 
 <p>
-  When users browse your app product pages or initiate a purchase, Google Play
-  shows them the price they’ll be charged in their local currency.
+  Release app updates progressively to an increasing portion of your users and
+  monitor for missed issues. Then take the opportunity to fix problems before
+  all your users are affected. <a href=
+  "https://support.google.com/googleplay/android-developer/answer/3131213"
+  class="external-link">Learn more.</a>
 </p>
 
-<p>
-  For each product, you initially set a default price in your own currency. If
-  you do no more, Google Play will automatically set local prices once a month
-  based on the US-Dollar price for your app.
+<p class="aside">
+  <strong>Tip:</strong> If you find an issue during a rollout stage you can
+  halt the rollout to further minimize the effect, and then resume rollout once
+  a fix has been made.
 </p>
 
-<p>
-  However, Google Play gives you complete control over how you price your
-  products in each country. To start you can manually set fixed local prices
-  from the default price, using the <strong>auto-convert prices now</strong>
-  feature. You can then review these prices and set new ones for any countries
-  you wish &mdash; the price for each country is independent, so you can adjust
-  one price without affecting others. For most countries, the price you set is
-  the final price charged to users, including taxes.
-</p>
+<h2 id="aquire-users">Aquire users</h2>
 
-<p>
-  For more on pricing your apps, see <a href=
-  "{@docRoot}distribute/users/expand-to-new-markets.html#localize-your-google-play-listing">
-  Expand into New Markets</a>.
-</p>
+  <h3 id="adwords">AdWords Universal App Campaigns</h3>
 
-<div class="headerLine">
-  <h2 id="in-app-products">
-    In-app Products
-  </h2>
-
-
-</div>
-
-<p>
-  You can sell in-app products and subscriptions using <a href=
-  "{@docRoot}google/play/billing/index.html">Google Play In-app Billing</a> as
-  a way to monetize your apps. In-app products are one-time purchases, while
-  subscriptions are recurring charges on a monthly or annual basis.
-</p>
-
-<p>
-  In the <strong>In-app Products</strong> section for a specific published or
-  draft APK you:
-</p>
-
-<ul>
-  <li>Create product lists for in-app products and subscriptions.
-  </li>
-
-  <li>Set prices.
-  </li>
-
-  <li>Publish the products with the app or withdraw obsolete products.
-  </li>
-</ul>
-
-<p>
-  For details on how to implement In-app Billing, see the <a href=
-  "{@docRoot}google/play/billing/index.html">In-app Billing</a> developer
-  documentation. You make use of in-app products in the <a href=
-  "{@docRoot}distribute/monetize/premium.html">Premium</a>, <a href=
-  "{@docRoot}distribute/monetize/freemium.html">Freemium</a>, and <a href=
-  "{@docRoot}distribute/monetize/subscriptions.html">Subscription</a>
-  monetization models
-</p>
-
-<div class="headerLine">
-  <h2 id="distribution-controls">
-    Distribution Controls
-  </h2>
-
-
-</div>
-
-<p>
-  Manage which countries and territories your apps will distribute to. For some
-  countries, you can choose which carriers you want to target. You can also see
-  the list of devices your app is available for, based on any distribution
-  rules declared in its manifest file.
-</p>
-
-<h3 id="geotargeting">
-  Geographic targeting
-</h3>
-
-<p>
-  You can use controls in the Google Play Developer Console to easily manage
-  the geographic distribution of your apps, without any changes in your
-  application binary. You can specify which countries and territories you want
-  to distribute to, and even which carriers (for some countries).
-</p>
-
-<p>
-  When users visit the store, Google Play makes sure that they are in one of
-  your targeted countries before downloading your app. You can change your
-  country and carrier targeting at any time just by saving changes in the
-  Google Play Developer Console.
-</p>
-
-<div class="figure-right" style="width:500px;">
-  <img src="{@docRoot}images/gp-supported-dev-requirements.png" class="frame">
-</div>
-
-<p>
-  To help you market to users around the world, you can <a href=
-  "{@docRoot}distribute/tools/launch-checklist.html#start-localization">localize
-  your store listing</a>, including app details and description, promotional
-  graphics, screenshots, and more.
-</p>
-
-<h3 id="captargeting">
-  Capabilities targeting
-</h3>
-
-<p>
-  Google Play also lets you control distribution according to device features
-  or capabilities that your app depends on. There are several types of
-  dependencies that the app can define in its manifest, such as hardware
-  features, OpenGL texture compression formats, libraries, Android platform
-  versions, and others.
-</p>
-
-<p>
-  When you upload your app, Google Play reads the dependencies and sets up any
-  necessary distribution rules. For technical information about declaring
-  dependencies, read <a href="{@docRoot}google/play/filters.html">Filters on
-  Google Play</a>.
-</p>
-
-<p>
-  For pinpoint control over distribution, Google Play lets you see all of the
-  devices your app is available to based on its dependencies (if any). From the
-  Google Play Developer Console, you can list the supported devices and even
-  exclude specific devices if needed.
-</p>
-
-<div class="headerLine">
-  <h2 id="reviews-reports">
-    User Reviews and Crash Reports
-  </h2>
-
-
-</div>
-
-<div class="figure-right" style="width:500px;">
-  <img src="{@docRoot}images/gp-dc-reviews.png" class="frame">
-  <p class="img-caption">
-    The User reviews section gives you access to user reviews for a specific
-    app. You can filter reviews in a number of ways to locate issues more
-    easily and support your customers more effectively.
+  <p>
+    Easily and conveniently buy AdWords app install ads, across Search
+    (including Play Search), YouTube, AdMob, and the Google Display Network.
+    Simply set a budget and cost per acquisition and Google takes care of the
+    rest. <a href="{@docRoot}distribute/users/promote-with-ads.html">Learn
+    more</a>.
   </p>
+
+<div class="wrap">
+  <h3 id="listing-experiments">Store Listing Experiments</h3>
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Test variations of the images and text used to promote and describe
+        your app on your Play store listing. Then when enough data has been
+        collected, choose to make the winning combination visible on Google
+        Play. <a href="{@docRoot}distribute/users/experiments.html">Learn
+        more</a>.
+      </p>
+
+      <p class="aside">
+        <strong>Tip:</strong> You can even try out different orders for your
+        screenshots and other images to discover which grabs users’ attention
+        the best.
+      </p>
+    </div>
+
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_store-listing-experiment.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_store-listing-experiment.png 1x, {@docRoot}images/distribute/googleplay/dev-console_store-listing-experiment_2x.png 2x"
+      width="500">
+    </div>
+  </div>
+
+  <h3 id="user-perf-report">User Acquisition performance report</h3>
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Discover where visitors to your Play Store listing come from, how many
+        go on to install your app, and how many buy your in-app products in the
+        User Acquisition performance report; compare cohorts, examine
+        acquisition channels, and see details of users and buyers. <a href=
+        "{@docRoot}distribute/users/user-acquisition.html">Learn more</a>.
+      </p>
+    </div>
+
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_conversion-funnel.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_conversion-funnel.png 1x, {@docRoot}images/distribute/googleplay/dev-console_conversion-funnel_2x.png 2x"
+      width="500">
+    </div>
+  </div>
 </div>
 
-<p>
-  Google Play makes it easy for users to submit reviews of your app for the
-  benefit of other users. The reviews give you usability feedback, support
-  requests, and details of important functionality issues direct from your
-  customers.
-</p>
+<h2 id="insights">Actionable insights</h2>
 
-<p>
-  Use crash reports for debugging and improving your app. You can see crash
-  reports with stack trace and other data, submitted automatically from Android
-  devices.
-</p>
+<div class="wrap">
 
-<div class="headerLine">
-  <h2 id="app-stats">
-    App Statistics
-  </h2>
+<h3 id="player-analytics">Player Analytics</h3>
 
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        With Google Play game services integration, discover more about the
+        behaviour of your game players; how they play and how they buy. Also get
+        help setting and monitoring revenue budgets. <a href=
+        "{@docRoot}distribute/engage/game-services.html">Learn more</a>.
+      </p>
+    </div>
 
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_player-analytics.png"
+      srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_player-analytics.png 1x, {@docRoot}images/distribute/googleplay/dev-console_player-analytics_2x.png 2x"
+      width="500">
+    </div>
+  </div>
+
+<h3 id="stats">Detailed statistics and reports</h3>
+
+  <div class="cols" style="margin-top:2em;">
+    <div class="col-3of12">
+      <p>
+        Get a wide range of reports on the performance of your app and behaviour
+        of users; such as installs, revenue, crashes, and more. Turn on email
+        alerts to be notified of any sudden changes to important stats. <a href=
+        "https://support.google.com/googleplay/android-developer/topic/3450942?ref_topic=3450986"
+        class="external-link">Learn more.</a>
+      </p>
+    </div>
+
+    <div class="col-8of12 col-push-1of12">
+      <img src=
+      "{@docRoot}images/distribute/googleplay/dev-console_statistics.png" srcset=
+      "{@docRoot}images/distribute/googleplay/dev-console_statistics.png 1x, {@docRoot}images/distribute/googleplay/dev-console_statistics_2x.png 2x"
+      width="500">
+    </div>
+  </div>
 </div>
 
-<div class="figure" style="width:500px">
-  <img src="{@docRoot}images/gp-dc-stats.png">
-  <p class="img-caption">
-    <b>App statistics page</b>: Shows you a variety of statistics about a
-    specific app's installation performance.
-  </p>
-</div>
+
+<h3 id="optimization"> Optimization tips</h3>
 
 <p>
-  You get detailed statistics on the install performance of your app.
+  Get tips, based on automatic app scanning, on ways in which you can improve
+  your app, everything from updating old APIs to suggestions for languages you
+  should consider localizing to.
 </p>
 
-<p>
-  See installation metrics measured by unique users as well as by unique
-  devices. View active installs, total installs, upgrades, daily installs and
-  uninstalls, and metrics about ratings.
-</p>
+<h2 id="manage">Manage your app</h2>
+
+<h3 id="manage-apks">Manage your APKs</h3>
 
 <p>
-  Zoom into the installation numbers by metric, including Android platform
-  version, device, country, language, app version, and carrier. View the
-  installation data for each dimension on timeline charts.
+  Upload and manage your Android application packages (APK) to the Developer
+  Console as drafts or to your Alpha, Beta, or Production channels. <a href=
+  "https://support.google.com/googleplay/android-developer/answer/113469?ref_topic=3450986"
+  class="external-link">Learn more.</a>
 </p>
 
+<p class="aside">
+  <strong>Tip:</strong> Ensure users get the best possible experience for the
+  smallest app downloads by creating multiple APKs with just the right content
+  for device screen size, hardware features and more.
+</p>
+
+<h3 id="iap">In-app products and subscriptions</h3>
+
 <p>
-  These charts highlight your app’s installation peaks and longer-term trends.
-  They help you learn your user’s adoption behavior, correlate statistics to
-  promotions, see the effect of app improvements, and other factors. Focus in
-  on data inside a dimension by adding specific points to the timeline.
+  Manage your in-app products and price them for local markets accordingly.
+  Offer weekly, monthly, annual, or seasonal subscriptions and take advantage
+  of features such as grace periods and trials. <a href=
+  "https://support.google.com/googleplay/android-developer/topic/3452896?ref_topic=3452890"
+  class="external-link">Learn more.</a>
+</p>
+
+<h3 id="pricing">Pricing and distribution</h3>
+
+<p>
+  Control the price of your app for each country you choose to distribute to.
+  Make your app available to new audiences — opt-in to Android Auto, Android
+  TV, and Android Wear, as well as Designed for Families, Google Play for Work,
+  and Google Play for Education. <a href=
+  "https://support.google.com/googleplay/android-developer/answer/113469#pricing"
+  class="external-link">Learn more</a>.
+</p>
+
+<p class="external-link">
+  <strong>Tip:</strong> You can set prices in other countries automatically
+  based on current exchange rates using the <strong>auto-convert prices
+  now</strong> feature.
 </p>
 
 <p style="clear:both">
@@ -596,7 +294,7 @@
 </div>
 
 <div class="resource-widget resource-flow-layout col-13"
-  data-query="collection:distribute/googleplay/developerconsole"
+  data-query="collection:distribute/googleplay/developerconsole/related"
   data-sortOrder="-timestamp"
   data-cardSizes="9x3"
   data-maxResults="6"></div>
diff --git a/docs/html/distribute/googleplay/googleplay_toc.cs b/docs/html/distribute/googleplay/googleplay_toc.cs
index 60da6d2..b7b59c0 100644
--- a/docs/html/distribute/googleplay/googleplay_toc.cs
+++ b/docs/html/distribute/googleplay/googleplay_toc.cs
@@ -39,19 +39,6 @@
     </div>
   </li>
   <li class="nav-section">
-    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/guide.html"
-       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 上尋找成功">
-           Find Success on <span style="white-space:nowrap">Google Play
-        </a>
-    </div>
-  </li>
-  <li class="nav-section">
     <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/wear.html"
        es-lang="Distribución para Android Wear"
        ja-lang="Android Wear への配布"
@@ -136,10 +123,23 @@
         </a>
     </div>
   </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/guide.html"
+       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 上尋找成功">
+           Find Success on <span style="white-space:nowrap">Google Play
+        </a>
+    </div>
+  </li>
 </ul>
 <script type="text/javascript">
 <!--
     buildToggleLists();
     changeNavLang(getLangPref());
 //-->
-</script>
\ No newline at end of file
+</script>
diff --git a/docs/html/distribute/googleplay/guide.jd b/docs/html/distribute/googleplay/guide.jd
index 8317206..6cb8cc0 100644
--- a/docs/html/distribute/googleplay/guide.jd
+++ b/docs/html/distribute/googleplay/guide.jd
@@ -1,7 +1,8 @@
-page.title=Finding Success on Google Play
-page.metaDescription=A guide to help you find success with your app or game business on Google Play.
-meta.tags="distribute", "bestpractices"
-page.tags="google play", "business", "monetize", "engagement"
+page.title=Find Success on Google Play
+page.metaDescription=The updated guide that helps you find success with your app or game business on Google Play.
+page.tags="play,protips"
+page.timestamp=1447437450
+meta.tags="secrets, success, play, google"
 page.image=distribute/images/play_dev_guide.png
 
 @jd:body
@@ -9,63 +10,34 @@
 <p>
   We’ve created a downloadable guide to help you find success with your app or
   game business on Google Play. In it, you’ll find features, tips, and best
-  practices to help you build an effective strategy.
+  practices to help you build an effective strategy to improve the quality,
+  reach, retention, and monetization of your apps and games.
 </p>
 
-<p>
-  The guide is separated into the following sections:
-</p>
-<ul>
-  <li>
-    <strong>Publishing on Google Play</strong> &mdash; using the Google Play
-    Developer Console to distribute your app to over 1 billion Android users
-    worldwide.
-  </li>
+<a href="https://play.google.com/store/books/details?id=O2a5CgAAQBAJ&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1">
+  <img src="{@docRoot}images/distribute/secrets_v2_banner.jpg">
+</a>
 
-  <li>
-    <strong>Quality</strong> &mdash; The fundamentals of building a great app
-    and an insight into the Google Play guidelines and policies.
-  </li>
+<div style="text-align:center">
+  <a href="https://play.google.com/store/books/details?id=O2a5CgAAQBAJ&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1">
+  <img alt="Get it on Google Play"
+   src="https://play.google.com/intl/en_us/badges/images/books/en-play-badge-border.png"
+   style="height:60px" />
+  </a>
+</div>
 
-  <li>
-    <strong>Discoverability &amp; reach</strong> &mdash; Maximizing your app's
-    discoverability and reaching the widest audience possible.
-  </li>
-
-  <li>
-    <strong>Engagement &amp; retention</strong> &mdash; Converting
-    installations into active users and improving user retention.
-  </li>
-
-  <li>
-    <strong>Monetization</strong> &mdash; Monetization strategies to generate
-    ongoing, growing revenue streams.
-  </li>
-
-  <li>
-    <strong>Measurement with Google Analytics</strong> &mdash; Understanding
-    your users and improving your app experience, conversions, and marketing.
-  </li>
-
-  <li>
-    <strong>Going global</strong> &mdash; Launching your app in local markets
-    around the world.
-  </li>
-</ul>
-
-<p>
-  Download the guide by clicking the image below or <a href=
-  "http://goo.gl/DFjbrS">get it on Google Play</a>.
+<p><a
+  href="https://docs.google.com/forms/d/1KFE9D7NlOrxM_jzmyMeZGaczgg1xo57jBoGq0R5nnsU/viewform">Sign
+  up to be notified</a> when the guide is released in the following languages:
+  Bahasa Indonesia, Deutsch, español (Latinoamérica), le français, português do
+  Brasil, <span style="white-space: nowrap;">tiếng Việt</span>, <span style="white-space:
+  nowrap;">русский язы́к</span>, <span style="white-space: nowrap;">ไทย</span>,
+  <span style="white-space: nowrap;">한국어</span>, <span style="white-space: nowrap;">中文
+  (简体)</span>, <span style="white-space: nowrap;">中文 (繁體)</span>, and <span style="white-space:
+  nowrap;">日本語</span>.
 </p>
 
-<p>
-  We’ll release the guide in more languages in the coming months. Check back to
-  this website regularly as we post information on new features and best
-  practices to help you distribute and monetize your app.
+<p>You can also <a
+  href="{@docRoot}shareables/distribute/secrets_play/v2/web/secrets_to_app_success_v2_en.pdf">download
+  the pdf</a>.
 </p>
-  <div class="resource-widget resource-flow-layout col-16"
-    data-query="collection:play_dev_guide"
-    data-cardSizes="9x6"
-    data-maxResults="1">
-  </div>
-
diff --git a/docs/html/distribute/users/banners.jd b/docs/html/distribute/users/banners.jd
new file mode 100644
index 0000000..c7a0af9
--- /dev/null
+++ b/docs/html/distribute/users/banners.jd
@@ -0,0 +1,63 @@
+page.title=Add An App Install Banner On Your Mobile Website
+page.metaDescription=Add a native app install banner to your mobile website and allow visitors tto install your app straight from your site.
+page.image=images/cards/distribute/users/banners.png
+Xnonavpage=true
+
+@jd:body
+
+<!--
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>In this document</h2>
+    <ol>
+      <li>TOC item</li>
+    </ol>
+  </div>
+</div>
+-->
+
+<div class="figure" style="width:138px">
+  <img src="{@docRoot}images/distribute/users/banners.png"
+    srcset="{@docRoot}images/distribute/users/banners.png 1x,
+        {@docRoot}images/distribute/users/banners_2x.png 2x"
+    width="138">
+</div>
+
+<p>
+  Add a native app install banner to your mobile website and offer visitors the
+  added convenience of installing your app or game straight from your site.
+</p>
+
+<p>
+  Learn how to <a href=
+  "https://developers.google.com/web/updates/2015/03/increasing-engagement-with-app-install-banners-in-chrome-for-android#native"
+  class="external-link">add a native app install banner</a> to your mobile
+  site.
+</p>
+
+<h3 id="how">How it Works</h3>
+
+<p>
+  App install banners are offered as an extension of Chrome’s ability to
+  deliver Web App install banners. You can setup this feature in a web app
+  manifest file. In the manifest you define how your app will appear on the
+  user’s system, how it should be launched, and whether its banner has priority
+  over the banner for your Web App. Then, as long as your site is delivered
+  over HTTPS, after a user visits your site on two separate days within a two
+  week period they’ll be shown your app’s install banner.
+</p>
+
+<p style="clear:both">
+</p>
+
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="related-resources">Related Resources</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/banners/related"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/users/experiments.jd b/docs/html/distribute/users/experiments.jd
new file mode 100644
index 0000000..cfa59ce
--- /dev/null
+++ b/docs/html/distribute/users/experiments.jd
@@ -0,0 +1,120 @@
+page.title=Increase installs with Store Listing Experiments
+page.metaDescription=Run experiments to find the best possible Play Store listing page.
+page.image=images/cards/distribute/users/experiments.png
+Xnonavpage=true
+
+@jd:body
+
+<p>
+  First impressions matter, so having the best possible Play Store listing page
+  for your app is vital. Store Listing Experiments let you test combinations of
+  text and graphics to find the ones that bring you the most installs.
+</p>
+
+<img src="{@docRoot}images/distribute/googleplay/hero-store-listing-experiment.png"
+  srcset="{@docRoot}images/distribute/googleplay/hero-store-listing-experiment.png 1x,
+      {@docRoot}images/distribute/googleplay/hero-store-listing-experiment_2x.png 2x"
+ width="460">
+
+<p>
+  Learn how to <a href=
+  "https://support.google.com/googleplay/android-developer/answer/6227309"
+  class="external-link">get started with Store Listing Experiments.</a>
+</p>
+
+<h3 id="planning">Tips for planning a successful experiment</h3>
+<ul>
+  <li>Make sure that you have a question or objective in mind when designing
+  your experiments.
+  </li>
+
+  <li>Test one attribute at a time to get the clearest results, but test
+  similar changes in icons and feature graphics together, for example comparing
+  use of character art against objects from a game.
+  </li>
+
+  <li>Start testing with your app icon, because it can have a huge impact on
+  whether users pick your app from search results and category lists.
+  </li>
+
+  <li>Test all of your listing’s attributes; after icons, test screenshots and
+  short descriptions as they are seen by users from search results and category
+  lists. Test the feature graphic as a priority, as it has such a presence on
+  your store listing’s page.
+  </li>
+</ul>
+
+<h3 id="graphics">Tips for your graphics and text</h3>
+<ul>
+  <li>Create up to three alternatives for your hi-res icon, feature graphic,
+  screenshots, promo video, short description, and full description.
+  </li>
+
+  <li>Set up a Global experiment for graphics against your default language or
+  a Localized experiment for both text and graphics in a specific language.
+  Experiment with screenshots and their order.
+  </li>
+
+  <li>Be bold about testing different artwork, but iterate on the results to
+  confirm and improve your findings.
+  </li>
+
+  <li>Make sure short descriptions clearly demonstrate an app or game’s value
+  to users.
+  </li>
+</ul>
+
+<h3 id="success">Tips for running successful experiments</h3>
+<ul>
+  <li>Test one asset at a time, unless testing completely different designs for
+  a store listing page against one another.
+  </li>
+
+  <li>Run your experiment for at least 7 days, even if you have enough traffic
+  to get meaningful results in a few days. Depending on the percentage of your
+  audience you’re showing the experiment too and the traffic on your listings
+  page it may take anything from a few days to several weeks to get a
+  result.
+  </li>
+
+  <li>Run your experiments with 50 percent of your audience, the maximum
+  allowed, to get results faster; particularly for localized tests that may be
+  visible to only a small percentage of your users.
+  </li>
+
+  <li>Check the banner on the Experiments page to see progress. Once enough
+  data has been collected the winner is displayed and you can apply it to your
+  store listing.
+  </li>
+</ul>
+
+<p style="clear:both">
+</p>
+
+<!-- TBA
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="successes">See how other developers have successfully run Store
+  Listing Experiments
+</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/experiments/successes"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="9"></div>
+  </div>
+-->
+
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="related-resources">Related Resources</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/experiments/related"
+  data-sortOrder="-timestamp"
+  data-cardSizes="6x6"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/users/user-acquisition.jd b/docs/html/distribute/users/user-acquisition.jd
new file mode 100644
index 0000000..8261757
--- /dev/null
+++ b/docs/html/distribute/users/user-acquisition.jd
@@ -0,0 +1,101 @@
+page.title=Understand Where Your Users Come From
+page.metaDescription=Use the Developer Console to identify the channels that bring the greatest volume of high-value users.
+page.image=images/cards/distribute/users/user-acquisition.jpg
+Xnonavpage=true
+
+@jd:body
+
+<!--
+<div id="qv-wrapper">
+  <div id="qv">
+    <h2>In this document</h2>
+    <ol>
+      <li>TOC item</li>
+    </ol>
+  </div>
+</div>
+-->
+
+<p>
+  Whether you pay to acquire users or not, you want to focus your acquisition
+  efforts on the channels that bring you the greatest volume of high-value
+  users. It’s now easy to identify those channels from the User Acquisition
+  page in the Developer Console.
+</p>
+
+<img src="{@docRoot}images/distribute/googleplay/dev-console_conversion-funnel.png"
+  srcset="{@docRoot}images/distribute/googleplay/dev-console_conversion-funnel.png 1x,
+      {@docRoot}images/distribute/googleplay/dev-console_conversion-funnel_2x.png 2x"
+ width="500">
+
+<p>
+  From the performance report you can follow users — whether originating as
+  organic or paid traffic — from discovery to installation then onto their
+  purchase of your in-app products, with convenient predefined reporting
+  criteria. With the improved understanding of where your most valuable users
+  come from, you can better focus your efforts.
+</p>
+
+<p>
+  Learn more about how to <a href=
+  "https://support.google.com/googleplay/android-developer/answer/6263332"
+  class="external-link">measure your app’s user acquisition channels.</a>
+</p>
+
+<h2 id="how-to">How to use the User Acquisition performance report</h2>
+
+<ul>
+  <li>
+    <strong>Compare cohorts:</strong> In this report, a <em>cohort</em> is a
+    group of users who’ve visited your app’s store listing during a selected
+    date range. For example, if you update your app’s icon on the Play Store,
+    you’ll want to see how the change affects installs and in-app purchases.
+    You can do this by selecting cohorts before and after your app update, and
+    measure how your change impacted conversion rates.
+  </li>
+
+  <li>
+    <strong>Examine acquisition channels:</strong> For your defined cohort, you
+    can explore how user behaviour and value differ between acquisition
+    channels, such as organic Play Store traffic, AdWords campaigns, tracked
+    channels, and searches. Drill down into specific channels to explore user
+    behaviour in detail.
+  </li>
+
+  <li>
+    <strong>See users:</strong> Get stats for all the <strong>store listing
+    visitors</strong> (users who visited your app’s store listing) and
+    <strong>installers</strong>. This helps you understand how prospects are
+    converting into users.
+  </li>
+
+  <li>
+    <strong>See buyers:</strong> If you sell in-app products, the funnel report
+    can also tell you about <strong>new buyers</strong> and <strong>repeat
+    buyers</strong>. This helps you understand how quickly your in-app products
+    and subscriptions are gaining traction with users.
+  </li>
+</ul>
+
+<p class="aside">
+  <strong>Tip:</strong> If you’re directing your users to your mobile app from
+  your website, you can track conversions by adding a UTM campaign source and a
+  campaign name tag to the <a href=
+  "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-url-builder"
+  class="external-link">Google Play store URL.</a>
+</p>
+
+<p style="clear:both">
+</p>
+
+<div class="dynamic-grid">
+<div class="headerLine">
+<h2 id="related-resources">Related Resources</h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/googleplay/useracquisition/related"
+  data-sortOrder="-timestamp"
+  data-cardSizes="9x3"
+  data-maxResults="6"></div>
+  </div>
diff --git a/docs/html/distribute/users/users_toc.cs b/docs/html/distribute/users/users_toc.cs
index 1e4085b..f84c926 100644
--- a/docs/html/distribute/users/users_toc.cs
+++ b/docs/html/distribute/users/users_toc.cs
@@ -47,6 +47,26 @@
         </a>
     </div>
   </li>
+
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/experiments.html">
+          <span class="en">Increase installs with Store Listing Experiments</span>
+        </a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/banners.html">
+          <span class="en">Add an App Install Banner On Your Mobile Website</span>
+        </a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/user-acquisition.html">
+          <span class="en">Understand Where Your Users Come From</span>
+        </a>
+    </div>
+  </li>
+
 </ul>
 
 
diff --git a/docs/html/google/play/billing/billing_overview.jd b/docs/html/google/play/billing/billing_overview.jd
index 4ec4946..cc56468 100644
--- a/docs/html/google/play/billing/billing_overview.jd
+++ b/docs/html/google/play/billing/billing_overview.jd
@@ -32,6 +32,11 @@
     <li><a href="{@docRoot}training/in-app-billing/preparing-iab-app.html#GetSample">Sample
       Application (V3)</a></li>
   </ol>
+   <h2>Related Videos</h2>
+  <ol>
+    <li><a href="https://www.youtube.com/watch?v=UvCl5Xx7Z5o">Implementing
+      Freemium</a></li>
+  </ol>
 </div>
 </div>
 
diff --git a/docs/html/guide/topics/manifest/uses-feature-element.jd b/docs/html/guide/topics/manifest/uses-feature-element.jd
index c1ccef0..9ac514c 100644
--- a/docs/html/guide/topics/manifest/uses-feature-element.jd
+++ b/docs/html/guide/topics/manifest/uses-feature-element.jd
@@ -562,10 +562,11 @@
     <tr>
        <td rowspan="6">Camera</td>
        <td><code>android.hardware.camera</code></td>
-       <td>The application uses the device's camera. If the device supports
-           multiple cameras, the application uses the camera that facing
-           away from the screen.</td>
-       <td></td>
+       <td>The application uses the device's back-facing (main) camera.</td>
+       <td>Devices with only a front-facing camera do not list this feature, so the 
+           <code>android.hardware.camera.any</code> feature should be
+           used instead if a camera facing any direction is acceptable for the
+           application.</td>
     </tr>
 <tr>
   <td><code>android.hardware.camera.autofocus</code></td>
diff --git a/docs/html/images/cards/admob-analytics_2x.png b/docs/html/images/cards/admob-analytics_2x.png
new file mode 100644
index 0000000..5c024b5
--- /dev/null
+++ b/docs/html/images/cards/admob-analytics_2x.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/engage/beta.jpg b/docs/html/images/cards/distribute/engage/beta.jpg
new file mode 100644
index 0000000..40eb901
--- /dev/null
+++ b/docs/html/images/cards/distribute/engage/beta.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/engage/card-game-services.png b/docs/html/images/cards/distribute/engage/card-game-services.png
new file mode 100644
index 0000000..54a3a94
--- /dev/null
+++ b/docs/html/images/cards/distribute/engage/card-game-services.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/users/banners.png b/docs/html/images/cards/distribute/users/banners.png
new file mode 100644
index 0000000..ced01ae
--- /dev/null
+++ b/docs/html/images/cards/distribute/users/banners.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/users/experiments.png b/docs/html/images/cards/distribute/users/experiments.png
new file mode 100644
index 0000000..06ea9ab
--- /dev/null
+++ b/docs/html/images/cards/distribute/users/experiments.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/users/user-acquisition.jpg b/docs/html/images/cards/distribute/users/user-acquisition.jpg
new file mode 100644
index 0000000..8704e7a
--- /dev/null
+++ b/docs/html/images/cards/distribute/users/user-acquisition.jpg
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_developer_page.png b/docs/html/images/distribute/googleplay/about_developer_page.png
new file mode 100644
index 0000000..9e28a2f
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_developer_page.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_hero_play-opportunity.png b/docs/html/images/distribute/googleplay/about_hero_play-opportunity.png
new file mode 100644
index 0000000..97598e9
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_hero_play-opportunity.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_hero_play-opportunity_2x.png b/docs/html/images/distribute/googleplay/about_hero_play-opportunity_2x.png
new file mode 100644
index 0000000..9d0109c
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_hero_play-opportunity_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_personalized_home.png b/docs/html/images/distribute/googleplay/about_personalized_home.png
new file mode 100644
index 0000000..af35c35c
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_personalized_home.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_play_store_home.png b/docs/html/images/distribute/googleplay/about_play_store_home.png
new file mode 100644
index 0000000..6e2b52c
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_play_store_home.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_play_store_listing.png b/docs/html/images/distribute/googleplay/about_play_store_listing.png
new file mode 100644
index 0000000..985456a
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_play_store_listing.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/about_search_results.png b/docs/html/images/distribute/googleplay/about_search_results.png
new file mode 100644
index 0000000..8dbc3f4
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/about_search_results.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab.png b/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab.png
new file mode 100644
index 0000000..efad065
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab_2x.png b/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab_2x.png
new file mode 100644
index 0000000..b60eed3
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_cloud-test-lab_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_conversion-funnel.png b/docs/html/images/distribute/googleplay/dev-console_conversion-funnel.png
new file mode 100644
index 0000000..e2d3769
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_conversion-funnel.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_conversion-funnel_2x.png b/docs/html/images/distribute/googleplay/dev-console_conversion-funnel_2x.png
new file mode 100644
index 0000000..531ed86
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_conversion-funnel_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_player-analytics.png b/docs/html/images/distribute/googleplay/dev-console_player-analytics.png
new file mode 100644
index 0000000..aa4f39e
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_player-analytics.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_player-analytics_2x.png b/docs/html/images/distribute/googleplay/dev-console_player-analytics_2x.png
new file mode 100644
index 0000000..b44e7f0
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_player-analytics_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test.png b/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test.png
new file mode 100644
index 0000000..cf8ebca
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test_2x.png b/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test_2x.png
new file mode 100644
index 0000000..dcea50e
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_running-a-beta-test_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_statistics.png b/docs/html/images/distribute/googleplay/dev-console_statistics.png
new file mode 100644
index 0000000..4bddd1a
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_statistics.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_statistics_2x.png b/docs/html/images/distribute/googleplay/dev-console_statistics_2x.png
new file mode 100644
index 0000000..e1ab470
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_statistics_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment.png b/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment.png
new file mode 100644
index 0000000..52fa217
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment_2x.png b/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment_2x.png
new file mode 100644
index 0000000..ea5d0a4
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/dev-console_store-listing-experiment_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/gp-devconsole-home.png b/docs/html/images/distribute/googleplay/gp-devconsole-home.png
new file mode 100644
index 0000000..a1af0ef
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/gp-devconsole-home.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/hero-store-listing-experiment.png b/docs/html/images/distribute/googleplay/hero-store-listing-experiment.png
new file mode 100644
index 0000000..ad54c2a
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/hero-store-listing-experiment.png
Binary files differ
diff --git a/docs/html/images/distribute/googleplay/hero-store-listing-experiment_2x.png b/docs/html/images/distribute/googleplay/hero-store-listing-experiment_2x.png
new file mode 100644
index 0000000..2925aa5
--- /dev/null
+++ b/docs/html/images/distribute/googleplay/hero-store-listing-experiment_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/hero-IO15-growing-games.jpg b/docs/html/images/distribute/hero-IO15-growing-games.jpg
index c08bd71..f2f6584 100644
--- a/docs/html/images/distribute/hero-IO15-growing-games.jpg
+++ b/docs/html/images/distribute/hero-IO15-growing-games.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-acquisition-devbyte.jpg b/docs/html/images/distribute/hero-acquisition-devbyte.jpg
new file mode 100644
index 0000000..6a533bc
--- /dev/null
+++ b/docs/html/images/distribute/hero-acquisition-devbyte.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-domain-story.jpg b/docs/html/images/distribute/hero-domain-story.jpg
new file mode 100644
index 0000000..2246de0
--- /dev/null
+++ b/docs/html/images/distribute/hero-domain-story.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-dots-story.jpg b/docs/html/images/distribute/hero-dots-story.jpg
new file mode 100644
index 0000000..2791c7e
--- /dev/null
+++ b/docs/html/images/distribute/hero-dots-story.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-jelly-button.jpg b/docs/html/images/distribute/hero-jelly-button.jpg
index 032755b..3cc40f8 100644
--- a/docs/html/images/distribute/hero-jelly-button.jpg
+++ b/docs/html/images/distribute/hero-jelly-button.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-playtime-opener.jpg b/docs/html/images/distribute/hero-playtime-opener.jpg
new file mode 100644
index 0000000..fbd21bd
--- /dev/null
+++ b/docs/html/images/distribute/hero-playtime-opener.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-rogervoice-story.jpg b/docs/html/images/distribute/hero-rogervoice-story.jpg
new file mode 100644
index 0000000..2e48b55
--- /dev/null
+++ b/docs/html/images/distribute/hero-rogervoice-story.jpg
Binary files differ
diff --git a/docs/html/images/distribute/hero-secrets-to-app-success.jpg b/docs/html/images/distribute/hero-secrets-to-app-success.jpg
new file mode 100644
index 0000000..4d59e6b
--- /dev/null
+++ b/docs/html/images/distribute/hero-secrets-to-app-success.jpg
Binary files differ
diff --git a/docs/html/images/distribute/secrets_v2_banner.jpg b/docs/html/images/distribute/secrets_v2_banner.jpg
new file mode 100644
index 0000000..cec4d8e
--- /dev/null
+++ b/docs/html/images/distribute/secrets_v2_banner.jpg
Binary files differ
diff --git a/docs/html/images/distribute/users/banners.png b/docs/html/images/distribute/users/banners.png
new file mode 100644
index 0000000..44a2418
--- /dev/null
+++ b/docs/html/images/distribute/users/banners.png
Binary files differ
diff --git a/docs/html/images/distribute/users/banners_2x.png b/docs/html/images/distribute/users/banners_2x.png
new file mode 100644
index 0000000..2c1cb46
--- /dev/null
+++ b/docs/html/images/distribute/users/banners_2x.png
Binary files differ
diff --git a/docs/html/images/editorschoice_ann.png b/docs/html/images/editorschoice_ann.png
deleted file mode 100644
index c4f2c06..0000000
--- a/docs/html/images/editorschoice_ann.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/google/gps-play_games_logo.png b/docs/html/images/google/gps-play_games_logo.png
index 19692fa..9a107b2 100644
--- a/docs/html/images/google/gps-play_games_logo.png
+++ b/docs/html/images/google/gps-play_games_logo.png
Binary files differ
diff --git a/docs/html/images/google/gps-play_games_logo_2x.png b/docs/html/images/google/gps-play_games_logo_2x.png
new file mode 100644
index 0000000..fcc0c27
--- /dev/null
+++ b/docs/html/images/google/gps-play_games_logo_2x.png
Binary files differ
diff --git a/docs/html/images/gp-about-0.jpg b/docs/html/images/gp-about-0.jpg
deleted file mode 100644
index 2dd6a8c..0000000
--- a/docs/html/images/gp-about-0.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-about-listing.jpg b/docs/html/images/gp-about-listing.jpg
deleted file mode 100644
index 256c051..0000000
--- a/docs/html/images/gp-about-listing.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-about-picks1.jpg b/docs/html/images/gp-about-picks1.jpg
deleted file mode 100644
index 555bd7b..0000000
--- a/docs/html/images/gp-about-picks1.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-about-picks2.jpg b/docs/html/images/gp-about-picks2.jpg
deleted file mode 100644
index ec25e74..0000000
--- a/docs/html/images/gp-about-picks2.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-about-picks3.jpg b/docs/html/images/gp-about-picks3.jpg
deleted file mode 100644
index eb57da9..0000000
--- a/docs/html/images/gp-about-picks3.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-about-top.jpg b/docs/html/images/gp-about-top.jpg
deleted file mode 100644
index 01a2744..0000000
--- a/docs/html/images/gp-about-top.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-badges-set.png b/docs/html/images/gp-badges-set.png
index e2e0e94..f1c74a7 100644
--- a/docs/html/images/gp-badges-set.png
+++ b/docs/html/images/gp-badges-set.png
Binary files differ
diff --git a/docs/html/images/gp-devconsole-home.png b/docs/html/images/gp-devconsole-home.png
deleted file mode 100644
index b29dc25..0000000
--- a/docs/html/images/gp-devconsole-home.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-rating-web.png b/docs/html/images/gp-rating-web.png
deleted file mode 100644
index 14582af..0000000
--- a/docs/html/images/gp-rating-web.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/topdev_ann.png b/docs/html/images/topdev_ann.png
deleted file mode 100644
index 9564387e..0000000
--- a/docs/html/images/topdev_ann.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/app_icon_action.png b/docs/html/images/training/app/app_icon_action.png
deleted file mode 100644
index 591475d..0000000
--- a/docs/html/images/training/app/app_icon_action.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/app_icon_gather.png b/docs/html/images/training/app/app_icon_gather.png
deleted file mode 100644
index 73a8736..0000000
--- a/docs/html/images/training/app/app_icon_gather.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/app_icon_insight.png b/docs/html/images/training/app/app_icon_insight.png
deleted file mode 100644
index fbdcb80..0000000
--- a/docs/html/images/training/app/app_icon_insight.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/app_logo_black_decal.png b/docs/html/images/training/app/app_logo_black_decal.png
deleted file mode 100644
index 7964ff6..0000000
--- a/docs/html/images/training/app/app_logo_black_decal.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/app_logo_black_decal_no_text.png b/docs/html/images/training/app/app_logo_black_decal_no_text.png
deleted file mode 100644
index a3bcb68..0000000
--- a/docs/html/images/training/app/app_logo_black_decal_no_text.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/app_logo_decal_white.png b/docs/html/images/training/app/app_logo_decal_white.png
deleted file mode 100644
index 7063f0e..0000000
--- a/docs/html/images/training/app/app_logo_decal_white.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/combine_views.png b/docs/html/images/training/app/combine_views.png
deleted file mode 100644
index f4bb620..0000000
--- a/docs/html/images/training/app/combine_views.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/find_in_path_dialog.png b/docs/html/images/training/app/find_in_path_dialog.png
deleted file mode 100644
index 26aa00b..0000000
--- a/docs/html/images/training/app/find_in_path_dialog.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/flatten_view_hierarchy.png b/docs/html/images/training/app/flatten_view_hierarchy.png
deleted file mode 100644
index d6ae80f..0000000
--- a/docs/html/images/training/app/flatten_view_hierarchy.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/gather_insight_action.png b/docs/html/images/training/app/gather_insight_action.png
deleted file mode 100644
index 1ce7ec1..0000000
--- a/docs/html/images/training/app/gather_insight_action.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/gcm_flow.png b/docs/html/images/training/app/gcm_flow.png
deleted file mode 100644
index 991c761..0000000
--- a/docs/html/images/training/app/gcm_flow.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/layout_pass_multiplication.png b/docs/html/images/training/app/layout_pass_multiplication.png
deleted file mode 100644
index c0737fd..0000000
--- a/docs/html/images/training/app/layout_pass_multiplication.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/network_traffic_colors.png b/docs/html/images/training/app/network_traffic_colors.png
deleted file mode 100644
index 1199c6c..0000000
--- a/docs/html/images/training/app/network_traffic_colors.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/network_traffic_gray.png b/docs/html/images/training/app/network_traffic_gray.png
deleted file mode 100644
index dde704d..0000000
--- a/docs/html/images/training/app/network_traffic_gray.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/optimal_network_traffic_pattern.png b/docs/html/images/training/app/optimal_network_traffic_pattern.png
deleted file mode 100644
index 0f68d83..0000000
--- a/docs/html/images/training/app/optimal_network_traffic_pattern.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/overdraw_screen_example_before_after.png b/docs/html/images/training/app/overdraw_screen_example_before_after.png
deleted file mode 100644
index d8eea6b..0000000
--- a/docs/html/images/training/app/overdraw_screen_example_before_after.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/profile_gpu_rendering_annotated_graph.png b/docs/html/images/training/app/profile_gpu_rendering_annotated_graph.png
deleted file mode 100644
index 0642fe0..0000000
--- a/docs/html/images/training/app/profile_gpu_rendering_annotated_graph.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/remove_hidden_views.png b/docs/html/images/training/app/remove_hidden_views.png
deleted file mode 100644
index 8ab5148..0000000
--- a/docs/html/images/training/app/remove_hidden_views.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/stacked_cards.png b/docs/html/images/training/app/stacked_cards.png
deleted file mode 100644
index 5de874a..0000000
--- a/docs/html/images/training/app/stacked_cards.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/app/suboptimal_network_traffic_pattern.png b/docs/html/images/training/app/suboptimal_network_traffic_pattern.png
deleted file mode 100644
index 484019c..0000000
--- a/docs/html/images/training/app/suboptimal_network_traffic_pattern.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/training/wear/ask_again.png b/docs/html/images/training/wear/ask_again.png
new file mode 100644
index 0000000..33c110b
--- /dev/null
+++ b/docs/html/images/training/wear/ask_again.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_again_2x.png b/docs/html/images/training/wear/ask_again_2x.png
new file mode 100644
index 0000000..8996203
--- /dev/null
+++ b/docs/html/images/training/wear/ask_again_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_in_context.png b/docs/html/images/training/wear/ask_in_context.png
new file mode 100644
index 0000000..61fa478
--- /dev/null
+++ b/docs/html/images/training/wear/ask_in_context.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_in_context_2x.png b/docs/html/images/training/wear/ask_in_context_2x.png
new file mode 100644
index 0000000..20c1f47
--- /dev/null
+++ b/docs/html/images/training/wear/ask_in_context_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_up_front.png b/docs/html/images/training/wear/ask_up_front.png
new file mode 100644
index 0000000..ced2228
--- /dev/null
+++ b/docs/html/images/training/wear/ask_up_front.png
Binary files differ
diff --git a/docs/html/images/training/wear/ask_up_front_2x.png b/docs/html/images/training/wear/ask_up_front_2x.png
new file mode 100644
index 0000000..ef7eb46
--- /dev/null
+++ b/docs/html/images/training/wear/ask_up_front_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/deny.png b/docs/html/images/training/wear/deny.png
new file mode 100644
index 0000000..a1e9562
--- /dev/null
+++ b/docs/html/images/training/wear/deny.png
Binary files differ
diff --git a/docs/html/images/training/wear/deny_2x.png b/docs/html/images/training/wear/deny_2x.png
new file mode 100644
index 0000000..721c271
--- /dev/null
+++ b/docs/html/images/training/wear/deny_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/educate_in_context.png b/docs/html/images/training/wear/educate_in_context.png
new file mode 100644
index 0000000..c8ac641
--- /dev/null
+++ b/docs/html/images/training/wear/educate_in_context.png
Binary files differ
diff --git a/docs/html/images/training/wear/educate_in_context_2x.png b/docs/html/images/training/wear/educate_in_context_2x.png
new file mode 100644
index 0000000..92baead
--- /dev/null
+++ b/docs/html/images/training/wear/educate_in_context_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/educate_up_front.png b/docs/html/images/training/wear/educate_up_front.png
new file mode 100644
index 0000000..2e4fdf7
--- /dev/null
+++ b/docs/html/images/training/wear/educate_up_front.png
Binary files differ
diff --git a/docs/html/images/training/wear/educate_up_front_2x.png b/docs/html/images/training/wear/educate_up_front_2x.png
new file mode 100644
index 0000000..1f6f491
--- /dev/null
+++ b/docs/html/images/training/wear/educate_up_front_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/for_services.png b/docs/html/images/training/wear/for_services.png
new file mode 100644
index 0000000..0aaae10
--- /dev/null
+++ b/docs/html/images/training/wear/for_services.png
Binary files differ
diff --git a/docs/html/images/training/wear/for_services_2x.png b/docs/html/images/training/wear/for_services_2x.png
new file mode 100644
index 0000000..a7f92f2
--- /dev/null
+++ b/docs/html/images/training/wear/for_services_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/for_settings.png b/docs/html/images/training/wear/for_settings.png
new file mode 100644
index 0000000..fde50c7
--- /dev/null
+++ b/docs/html/images/training/wear/for_settings.png
Binary files differ
diff --git a/docs/html/images/training/wear/for_settings_2x.png b/docs/html/images/training/wear/for_settings_2x.png
new file mode 100644
index 0000000..c2daa7c
--- /dev/null
+++ b/docs/html/images/training/wear/for_settings_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/multiple_permissions.png b/docs/html/images/training/wear/multiple_permissions.png
new file mode 100644
index 0000000..65e3e08
--- /dev/null
+++ b/docs/html/images/training/wear/multiple_permissions.png
Binary files differ
diff --git a/docs/html/images/training/wear/multiple_permissions_2x.png b/docs/html/images/training/wear/multiple_permissions_2x.png
new file mode 100644
index 0000000..cbaace8
--- /dev/null
+++ b/docs/html/images/training/wear/multiple_permissions_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/open_on_phone.png b/docs/html/images/training/wear/open_on_phone.png
new file mode 100644
index 0000000..1899839
--- /dev/null
+++ b/docs/html/images/training/wear/open_on_phone.png
Binary files differ
diff --git a/docs/html/images/training/wear/open_on_phone_2x.png b/docs/html/images/training/wear/open_on_phone_2x.png
new file mode 100644
index 0000000..e5c2c96
--- /dev/null
+++ b/docs/html/images/training/wear/open_on_phone_2x.png
Binary files differ
diff --git a/docs/html/images/training/wear/phone_requests_wear.png b/docs/html/images/training/wear/phone_requests_wear.png
new file mode 100644
index 0000000..4d0b09d
--- /dev/null
+++ b/docs/html/images/training/wear/phone_requests_wear.png
Binary files differ
diff --git a/docs/html/images/training/wear/phone_requests_wear_2x.png b/docs/html/images/training/wear/phone_requests_wear_2x.png
new file mode 100644
index 0000000..1c98f4a
--- /dev/null
+++ b/docs/html/images/training/wear/phone_requests_wear_2x.png
Binary files differ
diff --git a/docs/html/jd_collections.js b/docs/html/jd_collections.js
index 9f39602..0f2ba3e 100644
--- a/docs/html/jd_collections.js
+++ b/docs/html/jd_collections.js
@@ -16,10 +16,10 @@
   "index/secondary/carousel": {
     "title": "",
     "resources": [
-      "http://www.youtube.com/watch?v=0r36OJaeMo4",
-      "http://www.youtube.com/watch?v=1Iw7Tg_afKk",
-      "http://www.youtube.com/watch?v=TieksFvD-7o",
-      "http://www.youtube.com/watch?v=MCoh4Pxs_ok"
+      "http://www.youtube.com/watch?v=yJisuP94lHU",
+      "http://www.youtube.com/watch?v=rcU7VEs1hiE",
+      "http://www.youtube.com/watch?v=JFlX9rW7Epc",
+      "http://www.youtube.com/watch?v=4CqXCkcN_d4"
     ]
   },
   "index/multiscreen": {
@@ -95,6 +95,14 @@
       "http://android-developers.blogspot.com/2015/03/a-new-reference-app-for-multi-device.html"
     ]
   },
+  "develop/landing/devpatterns": {
+    "title": "",
+    "resources": [
+      "https://www.youtube.com/watch?v=kmUGLURRPkI",
+      "https://www.youtube.com/watch?v=HGElAW224dE",
+      "https://www.youtube.com/watch?v=zQekzaAgIlQ"
+    ]
+  },
   "develop/landing/performance": {
     "title": "",
     "resources": [
@@ -179,10 +187,10 @@
   "distribute/landing/carousel": {
     "title": "",
     "resources": [
-      "https://www.youtube.com/watch?v=QDM52bblwlg",
-      "https://www.youtube.com/watch?v=wcjqBSei3a0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
-      "https://www.youtube.com/watch?v=B6ydLpkhq04&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
-      "https://www.youtube.com/watch?v=jyO3-rF4Mu0&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
+    "distribute/googleplay/guide.html",
+    "http://www.youtube.com/watch?v=JrR6o5tYMWQ",
+    "https://www.youtube.com/watch?v=B6ydLpkhq04&list=PLOU2XLYxmsIKLNUPiFCWVtcO7mZRZ9MmS",
+    "http://www.youtube.com/watch?v=yJisuP94lHU",
     ]
   },
   "distribute/landing/googleplay": {
@@ -300,6 +308,7 @@
       "distribute/googleplay/edu/about.html",
       "distribute/googleplay/cast.html",
       "distribute/googleplay/cardboard.html",
+      "distribute/googleplay/guide.html"
     ]
   },
   "distribute/googleplay/gpfw": {
@@ -344,6 +353,10 @@
       "distribute/users/ota-installs.html",
       "distribute/users/youtube.html",
       "distribute/users/house-ads.html",
+      "distribute/users/experiments.html",
+      "distribute/users/user-acquisition.html",
+      "distribute/users/banners.html",
+      "distribute/users/beta.html"
     ]
   },
   "distribute/engagelanding": {
@@ -357,6 +370,8 @@
       "distribute/engage/easy-signin.html",
       "distribute/analyze/build-better-apps.html",
       "distribute/engage/gcm.html",
+      "distribute/engage/beta.html"
+
     ]
   },
   "distribute/monetize": {
@@ -455,7 +470,7 @@
       "https://support.google.com/googleplay/android-developer",
       "distribute/tools/promote/brand.html",
       "distribute/tools/promote/device-art.html",
-      "distribute/tools/promote/badges.html",
+      "https://play.google.com/intl/en_us/badges/",
       "distribute/tools/promote/linking.html",
       "distribute/tools/open-distribution.html",
       "about/dashboards/index.html"
@@ -546,13 +561,46 @@
       "https://support.google.com/googleplay/android-developer"
     ]
   },
-  "distribute/googleplay/developerconsole": {
+  "distribute/googleplay/developerconsole/related": {
     "title": "Developer Console",
     "resources": [
       "google/play/billing/index.html",
       "https://support.google.com/googleplay/android-developer/answer/138294"
     ]
   },
+  "distribute/googleplay/beta": {
+    "title": "Alpha and Beta Testing",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/3131213",
+      "https://support.google.com/googleplay/android-developer/answer/3131213#games",
+      "distribute/googleplay/experiments.html"
+    ]
+  },
+  "distribute/googleplay/experiments/successes": {
+    "title": "Store Listing Experiment successes",
+    "resources": [
+    ]
+  },
+  "distribute/googleplay/experiments/related": {
+    "title": "Store Listing Experiments",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/6227309",
+      "https://www.youtube.com/watch?v=B6ydLpkhq04",
+      "https://support.google.com/tagmanager/answer/6003007"
+    ]
+  },
+  "distribute/googleplay/banners/related": {
+    "title": "App Install Banners",
+    "resources": [
+      "https://developers.google.com/web/updates/2015/03/increasing-engagement-with-app-install-banners-in-chrome-for-android#native"
+    ]
+  },
+  "distribute/googleplay/useracquisition/related": {
+    "title": "User Acquisition",
+    "resources": [
+      "https://support.google.com/googleplay/android-developer/answer/6263332"
+    ]
+  },
   "distribute/googleplay/cast": {
     "title": "Google Cast",
     "resources": [
@@ -988,11 +1036,13 @@
       "https://developers.google.com/cloud-messaging/android/client",
     ]
   },
-  "distribute/engage/googleplaygames": {
+  "distribute/engage/gamesservices/related": {
     "title": "",
     "resources": [
-      "google/play-services/games.html",
-      "distribute/essentials/best-practices/games.html"
+      "https://developers.google.com/games/services/",
+      "distribute/analyze/start.html",
+      "distribute/googleplay/cardboard.html",
+      "http://www.google.com/admob/"
     ]
   },
   "distribute/engage/gplus": {
@@ -1433,12 +1483,6 @@
       "training/wearables/ui/index.html"
     ]
   },
-  "play_dev_guide": {
-    "title": "",
-    "resources": [
-      "shareables/distribute/play_dev_guide_secrets_en.pdf"
-    ]
-  },
   "design/auto/auto_ui_guidelines": {
     "title": "",
     "resources": [
@@ -1635,9 +1679,9 @@
   "marshmallow/landing/resources": {
     "title": "",
     "resources": [
+       "about/versions/marshmallow/android-6.0-changes.html",
        "about/versions/marshmallow/android-6.0.html",
-       "about/versions/marshmallow/samples.html",
-       "https://developers.google.com/android/nexus/images"
+       "about/versions/marshmallow/samples.html"
     ]
   },
   "marshmallow/landing/videos": {
@@ -1667,7 +1711,8 @@
       "training/monitoring-device-state/doze-standby.html",
       "training/app-links/index.html",
       "training/articles/assistant.html",
-      "training/testing/performance.html"
+      "training/testing/performance.html",
+      "https://developers.google.com/android/nexus/images"
     ]
   },
 }
diff --git a/docs/html/jd_extras.js b/docs/html/jd_extras.js
index dda5277..8e2f040 100644
--- a/docs/html/jd_extras.js
+++ b/docs/html/jd_extras.js
@@ -17,6 +17,72 @@
  /* TODO Remove standard resources from here, such as below
  */
   {
+    "title":"Measure your app’s user acquisition channels",
+    "titleFriendly":"",
+    "summary":"Get details on how to use the Developer Console User Acquisitions reports to discover where your users come from.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/6263332",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
+    "title":"Set up native app install banners in Chrome",
+    "titleFriendly":"",
+    "summary":"Get the details you need to add your native app or game to your site’s web app manifest file.",
+    "url":"https://developers.google.com/web/updates/2015/03/increasing-engagement-with-app-install-banners-in-chrome-for-android#native",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
+    "title":"Optimize your store listing pages with experiments",
+    "titleFriendly":"",
+    "summary":"You can run experiments to find the most effective graphics and localized text for your app.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/6227309",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
+    "title":"Content Experiments for Mobile Apps",
+    "titleFriendly":"",
+    "summary":"Google Analytics Content Experiments allows you to test multiple variations of a given web page.",
+    "url":"https://support.google.com/tagmanager/answer/6003007",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
+    "title":"Store Listing Experiments for Google Play",
+    "titleFriendly":"",
+    "summary":"Learn how to use Google Play’s new store listing optimization feature to get more installs of your app.",
+    "url":"https://www.youtube.com/watch?v=B6ydLpkhq04",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"http://i1.ytimg.com/vi/B6ydLpkhq04/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Use alpha/beta testing & staged rollouts",
+    "titleFriendly":"",
+    "summary":"Using the Google Play Developer Console, you can choose groups of users to test different versions of your app.",
+    "url":"https://support.google.com/googleplay/android-developer/answer/3131213",
+    "group":"",
+    "keywords": [],
+    "tags": [],
+    "image":"images/play_dev.jpg",
+    "type":"google"
+  },
+  {
     "title":"Quizlet Developer Story",
     "titleFriendly":"",
     "summary":"Quizlet is an extremely popular online learning tool for students. See how they optimized for the classroom with Android and the power of Google Play for Education.",
@@ -247,6 +313,42 @@
     "type":"video"
   },
   {
+    "title":"Toolbars for a flexible Action Bar & more",
+    "titleFriendly":"",
+    "summary":"Toolbars are a flexible View you can add to your Android app which provides many of the same APIs as the system provided Action Bar, but can also do so much more such as reacting to scrolling or being integrated directly into your layouts.",
+    "url":"https://www.youtube.com/watch?v=kmUGLURRPkI",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"http://i1.ytimg.com/vi/kmUGLURRPkI/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Protecting Implicit Intents with Runtime Checks",
+    "titleFriendly":"",
+    "summary":"Make sure you protect your implicit intents with a simple runtime check.",
+    "url":"https://www.youtube.com/watch?v=HGElAW224dE",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"http://i1.ytimg.com/vi/HGElAW224dE/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
+    "title":"Tabs and ViewPager",
+    "titleFriendly":"",
+    "summary":"Showing multiple screens or pages of content is easy with the help of ViewPager and a PagerAdapter. Combining that with tabs make for an effective top level navigation strategy for your app or for moving between content at the same level of hierarchy within your app.",
+    "url":"https://www.youtube.com/watch?v=zQekzaAgIlQ",
+    "group":"",
+    "keywords": [],
+    "tags": [
+    ],
+    "image":"http://i1.ytimg.com/vi/zQekzaAgIlQ/maxresdefault.jpg",
+    "type":"video"
+  },
+  {
     "title":"Battery Drain and Networking",
     "titleFriendly":"",
     "summary":"Let’s take a moment to make something insanely clear: As far as battery is concerned, NETWORKING is the biggest, baddest, dirtiest offender there is. And optimizing performance here isn’t easy. Since the chip isn’t always awake and draining power, means you can optimize how it wakes up, sends traffic, and saves battery.",
@@ -425,6 +527,17 @@
     "type":"google"
   },
   {
+    "title":"Google Play Badge Generator",
+    "titleFriendly":"",
+    "summary":"Build badges for your app in just a few clicks, or download hi-res badge assets localized for a variety of languages.",
+    "url":"https://play.google.com/intl/en_us/badges/",
+    "group":"",
+    "keywords": [],
+    "tags": ["#developersupport"],
+    "image":"images/gp-badges-set.png",
+    "type":"google"
+  },
+  {
     "lang": "en",
     "group": "",
     "tags": ["#developersupport #termsandpolicies"],
@@ -506,15 +619,47 @@
   {
     "title":"Google Play Game Services",
     "titleFriendly":"",
-    "summary":"Tools to offer a better game experience.",
-    "url":"google/play-services/games.html",
+    "summary":"Make your games social with Google Play game services. Add achievements, leaderboards, real-time multiplayer, and other popular features using the Google Play game services SDK.",
+    "url":"https://developers.google.com/games/services/",
     "group":"",
     "keywords": ["games","play games"],
     "tags": [],
     "image":"images/google/gps-play_games_logo.png",
     "type":"google"
   },
-
+  {
+    "title":"Get Started with Analytics",
+    "titleFriendly":"",
+    "summary":"Get advanced insight into how players discover and play your games.",
+    "url":"distribute/analyze/start.html",
+    "group":"",
+    "keywords": ["analytics"],
+    "tags": [],
+    "image": "images/cards/analytics-mobile_2x.jpg",
+    "type": "distribute"
+  },
+  {
+    "title":"Build VR with Google Cardboard",
+    "titleFriendly":"",
+    "summary":"Turn any phone into a virtual reality headset with a Cardboard viewer and experiment with adding virtual reality to your games with the Cardboard SDK.",
+    "url":"distribute/googleplay/cardboard.html",
+    "group":"",
+    "keywords": ["cardboard"],
+    "tags": [],
+    "image":"images/cards/card-cardboard_2x.png",
+    "type": "distribute"
+  },
+  {
+    "title":"Monetize your apps intelligently",
+    "titleFriendly":"",
+    "summary":"Generate revenue from your free games with ads tailored to match your game's look and feel.",
+    "url":"http://www.google.com/admob/",
+    "group":"",
+    "keywords": ["AdMob"],
+    "tags": [],
+    "image":"images/cards/admob-analytics_2x.png",
+    "type": "distribute"
+  },
   {
     "lang": "en",
     "group": "",
@@ -530,7 +675,6 @@
     "type": "blog",
     "titleFriendly": ""
   },
-
   {
     "lang": "en",
     "group": "",
@@ -586,13 +730,13 @@
   {
     "lang": "en",
     "group": "",
-    "tags": [],
+    "tags": ["devices", "nexus", "testing"],
     "url": "https://developers.google.com/android/nexus/images",
     "timestamp": 1194884220000,
     "image": "images/cards/card-download_16-9_2x.png",
-    "title": "System Images",
-    "summary": "Download system images for Marshmallow.",
-    "keywords": [],
+    "title": "Factory Images for Nexus Devices",
+    "summary": "System image files for Android 6.0 and other Android releases.",
+    "keywords": ["nexus, downloads"],
     "type": "support",
     "titleFriendly": ""
   },
@@ -1931,15 +2075,15 @@
   {
     "lang": "en",
     "group": "",
-    "tags": [],
-    "url": "shareables/distribute/play_dev_guide_secrets_en.pdf",
-    "timestamp": null,
-    "image": "distribute/images/play_dev_guide_b.jpg",
+    "tags": ["play,protips"],
+    "url": "shareables/distribute/secrets_play/v2/web/secrets_to_app_success_v2_en.pdf",
+    "timestamp": 1447437450,
+    "image": "images/distribute/secrets_v2_banner.jpg",
     "title": "The Secrets to App Success on Google Play",
-    "summary": "A guide to useful features, tips, and best practices that will help you grow a successful app business on Google Play.",
-    "keywords": ["distribute"],
-    "type": "PDF DOWNLOAD (11MB)",
-    "titleFriendly": ""
+    "summary": "Get the updated guide full of useful features, tips, and best practices that will help you grow a successful app or game business on Google Play.",
+    "keywords": ["secrets, success, play, google"],
+    "type": "Book",
+    "category": "distribute"
   },
   {
     "lang": "en",
@@ -3589,10 +3733,31 @@
     "tags":["io15","android", "googleplay","games"],
     "keywords":["Google I/O","google play","games"],
     "type":"youtube"
-  }
+  },
+  {
+    "url":"http://www.youtube.com/watch?v=yJisuP94lHU",
+    "image": "images/distribute/hero-playtime-opener.jpg",
+    "title": "Playtime 2015: Innovation happens everywhere",
+    "type":"Video",
+    "tags":["googleplay"],
+    "summary": "Watch the opening video from Google Play's annual event series, Playtime, which celebrates inspirational developers who are changing the world around them.",
+  },
+{
+    "url":"http://www.youtube.com/watch?v=JrR6o5tYMWQ",
+    "image": "images/distribute/hero-acquisition-devbyte.jpg",
+    "title": "User acquisition and tracking on Google Play",
+    "type" : "Video",
+    "tags" : "users,googleplay,googleio",
+    "summary": "Learn how to get new users, using Universal app campaigns directly within the Google Play Developer Console to increase your installs from ads, and find out how your acquisition channels perform.",
+  },
 ]);
 
 var CAROUSEL_OVERRIDE = {
+  "distribute/googleplay/guide.html": {
+    "image": "images/distribute/hero-secrets-to-app-success.jpg",
+    "title": "The Secrets to App Success on Google Play",
+    "summary": "Get the updated guide full of useful features, tips, and best practices that will help you grow a successful app or game business on Google Play.",
+  },
   "about/versions/lollipop.html": {
     "image": "images/home/hero-lollipop_2x.png",
     "heroColor": "#263238",
@@ -3600,6 +3765,41 @@
     "title": "Android 5.0 Lollipop",
     "summary": "The Android 5.0 update adds a variety of new features for your apps, such as notifications on the lock screen, an all-new camera API, OpenGL ES 3.1, the new naterial design interface, and much more.",
   },
+  "http://www.youtube.com/watch?v=yJisuP94lHU": {
+    "url":"https://www.youtube.com/watch?v=yJisuP94lHU&index=1&list=PLWz5rJ2EKKc_QRBk7Zkl5uGjR1He7vG-w",
+    "image": "images/distribute/hero-playtime-opener.jpg",
+    "title": "Playtime 2015: Innovation happens everywhere",
+    "type":"youtube",
+    "summary": "Watch the opening video from Google Play's annual event series, Playtime, which celebrates inspirational developers who are changing the world around them.",
+  },
+  "http://www.youtube.com/watch?v=rcU7VEs1hiE": {
+    "url":"http://www.youtube.com/watch?v=rcU7VEs1hiE&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
+    "image": "images/distribute/hero-rogervoice-story.jpg",
+    "title": "RogerVoice uses beta testing to launch on Android first",
+    "type" : "youtube",
+    "summary": "RogerVoice helps people who are hearing impaired make phone calls through voice recognition and text captions. Hear how they used material design and beta testing to create a UI that's accessible and intuitive to navigate.",
+  },
+  "http://www.youtube.com/watch?v=JFlX9rW7Epc": {
+    "url":"http://www.youtube.com/watch?v=JFlX9rW7Epc&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
+    "image": "images/distribute/hero-domain-story.jpg",
+    "title": "Domain increases installs by 44% with Material Design",
+    "type" : "youtube",
+    "summary": "Learn how Domain, a premier real-estate portal in Australia, drastically improved their Google Play app reviews, ratings and downloads by investing in their Android app experience.",
+  },
+  "http://www.youtube.com/watch?v=4CqXCkcN_d4": {
+    "url":"http://www.youtube.com/watch?v=4CqXCkcN_d4&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
+    "image": "images/distribute/hero-dots-story.jpg",
+    "title": "Dots increases installs with Store Listing Experiments",
+    "type" : "youtube",
+    "summary": "Hear how US-founded game developer, Dots, used the Store Listing Experiments feature in the Google Play Developer Console to test what icon, graphics, and text worked the best at converting visitors to installs.",
+  },
+  "http://www.youtube.com/watch?v=JrR6o5tYMWQ": {
+    "url":"http://www.youtube.com/watch?v=JrR6o5tYMWQ",
+    "image": "images/distribute/hero-acquisition-devbyte.jpg",
+    "title": "User acquisition and tracking on Google Play",
+    "type" : "youtube",
+    "summary": "Learn how to get new users, using Universal app campaigns directly within the Google Play Developer Console to increase your installs from ads, and find out how your acquisition channels perform.",
+  },
   "http://www.youtube.com/watch?v=Pd49vTkvu0U": {
     "url":"http://www.youtube.com/watch?v=Pd49vTkvu0U&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
     "image": "images/distribute/hero-jelly-button.jpg",
@@ -3623,12 +3823,6 @@
     "title": "How GinLemon is breaking through with Google Play",
     "summary": "Meet Vincenzo Colucci, developer and founder of GinLemon, which started as a summer holiday joke and has now become a successful global app business on Google Play based in Manfredonia, southern Italy.",
   },
-  "distribute/googleplay/guide.html": {
-    "heroColor": "#fcb94e",
-    "image": "images/distribute/hero-g-play-guidebooks_2x.png",
-    "title": "Finding success on Google Play",
-    "summary": "We’ve created a downloadable guide to help you find success with your app or game business on Google Play. In it, you’ll find features, tips, and best practices to help you build an effective strategy.",
-  },
   "http://www.youtube.com/watch?v=0r36OJaeMo4": {
     "url":"http://www.youtube.com/watch?v=0r36OJaeMo4&list=PLWz5rJ2EKKc9ofd2f-_-xmUi07wIGZa1c",
     "image": "images/distribute/hero-shifty-jelly.jpg",
@@ -3679,4 +3873,4 @@
     "tags":["io15"],
     "summary": "The games industry has never been more promising and full of opportunities. This talk from Google I/O 2015 covers how Google is helping developers across a broad range of existing and emerging platforms.",
   }
-};
\ No newline at end of file
+};
diff --git a/docs/html/sdk/index.jd b/docs/html/sdk/index.jd
index 1afb0fb..f522b9a 100644
--- a/docs/html/sdk/index.jd
+++ b/docs/html/sdk/index.jd
@@ -5,28 +5,28 @@
 header.hide=1
 page.metaDescription=Download the official Android IDE and developer tools to build apps for Android phones, tablets, wearables, TVs, and more.
 
-studio.version=1.4.1.0
+studio.version=1.5.0.4
 
-studio.linux_bundle_download=android-studio-ide-141.2343393-linux.zip
-studio.linux_bundle_bytes=381078272
-studio.linux_bundle_checksum=c38eb7afec75fe529efecd2f05500f1715e82cfe
+studio.linux_bundle_download=android-studio-ide-141.2422023-linux.zip
+studio.linux_bundle_bytes=380940715
+studio.linux_bundle_checksum=25f3b2b67641ef72e54d2c74cc69fde059630b50
 
-studio.mac_bundle_download=android-studio-ide-141.2343393-mac.dmg
-studio.mac_bundle_bytes=364890127
-studio.mac_bundle_checksum=f99f7e4916b39d0248ab7278765d105a7ce342fb
+studio.mac_bundle_download=android-studio-ide-141.2422023-mac.dmg
+studio.mac_bundle_bytes=367454371
+studio.mac_bundle_checksum=9ff98b82e85081910d35b39342127cfc9071c08a
 
-studio.win_bundle_download=android-studio-ide-141.2343393-windows.zip
-studio.win_bundle_bytes=373749630
-studio.win_bundle_checksum=ac5eea9cdd0ec7f0321ad459c0420c5fa7e1b332
+studio.win_bundle_download=android-studio-ide-141.2422023-windows.zip
+studio.win_bundle_bytes=375657281
+studio.win_bundle_checksum=b427298bfc80b9f162fef3cba95a5775c86b4676
 
 
-studio.win_bundle_exe_download=android-studio-bundle-141.2343393-windows.exe
-studio.win_bundle_exe_bytes=1192115784
-studio.win_bundle_exe_checksum=de9e6172533fa02051efabb9ed3a485995582e13
+studio.win_bundle_exe_download=android-studio-bundle-141.2422023-windows.exe
+studio.win_bundle_exe_bytes=1209184992
+studio.win_bundle_exe_checksum=e44c0c7fe53ca8e8a6f3b9bdc7551c3b8ee41f30
 
-studio.win_notools_exe_download=android-studio-ide-141.2343393-windows.exe
-studio.win_notools_exe_bytes=348552720
-studio.win_notools_exe_checksum=227160920052916e538512f8ccbf49296bb2b1f2
+studio.win_notools_exe_download=android-studio-ide-141.2422023-windows.exe
+studio.win_notools_exe_bytes=351441320
+studio.win_notools_exe_checksum=41933764d0f6d232cf8c123974c80fd400f0e6ea
 
 
 
diff --git a/docs/html/tools/help/vector-asset-studio.jd b/docs/html/tools/help/vector-asset-studio.jd
index 58e53cc..491a699 100644
--- a/docs/html/tools/help/vector-asset-studio.jd
+++ b/docs/html/tools/help/vector-asset-studio.jd
@@ -34,7 +34,7 @@
 
   <h2>Dependencies and Prerequisites</h2>
   <ul>
-    <li>Gradle 1.4.0 or higher</li>
+    <li><a href="{@docRoot}tools/building/plugin-for-gradle.html">Android Plugin for Gradle</a> 1.5.0 or higher</li>
   </ul>
 
 </div>
@@ -98,7 +98,8 @@
 project; also, at build time, Gradle creates Portable Network Graphic (PNG) raster images at various
 resolutions. Gradle generates the PNG densities specified by the Domain Specific Language (DSL)
 <a href="http://google.github.io/android-gradle-dsl/1.4/com.android.build.gradle.internal.dsl.ProductFlavor.html#com.android.build.gradle.internal.dsl.ProductFlavor:generatedDensities" class="external-link">generatedDensities</a> property
-in a <code>build.gradle</code> file. To generate PNGs, the build system requires Gradle 1.4.0 or higher.</p>
+in a <code>build.gradle</code> file. To generate PNGs, the build system requires Android
+Plugin for Gradle 1.5.0 or higher.</p>
 
 <p>For Android 5.0 (API level 21) and higher, Vector Asset Studio supports all of the {@link
 android.graphics.drawable.VectorDrawable} elements. For backward compatibility with Android 4.4 (API
@@ -106,7 +107,7 @@
 
 <div class="wrap">
   <div class="cols">
-    <div class="col-1of2">
+    <div class="col-1of3">
 
 <p><code>&lt;vector></code></p>
 <ul>
@@ -119,8 +120,23 @@
 
 </div>
 
+<div class="col-1of3">
 
-<div class="col-1of2">
+<p><code>&lt;group></code></p>
+<ul>
+  <li><code>android:rotation</code></li>
+  <li><code>android:pivotX</code></li>
+  <li><code>android:pivotY</code></li>
+  <li><code>android:scaleX</code></li>
+  <li><code>android:scaleY</code></li>
+  <li><code>android:translateX</code></li>
+  <li><code>android:translateY</code></li>
+</ul>
+
+</div>
+
+
+<div class="col-1of3">
 
 <p><code>&lt;path></code></p>
 <ul>
@@ -130,6 +146,9 @@
   <li><code>android:strokeWidth</code></li>
   <li><code>android:strokeAlpha</code></li>
   <li><code>android:fillAlpha</code></li>
+  <li><code>android:strokeLineCap</code></li>
+  <li><code>android:strokeLineJoin</code></li>
+  <li><code>android:strokeMiterLimit</code></li>
 </ul>
 
 </div>
@@ -163,12 +182,12 @@
   <p>Vector Asset Studio appears.</p>
   <img src="{@docRoot}images/tools/vas-materialicon.png" />
   <li>If a <em>Need newer Android plugin for Gradle</em> dialog appears instead, correct
-  your Gradle version as follows.</li>
+  your Gradle version as follows:</li>
     <ol type="a">
       <li>Select <strong>File</strong> > <strong>Project Structure</strong>.</li>
       <li>In the <em>Project Structure</em> dialog, select <strong>Project</strong>.</li>
-      <li>In the <strong>Android Plugin Version</strong> field, change the Gradle version to
-      <strong>1.4.0</strong> or higher, and click <strong>OK</strong>.</li>
+      <li>In the <strong>Android Plugin Version</strong> field, change the Android Plugin for Gradle
+      version to <strong>1.5.0</strong> or higher, and click <strong>OK</strong>.</li>
       <p>Gradle syncs the project.</p>
       <li>In the <a href="{@docRoot}sdk/installing/create-project.html#ProjectView">Android view</a>
       of the <em>Project</em> window, right-click the <strong>res</strong> folder and select
@@ -480,7 +499,7 @@
 
 <ul>
   <li>Create one APK that includes both the vector images and the corresponding raster
-    representations. This is the easiest solution.</li>
+    representations. This solution is the simplest to implement.</li>
   <li>Create separate APKs for different API levels. When you don’t include the corresponding
     raster images in the APK for Android 5.0 (API level 21) and higher, the APK can be much smaller in
     size. For more information, see <a href="{@docRoot}google/play/publishing/multiple-apks.html">Multiple APK Support</a>.</li>
diff --git a/docs/html/tools/revisions/build-tools.jd b/docs/html/tools/revisions/build-tools.jd
index 1912bb2..cccf2e4 100644
--- a/docs/html/tools/revisions/build-tools.jd
+++ b/docs/html/tools/revisions/build-tools.jd
@@ -78,6 +78,30 @@
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+      alt=""/>Build Tools, Revision 23.0.2</a> <em>(November 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <ul>
+      <li>Improved the merging performance of the <code>dx</code> tool.</li>
+      <li>Fixed issues in the <a href="{@docRoot}guide/topics/renderscript/compute.html">RenderScript</a>
+        compiler for Windows.</li>
+    </ul>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
+      alt=""/>Build Tools, Revision 23.0.1</a> <em>(October 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <p>Fixed issues in the RenderScript tools.</p>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 23.0.0</a> <em>(August 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
diff --git a/docs/html/tools/revisions/studio.jd b/docs/html/tools/revisions/studio.jd
index e2de5b9..dec9e4b 100644
--- a/docs/html/tools/revisions/studio.jd
+++ b/docs/html/tools/revisions/studio.jd
@@ -42,6 +42,59 @@
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+      alt=""/>Android Studio v1.5.0</a> <em>(November 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <p>Fixes and enhancements:</p>
+    <ul>
+    <li>Added new Memory Monitor analysis abilities to Android Monitor. When you view an HPROF file
+      captured from this monitor, the display is now more helpful so you can more quickly locate
+      problems, such as memory leaks. To use this monitor, click <strong>Android Monitor</strong> at
+      the bottom of the main window. In Android Monitor, click the <strong>Memory</strong> tab. While
+      the monitor is running, click the <strong>Dump Java Heap</strong> icon, and then click
+      <strong>Captures</strong> in the main window and double-click the file to view it. (The
+      Android Device Monitor can't be running at the same time as Android Monitor.)</li>
+    <li>Added new deep link and app link support. The Code Editor can automatically create an
+      intent filter for deep linking in the <code>AndroidManifest.xml</code> file. It can also
+      generate code to help you integrate with the
+      <a href="http://developers.google.com/app-indexing/android/publish" class="external-link">App Indexing API</a>
+      in an activity in a Java file. A deep link testing feature
+      helps you verify that a specified deep link can launch an app. In the <strong>General</strong>
+      tab of the <em>Run/Debug Configurations</em> dialog, you can specify deep link launch
+      options. You can also test App Indexing API calls in an activity by using the Android Monitor
+      <strong>logcat</strong> display. The Android <code>lint</code> tool now has warnings for
+      certain issues involving deep links and the App Indexing API.
+    </li>
+     <li>Added the ability to use short names when code-completing custom views in the Code Editor.
+    </li>
+    <li>Added support for more {@link android.graphics.drawable.VectorDrawable} elements to
+      <a href="{@docRoot}tools/help/vector-asset-studio.html">Vector Asset Studio</a>
+      for backward-compatibility. Vector Asset Studio can use these elements to convert vector
+      drawables into PNG raster images to use with Android 4.4 (API level 20) and lower.
+    </li>
+    <li>Added new <code>lint</code> checks for Android TV and Android Auto to give you
+      immediate, actionable feedback in Android Studio, along with several quick fixes. For example,
+      for Android TV, it can report and provide a quick fix for permissions, unsupported hardware,
+      <code>uses-feature</code> element, and missing banner issues. For Android Auto, it can
+      validate the correct usage in the descriptor file referred from your
+      <code>AndroidManifest.xml</code> file, report if there isn't an intent filter for the
+      <code>MediaBrowserService</code> class, and identify certain voice actions issues.
+      </li>
+    <li>Added new <code>lint</code> checks for insecure broadcast receivers,
+    <code>SSLCertificateSocketFactory</code> and <code>HostnameVerifier</code> class uses, and
+    <code>File.setReadable()</code> and <code>File.setWritable()</code> calls. It also detects
+    invalid manifest resource lookups, especially for resources that vary by configuration.
+    </li>
+    <li>Fixed a number of stability issues.
+    </li>
+  </ul>
+  </div>
+</div>
+
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
       alt=""/>Android Studio v1.4.1</a> <em>(October 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
@@ -72,7 +125,7 @@
     <a href="http://b.android.com/187665">Issue: 187665</a>
     </li>
   </ul>
-  </div>
+</div>
 </div>
 
 
diff --git a/docs/html/tools/support-library/index.jd b/docs/html/tools/support-library/index.jd
index f6baf19..d702b40 100644
--- a/docs/html/tools/support-library/index.jd
+++ b/docs/html/tools/support-library/index.jd
@@ -58,10 +58,54 @@
 
 <p>This section provides details about the Support Library package releases.</p>
 
-
 <div class="toggle-content opened">
-  <p id="rev23-1-0"><a href="#" onclick="return toggleContent(this)">
+  <p id="rev23"><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img" alt=""
+/>Android Support Library, revision 23.1.1</a> <em>(November 2015)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <dl>
+      <dt>Changes for <a href="features.html#v7-recyclerview">v7 recyclerview library:</a></dt>
+      <dd>
+        <ul>
+          <li>Fixed a crash that occurs when you perform a swipe-to-dismiss action that the
+            {@code ItemTouchHelper} utility class provides, and then add an item.
+            (<a href="http://b.android.com/190500">Issue 190500</a>)</li>
+         </ul>
+      </dd>
+      <dt>Changes for <a href="features.html#v7-preference">v7 preference library:</a></dt>
+      <dd>
+        <ul>
+          <li>Fixed an issue with ProGuard usage.
+          (<a href="http://b.android.com/183261">Issue 183261</a>)</li>
+         </ul>
+      </dd>
+
+      <dt>Changes for <a href="features.html#v17-leanback">v17 Leanback Support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Fixed a number of internal issues in this library.</li>
+         </ul>
+      </dd>
+      <dt>Changes for <a href="features.html#design">Design Support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Added the <code>getHeaderView</code> method to the <code>NavigationView</code> class.</li>
+          <li>Fixed a transparent background issue for a <code>FloatingActionButton</code> object on
+          devices running Android 4.0 (API level 15) and lower.
+          (<a href="http://b.android.com/183315">Issue 183315</a>)</li>
+         </ul>
+       </dd>
+    </dl>
+
+  </div>
+</div> <!-- end of collapsible section -->
+
+
+
+<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=""
 />Android Support Library, revision 23.1.0</a> <em>(October 2015)</em>
   </p>
   <div class="toggle-content-toggleme">
diff --git a/docs/html/training/app/battery/index.jd b/docs/html/training/app/battery/index.jd
deleted file mode 100644
index c8445d7..0000000
--- a/docs/html/training/app/battery/index.jd
+++ /dev/null
@@ -1,4 +0,0 @@
-page.title=Optimizing Battery Life
-page.tags=battery
-
-@jd:body
diff --git a/docs/html/training/app/index.jd b/docs/html/training/app/index.jd
deleted file mode 100644
index 2675a78..0000000
--- a/docs/html/training/app/index.jd
+++ /dev/null
@@ -1,4 +0,0 @@
-page.title=Android Performance Patterns
-page.tags=app
-
-@jd:body
diff --git a/docs/html/training/app/rendering/index.jd b/docs/html/training/app/rendering/index.jd
deleted file mode 100644
index 733131e..0000000
--- a/docs/html/training/app/rendering/index.jd
+++ /dev/null
@@ -1,4 +0,0 @@
-page.title=Optimizing Rendering Performance
-page.tags=render
-
-@jd:body
diff --git a/docs/html/training/articles/wear-permissions.jd b/docs/html/training/articles/wear-permissions.jd
new file mode 100644
index 0000000..5f226e4
--- /dev/null
+++ b/docs/html/training/articles/wear-permissions.jd
@@ -0,0 +1,323 @@
+page.title=Requesting Permissions on Android Wear
+page.tags="Permissions"
+
+page.article=true
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>In this document</h2>
+<ol class="nolist">
+  <li><a href="#scenarios">Permission Scenarios</a></li>
+  <li><a href="#requesting">Requesting Permissions</a></li>
+  <li><a href="#services">Permissions for Services</a></li>
+  <li><a href="#settings">Settings</a></li>
+</ol>
+<!-- Required platform, tools, add-ons, devices, knowledge, etc. -->
+<h2>Dependencies and prerequisites</h2>
+<ul>
+  <li><a href="{@docRoot}about/versions/marshmallow/index.html">Android 6.0</a>
+  (API Level 23) or higher on the wearable and accompanying device</li>
+  <li><a href="{@docRoot}google/play-services/index.html">Google Play
+services</a> 8.3 or higher</li>
+  <li>An <a href="{@docRoot}wear/index.html">Android Wear</a> device</li>
+</ul>
+<h2>See also</h2>
+<ul>
+  <li><a href="{@docRoot}guide/topics/security/permissions.html">System Permissions</a></li>
+  <li><a href="{@docRoot}training/permissions/index.html">Working with System Permissions</a></li>
+</ul>
+</div></div>
+
+<p><a href="{@docRoot}about/versions/marshmallow/index.html">Android 6.0</a> (API level 23)
+introduces a new <a href="{@docRoot}training/permissions/requesting.html">permissions model</a>,
+bringing some changes that are specific to Wear, and other changes that apply to all Android-powered
+devices.</p>
+
+<p>The user must now grant permissions to Wear apps separately from the handset versions of the
+apps. Previously, when a user installed a Wear app, it automatically inherited the set of
+permissions that the user had granted to the handset version of the app. However, from Android 6.0
+(API level 23), the Wear app no longer inherits these permissions. Thus, for example,
+a user might grant a handset app permission to use location data, and subsequently
+have to grant the same permission to the Wear version of the app.</p>
+
+<p>For both Wear and handset apps, the Android 6.0 (API level 23) permissions model also
+streamlines app installation and upgrade by eliminating the requirement that the user grant upfront
+every permission an app may ever need. Instead, the app does not request permissions until it
+actually needs them.</p>
+
+<p class="note"><strong>Note: </strong> For an app to use the new permissions model, it must
+specify a value of {@code 23} for both
+<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code uses-sdk-element}</a>
+and <a href="{@docRoot}tools/building/configuring-gradle.html">{@code compileSdkVersion}</a>.</p>
+
+<p>The rest of this document discusses how to use the Android 6.0 (API level 23) permissions model
+when developing Android Wear apps.</p>
+
+<h2 id="scenarios">Permission Scenarios</h2>
+
+<p>Broadly speaking, there are four scenarios you may encounter when requesting
+<a href="{@docRoot}guide/topics/security/permissions.html#normal-dangerous">dangerous permissions</a>
+on Android Wear:</p>
+
+<ul>
+   <li>The <em>Wear app</em> requests permissions for an app running on the <em>wearable</em>
+   device.</li>
+
+   <li>The <em>Wear app</em> requests permissions for an app running on the <em>handset</em>.</li>
+
+   <li>The <em>handset app</em> requests permissions for an app running on the
+   <em>wearable</em> device.</li>
+
+   <li>The wearable app uses a <em>different permission model</em> from its handset counterpart.
+   </li>
+</ul>
+
+<p>The rest of this section explains each of these scenarios. For more detailed information
+about requesting permissions, see <a href="#requesting">Requesting Permissions</a>.</p>
+
+<h3 id="wear-app-wear-perm">Wear app requests permission for an app running on the wearable
+device</h3>
+
+<p>When the Wear app requests a permission for an app running on the wearable device, the system
+displays a dialog to prompt the user for that permission. An app or service can only call the
+{@link android.support.v4.app.ActivityCompat#requestPermissions requestPermissions()}
+method from an activity. If the user interacts with your app
+<a href="#services">via a service</a>, such as
+a watch face, the service must open an activity before requesting the permission.</p>
+
+<p>Your app requests permissions in context when it’s clear why the
+permissions are needed to perform a given operation. If it's obvious that your app requires
+certain permissions, your app can prompt for them on launch. If it may not be so obvious,
+you may choose to provide additional education before prompting for a permission.</p>
+
+<p>If an app or watch face requires more than one permission at a time,
+permission requests appear one after the other.</p>
+
+<img src="{@docRoot}images/training/wear/multiple_permissions.png"
+srcset="{@docRoot}images/training/wear/multiple_permissions.png 1x,
+{@docRoot}images/training/wear/multiple_permissions_2x.png 2x"
+alt="Multiple permission screens, one after another." width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 1.</strong> Permission screens appearing in succession.
+</p>
+
+<p class="note"><strong>Note:</strong> From Android 6.0 (API level 23), Android Wear
+automatically syncs Calendar, Contact, and Location data to the Wear device. As a result, this
+scenario is the applicable one when Wear requests this data.</p>
+
+<h3>Wear app requests handset permission</h3>
+
+<p>When the Wear app requests a handset permission, the
+Wear app must send the user to the handset to accept the permission. There, the handset app can
+provide additional education to the user via an activity. The activity should include two buttons:
+one for granting, and one for denying, the permission.</p>
+
+<img src="{@docRoot}images/training/wear/open_on_phone.png"
+srcset="{@docRoot}images/training/wear/open_on_phone.png 1x,
+{@docRoot}images/training/wear/open_on_phone_2x.png 2x"
+alt="The Wear app sends the user to the handset to grant permission." width="700"
+height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 2.</strong> Sending the user to the handset to grant permission.
+</p>
+<h3>Handset app requests wearable permission</h3>
+
+<p>When the user is in a handset app and the app requires a wearable permission, the
+handset app must send the user to the wearable to accept the permission.
+The handset app uses the
+{@link android.support.v4.app.ActivityCompat#requestPermissions requestPermissions()}
+method on the wearable to trigger the system permissions dialog.</p>
+
+<img src="{@docRoot}images/training/wear/phone_requests_wear.png"
+srcset="{@docRoot}images/training/wear/phone_requests_wear.png 1x,
+{@docRoot}images/training/wear/phone_requests_wear_2x.png 2x"
+alt="The handset app sends the user to the wearable to grant permission."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 3.</strong> Sending the user to the wearable to grant permission.
+</p>
+
+<h3>Mismatching permission models between wearable and handset app</h3>
+
+<p>If your handset app begins using the Android 6.0 (API level 23) model but your
+wearable app does not, the system downloads the Wear app, but does not install it.
+The first time the user launches the app, the system prompts them to grant all pending permissions.
+Once they do so, it installs the app.
+If your app, for example a watch face, does not have a launcher, the system displays a
+stream notification asking the user to grant the permissions the app needs.
+</p>
+
+<h2 id="requesting">Permission-Request Patterns</h2>
+
+<p>There are different patterns for requesting permission from users. In order of
+priority, they are:</p>
+
+<ul>
+   <li><a href="#aic">Ask in context</a> when the permission is obviously necessary for a specific
+   functionality, but is not necessary for the app to run at all.</li>
+
+   <li><a href="#eic">Educate in context</a> when the reason for requesting the permission is
+   not obvious, and the permission is not necessary for the app to run at all.</li>
+
+   <li><a href="#auf">Ask up front</a> when the need for the permission is obvious, and the
+   permission is required in order for the app to run at all.</li>
+
+   <li><a href="#euf">Educate up front</a> when the need for the permission is not obvious, but
+   the permission is required in order for the app to run at all.</li>
+</ul>
+
+<h3 id="aic">Ask in context</h3>
+
+<p>Your app should request permissions when it’s clear why they are needed in order to perform a
+given operation. Users are more likely to grant a permission when they understand its connection to
+the feature they want to use.</p>
+
+<p>For example, an app may require a user’s location in order to show nearby
+places of interest. When the user taps to search for nearby places, the app can
+immediately request the location permission, because there is a clear
+relationship between searching for nearby places and the need for the location
+permission. The obviousness of this relationship makes it unnecessary for the app to display
+additional education screens.</p>
+
+<img src="{@docRoot}images/training/wear/ask_in_context.png"
+srcset="{@docRoot}images/training/wear/ask_in_context.png 1x,
+{@docRoot}images/training/wear/ask_in_context_2x.png 2x"
+alt="The app requests permission when it's obviously necessary."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 4.</strong> Asking in context.
+
+<h3 id="eic">Educate in context</h3>
+
+<p>If necessary, you may choose to provide additional education before prompting
+for a permission. Again, your app should do this in context of a specific
+action, if it’s unclear why your app needs access to the requested permission
+in order to complete that action.</p>
+
+<p>Figure 5 shows an example of in-context education. The app does not require permissions
+in order to start the timer, but an inline educational cue shows that part of the
+activity (location detection) is locked. When the user taps the cue, a permission-request screen
+appears, allowing the user to unlock location-detection.</p>
+
+<p>You can use the {@link
+  android.support.v4.app.ActivityCompat#shouldShowRequestPermissionRationale
+  shouldShowRequestPermissionRationale()} method to help your app decide whether to provide more
+  information. For additional details, see <a
+  href="{@docRoot}training/permissions/requesting.html#explain">Requesting Permissions
+  at Run Time</a>.</p>
+
+
+<img src="{@docRoot}images/training/wear/educate_in_context.png"
+srcset="{@docRoot}images/training/wear/educate_in_context.png 1x,
+{@docRoot}images/training/wear/educate_in_context_2x.png 2x"
+alt="When the need for the permission arises, the app explains why the permission is necessary."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 5.</strong> Educating in context.
+
+<h3 id="auf">Ask up front</h3>
+
+<p>If your app clearly requires a permission in order to work at all, you can prompt for that
+permission when the user launches the app. For example, a maps app clearly requires access
+to the device’s location to run its expected activities. No further education
+is necessary for this permission.</p>
+
+<img src="{@docRoot}images/training/wear/ask_up_front.png"
+srcset="{@docRoot}images/training/wear/ask_up_front.png 1x,
+{@docRoot}images/training/wear/ask_up_front_2x.png 2x"
+alt="If the app obviously needs a permission to run at all, it can ask for it immediately on
+launch."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 6.</strong> Asking up front.
+
+
+<h3 id="euf">Educate up front</h3>
+
+<p>In some cases, the app requires a permission for basic functionality, but the need for that
+permission is not obvious. In these cases, when the user first
+starts the app or sets a watch face, the app or watch face may choose to educate the user and
+ask for the permission.</p>
+
+<img src="{@docRoot}images/training/wear/educate_up_front.png"
+srcset="{@docRoot}images/training/wear/educate_up_front.png 1x,
+{@docRoot}images/training/wear/educate_up_front_2x.png 2x"
+alt="When requesting a permission on launch, the app can explain why it needs the permission."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 7.</strong> Educating up front.
+
+<h3 id="nope">Handling Rejection</h3>
+
+<p>If a user denies a requested permission that is not critical to an intended
+activity, do not block them from continuing the activity.  If certain parts of
+the activity are disabled by the denied permission, provide visual, actionable
+feedback. Figure 8 shows the use of a lock icon to indicate that a feature is
+locked because the user did not grant permission to use it.</p>
+
+<img src="{@docRoot}images/training/wear/deny.png"
+srcset="{@docRoot}images/training/wear/deny.png 1x,
+{@docRoot}images/training/wear/deny_2x.png 2x"
+alt="When the user denies permission, a lock icon is shown alongside the associated feature."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 8.</strong> Lock icon, showing a feature is locked because of denied permission.
+</p>
+<p>When a previously denied wearable permission dialog appears a second
+time, it includes a <strong>Deny, don't show again</strong> option. If the user
+chooses this option, then the only way for them to allow this permission in the
+future is to go into the wearable's Settings app.</p>
+
+<img src="{@docRoot}images/training/wear/ask_again.png"
+srcset="{@docRoot}images/training/wear/ask_again.png 1x,
+{@docRoot}images/training/wear/ask_again_2x.png 2x"
+alt="The system offers to stop requesting permission."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 9.</strong> Offering not to show the permission-request screen anymore.
+
+<h2 id="services">Permissions for Services</h2>
+
+<p>As mentioned above, only an activity can call the
+{@link android.support.v4.app.ActivityCompat#requestPermissions requestPermissions()}
+method, so if the user interacts with your app via a service,
+for example a watch face, the service must open a background activity before requesting
+the permission. This activity could provide additional education, or it could simply
+be an invisible activity that brings up the system dialog.</p>
+
+<p>If your wearable app runs a service that is not a watch face, and the user does not launch
+an app in which it might make sense to request a permission,
+you can post an educational notification on the wearable. The notification can
+provide an action to open an activity that then triggers the system permissions
+dialog.</p>
+
+<p class="note"><strong>Note:</strong> This is the only acceptable use of a stream notification
+for permissions requests.</p>
+
+<img src="{@docRoot}images/training/wear/for_services.png"
+srcset="{@docRoot}images/training/wear/for_services.png 1x,
+{@docRoot}images/training/wear/for_services_2x.png 2x"
+alt="The user may need to grant a permission when indirectly interacting with an app, via a
+service."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 10.</strong> A service requesting permission.
+
+<h2 id="settings">Settings</h2>
+
+<p>As with the handset, the user can change a Wear app’s permissions in Settings at any time.
+Therefore, when the user tries to do something that requires a
+permission, the app should always first call the
+{@link android.support.v4.content.ContextCompat#checkSelfPermission(android.content.Context,java.lang.String) checkSelfPermission()}
+method to see if the app currently has permission to perform this operation. The app should perform
+this check even if it knows the user has previously granted that permission, since the
+user might have subsequently revoked that permission.</p>
+
+<img src="{@docRoot}images/training/wear/for_settings.png"
+srcset="{@docRoot}images/training/wear/for_settings.png 1x,
+{@docRoot}images/training/wear/for_settings_2x.png 2x"
+alt="The user can change permissions through the Settings app."
+width="700" height="" id="permission-flow" />
+<p class="img-caption">
+  <strong>Figure 11.</strong> Changing settings via the Settings app.
diff --git a/docs/html/training/auto/audio/index.jd b/docs/html/training/auto/audio/index.jd
index 68aff75..d183f11 100644
--- a/docs/html/training/auto/audio/index.jd
+++ b/docs/html/training/auto/audio/index.jd
@@ -491,7 +491,13 @@
 <a href="{@docRoot}training/managing-audio/index.html">Managing Audio Playback</a>, and
 <a href="{@docRoot}guide/topics/media/exoplayer.html">ExoPlayer</a>.</p>
 
-
+<a class="notice-developers-video wide"
+href="https://www.youtube.com/watch?v=xc2HZSwPcwM">
+<div>
+    <h3>Video</h3>
+    <p>Devbytes: Android Auto Voice Actions</p>
+</div>
+</a>
 <h2 id="support_voice">Support Voice Actions</h2>
 
 <p>To reduce driver distractions, you can add voice actions in your audio playback app. With voice
diff --git a/docs/html/training/auto/index.jd b/docs/html/training/auto/index.jd
index c34911c..0a7ceb3 100644
--- a/docs/html/training/auto/index.jd
+++ b/docs/html/training/auto/index.jd
@@ -27,8 +27,7 @@
   For more information, follow the links below to learn how to extend your Android app to support
   use in vehicles.
 </p>
-
-
+ 
 <h2 id="overview">Get Started</h2>
 
 <p>
@@ -82,3 +81,20 @@
   data-cardSizes="9x3"
   data-maxResults="6">
 </div>
+
+<h2 id="training">Video Training</h2>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-1of2">
+      <p>If you prefer to learn through interactive video training,
+      check out this online course about extending your apps to work with Android Auto.</p>
+      <p><a href="https://www.udacity.com/course/ud875C" class="button">
+        Start the video course</a>
+      </p>
+    </div>
+    <div class="col-1of2">
+      <iframe width="300" height="169" src="https://www.youtube.com/embed/pK2HQMTdq6Y?utohide=1&amp;showinfo=0" frameborder="0" allowfullscreen="" style="float: right; margin: 0 0 20px 20px;"></iframe>
+    </div>
+  </div>
+</div>
\ No newline at end of file
diff --git a/docs/html/training/building-wearables.jd b/docs/html/training/building-wearables.jd
index c9e1856..9044928 100644
--- a/docs/html/training/building-wearables.jd
+++ b/docs/html/training/building-wearables.jd
@@ -12,3 +12,17 @@
 <p class="note"><strong>Note:</strong> For more information about the APIs used in these training
 classes, see the <a href="{@docRoot}reference/packages-wearable-support.html">Wear API reference
 documentation</a>.</p>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-1of2">
+      <p>If you prefer to learn through interactive video training, check out this online course
+      about Android Wear Development.</p>
+      <p><a href="https://www.udacity.com/course/ud875A" class="button">
+        Start the video course</a>
+      </p>
+    </div>
+    <div class="col-1of2">
+      <iframe width="300" height="169" src="//www.youtube.com/embed/t2JaW-8WDok?utm_source=dac&utm_medium=video&utm_content=build_wear&utm_campaign=udacint?rel=0&amp;hd=1" frameborder="0" allowfullscreen></iframe>
+  </div>
+</div>
diff --git a/docs/html/training/in-app-billing/preparing-iab-app.jd b/docs/html/training/in-app-billing/preparing-iab-app.jd
index 17cd0d51..ca33008 100644
--- a/docs/html/training/in-app-billing/preparing-iab-app.jd
+++ b/docs/html/training/in-app-billing/preparing-iab-app.jd
@@ -30,18 +30,35 @@
 </div>
 </div>
 
+<a class="notice-developers-video wide"
+href="https://www.youtube.com/watch?v=UvCl5Xx7Z5o">
+<div>
+    <h3>Video</h3>
+    <p>Implementing Freemium</p>
+  </div>
+  </a>
+
 <p>Before you can start using the In-app Billing service, you'll need to add the library that contains the In-app Billing Version 3 API to your Android project. You also need to set the permissions for your application to communicate with Google Play. In addition, you'll need to establish a connection between your application and  Google Play. You should also verify that the In-app Billing API version that you are using in your application is supported by Google Play.</p>
 
 <h2 id="GetSample">Download the Sample Application</h2>
 <p>In this training class, you will use a reference implementation for the In-app Billing Version 3 API called the {@code TrivialDrive} sample application. The sample includes convenience classes to quickly set up the In-app Billing service, marshal and unmarshal data types, and handle In-app Billing requests from the main thread of your application.</p>
 <p>To download the sample application:</p>
 <ol>
-<li>Open the <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>.</li>
-<li>In the SDK Manager, expand the {@code Extras} section.</li>
-<li>Select <strong>Google Play Billing Library</strong>.</li>
-<li>Click <strong>Install packages</strong> to complete the download.</li>
+<li>Open Android Studio and then close any open projects until you are
+presented with the welcome screen.</li>
+<li>Choose <strong>Import an Android code sample</strong> from the
+  <strong>Quick Start</strong> list on the right side the window.</li>
+<li>Type {@code Trivial Drive} into the search bar and select the
+  <strong>Trivial Drive</strong> sample.</li>
+<li>Follow the rest of the instructions in the <strong>Import Sample</strong>
+  wizard to import the sample to a directory of your choosing. The sample code
+  is in the <strong>TrivialDrive</strong> subdirectory of the repository.</li>
 </ol>
-<p>The sample files will be installed to {@code &lt;sdk&gt;/extras/google/play_billing/}.</p>
+
+<p>Alternatively, you can use {@code git} to manually clone
+ the repository from <a
+ href="https://github.com/googlesamples/android-play-billing"
+ class="external-link">https://github.com/googlesamples/android-play-billing</a></p>
 
 <h2 id="AddToDevConsole">Add Your Application to the Developer Console</h2>
 <p>The Google Play Developer Console is where you publish your In-app Billing application and  manage the various digital goods that are available for purchase from your application. When you create a new application entry in the Developer Console, it automatically generates a public license key for your application. You will need this key to establish a trusted connection from your application to the Google Play servers. You only need to generate this key once per application, and don’t need to repeat these steps when you update the APK file for your application.</p>
diff --git a/docs/html/training/managing-audio/audio-focus.jd b/docs/html/training/managing-audio/audio-focus.jd
index 6dcaa7f..8d820db 100644
--- a/docs/html/training/managing-audio/audio-focus.jd
+++ b/docs/html/training/managing-audio/audio-focus.jd
@@ -11,7 +11,7 @@
 @jd:body
 
 
-<div id="tb-wrapper"> 
+<div id="tb-wrapper">
 <div id="tb">
 
 <h2>This lesson teaches you to</h2>
@@ -27,21 +27,21 @@
   <li><a href="{@docRoot}guide/topics/media/mediaplayer.html">Media Playback</a></li>
 </ul>
 
-</div> 
 </div>
- 
+</div>
+
 
 <p>With multiple apps potentially playing audio it's important to think about how they should
 interact. To avoid every music app playing at the same time, Android uses audio focus to moderate
 audio playback&mdash;only apps that hold the audio focus should play audio.</p>
 
-<p>Before your app starts playing audio it should request&mdash;and receive&mdash;the audio focus. 
+<p>Before your app starts playing audio it should request&mdash;and receive&mdash;the audio focus.
 Likewise, it should know how to listen for a loss of audio focus and respond appropriately when that
 happens.</p>
 
- 
-<h2 id="RequestFocus">Request the Audio Focus</h2> 
- 
+
+<h2 id="RequestFocus">Request the Audio Focus</h2>
+
 <p>Before your app starts playing any audio, it should hold the audio focus for the stream
 it will be using. This is done with a call to {@link android.media.AudioManager#requestAudioFocus
 requestAudioFocus()} which returns
@@ -55,7 +55,7 @@
 <p>The following snippet requests permanent audio focus on the music audio stream. You should
 request the audio focus immediately before you begin playback, such as when the user presses
 play or the background music for the next game level begins.</p>
-  
+
 <pre>
 AudioManager am = mContext.getSystemService(Context.AUDIO_SERVICE);
 ...
@@ -66,7 +66,7 @@
                                  AudioManager.STREAM_MUSIC,
                                  // Request permanent focus.
                                  AudioManager.AUDIOFOCUS_GAIN);
-   
+
 if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
     am.registerMediaButtonEventReceiver(RemoteControlReceiver);
     // Start playback.
@@ -80,7 +80,7 @@
 this allows any interupted app to continue playback.</p>
 
 <pre>
-// Abandon audio focus when playback complete    
+// Abandon audio focus when playback complete
 am.abandonAudioFocus(afChangeListener);
 </pre>
 
@@ -97,7 +97,7 @@
                              AudioManager.STREAM_MUSIC,
                              // Request permanent focus.
                              AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK);
-   
+
 if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
     // Start playback.
 }
@@ -111,7 +111,7 @@
 registered when requesting focus.</p>
 
 
-<h2 id="HandleFocusLoss">Handle the Loss of Audio Focus</h2> 
+<h2 id="HandleFocusLoss">Handle the Loss of Audio Focus</h2>
 
 <p>If your app can request audio focus, it follows that it will in turn lose that focus when another
 app requests it. How your app responds to a loss of audio focus depends on the manner of that
@@ -139,26 +139,27 @@
 unregisters our media button event receiver and stops monitoring audio focus changes.<p>
 
 <pre>
-OnAudioFocusChangeListener afChangeListener = new OnAudioFocusChangeListener() {
-    public void onAudioFocusChange(int focusChange) {
-        if (focusChange == AUDIOFOCUS_LOSS_TRANSIENT
-            // Pause playback
-        } else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) {
-            // Resume playback 
-        } else if (focusChange == AudioManager.AUDIOFOCUS_LOSS) {
-            am.unregisterMediaButtonEventReceiver(RemoteControlReceiver);
-            am.abandonAudioFocus(afChangeListener);
-            // Stop playback
+AudioManager.OnAudioFocusChangeListener afChangeListener =
+    new AudioManager.OnAudioFocusChangeListener() {
+        public void onAudioFocusChange(int focusChange) {
+            if (focusChange == AUDIOFOCUS_LOSS_TRANSIENT) {
+                // Pause playback
+            } else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) {
+                // Resume playback
+            } else if (focusChange == AudioManager.AUDIOFOCUS_LOSS) {
+                am.unregisterMediaButtonEventReceiver(RemoteControlReceiver);
+                am.abandonAudioFocus(afChangeListener);
+                // Stop playback
+            }
         }
-    }
-};
+    };
 </pre>
- 
+
 <p>In the case of a transient loss of audio focus where ducking is permitted, rather than pausing
 playback, you can "duck" instead.</p>
 
 
-<h2 id="DUCK">Duck!</h2> 
+<h2 id="DUCK">Duck!</h2>
 
 <p>Ducking is the process of lowering your audio stream output volume to make transient audio from
 another app easier to hear without totally disrupting the audio from your own application.</p>
diff --git a/docs/html/training/testing/ui-testing/espresso-testing.jd b/docs/html/training/testing/ui-testing/espresso-testing.jd
index 01e74b0..72689ff 100644
--- a/docs/html/training/testing/ui-testing/espresso-testing.jd
+++ b/docs/html/training/testing/ui-testing/espresso-testing.jd
@@ -120,9 +120,12 @@
 
         <pre>
 dependencies {
-    androidTestCompile 'com.android.support.test:runner:0.4'
-    androidTestCompile 'com.android.support.test:rules:0.4'
+    androidTestCompile 'com.android.support:support-annotations:23.0.1'
+    androidTestCompile 'com.android.support.test:runner:0.4.1'
+    androidTestCompile 'com.android.support.test:rules:0.4.1'
     androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1'
+    // Set this dependency if you want to use Hamcrest matching
+    androidTestCompile 'org.hamcrest:hamcrest-library:1.3'
 }
 </pre>
       </li>
diff --git a/docs/html/training/testing/ui-testing/uiautomator-testing.jd b/docs/html/training/testing/ui-testing/uiautomator-testing.jd
index a0050a8..ea15d8b 100644
--- a/docs/html/training/testing/ui-testing/uiautomator-testing.jd
+++ b/docs/html/training/testing/ui-testing/uiautomator-testing.jd
@@ -89,9 +89,11 @@
 
         <pre>
 dependencies {
-    androidTestCompile 'com.android.support.test:runner:0.3'
-    androidTestCompile 'com.android.support.test:rules:0.3'
+    androidTestCompile 'com.android.support:support-annotations:23.0.1'
+    androidTestCompile 'com.android.support.test:runner:0.4.1'
     androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1'
+    // Set this dependency if you want to use Hamcrest matching
+    androidTestCompile 'org.hamcrest:hamcrest-library:1.3'
 }
 </pre>
       </li>
@@ -186,9 +188,21 @@
 
 <h2 id="build">Create a UI Automator Test Class</h2>
 
-<p>To build a UI Automator test, create a class that extends
-{@link android.test.InstrumentationTestCase}. Implement the following programming model in your
-UI Automator test class:</p>
+<p>
+Your UI Automator test class should be written the same way as a JUnit 4 test class. To learn more
+about creating JUnit 4 test classes and using JUnit 4 assertions and annotations, see
+<a href="{@docRoot}training/testing/unit-testing/instrumented-unit-tests.html#build">
+Create an Instrumented Unit Test Class</a>.
+</p>
+<p>Add the {@code &#64;RunWith(AndroidJUnit4.class)} annotation at the beginning of your test class
+definition. You also need to specify the
+<a href="{@docRoot}reference/android/support/test/runner/AndroidJUnitRunner.html">
+{@code AndroidJUnitRunner}</a> class
+provided in the Android Testing Support Library as your default test runner. This step is described
+in more detail in <a href="#run">Run UI Automator Tests on a Device or Emulator</a>.
+</p>
+
+<p>Implement the following programming model in your UI Automator test class:</p>
 
 <ol>
 <li>Get a
@@ -241,21 +255,52 @@
 and simulate a Home button press:</p>
 
 <pre>
-import android.test.InstrumentationTestCase;
+import org.junit.Before;
+import android.support.test.runner.AndroidJUnit4;
+import android.support.test.InstrumentationRegistry;
 import android.support.test.uiautomator.UiDevice;
 import android.support.test.uiautomator.By;
+import android.support.test.uiautomator.Until;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import static org.junit.Assert.assertThat;
 
-public class CalculatorUiTest extends InstrumentationTestCase {
+&#64;RunWith(AndroidJUnit4.class)
+&#64;SdkSuppress(minSdkVersion = 18)
+public class ChangeTextBehaviorTest {
 
+    private static final String BASIC_SAMPLE_PACKAGE
+            = "com.example.android.testing.uiautomator.BasicSample";
+    private static final int LAUNCH_TIMEOUT = 5000;
+    private static final String STRING_TO_BE_TYPED = "UiAutomator";
     private UiDevice mDevice;
 
-    public void setUp() {
+    &#64;Before
+    public void startMainActivityFromHomeScreen() {
         // Initialize UiDevice instance
-        mDevice = UiDevice.getInstance(getInstrumentation());
+        mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
 
         // Start from the home screen
         mDevice.pressHome();
-        mDevice.wait(Until.hasObject(By.pkg(getHomeScreenPackage()).depth(0)),
+
+        // Wait for launcher
+        final String launcherPackage = mDevice.getLauncherPackageName();
+        assertThat(launcherPackage, notNullValue());
+        mDevice.wait(Until.hasObject(By.pkg(launcherPackage).depth(0)),
+                LAUNCH_TIMEOUT);
+
+        // Launch the app
+        Context context = InstrumentationRegistry.getContext();
+        final Intent intent = context.getPackageManager()
+                .getLaunchIntentForPackage(BASIC_SAMPLE_PACKAGE);
+        // Clear out any previous instances
+        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
+        context.startActivity(intent);
+
+        // Wait for the app to appear
+        mDevice.wait(Until.hasObject(By.pkg(BASIC_SAMPLE_PACKAGE).depth(0)),
+                LAUNCH_TIMEOUT);
     }
 }
 </pre>
@@ -292,8 +337,7 @@
 <h4 id="specifying-selector">Specifying a selector</h4>
 <p>If you want to access a specific UI component in an app, use the
 <a href="{@docRoot}reference/android/support/test/uiautomator/UiSelector.html">{@code UiSelector}</a>
-class. This class represents a query for specific elements in the
-currently displayed UI. </p>
+class. This class represents a query for specific elements in the currently displayed UI. </p>
 
 <p>If more than one matching element is found, the first matching element in the layout hierarchy
 is returned as the target
@@ -306,8 +350,8 @@
 {@code UiAutomatorObjectNotFoundException}</a> is thrown. </p>
 
 <p>You can use the
-<a href="{@docRoot}reference/android/support/test/uiautomator/UiSelector.html#childSelector(android.support.test.uiautomator.UiSelector)">{@code childSelector()}</a>
-method to nest multiple
+<a href="{@docRoot}reference/android/support/test/uiautomator/UiSelector.html#childSelector(android.support.test.uiautomator.UiSelector)">
+{@code childSelector()}</a> method to nest multiple
 <a href="{@docRoot}reference/android/support/test/uiautomator/UiSelector.html">{@code UiSelector}</a>
 instances. For example, the following code example shows how your test might specify a search to
 find the first {@link android.widget.ListView} in the currently displayed UI, then search within that
diff --git a/docs/html/training/testing/unit-testing/instrumented-unit-tests.jd b/docs/html/training/testing/unit-testing/instrumented-unit-tests.jd
index eb159df..db4cc8c 100644
--- a/docs/html/training/testing/unit-testing/instrumented-unit-tests.jd
+++ b/docs/html/training/testing/unit-testing/instrumented-unit-tests.jd
@@ -76,10 +76,11 @@
 
         <pre>
 dependencies {
-    androidTestCompile 'com.android.support.test:runner:0.3'
-    androidTestCompile 'com.android.support.test:rules:0.3'
+    androidTestCompile 'com.android.support:support-annotations:23.0.1'
+    androidTestCompile 'com.android.support.test:runner:0.4.1'
+    androidTestCompile 'com.android.support.test:rules:0.4.1'
     // Set this dependency if you want to use Hamcrest matching
-    androidTestCompile 'org.hamcrest:hamcrest-library:1.1'
+    androidTestCompile 'org.hamcrest:hamcrest-library:1.3'
 }
 </pre>
       </li>
diff --git a/docs/html/training/training_toc.cs b/docs/html/training/training_toc.cs
index 85733bf..8f08651 100644
--- a/docs/html/training/training_toc.cs
+++ b/docs/html/training/training_toc.cs
@@ -1008,6 +1008,21 @@
            "How to detect location data on Android Wear devices."
           >Detecting Location</a>
       </li>
+
+      <li>
+        <a href="<?cs var:toroot ?>training/articles/wear-permissions.html"
+           description=
+           "How to request permissions on Android Wear devices."
+          >Requesting Permissions</a>
+      </li>
+
+      <li>
+        <a href="<?cs var:toroot ?>training/wearables/wearable-sounds.html"
+           description=
+           "How to use the speaker on Android Wear devices."
+          >Using the Speaker</a>
+      </li>
+
     </ul>
   </li>
   <!-- End Building for wearables -->
diff --git a/docs/html/training/tv/index.jd b/docs/html/training/tv/index.jd
index 081680a..4a6bcb8 100644
--- a/docs/html/training/tv/index.jd
+++ b/docs/html/training/tv/index.jd
@@ -10,3 +10,20 @@
 
 <p class="note"><strong>Note:</strong> For details on how to publish your TV apps in Google Play,
 see <a href="{@docRoot}distribute/googleplay/tv.html">Distribute to Android TV</a>.</p>
+
+<div class="wrap">
+  <div class="cols">
+    <div class="col-1of2">
+      <p>If you prefer to learn through interactive video training, check out this online course
+      about extending your apps to work with Android TV.</p>
+      <p><a href="https://www.udacity.com/course/ud875B" class="button">
+        Start the video course</a>
+      </p>
+    </div>
+    <div class="col-1of2">
+      <iframe width="300" height="169"
+      src="//www.youtube.com/embed/anJtq2rtrA8?autohide=1&amp;showinfo=0"
+      frameborder="0" allowfullscreen="" style="float: right; margin: 0 0 20px 20px;"></iframe>
+    </div>
+  </div>
+</div>
\ No newline at end of file
diff --git a/docs/html/training/tv/start/layouts.jd b/docs/html/training/tv/start/layouts.jd
index 2b190b4..4ca77d0 100644
--- a/docs/html/training/tv/start/layouts.jd
+++ b/docs/html/training/tv/start/layouts.jd
@@ -117,25 +117,43 @@
   This behavior is generally referred to as <em>overscan</em>.
 </p>
 
-<p>
-  Avoid screen elements being clipped due to overscan and by incorporating a 10% margin
-  on all sides of your layout. This translates into a 48dp margin on the left and right edges and
-  a 27dp margin on the top and bottom of your base layouts for activities. The following
-  example layout demonstrates how to set these margins in the root layout for a TV app:
+<p>Screen elements that must be visible to the user at all times should be positioned within the
+overscan safe area. Adding a 5% margin of 48dp on the left and right edges and 27dp on the top and
+bottom edges to a layout ensures that screen elements in that layout will be within the overscan
+safe area.
+</p>
+
+<p>Background screen elements that the user doesn't directly interact with should not be adjusted or
+clipped to the overscan safe area. This approach ensures that background screen elements look
+correct on all screens.
+</p>
+
+<p>The following example shows a root layout that can contain background elements, and a nested
+child layout that has a 5% margin and can contain elements within the overscan safe area:
 </p>
 
 <pre>
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-  android:id="@+id/base_layout"
-  android:layout_width="match_parent"
-  android:layout_height="match_parent"
-  android:orientation="vertical"
-  android:layout_marginTop="27dp"
-  android:layout_marginLeft="48dp"
-  android:layout_marginRight="48dp"
-  android:layout_marginBottom="27dp" &gt;
-&lt;/LinearLayout&gt;
+&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+   android:layout_width="match_parent"
+   android:layout_height="match_parent"
+   &gt;
+
+   &lt;!-- Screen elements that can render outside the overscan safe area go here --&gt;
+
+   &lt;!-- Nested RelativeLayout with overscan-safe margin --&gt;
+   &lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+       android:layout_width="match_parent"
+       android:layout_height="match_parent"
+       android:layout_marginTop="27dp"
+       android:layout_marginBottom="27dp"
+       android:layout_marginLeft="48dp"
+       android:layout_marginRight="48dp"&gt;
+
+      &lt;!-- Screen elements that need to be within the overscan safe area go here --&gt;
+
+   &lt;/RelativeLayout&gt;
+&lt;/RelativeLayout&gt;
 </pre>
 
 <p class="caution">
diff --git a/docs/html/training/wearables/wearable-sounds.jd b/docs/html/training/wearables/wearable-sounds.jd
new file mode 100644
index 0000000..3c3c135
--- /dev/null
+++ b/docs/html/training/wearables/wearable-sounds.jd
@@ -0,0 +1,63 @@
+page.title=Using Speakers on Wearables
+
+@jd:body
+
+<div id="tb-wrapper">
+<div id="tb">
+<h2>This lesson teaches you to</h2>
+<ol>
+  <li><a href="#Detect">Detect the Speaker</a></li>
+  <li><a href="#Play">Play Sounds</a></li>
+</ol>
+<h2>You should also read</h2>
+<ul>
+  <li><a href="{@docRoot}design/wear/watchfaces.html">Watch Faces for Android Wear</a></li>
+</ul>
+</div>
+</div>
+
+<p>Some Android Wear devices include speakers, enabling them to incorporate sound into their
+apps and offer an extra dimension of engagement with the user. A speaker-equipped Wear device might
+trigger a clock or timer alarm, complete with audio notification. Games on Wear become become more
+entertaining by offering not just sight, but sound.</p>
+
+<p>This page describes how apps on Wear devices running Android 6.0 (API level 23) can use
+familiar Android APIs to play sounds through the device speaker.</p>
+
+<h2 id="Detect">Detect the Speaker</h2>
+
+<p>A Wear app must first detect whether the wearable device has a speaker. In the following example,
+the app uses the {@link android.media.AudioManager#getDevices(int) getDevices() } method in
+conjunction with the value of {@link android.content.pm.PackageManager#FEATURE_AUDIO_OUTPUT} to
+confirm that the device is equipped with a speaker.</p>
+
+<pre>
+PackageManager packageManager = context.getPackageManager();
+AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
+
+// Check whether the device has a speaker.
+if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
+    // Check FEATURE_AUDIO_OUTPUT to guard against false positives.
+    if (!packageManager.hasSystemFeature(PackageManager.FEATURE_AUDIO_OUTPUT)) {
+        return false;
+    }
+
+    AudioDeviceInfo[] devices = audioManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS);
+    for (AudioDeviceInfo device : devices) {
+        if (device.getType() == AudioDeviceInfo.TYPE_BUILTIN_SPEAKER) {
+            return true;
+        }
+    }
+}
+return false;
+</pre>
+
+<h2 id="Play">Play Sounds</h2>
+
+<p>Once you've detected the speaker, the process for playing sound on Android Wear is the
+same as for a handset or other device. For more information, see
+<a href="{@docRoot}guide/topics/media/mediaplayer.html">Media Playback</a>.</p>
+
+<p>If you also want to record audio from the microphone on the wearable, your app must also get
+permission to use the microphone. To learn more, see
+<a href="{@docRoot}training/articles/wear-permissions.html">Permissions on Android Wear.</a></p>
\ No newline at end of file
diff --git a/docs/image_sources/distribute/googleplay/about_developer_page_original.png b/docs/image_sources/distribute/googleplay/about_developer_page_original.png
new file mode 100644
index 0000000..4ccbfe9
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_developer_page_original.png
Binary files differ
diff --git a/docs/image_sources/distribute/googleplay/about_personalized_home_orig.png b/docs/image_sources/distribute/googleplay/about_personalized_home_orig.png
new file mode 100644
index 0000000..a5214d6
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_personalized_home_orig.png
Binary files differ
diff --git a/docs/image_sources/distribute/googleplay/about_play_store_home_original.png b/docs/image_sources/distribute/googleplay/about_play_store_home_original.png
new file mode 100644
index 0000000..3a4cba4
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_play_store_home_original.png
Binary files differ
diff --git a/docs/image_sources/distribute/googleplay/about_play_store_listing_original.png b/docs/image_sources/distribute/googleplay/about_play_store_listing_original.png
new file mode 100644
index 0000000..63d6e9b
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_play_store_listing_original.png
Binary files differ
diff --git a/docs/image_sources/distribute/googleplay/about_search_results_orig.png b/docs/image_sources/distribute/googleplay/about_search_results_orig.png
new file mode 100644
index 0000000..af775d3
--- /dev/null
+++ b/docs/image_sources/distribute/googleplay/about_search_results_orig.png
Binary files differ