Merge "Remove obsolete ThirdPartyCall APIs"
diff --git a/core/java/android/net/ProxyInfo.java b/core/java/android/net/ProxyInfo.java
index 991d9da..ceedd98 100644
--- a/core/java/android/net/ProxyInfo.java
+++ b/core/java/android/net/ProxyInfo.java
@@ -160,6 +160,8 @@
}
mExclusionList = source.getExclusionListAsString();
mParsedExclusionList = source.mParsedExclusionList;
+ } else {
+ mPacFileUrl = Uri.EMPTY;
}
}
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index f5117b2..463dda2 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -462,6 +462,19 @@
provide full support for multiple displays. -->
<integer name="config_undockedHdmiRotation">-1</integer>
+ <!-- HDMI-CEC logical device types allowed on the system. Logical device types
+ are defined in HDMI-CEC standard 1.4 as follows:
+ 0 TV
+ 1 Recording Device
+ 2 Reserved
+ 3 Tuner
+ 4 Playback
+ 5 Audio System
+ 6 Pure CEC Switch
+ 7 Video Processor -->
+ <integer-array name="config_hdmiCecLogicalDeviceType">
+ </integer-array>
+
<!-- Control the default UI mode type to use when there is no other type override
happening. One of the following values (See Configuration.java):
1 UI_MODE_TYPE_NORMAL
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index a14f241..84c9023 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -1303,6 +1303,7 @@
<java-symbol type="anim" name="dock_right_enter" />
<java-symbol type="anim" name="dock_right_exit" />
+ <java-symbol type="array" name="config_hdmiCecLogicalDeviceType" />
<java-symbol type="array" name="config_keyboardTapVibePattern" />
<java-symbol type="array" name="config_longPressVibePattern" />
<java-symbol type="array" name="config_safeModeDisabledVibePattern" />
diff --git a/docs/html/_redirects.yaml b/docs/html/_redirects.yaml
index fc60e1f..58cf523 100644
--- a/docs/html/_redirects.yaml
+++ b/docs/html/_redirects.yaml
@@ -81,7 +81,7 @@
to: /guide/components/aidl.html
- from: /guide/publishing/publishing.html
- to: /distribute/googleplay/publish/preparing.html
+ to: /distribute/tools/launch-checklist.html
- from: /guide/publishing/...
to: /tools/publishing/...
diff --git a/docs/html/about/dashboards/index.jd b/docs/html/about/dashboards/index.jd
index bddb8ec..c61a94b 100644
--- a/docs/html/about/dashboards/index.jd
+++ b/docs/html/about/dashboards/index.jd
@@ -1,4 +1,7 @@
page.title=Dashboards
+page.metaDescription=page.metaDescription=Charts that give you an overview of device characteristics and platform versions that are active in the Android ecosystem.
+page.tags="android, dashboard, platforms, versions"
+meta.tags="ecosystem, versions, whatsnew"
@jd:body
<style>
@@ -22,7 +25,7 @@
<div class="sidebox">
<h2>Google Play Install Stats</h2>
<p>The Google Play Developer Console also provides <a
-href="{@docRoot}distribute/googleplay/about/distribution.html#stats">detailed statistics</a>
+href="{@docRoot}distribute/googleplay/developer-console.html#app-stats">detailed statistics</a>
about your users' devices. Those stats may help you prioritize the device profiles for which
you optimize your app.</p>
</div>
diff --git a/docs/html/design/index.jd b/docs/html/design/index.jd
index 7c7c5d9..cb7dd4f 100644
--- a/docs/html/design/index.jd
+++ b/docs/html/design/index.jd
@@ -1,5 +1,7 @@
page.title=Design
page.viewport_width=970
+section.landing=true
+meta.tags="beautifulapps, design, ux, patterns, holo, appquality, landing"
header.hide=1
footer.hide=1
@jd:body
diff --git a/docs/html/design/patterns/multi-pane-layouts.jd b/docs/html/design/patterns/multi-pane-layouts.jd
index c207006..4e99462 100644
--- a/docs/html/design/patterns/multi-pane-layouts.jd
+++ b/docs/html/design/patterns/multi-pane-layouts.jd
@@ -1,6 +1,7 @@
page.title=Multi-pane Layouts
page.tags="tablet","navigation","layout","fragment"
-page.metaDescription=Android devices come in many different screen sizes and types. Multi-pane layouts help you provide a balanced and aesthetically pleasing layout across the range of Android devices.
+page.metaDescription=Design guide with examples of how to flatten navigation and provide improved layout across the range of Android devices.
+
@jd:body
diff --git a/docs/html/design/patterns/navigation.jd b/docs/html/design/patterns/navigation.jd
index 3edf6ba..703528e 100644
--- a/docs/html/design/patterns/navigation.jd
+++ b/docs/html/design/patterns/navigation.jd
@@ -1,5 +1,6 @@
page.title=Navigation with Back and Up
-page.tags=navigation,activity,task,up navigation,back navigation
+page.tags="navigation","activity","task","up navigation","back navigation"
+page.image=/design/media/navigation_between_siblings_gmail.png
@jd:body
<a class="notice-developers" href="{@docRoot}training/implementing-navigation/index.html">
diff --git a/docs/html/design/patterns/widgets.jd b/docs/html/design/patterns/widgets.jd
index 654cf37..47acc7b 100644
--- a/docs/html/design/patterns/widgets.jd
+++ b/docs/html/design/patterns/widgets.jd
@@ -1,5 +1,6 @@
page.title=Widgets
-page.tags=appwidget,home
+page.tags="appwidget","home"
+page.metaDescription=Design guide to creating widgets that are easy to use and look great.
@jd:body
<a class="notice-developers" href="{@docRoot}guide/topics/appwidgets/index.html">
diff --git a/docs/html/design/style/devices-displays.jd b/docs/html/design/style/devices-displays.jd
index a8f9d6f..6a7234b 100644
--- a/docs/html/design/style/devices-displays.jd
+++ b/docs/html/design/style/devices-displays.jd
@@ -1,7 +1,9 @@
page.title=Devices and Displays
+page.metaDescription=Take advantage of Android's flexible layout system and create apps that gracefully scale from phones to tablets and beyond.
+
@jd:body
-<p>Android powers millions of phones, tablets, and other devices in a wide variety of screen sizes and
+<p>Android powers hundreds of millions of phones, tablets, and other devices in a wide variety of screen sizes and
form factors. By taking advantage of Android's flexible layout system, you can create apps that
gracefully scale from large tablets to smaller phones.</p>
diff --git a/docs/html/design/style/metrics-grids.jd b/docs/html/design/style/metrics-grids.jd
index a553475..e92d57e 100644
--- a/docs/html/design/style/metrics-grids.jd
+++ b/docs/html/design/style/metrics-grids.jd
@@ -1,5 +1,8 @@
page.title=Metrics and Grids
-page.tags=layout,screens
+page.metaDescription=Optimize your app's UI by designing layouts based on density-independent grids.
+page.tags="layout","screens"
+meta.tags="multiple screens, layout, tablets"
+page.image=/design/media/metrics_closeup.png
@jd:body
<p>Devices vary not only in physical size, but also in screen density (<acronym title="Dots per
diff --git a/docs/html/design/style/typography.jd b/docs/html/design/style/typography.jd
index ec6fba2..6923f0b 100644
--- a/docs/html/design/style/typography.jd
+++ b/docs/html/design/style/typography.jd
@@ -1,5 +1,6 @@
page.title=Typography
-page.tags=textview,font
+page.tags="textview","font"
+page.metaDescription=How to use typography in your Android apps.
@jd:body
<div class="layout-content-row">
diff --git a/docs/html/develop/index.jd b/docs/html/develop/index.jd
index eb28da8..bb90cca 100644
--- a/docs/html/develop/index.jd
+++ b/docs/html/develop/index.jd
@@ -1,6 +1,8 @@
fullpage=true
-page.title=Develop
+page.title=Develop Apps
page.viewport_width=970
+meta.tags="develop, getstarted, sdk, appquality, landing"
+section.landing=true
header.hide=1
carousel=1
tabbedList=1
diff --git a/docs/html/distribute/distribute_toc.cs b/docs/html/distribute/distribute_toc.cs
deleted file mode 100644
index 1fabcb3..0000000
--- a/docs/html/distribute/distribute_toc.cs
+++ /dev/null
@@ -1,103 +0,0 @@
-<ul id="nav">
-
- <li class="nav-section">
- <div class="nav-section-header"><a href="<?cs var:toroot ?>distribute/index.html">Google Play</a></div>
- <ul>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/about/visibility.html">Visibility</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/about/monetizing.html">Monetizing</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/about/distribution.html">Distribution</a></li>
- </ul>
- </li>
-
- <li class="nav-section">
- <div class="nav-section-header"><a href="<?cs var:toroot ?>distribute/googleplay/publish/index.html">Publishing</a></div>
- <ul>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/publish/register.html">Get Started</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/publish/console.html">Developer Console</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/publish/localizing.html">Localization Checklist</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/publish/preparing.html">Launch Checklist</a></li>
- </ul>
- </li>
-
-<!-- <li class="nav-section">
- <div class="nav-section-header">
- <a href="<?cs var:toroot ?>distribute/googleplay/developer-console.html">The Developer Console</a>
- </div>
- <ul>
- <li class="nav-section"><a href="<?cs var:toroot ?>distribute/googleplay/register.html">Get Started</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/distribution-controls.html">Managing Distribution</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/pricing-billing.html">Pricing and Billing</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/app-data.html">Reviewing App Data</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/advanced-options.html">Advanced Options</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/publishing.html">Publishing and Updating</a></li>
- </ul>
- </li> end of Developer Console -->
-
- <li class="nav-section">
- <div class="nav-section-header"><a href="<?cs var:toroot ?>distribute/googleplay/promote/index.html">Promoting</a>
- </div>
- <ul>
-<!-- <li><a href="<?cs var:toroot ?>distribute/googleplay/promote/product-pages.html">Your Product Pages</a></li> -->
- <li><a href="<?cs var:toroot ?>distribute/googleplay/promote/linking.html">Linking to Your Products</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/promote/badges.html">Google Play Badges</a></li>
- <li><a href="<?cs var:toroot ?>distribute/promote/device-art.html">Device Art Generator</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/promote/brand.html">Brand Guidelines</a></li>
- </ul>
- </li>
-
- <li class="nav-section">
- <div class="nav-section-header"><a href="<?cs var:toroot ?>distribute/googleplay/quality/index.html">App Quality</a></div>
- <ul>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/quality/core.html">Core App Quality</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/quality/tablet.html">Tablet App Quality</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/strategies/app-quality.html">Improving App Quality</a></li>
- </ul>
- </li>
-
- <li class="nav-section">
- <div class="nav-section-header"><a href="<?cs var:toroot ?>distribute/googleplay/policies/index.html">Policies</a></div>
- <ul>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/policies/spam.html">Spam</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/policies/ip.html">Intellectual<br />Property</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/policies/ads.html">Ads</a></li>
- </ul>
- </li>
-
-<!--
- <li class="nav-section">
- <div class="nav-section-header"><a href="<?cs var:toroot ?>distribute/googleplay/after.html">
- After Launch</a>
- </div>
- <ul>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/errors.html.html">Reviewing Errors</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/reviews.html">Tracking User Reviews</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/supporting-users.html">Supporting Users</a></li>
- </ul>
- </li>
--->
-
- <li class="nav-section">
- <div class="nav-section-header"><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/index.html">Spotlight</a></div>
- <ul>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/tablets.html">Tablet Stories</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/games.html">Game Stories</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/localization.html">Localization Stories</a></li>
- </ul>
- </li>
-
- <li class="nav-section">
- <div class="nav-section-header"><a href="<?cs var:toroot ?>distribute/googleplay/edu/index.html">Google Play for Education</a></div>
- <ul>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/edu/about.html">About</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/edu/start.html">Get Started</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/edu/guidelines.html">Guidelines</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/edu/faq.html">FAQ</a></li>
- <li><a href="<?cs var:toroot ?>distribute/googleplay/edu/contact.html">Sign Up</a></li>
- </ul>
- </li>
-
- <li class="nav-section">
- <div class="nav-section-header empty"><a href="<?cs var:toroot ?>distribute/open.html">Open Distribution</a></div>
- </li>
-</ul>
-
\ No newline at end of file
diff --git a/docs/html/distribute/engage/app-updates.jd b/docs/html/distribute/engage/app-updates.jd
new file mode 100644
index 0000000..6b751b9
--- /dev/null
+++ b/docs/html/distribute/engage/app-updates.jd
@@ -0,0 +1,50 @@
+page.title=Update Your Apps Regularly
+page.metaDescription=Keeping your content fresh gives users a reason to come back.
+page.tags="updates"
+page.image=/images/gp-your-user-0.jpg
+
+@jd:body
+
+<p>
+ Keeping your content fresh gives users a reason to come back. Use any
+ <a href="{@docRoot}distribute/users/know-your-user.html#add-analytics">in-app
+ or game measurement tool</a> to keep an eye on what users respond to. Use
+ <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">alpha-beta
+ testing</a> and <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#staged-rollouts">staged
+ rollouts</a> to quickly test new features, in-app content, and game
+ characters.
+</p>
+
+<p>
+ Updating regularly also gives you a chance to notify users about new content
+ should users lapse. Notification, email, and social media are several
+ channels to remind users to come back.
+</p>
+
+<p>
+ Check out the video below see how Kiwi uses frequent updates to engage and
+ retain users.
+</p>
+
+<p style="margin-bottom:2em">
+</p>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/engage/kiwi" data-sortorder="-timestamp" data-cardsizes=
+"18x6," data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/engage/appupdates" data-sortorder="-timestamp"
+data-cardsizes="9x3" data-maxresults="6">
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/engage/community.jd b/docs/html/distribute/engage/community.jd
new file mode 100644
index 0000000..035058a
--- /dev/null
+++ b/docs/html/distribute/engage/community.jd
@@ -0,0 +1,43 @@
+page.title=Engage Your Community
+page.metaDescription=Building a community has many benefits, including improving your app and bringing users back to it.
+page.image=/images/gp-engage-9.jpg
+
+
+@jd:body
+
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-engage-9.jpg" style="width:300px;">
+</div>
+
+<p>
+ Building a community has many benefits, including improving your apps and
+ bringing users back to them. Using social media, groups, and forum tools will
+ help you build a rapport with your audience that will drive loyalty and
+ engagement.
+</p>
+
+<p>
+ There are many tactics to bring users back to your apps. In addition to app
+ updates that users want to check out, you can also use communities to
+ announce game tournaments, new content, promotions, and other great content.
+ Any reason to go back to your app is a great post to share with your
+ community.
+</p>
+
+<p>
+ Learn more about how to <a href="{@docRoot}distribute/users/build-community.html">build and manage a community</a>.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/engage/community" data-sortorder="-timestamp"
+data-cardsizes="9x3" data-maxresults="6">
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/engage/deep-linking.jd b/docs/html/distribute/engage/deep-linking.jd
new file mode 100644
index 0000000..cd62f9d
--- /dev/null
+++ b/docs/html/distribute/engage/deep-linking.jd
@@ -0,0 +1,78 @@
+page.title=Deep Link to Bring Users Back
+page.metaDescription=Use deep links to bring your users into your apps from social posts or search.
+page.tags="app indexing, google+ signin"
+page.image=/images/gp-listing-4.jpg
+
+@jd:body
+
+<p>
+ Use deep links to bring your users into your apps from social posts or
+ search.
+</p>
+
+<div class="headerLine">
+<h1>Deep Linking from Google+ Posts</h1><hr>
+</div>
+
+<p>
+ <a href="https://developers.google.com/+/mobile/android/share/deep-link">Deep
+ linking</a> allows the Google+ apps on mobile devices to direct clicks on a
+ shared post that contains deep-link information to a resource within your
+ apps.
+</p>
+
+<p style="margin-bottom:2em;">
+ If the user doesn’t have your app installed, they’re prompted to install it
+ before accessing the resource.
+</p>
+
+<div style="padding:2em, auto;width:550px;">
+ <div style="float:right; width:260px; padding-left:1em;">
+ <img src="{@docRoot}images/gp-engage-5.jpg" class="border-img">
+ <p class="img-caption">
+ G+ Post with Deep Link to Buy
+ </p>
+ </div>
+
+ <div style="width:260px;float:left;">
+ <img src="{@docRoot}images/gp-engage-6.jpg" class="border-img">
+ <p class="img-caption">
+ Purchase page within app
+ </p>
+ </div>
+</div>
+
+
+<div class="headerLine clearfloat">
+<h1>Deep Linking from Google Search — App Indexing</h1><hr>
+</div>
+
+<p>
+ Another way to bring users back to your apps is to apply for app indexing.
+</p>
+
+<p>
+ When a user searches for content available within your app, Google can show
+ an "Open in App" button in in mobile search results. For instance, if a user
+ searches for a restaurant and you’ve got that establishment in your dining
+ app, a link can be shown to open the page within your app. Learn more about
+ <a href="https://developers.google.com/app-indexing/">linking to in-app
+ content</a>.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-listing-4.jpg" style="padding-top:1em;">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/engage/deeplinks" data-sortorder="-timestamp"
+data-cardsizes="9x3" data-maxresults="6">
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/engage/easy-signin.jd b/docs/html/distribute/engage/easy-signin.jd
new file mode 100644
index 0000000..92c3ffc
--- /dev/null
+++ b/docs/html/distribute/engage/easy-signin.jd
@@ -0,0 +1,103 @@
+page.title=Make Signing In Easy
+page.metaDescription=Increase conversion rates while helping users minimize typing by letting users sign in with Google+.
+page.tags="google+"
+page.image=/images/google/gps-googleplus.png
+
+
+@jd:body
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox" style="width:360px;">
+ <p>
+ <strong>Tip:</strong> For game developers, Google+ signin is already
+ included as part of Google Play game services.
+ </p>
+ </div>
+</div>
+
+<p>
+ Increase conversion rates while helping users minimize typing by letting
+ users sign in with Google+. The <a href=
+ "{@docRoot}google/play-services/plus.html">Google+ platform for Android</a>
+ authenticates users with their Google credentials safely and securely. With
+ your <a href="https://developers.google.com/+/mobile/android/sign-in">users
+ signing in with Google</a>, you can create more engaging experiences and
+ drive the use of your apps .
+</p>
+
+<div style="width:450px;">
+ <img src="{@docRoot}images/google/gps-googleplus.png" style="padding-top:1em;">
+</div>
+
+<p>
+ Use the Google+ social graph to welcome users by name, display their
+ pictures, connect them with friends and more. Users authenticate once and
+ then are signed-in automatically when they come back, eliminating the need to
+ remember and type names and passwords.
+</p>
+
+<div class="headerLine">
+ <h1>
+ And Spreading the Word a Snap
+ </h1>
+
+ <hr>
+</div>
+
+
+<div class="figure" style="float:right;">
+ <img src="{@docRoot}images/gp-engage-share-plus.png" style=
+ "width:160px;padding-top:1em;">
+ <p class="img-caption">
+ Easy sharing through Google+
+ </p>
+</div>
+
+
+<p>
+ Using Google+ can help users spread the word about your apps to their
+ friends, attracting them to your apps, right from within your apps:
+</p>
+
+<p>
+ Google+ is also a great way to build a community of loyal fans that will help
+ you with <a href=
+ "https://support.google.com/googleplay/android-developer/answer/3131213">beta
+ testing</a>.
+</p>
+
+<ul>
+ <li>Using a <a href=
+ "https://developers.google.com/+/mobile/android/recommend">native +1
+ button</a> to let users make a recommendation for your apps or their content.
+ </li>
+
+ <li>
+ <a href="https://developers.google.com/+/mobile/android/share/">Share rich
+ content</a> to the Google+ stream, including text, photos, URL attachments,
+ and location.
+ </li>
+
+ <li>Create <a href=
+ "https://developers.google.com/+/mobile/android/share/interactive-post">Interactive
+ posts</a> to share your website or apps, users can even invite friends to
+ "listen," "RSVP," "check-in," or one of over 100 actions.
+ </li>
+</ul>
+
+ <div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+ </div>
+
+ <div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/engage/gplus"
+ 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
new file mode 100644
index 0000000..0314f8c
--- /dev/null
+++ b/docs/html/distribute/engage/engage_toc.cs
@@ -0,0 +1,66 @@
+<ul id="nav">
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs
+ var:toroot?>distribute/engage/widgets.html">
+ <span class="en">Build Useful Widgets</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs
+ var:toroot?>distribute/engage/notifications.html">
+ <span class="en">Use Rich Notifications</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs
+ var:toroot?>distribute/engage/gcm.html">
+ <span class="en">Integrate GCM</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs
+ var:toroot?>distribute/engage/easy-signin.html">
+ <span class="en">Make Signing In Easy</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs
+ var:toroot?>distribute/engage/deep-linking.html">
+ <span class="en">Deep Link to Bring Users Back</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs
+ var:toroot?>distribute/engage/game-services.html">
+ <span class="en">Encourage Competition</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs
+ var:toroot?>distribute/engage/app-updates.html">
+ <span class="en">Update Regularly</span></a>
+ </div>
+ </li>
+
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs
+ var:toroot?>distribute/engage/community.html">
+ <span class="en">Engage Your Community</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs
+ var:toroot?>distribute/engage/video.html">
+ <span class="en">Delight with Videos</span></a>
+ </div>
+ </li>
+
+</ul>
+
+<script type="text/javascript">
+<!--
+ buildToggleLists();
+ changeNavLang(getLangPref());
+//-->
+</script>
+
diff --git a/docs/html/distribute/engage/game-services.jd b/docs/html/distribute/engage/game-services.jd
new file mode 100644
index 0000000..5153435
--- /dev/null
+++ b/docs/html/distribute/engage/game-services.jd
@@ -0,0 +1,90 @@
+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
+
+@jd:body
+
+<div class="figure" style="width:330px;">
+ <img src="{@docRoot}images/google/gps-play_games_logo.png">
+</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.
+</p>
+
+<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>
+ </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>
+ </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>.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+</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>
+
diff --git a/docs/html/distribute/engage/gcm.jd b/docs/html/distribute/engage/gcm.jd
new file mode 100644
index 0000000..d793124e
--- /dev/null
+++ b/docs/html/distribute/engage/gcm.jd
@@ -0,0 +1,51 @@
+page.title=Integrate Google Cloud Messaging
+page.metaDescription=Keep your users in sync with your latest content by delivering lightweight messages over Google's infrastructure.
+page.tags="gcm"
+page.image=/images/gcm/gcm-logo.png
+
+@jd:body
+
+<div class="figure" style="width:330px">
+ <img src="{@docRoot}images/gcm/gcm-logo.png">
+</div>
+
+<p>
+ Keeping app content fresh is important to retaining users. And it’s easy with
+ the popular <a href="{@docRoot}google/gcm/index.html">Google Cloud
+ Messaging</a> for Android, by sending lightweight messages to your apps
+ installed on Android devices anywhere in the world.
+</p>
+
+<p>
+ Push messages from your backend servers to tell your apps that there's new
+ content for the user, or other data to sync.
+</p>
+
+<p>
+ You can use Google Cloud Messaging for two way messaging too. Another
+ possibility is to improve the experience for users with multiple devices, by
+ syncing content through the cloud so users have the same content on all their
+ devices.
+</p>
+
+<p>
+ Google Cloud Messaging lets your users stay in sync with your service without
+ draining the user’s battery, as there's no need for your apps poll a server
+ to discover new content. Best of all, Google Cloud Messaging is available for
+ free and there are no quotas.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/engage/gcm"
+ data-sortorder="-timestamp"
+ data-cardsizes="9x3"
+ data-maxresults="6">
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/engage/index.jd b/docs/html/distribute/engage/index.jd
new file mode 100644
index 0000000..f8cd1ee
--- /dev/null
+++ b/docs/html/distribute/engage/index.jd
@@ -0,0 +1,36 @@
+page.title=Engage & Retain Users
+page.metaDescription=Engaging and retaining active users is the key to success. Here are some resources to help you build an active user base.
+section.landing=true
+nonavpage=true
+
+@jd:body
+
+<p>
+ Engaging and retaining active users is the key to success. This is specially
+ true for subscription and in-app purchase models. Here are several tools and
+ techniques to keep your users coming back.
+</p>
+
+<div class="dynamic-grid">
+
+ <div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/engagelanding"
+ data-cardSizes="6x6"
+ data-maxResults="9">
+ </div>
+
+ <h3>Related Resources</h3>
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="type:youtube+tag:engagement"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="3">
+ </div>
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="type:blog+tag:engagement"
+ data-sortdOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="3">
+ </div>
+
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/engage/notifications.jd b/docs/html/distribute/engage/notifications.jd
new file mode 100644
index 0000000..fecfb45
--- /dev/null
+++ b/docs/html/distribute/engage/notifications.jd
@@ -0,0 +1,61 @@
+page.title=Use Rich Notifications to Keep Users Informed
+page.metaDescription=Use Android's notifications to keep users in touch with your content and services — even when the app is not in use.
+page.tags=""
+page.image=/design/media/notifications_pattern_anatomy.png
+
+@jd:body
+
+<div class="figure">
+ <img src="{@docRoot}design/media/notifications_pattern_anatomy.png">
+</div>
+
+<p>
+ The <a href="/design/patterns/notifications.html">notification system</a>
+ allows your app to keep the user informed about events, such as new messages,
+ upcoming calendar appointments, shared photos, and much more. They are a
+ fundamental feature of Android that consumers check frequently to receive
+ important notifications and status updates. Notifications are like a news
+ channel that alerts the user to events as they happen and maintains a list of
+ updates since last review.
+</p>
+
+
+
+<p>
+ In addition to status updates from friends and family, notifications can also
+ be used to help gamers know when a time-based action is completed or another
+ player took their turn.</p>
+
+ <p>Some game developers use notifications to alert users
+ when a new limited time character can be won or a discount on an in-app
+ purchase is available. </p>
+
+<h3>But Use Them Sparingly</h3>
+
+<p>
+ Frequent notifications and spam notifications can turn users off, thereby
+ risking your ratings and user base. Also sure to check our <a href=
+ "https://support.google.com/googleplay/android-developer/answer/4430948">policies</a>
+ to ensure you’re treating your user respectfully.
+</p>
+
+
+ <div class="sidebox" style="width:326px;float:left;margin-left:0">
+ <p><strong>Tip:</strong>
+ Use notifications sparingly — be sure any information presented is
+ useful. Give users the option to turn notifications off.
+ </p>
+ </div>
+
+ <div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1><hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/getusers/notifications"
+ data-sortorder="-timestamp"
+ data-cardsizes="9x3"
+ data-maxresults="6">
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/engage/video.jd b/docs/html/distribute/engage/video.jd
new file mode 100644
index 0000000..1a30f3a
--- /dev/null
+++ b/docs/html/distribute/engage/video.jd
@@ -0,0 +1,37 @@
+page.title=Delight Users with Videos
+page.metaDescription=Videos are one of the most effective ways to get users excited about your apps.
+page.tags="engagement"
+page.image=/images/gp-engage-smule.jpg
+
+@jd:body
+<p>
+ Videos are one of the most effective ways to get users excited about your
+ apps. Use videos to showcase your apps on your Google Play Product Details
+ pages. Be sure to build a <a href="http://www.youtube.com/yt/dev/">YouTube</a>
+ page to host new videos so users can see new features or content that will
+ get them excited to return to your apps.
+</p>
+
+<p>
+ Videos let you do more than tell users about your apps — you can
+ <em>show them</em>. One of the most viewed content types is how-to videos.
+ Help users progress to the next level with YouTube <strong>game play
+ videos</strong> in Google Play, on your YouTube channel, and on your website.
+</p>
+
+<div class="center-img">
+ <img src="{@docRoot}images/gp-engage-smule.jpg">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/engage/video/more" data-sortorder="-timestamp"
+data-cardsizes="9x3" data-maxresults="6">
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/engage/widgets.jd b/docs/html/distribute/engage/widgets.jd
new file mode 100644
index 0000000..b17af08
--- /dev/null
+++ b/docs/html/distribute/engage/widgets.jd
@@ -0,0 +1,42 @@
+page.title=Build Useful Widgets
+page.metaDescription=Use widgets to remind users about important information in your apps and games, even when your apps are closed.
+page.tags=""
+page.image=/images/gp-engage-0.jpg
+
+@jd:body
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-engage-0.jpg" style="width:320px;">
+</div>
+<p>
+ <a href=
+ "/design/patterns/widgets.html">Widgets</a> are
+ an essential aspect of home screen customization. They are "at-a-glance"
+ views of an app's <strong>most important data and features</strong>,
+ instantly available from the user's home screen.
+</p>
+
+<p>
+ Use widgets to <strong>remind users</strong> about important information in
+ your apps and games, even when your apps are closed. For instance, if you
+ have a news app, showcase the latest headlines.
+</p>
+
+ <div class="sidebox" style="float:none;margin-left:0">
+ <p><strong>Tip:</strong>
+ Make your widgets useful — provide in-app information like news, game status,
+ or upcoming deadlines. Widgets should serve as more than a launcher icon.</p>
+ </div>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1><hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/engage/widgets"
+ data-sortorder="-timestamp"
+ data-cardsizes="9x3"
+ data-maxresults="6">
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/essentials/best-practices/apps.jd b/docs/html/distribute/essentials/best-practices/apps.jd
new file mode 100644
index 0000000..055a349
--- /dev/null
+++ b/docs/html/distribute/essentials/best-practices/apps.jd
@@ -0,0 +1,260 @@
+page.title=App Developer Best Practices
+page.image=/distribute/images/gp-app-practices.png
+page.metaDescription=Essential tips for launching successful apps in Google Play.
+@jd:body
+
+<div id="qv-wrapper"><div id="qv">
+<h2>Best Practices</h2>
+<ol>
+<li><a href="#essentials">Get the Essentials Right</a></li>
+<li><a href="#users">Get Users</a></li>
+<li><a href="#engage">Engage and Retain</a></li>
+<li><a href="#beyond">Beyond the Basics</a></li>
+<li><a href="#related-resources">Related Resources</a></li>
+</ol>
+</div></div>
+
+<p>The following best practices have enabled developers worldwide to build great, successful apps for Google Play.</p>
+
+<div class="headerLine">
+<h1 id="essentials">Get the Essentials Right</h1><hr>
+</div>
+
+<h3>1. Make it Android</h3>
+
+<ul>
+ <li>
+ <p>
+ Build your apps to make best use of the unique Android features, such as
+ <a href="{@docRoot}distribute/engage/widgets.html">widgets</a>, <a href=
+ "{@docRoot}distribute/engage/notifications.html">rich notifications</a>,
+ <a href=
+ "http://android-developers.blogspot.com/2012/02/share-with-intents.html">sharing
+ through Intents</a>, and more.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Add the power of Google features your users already love, such as
+ <a href="https://developers.google.com/maps/documentation/android/">Google
+ Maps</a>, <a href="https://developers.google.com/drive/">Google
+ Drive</a>, and more, all with <a href=
+ "https://developers.google.com/+/mobile/android/sign-in">single sign
+ on</a>.
+ </p>
+ </li>
+</ul>
+
+<h3>
+ 2. Make it quality
+</h3>
+
+<ul>
+ <li>
+ <p>
+ Make sure your apps follow the <a href=
+ "{@docRoot}distribute/essentials/quality/core.html">Core App Quality</a>
+ guidelines.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Create apps that are available on all form factors and screen sizes, by
+ following the <a href=
+ "{@docRoot}distribute/essentials/quality/tablets.html">Tablet App
+ Quality</a> guidelines.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Test and <a href=
+ "{@docRoot}distribute/essentials/optimizing-your-app.html">optimize your
+ quality</a> at every step and make use of the Google Play <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">beta-testing</a>
+ and <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#staged-rollouts">staged
+ rollouts</a> features to test with users before launch.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+ <h1 id="users">
+ Get Users
+ </h1>
+
+ <hr>
+</div>
+
+<h3>
+ 1. Build buzz
+</h3>
+
+<ul>
+ <li>
+ <p>
+ Create a great <a href="{@docRoot}distribute/users/your-listing.html">app
+ listing page</a> to showcase your apps and grab users’ attention. Don’t
+ forget to include a <a href=
+ "{@docRoot}distribute/engage/video.html">YouTube video</a>.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <a href="{@docRoot}distribute/tools/launch-checklist.html">Launch</a> on
+ multiple platforms simultaneously to maximize your reach.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Promote your apps with the official <a href=
+ "{@docRoot}distribute/tools/promote/badges.html">Google Play badge</a>
+ and <a href="{@docRoot}distribute/tools/promote/linking.html">link to
+ your products</a> on Google Play.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Build a community with social media, <a href=
+ "http://groups.google.com/">forums</a>, and <a href=
+ "http://plus.google.com">communities</a> to get and keep users talking.
+ </p>
+ </li>
+</ul>
+
+<h3>
+ 2. Optimize for great ratings
+</h3>
+
+<ul>
+ <li>
+ <p>
+ Get to <a href="{@docRoot}distribute/users/know-your-user.html">know your
+ users</a>, listen to and <a href=
+ "{@docRoot}distribute/engage/app-updates.html">update your apps</a> from
+ their feedback.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Focus on your strength markets first, get these right before expanding.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+ <h1 id="engage">
+ Engage and Retain
+ </h1>
+
+ <hr>
+</div>
+
+<h3>
+ 1. Keep users coming back
+</h3>
+
+<ul>
+ <li>
+ <p>
+ Use <a href="{@docRoot}google/play/billing/index.html">Google Play In-app
+ Billing</a> to offer subscriptions to extended features.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Hold competitions and offer promotions, then announce them through
+ <a href="{@docRoot}design/patterns/notifications.html">notifications</a>.
+ </p>
+ </li>
+</ul>
+
+<h3>
+ 2. Earn users’ love
+</h3>
+
+<ul>
+ <li>
+ <p>
+ <a href=
+ "http://android-developers.blogspot.com/2013/05/all-google-play-developers-can-now.html">
+ Respond to reviews</a> and get valuable feedback from the community
+ you've built.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <a href=
+ "http://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html">
+ Measure</a> your campaigns to see what is driving users to install your
+ apps.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <a href=
+ "{@docRoot}distribute/essentials/optimizing-your-app.html#measuring-analyzing-responding">
+ Analyze in-app use</a> to steer content updates and prolong the life of
+ your apps.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+ <h1 id="beyond">
+ Beyond the Basics
+ </h1>
+
+ <hr>
+</div>
+
+<ul>
+ <li>
+ <p>
+ After you’ve launched in your market of strength, <a href=
+ "{@docRoot}distribute/users/expand-to-new-markets.html">expand into other
+ markets</a> strategically and <a href=
+ "{@docRoot}distribute/tools/localization-checklist.html">localize</a>
+ your apps as you go.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Keep users engaged, and stay ahead of the competition, by continually
+ <a href=
+ "{@docRoot}distribute/essentials/optimizing-your-app.html">optimizing
+ your apps</a> to offer new and better features, or retire those that
+ users aren’t using.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Build educational apps: learn <a href=
+ "{@docRoot}distribute/googleplay/edu/start.html">how to make apps for
+ Google Play for Education</a>.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+<h1 id="related-resources">Related Resources</h1><hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/toolsreference/bestpractices/apps"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3"
+ data-maxResults="6"></div>
+
diff --git a/docs/html/distribute/essentials/best-practices/games.jd b/docs/html/distribute/essentials/best-practices/games.jd
new file mode 100644
index 0000000..ac1df44
--- /dev/null
+++ b/docs/html/distribute/essentials/best-practices/games.jd
@@ -0,0 +1,259 @@
+page.title=Game Developer Best Practices
+page.image=/distribute/images/gp-games-practices.png
+page.metaDescription=Essential tips for launching successful games in Google Play.
+
+@jd:body
+
+<div id="qv-wrapper"><div id="qv">
+<h2>Best Practices</h2>
+<ol>
+<li><a href="#users">Get Users</a></li>
+<li><a href="#engage">Engage and Retain</a></li>
+<li><a href="#beyond">Beyond the Basics</a></li>
+<li><a href="#related-resources">Related Resources</a></li>
+</ol>
+</div></div>
+
+<p>
+ The following best practices have enabled developers worldwide to build
+ great, successful games for Google Play.
+</p>
+
+<div class="headerLine">
+ <h1 id="users">
+ Get Users
+ </h1>
+
+ <hr>
+</div>
+
+<h3>
+ 1. Optimize for great ratings
+</h3>
+
+<ul>
+ <li>
+ <p>
+ <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">Beta
+ test</a> to ensure your games are ready and poised for great ratings.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Optimize graphics, frame rates, and responsiveness with the <a href=
+ "http://android-developers.blogspot.com/2013/09/using-hardware-scaler-for-performance.html">
+ Hardware Scaler</a> and <a href=
+ "{@docRoot}training/graphics/opengl/index.html">OpenGL ES</a>.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Be sure your APK is small, then provide game content through over-the-air
+ downloads.
+ </p>
+ </li>
+</ul>
+
+<h3>
+ 2. Build buzz
+</h3>
+
+<ul>
+ <li>
+ <p>
+ Build a community with social media, <a href=
+ "{@docRoot}distribute/users/build-community.html">communities</a> to get
+ and keep users talking.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Promote your games with official <a href=
+ "{@docRoot}distribute/tools/promote/badges.html">Google Play badges</a>
+ and <a href="{@docRoot}distribute/tools/promote/linking.html">links to
+ your products</a> on Google Play.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ If you ship on multiple platforms, doing so at the same time can maximize
+ your marketing impact.
+ </p>
+ </li>
+</ul>
+
+<h3>
+ 3. Get Visibility
+</h3>
+
+<ul>
+ <li>
+ <p>
+ First impressions count: <a href=
+ "{@docRoot}distribute/users/your-listing.html">highlight</a> the game's
+ best features in screenshots, videos, and description.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Integrate Google Play Game Services, so your game is displayed in the
+ <a href=
+ "https://play.google.com/store/apps/details?id=com.google.android.play.games">
+ Google Play Games App</a>.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+ <h1 id="engage">
+ Engage and Retain
+ </h1>
+
+ <hr>
+</div>
+
+<h3>
+ 1. Keep users coming back
+</h3>
+
+<ul>
+ <li>
+ <p>
+ <a href=
+ "https://developers.google.com/games/services/common/concepts/achievements">
+ Achievements</a>, <a href=
+ "https://developers.google.com/games/services/common/concepts/leaderboards">
+ leaderboards</a>, <a href=
+ "https://developers.google.com/games/services/common/concepts/realtimeMultiplayer">
+ multiplayer</a>, and <a href=
+ "https://developers.google.com/games/services/common/concepts/cloudsave">cloud
+ save</a> help engage users and bring them back.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Hold tournaments and offer promotions, then announce them through
+ <a href="{@docRoot}design/patterns/notifications.html">notifications</a>.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Sign in users early, then automatically. Before their first sign-in, save
+ progress locally.
+ </p>
+ </li>
+</ul>
+
+<h3>
+ 2. Give users a reason to invest their money
+</h3>
+
+<ul>
+ <li>
+ <p>
+ A majority of the top grossing games use in-app purchases. Use them to
+ unlock content and allow players to enhance their game play.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <a href="{@docRoot}google/play/billing/index.html">Google Play In-app
+ Billing</a> makes purchasing easy with several forms of payment.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Provide content updates regularly to give users limited edition items to
+ win or purchase.
+ </p>
+ </li>
+</ul>
+
+<h3>
+ 3. Earn players’ love
+</h3>
+
+<ul>
+ <li>
+ <p>
+ <a href=
+ "http://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html">
+ Measure</a> your campaigns to see what’s driving quality users to install
+ your games.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <a href=
+ "{@docRoot}distribute/essentials/optimizing-your-app.html#measuring-analyzing-responding">
+ Analyze in-game use</a> to steer content updates and prolong the life of your
+ games.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <a href=
+ "http://android-developers.blogspot.com/2013/05/all-google-play-developers-can-now.html">
+ Respond to reviews</a> and get valuable feedback from the community
+ you’ve built.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+ <h1 id="beyond">
+ Beyond the Basics
+ </h1>
+
+ <hr>
+</div>
+
+<ul>
+ <li>
+ <p>
+ After you've launched in your market of strength, <a href=
+ "{@docRoot}distribute/users/expand-to-new-markets.html">expand into other
+ markets</a> strategically and <a href=
+ "{@docRoot}distribute/tools/localization-checklist.html">localize</a>
+ your apps as you go.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Provide content <a href=
+ "{@docRoot}distribute/engage/app-updates.html">updates on a regular
+ basis</a> to keep users engaged.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Building educational games? See the <a href=
+ "{@docRoot}distribute/essentials/gpfe-guidelines.html">Education
+ Guidelines</a>.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+<h1 id="related-resources">Related Resources</h1><hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/toolsreference/bestpractices/games"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3"
+ data-maxResults="6"></div>
diff --git a/docs/html/distribute/essentials/essentials_toc.cs b/docs/html/distribute/essentials/essentials_toc.cs
new file mode 100644
index 0000000..7084fdd
--- /dev/null
+++ b/docs/html/distribute/essentials/essentials_toc.cs
@@ -0,0 +1,44 @@
+<ul id="nav">
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/essentials/quality/core.html">
+ <span class="en">Core App Quality</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/essentials/quality/tablets.html">
+ <span class="en">Tablet App Quality</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/essentials/gpfe-guidelines.html">
+ <span class="en">Education Guidelines</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/essentials/optimizing-your-app.html">
+ <span class="en">Optimize Your App</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/essentials/best-practices/apps.html">
+ <span class="en">App Best Practices</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/essentials/best-practices/games.html">
+ <span class="en">Game Best Practices</span>
+ </a>
+ </div>
+ </li>
+
+
+<script type="text/javascript">
+<!--
+ buildToggleLists();
+ changeNavLang(getLangPref());
+//-->
+</script>
diff --git a/docs/html/distribute/essentials/gpfe-guidelines.jd b/docs/html/distribute/essentials/gpfe-guidelines.jd
new file mode 100644
index 0000000..8b47671
--- /dev/null
+++ b/docs/html/distribute/essentials/gpfe-guidelines.jd
@@ -0,0 +1,513 @@
+page.title=Education Guidelines
+page.metaDescription=These guidelines and requirements help you develop great apps for students, which offer compelling content and an intuitive user experience on Android tablets.
+page.image=/distribute/images/edu-guidelines.jpg
+Xnonavpage=true
+
+@jd:body
+
+
+<div id="qv-wrapper"><div id="qv">
+<h2>Guidelines</h2>
+<ol>
+<li><a href="#basic-reqts">Basic Requirements</a></li>
+<li><a href="#monetizing-ads">Monetizing and Ads</a></li>
+<li><a href="#e-value">Educational Value</a></li>
+<li><a href="#quality">App Quality</a></li>
+<li><a href="#related-resources">Related Resources</a></li>
+</ol>
+
+<h2>
+ Testing
+</h2>
+
+<ol>
+ <li>
+ <a href="#test-environment">Setting Up a Test Environment</a>
+ </li>
+</ol>
+
+</div></div>
+
+<div style="margin:0 0 1em 0;">
+ <img src="{@docRoot}distribute/images/edu-guidelines.jpg" style=
+ "width:274px;">
+</div>
+
+<p>
+ These guidelines and requirements help you develop great apps for students,
+ which offer compelling content and an intuitive user experience on Android
+ tablets.
+</p>
+
+<p>
+ You’ll also need to ensure that your apps comply with the terms of the
+ <a href=
+ "https://play.google.com/about/developer-distribution-agreement-addendum.html">
+ Google Play for Education Addendum</a>, <a href=
+ "http://play.google.com/about/developer-content-policy.html">Google Play
+ Developer Program Policies</a>, and <a href=
+ "http://play.google.com/about/developer-distribution-agreement.html">Developer
+ Distribution Agreement</a>.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="basic-reqts">
+ Basic Requirements
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ To participate, your apps must be designed for the K-12 market. The basic
+ requirements that your apps must meet are:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Apps and the ads they contain must not collect personally identifiable
+ information, other than user credentials or data required to operate and
+ improve the app.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Apps must not use student data for purposes unrelated to its educational
+ function.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Apps must have a content rating of "Everyone" or "Low Maturity" (apps
+ with a "Medium Maturity" rating are allowed, if they have that rating
+ solely because they allow communication between students).
+ </p>
+ </li>
+
+ <li>
+ <p>
+ App content, including ads displayed by the app, must be consistent with
+ the app's maturity rating. The app must not display any "offensive"
+ content, as described in the <a href=
+ "http://play.google.com/about/developer-content-policy.html">Google Play
+ Developer Program Policies</a> and <a href=
+ "https://support.google.com/googleplay/android-developer/answer/188189">content-rating
+ guidelines</a>.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Apps must comply with the Children’s Online Privacy Protection Act and
+ all other applicable laws and regulations.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+ <h1 id="monetizing-ads">
+ Monetizing and Ads
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-edu-monetize.png">
+</div>
+
+<p>
+ In-app purchase is currently not supported with Google Play for Education, so
+ a student device will block any transactions. To avoid confusion, be sure to
+ remove any in-app purchase buttons and related UI elements from your apps.
+ We’re investigating additional purchase mechanisms to enable more flexible
+ pricing models for developers and schools.
+</p>
+
+<p>
+ If your apps are priced In Google Play for Education, you must allow Google
+ Play to offer teachers limited free trials before purchase (you provide this
+ through business terms only, no development work is needed.)
+</p>
+
+<p>
+ You can only choose not to remove in-app purchasing from your apps where all
+ content and services are sold through Google Play for Education using In-app
+ Billing. If you choose not to remove In-app Billing features, ensure that:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Users can access your apps’ core functionality for a classroom setting
+ without an in-app purchase.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ In-app purchases are clearly identifiable in your UI.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ You declare the use of in-app purchases at <a href=
+ "{@docRoot}distribute/googleplay/edu/start.html#publish">opt-in</a>.
+ </p>
+ </li>
+</ul>
+
+<p>
+ For each app that you publish, you can set a single price that applies to
+ both Google Play and Google Play for Education. You can’t set a different
+ price for a given app (based on a single package name) in Google Play for
+ Education.
+</p>
+
+<p>
+ If your apps display ads, you should disable the display of ads if possible,
+ or ensure that:
+</p>
+
+<ul>
+ <li>Ads are not distracting for students or teachers (this includes
+ Flash-based ads, video ads, and ads that flash or move)
+ </li>
+
+ <li>Interstitial ads are not served in the app
+ </li>
+
+ <li>Ad walls do not appear in the app UI
+ </li>
+
+ <li>Ads do not occupy a significant portion of the screen
+ </li>
+
+ <li>Ads content does not exceed the maturity rating of the app.
+ </li>
+
+ <li>
+ <p>
+ You declare the use of ads at <a href=
+ "{@docRoot}distribute/googleplay/edu/start.html#publish">opt-in</a>.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+ <h1 id="e-value">
+ Educational Value
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-e-value.png" class="border-img">
+</div>
+
+<p>
+ Apps submitted to Google Play for Education will be evaluated by a
+ third-party educator network, which will review them based on alignment with
+ <a href="http://www.corestandards.org/">Common Core Standards</a> and other
+ educational considerations. This will help make your content more
+ discoverable for teachers and administrators as they browse by grade level,
+ subject, core curriculum, and other parameters.
+</p>
+
+<p>
+ Apps with highest educational value will have these characteristics:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Designed for use in K-12 classrooms.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Aligned with a common core standard or support common-core learning.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Simple, easy to use, and intuitive for the grade levels the apps are
+ targeting. Apps are relatively easy to navigate without teacher guidance.
+ Not distracting or overwhelming to students.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Enjoyable and interactive. Apps are engaging to students and lets them
+ control their experience.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Versatile. Apps have features that make them useful for more than one
+ classroom function or lesson throughout the school year.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Supports the "4Cs":
+ </p>
+
+ <ul>
+ <li>
+ <p>
+ <em>Creativity</em> — Allows students to create in order to
+ express understanding of the learning objectives, and try new
+ approaches, innovation, and invention to get things done.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <em>Critical thinking</em> — Allows students to look at
+ problems in a new way, linking learning across subjects and
+ disciplines.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <em>Collaboration</em> — Allows students and (if appropriate)
+ educators to work together to reach a goal.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <em>Communication</em> — Allows students to comprehend,
+ critique and share thoughts, questions, ideas, and solutions.
+ </p>
+ </li>
+ </ul>
+ </li>
+</ul>
+
+<p>
+ As you design and develop your apps, make sure they offer high educational
+ value by addressing as many of these characteristics as possible.
+</p>
+
+<div class="headerLine">
+ <h1 id="quality">
+ App Quality
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-edu-quality.png">
+</div>
+
+<p>
+ Your apps should be designed to perform well and look great on Android
+ tablets, and they should offer the best user experience possible.
+</p>
+
+<p>
+ High quality apps are engaging, intuitive, and offer compelling content.
+ Google Play for Education will highlight high-quality apps for easy discovery
+ in the store. Here are some recommendations for making your app easy for
+ students and teachers to enjoy:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Meet the Core Quality Guidelines:
+ </p>
+
+ <ul>
+ <li>
+ <p>
+ Follow <a href="{@docRoot}design/index.html">Android Design
+ Guidelines</a>. Pay special attention to the sections on <a href=
+ "{@docRoot}design/patterns/actionbar.html">Action Bar</a>, <a href=
+ "{@docRoot}design/patterns/navigation.html">Navigation</a>, and
+ <a href="{@docRoot}design/patterns/pure-android.html">Pure
+ Android</a>.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Test your apps against the <a href=
+ "{@docRoot}distribute/essentials/quality/core.html">Core Quality
+ Guidelines</a>.
+ </p>
+ </li>
+ </ul>
+ </li>
+
+ <li>
+ <p>
+ Meet the Tablet App Quality guidelines:
+ </p>
+
+ <ul>
+ <li>
+ <p>
+ Follow our best practices for tablet app development.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Review the <a href=
+ "{@docRoot}distribute/essentials/quality/tablets.html">Tablet App
+ Quality</a> guidelines and <a href=
+ "http://android-developers.blogspot.com/2012/11/designing-for-tablets-were-here-to-help.html">
+ blog post on designing for tablets.</a>
+ </p>
+
+ <ul>
+ <li>Check your Optimization Tips in the <a href=
+ "https://play.google.com/apps/publish/">Developer Console</a> (if
+ you've already uploaded your apps.)
+ </li>
+ </ul>
+ </li>
+
+ <li>
+ <p>
+ Strive for simplicity and highest usability for students:
+ </p>
+
+ <ul>
+ <li>
+ <p>
+ Design your app so that teachers and students can use all the
+ capabilities of your app without having to sign-in to multiple
+ accounts and remember multiple passwords.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Every student or teacher using a Google Play for Education tablet
+ will already be signed in with a Google account on the device.
+ You can take advantage of that to provide a simple, seamless
+ sign-in experience in your app. A recommended approach is to use
+ <a href="{@docRoot}google/play-services/auth.html">Google OAuth 2
+ authorization</a> through Google Play Services.
+ </p>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+</ul>
+
+<div class="headerLine">
+ <h1 id="test-environment">
+ Test Environment
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ To test your app and assess it against the guidelines in this document, it's
+ recommended that you <a href=
+ "{@docRoot}distribute/essentials/quality/tablets.html#test-environment">set
+ up a test environment</a> that replicates the actual environment in which
+ students and teachers will run your app.
+</p>
+
+<h3>
+ Test conditions
+</h3>
+
+<p>
+ Make sure to test your apps under conditions that simulate those of schools.
+ For example, Google Play for Education lets administrators <a href=
+ "https://support.google.com/a/answer/182442?hl=en">control or disable certain
+ capabilities</a> for students, so it's good to test your app with those
+ capabilities disabled. Below are some conditions to test your apps for, to
+ ensure best results in the Google Play for Education environment:
+</p>
+
+<ul>
+ <li>
+ <p>
+ <em>Android version</em> — Test the apps on devices running Android
+ 4.2. Google Play for Education devices will be running Android 4.2 or
+ higher (API level 17+).
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <em>Proxy server</em> — Test the apps in a network environment that
+ uses proxies. Many schools use proxies.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <em>No location services</em> — Test the apps to make sure they
+ work properly with location services disabled. Many schools will disable
+ location services for student devices.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <em>No In-app Billing</em> — Test the apps to make sure they work
+ properly without access to In-app Billing. In-app purchases are blocked
+ on Google Play for Education devices.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <em>No Bluetooth</em> — Test the apps to make sure they work
+ properly when Bluetooth is disabled. Many schools will disable Bluetooth
+ on student devices.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <em>No access to network</em> — Test the app to make sure it works
+ properly when the device cannot connect to the internet.
+ </p>
+ </li>
+</ul>
+
+<div class="headerLine">
+<h1>Related Resources</h1><hr>
+</div>
+
+<div class="dynamic-grid">
+<h3>FOR DEVELOPERS</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/eduessentials/developers"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3,6x3,6x3"
+ data-maxResults="6"></div>
+
+<h3>FOR TEACHERS AND EDUCATORS</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/eduessentials/educators"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3,6x3,6x3"
+ data-maxResults="3"></div>
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/essentials/index.jd b/docs/html/distribute/essentials/index.jd
new file mode 100644
index 0000000..ca5442a
--- /dev/null
+++ b/docs/html/distribute/essentials/index.jd
@@ -0,0 +1,34 @@
+page.title=Essentials for a Successful App
+meta.tags="landing, quality"
+page.tags="guidelines", "tablet", "quality"
+section.landing=true
+nonavpage=true
+
+@jd:body
+
+<p>
+ A focus on quality should be part of your entire app delivery process: from
+ initial concept through app and UI design, coding and testing and onto a
+ process of monitoring feedback and making improvement after launch.
+</p>
+
+<div class="dynamic-grid">
+<div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/essentials"
+ data-cardSizes="6x6"
+ data-maxResults="6">
+</div>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-16"
+ data-query="type:blog+tag:quality"
+ data-cardSizes="6x3"
+ data-maxResults="3">
+</div>
+<div class="resource-widget resource-flow-layout col-16"
+ data-query="type:youtube+tag:appquality"
+ data-cardSizes="6x3"
+ data-maxResults="3">
+</div>
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/essentials/optimizing-your-app.jd b/docs/html/distribute/essentials/optimizing-your-app.jd
new file mode 100644
index 0000000..3fe91b28
--- /dev/null
+++ b/docs/html/distribute/essentials/optimizing-your-app.jd
@@ -0,0 +1,517 @@
+page.title=Optimize Your App
+page.metaDescription=A look at how to get the most visibility and the highest ratings possible for your app or game. Optimizing the quality of your apps is a key strategy.
+page.image=/distribute/images/gp-optimize-card.jpg
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>Strategies</h2>
+ <ol>
+ <li><a href="#listen-to-your-users">Listen to Your Users</a></li>
+ <li><a href="#measuring-analyzing-responding">Measuring, Analyzing, and Responding to User Behavior</a></li>
+ <li><a href="#improve-stability">Improve Stability and Eliminate Bugs</a></li>
+ <li><a href="#improve-ui">Improve UI Responsiveness</a></li>
+ <li><a href="#improve-usability">Improve Usability</a></li>
+ <li><a href="#professional-appearance">Professional Appearance and Aesthetics</a></li>
+ <li><a href="#deliver-features">Deliver the Right Set of Features</a></li>
+ <li><a href="#integrate">Integrate with the System and Third-Party Apps</a></li>
+ <li><a href="#related-resources">Related Resources</a></li>
+ </ol>
+ </div>
+</div>
+
+<div class="top-right-float">
+ <img src="{@docRoot}images/gp-optimize.png" class="quality-top-image" style=
+ "width:239px;padding-left:1.5em;">
+</div>
+
+<p>
+ With thousands of new apps being published in Google Play every week, it's
+ important to look for ways to get the most visibility and the highest ratings
+ possible. Optimizing the quality of your apps is a key strategy.
+</p>
+
+<p>
+ A higher quality app can translate to higher user ratings, generally better
+ rankings, more downloads, and higher retention (longer install periods).
+ High-quality apps are much more likely to get positive publicity, such as
+ being featured in Google Play or generating social media buzz.
+</p>
+
+<p>
+ The quality of your apps is something you should consider addressing both
+ before and after launch. Gaining users after the launch of a poor quality app
+ can be hard and recovering costly. On the other hand, maintaining the ranking
+ of high-quality apps is made easier if there are continual improvements, a
+ practice that also fuels the impression-install-ranking cycle.
+</p>
+
+<p>
+ On this page you can find advice on a number of ways in which you can drive
+ improvements to your apps’ quality.
+</p>
+
+<div class="headerLine">
+ <h1 id="listen-to-your-users">
+ Listen to Your Users
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-optimizing-chat-bubbles.png">
+</div>
+
+<p>
+ Listening and hearing your users can be one of your best tools for success.
+ Start listening to your users before launching your apps and continue to
+ listen after launch.
+</p>
+
+<h3>
+ <strong>Listening before you launch</strong>
+</h3>
+
+<p>
+ You can listen to your users during the development of your apps. This
+ process can start with focus groups to review app features, continue into
+ user experience workshops, and onto alpha and beta releases. Listening at
+ these stages has two main benefits: <strong>you’ll build apps with features
+ users want</strong> and <strong>any issues they identify will be cheaper and
+ quicker to fix</strong> than they would be once the app is launched fully.
+</p>
+
+<p>
+ If the practicalities of focus groups and user workshops seem excessive in
+ relation to the development of a particular app, drawing on the feedback of
+ colleagues, friends, and family can be much more useful than getting no
+ feedback at all.
+</p>
+
+<p>
+ It's crucial to conduct user testing before releasing your apps to Google
+ Play. If you can only engage with colleagues, friends, and family you’re
+ already making a good start. For more extensive testing consider a public
+ alpha/beta test or creating your own trusted tester program. You can manage
+ app distribution yourself through email or your own website, or you can use
+ <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">beta-testing</a>
+ and <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#staged-rollouts">staged
+ rollouts</a> in conjunction with <a href=
+ "http://www.google.com/+/business/">Google+</a> or <a href=
+ "https://groups.google.com/forum/#!overview">Google Groups</a> to distribute
+ software and gather feedback to a subset of users. <strong>Users on alpha or
+ beta versions cannot leave reviews or ratings</strong>, so there is
+ <strong>no risk to your rating</strong> on Google Play.
+</p>
+
+<p>
+ Unless you have to, don’t restrict the users you involve in these stages in
+ the information they can share through their social networks and blogs -
+ users engaged in these early stages (and listened too) are likely to be great
+ ambassadors for your apps and will help create great social media buzz.
+</p>
+
+<h3>
+ Listening after launch
+</h3>
+
+<p>
+ Once you have launched, the most obvious way to listen to users is by reading
+ and addressing comments on Google Play. Although the comments aren't always
+ productive or constructive, some will provide valuable insight on aspects of
+ your apps. It's important to remember that users have the opportunity to
+ change their ratings and comments as much as they like.
+</p>
+
+<p>
+ There are more interactive ways you can reach users, help them address their
+ concerns, and gather more detailed feedback: by setting up support and
+ discussion forums. There are some great support tools out there that can put
+ you in touch with your users directly, from forums such as <a href=
+ "http://groups.google.com/">Google Groups</a> to comprehensive customer
+ support products and tools like UserVoice. Once you get set up with such a
+ tool, make sure to fill in the support link in your Google Play product
+ details page — users do click through to these.
+</p>
+
+<p>
+ Also don’t forget to use the <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">beta-testing</a>
+ and <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#staged-rollouts">staged
+ rollout</a> features of Google Play with app updates.
+</p>
+
+<div class="headerLine" id="measuring-analyzing-responding">
+ <h1>
+ Measuring, Analyzing, and Responding to User Behavior
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-optimize-analytics.png">
+</div>
+
+<p>
+ One of the best ways to spot issues to resolve is by measuring user behavior.
+ Optimizing your app becomes much easier when you analyze performance before
+ and after you launch. Drop off points, low ratings, and high percent of
+ uninstalls can be indicative that there’s a problem. Measuring and responding
+ to user-related metrics such as download sources, retention rates, and in-app
+ behavior regularly is critical to keeping and bringing back your hard earned
+ user base.
+</p>
+
+<p>
+ You can get data from tools in Google Play or third-parties to analyze user
+ behavior. You can identify details such as:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Where installs are coming from.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ The types of users you are acquiring.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ What is causing user churn and how to reduce it.
+ </p>
+ </li>
+</ul>
+
+<h3>
+ Statistics for analyzing installs and ratings
+</h3>
+
+<p>
+ Once you’ve published your app, Google Play makes it easy to see how it’s
+ doing. The <a href="https://play.google.com/apps/publish/">Developer
+ Console</a> gives you access to a variety of anonymized statistics and custom
+ charts that show you the app's installation performance and ratings.
+</p>
+
+<p>
+ You can view data and charts for active, daily, and total installs per unique
+ devices or users, as well as upgrades and uninstalls. You can also view the
+ app's daily average user rating and its cumulative user rating. To help you
+ analyze the data, you can view install and ratings statistics across a
+ variety of different dimensions such as Android version, device, country, app
+ version, and carrier.
+</p>
+
+<div>
+ <img class="border-img" src="{@docRoot}images/gp-dc-stats-mini.png">
+</div>
+
+<p>
+ You can see your app statistics on timeline charts, for all metrics and
+ dimensions. At a glance, the charts highlight your app’s installation and
+ ratings peaks and longer-term trends, which you can correlate to promotions,
+ app improvements, or other factors. You can even focus in on data inside a
+ dimension by highlighting specific data points (such as individual platform
+ versions or languages) on the timeline.
+</p>
+
+<p>
+ You can download all of your installation data as a CSV file for viewing in
+ the business program of your choice.
+</p>
+
+<h3>
+ Tracking and analyzing Marketing campaigns
+</h3>
+
+<p>
+ While you should consider monitoring user behavior data as a part of your
+ normal activities, it’s particularly important when you’re running any form
+ of marketing campaign, to make sure you’re getting the right users at the
+ lowest cost possible.
+</p>
+
+<p>
+ One way to track your marketing campaigns is to link <a href=
+ "http://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html">
+ Google Analytics with your Google Play account</a> to analyze activity from
+ source to install.
+</p>
+
+<div style="margin-top:1em;">
+ <img src="{@docRoot}images/gp-optimizing-image-4.jpg" class="border-img">
+</div>
+
+<p>
+ You can also use any of the variety of tools on the market to help track your
+marketing success and improvement ROI if you wish. There are also third parties
+who can help automate, measure, and optimize your mobile marketing.
+</p>
+
+<div class="headerLine">
+ <h1 id="improve-stability">
+ Improve Stability and Eliminate Bugs
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ There are many tools and techniques for testing and profiling your app on
+ different devices and user scenarios.
+</p>
+
+<p>
+ One noteworthy and yet relatively underused tool for catching stability
+ issues such as crashes is the <a href=
+ "{@docRoot}tools/help/monkey.html">UI/Application Exerciser Monkey</a>
+ (Monkey). Monkey will send random UI events to your app's activities,
+ allowing you to trigger user flows that can uncover stability problems.
+</p>
+
+<p>
+ Also, with the Google error-reporting features built into most Android
+ devices, users have a way to report application crashes to you. The error
+ reports show up in aggregate in the Google Play Developer Console. Make sure
+ to read these reports often and act on them appropriately.
+</p>
+
+<p>
+ Last, keep an external bug and feature request tracker and let users know how
+ to find it. This will enable them to engage with the app at a closer level,
+ by following features and bugs that affect them. User frustration with app
+ problems can be effectively managed with diligent issue tracking and
+ communication. Several community support tools offer issue tracking features,
+ and if your project is open source, most popular repository hosting sites
+ offer this as well.
+</p>
+
+<div class="headerLine">
+ <h1 id="improve-ui">
+ Improve UI Responsiveness
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-optimize-speed.png">
+</div>
+
+<p>
+ One sure-fire way to lose your users is to give them a slow, unresponsive UI.
+ Research has shown that <a href=
+ "http://googleresearch.blogspot.com/2009/06/speed-matters.html">speed
+ matters</a>, for any interface, on mobile, web, or desktop. In fact, the
+ importance of speed is amplified on mobile devices since users often need
+ their information on the go and in a hurry.
+</p>
+
+<p>
+ You can improve your apps' UI responsiveness by moving long-running
+ operations off the main thread to worker threads. Android offers built-in
+ debugging facilities such as StrictMode for analyzing your app's performance
+ and activities on the main thread. See more recommendations in <a href=
+ "http://www.youtube.com/watch?v=c4znvD-7VDA">Writing Zippy Android Apps</a>,
+ a developer session from Google I/O 2010.
+</p>
+
+<p>
+ A great way to improve UI performance is to minimize the complexity of your
+ layouts. If you open up <a href=
+ "{@docRoot}tools/help/hierarchy-viewer.html">hierarchyviewer</a> and see that
+ your layouts are more than 5 levels deep, it may be time to simplify your
+ layout. Consider refactoring those deeply nested <a href=
+ "{@docRoot}reference/android/widget/LinearLayout.html">LinearLayouts</a> into
+ <a href="{@docRoot}guide/topics/ui/layout/relative.html">RelativeLayout</a>.
+ The impact of View objects is cumulative — each one costs about 1 to 2 KB of
+ memory, so large view hierarchies can be a recipe for disaster, causing
+ frequent VM garbage collection passes which block the main (UI) thread. You
+ can learn more from the Google I/O session <a href=
+ "http://www.youtube.com/watch?v=wDBM6wVEO70">World of ListView</a>.
+</p>
+
+<p>
+ Lastly, as pointed out in the blog post <a href=
+ "http://android-developers.blogspot.com/2010/10/traceview-war-story.html">Traceview
+ War Story</a>, tools like <a href=
+ "{@docRoot}tools/help/traceview.html">traceview and ddms</a> can be your best
+ friends in improving your app by profiling method calls and monitoring VM
+ memory allocations, respectively.
+</p>
+
+<div class="headerLine">
+ <h1 id="improve-usability">
+ Improve Usability
+ </h1>
+
+ <hr>
+</div>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <p>
+ <strong>Tip:</strong> As you’re designing or evaluating your app's UI,
+ make sure to read and become familiar with the <a href=
+ "{@docRoot}design/index.html">Android Design</a> guidelines. Included are
+ many examples of UI patterns, styles, and building blocks, as well as
+ tools for the design process.
+ </p>
+ </div>
+</div>
+
+<p>
+ In usability and in app design too, you should listen carefully to your
+ users. Ask a handful of real Android device users (friends, family, etc.) to
+ try out your app and observe them as they interact with it. Look for cases
+ where they get confused, are unsure of how to proceed, or are surprised by
+ certain behaviors. Minimize these cases by rethinking some of the
+ interactions in your app. See the <a href=
+ "{@docRoot}design/patterns/index.html">Patterns section</a> for tips to
+ improve your design.
+</p>
+
+<p>
+ In the same vein, two problems that can plague some Android user interfaces
+ are small tap targets and excessively small font sizes. These are generally
+ easy to fix and can make a big impact on usability and user satisfaction. As
+ a general rule, optimize for ease of use and legibility, while minimizing, or
+ at least carefully balancing, information density.
+</p>
+
+<p>
+ Another way to incrementally improve usability, based on real-world data, is
+ to implement <a href=
+ "http://code.google.com/mobile/analytics/docs/">Analytics</a> throughout your
+ app to log the use of particular sections. Consider demoting infrequently
+ used sections to the overflow menu in the <a href=
+ "{@docRoot}design/patterns/actionbar.html">Action bar</a>, or removing them
+ altogether. For often-used sections and UI elements, make sure they're
+ immediately obvious and easily accessible in your app's UI so that users can
+ get to them quickly.
+</p>
+
+<div class="headerLine">
+ <h1 id="professional-appearance">
+ Professional Appearance and Aesthetics
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ There's no substitute for a real user interface designer — ideally one who's
+ well-versed in mobile and Android, and handy with both interaction and visual
+ design. One popular venue to post openings for designers is <a href=
+ "http://jobs.smashingmagazine.com/">jobs.smashingmagazine.com</a>, and
+ leveraging social networks can also surface great talent.
+</p>
+
+<p>
+ If you don't have the luxury of working with a UI designer, there are some
+ ways in which you can improve your app's appearance yourself. You can use
+ Adobe Photoshop, Adobe Fireworks, GIMP, Inkscape or other image editing
+ tools. Mastering the art of the pixel in these apps takes time, but honing
+ this skill can help build polish across your interface designs. Also, master
+ the resources framework by studying the framework UI assets and layouts and
+ reading through the <a href=
+ "{@docRoot}guide/topics/resources/index.html">resources documentation</a>.
+ Techniques such as 9-patches and resource directory qualifiers are somewhat
+ unique to Android, and are crucial in building flexible yet aesthetic UIs.
+</p>
+
+<p>
+ Before you get too far in designing your app and writing the code, make sure
+ to visit the <a href="{@docRoot}design/index.html">Android Design section</a>
+ and learn about the vision, the building blocks, and the tools of designing
+ beautiful and inspiring user interfaces.
+</p>
+
+<div class="headerLine">
+ <h1 id="deliver-features">
+ Deliver the Right Set of Features
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Having the <em>right</em> set of features in your app is important. It's
+ often easy to fall into the trap of feature-creep, building as much
+ functionality into your app as possible. Providing instant gratification by
+ immediately showing the most important or relevant information is crucial on
+ mobile devices. Providing too much information can be as frustrating (or even
+ more so) than not providing enough of it.
+</p>
+
+<p>
+ Again, listen to your users by collecting and responding to feature requests.
+ Be careful, though, to take feature requests with a grain of salt. Requests
+ can be very useful in aggregate, to get a sense of what kinds of
+ functionality you should be working on, but not every feature request needs
+ to be implemented.
+</p>
+
+<div class="headerLine">
+ <h1 id="integrate">
+ Integrate with the System and Third-Party apps
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ A great way to deliver a delightful user experience is to integrate tightly
+ with the operating system. Features like <a href=
+ "{@docRoot}guide/topics/appwidgets/index.html">Home screen widgets</a>,
+ <a href="{@docRoot}design/patterns/notifications.html">rich
+ notifications</a>, <a href="{@docRoot}guide/topics/search/index.html">global
+ search integration</a>, and <a href=
+ "{@docRoot}reference/android/widget/QuickContactBadge.html">Quick
+ Contacts</a> are fairly low-hanging fruit in this regard.
+</p>
+
+<p>
+ For some app categories, basic features like home screen widgets are
+ expected. Not including them is a sure-fire way to tarnish an otherwise
+ positive user experience. Some apps can achieve even tighter OS integration
+ with Android's contacts, accounts, and sync APIs.
+</p>
+
+<p>
+ Third-party integrations can provide even more user delight and give the user
+ a feeling of device cohesiveness. It's also a really nice way of adding
+ functionality to your app without writing any extra code (by leveraging other
+ apps' functionality). For example, if you're creating a camera app, you can
+ allow users to edit their photos in another app before saving them to their
+ collection, if they have that third-party application installed. More
+ information on this subject is available in the Android Training class
+ <a href="{@docRoot}training/basics/intents/index.html">Interacting with Other
+ Apps</a>.
+</p>
+
+<div class="headerLine">
+<h1 id="related-resources">Related Resources</h1><hr>
+</div>
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/optimizing, tag:addia"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="3"></div>
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="tag:adia"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="3"></div>
+
diff --git a/docs/html/distribute/essentials/quality/core.jd b/docs/html/distribute/essentials/quality/core.jd
new file mode 100644
index 0000000..558b030
--- /dev/null
+++ b/docs/html/distribute/essentials/quality/core.jd
@@ -0,0 +1,1170 @@
+page.title=Core App Quality
+page.metaDescription=App quality directly influences the long-term success of your app—in terms of installs, user rating and reviews, engagement, and user retention.
+page.image=/distribute/images/core-quality-guidelines.jpg
+@jd:body
+
+<div id="qv-wrapper"><div id="qv">
+<h2>Quality Criteria</h2>
+ <ol>
+ <li><a href="#ux">Design and Interaction</a></li>
+ <li><a href="#fn">Functionality</a></li>
+ <li><a href="#ps">Performance and Stability</a></li>
+ <li><a href="#listing">Google Play</a></li>
+
+ </ol>
+
+ <h2>Testing</h2>
+ <ol>
+ <li><a href="#test-environment">Setting Up a Test Environment</a></li>
+ <li><a href="#tests">Test Procedures</a></li>
+ </ol>
+
+ <h2>You Should Also Read</h2>
+ <ol>
+ <li><a href="{@docRoot}distribute/essentials/quality/tablets.html">Tablet App Quality</a></li>
+ <li><a href="{@docRoot}distribute/essentials/optimizing-your-app.html">Optimize Your App</a></li>
+ </ol>
+
+
+</div>
+</div>
+
+<div class="top-right-float">
+ <img src="{@docRoot}images/gp-core-quality.png" style="margin-left: 20px;">
+</div>
+
+<p>
+ Android users expect high-quality apps. App quality directly influences the
+ long-term success of your app—in terms of installs, user rating and reviews,
+ engagement, and user retention.
+</p>
+
+<p>
+ This document helps you assess basic aspects of quality in your app through a
+ compact set of core app quality criteria and associated tests. All Android
+ apps should meet these criteria.
+</p>
+
+<p>
+ Before publishing your apps, test them against these criteria to ensure that
+ they function well on many devices, meets Android standards for navigation
+ and design, and are prepared for promotional opportunities in the Google Play
+ store. Your testing will go well beyond what's described here—the purpose of
+ this document is to specify the essential quality characteristics all apps
+ should display, so that you can cover them in your test plans.
+</p>
+
+<p>
+ If you're creating apps for tablets and or Google Play for Education there
+ are additional quality criteria you should consider, which are defined in the
+ <a href="{@docRoot}distribute/essentials/quality/tablets.html">Tablet App
+ Quality</a> guidelines and <a href=
+ "{@docRoot}distribute/essentials/gpfe-guidelines.html">Education
+ Guidelines</a>.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="ux">
+ Visual Design and User Interaction
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ These criteria ensure that your app provides standard Android visual design
+ and interaction patterns where appropriate, for a consistent and intuitive
+ user experience.
+</p>
+
+<table>
+ <tr>
+ <th style="width:2px;">
+ Area
+ </th>
+ <th style="width:54px;">
+ ID
+ </th>
+
+
+ <th>
+ Description
+ </th>
+ <th style="width:54px;">
+ Tests
+ </th>
+ </tr>
+ <tr id="UX-B1">
+ <td>Standard design</td>
+ <td>
+ UX-B1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App follows <a href="{@docRoot}design/index.html">Android Design</a>
+ guidelines and uses common <a href=
+ "{@docRoot}design/patterns/index.html">UI patterns and icons</a>:
+ </p>
+
+ <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
+ <li>App does not redefine the expected function of a system icon (such
+ as the Back button).
+ </li>
+
+ <li>App does not replace a system icon with a completely different icon
+ if it triggers the standard UI behavior.
+ </li>
+
+ <li>If the app provides a customized version of a standard system icon,
+ the icon strongly resembles the system icon and triggers the standard
+ system behavior.
+ </li>
+
+ <li>App does not redefine or misuse Android UI patterns, such that
+ icons or behaviors could be misleading or confusing to users.
+ </li>
+ </ol>
+ </td>
+ <td>
+ <a href="#core">CR-all</a>
+ </td>
+ </tr>
+
+ <tr>
+ <td rowspan="3">
+ Navigation
+ </td>
+ <td id="UX-N1">
+ UX-N1
+ </td>
+ <td>
+ <p>
+ App supports standard system <a href=
+ "{@docRoot}design/patterns/navigation.html">Back button navigation</a>
+ and does not make use of any custom, on-screen "Back button" prompts.
+ </p>
+ </td>
+ <td>
+ <a href="#core">CR-3</a>
+ </td>
+ </tr>
+
+ <tr>
+ <td id="UX-N2">
+ UX-N2
+ </td>
+ <td>
+ <p>
+ All dialogs are dismissable using the Back button.
+ </p>
+ </td>
+ <td>
+ <a href="#core">CR-3</a>
+ </td>
+ </tr>
+
+ <tr id="UX-N3">
+ <td>
+ UX-N3
+ </td>
+ <td>
+ Pressing the Home button at any point navigates to the Home screen of the
+ device.
+ </td>
+ <td>
+ <a href="#core">CR-1</a>
+ </td>
+ </tr>
+
+ <tr id="UX-S1">
+ <td rowspan="2">
+ Notifications
+ </td>
+ <td>
+ UX-S1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ Notifications follow Android Design <a href=
+ "{@docRoot}design/patterns/notifications.html">guidelines</a>. In
+ particular:
+ </p>
+
+ <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
+ <li>Multiple notifications are stacked into a single notification
+ object, where possible.
+ </li>
+
+ <li>Notifications are persistent only if related to ongoing events
+ (such as music playback or a phone call).
+ </li>
+
+ <li>Notifications do not contain advertising or content unrelated to
+ the core function of the app, unless the user has opted in.
+ </li>
+ </ol>
+ </td>
+ <td>
+ <a href="#core">CR-11</a>
+ </td>
+ </tr>
+
+ <tr id="UX-S2">
+ <td>
+ UX-S2
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App uses notifications only to:
+ </p>
+
+ <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
+ <li>Indicate a change in context relating to the user personally (such
+ as an incoming message), or
+ </li>
+
+ <li>Expose information/controls relating to an ongoing event (such as
+ music playback or a phone call).
+ </li>
+ </ol>
+ </td>
+ <td>
+ <a href="#core">CR-11</a>
+ </td>
+ </tr>
+</table>
+
+<h3>
+ Related Resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/essentials/corequalityguidelines/visualdesign"
+data-sortorder="-timestamp" data-cardsizes="9x3,9x3,6x3,6x3,6x3"
+data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="fn">
+ Functionality
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ These criteria ensure that your app provides expected functional behavior,
+ with the appropriate level of permissions.
+</p>
+
+<table>
+ <tr>
+ <th style="width:2px;">
+ Area
+ </th>
+ <th style="width:54px;">
+ ID
+ </th>
+ <th>
+ Description
+ </th>
+ <th style="width:54px;">
+ Tests
+ </th>
+ </tr>
+
+ <tr id="FN-P1">
+ <td rowspan="2">
+ Permissions
+ </td>
+ <td>
+ FN-P1
+ </td>
+ <td>
+ App requests only the <em>absolute minimum</em> permissions that it needs
+ to support core functionality.
+ </td>
+ <td rowspan="2">
+ <a href="#core">CR-11</a>
+ </td>
+ </tr>
+
+ <tr id="FN-P2">
+ <td>
+ FN-P2
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App does not request permissions to access sensitive data (such as
+ Contacts or the System Log) or services that can cost the user money
+ (such as the Dialer or SMS), unless related to a core capability of the
+ app.
+ </p>
+ </td>
+ </tr>
+
+ <tr id="FN-L1">
+ <td>
+ Install location
+ </td>
+ <td>
+ FN-L1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App functions normally when installed on SD card (if supported by app).
+ </p>
+
+ <p style="margin-bottom:.25em;">
+ Supporting installation to SD card is recommended for most large apps
+ (10MB+). See the <a href=
+ "{@docRoot}guide/topics/data/install-location.html">App Install
+ Location</a> developer guide for information about which types of apps
+ should support installation to SD card.
+ </p>
+ </td>
+ <td>
+ <a href="#SD-1">SD-1</a>
+ </td>
+ </tr>
+
+ <tr id="FN-A1">
+ <td rowspan="4">
+ Audio
+ </td>
+ <td>
+ FN-A1
+ </td>
+ <td>
+ Audio does not play when the screen is off, unless this is a core feature
+ (for example, the app is a music player).
+ </td>
+ <td>
+ <a href="#core">CR-7</a>
+ </td>
+ </tr>
+
+ <tr id="FN-A2">
+ <td>
+ FN-A2
+ </td>
+ <td>
+ Audio does not <a href=
+ "http://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html">
+ play behind the lock screen</a>, unless this is a core feature.
+ </td>
+ <td>
+ <a href="#core">CR-8</a>
+ </td>
+ </tr>
+
+ <tr id="FN-A3">
+ <td>
+ FN-A3
+ </td>
+ <td>
+ Audio does not play on the home screen or over another app, unless this
+ is a core feature.
+ </td>
+ <td>
+ <a href="#core">CR-1,<br>
+ CR-2</a>
+ </td>
+ </tr>
+
+ <tr id="FN-A4">
+ <td>
+ FN-A4
+ </td>
+ <td>
+ Audio resumes when the app returns to the foreground, or indicates to the
+ user that playback is in a paused state.
+ </td>
+ <td>
+ <a href="#core">CR-1, CR-8</a>
+ </td>
+ </tr>
+
+ <tr id="FN-U1">
+ <td rowspan="3">
+ UI and Graphics
+ </td>
+ <td>
+ FN-U1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App supports both landscape and portrait orientations (if possible).
+ </p>
+
+ <p style="margin-bottom:.25em;">
+ Orientations expose largely the same features and actions and preserve
+ functional parity. Minor changes in content or views are acceptable.
+ </p>
+ </td>
+ <td>
+ <a href="#core">CR-5</a>
+ </td>
+ </tr>
+
+ <tr id="FN-U2">
+ <td>
+ FN-U2
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App uses the whole screen in both orientations and does not letterbox
+ to account for orientation changes.
+ </p>
+
+ <p style="margin-bottom:.25em;">
+ Minor letterboxing to compensate for small variations in screen
+ geometry is acceptable.
+ </p>
+ </td>
+ <td>
+ <a href="#core">CR-5</a>
+ </td>
+ </tr>
+
+ <tr id="FN-U3">
+ <td>
+ FN-U3
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App correctly handles rapid transitions between display orientations
+ without rendering problems.
+ </p>
+ </td>
+ <td>
+ <a href="#core">CR-5</a>
+ </td>
+ </tr>
+
+ <tr id="FN-S1">
+ <td rowspan="2">
+ User/app state
+ </td>
+ <td>
+ FN-S1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App should not leave any services running when the app is in the
+ background, unless related to a core capability of the app.
+ </p>
+
+ <p style="margin-bottom:.25em;">
+ For example, the app should not leave services running to maintain a
+ network connection for notifications, to maintain a Bluetooth
+ connection, or to keep the GPS powered-on.
+ </p>
+ </td>
+ <td>
+ <a href="#core">CR-6</a>
+ </td>
+ </tr>
+
+ <tr id="FN-S2">
+ <td>
+ FN-S2
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App correctly preserves and restores user or app state.
+ </p>
+
+ <p style="margin-bottom:.25em;">
+ App preserves user or app state when leaving the foreground and
+ prevents accidental data loss due to back-navigation and other state
+ changes. When returning to the foreground, the app must restore the
+ preserved state and any significant stateful transaction that was
+ pending, such as changes to editable fields, game progress, menus,
+ videos, and other sections of the app or game.
+ </p>
+
+ <ol style="margin-bottom:.25em;list-style-type:lower-alpha">
+ <li>When the app is resumed from the Recents app switcher, the app
+ returns the user to the exact state in which it was last used.
+ </li>
+
+ <li>When the app is resumed after the device wakes from sleep (locked)
+ state, the app returns the user to the exact state in which it was last
+ used.
+ </li>
+
+ <li>When the app is relaunched from Home or All Apps, the app restores
+ the app state as closely as possible to the previous state.
+ </li>
+
+ <li>On Back keypresses, the app gives the user the option of saving any
+ app or user state that would otherwise be lost on back-navigation.
+ </li>
+ </ol>
+ </td>
+ <td>
+ <a href="#core">CR-1, CR-3, CR-5</a>
+ </td>
+ </tr>
+</table>
+
+<h3>
+ Related Resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/essentials/corequalityguidelines/functionality"
+data-sortorder="-timestamp" data-cardsizes="6x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="ps">
+ Performance and Stability
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ These criteria ensure that apps provide the performance, stability, and
+ responsiveness expected by users.
+</p>
+
+<table>
+ <tr>
+ <th style="width:2px;">
+ Area
+ </th>
+ <th style="width:54px;">
+ ID
+ </th>
+ <th>
+ Description
+ </th>
+ <th style="width:54px;">
+ Tests
+ </th>
+ </tr>
+
+ <tr id="PS-S1">
+ <td>
+ Stability
+ </td>
+ <td>
+ PS-S1
+ </td>
+ <td>
+ App does not crash, force close, freeze, or otherwise function abnormally
+ on any targeted device.
+ </td>
+ <td>
+ <a href="#core">CR-all</a>, <a href="#SD-1">SD-1</a>, <a href=
+ "#HA-1">HA-1</a>
+ </td>
+ </tr>
+
+ <tr id="PS-P1">
+ <td rowspan="2">
+ Performance
+ </td>
+ <td>
+ PS-P1
+ </td>
+ <td>
+ App loads quickly or provides onscreen feedback to the user (a progress
+ indicator or similar cue) if the app takes longer than two seconds to
+ load.
+ </td>
+ <td>
+ <a href="#core">CR-all</a>, <a href="#SD-1">SD-1</a>
+ </td>
+ </tr>
+
+ <tr id="PS-P2">
+ <td>
+ PS-P2
+ </td>
+ <td>
+ With StrictMode enabled (see <a href="#strictmode">StrictMode
+ Testing</a>, below), no red flashes (performance warnings from
+ StrictMode) are visible when exercising the app, including during game
+ play, animations and UI transitions, and any other part of the app.
+ </td>
+ <td>
+ <a href="#PM-1">PM-1</a>
+ </td>
+ </tr>
+
+ <tr id="PS-M1">
+ <td>
+ Media
+ </td>
+ <td>
+ PS-M1
+ </td>
+ <td>
+ Music and video playback is smooth, without crackle, stutter, or other
+ artifacts, during normal app usage and load.
+ </td>
+ <td>
+ <a href="#core">CR-all</a>, <a href="#SD-1">SD-1</a>, <a href=
+ "#HA-1">HA-1</a>
+ </td>
+ </tr>
+
+ <tr id="PS-V1">
+ <td rowspan="2">
+ Visual quality
+ </td>
+ <td>
+ PS-V1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App displays graphics, text, images, and other UI elements without
+ noticeable distortion, blurring, or pixelation.
+ </p>
+
+ <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
+ <li>App provides high-quality graphics for all targeted screen sizes
+ and form factors, including for <a href=
+ "{@docRoot}distribute/essentials/quality/tablet.html">larger-screen
+ devices such as tablets</a>.
+ </li>
+
+ <li>No aliasing at the edges of menus, buttons, and other UI elements
+ is visible.
+ </li>
+ </ol>
+ </td>
+ <td rowspan="2">
+ <a href="#core">CR-all</a>
+ </td>
+ </tr>
+
+ <tr id="PS-V2">
+ <td>
+ PS-V2
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App displays text and text blocks in an acceptable manner.
+ </p>
+
+ <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
+ <li>Composition is acceptable in all supported form factors, including
+ for larger-screen devices such as tablets.
+ </li>
+
+ <li>No cut-off letters or words are visible.
+ </li>
+
+ <li>No improper word wraps within buttons or icons are visible.
+ </li>
+
+ <li>Sufficient spacing between text and surrounding elements.
+ </li>
+ </ol>
+ </td>
+ </tr>
+</table>
+
+<h3>
+ Related Resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/essentials/core/performance" data-sortorder="-timestamp"
+data-cardsizes="6x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="listing">
+ Google Play
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ These criteria ensure that your apps are ready to publish on Google Play.
+</p>
+
+<table>
+ <tr>
+ <th style="width:2px;">
+ Area
+ </th>
+ <th style="width:54px;">
+ ID
+ </th>
+ <th>
+ Description
+ </th>
+ <th style="width:54px;">
+ Tests
+ </th>
+ </tr>
+
+ <tr id="GP-P1">
+ <td rowspan="2">
+ Policies
+ </td>
+ <td>
+ GP-P1
+ </td>
+ <td>
+ App strictly adheres to the terms of the <a href=
+ "http://play.google.com/about/developer-content-policy.html">Google Play
+ Developer Content Policy</a> and does not offer inappropriate content,
+ does not use intellectual property or brand of others, and so on.
+ </td>
+ <td>
+ <a href="#gp">GP-all</a>
+ </td>
+ </tr>
+
+ <tr id="GP-P2">
+ <td>
+ GP-P2
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App maturity level is set appropriately, based on the <a href=
+ "http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=188189">
+ Content Rating Guidelines</a>.
+ </p>
+
+ <p style="margin-bottom:.25em;">
+ Especially, note that apps that request permission to use the device
+ location cannot be given the maturity level "Everyone".
+ </p>
+ </td>
+ <td>
+ <a href="#gp">GP-1</a>
+ </td>
+ </tr>
+
+ <tr id="GP-D1">
+ <td rowspan="3">
+ App Details Page
+ </td>
+ <td>
+ GP-D1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ App feature graphic follows the guidelines outlined in this <a href=
+ "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html">
+ blog post</a>. Make sure that:
+ </p>
+
+ <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
+ <li>The app listing includes a high-quality feature graphic.
+ </li>
+
+ <li>The feature graphic does not contain device images, screenshots, or
+ small text that will be illegible when scaled down and displayed on the
+ smallest screen size that your app is targeting.
+ </li>
+
+ <li>The feature graphic does not resemble an advertisement.
+ </li>
+ </ol>
+ </td>
+ <td>
+ <a href="#gp">GP-1, GP-2</a>
+ </td>
+ </tr>
+
+ <tr id="GP-D2">
+ <td>
+ GP-D2
+ </td>
+ <td>
+ App screenshots and videos do not show or reference non-Android devices.
+ </td>
+ <td rowspan="2">
+ <a href="#gp">GP-1</a>
+ </td>
+ </tr>
+
+ <tr id="GP-D3">
+ <td>
+ GP-D3
+ </td>
+ <td>
+ App screenshots or videos do not represent the content and experience of
+ your app in a misleading way.
+ </td>
+ </tr>
+
+ <tr id="GP-X1">
+ <td>
+ User Support
+ </td>
+ <td>
+ GP-X1
+ </td>
+ <td>
+ Common user-reported bugs in the Reviews tab of the Google Play page are
+ addressed if they are reproducible and occur on many different devices.
+ If a bug occurs on only a few devices, you should still address it if
+ those devices are particularly popular or new.
+ </td>
+ <td>
+ <a href="#gp">GP-1</a>
+ </td>
+ </tr>
+</table>
+
+<h3>
+ Related Resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/essentials/core/play" data-sortorder="-timestamp"
+data-cardsizes="6x3,6x3,6x3,6x3,6x3,6x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="test-environment">
+ Setting Up a Test Environment
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ To assess the quality of your app, you need to set up a suitable hardware or
+ emulator environment for testing.
+</p>
+
+<p>
+ The ideal test environment would include a small number of actual hardware
+ devices that represent key form factors and hardware/software combinations
+ currently available to consumers. It's not necessary to test on
+ <em>every</em> device that's on the market — rather, you should focus
+ on a small number of representative devices, even using one or two devices
+ per form factor.
+</p>
+
+<p>
+ If you are not able to obtain actual hardware devices for testing, you should
+ <a href="{@docRoot}tools/devices/index.html">set up emulated devices
+ (AVDs)</a> to represent the most common form factors and hardware/software
+ combinations.
+</p>
+
+<p>
+ To go beyond basic testing, you can add more devices, more form factors, or
+ new hardware/software combinations to your test environment. You can also
+ increase the number or complexity of tests and quality criteria.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="tests">
+ Test Procedures
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ These test procedures help you discover various types of quality issues in
+ your app. You can combine the tests or integrate groups of tests together in
+ your own test plans. See the sections above for references that associate
+ specific criteria with specific tests.
+</p>
+
+<table>
+ <tr>
+ <th style="width:2px;">
+ Type
+ </th>
+ <th style="width:54px;">
+ Test
+ </th>
+ <th>
+ Description
+ </th>
+ </tr>
+
+ <tr>
+ <td rowspan="12" id="core">
+ Core Suite
+ </td>
+ <td>
+ CR-0
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ Navigate to all parts of the app — all screens, dialogs,
+ settings, and all user flows.
+ </p>
+
+ <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
+ <li>If the application allows for editing or content creation, game
+ play, or media playback, make sure to enter those flows to create or
+ modify content.
+ </li>
+
+ <li>While exercising the app, introduce transient changes in network
+ connectivity, battery function, GPS or location availability, system
+ load, and so on.
+ </li>
+ </ol>
+ </td>
+ </tr>
+
+ <tr id="tg2">
+ <td id="core2">
+ CR-1
+ </td>
+ <td>
+ From each app screen, press the device's Home key, then re-launch the app
+ from the All Apps screen.
+ </td>
+ </tr>
+
+ <tr id="CR-2">
+ <td>
+ CR-2
+ </td>
+ <td>
+ From each app screen, switch to another running app and then return to
+ the app under test using the Recents app switcher.
+ </td>
+ </tr>
+
+ <tr id="CR-3">
+ <td>
+ CR-3
+ </td>
+ <td>
+ From each app screen (and dialogs), press the Back button.
+ </td>
+ </tr>
+
+ <tr id="CR-5">
+ <td>
+ CR-5
+ </td>
+ <td>
+ From each app screen, rotate the device between landscape and portrait
+ orientation at least three times.
+ </td>
+ </tr>
+
+ <tr id="CR-6">
+ <td>
+ CR-6
+ </td>
+ <td>
+ Switch to another app to send the test app into the background. Go to
+ Settings and check whether the test app has any services running while in
+ the background. In Android 4.0 and higher, go to the Apps screen and find
+ the app in the "Running" tab. In earlier versions, use "Manage
+ Applications" to check for running services.
+ </td>
+ </tr>
+
+ <tr id="CR-7">
+ <td>
+ CR-7
+ </td>
+ <td>
+ Press the power button to put the device to sleep, then press the power
+ button again to awaken the screen.
+ </td>
+ </tr>
+
+ <tr id="CR-8">
+ <td>
+ CR-8
+ </td>
+ <td>
+ Set the device to lock when the power button is pressed. Press the power
+ button to put the device to sleep, then press the power button again to
+ awaken the screen, then unlock the device.
+ </td>
+ </tr>
+
+ <tr id="CR-9">
+ <!-- Hardware features -->
+
+ <td>
+ CR-9
+ </td>
+ <td>
+ For devices that have slide-out keyboards, slide the keyboard in and out
+ at least once. For devices that have keyboard docks, attach the device to
+ the keyboard dock.
+ </td>
+ </tr>
+
+ <tr id="CR-10">
+ <td>
+ CR-10
+ </td>
+ <td>
+ For devices that have an external display port, plug-in the external
+ display.
+ </td>
+ </tr>
+
+ <tr id="CR-11">
+ <td>
+ CR-11
+ </td>
+ <td>
+ Trigger and observe in the notications drawer all types of notifications
+ that the app can display. Expand notifications where applicable (Android
+ 4.1 and higher), and tap all actions offered.
+ </td>
+ </tr>
+
+ <tr id="CR-12">
+ <td>
+ CR-12
+ </td>
+ <td>
+ Examine the permissions requested by the app by going to Settings >
+ App Info.
+ </td>
+ </tr>
+
+ <tr id="tg3">
+ <td>
+ Install on SD Card
+ </td>
+ <td>
+ SD-1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ Repeat <em>Core Suite</em> with app installed to <a href=
+ "{@docRoot}guide/topics/data/install-location.html">device SD card</a>
+ (if supported by app).
+ </p>
+
+ <p style="margin-bottom:.25em;">
+ To move the app to SD card, you can use Settings > App Info >
+ Move to SD Card.
+ </p>
+ </td>
+ </tr>
+
+ <tr id="tg32">
+ <td>
+ Hardware acceleration
+ </td>
+ <td>
+ HA-1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ Repeat <em>Core Suite</em> with hardware acceleration enabled.
+ </p>
+
+ <p style="margin-bottom:.25em;">
+ To force-enable hardware acceleration (where supported by device), add
+ <code>hardware-accelerated="true"</code> to the
+ <code><application></code> in the app manifest and recompile.
+ </p>
+ </td>
+ </tr>
+
+ <tr id="tg33">
+ <td>
+ Performance Monitoring
+ </td>
+ <td>
+ PM-1
+ </td>
+ <td>
+ <p style="margin-bottom:.5em;">
+ Repeat <em>Core Suite</em> with StrictMode profiling enabled <a href=
+ "#strictmode">as described below</a>.
+ </p>
+
+ <p style="margin-bottom:.25em;">
+ Pay close attention to garbage collection and its impact on the user
+ experience.
+ </p>
+ </td>
+ </tr>
+
+ <tr id="gp">
+ <td rowspan="3">
+ Google Play
+ </td>
+ <td>
+ GP-1
+ </td>
+ <td>
+ Sign into the <a href="https://play.google.com/apps/publish/">Developer
+ Console</a> to review your developer profile, app description,
+ screenshots, feature graphic, maturity settings, and user feedback.
+ </td>
+ </tr>
+
+ <tr id="GP-2">
+ <td>
+ GP-2
+ </td>
+ <td>
+ Download your feature graphic and screenshots and scale them down to
+ match the display sizes on the devices and form factors you are
+ targeting.
+ </td>
+ </tr>
+
+ <tr id="GP-3">
+ <td>
+ GP-3
+ </td>
+ <td>
+ Review all graphical assets, media, text, code libraries, and other
+ content packaged in the app or expansion file download.
+ </td>
+ </tr>
+
+ <tr id="GP-4">
+ <td>
+ Payments
+ </td>
+ <td>
+ GP-4
+ </td>
+ <td>
+ Navigate to all screens of your app and enter all in-app purchase flows.
+ </td>
+ </tr>
+</table>
+
+<h3 id="strictmode">
+ Testing with StrictMode
+</h3>
+
+<p>
+ For performance testing, we recommend enabling {@link android.os.StrictMode}
+ in your app and using it to catch operations on the main thread and other
+ threads that could affect performance, network accesses, file reads/writes,
+ and so on.
+</p>
+
+<p>
+ You can set up a monitoring policy per thread using {@link
+ android.os.StrictMode.ThreadPolicy.Builder} and enable all supported
+ monitoring in the <code>ThreadPolicy</code> using {@link
+ android.os.StrictMode.ThreadPolicy.Builder#detectAll()}.
+</p>
+
+<p>
+ Make sure to enable <strong>visual notification</strong> of policy violations
+ for the <code>ThreadPolicy</code> using {@link
+ android.os.StrictMode.ThreadPolicy.Builder#penaltyFlashScreen()
+ penaltyFlashScreen()}.
+</p>
diff --git a/docs/html/distribute/essentials/quality/tablets.jd b/docs/html/distribute/essentials/quality/tablets.jd
new file mode 100644
index 0000000..7dfab48
--- /dev/null
+++ b/docs/html/distribute/essentials/quality/tablets.jd
@@ -0,0 +1,867 @@
+page.title=Tablet App Quality
+page.metaDescription=Tablets are a fast-growing part of the Android installed base that offers new opportunities for your apps.
+page.image=/distribute/images/tablet-guidelines-color.jpg
+Xnonavpage=true
+
+@jd:body
+<div id="qv-wrapper"><div id="qv">
+<h2>Checklist</h2>
+<ol>
+<li><a href="#core-app-quality">1. Test for Basic Tablet App Quality</a></li>
+<li><a href="#optimize-layouts">2. Optimize Layouts</a></li>
+<li><a href="#use-extra-space">3. Use Extra Screen Area</a></li>
+<li><a href="#use-tablet-icons">4. Use Assets Designed for Tablets</a></li>
+<li><a href="#adjust-font-sizes">5. Adjust Fonts and Touch Targets</a></li>
+<li><a href="#adjust-widgets">6. Adjust Homescreen Widgets</a></li>
+<li><a href="#offer-full-feature-set">7. Offer Full Feature Set</a></li>
+<li><a href="#android-versions">8. Target Android Versions Properly</a></li>
+<li><a href="#hardware-requirements">9. Declare Dependencies Properly</a></li>
+<li><a href="#support-screens">10. Declare Support for Tablet Screens</a></li>
+<li><a href="#google-play">11. Showcase Your Tablet UI</a></li>
+<li><a href="#google-play-best-practices">12. Follow Best Practices for Publishing in Google Play</a></li>
+
+</ol>
+<h2>Testing</h2>
+<ol>
+<li><a href="#test-environment">Setting Up a Test Environment</a></li>
+</ol>
+</div></div>
+
+<div class="todp-right-float" style="padding-right:0;margin-bottom:1em;">
+ <img src="{@docRoot}distribute/images/tablet-guidelines-color.jpg" style="width:480px;">
+</div>
+
+<p>
+ Tablets are a growing part of the Android installed base and offer new
+ opportunities for <a href="{@docRoot}distribute/stories/tablets.html">user
+ engagement and monetization</a>. The guidelines in this document will help
+ you meet the expectations of tablet users through compelling features and an
+ intuitive, well-designed UI.
+</p>
+
+<p>
+ Although the guidelines are numbered, you can approach them in any order. You
+ should address each guideline’s recommendations to the extent that they’re
+ appropriate for your app, but — in the interest of delivering the best
+ product to your customers — follow them to the greatest extent
+ possible.
+</p>
+
+<p>
+ Through the document you'll find links to resources that can
+ help you address each recommendation included.
+</p>
+
+<div class="headerLine"><h1 id="core-app-quality">1. Test for Basic Tablet App Quality</h1><hr></div>
+
+<p>The first step in delivering a great tablet app experience is making sure
+that it meets the <em>core app quality criteria</em> for all of the devices
+and form factors that the app is targeting. For complete information, see the <a
+href="{@docRoot}distribute/essentials/quality/core.html">Core App Quality Guidelines</a>.
+</p>
+
+<p>
+Before publishing, also ensure that your app passes the basic technical checks and launch criteria, such as:
+</p>
+
+<ul>
+ <li><a href="#android-versions">Targets appropriate Android versions</a></li>
+ <li><a href="#hardware-requirements">Specifies any hardware dependencies properly</a></li>
+ <li><a href="#support-screens">Declares support for appropriate screens</a></li>
+ <li><a href="#use-extra-space">Uses all of the available screen space</a></li>
+ <li><a href="#google-play">Screenshots are uploaded to Google Play</a></li>
+</ul>
+
+<p>If your app is already uploaded to the Google Play Developer Console, you
+ can see how it is doing against these checks
+ by visiting the <a href="#google-play-optimization-tips">Optimization
+ Tips page</a>.</p>
+
+
+<div class="headerLine clearfloat">
+<h1 id="optimize-layouts">2. Optimize Layouts for Larger Screens</h1><hr></div>
+
+<p>
+ Android makes it easy to develop an app that runs well on a wide range of
+ device screen sizes and form factors. This broad compatibility works in your
+ favor, since it helps you design a single app that you can distribute widely
+ to all of your targeted devices. However, to give your users the best
+ possible experience on each screen configuration — in particular on
+ tablets — you need to optimize your layouts and other UI components for
+ each targeted screen configuration. On tablets, optimizing your UI lets you
+ take full advantage of the additional screen available, such as to offer new
+ features, present new content, or enhance the experience in other ways to
+ deepen user engagement.
+</p>
+
+<p>
+ If you developed your app for handsets and now want to distribute it to
+ tablets, you can start by making minor adjustments to your layouts, fonts,
+ and spacing. In some cases — such as for 7-inch tablets or for a game
+ with large canvas — these adjustments may be all you need to make your
+ app look great. In other cases, such as for larger tablets, you can redesign
+ parts of your UI to replace "stretched UI" with an efficient multipane UI,
+ easier navigation, and additional content.
+</p>
+
+
+<div style="width:500px;margin:1.5em;margin-top:-16px;">
+<img src="{@docRoot}images/training/app-navigation-multiple-sizes-multipane-bad.png"
+style="padding:4px;margin-bottom:0em;">
+<p class="img-caption"><span
+style="font-weight:500;">Get rid of "stretched" UI</span>: On tablets, single-pane
+layouts lead to awkward whitespace and excessive line lengths. Use padding to
+reduce the width of UI elements and consider using multi-pane layouts.</p>
+</div>
+
+<p>Here are some suggestions:</p>
+
+
+<ul>
+ <li>Provide custom layouts as needed for <code>large</code> and
+ <code>xlarge</code> screens. You can also provide layouts that are loaded
+ based on the screen's <a href=
+ "{@docRoot}guide/practices/screens_support.html#NewQualifiers">shortest
+ dimension</a> or the <a href=
+ "{@docRoot}guide/practices/screens_support.html#NewQualifiers">minimum
+ available width and height</a>.
+ </li>
+
+ <li>At a minimum, customize dimensions such as font sizes, margins, spacing
+ for larger screens, to improve use of space and content legibility.
+ </li>
+
+ <li>Adjust positioning of UI controls so that they are easily accessible to
+ users when holding a tablet, such as toward the sides when in landscape
+ orientation.
+ </li>
+
+ <li>Padding of UI elements should normally be larger on tablets than on
+ handsets. A <a href="{@docRoot}design/style/metrics-grids.html#48dp-rhythm">
+ 48dp rhythm</a> (and a 16dp grid) is recommended.
+ </li>
+
+ <li>Adequately pad text content so that it is not aligned directly along
+ screen edges. Use a minimum <code>16dp</code> padding around content near
+ screen edges.
+ </li>
+</ul>
+
+<p>In particular, make sure that your layouts do not appear "stretched"
+across the screen:</p>
+
+<ul>
+<li>Lines of text should not be excessively long — optimize for a maximum
+100 characters per line, with best results between 50 and 75.</li>
+<li>ListViews and menus should not use the full screen width.</li>
+<li>Use padding to manage the widths of onscreen elements or switch to a
+multi-pane UI for tablets (see next section).</li>
+</ul>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/optimize"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="6"></div>
+
+
+<div class="headerLine clearfloat"><h1 id="use-extra-space">3. Take Advantage of Extra Screen Area</h1><hr></div>
+
+<div style="width:340px;float:right;margin:1.5em;margin-bottom:0;margin-top:0;">
+<img src="{@docRoot}images/training/app-navigation-multiple-sizes-multipane-good.png"
+style="padding:4px;margin-bottom:0em;">
+<p class="img-caption"><span
+style="font-weight:500;">Multi-pane layouts</span> result in a better visual
+balance on tablet screens, while offering more utility and legibility.</p>
+</div>
+
+<p>Tablet screens provide significantly more screen real estate to your app,
+especially when in landscape orientation. In particular, 10-inch tablets offer a
+greatly expanded area, but even 7-inch tablets give you more space for
+displaying content and engaging users. </p>
+
+<p>As you consider the UI of your app when running on tablets, make sure that it
+is taking full advantage of extra screen area available on tablets. Here are
+some suggestions:</p>
+
+<ul>
+<li>Look for opportunities to include additional content or use an alternative
+treatment of existing content.</li>
+<li>Use <a href="{@docRoot}design/patterns/multi-pane-layouts.html">multi-pane
+layouts</a> on tablet screens to combine single views into a compound view. This
+lets you use the additional screen area more efficiently and makes it easier for
+users to navigate your app. </li>
+<li>Plan how you want the panels of your compound views to reorganize when
+screen orientation changes.</li>
+
+<div style="width:490px;margin:1.5em auto 1.5em 0;">
+<div style="">
+<img src="{@docRoot}images/ui-ex-single-panes.png"
+style="width:490px;padding:4px;margin-bottom:0em;" align="middle">
+<img src="{@docRoot}images/ui-ex-multi-pane.png" style="width:490px;padding:4px;margin-bottom:0em;">
+<p class="image-caption" style="padding:.5em"><span
+style="font-weight:500;">Compound views</span> combine several single views from a
+handset UI <em>(above)</em> into a richer, more efficient UI for tablets
+<em>(below)</em>. </p>
+</div>
+</div>
+
+<li>While a single screen is implemented as an {@link android.app.Activity}
+subclass, consider implementing individual content panels as {@link
+android.app.Fragment} subclasses. This lets you
+maximize code reuse across different form factors and across screens that
+share content.</li>
+<li>Decide on which screen sizes you'll use a multi-pane UI, then provide the
+different layouts in the appropriate screen size buckets (such as
+<code>large</code>/<code>xlarge</code>) or minimum screen widths (such as
+<code>sw600dp</code>/<code>sw720</code>).</li>
+</ul>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/extrascreen"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3,6x3,6x3"
+ data-maxResults="6"></div>
+
+<div class="headerLine clearfloat"><h1 id="use-tablet-icons">4. Use Assets Designed for Tablet Screens</h1><hr></div>
+
+<div><img src="{@docRoot}design/media/devices_displays_density@2x.png"></div>
+
+<p>To ensure your app looks its best, provide icons and other bitmap
+assets for each density in the range commonly supported by tablets. Specifically, you should
+design your icons for the action bar, notifications, and launcher according to the
+<a href="{@docRoot}design/style/iconography.html">Iconography</a> guidelines and
+provide them in multiple densities, so they appear at the appropriate size on all screens
+without blurring or other scaling artifacts.</p>
+
+<p class="table-caption"><strong>Table 1</strong>. Raw asset sizes for icon types.<table>
+<tr>
+<th>Density</th>
+<th>Launcher</th>
+<th>Action Bar</th>
+<th>Small/Contextual</th>
+<th>Notification</th>
+</tr>
+<tr>
+<td><code>mdpi</code></td>
+<td>48x48 px</td>
+<td>32x32 px</td>
+<td>16x16 px</td>
+<td>24x24 px</td>
+</tr>
+<tr>
+<td><code>hdpi</code></td>
+<td>72x72 px</td>
+<td>48x48 px</td>
+<td>24x24 px</td>
+<td>36x36 px</td>
+</tr>
+<tr>
+<td><code>tvdpi</code></td>
+<td><em>(use hdpi)</em></td>
+<td><em>(use hdpi)</em></td>
+<td><em>(use hdpi)</em></td>
+<td><em>(use hdpi)</em></td>
+</tr>
+<tr>
+<td><code>xhdpi</code></td>
+<td>96x96 px</td>
+<td>64x64 px</td>
+<td>32x32 px</td>
+<td>48x48 px</td>
+</tr>
+<tr>
+<td><code>xxhdpi</code></td>
+<td>144x144 px</td>
+<td>96x96 px</td>
+<td>48x48 px</td>
+<td>72x72 px</td>
+</tr>
+
+</table>
+
+<p>
+ As a minimum, supply a version of each icon and bitmap asset that's optimized
+ for <strong>at least one</strong> the following common tablet screen
+ densities:
+</p>
+<ul>
+ <li><code>hdpi</code></li>
+ <li><code>xhdpi</code></li>
+ <li><code>xxhdpi</code></li>
+</ul>
+
+<p>Other tips:</p>
+
+<ul>
+<li>Use vector shapes when designing icons, so they scale without loss of either detail or edge crispness.</li>
+<li>Use density-specific <a
+href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">
+resource qualifiers</a> to ensure that the proper icons are loaded for each screen density.</li>
+<li>Tablets and other large screen devices often request a launcher icon that is one density
+size larger than the device's actual density, so you should provide your launcher
+icon at the highest density possible. For example, if a tablet has an {@code xhdpi} screen,
+it will request the {@code xxhdpi} version of the launcher icon.</li>
+</ul>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/assets"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
+
+<div class="headerLine clearfloat"><h1 id="adjust-font-sizes">5.
+Adjust Font Sizes and Touch Targets</h1><hr></div>
+
+<p>To make sure your app is easy to use on tablets, take some time to adjust the
+font sizes and touch targets in your tablet UI, for all of the screen
+configurations you are targeting. You can adjust font sizes through <a
+href="{@docRoot}guide/topics/ui/themes.html">styleable attributes</a> or <a
+href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">dimension
+resources</a>, and you can adjust touch targets through layouts and bitmap
+drawables, as discussed above. </p>
+
+<p>Here are some considerations:</p>
+<ul>
+<li>Text should not be excessively large or small on tablet screen sizes and
+densities. Make sure that labels are sized appropriately for the UI elements they
+correspond to, and ensure that there are no improper line breaks in labels,
+titles, and other elements.</li>
+<li>The recommended touch-target size for onscreen elements is 48dp (32dp
+minimum) — some adjustments may be needed in your tablet UI. Read <a
+href="{@docRoot}design/style/metrics-grids.html">Metrics and
+Grids
+</a> to learn about implementation strategies to help most of your users. To
+meet the accessibility needs of certain users, it may be appropriate to use
+larger touch targets. </li>
+<li>When possible, for smaller icons, expand the touchable area to more than
+48dp using {@link android.view.TouchDelegate}
+or just centering the icon within the transparent button.</li>
+</ul>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/fonts"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3,6x3,6x3,6x3"
+ data-maxResults="6"></div>
+
+<div class="headerLine clearfloat"><h1 id="adjust-widgets">6. Adjust Sizes of Home Screen Widgets</h1><hr></div>
+
+<p>If your app includes a home screen widget, here are a few points to consider
+to ensure a great user experience on tablet screens: </p>
+
+<ul>
+<li>Set the widget's default height and width appropriately
+for tablet screens, as well as the minimum and maximum resize height and width.
+</li>
+<li>The widget should be resizable to 420dp or more, to span 5 or more home
+screen rows (if this is a vertical or square widget) or columns (if this is a
+horizontal or square widget). </li>
+<li>Make sure that 9-patch images render correctly.</li>
+<li>Use default system margins.</li>
+<li>Set the app's <code>targetSdkVersion</code> to 14 or higher, if
+possible.</li>
+</ul>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/widgets"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="6"></div>
+
+
+<div class="headerLine clearfloat"><h1 id="offer-full-feature-set">7. Full Feature Set for Tablet Users</h1><hr></div>
+
+<div class="centered-full-image" style="width:600px;margin:1.5em"><img src="{@docRoot}images/gp-tablets-full-feature-set.png" alt="Tablet feature sets"></div>
+
+<p>Let your tablet users experience the best features of your app. Here are
+some recommendations:</p>
+
+<ul>
+ <li>Design your app to offer at least the same set of features on tablets as
+ it does on phones.
+ </li>
+
+ <li>In exceptional cases, your app might omit or replace certain features on
+ tablets if they are not supported by the hardware or use-case of most
+ tablets. For example:
+ <ul>
+ <li>If the handset uses telephony features but telephony is not available
+ on the current tablet, you can omit or replace the related functionality.
+ </li>
+
+ <li>Many tablets have a GPS sensor, but most users would not normally
+ carry their tablets while running. If your phone app provides
+ functionality to let the user record a GPS track of their runs while
+ carrying their phones, the app would not need to provide that
+ functionality on tablets because the use-case is not compelling.
+ </li>
+ </ul>
+ </li>
+
+ <li>If you will omit a feature or capability from your tablet UI, make sure
+ that it is not accessible to users or that it offers “graceful degradation”
+ to a replacement feature (also see the section below on hardware features).
+ </li>
+</ul>
+
+<div class="headerLine clearfloat"><h1 id="android-versions">8. Target Android Versions Properly</h1><hr></div>
+
+<p>
+ To ensure the broadest possible distribution to tablets, make sure that your
+ app properly targets the Android versions that support tablets. Initial
+ support for tablets was added in <a href=
+ "{@docRoot}about/versions/android-3.0.html">Android 3.0</a> (API level 11).
+ Unified UI framework support for tablets, phones, and other devices was
+ introduced in <a href="{@docRoot}about/versions/android-4.0.html">Android
+ 4.0</a>
+</p>
+
+<p>
+ You can set the app's range of targeted Android versions in the manifest
+ file, in the <a href=
+ "{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code><uses-sdk></code></a>
+ element. In most cases, you can target Android versions properly by setting
+ the element's <code>targetSdkVersion</code> attribute to the highest API
+ level available.
+</p>
+
+<p style="margin-bottom:.5em;">
+ At a minimum, check the <a href=
+ "{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code><uses-sdk></code></a>
+ element to make sure that:
+</p>
+
+<ol style="list-style-type:lower-alpha;margin-top:0em;">
+ <li>
+ <code>targetSdkVersion</code> is declared with value 11 or higher (14 or
+ higher is recommended), OR
+ </li>
+
+ <li>
+ <code>minSdkVersion</code> is declared with value 11 or higher.
+ </li>
+
+ <li>If a <code>maxSdkVersion</code> attribute is declared, it must have a
+ value of 11 or higher. Note that, in general, the use of
+ <code>maxSdkVersion</code> is <em>not recommended</em>.
+ </li>
+</ol>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/versions"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="6"></div>
+
+<div class="headerLine clearfloat"><h1 id="hardware-requirements">9. Declare Hardware Feature Dependencies Properly</h1><hr></div>
+
+<p>
+ Handsets and tablets typically offer slightly different hardware support for
+ sensors, camera, telephony, and other features. For example, many tablets are
+ available in a "Wi-Fi" configuration that does not include telephony support.
+</p>
+
+<p>
+ So that you can distribute a single APK broadly across your full customer
+ base of phones and tablets, make sure that your app doesn't declare
+ requirements for hardware features that aren't commonly available on tablets.
+ Instead, properly declare the hardware features as <em>not required</em> in the app
+ manifest, as described below.
+</p>
+
+<ul>
+<li>In your app manifest, locate any <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a>
+elements. In particular, look for hardware features that might not be
+available on some tablets, such as:
+
+<ul>
+<li><code>android.hardware.telephony</code></li>
+<li><code>android.hardware.camera</code> (refers to back camera), or</li>
+<li><code>android.hardware.camera.front</code></li>
+</ul></li>
+
+<li>Declare the <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a>
+elements as <em>not required</em> by including the <code>android:required=”false”</code>
+attribute.
+
+<p>
+ For example, here's the proper way to declare a dependency on
+ <code>android.hardware.telephony</code>, such that you can still
+ distribute the app broadly, even to devices that don't offer telephony:
+</p>
+
+<pre><uses-feature android:name="android.hardware.telephony" android:required="false" /></pre></li>
+
+<li>Similarly, check the manifest for <a href="{@docRoot}guide/topics/manifest/permission-element.html"><code><permission></code></a> elements that
+<a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#permissions">imply hardware
+feature requirements</a> that not be appropriate for tablets. If you find such
+permissions, make sure to explicitly declare a corresponding
+<code><uses-feature></code> element for the features and includes the
+<code>android:required=”false”</code> attribute.</li>
+</ul>
+
+
+<p>
+ After declaring hardware features as <em>not required</em>, make sure to test
+ your app on a variety of devices. The app should function normally when the
+ hardware features it uses are not available, and it should offer "graceful
+ degradation" and alternative functionality where appropriate.
+</p>
+
+<p>
+ For example, if an app normally uses GPS to set the location but GPS is not
+ supported on the device, the app could let the user set the location manually
+ instead. The app can check for device hardware capabilities at runtime and handle
+ as needed.
+</p>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/hardware"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
+
+<div class="headerLine clearfloat"><h1 id="support-screens">10. Declare Support for Tablet Screens</h1><hr></div>
+
+<p>To ensure that you can distribute your app to a broad range of tablets, your app should
+declare support for tablet screen sizes in its manifest file, as follows:</p>
+
+<ul>
+ <li>A
+ <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html"><code><supports-screens></code></a>
+ element, if declared, must not specify <code>android:largeScreens="false"</code>
+ or <code>android:xlargeScreens="false"</code>.</li>
+ <li>For apps targeting <code>minSdkVersion</code> value less than 13, a
+ <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html"><code><supports-screens></code></a>
+ element must be declared with both <code>android:largeScreens="true"</code> and
+ <code>android:xlargeScreens="true"</code>.</li>
+</ul>
+
+<p>If the app declares a
+<a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html"><code><compatible-screens></code></a>
+element in the manifest, the element should include attributes that specify
+<em>all of the size and density combinations for tablet screens</em> that the
+app supports. Note that, if possible, you should avoid using the
+<a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html"><code><compatible-screens></code></a>
+element in your app.</p>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/tabletscreens"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,6x3,6x3"
+ data-maxResults="6"></div>
+
+
+<div class="headerLine clearfloat"><h1 id="google-play">11. Showcase Your Tablet UI in Google Play</h1><hr></div>
+
+<p>
+ After you've done the work to create an rich, optimized UI for your tablet
+ app, make sure that you let your customers know about it! Here are some key
+ ways to promote your tablet app to users on Google Play.
+</p>
+
+<div><img class="border-img" src="{@docRoot}images/gp-tablet-quality-4.jpg"></div>
+
+
+<h4>
+ Upload screenshots of your tablet UI
+</h4>
+
+<p>
+ Tablet users want to know what your app is like on a tablet device, not on a
+ phone. If you developed a tablet app, make sure to upload screenshots
+ of your tablet UI to the Google Play Developer Console. Here are some guidelines:
+ </p>
+
+<ul style="margin-top:0;">
+ <li>Show the core functionality of your app, not a
+ startup or sign-in page. Wherever users will spend most of their time, that's
+ what you should show in your screenshots.
+ </li>
+
+ <li>Add screenshots taken on both 7-inch and 10-inch tablets.
+ </li>
+
+ <li>Add screenshots taken in both landscape and
+ portrait orientations, if possible.
+ </li>
+
+ <li>Use screen captures if possible. Avoid showing actual device hardware in your
+ screenshots.</li>
+
+ <li>The recommended resolution of your tablet screenshots is <strong>1280 x 720</strong>
+ or higher in each orientation.
+ </li>
+
+ <li>Upload as many as 8 screenshots of your tablet UI for 7-inch tablets
+ and an additional 8 for 10-inch tablets.
+ </li>
+</ul>
+
+<h4>
+ Update your app description and release notes
+</h4>
+
+<ul>
+ <li>In your app description, make sure to highlight that your app offers
+ tablet-optimized UI and great features for tablet users. Add some
+ detail about how your tablet UI works and why users will like it.
+ </li>
+
+ <li>Include information about tablet support in the app's release notes and
+ update information.
+ </li>
+</ul>
+
+<h4>
+ Update your promotional video
+</h4>
+
+<p>
+ Many users view an app's promotional video to get an idea of what the app is
+ like and whether they'll enjoy it. For tablet users, capitalize on this
+ interest by highlighting your app's tablet UI in your promotional video. Here
+ are some tips and guidelines:
+</p>
+
+<ul>
+ <li>Add one or more shots of your app running on a tablet. To engage with
+ tablet users most effectively, it's recommended that you promote your tablet
+ UI in approximately equal proportion to your phone UI.
+ </li>
+
+ <li>Show your tablet UI as early as possible in the video. Don't assume that
+ tablet users will wait patiently through a feature walkthrough on a phone UI.
+ Ideally, you should engage them immediately by showing the tablet UI within
+ the first 10 seconds, or at the same point that you introduce the phone UI.
+ </li>
+
+ <li>To make it clear that you are showing a tablet UI, include shots of your
+ app running on a hand-held tablet device.
+ </li>
+
+ <li>Highlight your app's tablet UI in the video's narrative or voiceover.
+ </li>
+</ul>
+
+<h4>
+ Feature your tablet UI in your promotional campaigns
+</h4>
+
+<p>
+ Make sure to let tablet users know about your tablet UI in your promotional
+ campaigns, web site, social posts, advertisements, and elsewhere. Here are
+ some suggestions:
+</p>
+
+<ul>
+ <li>Plan a marketing or advertising campaign that highlights the use of your
+ app on tablets.</li>
+
+ <li>Show your tablet app at its best in your promotional campaigns—use the <a href=
+ "{@docRoot}distribute/tools/promote/device-art.html">Device Art Generator</a> to
+ quickly generate a high-quality promotional image of your app running on a
+ 7-inch or 10-inch tablet, in the orientation of your choice, with or without
+ drop-shadow and screen glare. It's as simple as capture, drag, and drop.
+ </li>
+
+ <li>Include a Google Play badge in your online promotions to let users link
+ directly to your app's store listing. You can generate a badge in a variety
+ of languages using the <a href=
+ "{@docRoot}distribute/tools/promote/badges.html">Badge Generator</a>.
+ </li>
+</ul>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/showcase"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3,9x3,9x3"
+ data-maxResults="6"></div>
+
+<div class="headerLine clearfloat">
+ <h1 id="google-play-best-practices">
+ 12. Follow Best Practices for Publishing in Google Play
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Here are some best practices for delivering a successful tablet app on Google
+ Play.
+</p>
+
+<div>
+ <img class="border-img" src="{@docRoot}images/gp-tablet-quality-5.jpg" style=
+ "1px solid #ddd">
+</div>
+
+<h4 id="google-play-optimization-tips">
+ Check out your app's Optimization Tips
+</h4>
+
+<p>The Google Play Developer Console now offers an Optimization Tips page that
+lets you quickly check how your app is doing against basic guidelines for tablet app
+distribution and quality. To visit the page, sign into the Developer Console,
+load the app from All Applications, and click Optimization Tips in
+the left navigation.</p>
+
+<div class="sidebox-wrapper">
+<div class="sidebox">
+<h2>How to send feedback</h2>
+
+<p>Please use the link below to send
+feedback or request a manual review of your Optimization Tips.</p>
+
+<p>Make sure to read the relevant sections of the Tablet App Quality
+Guidelines prior to sending feedback.</p>
+
+<p><strong><a href="https://support.google.com/googleplay/android-developer/contact/tabletq"
+target="_googleplay" style="white-space:nowrap">Designed for Tablets Contact Form »</a></strong></p>
+</div>
+</div>
+
+<p>The Developer Console creates your app's Optimization Tips page
+by running a series of checks to verify basic quality
+criteria. If it finds any issues, it alerts you to them as "To Do"
+items in the Optimization Tips page.</p>
+
+<p>If you've developed a tablet experience for your app, make sure
+to visit the Optimization Tips page to see how your app is doing
+against the basic checks. If there are any issues listed, we
+recommend addressing them in your app and uploading a new binary for
+distribution, if needed. </p>
+
+<p>If the Optimization Tips page lists "To Do" issues that you feel don't
+apply to your app or affect its quality on tablets, please notify us
+using the <a href="https://support.google.com/googleplay/android-developer/contact/tabletq"
+target="_googleplay" style="white-space:nowrap">Designed for Tablets Contact Form »</a>. We
+will review your app and update your Optimization Tips page as
+appropriate.</p>
+
+
+<h4>Confirm the app's filtering</h4>
+
+<p>
+ After you've uploaded the app to the <a href=
+ "https://play.google.com/apps/publish/">Developer Console</a>, check the
+ APK's Supported Devices list to make sure that the app is not filtered from
+ tablet devices that you want to target.
+</p>
+
+<h4>Distribute as a single APK</h4>
+
+<p>
+ It's recommended that you publish your app as a single APK for all screen
+ sizes (phones and tablets), with a single Google Play listing. This approach
+ has several important advantages.
+</p>
+
+<ul style="margin-top:.25em;">
+ <li>Easier for users to find your app from search, browsing, or promotions
+ </li>
+
+ <li>Easier for users to restore your app automatically if they get a new
+ device.
+ </li>
+
+ <li>Your ratings and download stats are consolidated across all devices.
+ </li>
+
+ <li>Publishing a tablet app in a second listing can dilute ratings for your
+ brand.
+ </li>
+</ul>
+
+<p>
+ If necessary, you can alternatively choose to deliver your app using <a href=
+ "{@docRoot}google/play/publishing/multiple-apks.html">Multiple APK Support</a>,
+ although in most cases using a single APK to reach all devices is strongly
+ recommended.
+</p>
+
+<h3 class="clearfloat">Related resources</h3>
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines/googleplay"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
+
+
+<div class="headerLine clearfloat">
+ <h1 id="test-environment">
+ Setting Up a Test Environment for Tablets
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Assess the quality of your app on tablets — both for core app quality and
+ tablet app quality — with a suitable hardware or emulator environment
+ for testing.
+</p>
+
+<p>
+ Compared to the <a href=
+ "{@docRoot}distribute/essentials/quality/core.html#test-environment">recommended
+ test environment</a> for testing against the core app quality criteria,
+ include mid-size tablets and tablets with more or fewer hardware/software
+ features.
+</p>
+
+<p class="table-caption"><strong>Table 1</strong>. A typical tablet test environment might
+include one or two devices from each row in the table below, with one of the
+listed platform versions, screen configurations, and hardware feature configurations.</p>
+
+<table>
+<tr>
+<th>Type</th>
+<th>Size</th>
+<th>Density</th>
+<th>Version</th>
+<th>AVD Skin</th>
+</tr>
+
+<tr>
+<td>7-inch tablet</td>
+<td><span style="white-space:nowrap"><code>large</code> or</span><br /><code>-sw600</code></td>
+<td><code>hdpi</code>,<br /><code>tvdpi</code></td>
+<td>Android 4.0+ (API level 14 and higher)</td>
+<td>WXGA800-7in</td>
+</tr>
+<tr>
+<td><span style="white-space:nowrap">10-inch</span> tablet</td>
+<td><span style="white-space:nowrap"><code>xlarge</code> or</span><br /><code>-sw800</code></td>
+<td><code>mdpi</code>,<br /><code>hdpi</code>,<br /><code>xhdpi</code></td>
+<td>Android 3.2+ (API level 13 and higher)</td>
+<td>WXGA800</td>
+</tr>
+</table>
+
+<div class="headerLine clearfloat"><h1 id="related-resources">Related Resources</h1><hr></div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/essentials/tabletguidelines"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/about.jd b/docs/html/distribute/googleplay/about.jd
new file mode 100644
index 0000000..cf0c6d2
--- /dev/null
+++ b/docs/html/distribute/googleplay/about.jd
@@ -0,0 +1,369 @@
+page.title=The Google Play Opportunity
+meta.tags="visibility, growth, distributing"
+page.tags="play, apps, distributing, publishing"
+page.metaDescription=Billons of downloads a month and growing. Get your apps in front of users at Google's scale.
+page.image=/distribute/images/about-play.jpg
+
+@jd:body
+
+ <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>
+ </ol>
+ </div>
+</div>
+
+<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 130 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>
+
+<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— Google Play pushes apps to
+ the user's devices instantly, over the air.
+</p>
+
+<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">
+ <h1 id="ratings-reviews">
+ User Ratings and Reviews
+ </h1>
+
+ <hr>
+</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">
+ <h1 id="category-browsing">
+ Category Browsing
+ </h1>
+
+ <hr>
+</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">
+ <h1 id="search">
+ Search
+ </h1>
+
+ <hr>
+</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">
+ <h1 id="top-charts-and-lists">
+ Top Charts and Lists
+ </h1>
+
+ <hr>
+</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">
+ <h1 id="featured-staff-picks">
+ Featured, Staff Picks, Collections, and Badges
+ </h1>
+
+ <hr>
+</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">
+ <p>
+ Featured
+ </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 —
+ 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">
+ <h1 id="product-detail-pages">
+ Store Listing Pages
+ </h1>
+
+ <hr>
+</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>
+
+<div class="headerLine clearfloat">
+<h1>Related Resources</h1><hr>
+</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>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/about/distribution.jd b/docs/html/distribute/googleplay/about/distribution.jd
deleted file mode 100644
index 8020110..0000000
--- a/docs/html/distribute/googleplay/about/distribution.jd
+++ /dev/null
@@ -1,167 +0,0 @@
-page.title=Distribution Control
-page.metaDescription=Reach the users you want, whenever you want.
-
-@jd:body
-
-<p>Deliver your apps to the users you want, on the devices you want, on <em>your</em> schedule. </p>
-
-<h2 id="instant">Instant publishing, instant updates</h2>
-
-<p>On Google Play, you can publish your products to customers instantly. Just
-upload and configure your product in the <span style="font-weight:500;">Google Play Developer Console</span>
-and press the Publish button—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. You can
-change prices, configuration, and distribution options at any time through the
-Google Play Developer Console, without needing to update your app
-binary.</p>
-
-<p>Later, as you add features or address code issues, you can publish an updated
-binary at any time. Google Play makes the new version available almost immediately and
-notifies existing customers that an update is ready for download. To streamline
-the rollout across your customer base, Google Play also lets users accept
-automatic updates of your app, so that your updates are delivered and installed
-as soon as you publish them.</p>
-
-
-<h2 id="targeting">Reaching the customers you want</h2>
-
-<div class="figure-right" style="width:400px;">
-<img src="{@docRoot}images/gp-dc-countries.png" class="frame">
-</div>
-
-<p>Google Play does more than connect your app with users—it helps you
-reach the broadest possible distribution across the Android ecosystem, while
-making sure that your app is only available to the audience that you want to
-reach.</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:400px;">
-<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/googleplay/publish/preparing.html#localize">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>
-
-<h2 id="stats">Statistics for analyzing installs and ratings</h2>
-
-<p>Once you’ve published your app, Google Play makes it easy to see how it’s
-doing. The Google Play Developer Console gives you access to a variety
-of anonymized statistics and custom charts that show you the app's installation
-performance and ratings.</p>
-
-<p>You can view data and charts for active, daily, and total installs
-per unique devices or users, as well as upgrades and uninstalls.
-You can also view the app's daily average user rating and its cumulative
-user rating. To help you analyze the data, you can view install
-and ratings statistics across a variety of different dimensions such as Android
-version, device, country, app version, and carrier.</p>
-
-<div class="figure-left">
- <img src="{@docRoot}images/gp-dc-stats-mini.png" class="frame">
-</div>
-<p>You can see your app statistics on timeline charts, for
-all metrics and dimensions. At a glance, the charts highlight your app’s
-installation and ratings peaks and longer-term trends, which you can correlate
-to promotions, app improvements, or other factors. You can even focus in on
-data inside a dimension by highlighting specific data points (such as
-individual platform versions or languages) on the timeline.</p>
-
-<p>So that you can “take your data with you”, you can download all of your
-installation data as a CSV file for viewing in the business program of your
-choice.</p>
-
-
-<h2 id="advanced">Advanced delivery options</h2>
-
-<p>Google Play offers convenient options for managing how your apps are
-delivered to users.</p>
-
-<h3 id="abc">Alpha and beta testing, staged rollouts</h3>
-
-<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. You can start with a small
-group of alpha testers, then move to a larger group of beta testers. Once users
-are added, they access your app's store listing and install the app. User
-feedback from alpha and beta testers goes directly to you and is not posted as
-public reviews. </p>
-
-<p>To help you ensure quality and protect your app ratings, you can choose a
-staged rollout when launching an app or an update. With staged rollout, you
-distribute the production version of your app to a percentage of users. You can
-adjust the percentage as you go, starting small and increasing until your app is
-available to all users.</p>
-
-<h3 id="multiple-apk">Multiple APK support</h3>
-
-<p>In most cases, it’s easy to create an app that supports all of your targeted
-screen sizes and platform versions from a single APK. Distributing a single APK
-to all of your users is a highly recommended approach, because it’s the easiest
-way to manage and maintain the app. If you need to deliver a different APK to
-devices, Google Play provides a way to do that. </p>
-
-<p>An option called Multiple APK support lets you create multiple APK 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
-upload all of the APKs to Google Play under a single product listing and Google
-Play selects the best APK to deliver to users, based on the characteristics of
-their devices. </p>
-
-<p>The APK Expansion Files option lets you upload up to two secondary downloads
-for each published APK, including multiple APKs. Each of the two expansion files
-can be up to 2GB each and can contain any type of code or assets. When you
-upload the expansion files, Google Play hosts them for free and handles the
-download of the files as part of the normal APK installation.</p>
-
-<h2 id="licensing">Protecting your app</h2>
-
-<p>Google Play provides two key features to help you protect your application
-against piracy — Google Play Licensing and app encryption.</p>
-
-<p> Google Play Licensing is a network-based service that you implement in your
-app. The service lets your app query a trusted licensing server at runtime, to
-determine whether the app is licensed to the current device user. You can use
-the licensing service to protect any app, even apps that you distribute for
-free. For an overview of the service, see <a
-href="{@docRoot}google/play/licensing/index.html">Application
-Licensing</a>.</p>
-
-<p>Additionally, Google Play offers app encryption to help protect your priced
-apps. When delivering your priced apps to devices running Android 4.1 or higher,
-Google encrypts the app binary so that it can be run only by the user who
-downloaded it, on the device to which it was originally downloaded. Your priced
-apps benefit from app encryption automatically — there's no extra
-development work or configuration needed.</p>
diff --git a/docs/html/distribute/googleplay/about/monetizing.jd b/docs/html/distribute/googleplay/about/monetizing.jd
deleted file mode 100644
index 9a5c6d7..0000000
--- a/docs/html/distribute/googleplay/about/monetizing.jd
+++ /dev/null
@@ -1,162 +0,0 @@
-page.title=Flexible Monetizing and Business Tools
-page.metaDescription=
-
-@jd:body
-
-<div style="float:right;margin-left:18px;padding:1.5em;">
-<img src="{@docRoot}images/gp-details-ww.png" style="width:180px">
-<img src="{@docRoot}images/gp-details-ww-purchase.png" style="width:180px">
-</div>
-
-<p>Sell your app in more than 130 countries. Flexible monetization options with
-in-app purchase, subscriptions, and more. </p>
-
-<h2>Streamlined purchase flow for users</h2>
-
-<p>When users find your app, they can purchase it instantly with a streamlined,
-consistent purchasing process and convenient payment methods.</p>
-
-<h3>Instant purchase from device or web</h3>
-
-<p>Google Play makes it fast and easy for your customers to buy your products,
-whether from a phone, a tablet, or a desktop computer. When users find an app or
-game that they want to buy, they can purchase it in as few as two steps—one
-to initiate the purchase and another to accept purchase details and permissions
-and complete the transaction.</p>
-
-<p>Google Play's convenient purchase experience is the same familiar process for
-all products everywhere across Google Play—apps, games, in-app products and
-subscriptions, and other digital content.</p>
-
-<h3 id="cloud-connected-purchase">Cloud-connected</h3>
-
-<p>Purchasing is even more convenient on Google Play because it’s
-cloud-connected. Users can find and purchase your products from anywhere—from
-their Android phones or using any web browser on any host computer. </p>
-
-<p>When users find an app or game they want to buy, they purchase it and download
-it instantly to their devices over-the-air. Users who sign in to the Google Play web site can also buy apps and games
-and push them instantly to their phones, tablets, or other devices. Google Play
-manages the application download.</p>
-
-<h3 id="payment-methods">Convenient payment options</h3>
-
-<p>Users can purchase your products on Google Play using several convenient
-payment methods—credit cards, Direct Carrier Billing, gift cards, and Google Play balance.</p>
-
-<p><span style="font-weight:500">Credit card</span> is the most common method of payment. Users can pay using any credit card
-that they’ve registered in Google Play. To make it easy for users to get started,
-registration is offered as a part of initial device setup process.</p>
-
-<div class="sidebox-wrapper" style="float:right;">
-<div class="sidebox">
-<h2>Payment methods on Google Play</h2>
-<ul>
-<li>Credit card</li>
-<li>Direct Carrier Billing</li>
-<li>Gift card</li>
-<li>Google Play balance (stored value)</li>
-</ul>
-</div>
-</div>
-
-<p>Subscribers on many popular carrier networks worldwide can charge purchases
-to their monthly mobile phone bills through <span style="font-weight:500">Direct
-Carrier Billing</span>. This form of payment is convenient and simple and is
-extremely popular in regions where credit cards are less common. More than 75
-million users in key markets around the world can purchase
-your products through Direct Carrier Billing. Many more will get the option in
-the months ahead.</p>
-
-<p><span style="font-weight:500">Google Play balance</span> is a stored account
-balance in Google Play. Users can increase their balance through promotions and
-offers in the store, and they can use their balanace to make purchases of apps,
-games, or other content.
-
-<p>The payment methods available to users worldwide may vary, based on
-location, carrier network, and other factors.</p>
-
-<div style="float:left;margin-right:2em;margin-top:3em;margin-bottom:1em;width:220px;">
-<img src="{@docRoot}images/gp-subs.png" style="width:220px">
-</div>
-
-<h2 id="billing-models" style="margin-top:1.5em;">Choice of billing models</h2>
-
-<p>Google Play gives you a choice of billing models to let you monetize your
-products. </p>
-
-<p>You can offer apps to all users for free, or
-you can set an initial price for the app, paid before download. You can also
-sell one-time purchases and auto-renewing subscriptions from inside the app, and
-you can take advantage of AdMob integration to monetize your app through
-targeted advertising.</p>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>Billing models on Google Play</h2>
-<ul>
-<li>Free (no charge to download)</li>
-<li>Priced (user charged before download)</li>
-<li>In-app products and subscriptions</li>
-</ul>
-</div>
-</div>
-
-<p>You can combine these billing models in different ways, based on your business
-needs or market conditions. </p>
-
-<p>For example, you can use a freemium or ad-supported model by distributing
-your app for free and selling in-app products or advertising. Alternatively you
-could set a nominal price for your app at download and sell value add-ons,
-gameplay levels, and upgrades as in-app products. The only restriction is that
-free apps must remain free (to download) for the life of the app.</p>
-
-<p>For details about in-app products or subscriptions,
-see <a href="{@docRoot}google/play/billing/index.html">Google Play In-app Billing</a>.</p>
-
-<h2 id="buyer-currency" style="margin-top:1.5em;">Flexible pricing in the currencies of your customers</h2>
-
-<div class="figure-right" style="width:250px;">
-<img src="{@docRoot}images/gp-buyer-currency.png" class="frame">
-</div>
-
-<p>Google Play gives you complete control over how you price your products. You
-can set prices in more than 130 countries, for millions of
-users around the world. When users browse your app’s product page or initiate a
-purchase, Google Play shows them the price they will be charged <em>in
-their local currency</em>.</p>
-
-<p>You can set and adjust your prices at any time, in any available currency.
-Your prices in available currencies are independent, so you can adjust one
-price without affecting others. This gives you the ability to run
-short-term promotions and discounts in specific countries and more easily
-manage shifts in exchange rates.</p>
-
-<p>You can set and manage prices for your apps and in-app products from the
-Google Play Developer Console.</p>
-
-<h2 id="payouts">Monthly payouts in your local currency</h2>
-
-<p>To sell products in Google Play, all you have to do is register for a Google
-Wallet merchant account and link it to your Google Play Android Developer
-Console account (see <a
-href="{@docRoot}distribute/googleplay/publish/register.html">Get Started with
-Publishing</a> for details). Once you’ve set up your account and published your
-apps, Google Play makes monthly payouts of sales proceeds to your merchant
-account, in your local currency.</p>
-
-<h2 id="reporting">Detailed financial reporting</h2>
-
-<p>When you sell priced apps or in-app products on Google Play, you get a
-variety of financial reports to help you track and project sales, optimize your
-marketing campaigns, and support your customers.</p>
-
-<p>To help you keep up-to-date with the current activity, you can download daily
-reports summarizing recent purchases of your products. The reports include
-estimated sales amounts and include a variety of other data for each
-transaction.</p>
-
-<p>At the close of the month, you can download a complete sales report that
-gives you the final details of all transactions that closed in the month,
-including the payout amounts and other data. Additional financial reports are
-available in your Google Wallet merchant account.</p>
diff --git a/docs/html/distribute/googleplay/about/visibility.jd b/docs/html/distribute/googleplay/about/visibility.jd
deleted file mode 100644
index 18f60e9..0000000
--- a/docs/html/distribute/googleplay/about/visibility.jd
+++ /dev/null
@@ -1,246 +0,0 @@
-page.title=Visibility for Your Apps
-page.metaDescription=
-
-@jd:body
-
-<div style="float:right;margin:0px 0px 24px 0px;">
- <img src="{@docRoot}images/gp-tab.png" style="width:420px" alt="" />
-</div>
-
-<p>A billion downloads a month and growing. Get your apps in front of millions
-of users at Google's scale. </p>
-
-
-<h2 id="reach">Worldwide reach, rapid growth</h2>
-
-<p>Google Play is the premier store for distributing Android apps. It’s
-preinstalled on more than 400 million devices worldwide, a number growing by
-more than a million every day. Android users have downloaded
-more than <strong style="text-wrap:none;">25 billion apps</strong> from Google
-Play, growing at a rate of more than 1.5 billion per month.</p>
-
-<p>When you publish on Google Play, you put your apps in front of Android's huge
-base of active customers, in more than 130 countries and territories across the
-world. </p>
-
-<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— Google Play pushes apps to the
-user's devices instantly, over the air. No cable or sync is ever needed.</p>
-
-<div style="float:left;margin:0px 20px 0px 0px;width:374px;">
-<div style="width:378px;padding:2px;">
-<img src="{@docRoot}images/gp-growth-downloads.png" style="width:600px;margin-bottom:0em;">
-</div>
-<p class="image-caption" style="padding:.5em"><span
-style="font-weight:500;">Growth in app consumption</span>: Users download more than
-1.5 billion apps from Google Play each month.</p>
-</div>
-
-<div>
-<p>Google Play is also a top destination for visitors from the web. Anyone
-with a browser can explore everything that Google Play has to offer from its <a
-href="http://play.google.com/store">web site</a>. Android users can even buy and
-install the apps they want and Google Play pushes them automatically to their
-devices over the air. </p>
-
-<p>The accessiblility and convenience of the Google Play web
-site give you new ways to drive traffic to your products from online ads, web
-search, cross-linking, and more.</p>
-</div>
-
- <div style="clear:both;">
-<h2>Built for app discovery</h2>
-
-<p>Google Play is designed to connect users with great apps and games. It
-provides key channels to help your app get noticed and gain traction in the
-marketplace.</p>
-
-<h3 id="ratings">User ratings and reviews</h3>
-
-<p>When you develop a great app, Android users show their appreciation through
-ratings and reviews. They rate your app (out of 5 stars) after downloading it
-and can post a short description of their experience. When other users are
-considering your app, they look at the ratings and reviews as key benchmarks of
-the app’s quality. </p>
-
- </div>
-
-<p>Your app’s rating is one of the most important factors influencing its
-ranking in the various lists and search results in Google Play. It's also one of
-the key signals that the editorial staff looks for, when curating apps and games
-for promotion in the store.</p>
-
-<div style="border:1px solid #DDD;padding:1px;margin-left:110px;width:504px;">
-<img src="{@docRoot}images/gp-rating-web.png" style="width:500px;padding:0;margin:0;">
-</div>
-
-<h3 id="category" stdle="padding-top:2em;">Category browsing</h3>
-
-<p>When you publish an app in Google Play, you pick the category in which 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. Many popular categories also start with a collection
-of featured apps selected by the Google Play editorial staff.</p>
-
-<div style="clear:both;margin-top:2em;margin-left:10%;width:560px;">
-<div style="clear:both;margin-top:2em;">
-<img src="{@docRoot}images/gpp-cat-feature280-puzzle.png" style="width:180px">
-<img src="{@docRoot}images/gpp-cat-feature280-photo.png" style="width:180px">
-<img src="{@docRoot}images/gpp-cat-feature280-sports.png" style="width:180px">
-</div>
-<p class="image-caption"><span style="font-weight:500;">Featuring in
-categories</span>: Most app and game categories include a featured list curated
-by the editorial team.</p>
-</div>
-
-<h3 id="search">Search</h3>
-
-<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 style="float:left;margin:12px 24px 0px 0px;">
-<img src="{@docRoot}images/gp-top-new-paid.png" style="width:250px">
-</div>
-
-<h3 id="top-charts" style="padding-top:1em">Top charts and lists</h3>
-
-<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 are generated
-several times each day based on recent download activity, keeping them fresh and
-allowing new apps to move upward in the charts. 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.</p>
-
-<p>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>
-
-<div>
-<table style="width:440px">
-<tr>
-<td style="width:100px">Top Free</td><td>Free apps and games</td></tr>
-<td style="width:140px">Top Paid</td><td>Priced apps and games</td></tr>
-<td>Top New Free</td><td>Less than 30 days old</td></tr>
-<td>Top New Paid</td><td>Less than 30 days old</td></tr>
-<td>Top Grossing</td><td>Gross proceeds, free or priced</td></tr>
-<td>Best Selling</td><td>Popular priced games</td></tr>
-<td>Trending</td><td>New arrivals growing quickly in installs</td>
-</tr>
-</table>
-</div>
-
-<div style="clear:both">
-<h4 id="featured" style="padding-top:2.5em;">Featured, Staff Picks, Collections,
-and Badges</h4>
-
-
-<div style="float:right;margin-left:18px;">
-<img src="{@docRoot}images/gp-apps-home.png" style="width:180px">
-<img src="{@docRoot}images/gp-games-home.png" style="width:180px">
-</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. </p>
-
-<p>When the team finds great apps and games, it uses the <em>Featured</em>,
-<em>Staff Picks</em>, and other collections to promote them to users.</p>
-
-<p>You can't nominate your app for featuring, but the team is always
-on the lookout for great apps through a number of signals and indicators.
-If you build an app that users love and that looks great on Android devices,
-the editorial team will notice.</p>
-</div>
-
-<h4>Featured and Staff Picks</h4>
-
-<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>
-
-The <em>Featured</em> collections highlight the latest and greatest app and game
-titles available for Android. Category featuring highlights the best and most
-popular apps in the top categories.
-
-<em>Staff Picks</em> collects all recently featured apps and games on Google
-Play. To better reach tablet users, there’s a special <em>Staff Picks</em>
-collection that highlights the best apps for Android tablets.</p>
-
-<div style="float:left;margin-right:18px;">
-<img src="{@docRoot}images/gp-collectibles.png" stydle="width:180px">
-
-</div>
-
-<h4>App collections</h4>
-
-<p>From time to time the editorial staff puts together a collection of apps and
-games based on a theme or seasonal event. The collections are popular with
-customers because they are timely and relevant, and they provide a new way to
-showcase great Android apps to users.</p>
-
-<p>The editorial staff chooses apps for collection promotions in a similar way
-as for featuring—high-quality apps that show the best of Android on phones
-and tablets. For collections the staff also looks for apps that can make an
-interesting or unique contribution to the collection as a whole. </p>
-
-<h4><img style="margin-right:.25em;margin-bottom:.5em;"
-src="{@docRoot}images/editorschoice_ann.png"> EDITORS' CHOICE</h4>
-
-<p><em>Editors’ Choice</em> is a curated collection of apps that highlights some
-of the very best apps available on Android. These apps are chosen for high
-quality and great UI, 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>
-
-<h4><img style="margin-right:.25em;margin-bottom:.5em;"
-src="{@docRoot}images/topdev_ann.png"> TOP DEVELOPER</h4>
-
-<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 selects developers 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. For a developer, the badge means long-term recognition
-of all of your apps. For users, the badge signifies an additional level of trust
-and confidence in your products.</p>
-
-<h3 id="details">Rich, colorful product pages</h3>
-
-<p>In Google Play, your app’s storefront is its <em>product details 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>Your product details page is the one page 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
-product details page.</p>
-
-<div style="float:right;margin-left:10px;">
-<img src="{@docRoot}images/gp-details-pages-magicpiano.png" style="width:500px">
-</div>
-
-<p>You can manage your product details page through the <span
-style="font-weight:500">Google Play Android Develeper Console</span>, from any
-web browser. Just sign in, 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, and makes sure your product details page looks great
-on phones, tablets, or 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/googleplay/promote/linking.html">Linking
-to Your Products</a> to find out how. </p>
-
-<p>To learn more about how to create your product details page, see
-<a href="{@docRoot}distribute/googleplay/publish/index.html">Publishing on Google Play</a>.</p>
diff --git a/docs/html/distribute/googleplay/developer-console.jd b/docs/html/distribute/googleplay/developer-console.jd
new file mode 100644
index 0000000..6263431
--- /dev/null
+++ b/docs/html/distribute/googleplay/developer-console.jd
@@ -0,0 +1,600 @@
+page.title=Developer Console
+page.metaDescription=Learn about the Developer Console, your home for app publishing on Google Play.
+page.image=/distribute/images/developer-console.jpg
+Xnonavpage=true
+
+@jd:body
+
+ <div id="qv-wrapper">
+ <div id="qv">
+ <h2>Publishing 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>
+ </ol>
+ </div>
+</div>
+
+<p>
+ 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;">
+<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
+ Developer Console, from any web browser.
+</p>
+
+<p>
+ Once you've <a href=
+ "{@docRoot}distribute/googleplay/start.html">registered</a> and received
+ verification by email, you can sign in to your Google Play Developer Console.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="allapps">
+ All Applications
+ </h1>
+
+ <hr>
+</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 style="padding:1em 0em 0em 0em;">
+ <img src="{@docRoot}images/gp-dc-home.png" class="border-img">
+</div>
+
+<div class="headerLine clearfloat" style="margin-top:-6px">
+ <h1 id="account-details">
+ Your Account Details
+ </h1>
+
+ <hr>
+</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>
+
+<div>
+ <img src="{@docRoot}images/gp-dc-profile.png" class="frame">
+</div>
+
+<p>
+ Your developer profile contains:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Developer name — displayed on your store listing page and elsewhere
+ on Google Play.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Contact information — used by Google only, it isn't seen by your
+ customers.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Web site URL — 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 clearfloat">
+ <h1 id="merchant-account">
+ Linking Your Merchant Account
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ If you want to sell apps or in-app products, link your Google Wallet 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 clearfloat">
+ <h1 id="multiple-user-accounts">
+ Multiple User Accounts
+ </h1>
+
+ <hr>
+</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 clearfloat">
+ <h1 id="store-listing-details">
+ Store Listing Details
+ </h1>
+
+ <hr>
+</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 clearfloat">
+ <h1 id="upload-instantly-publish">
+ Upload and Instantly Publish
+ </h1>
+
+ <hr>
+</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—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 clearfloat">
+ <h1 id="alpha-beta">
+ Alpha and Beta Testing
+ </h1>
+
+ <hr>
+</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 clearfloat">
+ <h1 id="staged-rollouts">
+ Staged Rollouts
+ </h1>
+
+ <hr>
+</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 clearfloat">
+ <h1 id="multiple-apk">
+ Multiple APK Support
+ </h1>
+
+ <hr>
+</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 clearfloat">
+ <h1 id="selling-pricing-your-products">
+ Selling and Pricing Your Products
+ </h1>
+
+ <hr>
+</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&answer=138294&topic=2365624&ctx=topic">
+ Supported locations for distributing applications</a> for a list of
+ countries where you can distribute or sell your apps.
+ </p>
+ </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>
+
+<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.
+</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>
+
+<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 — 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>
+
+<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>
+
+<div class="headerLine clearfloat">
+ <h1 id="in-app-products">
+ In-app Products
+ </h1>
+
+ <hr>
+</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 clearfloat">
+ <h1 id="distribution-controls">
+ Distribution Controls
+ </h1>
+
+ <hr>
+</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 clearfloat">
+ <h1 id="reviews-reports">
+ User Reviews and Crash Reports
+ </h1>
+
+ <hr>
+</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>
+</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>
+
+<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="headerLine clearfloat">
+ <h1 id="app-stats">
+ App Statistics
+ </h1>
+
+ <hr>
+</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>
+
+<p>
+ You get detailed statistics on the install performance of your app.
+</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>
+
+<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.
+</p>
+
+<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.
+</p>
+
+<div class="dynamic-grid">
+<div class="headerLine clearfloat">
+<h1 id="related-resources">Related Resources</h1><hr/>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/googleplay/developerconsole"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
+ </div>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/edu/about.jd b/docs/html/distribute/googleplay/edu/about.jd
index 20a0d4d..3944909 100644
--- a/docs/html/distribute/googleplay/edu/about.jd
+++ b/docs/html/distribute/googleplay/edu/about.jd
@@ -1,103 +1,131 @@
-page.title=About Google Play for Education
-page.metaDescription=How Google Play for Education helps you reach a new audience of educators.
-excludeFromSuggestions=true
+page.title=Google Play for Education
+page.image=/distribute/images/about-play-education.jpg
+page.metaDescription=Distribute your educational app directly to educators and schools.
+meta.tags="gpfe, googleplay, distribution, edu"
+page.tags="education"
+Xnonavpage=true
+
@jd:body
- <div style="position:absolute;margin-left: 636px;
- margin-top:-76px;color:#777;">If you're interested<br>
- <a href="{@docRoot}distribute/googleplay/edu/contact.html"
- class="go-link"
- style="display: block;text-align: right;">SIGN UP</a></div>
+<p>
+ Google Play for Education is an extension of Google Play designed for
+ schools. Here educators can discover apps approved by teachers for teachers,
+ as well as educational videos and a collection of classic books for their
+ classroom.
+</p>
- <div style="float:right;margin:0px 0px 24px 44px;">
- <img src="{@docRoot}images/gp-edu-apps-n7.jpg" style="width:420px" alt="" />
-</div>
+<p>
+ Teachers can search for approved apps by grade, subject and standard,
+ including Common Core State Standards. They can bulk purchase and pay using a
+ purchase order, then instant distribution let educators bring your apps
+ directly to classrooms and schools.
+</p>
-<p>Introducing Google Play for Education, the online destination where schools
-can find the right tablet content and tools for their students and teachers.</p>
-<p>With easy bulk ordering for groups, schools can purchase and
-instantly distribute your apps, and videos right to their students’
-devices.</p>
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/googleplay/gpfe/highlight"
+ data-sortOrder="-timestamp"
+ data-cardSizes="18x6,"
+ data-maxResults="1"></div>
-<p>Google Play for Education can help your innovative educational apps
-gain visibility with the right audiences, without having to knock on school doors. </p>
-<p><a class="landing-page-link" style="text-align:right;" href="#video">Watch a Video</a></p>
+<!-- <div class="center-img"><img src="{@docRoot}images/gp-edu-hero14.jpg" class="" /></div> -->
-<div class="landing-docs">
- <div class="col-6 normal-links">
- <h3 style="clear:left">For Developers</h3>
+<p>
+ If you have an educational app, include it in Google Play for Education.
+ Google Play for Education can help your innovative educational apps gain
+ visibility with the right audiences, without having to knock on school doors.
+</p>
-<h4>Get discovered</h4>
+<div style="margin:30px 0 20px 0;" class="clearfloat dynamic-grid">
+ <div style="width:48%; margin-right:2%; float:left;">
+ <div class="centered-full-image">
+ <img src="{@docRoot}images/gpfe-developer.png">
+ </div>
-<p>With Google Play for Education, teachers and administrators can
-browse content by curriculum, grade, and standard — discovering the right
-content for their students. If your app offers an exciting new
-way to learn sixth grade algebra, math educators will be able to find,
-purchase, and distribute your app to their classes in a few clicks.</p>
-
-<h4>Reach more schools and students</h4>
-
-<p>Over 30 million students, faculty, and staff are already using
-Google Apps for Education and other Google services. Many of these schools are
-excited to take advantage of tablets with Google Play for Education and they
-look to bringing your apps into their classrooms,
-especially apps using Google sign-on.</p>
-
-<h4>Monetize effectively</h4>
-<p>With Google Play for Education, educators are able to make high-volume purchases
-using standard institutional payment mechanisms and distribute them to the students
-they want — whether it is a class of 20 or a district of 20,000.</p>
-<code></code>
+ <h3>
+ FOR DEVELOPERS
+ </h3>
+ <b>Get discovered</b>
+ <p>
+ With Google Play for Education, teachers and administrators can browse
+ content by curriculum, grade, and standard — discovering the right
+ content for their students. If your app offers an exciting new way to
+ learn sixth grade algebra, math educators will be able to find, purchase,
+ and distribute your app to their classes in a few clicks.
+ </p>
+ <b>Reach more schools and students</b>
+ <p>
+ Millions of students, faculty, and staff are using Google Apps for
+ Education and other Google services. Many of these schools are excited to
+ take advantage of tablets with Google Play for Education and they are
+ looking to bring your apps into their classrooms, especially apps using
+ Google sign-on.
+ </p>
+ <b>Monetize effectively</b>
+ <p>
+ With Google Play for Education, educators are able to make high-volume
+ purchases using standard institutional payment mechanisms and then
+ distribute apps to the students who need them — whether it’s a class of
+ 20 or a district of 20,000.
+ </p>
</div>
- <div class="col-6 normal-links">
- <h3 style="clear:left">For Educators</h3>
- <h4>Android tablets in the classroom</h4>
- <p>Google Play for Education brings the innovation of Android technology
-into classrooms. School districts can set up and deploy large numbers of devices in
-just minutes or hours rather than days.</p>
+ <div style="width:48%; margin-left:2%; float:left;">
+ <div class="centered-full-image">
+ <img src="{@docRoot}images/gpfe-educator.png">
+ </div>
- <h4>Curriculum-based discovery</h4>
- <p>Powerful browsing tools let educators quickly discover apps,
-videos, and other content—with many recommended by teachers and
-categorized according to familiar Core Curriculum standards.
-
- <h4>Bulk purchase with institutional payment</h4>
- <p>Convenient purchasing and delivery tools let educators buy apps in bulk
-using purchase orders and other payment methods that are easy for schools to
-manage.</p>
-
- <h4>Over-the-air delivery to student devices</h4>
-
- <p>After finding apps they want to use, educators can push them instantly
-to student devices over the air. They can send the apps to individuals or groups
-of any size, across classrooms, schools, or even districts. </p>
-
+ <h3>
+ FOR EDUCATORS
+ </h3>
+ <b>Android tablets in the classroom</b>
+ <p>
+ Google Play for Education brings the innovation of Android technology
+ into classrooms. School districts can set up and deploy large numbers of
+ devices in just minutes or hours, rather than days.
+ </p>
+ <b>Curriculum-based discovery</b>
+ <p>
+ Powerful browsing tools let educators quickly discover apps, videos, and
+ other content—with many recommended by teachers and categorized according
+ to familiar Core Curriculum standards.
+ </p>
+ <b>Bulk purchase with institutional payment</b>
+ <p>
+ Convenient purchasing and delivery tools let educators buy apps in bulk,
+ using purchase orders and other payment methods that are easy for schools
+ to manage.
+ </p>
+ <b>Over-the-air delivery to student devices</b>
+ <p>
+ After finding apps they want, educators can push them instantly to
+ student devices over the air. They can send the apps to individuals or
+ groups of any size, across classrooms, schools, or even districts.
+ </p>
</div>
-
-
</div>
-<div id="video" style="background: #F0F0F0;
- border-top: 1px solid #DDD;
- padding: 0px 0 24px 0;
- overflow: auto;
- clear:both;
- margin-bottom:40px;
- margin-top:30px;">
- <div style="padding:0 0 0 29px;">
- <h4>Introducing Google Play for Education</h4>
- <div style="width:700px;">
- <p style="margin-top:26px;
- margin-bottom:12px;">
- Hear how Google Play for Education works and how developers can leverage the unique business opportunities in creating educational apps for the K-12 market. There's a demo at 4m10s.</p>
- </div>
- <iframe style="float:left;
- margin-right:24px;
- margin-top:14px;" width="700" height="394" src=
- "http://www.youtube.com/embed/haEmsMo0f3w?HD=1;rel=0;origin=developer.android.com;" frameborder="0" allowfullscreen>
- </iframe>
- </div>
+<div class="headerLine clearfloat">
+<h1>Related Resources</h1><hr>
</div>
+
+<div class="dynamic-grid">
+
+<h3>For Developers</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/googleplay/gpfe/dev/about"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
+
+<h3>For Teachers and Educators</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/googleplay/aboutgpfe/educators/about"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="3"></div>
+
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/edu/contact.jd b/docs/html/distribute/googleplay/edu/contact.jd
index ca83438..042a92b 100644
--- a/docs/html/distribute/googleplay/edu/contact.jd
+++ b/docs/html/distribute/googleplay/edu/contact.jd
@@ -7,32 +7,29 @@
bring your first-class educational content into schools across the United
States, and to a broader international audience in the future. </p>
-<div class="vspace size-1">
-
-</div>
-<div class="layout-content-row">
- <div class="layout-content-col span-6">
- <h4>
- For Developers
- </h4>
- <p>
+<div style="margin:0 0 20px 0;" class="clearfloat dynamic-grid">
+ <div style="width:48%; margin-right:2%; float:left;">
+
+ <h3>
+ FOR DEVELOPERS
+ </h3>
+ <p>
Whether you have an existing educational app or are developing a fresh idea that
will unlock learning in the classroom — sign up to receive information about
-the upcoming launch of Google Play for Education. To get your apps ready, read our
-<a href="{@docRoot}distribute/googleplay/edu/guidelines.html">guidelines</a> for building
-educational apps.</p>
- </p><a href="http://developer.android.com/edu/signup">Developer Sign Up »</a>
+Google Play for Education. To get your apps ready, read our
+<a href="{@docRoot}distribute/essentials/gpfe-guidelines.html">guidelines for building
+educational apps</a>.</p>
+ </p><a href="http://developer.android.com/edu/signup">Developer Sign Up »</a> </p>
</div>
- <div class="layout-content-col span-6">
- <h4>
- For Educators
- </h4>
- <p>
+
+ <div style="width:48%; margin-left:2%; float:left;">
+
+ <h3>
+ FOR EDUCATORS
+ </h3>
+ <p>
If you're a school or system interested in tablets and Google Play for Education,
complete the expression of interest form at <a href="http://www.google.com/edu/android">www.google.com/edu/android</a>.
- </p><a href="http://www.google.com/edu/android">School Interest Form »</a>
- </div>
-</div>
-
-
+ </p><a href="http://www.google.com/edu/android">School Interest Form »</a> </div>
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/edu/faq.jd b/docs/html/distribute/googleplay/edu/faq.jd
index 0c3b185..0866da5 100644
--- a/docs/html/distribute/googleplay/edu/faq.jd
+++ b/docs/html/distribute/googleplay/edu/faq.jd
@@ -1,372 +1,433 @@
-page.title=Google Play for Education FAQ
-page.metaDescription=Questions and answers about Google Play for Education.
-excludeFromSuggestions=true
+page.title=Education FAQ
+meta.tags="gpfe, edu"
+page.metaDescription=Answers to frequent questions about Google Play for Education.
+page.image=/distribute/images/gpfe-faq.jpg
+
@jd:body
- <div style="position:absolute;margin-left: 636px;
- margin-top:-76px;color:#777;">If you're interested<br>
- <a href="{@docRoot}distribute/googleplay/edu/contact.html"
- class="go-link"
- style="display: block;text-align: right;">SIGN UP</a></div>
-
-
- <style>
- dt {
- font-weight:bold;
- }
- </style>
-
<div id="qv-wrapper">
-<ol id="qv">
-<h2>In this document</h2>
-<ol>
- <li><a href="#business">Business Model</a></li>
- <li><a href="#free_trials">Free Trials</a></li>
- <li><a href="#discovery">Discovery</a></li>
- <li><a href="#reviews">App Review Process</a></li>
- <li><a href="#features">App Features</a></li>
- <li><a href="#marketing">Marketing and ROI</a></li>
- <li><a href="#devices">Devices</a></li>
- <li><a href="#accounts">Accounts</a></li>
-</ol>
+ <div id="qv">
+ <h2>
+ Topics
+ </h2>
+
+ <ol>
+ <li>
+ <a href="#business-model-and-monetization">Business Model and
+ Monetization</a>
+ </li>
+
+ <li>
+ <a href="#free-trials">Free Trials</a>
+ </li>
+
+ <li>
+ <a href="#discovery">Discovery</a>
+ </li>
+
+ <li>
+ <a href="#app-review-process">App Review Process</a>
+ </li>
+
+ <li>
+ <a href="#app-features">App Features</a>
+ </li>
+
+ <li>
+ <a href="#marketing-and-roi">Marketing and ROI</a>
+ </li>
+
+ <li>
+ <a href="#devices">Devices</a>
+ </li>
+
+ <li>
+ <a href="#accounts">Accounts</a>
+ </li>
+
+ <li>
+ <a href="#related-resources">Related Resources</a>
+ </li>
+ </ol>
+ </div>
</div>
<p>
- The sections below provide more information about Google Play for Education
- and answer common questions that you might have about it.
+ This page provides answers to common questions that you might have about
+ Google Play for Education.
</p>
+<div class="headerLine">
+ <h1 id="business-model-and-monetization">
+ Business Model and Monetization
+ </h1>
-<h2 id="business">Business Model and Monetization</h2>
+ <hr>
+</div>
-<dl>
- <dt>
- What is Google Play for Education?
- </dt>
+<p>
+ <strong>What is Google Play for Education?</strong>
+</p>
- <dd>
- Google Play for Education is a new online destination designed for schools.
- Teachers can discover educational apps, books, and videos to meet the needs
- of a single student, a classroom, or a whole district. Educators can browse
- apps by grade, subject, keyword, or standard including common core.
- Purchasing is done via PO with no credit card required. Apps are
- distributed to tablets instantly via the cloud.
- </dd>
+<p>
+ Google Play for Education is a new online destination designed for schools.
+ Teachers can discover educational apps, books, and videos to meet the needs
+ of a single student, a classroom, or a whole district. Educators can browse
+ apps by grade, subject, keyword, or standard including Common Core State
+ Standards. Purchasing is done using a PO with no credit card required. Apps
+ are distributed to tablets instantly through the cloud.
+</p>
- <dt>
- Is Google Play for Education primarily for students or educators?
- </dt>
+<p>
+ <strong>Is Google Play for Education primarily for students or
+ educators?</strong>
+</p>
- <dd>
- The store on Google Play for Education is for educators, but its content is
- for both educators and students. Teachers and administrators have the
- ability to make purchases and control who within their school has access to
- the purchase flows.
- </dd>
+<p>
+ The store on Google Play for Education is for educators, but its content is
+ for both educators and students. Teachers and administrators have the ability
+ to make purchases and control who within their school has access to the
+ purchase flows.
+</p>
- <dt>
- Will Google Play for Education support subscription purchases?
- </dt>
+<div class="figure">
+ <img src="{@docRoot}distribute/images/gpfe-faq.jpg" style=
+ "width:480px;margin:1em 0em 1.5em 1.5em;">
+</div>
- <dd>
- Currently, Google Play for Education supports one-time purchases. We are
- investigating additional purchase mechanisms to enable more flexible
- pricing models for developers and schools.
- </dd>
+<p>
+ <strong>Will Google Play for Education support subscription
+ purchases?</strong>
+</p>
- <dt>
- Why is it recommended to disable in-app purchases?
- </dt>
+<p>
+ Currently, Google Play for Education supports one-time purchases. We’re
+ investigating additional purchase mechanisms to enable more flexible pricing
+ models for developers and schools.
+</p>
- <dd>
- In-app purchase is currently not supported with Google Play for Education,
- and a student device will block the Play transaction if a student attempts
- to make an in-app purchase. To avoid student confusion in the classroom,
- also recommend not including any in-app purchase buttons and other UI in
- your application. We are investigating additional purchase mechanisms to
- enable more flexible pricing models for developers and schools.
- </dd>
+<p>
+ <strong>Why is it recommended that in-app purchase features are
+ removed?</strong>
+</p>
- <dt>
- Is Google Play for Education restricted so only its users can purchase from
- the Google Play for Education? Or will anyone be able to purchase from it?
- </dt>
+<p>
+ In-app Billing is currently not supported with Google Play for Education, and
+ a student device will block the Google Play transaction if a student attempts
+ to make an in-app purchase. To avoid confusing students, we recommend not
+ including any in-app purchase buttons and other UI in your apps. We’re
+ investigating additional purchase mechanisms to enable more flexible pricing
+ models for developers and schools.
+</p>
- <dd>
- Currently, only schools that are signed up for Google Play for Education
- can make purchases on it.
- </dd>
+<p>
+ <strong>Is Google Play for Education restricted so only its users can
+ purchase from the Google Play for Education? Or will anyone be able to
+ purchase from it?</strong>
+</p>
- <dt>
- Is there a way to differentiate an app's pricing between Google Play for
- Education and Google Play?
- </dt>
+<p>
+ Currently, only schools that are signed up for Google Play for Education can
+ make purchases on it.
+</p>
- <dd>
- For each app that you publish, you can set a single price that applies to
- both Google Play and Google Play for Education &mdash. You can’t set a
- different price for a given app (based on a single package name) in Google
- Play for Education.
- </dd>
-</dl>
+<p>
+ <strong>Can I set different prices for my apps in Google Play for Education
+ and Google Play?</strong>
+</p>
+<p>
+ You set a single price for each app that applies to both Google Play and
+ Google Play for Education. You can’t set a different price for a given app
+ (based on a single package name) in Google Play for Education.
+</p>
-<h2 id="free_trials">Free Trials</h2>
+<div class="headerLine">
+ <h1 id="free-trials">
+ Free Trials
+ </h1>
-<dl>
- <dt>
- Can I offer free trials through Google Play for Education?
- </dt>
+ <hr>
+</div>
- <dd>
- Google Play for Education doesn't currently support free trials. If you
- want, you can offer a free version of your app with limited functionality
- in Google Play for Education, but that app would need to be separate from
- your paid app and be reviewed separately for educational content.
- </dd>
+<p>
+ <strong>Can I offer free trials through Google Play for Education?</strong>
+</p>
- <dt>
- Can I offer a free trial through Google Play's "In-app Subscriptions with
- Free Trials" feature?
- </dt>
+<p>
+ Google Play for Education doesn't currently support free trials. If you want,
+ you can offer a free version of your app with limited functionality in Google
+ Play for Education, but that app would need to be separate from your paid app
+ and be reviewed separately for educational content.
+</p>
- <dd>
- Google Play for Education does not currently support In-app Billing or
- In-app Subscriptions with free trials.
- </dd>
-</dl>
+<p>
+ <strong>Can I offer a free trial through Google Play's "In-app Subscriptions
+ with Free Trials" feature?</strong>
+</p>
+<p>
+ Google Play for Education doesn’t currently support In-app Billing or In-app
+ Subscriptions with free trials.
+</p>
-<h2 id="discovery">Discovery</h2>
+<div class="headerLine">
+ <h1 id="discovery">
+ Discovery
+ </h1>
-<dl>
- <dt>
- What are the categories in Google Play for Education?
- </dt>
+ <hr>
+</div>
- <dd>
- Google Play for Education includes categories for all grade levels from
- Kindergarten to 12 and the following subjects: English Language Arts, World
- Languages, Mathematics, Science, Social Science, Elective, OER (Open
- Education Resources), and Tools.
- </dd>
+<p>
+ <strong>What are the categories in Google Play for Education?</strong>
+</p>
- <dt>
- I created an app specifically for Google Play for Education and do not want
- it to show up in Google Play. Is this possible?
- </dt>
+<p>
+ Google Play for Education includes categories for all grade levels from
+ Kindergarten to 12 and the following subjects: English Language Arts, World
+ Languages, Mathematics, Science, Social Science, Elective, Open Education
+ Resources (OER), and Tools.
+</p>
- <dd>
- Currently, it is not possible to publish an app Google Play for Education
- and make it unavailable on Google Play.
- </dd>
+<p>
+ <strong>I created an app specifically for Google Play for Education and don’t
+ want it to show up in Google Play. Is this possible?</strong>
+</p>
- <dt>
- If my app offers content for every level of education, how will it fit the
- common-core standard filters?
- </dt>
+<p>
+ Currently, it’s not possible to publish an app on Google Play for Education
+ and make it unavailable on Google Play.
+</p>
- <dd>
- If your app applies to multiple levels of education, then the app will show
- up filtered results for in multiple levels.
- </dd>
-</dl>
+<p>
+ <strong>If my app offers content for every level of education, how will it
+ fit the Common Core State Standard filters?</strong>
+</p>
+<p>
+ If your app applies to multiple levels of education, then the app will show
+ up in filtered results for multiple levels.
+</p>
-<h2 id="reviews">App Review Process</h2>
+<div class="headerLine">
+ <h1 id="app-review-process">
+ App Review Process
+ </h1>
-<dl>
- <dt>
- How are apps being reviewed? By whom and with what criteria?
- </dt>
+ <hr>
+</div>
- <dd>
- Apps are being reviewed by a third party network of educators. These
- educators assign the appropriate subject, grade, and common core standards
- metadata, as well as evaluating whether the app meets the Google Play for
- Education <a href=
- "{@docRoot}distribute/googleplay/edu/guidelines.html">criteria for
- classroom use</a>. You can learn more about the submission process and
- criteria at <a href=
- "http://developer.android.com/edu">developer.android.com/edu</a>.
- </dd>
+<p>
+ <strong>How are apps being reviewed? By whom and against what
+ criteria?</strong>
+</p>
- <dt>
- How do I update my apps in Google Play for Education?
- </dt>
+<p>
+ Apps are being reviewed by a third-party network of educators. These
+ educators assign the appropriate subject, grade, and Common Core State
+ Standards metadata, as well as evaluating whether the app meets the Google
+ Play for Education <a href=
+ "{@docRoot}distribute/essentials/gpfe-guidelines.html">criteria for classroom
+ use</a>.
+</p>
- <dd>
- Developers can update their apps on Google Play for Education in the same
- manner that they do for Google Play. App updates will not be reviewed prior
- to being made available through Play for Education. However, we will
- periodically review updated apps for quality.
- </dd>
+<p>
+ <strong>How do I update my apps in Google Play for Education?</strong>
+</p>
- <dt>
- Does the app maturity rating reflect solely what a user can do within my
- Android app, or does the web version of my app influence the rating as
- well?
- </dt>
+<p>
+ You can update your apps on Google Play for Education in the same manner you
+ do on Google Play. App updates will not be reviewed prior to being made
+ available through Google Play for Education. However, we will periodically
+ review updated apps for quality.
+</p>
- <dd>
- The maturity rating that you set for your Android app refers only to the
- content displayed in that application.
- </dd>
-</dl>
+<p>
+ <strong>Does the app maturity rating reflect solely on what a user can do
+ within my Android app, or does the web version of my app influence the rating
+ as well?</strong>
+</p>
+<p>
+ The maturity rating that you set for an Android app refers only to the
+ content displayed in that app.
+</p>
-<h2 id="features">App Features</h2>
+<div class="headerLine">
+ <h1 id="app-features">
+ App Features
+ </h1>
-<dl>
- <dt>
- Do I need separate builds of my phone and tablet apps for Google Play for
- Education, or is it the exact same app that lives on Google Play?
- </dt>
+ <hr>
+</div>
- <dd>
- We recommend you create one app and use it in both Google Play and Google
- Play for Education.
- </dd>
+<p>
+ <strong>Do I need separate builds of my phone and tablet apps for Google Play
+ for Education, or is it the exact same app that lives on Google
+ Play?</strong>
+</p>
- <dt>
- What is the best way to get students’ work within apps sent back to their
- teachers?
- </dt>
+<p>
+ We recommend you create one app and use it in both Google Play and Google
+ Play for Education.
+</p>
- <dd>
- Many teachers have mentioned that the way apps treat this now is via an
- email from a third party, which is not optimal for schools. As many schools
- use Google Apps for Education, consider integrating your app with Google
- Drive using the SDK which can be found here: <a class="external-link" href=
- "https://developers.google.com/drive/about-sdk">developers.google.com/drive/about-sdk</a>.
- </dd>
+<p>
+ <strong>What is the best way to get students’ work within apps sent back to
+ their teachers?</strong>
+</p>
- <dt>
- How can developers test the teacher experience in Google Play for
- Education? Is there a way to get an account to test it?
- </dt>
+<p>
+ Teachers have mentioned that many apps achieve this by email from a third
+ party, which isn’t optimal for schools. As many schools use Google Apps for
+ Education, consider integrating your apps with Google Drive using the
+ <a href="https://developers.google.com/drive/about-sdk">SDK</a>.
+</p>
- <dd>
- Currently, we are unable to provide developers with a test account to test
- the Google Play for Education user experience. We are investigating ways to
- allow developers to simulate the environment.
- </dd>
+<p>
+ <strong>How can developers test the teacher experience in Google Play for
+ Education? Is there a way to get an account to test it?</strong>
+</p>
- <dt>
- If I already have an app in the Chrome Apps Pack will I get some help
- migrating this to Android?
- </dt>
+<p>
+ Currently, we are unable to provide developers with a test account to test
+ the Google Play for Education user experience. We’re investigating ways to
+ allow developers to simulate the environment.
+</p>
- <dd>
- If you’d like to reach tablet users in schools we encourage you
- to build a native app for the optimal user experience. Considerations for
- building your app and instructions for registering it can be found at
- <a href="http://developer.android.com/edu">developer.android.com/edu</a>.
- </dd>
-</dl>
+<p>
+ <strong>If I already have an app in the Chrome Apps Pack will I get some help
+ migrating this to Android?</strong>
+</p>
+<p>
+ If you’d like to reach tablet users in schools we encourage you to build a
+ native app for the optimal user experience. Considerations for building your
+ apps can be found in the <a href=
+ "{@docRoot}distribute/essentials/gpfe-guidelines.html">Google Play for
+ Education Guidelines</a>.
+</p>
-<h2 id="marketing">Marketing and ROI</h2>
+<div class="headerLine">
+ <h1 id="marketing-and-roi">
+ Marketing and ROI
+ </h1>
-<dl>
- <dt>
- What are you doing to promote these apps to educators?
- </dt>
+ <hr>
+</div>
- <dd>
- Google Play for Education is an extension of Google Play targeting schools
- and making discovery easier for educational apps. It helps your apps gain
- visibility with the right audiences, without having to knock on school
- doors. We are constantly referring to the highest quality apps in our
- educator outreach. We have also developed a series of collections to help
- educators quickly browse apps for the most common use cases.
- </dd>
+<p>
+ <strong>What are you doing to promote these apps to educators?</strong>
+</p>
- <dt>
- How many installs have similar apps had on Play? How much can I expect to
- make if I do an ROI analysis?
- </dt>
+<p>
+ Google Play for Education is an extension of Google Play targeting schools
+ and making the discovery of educational apps easier. It helps your apps gain
+ visibility with the right audiences, without having to knock on school doors.
+ We’re constantly referring to the highest quality apps in our educator
+ outreach. We’ve also developed a series of collections to help educators
+ quickly browse apps for the most common use cases.
+</p>
- <dd>
- While we cannot disclose specific numbers, Google Play app listings provide
- app download ranges for all apps.
- </dd>
+<p>
+ <strong>How many installs have similar apps had on Google Play for Education?
+ How much can I expect to make if I do an ROI analysis?</strong>
+</p>
- <dt>
- What is the seasonality like for the education market? What are the key
- timing considerations for app developers?
- </dt>
+<p>
+ While we cannot disclose specific numbers, Google Play app listings provide
+ app download ranges for all apps.
+</p>
- <dd>
- In the United States, school districts’ budget decisions go through a
- planning phase in the Spring with budgets being released on July 1. We have
- observed high purchase-volumes in the second quarter of the calendar year,
- using up end-of-year budgets. New budget purchases begin in the third
- quarter of the calendar year.
- </dd>
+<p>
+ <strong>What is the seasonality like for the education market? What are the
+ key timing considerations for app developers?</strong>
+</p>
- <dt>
- Is there a way to offer a special deal, such as a discount, only on Google
- Play for Education and not on Google Play?
- </dt>
+<p>
+ In the United States, school districts’ budget decisions go through a
+ planning phase in the Spring with budgets being released on July 1. We’ve
+ observed high purchase-volumes in the second quarter of the calendar year, to
+ use up end-of-year budgets. New budget purchases begin in the third quarter
+ of the calendar year.
+</p>
- <dd>
- No, this is not possible. Pricing, including special offers, must be the
- same between Google Play for Education and Google Play.
- </dd>
-</dl>
+<p>
+ <strong>Is there a way to offer a special deal, such as a discount, only on
+ Google Play for Education and not on Google Play?</strong>
+</p>
+<p>
+ No, this isn’t possible. Pricing, including special offers, must be the same
+ between Google Play for Education and Google Play.
+</p>
-<h2 id="devices">Devices</h2>
+<div class="headerLine">
+ <h1 id="devices">
+ Devices
+ </h1>
-<dl>
- <dt>
- Which devices are available in the program? Will more be available?
- </dt>
+ <hr>
+</div>
- <dd>
- Nexus 7 is available for shipment now, and the Asus Transformer and HP
- Slate 8 Pro will be available in early 2014. We look forward to welcoming
- more Android devices into the Google in Education family soon.
- </dd>
+<p>
+ <strong>Which devices are available in the program? Will more be
+ available?</strong>
+</p>
- <dt>
- Can the devices be shared among many students?
- </dt>
+<p>
+ Nexus 7 is available for shipment now, and the Asus Transformer, HP Slate 8
+ Pro, and Galaxy Tab for Education will be available in early 2014. We look
+ forward to welcoming more Android devices into the Google in Education family
+ soon.
+</p>
- <dd>
- No. Currently, this program is for one-to-one usage. Each student can login
- to one specific tablet that is allocated to them.
- </dd>
-</dl>
+<p>
+ <strong>Can the devices be shared among many students?</strong>
+</p>
+<p>
+ No. Currently, this program is for one-to-one use. Each student can login to
+ one specific tablet that is allocated to them.
+</p>
-<h2 id="accounts">
+<div class="headerLine">
+ <h1 id="accounts">
Accounts
-</h2>
+ </h1>
-<dl>
- <dt>
- Will an app know whether a user is a teacher or student?
- </dt>
+ <hr>
+</div>
- <dd>
- No, the app has no mechanism for knowing if it is running on a teacher’s
- device or a student’s device. We recommend developers use their own user
- database to enable this feature, where logins can be based on Google
- Account information.
- </dd>
+<p>
+ <strong>Will an app know whether a user is a teacher or student?</strong>
+</p>
- <dt>
- What log-in method do you recommend for an app on Google Play for
- Education?
- </dt>
+<p>
+ No, the app has no mechanism for knowing if it’s running on a teacher’s
+ device or a student’s device. We recommend developers use their own user
+ database to enable this feature, where logins can be based on Google Account
+ information.
+</p>
- <dd>
- One of the key pieces of feedback we have heard multiple times from various
- schools is that they prefer apps that offer Google Single Sign-on, so that
- teachers and students do not need to remember multiple log-in credentials.
- As schools in the program use Google Accounts and Google Apps for
- Education, offering Google Single Sign-on is ideal.
- </dd>
-</dl>
\ No newline at end of file
+<p>
+ <strong>What log-in method do you recommend for an app on Google Play for
+ Education?</strong>
+</p>
+
+<p>
+ One of the key pieces of feedback we’ve heard multiple times from various
+ schools is that they prefer apps that offer Google Single Sign-on, so that
+ teachers and students don’t need to remember multiple log-in credentials. As
+ schools in the program use Google Accounts and Google Apps for Education,
+ offering Google Single Sign-on is ideal.
+</p>
+<div class="headerLine"><h1 id="related-resources">Related Resources</h1><hr></div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/toolsreference/gpfefaq"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3,6x3,6x3,9x3,9x3,9x3"
+ data-maxResults="6"></div>
+
diff --git a/docs/html/distribute/googleplay/edu/guidelines.jd b/docs/html/distribute/googleplay/edu/guidelines.jd
deleted file mode 100644
index 8427044..0000000
--- a/docs/html/distribute/googleplay/edu/guidelines.jd
+++ /dev/null
@@ -1,244 +0,0 @@
-page.title=Guidelines for Apps
-page.metaDescription=Get your apps ready for Google Play for Education.
-excludeFromSuggestions=true
-@jd:body
-
- <div style="position:absolute;margin-left: 636px;
- margin-top:-76px;color:#777;">If you're interested<br>
- <a href="{@docRoot}distribute/googleplay/edu/contact.html"
- class="go-link"
- style="display: block;text-align: right;">SIGN UP</a></div>
-
-<div style="background-color:#fffdeb;width:100%;margin-bottom:1em;padding:.5em;">You
-can now include your educational apps in the recently launched Google Play for Education program,
-getting it into the hands of participating schools and key influencers in the education technology
-community. See <a href="start.html">Get Started</a> to
-learn how to participate. </div>
-
-<p>The sections below list the guidelines and requirements for apps
-participating in Google Play for Education.
-
-<p>Before you include your app in Google Play for Education, set up a <a
-href="#test-environment">test environment</a> and make sure your app meets all
-of the safety, usability, and quality guidelines given here. You can use the
-linked resources to help
-you develop a great app for students that offers compelling content and an
-intuitive user experience on Android tablets.</p>
-
-<p>In addition, ensure that your app complies with the terms of a <a
-href="https://play.google.com/about/developer-distribution-agreement-addendum.html"
-target="_policies">Google Play for Education Addendum</a>, as well as
-the standard <a
-href="http://play.google.com/about/developer-content-policy.html"
-target="_policies">Google Play Developer Program Policies</a> and <a
-href="http://play.google.com/about/developer-distribution-agreement.html"
-target="_policies">Developer Distribution Agreement</a>.</p>
-
-
-<h2 id="requirements">Safety First</h2>
-
-<p>To participate, your apps must be designed to be appropriate for
-the K-12 market. The basic requirements that your apps must meet are:</p>
-
-<ol>
- <li>Apps and the ads they contain must not collect personally identifiable
-information other than user credentials or data required to operate and improve
-the app.</li>
- <li>Apps must not use student data for purposes unrelated to its educational
-function.</li>
- <li>Apps must have a content rating of "Everyone" or "Low Maturity" (apps with
-a "Medium Maturity" rating are allowed, if they have that rating solely because
-they allow communication between students).</li>
- <li>App content, including ads displayed by the app, must be consistent with
-the app's maturity rating. The app must not display any “offensive” content, as
-described in the <a
-href="http://play.google.com/about/developer-content-policy.html">Google Play
-Developer Program Policies</a> and <a
-href="https://support.google.com/googleplay/android-developer/answer/188189">
-content-rating guidelines</a>.</p></li>
-<li>Apps must comply with the Children’s Online Privacy Protection Act
-and all other applicable laws and regulations.</li>
-</ol>
-
-
-<h2 id="inapp">Monetizing and Ads</h2>
-
-<p>Google Play for Education provides a simple and secure environment for students
-and teachers. To support that environment, priced or free apps that do not use in-app
-purchases are preferred, as are apps that do not display ads. Apps that use in-app
-payments or ads are acceptable, but you must declare those behaviors when opting-in
-to Google Play for Education. Your app's use of in-app purchases or ads will be
-disclosed to educators when they are browsing for content.</p>
-
-<p>Follow the guidelines below to help your app receive the
- highest ratings and offer the best possible user-experience.</p>
-
-<p>If your app is priced or sells in-app products, you must:</p>
-
-<ul>
- <li>Sell all content and services through Google Play for Education</li>
- <li>Allow Google Play to offer teachers limited free trials before purchase
-(through business terms only, no development work is needed)</li>
-<li>Disable in-app purchases if possible, or ensure that:
-
-<ul>
-<li>Users can access your app's core functionality for a classroom setting without
-an in-app purchase.</li>
-<li>In-app purchases are clearly identifiable in your UI.</li>
-<li>You declare the use of in-app purchases at <a href="{@docRoot}distribute/googleplay/edu/start.html#opt-in">opt-in</a>.</li>
-</ul>
-</li>
-</ul>
-
-<p class="note"><strong>Note</strong>: In-app
-purchases are blocked on Google Play for Education tablets at this time.</p>
-
-<p>If your app displays ads, you should:
- <ul>
- <li>Disable the display of ads if possible, or ensure that:
- <ul>
- <li>Ads are not distracting for students or teachers</li>
- <li>Ads do not occupy a significant portion of the screen</li>
- <li>Ads content does not exceed the maturity rating of the app.</li>
- <li>You declare the use of ads at <a href="{@docRoot}distribute/googleplay/edu/start.html#opt-in">opt-in</a>.</li>
- </ul>
- </li>
-</ul>
-
-
-<h2 id="approved">Educational Value</h2>
-
-<p>Apps submitted to Google Play for Education will be evaluated by a
-third-party educator network, which will review them based on alignment with <a
-href="http://www.corestandards.org/" class="external-link"
-target="_android">Common Core Standards</a> and other factors. This will help
-make your content more discoverable for teachers and administrators as they
-browse by grade level, subject, core curriculum, and other parameters. </p>
-
-<p>Apps with highest educational value will have these characteristics:</p>
-<ul>
- <li>Designed for use in K-12 classrooms.</li>
- <li>Aligned with a common core standard or support common-core learning.</li>
- <li>Simple, easy to use, and intuitive for the grade levels the app is targeting.
- App is relatively easy to navigate without teacher guidance. Not distracting
- or overwhelming to students.</li>
- <li>Enjoyable and interactive. App is engaging to students and lets them control
- their experience.</li>
- <li>Versatile. App has features make the it useful for more than one classroom
- function or lesson throughout the school year.</li>
- <li>Supports the "4Cs":
- <ul>
- <li><em>Creativity</em> — Allows students to create in order to express
- understanding of the learning objectives, and try new approaches, innovation
- and invention to get things done.</li>
- <li><em>Critical thinking</em> — Allows students to look at problems in
- a new way, linking learning across subjects and disciplines.</li>
- <li><em>Collaboration</em> — Allows students and (if appropriate) educators
- to work together to reach a goal.</li>
- <li><em>Communication</em> — Allows students to comprehend, critique and
- share thoughts, questions, ideas and solutions.</li>
- </ul>
- </li>
-</ul>
-
-<p>As you design and develop your app, make sure it offers high educational value
-by addressing as many of those characteristics as possible.</p>
-
-
-<h2 id="quality">App Quality</h2>
-
-<p>Google Play for Education brings educational content to students and teachers
-on Android tablets. Your apps should be designed to perform well and look great
-on Android tablets, and they should offer the best user experience possible.
-</p>
-
-<p>High quality apps are engaging, intuitive, and offer compelling content.
-Google Play for Education will highlight high-quality apps for easy discovery in
-the store. Here are some recommendations for making your app easy for students
-and teachers to enjoy.</p>
-
-<ul>
- <li>Meet Core app quality guidelines
- <ul>
- <li>Follow <a
- href="{@docRoot}design/index.html">Android Design Guidelines</a>. Pay special
- attention to the sections on <a href="{@docRoot}design/patterns/actionbar.html">Action
- Bar</a>, <a href="{@docRoot}design/patterns/navigation.html">Navigation</a> and <a
- href="{@docRoot}design/patterns/pure-android.html">Pure Android</a>.</li>
- <li>Test your apps against the <a href="{@docRoot}distribute/googleplay/quality/core.html">Core
- App Quality Guidelines</a>.</li>
- </ul>
- </li>
-<li>Meet tablet app quality guidelines
- <ul>
- <li>Follow our best practices for tablet app development</li>
- <li>Review the <a href="{@docRoot}distribute/googleplay/quality/tablet.html">Tablet App
- Quality Checklist</a> and <a
- href="http://android-developers.blogspot.com/2012/11/designing-for-tablets-were-here-to-help.html"
- target="_android">blog post on designing for tablets</a></li>
- <li>Check your Optimization Tips in the Google Play Developer Console (if you've
- already uploaded your app)</li>
- </ul>
-<li>Strive for simplicity and highest usability for students
- <ul>
- <li>Design your app so that teachers and students can use all capabilities of
- your app without having to sign-in to multiple accounts and remember
- multiple passwords.</li>
- <li>Every student or teacher using a Google Play for Education tablet will already be
- signed in with a Google account on the device. You can take advantage of that to provide a
- simple, seamless sign-in experience in your app. A recommended approach is to use
- <a href="{@docRoot}google/play-services/auth.html">Google OAuth 2 authorization</a>
- through Google Play Services.</li>
- </ul>
-</li>
-</ul>
-
-
-<h2 id="test-environment">Test Environment</h2>
-
-<p>To test your app and assess it against the guidelines in this document, it's
-recommended that you set up a test environment that replicates the actual
-environment in which students and teachers will run your app.</p>
-
-<p>In general, you should use the test environment described in <a
-href="{@docRoot}distribute/googleplay/quality/tablet.html#test-environment">
-Setting Up a Test Environment for Tablets</a>, including a small number of
-actual hardware devices that replicate the tablet form factors used in the
-Google Play for Education.</p>
-
-<h3 id="devices">Android tablets</h3>
-
-<p>Google Play for Education offers a range of 7-inch through 10-inch tablets, so
-your testing should focus on those hardware devices. You can purchase the Nexus 7
-device from <a href="https://play.google.com/store/devices/details?id=nexus_7_16gb"
-target="_android">Google Play</a> and other stores. Although testing on Nexus
-devices is preferred, you can test on other 7-inch or 10-inch tablets or virtual
-devices if you don't have access to Nexus devices.</p>
-
-<h3 id="conditions">Test conditions</h3>
-
-<p>Once you've set up a suitable hardware environment, make sure to test your
-apps under conditions that simulate those of schools. For example, Google Play
-for Education lets administrators control or disable certain capabilities for
-students, so it's good to test your app with those capabilities disabled. Below
-are some conditions to test your app in, to ensure best results in the Google
-Play for Education environment:</p>
-
-<ul>
-<li><em>Android version</em> — Test the app on devices running Android
-4.2. Google Play for Education devices will be running Android 4.2 or higher
-(API level 17+).</li>
-<li><em>Proxy server</em> — Test the app in network environment that uses
-proxies. Many schools use proxies.</li>
-<li><em>No location services</em> — Test the app to make sure it works
-properly with location services disabled. Many schools will disable location
-services for student devices.</li>
-<li><em>No In-app Billing</em> — Test the app to make sure it works
-properly without access to In-app Billing. In-app purchases are blocked on
-Google Play for Education devices at this time.</li>
-<li><em>No Bluetooth</em> — Test the app to make sure it works properly
-when Bluetooth is disabled. Many schools will disable Bluetooth on student
-devices.</li>
-<li><em>No access to network</em> — Test the app to make sure it works
-properly when the device cannot connect to the internet. </li>
-</ul>
diff --git a/docs/html/distribute/googleplay/edu/index.jd b/docs/html/distribute/googleplay/edu/index.jd
deleted file mode 100644
index a27f82f..0000000
--- a/docs/html/distribute/googleplay/edu/index.jd
+++ /dev/null
@@ -1,48 +0,0 @@
-page.title=Google Play for Education
-page.tags=Google Play,education,schools,distribution
-header.hide=1
-
-@jd:body
- <div style="position:absolute;margin-left: 636px;
- margin-top:6px;color:#777;">If you're interested<br>
- <a href="{@docRoot}distribute/googleplay/edu/contact.html"
- class="go-link"
- style="display: block;text-align: right;">SIGN UP</a></div>
-
- <div class="marquee">
- <div class="mainimg" style="position:absolute;margin-left:34px;margin-top:57px;">
- <img src="{@docRoot}images/gp-edu-hero14.jpg" style="width:670px;" />
- </div>
- <div class="copy" style="position:relative;left:334px;margin-top:28px;width:420px;">
- <h1 style="margin-bottom:10px;">Google Play for Education</h1>
- <p>Google Play for Education is a destination where schools can find great,
- teacher-approved, educational apps and videos on Play Store. Teachers can filter
- content by subject matter, grade and other criteria. Bulk purchase and instant
- distribution let educators bring your apps directly to classrooms and schools.</p>
- <p>If you have an educational app, join Google Play for Education.</p>
- <p><a class="button" href="{@docRoot}distribute/googleplay/edu/about.html">Learn More</a></p>
- </div>
-</div>
-
-<div class="distribute-features col-13" style="clear:both;margin-top:248px;">
- <div class="distribute-link">
- <ul>
- <li><a href="{@docRoot}distribute/googleplay/edu/about.html"><h5>About the Initiative</h5>
- Find out how Google Play for Education helps you reach a new audience of educators and students.</a>
- <li><a href="{@docRoot}distribute/googleplay/edu/start.html"><h5>Get your Apps Ready</h5>
- Follow these guidelines to make sure your app meets requirements and offers a great user experience. </a>
- </li>
- <li class="last"><a href="{@docRoot}distribute/googleplay/edu/start.html#opt-in"><h5>Submit your App</h5>
- Use the Google Play Developer Console to mark your app for inclusion in the program and review by third-party
- educators. </a>
- </li>
- </ul>
- </div>
-
-</div>
-
-
-
-
-
-
diff --git a/docs/html/distribute/googleplay/edu/start.jd b/docs/html/distribute/googleplay/edu/start.jd
index dbfbb6a..260ae85 100644
--- a/docs/html/distribute/googleplay/edu/start.jd
+++ b/docs/html/distribute/googleplay/edu/start.jd
@@ -1,233 +1,320 @@
-page.title=Get Started
-page.metaDescription=Get Started with Google Play for Education
-excludeFromSuggestions=true
+page.title=Get Started with Education
+page.image=/distribute/images/play-education.jpg
+meta.tags="education", "guidelines", "quality"
+page.tags="education", "addendum"
+page.metaDescription=Join Google Play for Education in just a few simple steps.
+
@jd:body
- <div class="jd-descr" itemprop="articleBody">
- <div style="position:absolute;margin-left: 636px;
- margin-top:-76px;color:#777;">If you're interested<br>
- <a href="{@docRoot}distribute/googleplay/edu/contact.html"
- class="go-link"
- style="display: block;text-align: right;">SIGN UP</a></div>
-
-<div style="background-color:#fffdeb;width:100%;margin-bottom:1em;padding:.5em;">You
-can now include your educational apps in the Google Play for Education program,
-getting it into the hands of participating schools and key influencers in the
-education technology community. See the sections below to learn more.</div>
-
-<p>If you've got a great app for education, be
-part of Google Play for Education to reach even more teachers and students. It's
-easy to participate, and you'll be able to offer new or existing Android apps
-using familiar tools and processes in Google Play.</p>
-
-<p>To get started, review the sections in this document and learn how to make
-your apps available through Google Play for Education. Also make sure to read <a
-href="{@docRoot}distribute/googleplay/edu/guidelines.html">Guidelines for
-Apps</a> for information on the safety, usability, and quality standards that
-your apps should meet. When your app is ready, you can opt-in to Google Play for
-Education from the Developer Console.</p>
-
-<p>Note that Google Play for Education is currently available to schools in the
-United States only, with support for schools in other
-countries to follow. At this time, please include your app in Google Play for
-Education only if it is targeting the <strong>US K-12 market</strong>. </p>
-
-
-<h2 id="participate">How to Participate</h2>
-
-<div style="float:right; padding-top:2em;"><img
-src="{@docRoot}images/gp-edu-process.png" /></div>
-
-<p>Google Play for Education is a great way to put your educational apps in front of a
-new audience of teachers and students. You can develop and publish using
-familiar tools and processes, such as your existing <a
-href="https://play.google.com/apps/publish/">Developer Console</a> account
-and your current distribution and pricing settings. It's easy to participate
-— the sections below outline the process.</p>
-
-<h3 id="basic-info">1. Understand guidelines and policies</h3>
-
-<p>To prepare for a successful launch on Google Play for Education, start by
-reviewing the guidelines for educational apps in Google Play and the policies
-that apply to your apps. See <a
-href="{@docRoot}distribute/googleplay/edu/guidelines.html">Guidelines for
-Apps</a> for details.</p>
-
-<p>Also, make sure that your are familiar with the policies that your app must
-comply with, including
-<a href="http://play.google.com/about/developer-content-policy.html" target="_policies">content
-policies</a>, the <a
-href="http://play.google.com/about/developer-distribution-agreement.html"
-target="_policies">developer agreement</a>, and <a
-href="https://play.google.com/about/developer-distribution-agreement-addendum.html"
-target="_policies">Google Play for Education Addendum</a>.</p>
-
-<h3 id="developing">2. Design and develop a great app for education</h3>
-
-<p>A great app for educators and students is designed for classroom use, looks
-great on tablets, and delivers a compelling feature set for teachers and
-students. If you are developing an app for education, make sure that it is
-appropriate for K-12 classrooms, offers educational value, and is refined to
-offer a polished, high-quality tablet experience.</p>
-
-<p>Assess your app against the criteria listed in <a
-href="{@docRoot}distribute/googleplay/edu/guidelines.html">Guidelines for
-Apps</a> and plan on supporting them to the greatest extent possible. In some
-cases you might need to modify your features or UI to support the requirements
-of the classroom use-case. It's a good idea to identify those areas early in
-development so that you are able address them properly. </p>
-
-<p>With Google Play for Education, optimizing your app for tablets is a crucial
-part of getting your app ready for distribution to educators. A variety of
-resources are available to help you understand what you need to optimize for
-tablets — a good starting point is the <a
-href="{@docRoot}distribute/googleplay/quality/tablet.html">Tablet App Quality
-Guidelines</a>. </p>
-
+<div id="qv-wrapper"><div id="qv">
+<h2>Steps to Join</h2>
+<ol>
+<li><a href="#register">Register for a Publisher Account</li>
+<li><a href="#prepare">Prepare Your Apps</a></li>
+<li><a href="#publish">Publish Your Apps</a></li>
+<li><a href="#related-resources">Related Resources</a></li>
+</ol>
+</div></div>
<p>
- Throughout design and development, it's important to have suitable devices
- on which to prototype and test your user experience. It's highly recommended
- that you acquire 7-inch and 10-inch tablet devices and set up
- your testing environment as early as possible. The recommended 7-inch
- hardware device that replicates the Google Play for Education environment is
- the Nexus 7, which is available from <a href=
- "https://play.google.com/store/devices/details?id=nexus_7_16gb" target=
- "_android">Google Play</a> and other stores.
+ If you've got great apps for education and want to reach even more teachers
+ and students, you can join the <strong>Google Play for Education</strong>
+ program in a few simple steps. You do everything using the familiar tools and
+ processes in Google Play.
</p>
-<p>Proper testing and quality assurance are key aspects of delivering a great
-app for teachers and students. Make sure you set up a <a
-href="{@docRoot}distribute/googleplay/edu/guidelines.html#test-environment">
-proper test environment</a> to ensure that your app meets guidelines under
-realistic conditions.</p>
+<p>
+ Note that Google Play for Education is currently available to <strong>K-12
+ schools in the United States</strong> only.
+</p>
-<h3 id="opt-in">3. Opt-in to Google Play for Education and publish</h3>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>Before you opt-in</h2>
-<p>To participate in Google Play for Education, you must agree to a <a
-href="https://play.google.com/about/developer-distribution-agreement-addendum.html"
-target="_policies">Google Play for Education Addendum</a>
-to the standard Developer Distribution Agreement.</p>
-
-<p>Before you opt-in, review the Addendum completely and make any necessary
-modifications to your app.</p>
-</div>
+<div class="center-img">
+ <img src="{@docRoot}images/gpfe-start-0.jpg" style=
+ "border:1px solid #ddd;padding:0px;width:100%;">
</div>
-<p>Once you've built your release-ready APK and tested to ensure that it meets
-the <a href="{@docRoot}distribute/googleplay/edu/guidelines.html">app guidelines</a>,
-upload it to the Developer Console, create your store listing, and set
-distribution options. If you aren't familiar with how to prepare for launch on
-Google Play, see the <a
-href="{@docRoot}distribute/googleplay/publish/preparing.html">Launch Checklist</a>. </p>
+<div class="headerLine clearfloat">
+ <h1 id="register">
+ Register for a Publisher Account
+ </h1>
-<p>When your app is ready to publish, you can <em>opt-in</em> to Google Play for
-Education directly from the <a
-href="https://play.google.com/apps/publish/">Developer Console</a>. Opt-in means that you want your app to be
-made available to educators through Google Play for Education, including review,
-classification, and approval by our third-party educator network. Note that
-opt-in does not affect the availability of your app in Google Play Store.</p>
+ <hr>
+</div>
-<p>Opt-in also confirms that your app complies with <a
-href="http://play.google.com/about/developer-content-policy.html"
-target="_policies">Google Play Developer Program
-Policies</a> and the <a
-href="http://play.google.com/about/developer-distribution-agreement.html"
-target="_policies">Developer Distribution Agreement</a>,
-including a <a
-href="https://play.google.com/about/developer-distribution-agreement-addendum.html"
-target="_policies">Google Play for Education
-Addendum</a>. If you are not familiar with these policy documents or the
-Addendum, make sure to read them before opting-in. </p>
+<p>
+ If you’re new to Google Play, review the information on <a href=
+ "{@docRoot}distribute/googleplay/start.html">getting started</a> with
+ publishing on Google Play. You’ll gain access to the <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html">Developer
+ Console</a>, where you’ll manage your details, apps, and payments.
+</p>
-<p>Here's how to opt-in to Google Play for Education for a specific app:</p>
+<div class="headerLine">
+ <h1 id="prepare">
+ Prepare Your Apps
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure-right">
+ <img src="{@docRoot}images/gp-edu-process.png">
+</div>
+
+<p>
+ By participating in Google Play for Education you’ll be placing your apps
+ before a new audience of teachers and educators. To address this audience,
+ there are specific guidelines and policies your apps should meet and specific
+ design considerations too.
+</p>
+
+<h3>
+ Understand guidelines and policies
+</h3>
+
+<p>
+ To prepare for a launch on Google Play for Education, start by reviewing the
+ guidelines for educational apps in Google Play and the policies that apply to
+ your apps. See the <a href=
+ "{@docRoot}distribute/essentials/gpfe-guidelines.html">Education
+ Guidelines</a> for details.
+</p>
+
+<p>
+ Also, make sure that you're familiar with the policies that your app must
+ comply with, including <a href=
+ "http://play.google.com/about/developer-content-policy.html">content
+ policies</a>, the <a href=
+ "http://play.google.com/about/developer-distribution-agreement.html">Developer
+ Distribution Agreement</a>, and <a href=
+ "https://play.google.com/about/developer-distribution-agreement-addendum.html">
+ Google Play for Education Addendum</a>.
+</p>
+
+<h3>
+ Design and develop a great app for education
+</h3>
+
+<p>
+ Great apps for educators and students <strong>offer educational
+ value</strong>, are <strong>designed for K-12 classroom use</strong>,
+ <strong>deliver a compelling feature set</strong>, and are refined to offer a
+ polished, <strong>high-quality tablet experience</strong>.
+</p>
+
+<p>
+ Assess your app against the criteria listed in the <a href=
+ "{@docRoot}distribute/essentials/gpfe-guidelines.html">Education
+ Guidelines</a> and plan on supporting them to the greatest extent possible.
+ In some cases you might need to modify the app’s features or UI to support
+ classroom requirements. It's a good idea to identify any changes early in
+ development, so that you can address them properly.
+</p>
+
+<p>
+ With Google Play for Education, optimizing your apps for tablets is crucial.
+ A variety of resources are available to help you understand what you need to
+ do — a good starting point is the <a href=
+ "{@docRoot}distribute/essentials/quality/tablets.html">Tablet App Quality</a>
+ guidelines.
+</p>
+
+<p>
+ Throughout design and development, it's important to have suitable devices on
+ which to prototype and test your user experience. It's recommended highly
+ that you acquire 7-inch and 10-inch tablet devices and set up your testing
+ environment as early as possible. The recommended 7-inch hardware device that
+ replicates the Google Play for Education environment is the Nexus 7, which is
+ available from <a href=
+ "https://play.google.com/store/devices/details?id=nexus_7_16gb_2013">Google
+ Play</a> and other stores.
+</p>
+
+<p>
+ Comprehensive testing and quality assurance are key aspects of delivering
+ great apps for teachers and students. Make sure you set up a <a href=
+ "{@docRoot}distribute/essentials/gpfe-guidelines.html#test-environment">proper
+ test environment</a> to, ensure that your apps meet the guidelines under
+ realistic conditions.
+</p>
+
+<div class="headerLine">
+ <h1 id="publish">
+ Publish Your Apps
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Once you have designed, built, and tested your apps, you take two steps to
+ publish them:
+</p>
+
+<ul>
+ <li>Before you opt-in any apps, agree to the <a href=
+ "https://play.google.com/about/developer-distribution-agreement-addendum.html"
+ target="_policies">Google Play for Education Addendum</a>. Ensure you
+ review the Addendum completely and make any necessary modifications to your
+ apps.
+ </li>
+
+ <li>Publish your apps in the Developer Console as normal, but opt-in to
+ Google Play for Education.
+ </li>
+</ul>
+
+<h3 id="opt-in">
+ Opt-in to Google Play for Education and publish
+</h3>
+
+<p>
+ Once you've built your release-ready APK upload it to the Developer Console,
+ create your store listing, and set distribution options. If you aren't
+ familiar with preparing for launch on Google Play, see the <a href=
+ "{@docRoot}distribute/tools/launch-checklist.html">Launch Checklist</a>.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-edu-optin-console.jpg" style=
+ "border:2px solid #ddd;width:660px;">
+</div>
+
+<p>
+ When your apps are ready to publish, you <em>opt-in</em> to Google Play for
+ Education directly from the <a href=
+ "https://play.google.com/apps/publish/">Developer Console</a>. Opt-in means
+ that you want your apps to be made available to educators through Google Play
+ for Education, including review, classification, and approval by our
+ third-party educator network. Note that opt-in doesn’t affect the
+ availability of your app in Google Play Store.
+</p>
+
+<p>
+ Opt-in also confirms that your app complies with <a href=
+ "http://play.google.com/about/developer-content-policy.html" target=
+ "_policies">Google Play Developer Program Policies</a> and the <a href=
+ "http://play.google.com/about/developer-distribution-agreement.html" target=
+ "_policies">Developer Distribution Agreement</a>, including a <a href=
+ "https://play.google.com/about/developer-distribution-agreement-addendum.html"
+ target="_policies">Google Play for Education Addendum</a>. If you are not
+ familiar with these policy documents or the Addendum, make sure to read them
+ before opting-in.
+</p>
+
+<p>
+ Here's how to opt-in to Google Play for Education for a specific app:
+</p>
<ol>
- <li>In the Developer Console All Applications page, click the app you want to
-opt-in. </li>
- <li>Under Pricing and Distribution, scroll down to find "Google Play for
-Education" and the opt-in checkbox. </li>
- <li>Click the checkbox next to "Include this application in Google Play for
-Education."</li>
- <li>In the first dialog that appears, review the content policies and guidelines
- and click "Continue" if your app meets the the policies and guidelines.</li>
- <li>In next dialog that appears, shown below, find the "Ads" and "In-app purchases" radio
- buttons. Check each option that applies. Your app's use of ads or in-app purchases will
-be shown to educators when they are browsing your app. </li>
- <li>Click "Save" to save your Pricing and Distribution changes.</li>
+ <li>In the Developer Console <strong>All Applications</strong> page, click
+ the app you want to opt-in.
+ </li>
+
+ <li>Under Pricing and Distribution, scroll down to find <strong>Google Play
+ for Education</strong> and the opt-in checkbox.
+ </li>
+
+ <li>Click the checkbox next to <strong>Include my app in Google Play for
+ Education...</strong>
+ </li>
+
+ <li>In the first dialog that appears, review the content policies and
+ guidelines and click <strong>Continue</strong> if your app meets the the
+ policies and guidelines.
+ </li>
+
+ <li>In the next dialog that appears, shown below, find the
+ <strong>Ads</strong> and <strong>In-app purchases</strong> radio buttons.
+ Check each option that applies. Your app's use of ads or in-app purchases
+ will be shown to educators when they are browsing your app.
+ </li>
+
+ <li>Click <strong>Save</strong>f to save your Pricing and Distribution
+ changes.
+ </li>
</ol>
<div style="clear:both;margin-top:1.5em;margin-bottom:1.5em;width:660px;">
-<img src="{@docRoot}images/gp-edu-ads-iab.png" style="border:2px solid #ddd;width:660px;" />
-<p class="image-caption"><span style="font-weight:500;">Ads and in-app purchase</span>:
-When you opt-in to Google Play for Education, make sure to declare your app's use of ads and
-in-app purchases.</p>
+ <img src="{@docRoot}images/gp-edu-ads-iab.png" style=
+ "border:2px solid #ddd;width:660px;">
+ <p class="img-caption">
+ <strong>Ads and in-app purchase</strong>: When you opt-in to Google Play
+ for Education, make sure to declare your app's use of ads and in-app
+ purchases.
+ </p>
</div>
-<p>Once you save changes and publish your app, the app will be submitted to our
-third-party educator network for review and approval. If the app is already
-published, it will be submitted for review as soon as you opt-in and save your
-changes. </p>
+<p>
+ Once you save changes and publish your app, the app will be submitted to our
+ third-party educator network for review and approval. If the app is already
+ published, it will be submitted for review as soon as you opt-in and save
+ your changes.
+</p>
-<p class="note"><strong>Note</strong>: Google Play for Education is part of
-Google Play. When you publish an app that's opted-in to Google Play for
-Education, the app becomes available to users in Google Play right away. After
-the app is reviewed and approved, it then becomes available to educators in
-Google Play for Education.</p>
+<p class="note">
+ <strong>Note</strong>: Google Play for Education is part of Google Play. When
+ you publish an app that's opted-in to Google Play for Education, the app
+ becomes available to users in Google Play right away. After the app is
+ <a href="{@docRoot}distribute/essentials/gpfe-guidelines.html#e-value">review
+ and approval</a>, it then becomes available to educators in Google Play for
+ Education.
+</p>
-<h3 id="review">4. Track your review and approval</h3>
+<h3>
+ Track your review and approval
+</h3>
-<p>Google Play for Education provides content to educators in a way that's
-properly organized by subject, grade level, and common core standards (where
-applicable). To ensure high educational value and proper classification, we work
-with a third-party educator network to review and approve apps before making
-them discoverable through the Google Play for Education browsing tools. </p>
+<p>
+ As soon as you opt-in to Google Play for Education and publish, your apps are
+ queued for review by our third-party educator network. The review and
+ approval process can take four weeks or more. You'll receive notification by
+ email (to your developer account address) when the review is complete, with a
+ summary of the review results.
+</p>
-<p>Our third-party educator network will evaluate apps according to educational
-value and alignment with K-12 core standards, then assign the metadata for
-subject, grade level, and core curriculum that makes them easily browsable for
-educators. To understand how your apps will be evaluated, please see the <a
-href="{@docRoot}distribute/googleplay/edu/guidelines.html">Guidelines for
-Apps</a> document.</p>
-
-<p>As soon as you opt-in to Google Play for Education and publish, your app is
-queued for review by our third-party educator network. The review and approval
-process can take four weeks or more</strong>. You'll receive notification
-by email (to your developer account address) when the review is complete, with a
-summary of the review results. </p>
-
-<p>At any time, you can check the review and approval status of your app in the
-<a href="https://play.google.com/apps/publish/">Developer Console</a>, under
-"Google Play for Education" in the app's Pricing and
-Distribution page. There are three approval states:</p>
+<p>
+ At any time, you can check the review and approval status of your app in the
+ Developer Console, under "Google Play for Education" in the app's Pricing and
+ Distribution page. There are three approval states:
+</p>
<ul>
-<li><em>Pending</em> — Your app was sent for review and the review
-is not yet complete.</li>
-<li><em>Approved</em> — Your app was reviewed and approved. The app
-will be made available directly to educators through Google Play for Education.
-Once your app is approved, you can update it at your convenience without needing
-another full review. </li>
-<li><em>Not approved</em> — Your app was reviewed and not approved.
-Check the notification email for information about why the app was not approved.
-You can address any issues and opt-in again for another review. </li>
+ <li>
+ <em>Pending</em> — Your app was sent for review and the review isn't
+ yet complete.
+ </li>
+
+ <li>
+ <em>Approved</em> — Your app was reviewed and approved. The app will
+ be made available directly to educators through Google Play for Education.
+ Once your app is approved, you can update it at your convenience without
+ needing another full review.
+ </li>
+
+ <li>
+ <em>Not approved</em> — Your app was reviewed and not approved. Check
+ the notification email send for information about why the app wasn’t
+ approved. You can address any issues and opt-in again for another review.
+ </li>
</ul>
+<div class="headerLine">
+<h1 id="related-resources">Related Resources</h1><hr>
+</div>
-<p>If you have questions about the review status of your app, follow the process
-discussed in the next section. </p>
+<div class="dynamic-grid">
+<h3>FOR DEVELOPERS</h3>
-<h3 id="appeal">5. Get support or appeal your review results</h3>
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/googleplay/gpfe/dev"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3,6x3,6x3,6x3"
+ data-maxResults="8"></div>
-<p>After your app is reviewed you'll receive an email giving you the
-results, including information on whether the app was approved and
-what issues may need to be addressed. You'll receive the email at the address
-you specified for your developer account. </p>
+<h3>FOR EDUCATORS</h3>
-<p>If your app has issues that need to be addressed, make the necessary
-adjustments, upload your app, and then resubmit the app to Google Play for
-Education through the Developer Console using process described above. Your app
-will be queued for review and you'll receive the review results by email just
-as before.</p>
-
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/googleplay/aboutgpfe/educators"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="3"></div>
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/googleplay_toc.cs b/docs/html/distribute/googleplay/googleplay_toc.cs
new file mode 100644
index 0000000..4196c39
--- /dev/null
+++ b/docs/html/distribute/googleplay/googleplay_toc.cs
@@ -0,0 +1,47 @@
+<ul id="nav">
+
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/about.html">
+ <span class="en">The Google Play Opportunity</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/start.html">
+ <span class="en">Get Started with Publishing</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/developer-console.html">
+ <span class="en">Developer Console</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/edu/about.html">
+ <span class="en">Google Play for Education</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/edu/start.html">
+ <span class="en">Get Started with Education</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/googleplay/edu/faq.html">
+ <span class="en">Education FAQ</span>
+ </a>
+ </div>
+ </li>
+</ul>
+
+
+<script type="text/javascript">
+<!--
+ buildToggleLists();
+ changeNavLang(getLangPref());
+//-->
+</script>
+
diff --git a/docs/html/distribute/googleplay/index.jd b/docs/html/distribute/googleplay/index.jd
new file mode 100644
index 0000000..a215930
--- /dev/null
+++ b/docs/html/distribute/googleplay/index.jd
@@ -0,0 +1,45 @@
+page.title=Google Play
+section.landing=true
+nonavpage=true
+
+@jd:body
+
+ <p>
+ The premier store for distributing Android apps and games, with global reach
+ and <span style="white-space:nowrap;">tools to
+ help you gain traction in the marketplace.</span>
+</p>
+
+<div class="dynamic-grid">
+
+ <h3>Overview</h3>
+
+ <div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/gp/gplanding"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x6"
+ data-maxResults="3">
+ </div>
+
+ <h3>Google Play for Education</h3>
+
+ <div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/gp/gpfelanding"
+ data-cardSizes="6x6"
+ data-maxResults="3">
+ </div>
+
+ <h3>Related resources</h3>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="type:youtube+tag:growth"
+ data-cardSizes="6x3"
+ data-maxResults="3">
+ </div>
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="type:blog+tag:googleplay"
+ data-cardSizes="6x3"
+ data-maxResults="3">
+ </div>
+
+</div>
diff --git a/docs/html/distribute/googleplay/policies/ads.jd b/docs/html/distribute/googleplay/policies/ads.jd
deleted file mode 100644
index f2fb0f8..0000000
--- a/docs/html/distribute/googleplay/policies/ads.jd
+++ /dev/null
@@ -1,350 +0,0 @@
-page.title=Ads
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
- <h2>In This Document</h2>
- <ol>
- <li><a href="#content-maturity">Content and Maturity</a></li>
- <li><a href="#context">Context and Behavior</a></li>
- <li><a href="#disclosure" style="clear:right">Disclosure</a></li>
- <li><a href="#impersonation">Impersonation of System UI</a></li>
- <li><a href="#adwalls">Adwalls and Interstitial Ads</a></li>
- <li><a href="#interfering" style="clear:right;">Interference with Apps and Third-Party Ads</a></li>
- </ol>
-
- <h2>More Resources</h2>
- <ol>
- <li><a href="http://play.google.com/about/developer-content-policy.html" target="_policies">Developer Program Policies</a></li>
- <li><a href="http://www.android.com/us/developer-distribution-agreement.html#showlanguages" target="_policies">Developer Distribution Agreement</a></li>
- <li><a href="http://support.google.com/googleplay/android-developer/answer/188189" target="_policies">Maturity Ratings</a></p>
- </ol>
-</div>
-</div>
-
-<p>
- Google Play policies guide how you can use ads in your apps, to help ensure
- the best experience for users visiting and downloading apps from the store.
-</p>
-
-<p>
- In general, for the purposes of policy, the content of ads displayed by your
- app is considered part of your app. As an app developer, it is your
- responsibility to ensure that the content, context, and behavior of ads in
- your apps conforms to Google Play policies.
-</p>
-
-<p>
- Before you publish, make sure you understand Google Play ad policies and how
- to display ads in conformance with those policies. The sections below
- highlight best practices and common examples to help you avoid the most
- common types of policy violations.
-</p>
-
-<p>
- For more information about Google Play policies that apply to your apps and
- content, please see the <a href=
- "http://play.google.com/about/developer-content-policy.html" target=
- "_policies">Developer Program Policies</a> and <a href=
- "http://play.google.com/about/developer-distribution-agreement.html" target=
- "_policies">Developer Distribution Agreement</a>.
-</p>
-
-
-<h2 id="content-maturity">Content and Maturity</h2>
-
-<div class="example-block bad">
- <div class="heading">Ad maturity exceeds app</div>
- <img src="{@docRoot}images/gp-policy-ads-maturity-violation.png">
-</div>
-
-<p>
- From a policy perspective, ads shown in your app are part of your content
- and your app is responsible for any violations. If an ad shown in your app
- violates Google Play policies, your app may be suspended or your developer
- account terminated.
-</p>
-
-<p>
- For this reason, it's important for you to be be aware of what ads will be
- displayed in your app and to manage the ads content according to Google Play
- policies. Here are some guidelines:
-</p>
-
-<ul>
- <li>
- <strong>Ads must not violate Content Policy</strong>—Ads in
- your app must not violate the terms of Google Play’s Content Policy,
- including those concerning illegal activities, violence, sexually
- explicit content, or privacy violations.
- </li>
- <li>
- <strong>Ads maturity must be consistent with your app's
- maturity</strong>—Content shown in your ads must be consistent
- with the app’s maturity rating in Google Play. Especially, ads content
- should never exceed your app's maturity rating, even if the ads content
- by itself complies with general policies.
- </li>
-</ul>
-
-<p>
- In the example at right, the app's maturity rating is set to
- "Everyone", which is the lowest maturity level on Google Play. By choosing
- the "Everyone" maturity level, the developer is declaring that all of the
- content in the app, <em>including ads</em>, is suitable for all users
- regardless of age.
-</p>
-
-<p>
- The example app violates Google Play policies by displaying ad content with a
- higher maturity level—ad content showing gambling, profanity, user
- location, suggestive content, or content from another app with higher
- maturity exceeds the "Everyone" maturity rating. Because the ad's
- maturity is higher than the app's maturity level, the app itself is in
- violation of policy. To correct the problem, the developer must either
- restrict ads content to "Everyone" level or raise the app's maturity rating.
-</p>
-
-<p>
- For detailed information about how to choose the appropriate maturity level
- for your app, or to assess the maturity requirement of ads in your app, see
- <a href=
- "http://support.google.com/googleplay/android-developer/answer/188189"
- target="_policies">Rating your application content for Google Play</a>.
-</p>
-
-
-<h2 id="context">Context and Behavior</h2>
-
-<p>
- If your app displays ads, it should do so in ways that do not interrupt users,
- mislead them into clicking on ads, or make changes outside the app without
- the user's knowledge or consent. Here are some guidelines:
-</p>
-
-<ul>
- <li>
- <strong>Display your ads within your UI</strong>—If possible,
- display ads only within your app's UI. This leads to a better user
- experience and helps avoid policy violations
- </li>
-
- <li>
- <strong>Don't make changes outside of the app without consent</strong>
- —Ads must not make changes outside of the app without the user's
- full knowledge and consent.
- </li>
-
- <li>
- <div class="example-block bad" style="width:360px;margin:1em 0 0 2em;">
- <div class="heading">Ads through system-level notifications</div>
- <img src="{@docRoot}images/gp-policy-ads-notif-attr-violation.png">
- </div>
- <div class="example-block good" style="width:360px;margin:.5em 0 0 2em;">
- <div class="heading">Notification that's part of the app's feature set</div>
- <img src="{@docRoot}images/gp-policy-ads-notif-attr.png">
- </div>
- <strong>Changes outside the app must be reversible</strong>—If an
- ad makes changes outside the app as described above, the changes (and
- origin app) must be evident and easily reversible. For example, the user
- must be able to locate and reverse the changes by adjusting settings,
- changing ad preferences in the app, or uninstalling the app altogether.
- </li>
-
- <li>
- <strong>Notification ads are prohibited</strong>—Your app
- should not create system-level <a href=
- "{@docRoot}design/patterns/notifications.html">notifications</a>
- containing ads unless the notifications are part of the explicit
- feature set of the app.
- </li>
-
- <li>
- <strong>Don't add shortcuts, bookmarks, or icons</strong>—Your app
- and its ads must not add homescreen shortcuts, browser bookmarks, or icons
- on the user's device as a service to third parties or for advertising
- purposes.
- </li>
-</ul>
-
-<p>
- Above right is an example notification ad that violates ad policy by
- providing ads through system level notification.
-</p>
-<p>
- Below right, the notification ad complies with policy because the
- nature of the notification is part of the explicit feature set of the app,
- and it also provides attribution of the origin app.
-</p>
-
-<h2 id="disclosure" style="clear:right">Disclosure of Ads to Users</h2>
-
-<p>
- It's important to sufficiently disclose to users how your app will use ads.
- You must make it easy for users to understand what ads will be shown in your
- app, where they will be shown, and what the associated behaviors are, if any.
- Further, you should ask for user consent and provide options for managing ads
- or opt-out. Here are some guidelines:
-</p>
-
-<ul>
- <li>
- <strong>Tell users about your ads</strong>—Create a simple,
- complete disclosure that tells users how your app uses ads, where the ads
- are shown, and how they can manage ad options. Take common-sense steps to
- make the disclosure as clear as possible.
- </li>
-
- <li>
- <div class="example-block good" style="width:213px;margin-left:.5em;">
- <div class="heading">Disclosure in Terms</div>
- <img src="{@docRoot}images/gp-policy-ads-terms.png">
- </div>
- <div class="example-block bad" style="width:213px;">
- <div class="heading">Disclosure is hidden</div>
- <img src="{@docRoot}images/gp-policy-ads-eula-violation.png">
- </div>
- <strong>Make sure users know</strong>—Present your ads disclosure
- is an easy-to-see location, rather than hiding it where users are not
- likely to find it.
- </li>
-
- <li>
- <strong>Ask for consent (opt-in) at launch</strong>—Where possible,
- include your ads disclosure in the app description as well as in an Ads
- Terms, End User License Agreement (EULA), or similar document. Display the
- terms at first launch and ask for the user's consent before continuing to
- the app.
- </li>
-</ul>
-
-<p>
- A recommended approach is to provide an ads disclosure in an End-User License
- Agreement (EULA). The disclosure should be clear and succinct and displayed
- in a modal dialog that asks the user to agree to the terms before using the
- app.
-</p>
-
-<p>
- Above left is an example of ads disclosure that is hidden in a long EULA. The
- disclosure information itself is not clearly indicated in the document text
- and it's not visible unless the user happens to scroll down far enough in the
- EULA.
-</p>
-<p>
- Above right shows an approach that presents the disclosure in an obvious
- and clear manner in a EULA and a dedicated Terms agreement.
-</p>
-
-
-<h2 id="impersonation">Impersonation of System UI</h2>
-
-
-
-
-
-
-
-
-<p>
- Ads must not simulate or impersonate the user interface of any app, or
- notification and warning elements of an operating system. Your app must not
- display any ad that attempts to impersonate or represent a
- system function or UI component. If such an ad is displayed in your app, your
- app will be in violation of policy and subject to suspension. Here are some
- guidelines:
-</p>
-
-<ul>
- <li>
- <strong>No fake app UI notifications</strong>—Ads should not impersonate
- the interface of an application for advertising purposes.
- </li>
- <li>
- <strong>No fake system dialogs or warnings</strong>—Any ad that
- presents itself as a system dialog or warning and asks for user input is in
- violation of Google Play policies.
- </li>
-
- <li>
- <strong>No fake app updates</strong>—Ads should not impersonate
- system UI for app updates.
- </li>
-</ul>
-
-<div class="example-block bad" style="width:213px;">
- <div class="heading">Ad impersonates app UI</div>
- <img src="{@docRoot}images/gp-policy-ads-impersonate-violation-app-ui.png">
-</div>
-<div class="example-block bad" style="width:213px;">
- <div class="heading">Ad impersonates system warning</div>
- <img src="{@docRoot}images/gp-policy-ads-impersonate-violation-sys-warning.png">
-</div>
-<div class="example-block bad" style="width:213px;">
- <div class="heading">Ad impersonates system dialog</div>
- <img src="{@docRoot}images/gp-policy-ads-impersonate-violation.png">
-</div>
-<p style="clear:both">
- Above are examples of impersonations — a pop-up ad that impersonates a
- system dialog, an ad that impersonates a system warning, and an ad that impersonates
- an application UI. All of these are in violation of policy.
-</p>
-
-
-<h2 id="adwalls">Adwalls and Interstitial Ads</h2>
-
-<p>
- If your app uses adwalls to drive affiliate traffic, those adwalls must not
- force the user to click on ads or submit personal information for advertising
- purposes before using the app.
-</p>
-
-<p>
- Forcing a user action in an adwall is not only a poor user experience, it is
- a violation of Google Play policies.
-</p>
-
-<p>
- For this reason, <strong>all adwalls must give the user the option to
- cancel</strong> or otherwise dismiss the ad without penalty. Interstitial ads
- may only be displayed inside of the app they came with. Forcing the user to
- click on ads or submit personal information for advertising purposes in order
- to fully use an app is prohibited.
-</p>
-
-<div class="example-block bad" style="width:213px;">
- <div class="heading">Interstitial, modal ad</div>
- <img src="{@docRoot}images/gp-policy-ads-interstitial-violation.png">
-</div>
-
-<div class="example-block good" style="width:213px;">
- <div class="heading">Adwall lets user cancel</div>
- <img src="{@docRoot}images/gp-policy-ads-paywall.png">
-</div>
-
-<div class="example-block bad" style="width:213px;">
- <div class="heading">Adwall forces user action</div>
- <img src="{@docRoot}images/gp-policy-ads-paywall-violation.png">
-</div>
-
-<p style="clear:both">
- At left is an example of an app that requires the user to click through the
- ad to fully use the app. This is a violation of policy.
-</p>
-
-<p>
- The center example demonstrates an adequate option to let the user dismiss
- the ad wall easily by cancelling. This is not a violation of policy.
-</p>
-
-<p>
- At right is an example of an interstitial, modal ad that is displayed outside
- of the app. This is a violation of policy.
-</p>
-
-<h2 id="interfering" style="clear:right;">Interfering with Apps and Third-Party Ads</h2>
-
-<p>
- Ads associated with your app <strong>must not interfere</strong> with other
- apps or their ads.
-</p>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/policies/index.jd b/docs/html/distribute/googleplay/policies/index.jd
deleted file mode 100644
index fb46055..0000000
--- a/docs/html/distribute/googleplay/policies/index.jd
+++ /dev/null
@@ -1,59 +0,0 @@
-page.title=Google Play Policies and Guidelines
-page.metaDescription=Guidelines and tips for creating apps that comply with Google Play content and distribution policies.
-@jd:body
-
-<p>
- Before publishing your apps on Google Play, take a few minutes to read and
- understand the content and distribution policies that apply to all apps
- in the store. These policies help to keep Android and Google Play an enjoyable
- and trusted platform for content consumers and developers alike.
-</p>
-
-<p>
- The documents below highlight important policy areas and provide tips to help
- you create policy-compliant apps. You'll also find examples and guidance on common
- policy questions that can help your app stay clear of practices that can result in
- low ratings or even suspensions from the store.
-</p>
-
-<p>
- For complete information about Google Play policies, please see the full
- <a href="http://play.google.com/about/developer-content-policy.html" target=
- "_policies">Developer Program Policies</a> and <a href=
- "http://play.google.com/about/developer-distribution-agreement.html" target=
- "_policies">Developer Distribution Agreement</a> documents.
-</p>
-
-<div class="vspace size-1">
-
-</div>
-<div class="layout-content-row">
- <div class="layout-content-col span-4">
- <h4>
- Spam
- </h4>
- <p>
- Make sure that your app does not present content that is unwanted,
- deceptive, repetitive, or unrelated to the core function of the app.
- </p><a href="{@docRoot}distribute/googleplay/policies/spam.html">Learn more »</a>
- </div>
- <div class="layout-content-col span-4">
- <h4>
- Intellectual Property
- </h4>
- <p>
- Tips and examples of how to use intelletual property (IP) properly,
- including when to ask permission to use someone else's copyright or
- trademark.
- </p><a href="{@docRoot}distribute/googleplay/policies/ip.html">Learn more »</a>
- </div>
- <div class="layout-content-col span-4">
- <h4>
- Ads
- </h4>
- <p>
- Make sure that the ads displayed in your app follow the Google Play Content
- Policy and meet the maturity rating that you have selected for your app.
- </p><a href="{@docRoot}distribute/googleplay/policies/ads.html">Learn more »</a>
- </div>
-</div>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/policies/ip.jd b/docs/html/distribute/googleplay/policies/ip.jd
deleted file mode 100644
index 0d1f68d..0000000
--- a/docs/html/distribute/googleplay/policies/ip.jd
+++ /dev/null
@@ -1,345 +0,0 @@
-page.title=Intellectual Property
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
- <h2>In This Document</h2>
- <ol>
- <li><a href="#copyright">Copyright Infringement</a></li>
- <li><a href="#impersonation">Impersonation</a></li>
- <li><a href="#trademarks">Trademark Infringement</a></li>
- <li><a href="#other">DDA 4.4 Prohibited Actions</a></li>
- </ol>
-
- <h2>More Resources</h2>
- <ol>
- <li><a href="http://play.google.com/about/developer-content-policy.html"
- target="_policies">Developer Program Policies</a></li>
- <li><a href="http://www.android.com/us/developer-distribution-agreement.html#showlanguages"
- target="_policies">Developer Distribution Agreement</a></li>
- </ol>
-</div>
-</div>
-
-<p>
- Google Play policies protect your intellectual property (IP) as well as that
- of other app developers and content creators in the store. The policies and
- their enforcements help ensure proper use of copyright, trademarks, and
- developer identity in Google Play.
-</p>
-
-<p>
- As an app developer, these IP policies benefit you. At the same time, it's
- your responsibility to ensure that your app does not violate the IP of other
- developers or content creators. Violations of IP-related policy may result in
- suspension of your apps from the store and termination of your developer
- account.
-</p>
-
-<p>
- This document introduces several key areas of IP-related policy that you
- should understand before publishing on Google Play. In each area you'll find
- best practices and examples to help you avoid common types of mistakes and
- violations.
-</p>
-
-<p>
- For more information about Google Play policies that apply to your apps and
- content, please see the <a href=
- "http://play.google.com/about/developer-content-policy.html" target=
- "_policies">Developer Program Policies</a> and <a href=
- "http://play.google.com/about/developer-distribution-agreement.html" target=
- "_policies">Developer Distribution Agreement</a>.
-</p>
-
-
-
-<h2 id="copyright">Copyright Infringement</h2>
-
-<p>
- Copyright is the legal right granted to an author or creator for a literary,
- dramatic or artistic piece of work. As soon as you create an original piece
- of work and fix it in a tangible medium, the work is automatically protected
- by copyright law and you are the owner of the copyright. Likewise, when other
- people create content, they may own the copyrights for those works.
-</p>
-
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>How to report infringements</h2>
-<p>If you feel your copyright is being infringed, you may file a Digital Millenium
- Copyright Act (DMCA) request. Please see <a
- href="http://support.google.com/bin/request.py?&product=androidmarket&contact_type=lr_dmca"
- target="_policies">copyright procedures</a> for more information.</p>
-</div>
-</div>
-
-<p>
- Copyright infringement is an improper or unauthorized use of a copyrighted
- work. If you publish an app in Google Play that uses another party's copyrighted
- works improperly or without permission, your apps can be suspended and your
- developer account terminated.
-</p>
-
-<p>
- As you design your app and prepare for publishing, make sure to review Google
- Play policies and analyze all of your content. If your app uses or links to
- another party's original work, make sure that your app is not infringing on
- copyright. Not all uses of another party’s work are infringements on
- copyright, and the rules vary by country and can be complex.
-</p>
-
-<p>
- If you are unsure whether your use of another party's work infringes on a
- copyright, consider getting legal advice before publishing, or simply request
- permission to use the work from the copyright owner.
-</p>
-
-<p>
- Here are some guidelines to help you avoid copyright infringement policy
- violations:
-</p>
-
-<ul>
- <li>
- <strong>Respect copyright laws</strong>—Do not let your app infringe
- on the copyrights of others. That includes linking to other apps or web
- sites that contain obviously infringing material (please refer to the <a href="
- {@docRoot}distribute/googleplay/policies/spam.html#webview-spam">Spam in WebViews</a> guidelines), and using icons or images that are obvious infringements.
- </li>
-
- <li>
- <strong>Know your app's content</strong>—Before you publish, look
- for content that may be protected by trademark or copyright in your app
- and get legal advice if necessary. Protected work could typically include
- product names, brands, images, music, and similar works.
- </li>
-
- <li>
- <strong>Create original work</strong>—If you’re not sure whether
- something will violate another party's copyright, the safest approach is to
- create something that's completely original, such as images or audio
- that you’ve created yourself. When you create your own original content,
- you rarely have to worry about infringing on existing copyright.
- </li>
-
- <li>
- <strong>Ask permission to use copyrighted work</strong>—If you want
- to use another party's copyrighted work in your app, you should ask for
- permission from the work's creator or copyright owner and include
- appropriate copyright attribution.
- </li>
-</ul>
-
-<p>
- A common misunderstanding is believing that your app may use copyrighted
- content without permission, provided that you clearly indicate that your app
- is not the "official" app that readers may be familiar with. That is not the
- case. Even if you let users know that your app is "unofficial", it still
- violates Google Play policies if it uses or links to copyrighted content
- without permission. Also, this type of "unofficial" app may violate <a
- href="#impersonation">impersonation policies</a>.
-</p>
-
-<p>
- The example app below shows an app that uses screenshots/images of known
- artists without their authorization and lists popular songs. The combination
- of these may induce users to download music ringtones that infringe on
- copyright. This is a violation of Google Play policy.
-</p>
-
-<div class="example-block bad" style="width:100%;float:none;margin:.5em auto 2em 0;">
- <div class="heading">Images and downloads that violate copyright</div>
- <img src="{@docRoot}images/gp-policy-ip-copyright-violation.png">
-</div>
-
-
-<h2 id="impersonation">Impersonation</h2>
-
-<p>
- Impersonation is when an app attempts to imply a relationship to another app
- or developer, where no relationship actually exists.
-</p>
-
-<p>
- For example, if your app displays the brand, icon, or title from another app
- in order to get to users to download your app, you are leading users to
- believe that your app is developed by the same entity as the other app and
- offers similar content or experience. This is an impersonation of the other
- app and developer, and it is a violation of Google Play policy. If you
- publish apps that violate impersonation policies, your apps can be suspended
- and your developer account terminated.
-</p>
-
-<p>
- No matter what type of app you offer or what your motivation, don’t try to
- imply an endorsement or relationship to another company or product where none
- exists. Don’t try to establish your app as the "official" version of another
- party's work by prominently featuring their brand names or trademarks in your
- app title or description.
-</p>
-
-<p>
- Even if your app description states that your app is an "unofficial" version,
- the use of the other app's branding, trademarks, and other content still can
- violate policy by presenting content that isn’t yours.
-</p>
-
-<p>
- Here are some guidelines:
-</p>
-
-<ul>
- <li>
- <strong>Don't pretend to be someone else</strong>— Don't represent
- that your content is produced by another company or organization if that is
- not the case.
- </li>
-
- <li>
- <strong>Don't support infringing sites or apps</strong>— Don't divert
- users or provide links to any other site that mimics Google Play or
- represents itself as another application or service.
- </li>
-
- <li>
- <strong>Don't use another app's branding</strong>— Don’t try to pass
- off your app as the official version of someone else’s property by using a
- person or entity (or brand) name in your app title or description.
- </li>
-</ul>
-
-<p>
- Below is an example of an "unofficial" app that violates Google Play policy
- by impersonating another company and an existing product. Specifically:
-</p>
-
-<ul>
- <li>The example app has a name and icon that appear to be impersonating an
- existing product.
- </li>
-
- <li>The example developer name implies an endorsement or relationship to
- another company and their products where none exists.
- </li>
-</ul>
-
-<div class="example-block bad" style="width:100%;float:none;margin:.5em auto 2em 0;">
- <div class="heading">App name, icon, and developer name that impersonate another</div>
- <img src="{@docRoot}images/gp-policy-ip-impersonation-violation.png">
-</div>
-
-
-<h2 id="trademarks">Trademark Infringement</h2>
-
-<p>
- A trademark is a brand that uniquely identifies a product and distinguishes
- it from other products. It can be a word, name, symbol, or combination of
- those that is intended to identify the source of the product. A trademark is
- specifically acquired by a company or other entity through a legal process
- and once acquired gives the owner exclusive rights to the trademark usage.
-</p>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>How to report infringements</h2>
-<p>If you feel your trademark is being infringed, you can request a content review.
-See <a href="http://support.google.com/bin/static.py?&ts=1114905&page=ts.cs"
-target="_policies">Removing content from Google</a> for more information.</p>
-</div>
-</div>
-
-<p>
- Trademark infringement is improper or unauthorized use of a trademark. Google
- Play policies prohibit apps that infringe trademarks. If you publish apps in
- Google Play that use another party's trademarks, your apps can be suspended
- and your developer account terminated.
-</p>
-
-<p>
- As you design your app and prepare for publishing, make sure to review Google
- Play policies and analyze all of your content. If your app uses a trademark
- not owned by you, or if you are not sure whether a brand is a trademark, you
- should get legal advice before publishing. As with copyright, the rules vary
- by country and can be complex.
-</p>
-
-<p>
- Here are some guidelines for avoiding trademark infringement policy
- violations:
-</p>
-
-<ul>
- <li>
- <strong>Understand and follow trademark laws</strong>—Don't let your
- app infringe on the trademarks of others.
- </li>
-
- <li>
- <strong>Know your app's content</strong>—Before you publish, look for
- brands and potential trademarks used in your app and store listing and get
- legal advice if necessary.
- </li>
-
- <li>
- <strong>Use a distinct name</strong>—Don't give your app a name that
- is confusingly similar to another company's trademark.
- </li>
-
- <li>
- <strong>Don't use trademarks to imply a relationship</strong>—Don't
- describe your app using another company's trademarks in a way that implies
- an endorsement by or affiliation with the other company.
- </li>
-
- <li>
- <strong>Use a distinct app icon and logo</strong>—Don't use a
- modified version of another company’s trademarked logo.
- </li>
-</ul>
-
-<p>
- A common misunderstanding is believing that your app may use a brand or
- trademark without permission, provided you clearly indicate that the app is
- not the "official" or original app. That is not the case. Even if you let
- users know that your app is "unofficial", it still violates Google Play
- policies if it uses another party's trademarks. Also, this type of
- "unofficial" app may violate <a href="#impersonation">impersonation
- policies</a>.
-</p>
-
-<p>
- Below is an example app that violates Google Play policies by infringing on
- another party's trademarks. Specifically:
-</p>
-
-<ul>
- <li>The example app name is confusingly similar to another party's trademark.</li>
- <li>The example app icon is a modified version of a another party's logo.</li>
-</ul>
-
-<div class="example-block bad" style="width:100%;float:none;margin:.5em auto 2em 0;">
- <div class="heading">App name and icon that infringe trademarks</div>
- <img src="{@docRoot}images/gp-policy-ip-trademark-violation.png">
-</div>
-
-
-<h2 id="other">DDA 4.4 Prohibited Actions</h2>
-
-<p>
- When you publish an app on Google Play, you agree to the terms of the
- Developer Distribution Agreement (DDA). Section 4.4 of the DDA prohibits certain
- types of actions on your part. For reference, you agree that you will not
- engage in any activity with the Market, including the development or
- distribution of Products, that interferes with, disrupts, damages, or
- accesses in an unauthorized manner the devices, servers, networks, or other
- properties or services of any third party including, but not limited to,
- Android users, Google or any mobile network operator.
-</p>
-
-<p>
- For details, please refer to the complete <a href=
- "http://play.google.com/about/developer-distribution-agreement.html" target=
- "_policies">Developer Distribution Agreement</a>.
-</p>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/policies/spam.jd b/docs/html/distribute/googleplay/policies/spam.jd
deleted file mode 100644
index f4d303c..0000000
--- a/docs/html/distribute/googleplay/policies/spam.jd
+++ /dev/null
@@ -1,421 +0,0 @@
-page.title=Spam
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
- <h2>In This Document</h2>
- <ol>
- <li><a href="#keyword-spam">Spam in App Title and Description</a></li>
- <li><a href="#ratings">Spam in Ratings and Reviews</a></li>
- <li><a href="#webview-spam">Spam in WebViews</a></li>
- <li><a href="#wizard-spam">Spam from Wizards</a></li>
- <li><a href="#message-spam">Spam in Messaging</a></li>
- </ol>
-
- <h2>More Resources</h2>
- <ol>
- <li><a href="http://play.google.com/about/developer-content-policy.html" target="_policies">Developer Program Policies</a></li>
- <li><a href="http://play.google.com/about/developer-distribution-agreement.html" target="_policies">Developer Distribution Agreement</a></li>
- </ol>
-</div>
-</div>
-
-<p>
- Google Play policies prohibit spam, to help ensure the best experience for
- Android users. Please do not publish deceptive, repetitive, or irrelevant
- content on Google Play. Not only will it lower your app's rating and cause
- negative reviews, it can result in your app being suspended or your developer
- account terminated.
-</p>
-
-<p>
- As an app developer, it is your responsibility to ensure that your apps are
- free from spam and conform to the Google Play policies highlighted in this
- document. Before you publish, make sure that you understand what is
- considered spam on Google Play and check your apps for violations, even those
- that might be inadvertent. The sections below highlight best practices and
- common spam examples to help you avoid the most common types of policy
- violations.
-</p>
-
-<p>
- For more information about Google Play policies that apply to your apps and
- content, please see the <a href=
- "http://play.google.com/about/developer-content-policy.html" target=
- "_policies">Developer Program Policies</a> and <a href=
- "http://play.google.com/about/developer-distribution-agreement.html" target=
- "_policies">Developer Distribution Agreement</a>.
-</p>
-
-
-<h2 id="keyword-spam">Spam in App Title and Description</h2>
-
-<p>
- When you publish an app on Google Play, you should pay special attention to
- the app's title and description in its store listing. Those fields are
- important because they make your app recognizable to users, and they help to
- drive downloads by highlighting what's great about your app. A memorable
- title and compelling description are essential to effective marketing, but
- you should realize that these must follow Google Play policies, just as your
- app content must do.
-</p>
-
-<p>
- Many developers unknowingly violate spam policy in their app titles and
- descriptions in ways that are easy to avoid. In general, you can
- avoid spam violations in your app title and description by following these
- best practices:
-</p>
-
-<ul>
- <li>
- <strong>Highlight what's great about your app</strong>—Share
- interesting and exciting facts about your app with users. Help users
- understand what makes your app special.
- </li>
-
- <li>
- <strong>Describe your app accurately</strong>—Make sure the title
- and description describe the app function and user experience accurately.
- </li>
-
- <li>
- <strong>Don't use repetitive keywords</strong>—Avoid keywords that
- are repetitive or excessive.
- </li>
-
- <li>
- <strong>Don't include unrelated keywords or references</strong> —
- Your description should not be loaded with irrelevant keywords in an
- attempt to manipulate ranking or relevancy.
- </li>
-
- <li>
- <strong>Keep it brief</strong>—Keep the description succinct and
- straightforward. Shorter descriptions tend to give a better user experience
- on devices with smaller displays. Excessive length, detail, or repetition
- can violate spam policy.
- </li>
-</ul>
-
-<p>
- Here's an example app title and description that follows best practices and
- does not violate Google Play spam policies.
-</p>
-
-<div class="example-block good" style="width:100%;float:none;margin:.5em auto 2em 0;">
- <div class="heading">Best practice: App description</div>
- <table>
- <tr>
- <td>App Title:</td>
- <td>Kids puzzle: Identify Turtles</td>
- </tr>
- <tr>
- <td style="white-space:nowrap;">App Description:</td>
- <td>
- <p>This is the perfect app to have a good time with your children. It
- is designed to help kids learn different species of turtles through
- cute pictures and amusing puzzle games.</p>
- <p>The rules of Kids puzzle: Identify Turtles are quite simple. Have
- your child drag images around the screen to fit them into the shaded
- region. Phonics is also utilized, as a child can also tap the word
- below the image and hear the name pronounced.</p>
- </td>
- </tr>
- </table>
-</div>
-
-<p>
- The sections below highlight common types of policy violations in an app
- title and description, illustrated with variations on the best practice
- example.
-</p>
-
-<h3 id="repetitive-keywords">Repetitive keywords</h3>
-
-<p>
- Your app description should not include keywords that are repetitive or excessive.
-</p>
-
-<div class="example-block bad" style="width:100%;float:none;margin:.5em auto 2em 0;">
- <div class="heading">Description includes repetitive keywords</div>
- <table>
- <tr>
- <td>App Title:</td>
- <td>Kids puzzle: Identify Turtles</td>
- </tr>
- <tr>
- <td style="white-space:nowrap;">App Description:</td>
- <td>
- <p>This is the perfect app to have a good time with your children. It is
- designed to help kids learn different species of turtles through cute
- pictures and amusing puzzle games.</p>
- <p>The rules of Kids puzzle: Identify Turtles are quite simple. Have your
- child drag images around the screen to fit them into the shaded region.
- Phonics is also utilized, as a child can also tap the word below the image
- and hear the name pronounced.</p>
- <p style="border:2px solid red;">KEYWORDS: game, games, fun, funny, child,
- children, kid, kids, puzzle, puzzle games, sound, turtle, turtles, sea turtles,
- turtles, turtle, turtles, tortoise, tortoises, tortoise, tortoise, turtles,
- turtles, turtles, turtles, tortoises, tortoise</p>
- </td>
- </tr>
- </table>
-</div>
-
-<h3 id="unrelated-keywords">Unrelated keywords or references</h3>
-
-<p>
- The description should not be loaded with irrelevant keywords in an attempt
- to manipulate ranking or relevancy in Google Play search results.
-</p>
-
-<p>
- For example, if your app has nothing to do with Lady Gaga, then she shouldn’t
- be included in your description. Also, do not add highly searched, irrelevant
- keywords that are unrelated to the function of the app. This is in breach of
- policy.
-</p>
-
-<div class="example-block bad" style="width:100%;float:none;margin:.5em auto 2em 0;">
- <div class="heading">Description includes unrelated keywords or references</div>
- <table>
- <tr>
- <td>App Title:</td>
- <td>Kids puzzle: Identify Turtles</td>
- </tr>
- <tr>
- <td style="white-space:nowrap;">App Description:</td>
- <td>
- <p>This is the perfect app to have a good time with your children. It is designed to
- help kids learn different species of turtles through cute pictures and amusing puzzle
- games.</p>
- <p>The rules of Kids puzzle: Identify Turtles are quite simple. Have your child drag
- images around the screen to fit them into the shaded region. Phonics is also utilized,
- as a child can also tap the word below the image and hear the name pronounced.</p>
- <p style="border:2px solid red;">This game is as addictive as Angry Birds, more social
- than Facebook and Twitter, and has a soundtrack reminiscent of Katy Perry and Lady
- Gaga.</p>
- <p style="border:2px solid red;">KEYWORDS: Angry Birds, Facebook, Twitter, Katy Perry,
- Lady Gaga</p>
- </td>
- </tr>
- </table>
-</div>
-
-<h3 id="excessive-detail">Excessive detail, references to your other apps</h3>
-
-<p>
- Your app description should avoid excessive detail and references to your
- other apps or products. For example, you should not list all of the details
- of content included in the app or its various components, as shown in the
- example below. Also, the description should not include any references to
- other apps you’ve published.
-</p>
-
-<div class="example-block bad" style="width:100%;float:none;margin:.5em auto 2em 0;">
- <div class="heading">Description includes excessive detail, references to your other apps</div>
- <table>
- <tr>
- <td>App Title:</td>
- <td>Kids puzzle: Identify Turtles</td>
- </tr>
- <tr>
- <td style="white-space:nowrap;">App Description:</td>
- <td>
- <p>This is the perfect app to have a good time with your children. It is designed
- to help kids learn different species of turtles through cute pictures and amusing
- puzzle games.</p>
- <p>The rules of Kids puzzle: Identify Turtles are quite simple. Have your child
- drag images around the screen to fit them into the shaded region. Phonics is also
- utilized, as a child can also tap the word below the image and hear the name
- pronounced.</p>
- <p style="border:2px solid red;">Turtles included in the app: Alligator
- Snapping Turtle, Asian Box Turtle, Bog Turtle, Common Musk Turtle, Common Snapping
- Turtle, Diamondback Terrapin, Eastern Box Turtle, Eastern Mud Turtle, Eastern Painted
- Turtle, False Map Turtle, Florida Pond Cooter, Florida Softshell Turtle, Green Sea
- Turtle, Map Turtle, Matamata Ornate Box Turtle, Red-bellied Side-necked Turtle,
- Red-eared Slider, Smooth Softshell Turtle, Spiny Softshell Turtle, Spotted Turtle,
- Western Painted Turtle, Wood Turtle, Yellow-bellied Slider</p>
- <p style="border:2px solid red;">If you like this app try our other free apps:<br />
- ★ Fun Zoo<br />
- ★ CD Guns<br />
- ★ Dessert House<br />
- ★ Playground<br />
- ★ 578 Weapons</p>
- </td>
- </tr>
- </table>
-</div>
-
-
-<h2 id="ratings">Spam in Ratings and Reviews</h2>
-
-<div class="example-block bad" style="width:440px;">
- <div class="heading">Inappropriate content in a review</div>
- <img src="{@docRoot}images/gp-policy-spam-negreview.png">
-</div>
-
-<p>
- Ratings and reviews are benchmarks of app quality and users depend on them to
- be authentic and relevant. As an app developer, you should not attempt to
- artificially influence your app's ratings and reviews or those of your
- competitor, such as by posting fake ratings or reviews or including spam
- content in app reviews. The sections below provide guidelines for rating and
- reviewing apps.
-</p>
-
-<p>
- So that you can stay in touch with any issues that users are having with your
- app, you should read through your ratings and reviews on a regular basis. If
- you choose to reply to reviews, make sure to keep your reply focused on the
- actual issues raised in the user's comments and do not ask for a higher
- rating.
-</p>
-
-<p>
- If you see an app or developer reply that doesn’t follow these guidelines,
- you can report it. See <a href=
- "http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113417&topic=2364761&ctx=topic"
- target="_policies">Inappropriate content in comments and applications</a> for
- more information.
-</p>
-
-<div class="example-block bad" style="margin-top:3em;width:213px;">
- <div class="heading">Soliciting ratings</div>
- <img src="{@docRoot}images/gp-policy-spam-reqrating.png">
-</div>
-
-<h3 id="fake-ratings">Fake or inappropriate ratings and reviews</h3>
-
-<p>
- To help ensure the quality of ratings and reviews, Google Play policies limit
- the ways that individuals can use ratings and reviews. In particular, note
- that it is a violation of policy to use ratings and reviews to influence the
- placement of any app in Google Play.
-</p>
-
-<p>
- As an app developer, make sure that you follow these guidelines:
-</p>
-
-<ul>
- <li>
- <strong>Don't try to manipulate ratings</strong>—Do not engage in
- attempts to manipulate the ratings, reviews, or ranking of your apps,
- either directly or indirectly, or by manipulating the ratings of your
- competitors. Do not attempt to artificially boost reviews, ratings, or
- installs through any means.
- </li>
-
- <li>
- <strong>Don't solicit ratings through incentives</strong>—Do not
- offer users any incentives to rate your app, such as offering rewards of
- any kind or tying app functionality to rating.
- </li>
-
- <li>
- <strong>Don't rate apps multiple times</strong>—Do not review or
- rate any app multiple times in an attempt to influence its placement in
- Google Play.
- </li>
-
- <li>
- <strong>Don't add improper content to reviews</strong>—Do not
- include affiliate, coupon, game codes, email addresses, or links to
- websites or other apps in your reviews. If you are responding to a user
- review, feel free to include references to helpful resources such as a
- support address or FAQ page.
- </li>
-</ul>
-
-<h3 id="solicited-ratings">Soliciting ratings from users</h3>
-
-<p>
- In general, <strong>do not offer incentives for ratings</strong>. You should
- not offer users incentives of any kind for rating your app (or any other app)
- on Google Play, and you should not tie your app's functionality or content to
- rating in any way.
-</p>
-
-<p>
- It's acceptable to ask users to rate your app without incentives, for
- example: "If you like this game, rate us in Google Play!" On the other hand,
- it's a policy violation to ask users to rate your app based on incentives,
- for example: "Rate this app and get 500 coins" or "Rate this app 5 stars and
- get you 500 coins!"
-</p>
-
-
-<h2 id="webview-spam" style="clear:right">Spam in WebViews</h2>
-
-<p>
- Apps published on Google Play should provide their own content. Do not
- publish an app whose primary function is to reproduce or frame someone else’s
- website (unless you have permission).
-</p>
-
-<p>
- Similarly, do not publish an app whose primary function is to drive affiliate
- traffic to a website. Although affiliate deals can exist where an app's
- primary purpose is delivering its own content or functionality, it's a
- violation of Google Play policies to publish an app whose primary (or
- only) purpose is to direct affiliate traffic to another website.
-</p>
-
-<div class="example-block bad" style="width:100%;float:none;margin:.5em auto 2em 0;">
- <div class="heading">WebView spam</div>
- <table>
- <tr>
- <td>App Title:</td>
- <td>Kids puzzle: Desktop Browser for Turtoogle Game</td>
- </tr>
- <tr>
- <td>Developer:</td>
- <td>AAZZZ <span style="border:2px solid red;">(not affiliated with Turtoogle
- Inc.)</span></td>
- </tr>
- <tr>
- <td style="white-space:nowrap;">App Description:</td>
- <td>
- <p>Have you ever wanted to use the full, desktop web version of Turtoogle
- Game from your phone or tablet instead of the Turtoogle Game mobile app
- or Turtoogle Game mobile web site?</p>
- <p style="border:2px solid red;">This app lets you access Turtoogle Game
- on your Android device in the same way as you access the game on your
- desktop computer, and with all the same Turtoogle Game features.</p>
- </td>
- </tr>
- </table>
-</div>
-
-
-<h2 id="wizard-spam">Spam from Wizards</h2>
-
-<p>
- Apps that are created by an automated tool or wizard service must not be
- submitted to Google Play by the operator of that service on behalf of other
- persons. Such tools often produce too many duplicative or low-quality
- apps which crowd the higher-quality apps in the Play Store.
-</p>
-
-<p>
- Please be advised that apps created by an automated tool are only permissible
- if the app end-product complies with Google Play policies and is published in
- the Play Store through a developer account that is registered and owned by
- you.
-</p>
-
-
-<h2 id="message-spam">Spam in Messaging</h2>
-
-<p>
- Your app may not send SMS, email, or other messages on behalf of the user
- without providing the user with the ability to confirm the content and intended
- recipient.
-</p>
-
-<p>
- Google Play will aggressively remove applications that are found to send or
- modify SMS messages without user knowledge or consent.
-</p>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/promote/index.jd b/docs/html/distribute/googleplay/promote/index.jd
deleted file mode 100644
index 6882990..0000000
--- a/docs/html/distribute/googleplay/promote/index.jd
+++ /dev/null
@@ -1,43 +0,0 @@
-page.title=Promoting Your Apps
-page.metaDescription=Raise the visibility of your apps in Google Play through deep links and Google Play badges.
-header.hide=0
-footer.hide=0
-@jd:body
-
-<!--
-<style>
-#landing-graphic-container {
- position: relative;
-}
-
-#text-overlay {
- position: absolute;
- left: 0;
- top: 472px;
- width: 280px;
-}
-</style>
-
-<div id="landing-graphic-container">
- <div id="text-overlay">
- Raise the visibility of your apps with badges and link users to your products on Google Play.
- <br><br>
- <a href="{@docRoot}distribute/googleplay/promote/product-pages.html" class="landing-page-link">Your Product Pages</a>
- </div>
-
- <a href="{@docRoot}distribute/googleplay/promote/index.html">
- <img src="{@docRoot}design/media/index_landing_page.png">
- </a>
-</div> -->
-
-<p>After you publish your app, you can bring Android users to your app's product details page by
-providing links in your social network posts, ad campaigns, app reviews and articles, your
-web site, and more. </p>
-
-<p>You can use the resources in this section to create deep links for your online placements.
-Google Play badges are an especially great way let Android users know that your app is available
-and link them directly to your download page. With the badge generator, they're also easy to make.</p>
-
-
-<p style="margin-top:1.5em;margin-bottom:1.5em;"><a href="{@docRoot}distribute/googleplay/promote/linking.html" class="landing-page-link">Linking to Your Products</a></p>
-
diff --git a/docs/html/distribute/googleplay/promote/product-pages.jd b/docs/html/distribute/googleplay/promote/product-pages.jd
deleted file mode 100644
index af5b2d5..0000000
--- a/docs/html/distribute/googleplay/promote/product-pages.jd
+++ /dev/null
@@ -1,4 +0,0 @@
-page.title=Your Product Pages
-@jd:body
-
-<p>Placeholder...</p>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/publish/console.jd b/docs/html/distribute/googleplay/publish/console.jd
deleted file mode 100644
index 3831e51..0000000
--- a/docs/html/distribute/googleplay/publish/console.jd
+++ /dev/null
@@ -1,198 +0,0 @@
-page.title=Developer Console
-@jd:body
-
-
-<p>Once you've <a
-href="{@docRoot}distribute/googleplay/publish/register.html">registered</a> and
-received verification by email, you can sign in to your Google Play
-Developer Console, which will be the home for your app publishing operations and
-tools on Google Play. This sections below introduce a few of the key areas
-you'll find in the Developer Console.</p>
-
-<div class="figure" style="width:756px;">
-<img src="{@docRoot}images/gp-dc-home.png" class="frame">
-<p class="img-caption"><strong>All applications page</strong>: Gives you a quick
-overview of your apps, lets you jump to stats, reviews, and product details, or
-upload a new app. </p>
-</div>
-
-<div class="figure-right" style="width:450px;">
-<img src="{@docRoot}images/gp-dc-profile.png" class="frame">
-<p class="img-caption"><strong>Account details page</strong>: Specifies your developer
-identity and contact information, accounts for app testing, and more.</p>
-</div>
-
-<h3 id="profile">Your account details</h3>
-
-<p>The account details page is where you specify basic information about yourself
-or your company in a developer profile. The information in your developer profile
-is important because it identifies you to Google Play and also to your customers.</p>
-
-<p>During registration you must provide the information for your profile, but you can
-go back at any time to edit the information and change your settings. </p>
-
-<p>Your developer profile contains:</p>
-<ul>
-<li>Your developer name — the name you want to show users on your store
-listing page and elsewhere on Google Play. </li>
-<li>Your developer contact information — how Google can contact you if
-needed (this information isn't exposed to users).</li>
-<li>Your developer website URL — shown to users on your store listing page
-so they can learn more about your company or products.</li>
-</ul>
-
-<p>On the account details page you can also register for a merchant account, set
-up test accounts for Google Play licensing, and more. </p>
-
-<h3 id="user-accounts">Multiple user accounts</h3>
-
-<p>If you are working with a team, you can set up multiple user accounts to
-access different parts of your Developer Console. 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 what parts of the Console they
-have access to. For example, an owner can grant users access to publishing and
-app configuration, but not access to financial reports. </p>
-
-
-<div class="figure-right" style="width:450px;">
-<img src="{@docRoot}images/gp-dc-details.png" class="frame">
-<p class="img-caption"><strong>Store listing page</strong>: Lets you upload your
-graphic assets, description, support information, and other information to
-create the store listing page for a specific app.</p>
-</div>
-
-<h3 id="merchant">Linking your Merchant Account</h3>
-
-<p>If you want to sell apps or in-app products, you can link your Google
-Wallet merchant account to your developer profile. Google Play uses the linked
-merchant account for financial and tax identification and monthly payouts of
-sales. </p>
-
-<h3 id="details">Your store listing details</h3>
-
-<p>The Developer Console lets you set up a colorful storefront page for your app
-called the <em>Store Listing page</em>. Your Store Listing page is the home
-for your app in Google Play — it's the page users see on their mobile
-phones or on the web when they want to learn about your app and download it.
-</p>
-
-<p>You can upload custom brand assets, screen shots, and videos to highlight
-what's great about your app, and you can provide a localized description, add
-notes about the latest version, and more. You can update your store listing at
-any time, even if you don’t have a new version of your application.</p>
-
-<h3 id="uploading">Uploading and publishing</h3>
-
-<p>From the Developer Console you can quickly upload a release-ready APK and
-publish it when you're ready. 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. You can unpublish the app at any time.</p>
-
-<h3 id="controls">Distribution controls</h3>
-
-<p>In the Developer Console you can manage what countries and territories the
-app is distributed to and, for some countries, you can choose what carriers you
-want to target.</p>
-
-<p>You can also see the list of devices that your app is currently available to,
-based on any distribution rules declared in its manifest file.</p>
-
-<h3 id="selling">Selling and pricing your products</h3>
-
-<p>The Developer Console gives you tools to set prices for your apps and in-app
-products. Your app can either be free to download or priced (charged before
-download). </p>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<p>See <a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=138294&topic=2365624&ctx=topic">Supported locations for distributing applications</a> for a list of countries where you can distribute or sell your app,</p>
-</div>
-</div>
-
-<ul>
-<li>If you publish your app as free, <span style="font-weight:500;">it must
-remain free</span>. Free apps can be downloaded by any 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>
-
-<p>In addition, you can sell in-app products and subscriptions in your app,
-whether the app is free or priced. You can set prices separately for priced apps,
-in-app products, and subscriptions.</p>
-
-<p>If you are selling a priced app or in-app products or subscriptions, the
-Developer Console lets you set prices in a large number of different currencies.
-When users around the world visit your store listing, they see the price
-of your app in their own currency. For most countries, the price you set is the
-final price charged to users, inclusive of taxes. </p>
-
-<p>To help you manage your prices, the Developer Console provides an autofill
-capability that uses recent exchange rates to populate the prices in all
-supported currencies. You can change prices for apps and in-app products at any
-time, just by saving changes in the Developer Console.</p>
-
-<h3>In-app Billing</h3>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>In-app Billing</h2>
-<p>For details on how to implement In-app Billing, see the
-<a href="{@docRoot}google/play/billing/index.html">In-app Billing</span></a>
-developer documentation.</p></div></div>
-
-<p><a href="{@docRoot}google/play/billing/index.html">In-app Billing</a> is
-a Google Play service that lets you monetize your apps in more ways by selling
-in-app products and subscriptions. In-app products are one-time purchases, while
-subscriptions are recurring charges on an monthly or annual basis.</p>
-
-<p>From the Developer Console you can create product lists for in-app
-products and subscriptions, set prices, and publish.</p>
-
-<div class="figure-right" style="width:410px;">
-<img src="{@docRoot}images/gp-dc-reviews.png" class="frame">
-<p class="img-caption"><strong>User
-reviews page</strong>: 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>
-</div>
-
-<h3>User reviews and crash reports</h3>
-
-<p>Google Play makes it easy for users to submit reviews of your app for the
-benefit of other users. The reviews are also extremely important to you, since
-they give you usability feedback, support requests, and important functionality
-issues direct from your customers. </p>
-
-<p>The Developer Console also lets you see crash reports, with stack trace and
-other data, submitted automatically from Android devices, for debugging and
-improving your app.</p>
-
-<h3>App statistics</h3>
-
-<p>The Developer Console gives you detailed statistics on the install
-performance of your app. </p>
-
-<p>You can view installations of your app measured by unique users, as well as
-by unique devices. For user installations, you can view active installs, total
-installs, daily installs and uninstalls, and metrics about user ratings.
-For devices, you can see active
-installs as well as daily installs, uninstalls, and upgrades.</p>
-
-<p>You can zoom into the installation numbers along several dimensions,
-including Android platform version, device, country, language, app version, and
-carrier (mobile operator). You can see the installation data for each dimension
-on a timeline charts.</p>
-
-<p>At a glance, these charts highlight your app’s installation peaks and
-longer-term trends, which you can correlate to promotions, app improvements, or
-other factors. You can even focus in on data inside a dimension by adding
-specific points (such as individual platform versions or languages) to the
-timeline.</p>
-
-<div style="width:530px;">
-<img src="{@docRoot}images/gp-dc-stats.png" class="frame">
-<p class="img-caption"><strong>App statistics page</strong>: Shows you a variety
-of statistics about a specific app's installation performance over time.</p>
-</div>
diff --git a/docs/html/distribute/googleplay/publish/index.jd b/docs/html/distribute/googleplay/publish/index.jd
deleted file mode 100644
index 5a5eaf2..0000000
--- a/docs/html/distribute/googleplay/publish/index.jd
+++ /dev/null
@@ -1,23 +0,0 @@
-page.title=Publishing on Google Play
-header.hide=1
-footer.hide=1
-page.metaDescription=Get started publishing apps on Google Play.
-
-@jd:body
-
-<div style="height:413px;padding-top:50px;">
- <img src="{@docRoot}images/gp-devconsole-home.png" style="margin-top:0px;">
-</div>
-
-<div style="width:460px;padding-bottom:40px;margin-left:1.5em;">
- <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 Developer Console, from any web browser.</p>
-
-<p style="margin-top:1.5em;margin-bottom:1.5em;"><a href="{@docRoot}distribute/googleplay/publish/register.html" class="landing-page-link">Get started</a></p>
-</div>
-
-
-
-
-
diff --git a/docs/html/distribute/googleplay/publish/localizing.jd b/docs/html/distribute/googleplay/publish/localizing.jd
deleted file mode 100644
index 30f10b7..0000000
--- a/docs/html/distribute/googleplay/publish/localizing.jd
+++ /dev/null
@@ -1,600 +0,0 @@
-page.title=Localization Checklist
-page.tags=localize,localization,resources,formats,l10n
-@jd:body
-
-<div id="qv-wrapper"><div id="qv">
-<h2>Checklist</h2>
-<ol>
-<li><a href="#target-languages">1. Identify target languages</a></li>
-<li><a href="#design">2. Design for localization</a></li>
-<li><a href="#strings">3. Manage strings for localization</a></li>
-<li><a href="#translate">4. Translate UI strings</a></li>
-<li><a href="#test">5. Test your localized app</a></li>
-<li><a href="#prelaunch">6. Prepare for international launch</a></li>
-<li><a href="#support">7. Support international users</a></li>
-</ol>
-<h2>See Also</h2>
-<ol>
-<li><a href="{@docRoot}distribute/googleplay/promote/badges.html">Google Play Badge Builder</a></li>
-<li><a href="{@docRoot}distribute/promote/device-art.html">Device Art Generator</a></li>
-<li><a href="#gp-trans">Translations in Google Play</a></li>
-<li><a href="{@docRoot}sdk/installing/installing-adt.html#tmgr">ADT Translation Manager Plugin</a></li>
-</ol>
-</div></div>
-
-<p>Android and Google Play give you a worldwide audience for your app, with an
-addressable user base that's growing very rapidly in countries such as Japan,
-Korea, India, Brazil, Russia, and elsewhere. </p>
-
-<p>To maximize your app's distribution potential and earn high ratings from
-users around the world, we strongly encourage you to localize your app. </p>
-
-<p>Localization involves a variety of tasks throughout your app's development
-cycle, and advance planning is essential. Some of the tasks include
-translating your UI strings and localizing dates and times, layouts, text
-direction, and finally your Google Play store listing. </p>
-
-<p>This document helps you identify key aspects of localization to prepare for
-and the tasks you'll need to perform, to get your app ready for a
-successful worldwide launch on Google Play.</p>
-
-
-<h2 id="target-languages">1. Identify target languages and locales</h2>
-
-<p>A basic but important step in preparing for localization is identifying the
-countries where you will distribute your app and the languages spoken there.
-Google Play lets you distribute your app broadly to hundreds of countries, reaching
-users who speak a variety of languages. </p>
-
-<p>For international users, you can manage your app on three main dimensions:
-country, locale, and language. Of those, language is the key consideration for
-localization, although locale is also significant because of differences in
-formats for dates, times, currencies, and similar information. Users control
-both the language and locale used on their Android devices and in turn those
-affect the display of your app, once installed.</p>
-
-<p>Typically, you would decide which countries to target first, based on overall
-market size and opportunity, app category, competitive landscape, local pricing
-and financial factors, and so on. Then, based on your country targeting, you
-would determine the languages you need to support in your app. </p>
-
-<p>You will need to decide when to localize into some or all of the languages in your targeted countries. In some countries it might make most sense to deliver an app
-in a major regional or international language only, rather than in all locally
-spoken languages. Similarly, based on overall market size, you might decide to
-deliver your app in only a small number of key languages and offer English or
-another language for other countries. You can add more languages in the future
-as your app's userbase grows.</p>
-
-<p>Localizing your app is particularly important in countries where there is a
-large market opportunity and English or another international language is not
-widely used. Once you have identified your target languages, you can focus your
-development, translation, testing, and marketing efforts to these markets.</p>
-
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=138294&topic=2365624&ctx=topic">Supported locations for distributing applications</a></strong> on Google Play.
-.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-
-<h2 id="design">2. Design for localization</h2>
-
-<p>After you've determined your target languages for localization, assess what
-you'll need to do to support them in your app and plan the work early. Consider
-the vocabulary expansion, script requirements, character spacing and wrapping
-constraints, left-to-right and right-to-left support, and other potential
-factors in each language.
-
-<h4>Design a single set of flexible layouts</h4>
-
-<p>As you create your layouts, make sure that any UI elements that hold text are
-designed generously. It’s good to allow more space than necessary for your
-language (up to 30% more is normal) to accommodate other languages.</p>
-
-<p>Also, elements should be able to expand horizontally or vertically to
-accommodate variations in the width and height of UI strings or input text. Your
-text strings should not overlap borders or the screen edge in any of your target
-languages.</p>
-
-<p>If you design your UI carefully, you can typically use a single set of
-layouts for all of the languages you support. See <a
-href="{@docRoot}training/basics/fragments/fragment-ui.html">Building a Flexible
-UI</a> for more information.</p>
-
-<h4 id="rtl">Use alternative layouts where needed</h4>
-
-<p>In cases where your UI can't accommodate text in one of your target
-languages, you can create an <a
-href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">alternative
-layout</a> for that language only.
-Android makes it easy to declare sets of layouts and other resources to load for
-specific languages, locales, screen sizes, and so on, simply by tagging them
-with the appropriate resource qualifiers. </p>
-
-<p>Although you can use alternative layouts to work around isolated issues, they
-can also make your app harder to maintain over time. In general, using a single,
-more flexible layout is preferred. </p>
-
-<h4 id="rtl">Support RTL layouts and text</h4>
-
-<p>If you are distributing to countries where right-to-left (RTL) scripts are used,
-should consider implementing support for RTL layouts and text display and
-editing, to the extent possible. </p>
-
-<p>Android 4.1 introduced limited support for bidirectional text, allowing apps
-to display and edit text in both left-to-right (LTR) and right-to-left (RTL)
-scripts. Android 4.2 added <a
-href="http://android-developers.blogspot.fr/2013/03/native-rtl-support-in-
-android-42.html">full native support for RTL layouts</a>, including layout
-mirroring, so that you can deliver the same great app experience to all of your
-users. </p>
-
-<p>At a minimum, for Android 4.2 users, it's simple to add basic RTL layout
-mirroring, which goes a long way toward meeting the needs of RTL users. </p>
-
-<h4 id="formats">Use system-provided formats for dates, times, numbers, and
-currencies</h4>
-
-<p>Where your app specifies dates, times, numbers, currencies, and other
-entities that can vary by locale, make sure to use the system-provided formats,
-rather than app-specific formats. Keep in mind that not every locale uses the
-same thousands separator, decimal separator, or percent sign. </p>
-
-<p>Android provides a variety of utilities for formatting and converting
-patterns across locales, such as {@link android.text.format.DateUtils DateUtils} and
-{@link java.text.DateFormat DateFormat} for
-dates; {@link java.lang.String#format String.format()} or {@link java.text.DecimalFormat DecimalFormat} for
-numbers and currency; {@link android.telephony.PhoneNumberUtils
-PhoneNumberUtils} for phone numbers; and others.</p>
-
-<p>If you hard-code your formats based on assumptions about the user's locale,
-your app could encounter problems when the user changes to another locale. The
-easiest and most reliable approach is to always use system-provided formats and
-utilities.</p>
-
-<h4 id="default-resources">Include a full set of default resources</h4>
-
-<p>Make sure that your app can run properly regardless of language or locale by
-providing a complete set of default resources. The app's default resources are
-those that are <em>not marked</em> with any language or locale qualifiers, for
-example those stored in <code>res/drawable/</code> and <code>res/values/</code>.
-If your app attempts to load a resource that isn't available in the current
-language or in the default set, the app will crash. </p>
-
-<p>Whatever the default language you are using in your app, make sure that you
-store the associated layouts, drawables, and strings in default resource
-directories, without language or locale qualifiers. </p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://android-developers.blogspot.fr/2013/03/native-rtl-support-in-android-42.html">Native RTL Support in Android 4.2</a></strong> — Blog post that explains how to support RTL in your UI.</li>
-<li><strong><a href="{@docRoot}guide/topics/resources/string-resource.html#Plurals">Quantity Strings (Plurals)</a></strong> — Developer guide describing how to work with string plurals according to rules of grammar in a given locale. </li>
-<li><strong>{@link java.util.Locale Locale}</strong> — Reference information about how to use locale data determine exactly what CLDR data or version of the Unicode spec a particular Android platform version uses.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-
-<h2 id="managing-strings">3. Manage strings for localization</h2>
-
-<p>It's important to manage your app's UI strings properly, so that you deliver
-a great experience for users and make localization straightforward.</p>
-
-<h4 id="strings">Move all strings into strings.xml</h4>
-
-<p>As you build your app, remember that it's a best practice to keep all of your
-UI strings in a single file that's easy to update and localize. Declare
-<em>all</em> of your strings as resources in a default <code>strings.xml</code>
-file. Do not hard-code any strings into your compiled code—hard-coded
-strings are much more difficult to extract, translate, and load properly.
-
-<p>If you keep all of your default strings in a <code>strings.xml</code> file,
-you can quickly extract them for translation, and once the translated strings
-are integrated back into your app with appropriate qualifiers, your app can load
-them without any changes to your compiled code.</p>
-
-<p>If you generate images with text, put those strings in <code>strings.xml</code> as well,
-and regenerate the images after translation.</p>
-
-<h4 id="style">Follow Android guidelines for UI strings</h4>
-
-<p>As you design and develop your UI, make sure that you pay close attention to
-<em>how</em> you talk to your user. In general, use a <a
-href="{@docRoot}design/style/writing.html">succinct and compressed style</a>
-that is friendly but brief, and use a consistent style throughout your UI.
-</p>
-
-<p>Make sure that you read and follow the Android Design recommendations for <a
-href="{@docRoot}design/style/writing.html">writing style and word choice</a>.
-Doing so will make your app appear more polished to the user and will help users
-understand your UI more quickly. </p>
-
-<p>Also, always use Android standard terminology wherever possible—such as
-for UI elements such as "Action Bar," "Options Menu," "System Bar,"
-"Notifications," and so on. Using Android terms correctly and consistently
-makes translation easier and results in a better end-product for users.</p>
-
-<h4 id="context">Provide sufficient context for declared strings</h4>
-
-<p>As you declare strings in your <code>strings.xml</code> file, make sure to describe the
-context in which the string is used. Add comments before each string that may
-need clarification. This information will be invaluable to translators and will
-help you manage your strings more effectively over time.</p>
-
-<p>For example, background information to provide might include:</p>
-
-<ul>
- <li>What is this string for? When/where is it presented to the user?</li>
-<li>Where is this in the layout? For example, if it’s a button, translations are
-less flexible than if it were a text box. </li>
-</ul>
-
-<p>Here's an example: </p>
-
-<pre><!-- The action for submitting a form. This text is on a button that can fit 30 chars -->
-<string name="login_submit_button">Sign in</string></pre>
-
-<h4 id="xliff">Mark message parts that should not be translated</h4>
-
-<p>Often strings contain contain text that should not be translated to other
-languages. Common examples might be a piece of code, a placeholder for a value,
-a special symbol, or a name. As you prepare you strings for translation, look
-for and mark text that should remain as-is, without translation, so that
-translators do not change it. </p>
-
-<p>To mark text that should not be translated, use an
-<code><xliff:g></code> placeholder tag. Here's an example tag that ensures
-the text “%1$s” will not be changed during translation (otherwise it could break
-the message):</p>
-
-<pre><string name="countdown">
- <xliff:g id="time" example="5 days>%1$s</xliff:g>until holiday
-</string></pre>
-
-<p>When you declare a placeholder tag, always add an <code>id</code> attribute
-that explains what the placeholder is for. If your app will later replace the
-placeholder value, be sure to provide an example attribute to clarify the expected
-usage.</p>
-
-<p>Here are some more examples of placeholder tag usage:</p>
-<pre><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!-- Example placeholder for a special unicode symbol -->
- <string name="star_rating">Check out our 5
- <xliff:g id="star">\u2605</xliff:g>
- </string>
- <!-- Example placeholder for a for a URL -->
- <string name="app_homeurl">
- Visit us at <xliff:g id="application_homepage">http://my/app/home.html</xliff:g>
- </string>
- <!-- Example placeholder for a name -->
- <string name="prod_name">
- Learn more at <xliff:g id="prod_gamegroup">Game Group</xliff:g>
- </string>
- <!-- Example placeholder for a literal -->
- <string name="promo_message">
- Please use the ”<xliff:g id="promotion_code">ABCDEFG</xliff:g>” to get a discount.
- </string>
- ...
-</resources></pre>
-<!--<pre><string name="contact_info">
- You can see our posts at <xliff:g id="social_account_id">@superApp</xliff:g>
-</string></pre>-->
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}guide/topics/resources/string-resource.html">String Resources</a></strong> — Developer guide explaining how to use string resources in your UI.</li>
-<li><strong><a href="{@docRoot}design/style/writing.html">Writing Style</a></strong> — Android Design guidelines for voice and style in your UI.</li>
-<li><strong><a class="external-link" href="http://en.wikipedia.org/wiki/XLIFF">XML Localisation Interchange File Format (XLIFF)</a></strong> — Background information on XLIFF.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-
-<h2 id="translate">4. Translate UI strings and other resources</h2>
-
-<p>Translating your app's UI strings and resources to your target languages is
-the key phase of localization, and it's the one that requires the most care and
-planning.</p>
-
-<p>In general, it's recommended to work with a professional translator to ensure
-that the work goes smoothly, stays on schedule, and results in a high-quality
-product that will enhance the value of your app. If you are considering machine
-translations as an alternative, keep in mind that automated translations are less
-reliable than high-quality professional translations and may not produce as good an
-experience for your users.</p>
-
-<h4>Prepare for translation</h4>
-
-<p>Getting high-quality translation output depends in part on your input. To get
-ready for translation, make sure that your <code>strings.xml</code> file is well organized,
-well commented, and accurate.</p>
-
-<p>Here are some ways to prepare your strings for translation:</p>
-<ul>
- <li>Make sure your strings are formatted correctly and consistently.</li>
- <li>Follow the strings recommendations listed in <a href="#strings">Manage
-strings for localization</a>, above.</li>
- <li>Clean up the <code>strings.xml</code> file and remove unused strings.</li>
- <li>Place comments in the file to identify the owner, origin, and the version
-of the file, as well as any special instructions for translators.</li>
-<li>Identify existing translations, if any, and include those in an outgoing
-zip file or other package that you will send to translators.</li>
-<li>Identify drawables or other resources that require translation and include
-them in the outgoing package for translators.</li>
-<p>Additionally, consider translating your app's store listing details —
-app title and description, release notes, and so on — as
-well as other international marketing materials.</p>
-<li>Create a terminology list that explains the meaning and usage of key terms
-used in your product, your market, or the underlying technology. Add the list to
-the outgoing package.</li>
-</ul>
-
-<h4 id="send">Send your strings for translation</h4>
-
-<p>Early in the development cycle, contact professional translation vendors for
-your target languages to get an idea of cost, lead time required, turnaround
-time, and so on. Then select a vendor and secure their services, making sure to
-include multiple iterations in the cost as a safeguard. Google Play can help you
-do this — see <a href="#gp-trans">Purchase professional
-translations</a>, below.</p>
-
-<p>As soon as your app's UI strings and design are stable, work with your
-development team to extract all of the strings and other resources from the app
-and package them together for the translator. If appropriate, you can version
-the outgoing package for later identification. </p>
-
-<p>When the outgoing package is ready, send it to the translator or share it
-with them over a cloud platform such as Google Drive. Keep a record of what you
-sent and when you sent it, to cross-reference against returning translations and
-billing invoices from the translator.</p>
-
-<p>When your translations are complete, take a preliminary look at the
-translations. Check that all files were translated, check for potential encoding
-issues, and make sure that declaration formats are intact. </p>
-
-<p>If everything looks good, carefully move the localized directories and files
-back into your app's resources. Make sure to tag the directories with the
-appropriate language and locale qualifiers so that they'll later be loaded
-properly.</p>
-
-<p>After the translations are merged back into your app, start <a
-href="#testing">testing the localized app</a>.</p>
-
-<h4 id="gp-trans">Purchase professional translations through Google Play
-<br />App Translation Service</h4>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>App Translations in Google Play</h2>
-
-<p>Hear from developers who have used the Google Play App Translation Service in <a
-href="{@docRoot}distribute/googleplay/spotlight/localization.html">Developer
-Stories: Localization in Google Play</a>.</p>
-
-<p>To make it easy to export your app's strings and import
-the finished translations into your project, try the <a
-href="{@docRoot}sdk/installing/installing-adt.html#tmgr">
-ADT Translation Manager Plugin</a>.</div>
-</div>
-
-<p>Google Play App Translation Service can help you quickly find and purchase translations of your app.
-In the Developer Console, you can browse a list of third-party vendors who are
-pre-qualified by Google to offer high-quality translation at competitive prices.
-You can upload the strings you want translated, select the languages you want to
-translate into, and select your translation vendor based on time and price.</p>
-
-<p>Once you've purchased translations, you'll receive an email from your vendor.
-Your translations are a direct business agreement between you and your vendor;
-you'll need to work directly with the vendor to manage the translation process and
-deliverables and resolve any support issues. </p>
-
-
-<h2 id="testing">5. Test your localized app</h2>
-
-<p>Once you've received your translated strings and resources and moved them
-back into your app, you need to test the app to make sure that it's ready for
-distribution to your international users. </p>
-
-<p>Manual testing can help you discover localization issues in your layouts and
-strings that can affect user satisfaction and, ultimately, your app's user
-rating. </p>
-
-<h4 id="native">Set up a test environment</h4>
-
-<p>To test your localized app, you'll need to set up an environment consisting
-of multiple devices (or virtual devices) and screen sizes, based on the markets
-and form factors you are targeting. Note that the range of devices in specific
-regions might be different. If possible, match your test devices to the actual
-devices likely to be available to users.</p>
-
-<h4 id="native">Look for common localization issues</h4>
-
-<p>On each test device, set the language or locale in Settings. Install and
-launch the app and then navigate through all of the UI flows, dialogs, and user
-interactions. Enter text in inputs. Some things to look for include:</p>
-
-<ul>
- <li>Clipped text, or text that overlaps the edge of UI elements or the
-screen</li>
- <li>Poor line wrapping</li>
- <li>Incorrect word breaks or punctuation</li>
- <li>Incorrect alphabetical sorting</li>
- <li>Incorrect layout direction or text direction</li>
- <li>Untranslated text — if your default strings are displayed instead of
-translated strings, then you may have overlooked those strings for translation
-or marked the resources directory with an incorrect language qualifier. </li>
-</ul>
-
-<p>For cases where your strings have expanded in translation and no longer fit
-your layouts, it's recommended to simplify your default text, simplify your
-translated text, or adjust your default layouts. If none of those resolves the
-issue, you can create a custom layout for the language. </p>
-
-<h4 id="default-test">Test for default resources</h4>
-
-<p>After you've tested your app in all of your supported languages and locales,
-make sure to test it again in an <em>unsupported language</em> and locale. This
-will help you make sure that your app includes a full set of default strings and
-resources, so that your app is usable to all users, regardless of their
-preferred language. </p>
-
-<h4 id="native">Review with native-language speakers</h4>
-
-<p>During or after testing, it's recommended that you let native speakers review
-your localized app. One way to do that is through beta testing with regional
-users — Google Play can help you do this. See <a href="#beta">Plan a beta
-release</a> for more information.</p>
-
-
-<h2 id="prelaunch">Prepare for international launch</h2>
-
-<p>Getting your app translated is a key part of localization, but to help your
-product attract users and gain visibility, you should prepare for launch in your
-target countries and create a broader launch and marketing plan for
-international users. </p>
-
-
-<h4 id="listing">Localize your Google Play listing</h4>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>Localize your Google Play listing</h2>
-<p>Highlight what's great about your app to all of your users! Localize your
-listing in the Developer Console: </p>
-<ul>
- <li>App title and description</li>
- <li>App screenshots on phones and tablets</li>
- <li>Promotional graphics and videos.</li>
-</ul>
-</div>
-</div>
-<p>If you want your app to be successful in international markets, it's
-essential to localize your Google Play store listing. You can manage your
-localized listing in the Developer Console.</p>
-
-<p>Well before launch, decide on your app title, description, promotional text,
-marketing names and programs, and other text and images. Send your
-listing text and images for translation early, so that you have them ready when
-beta testing begins. When your translated text is available, you can add it
-through the Developer Console.</p>
-
-<p>Also, since you've made the effort to create a great localized app, let users
-know about it! Take screenshots of your UI in each language, for phones and 7-
-and 10- inch tablets. You can upload screenshots to the Developer Console for
-each language you support. These will be of great value to users browsing your
-app listing in other languages. </p>
-
-<p>It's also essential to create localized versions of your promotional graphics
-and videos. For example, your app's feature graphic might include text that
-should be translated, for maximum effectiveness, or you might want to take a
-different visual approach in one country than you do in another. You can create
-different versions of your promotional graphics for each language and upload
-them to the Developer Console. If you offer a promotional video, you can create
-localized versions of it and then add a link to the correct localized video for
-each language you support.</p>
-<h4 id="beta">Plan a beta release in key countries</h4>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>Easy beta testing</h2>
-<p>Google Play now lets you set up groups of alpha and beta testers, anywhere
-around the world. Check out this powerful feature next time you sign in to the
-Developer Console.</p>
-</div>
-</div>
-
-<p>Before launching your app, it's always valuable to get real-world feedback
-from users — even more so when you are launching an app in a new language,
-country, or region. In those cases, it's highly recommended that you distribute
-a pre-release version of your app to users across your key markets and provide
-an easy means for them to provide feedback and report bugs. </p>
-
-<p>Google Play can help you set up a beta program for your app. After you sign
-in to the Developer Console and upload your APK, you can set up groups of users
-for alpha testing and beta testing the app. You can start with a small group of
-alpha testers, then move to a larger group of beta testers. Once users are
-added, they access your app's store listing and install the app. User feedback
-from alpha and beta testers goes directly to you and is not posted as public
-reviews. </p>
-
-<p>The feedback you receive will help you adjust your UI, translations, and
-store listing to ensure a great experience for users. </p>
-
-<h4 id="beta">Plan for international marketing</h4>
-
-<p>For highest visibility across countries, consider an international marketing
-or advertising campaign. The scope of the campaign might vary based on the
-budget you can support, but in general it's cost-effective and productive to do
-regional or country-specific marketing at launch and after. </p>
-
-<h4 id="badges">Create localized Google Play badges</h4>
-
-<p>If you are preparing international marketing, make sure to include a <a
-href="{@docRoot}distribute/googleplay/promote/badges.html">localized Google Play
-badge</a> to tell users you're on Google Play. You can use the badge generator
-to quickly build localized badges that you can use on web sites or marketing
-materials. High-resolution assets are also available.</p>
-
-<h4 id="deviceart">Create Localized Device Art</h4>
-
-<p>If you feature product shots of your app running on Android devices, make
-sure that those shots look great and reflect the latest in Android devices. To
-help you create high-quality marketing materials, use the drag-and-drop <a
-href="{@docRoot}distribute/promote/device-art.html">Device Art Generator</a> to
-quickly frame your screen shot on a Nexus device. </p>
-
-<h4 id="deviceart">Check your Optimization Tips</h4>
-
-<p>As you prepare for launch, make sure to sign into the Developer Console and check
-your app's Optimization Tips. The Optimization Tips let you know when you are missing parts of your localized store listing and provide other helpful reminders for a successful localized launch.</p>
-
-<h2 id="support">Support International Users after Launch</h2>
-
-<p>After you launch your app internationally, you should be prepared to support
-users in a variety of languages and time zones. The extent of your international
-user support depends on your budget, but at a minimum you should watch your
-ratings, reviews, and download stats carefully after launch.
-
-<p>Here are some suggestions: </p>
-
-<ul>
- <li>Use the app stats in the Developer Console to compare your downloads,
-installs, and uninstalls, and ratings across languages and countries—If
-your downloads or ratings are not keeping up in specific languages or countries,
-consider options for improving your product or changing your marketing approach.
-</li>
- <li>Check reviews regularly—Google Play translates all user reviews for
-you, so you can stay in touch with how international users feel about your app,
-what features they like and what issues are affecting them. By watching reviews,
-you can spot technical issues that may affect many users in a particular
-country, then fix and update your app.</li>
- <li>Respond to reviews if possible—It's good to engage with
-international users in their language or a common language if possible. If not,
-you can try using translation tools, although results may not be predictable. If
-your app gets very popular in a language, consider getting support help from
-native-language speakers. </li>
- <li>Make sure there's a link to any support resources on your web site.
-Consider setting up language-specific user groups, Google+ communities, or other
-support forums.
-</ul>
-
-<p>By following these practices for localizing your app, promoting and marketing
-to international users, and providing ongoing support, you can attract many new
-users to your app and maintain their loyalty.</p>
-
-<p>Make sure to read the <a
-href="{@docRoot}distribute/googleplay/publish/preparing.html">Launch
-Checklist</a> to learn more about how to plan, build, and launch your app on
-Google Play. </p>
diff --git a/docs/html/distribute/googleplay/publish/preparing.jd b/docs/html/distribute/googleplay/publish/preparing.jd
deleted file mode 100644
index 6af3eea..0000000
--- a/docs/html/distribute/googleplay/publish/preparing.jd
+++ /dev/null
@@ -1,681 +0,0 @@
-page.title=Launch Checklist
-page.tags=publishing,launch,Google Play,Developer Console
-@jd:body
-
-<div id="qv-wrapper"><div id="qv">
-<h2>Checklist</h2>
-<ol>
-<li><a href="#process">1. Understand the publishing process</a></li>
-<li><a href="#policies">2. Understand Google Play policies</a></li>
-<li><a href="#core-app-quality">3. Test for core app quality</a></li>
-<li><a href="#rating">4. Determine your content rating</a></li>
-<li><a href="#countries">5. Determine country distribution</a></li>
-<li><a href="#size">6. Confirm the app's overall size</a></li>
-<li><a href="#compatibility">7. Confirm app compatibility ranges</a></li>
-<li><a href="#free-priced">8. Decide on free or priced</a></li>
-<li><a href="#inapp-billing">9. Consider In-app Billing</a></li>
-<li><a href="#pricing">10. Set prices for your apps</a></li>
-<li><a href="#localize">11. Start localization early</a></li>
-<li><a href="#graphics">12. Prepare promotional graphics</a></li>
-<li><a href="#apk">13. Build the release-ready APK</a></li>
-<li><a href="#beta">14. Plan a beta release</a></li>
-<li><a href="#product-page">15. Complete the product details</a></li>
-<li><a href="#badges">16. Use Google Play badges</a></li>
-<li><a href="#final-checks">17. Final checks and publishing</a></li>
-<li><a href="#support">18. Support users after launch</a></li>
-</ol>
-</div></div>
-
-
-<p>Before you publish your app on Google Play and distribute it to users, you
-need to get the app ready, test it, and prepare your promotional materials. </p>
-
-<p>This document helps you understand the publishing process and get ready for a
-successful product launch on Google Play. It summarizes some of the
-tasks you'll need to complete before publishing your app on Google Play, such as
-creating a signed, release-ready APK, understanding the requirements of the app,
-and creating the product page and graphic assets for your app.</p>
-
-<p>The preparation and publishing tasks are numbered to give you a rough idea of
-sequence. However, you can handle the tasks in any sequence that works for you
-or you can skip steps as appropriate.</p>
-
-<p>As you move toward publishing, a variety of support resources are available to
-you. Relevant links are provided in each step.</p>
-
-
-<h2 id="process">1. Understand the publishing process</h2>
-
-<p>Before you begin the steps in this checklist, you should take a moment to
-read and understand the overall publishing workflow and become familiar with how
-the process works. In particular, you or your development team will need to
-prepare your app for release using a process common to all Android apps.
-The <a
-href="{@docRoot}tools/publishing/publishing_overview.html">Publishing
-Workflow</a> documents provide the details on how publishing works and how to
-get an APK ready for release. </p>
-
-<p>Once you are familiar with publishing in general, read this document to
-understand the issues that you should consider when publishing an app on Google
-Play. </p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}tools/publishing/publishing_overview.html">General Publishing Overview</a></strong> — Start here for an overview of publishing options for Android apps.</li>
-<li><strong><a href="{@docRoot}tools/publishing/preparing.html">Preparing for Release</a></strong> — Developer documentation on how to build the signed, release-ready APK. This process is the same for all Android apps. </li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="policies">2. Understand Google Play policies and agreements</h2>
-
-<p>Make sure that you understand and follow the Google Play program policies
-that you accepted when registering. Google Play actively enforces the policies
-and any violations can lead to suspension of your app or, for repeated
-violations, termination of your developer account. </p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-
-<li><strong><a href="{@docRoot}distribute/googleplay/policies/index.html">Google Play Policies and Guidelines</a></strong> — An overview of Google Play policies for spam, intellectual property, and ads, with examples of common problems. </li>
-</a></strong> — Help Center document describing various content policies and processes.</li>
-
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/topic.py?hl=en&topic=2364761&parent=2365624&ctx=topic">Policy and Best Practices
-</a></strong> — Help Center document describing various content policies and processes.</li>
-
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="core-app-quality">3. Test for Core App Quality</h2>
-
-<p>Before you publish an app on Google Play, it's important to make sure that
-it meets the basic quality expectations for all Android apps, on all of the devices that you
-are targeting. You can check your app's quality by setting up a test
-environment and testing the app against a short set of <strong>core app quality criteria</strong>.
-For complete information, see the <a
-href="{@docRoot}distribute/googleplay/quality/core.html">Core App Quality Guidelines</a>.
-</p>
-
-<p>If your app is targeting tablet devices, make sure that it delivers a rich, compelling
-experience to your tablet customers. See the <a
-href="{@docRoot}distribute/googleplay/quality/tablet.html">Tablet App Quality Checklist</a>
-for recommendations on ways to optimize your app for tablets.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a
-href="{@docRoot}distribute/googleplay/quality/core.html">Core App Quality
-Guidelines</a></strong> — A set of core quality criteria that all Android
-apps should meet on all targeted devices.</li>
-<li><strong><a
-href="{@docRoot}distribute/googleplay/quality/tablet.html">Tablet App Quality
-Checklist</a></strong> — A set recommendations for delivering the best
-possible experience to tablet users.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="rating">4. Determine your app's content rating</h2>
-
-<p>Google Play requires you to set a content rating for your app, which informs
-Google Play users of its maturity level. Before you publish, you should confirm
-what rating level you want to use. The available content rating levels are:</p>
-
-<ul>
-<li>Everyone</li>
-<li>Low maturity</li>
-<li>Medium maturity</li>
-<li>High maturity</li>
-</ul>
-
-<p>On their Android devices, Android users can set the desired maturity level
-for browsing. Google Play then filters apps based on the setting, so the content
-rating you select can affect the app's distribution to users. You can assign (or
-change) the content rating for your app in the Developer Console, so no changes
-are required in your app binary.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=188189">Rating your application content for Google Play</a></strong> — Help Center document describing content ratings levels and how to choose the appropriate one for your app.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="countries">5. Determine country distribution</h2>
-
-<p>Google Play lets you control what countries and territories your app is
-distributed to. For widest reach and the largest potential customer base, you
-would normally want to distribute to all available countries and territories.
-However, because of business needs, app requirements, or launch dependencies,
-you might want to exclude one or more countries from your distribution. </p>
-
-<p>It's important to determine the exact country distribution early, because it
-can affect:</p>
-<ul>
-<li>The need for localized resources in the app</li>
-<li>The need for a localized app description in the Developer Console</li>
-<li>Legal requirements for the app that may be specific to certain
-countries</li>
-<li>Time zone support, local pricing, and so on.</li>
-</ul>
-
-<p>With your country targeting in mind, you should assess what
-your localization needs are, both in your app and in its Google Play listing
-details, and start the work of localization well in advance of your
-launch target date.</p>
-
-<p>See <a href="{@docRoot}distribute/googleplay/publish/localizing.html">Localization
-Checklist</a> for key steps and considerations in the localizing process. </p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}distribute/googleplay/publish/localizing.html">Localization Checklist</a></strong> — Overview of key steps and considerations for localizing your Android app.</li>
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=138294&topic=2365624&ctx=topic">Supported locations for distributing applications</a></strong> on Google Play.
-.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="size">6. Confirm the app's overall size</h2>
-
-<p>The overall size of your app can affect its design and how you publish it on
-Google Play. Currently, the maximum size for an APK published on Google Play is
-<strong>50 MB</strong>. If your app exceeds that size, or if you want to offer a
-secondary download, you can use <a
-href="{@docRoot}google/play/expansion-files.html">APK Expansion Files</a>,
-which Google Play will host for free on its server infrastructure and
-automatically handle the download to devices.</p>
-
-<ul>
-<li>The maximum size for an APK published on Google Play is 50 MB.</li>
-<li>You can use up to two (2) APK Expansion Files, each up to 2 GB in size, for
-each APK.</li>
-</ul>
-
-<p>Using APK Expansion files is a convenient, cost-effective method of
-distributing large apps. However, the use of APK Expansion Files requires some
-changes in your app binary, so you will need to make those changes before
-creating your release-ready APK.</p>
-
-<p>To minimize the size of your app binary, make sure that you run the
-<a href="{@docRoot}tools/help/proguard.html">Proguard</a> tool on your code when
-building your release-ready APK.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}google/play/expansion-files.html">APK Expansion Files</a></strong>
-— Developer documentation describing APK Expansion Files and how to support them in your app.</li>
-<li><strong><a href="{@docRoot}tools/help/proguard.html">ProGuard</a></strong> — Developer
-documentation describing how to use ProGuard to shrink, optimize, and obfuscate your code prior
-to release.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="compatibility">7. Confirm the app's platform and screen compatibility ranges</h2>
-
-<p>Before publishing, it's important to make sure that your app is designed to
-run properly on the Android platform versions and device screen sizes that you
-want to target.
-
-<p>From an app-compatibility perspective, Android platform versions are defined
-by <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API level</a>. You should
-confirm the minimum version that your app is compatible with (<a
-href="{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code><minSdkVersion></code></a>),
-as that will affect its distribution to Android
-devices once it is published. </p>
-
-<p>For screen sizes, you should confirm that the app runs properly and looks
-good on the range of screen sizes and densities that you want to support. You
-should confirm the minimum screen-size and density support that your app
-declares (<a
-href="{@docRoot}guide/topics/manifest/supports-screens-element.html"><code><supports-screens></code></a>),
-since that can affect its distribution to
-Android devices once it is published. </p>
-
-<p>To get a better understanding of the current device penetration of Android
-platform versions and screen sizes across all Android devices, see the <a
-href="{@docRoot}about/dashboards/index.html">Device Dashboard</a>
-charts.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}about/dashboards/index.html">Device Dashboard</a></strong> — A chart showing global percentages of devices by Android version, screen size, and level of OpenGL ES support.</li>
-<li><strong><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Android API Levels</a></strong> — A definition of API Levels and a list of which Android platform versions they are associated with. </li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="free-priced">8. Decide whether your app will be free or priced</h2>
-
-<p>On Google Play, you can publish apps as free to download or priced. Free apps
-can be downloaded by any Android user in Google Play.
-Paid apps can be downloaded only by users who have registered a form of payment
-in Google Play, such as a credit card or Direct Carrier Billing.</p>
-
-<p>Deciding whether you app will be free or paid is important because, on Google
-Play, <strong>free apps must remain free</strong>.</p>
-
-<ul>
-<li>Once you publish your app as a free app, you cannot ever change it to being
-a priced app. However, you can still sell in-app products and
-subscriptions through Google Play's In-app Billing service.</li>
-<li>If you publish your app as a priced app, you <em>can</em> change
-it at any time to being a free app (but cannot then change it back to
-priced). You can also sell in-app products and subscriptions. </li>
-</ul>
-
-<p> If your app is be priced, or if you'll be selling in-app products,
-you need set up a Google Wallet merchant account before you can publish.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}google/play/billing/index.html">In-app Billing</a></strong> — Developer introduction to Google Play In-app Billing.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="inapp-billing">9. Consider using In-app Billing</h2>
-
-<p>Google Play <a href="{@docRoot}google/play/billing/index.html">In-app
-Billing</a> lets you sell digital content in your applications. You can use the
-service to sell a wide range of content, including downloadable content such as
-media files or photos, and virtual content such as game levels or potions.
-In-app Billing service lets you sell one-time purchases and subscriptions from
-inside your app. This can help you to monetize the app over its installed
-lifetime. </p>
-
-<p>If your are looking for more ways to monetize your app and build engagement,
-you should consider In-app Billing. The service has become very popular with
-both users and developers. To use In-app Billing, you need to make changes to
-your app binary, so you will need to complete and test your implementation
-before creating your release-ready APK.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}google/play/billing/index.html">In-app Billing</a></strong> — Developer documentation describing In-app Billing and how to support it in your app.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="pricing">10. Set prices for your products</h2>
-
-<p>If your app is priced or you will sell in-app products, Google Play lets you
-set prices for your products in a variety of currencies, for users in markets
-around the world. You can set prices individually in different currencies, so
-you have the flexibility to adjust your price according to market conditions and
-exchange rates. </p>
-
-<p>Before you publish, consider how you will price your products
-and what your prices will be in various currencies. Later, you can set prices
-in all available currencies through the Developer Console.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1169947&topic=15867&ctx=topic">Selling Apps in Multiple Currencies
-</a></strong> — Help Center document describing how pricing works in Google Play.</li>
-
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=138412&topic=15867&ctx=topic">Prices and supported currencies
-</a></strong> — Help Center document listing supported currencies for pricing your apps.</li>
-
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=112622&topic=15867&ctx=topic">Transaction Fees
-</a></strong> — Help Center document describing transaction fees for priced apps and in-app products.</li>
-
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=138000&topic=15867&ctx=topic">Specifying tax rates
-</a></strong> — Help Center document describing how to set tax rates for different countries. </li>
-
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="localize">11. Start localization</h2>
-
-<p>With your country targeting in mind, it's a good idea to assess your localization
-needs and start the work of localizing well in advance of your target
-launch date.</p>
-
-<p>There are at least three aspects of localization to consider:</p>
-
-<ul>
-<li>Localizing the strings, images, and other resources in your app</li>
-<li>Localizing your app's store listing details on Google Play</li>
-<li>Localizing the app's graphic assets, screenshots, and videos that accompany your store listing.</li>
-</ul>
-
-<p>See <a href="{@docRoot}distribute/googleplay/publish/localizing.html">Localization Checklist</a> for key steps and considerations in the localizing process. </p>
-
-<p>To localize your store listing, first create and finalize your app title, description,
-and promotional text. Collect and send all of these for localization. You can optionally
-translate the "Recent Changes" text for app updates as well. Later you can add your localized
-listing details in the Developer Console, or you can choose to let Google Play auto-translate
-your listing details into the languages you support.</p>
-
-<p>A key part of making your app listing attractive to a global customer base is
-creating localized versions of your promotional graphics, screenshots and
-videos. For example, your app's feature graphic might include text that should
-be translated, for maximum effectiveness. You can create different versions of
-your promotional graphics for each language and upload them to the Developer
-Console. If you offer a promotional video, you can create localized versions of
-it and then add a link to the correct localized video for each language you
-support.</p>
-
-<p>When your translations are complete, move them into your app resources as needed and test
-that they are loaded properly. Save your app's translated listing details for later,
-when you upload assets and configure your product details.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}distribute/googleplay/publish/localizing.html">Localization Checklist</a></strong> — Overview of key steps and considerations for localizing your Android app.</li>
-<li><strong><a href="{@docRoot}guide/topics/resources/localization.html">Localizing with Resources</a></strong> — Developer guide to localizing resources in your app.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="graphics">12. Prepare promotional graphics, screenshots, and videos</h2>
-
-<p>When you publish on Google Play, you can supply a variety of high-quality
-graphic assets to showcase your app or brand. After you publish, these appear on
-your product details page, in store listings and search results, and elsewhere.
-These graphic assets are key parts of a successful product details page that
-attracts and engages users, so you should consider having a professional produce
-them for you. Screen shots and videos are also very important, because they show
-what your app looks like, how it's used or played, and what makes it different.</p>
-
-<p>All of your graphic assets should be designed so that they are easy to see
-and highlight your app or brand in a colorful, interesting way. The assets
-should reference the same logo and icon as users will actually find in the All
-Apps launcher once they have downloaded the app. Your graphic assets should also
-fit in well with the graphic assets of other apps published by you, which will
-be also be displayed to users on your product details page. </p>
-
-<p>To help you market your app more effectively to a global audience, Google
-Play lets you create localized versions of your promotional graphics,
-screenshots, and videos and upload them to the Developer Console. When a user
-visits your app's store listing, Google Play displays the promotional graphic,
-screenshots and video that you've provided for the user's language.</p>
-
-<p>To localize your promotional graphics, you can translate any embedded text, use
-different imagery or presentation, or change your marketing approach to best address the needs
-of users in specific languages. For example, if your feature or promotional graphic
-includes and embedded product name or tag line, you can translate that text
-and add it to a localized version of the promotional graphic.</p>
-
-<p>Because your localized graphic assets and videos are so important, you should get
-started on creating them and localizing them well in advance of your target
-publishing date. </p>
-
-<p class="note"><strong>Note:</strong> Localized promotional graphics and videos
-are supported only in the new Developer Console design.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1078870">Graphic Assets for your Application
-</a></strong> — Details about the graphic assets you need to upload before publishing.</li>
-<li><strong><a href="http://android-developers.blogspot.com/2011/10/android-market-featured-image.html">Google Play Featured Image Guidelines
-</a></strong> — Blog post that highlights key design considerations for your app's featured image.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="apk">13. Build and upload the release-ready APK</h2>
-
-<p>When you are satisfied that your app meets your UI, compatibility, and
-quality requirements, you can build the release-ready version of the app. The
-release-ready APK is what you you will upload to the Developer Console and
-distribute to users.
-
-<p>The process for preparing a release-ready APK is the same for all apps,
-regardless of how they are distributed. Generally the process includes basic code cleanup
-and optimization, building and signing with your release key, and final testing.
-When you are finished preparing your application for release, you'll have a signed
-APK file that you can upload to the Developer Console for distribution to
-users. </p>
-
-<p>For complete details on how to create a release-ready version of your app,
-read <a href="{@docRoot}tools/publishing/preparing.html">Preparing for
-Release</a>.</p>
-
-<p>Once you have the release-ready APK in hand, you can upload it to
-the Developer Console. If necessary, you can replace the APK with a more
-recent version before publishing. </p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}tools/publishing/preparing.html">Preparing for Release</a></strong> — Essential information for preparing and packaging your app properly for distribution.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="beta">14. Plan a beta release</h2>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>Easy beta testing</h2>
-<p>Google Play now lets you set up groups of alpha and beta testers, anywhere around the world. Check out this powerful feature next time you sign in to the Developer Console.</p>
-</div>
-</div>
-
-<p>Before launching your app, it's always valuable to get real-world feedback
-from users — even more so when you are launching a new app. It's highly
-recommended that you distribute a pre-release version of your app to users
-across your key markets and provide an easy means for them to provide feedback
-and report bugs. </p>
-
-<p>Google Play can help you set up a beta program for your app. After you sign
-in to the Developer Console and upload your APK, you can set up groups of users
-for alpha testing and beta testing the app. You can start with a small group of
-alpha testers, then move to a larger group of beta testers. Once users are
-added, they access your app's store listing and install the app. User feedback
-from alpha and beta testers goes directly to you and is not posted as public
-reviews. </p>
-
-<p>The feedback you receive will help you adjust your UI, translations, and
-store listing to ensure a great experience for users. </p>
-
-<h2 id="product-page">15. Complete the app's product details</h2>
-
-<p>On Google Play, your app's product information is shown to users on its
-product details page, the page that users visit to learn more about your app and
-the page from which they will decide to purchase or download your app, on their
-Android devices or on the web.</p>
-
-<p>Google Play gives you a variety of ways to promote your app and engage with
-users on your product details page, from colorful graphics, screenshots, and
-videos to localized descriptions, release details, and links to your other apps.
-As you prepare to publish your app, make sure that you take advantage of all
-that your product details page can offer, making your app as compelling as
-possible to users.</p>
-
-<p>You should begin planning your product page in advance of your target launch
-date, arranging for localized description, high-quality graphic assets,
-screenshots and video, and so on. </p>
-
-<p>As you get near your target publishing date, you should become familiar with
-all the fields, options, and assets associated with the product details configuration
-page in the Developer Console. As you collect the information and assets for the
-page, make sure that you can enter or upload it to the Developer Console, until
-the page is complete and ready for publishing. </p>
-
-<p>After you've set your app's geographic targeting in the Developer Console,
-remember to add your localized product details, promotional graphics, and so on, for all of the
-languages that you support.</p>
-
-<p>If your app is targeting tablet devices, make sure to include at least one screen
-shot of the app running on a tablet, and highlight your app's support for tablets
-in the app description, release notes, promotional campaigns, and elsewhere.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113475&topic=2365760&ctx=topic">Category types
-</a></strong> — Help Center document listing available categories for apps.</li>
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1078870&topic=2365760&ctx=topic">Graphic Assets for your Application
-</a></strong> — Help Center document describing the various graphics you can add to your product listing.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="badges">16. Use Google Play badges and links in your promotional
-campaigns</h2>
-
-<p>Google Play badges give you an officially branded way of promoting your app
-to Android users. Use the <a
-href="{@docRoot}distribute/googleplay/promote/badges.html">Google Play Badge
-generator</a> to quickly create badges to link users to your products from web
-pages, ads, reviews, and more. You can also use special <a
-href="{@docRoot}distribute/googleplay/promote/linking.html">link formats</a>
-to link directly to your product details page, to a list of your products, or to
-search results.</p>
-
-<p>To help your app get traction after launch, it's strongly recommended that you support
-launch with a promotional campaign that announces your product through many channels as
-possible, in as many countries as possible. For example, you can promote the launch
-using ad placements, social network or blog posts, video and other media, interviews
-and reviews, or any other channel available.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}distribute/googleplay/promote/badges.html">Google Play Badges</a></strong> — Generate a badge to bring users to your app in Google Play.</li>
-<li><strong><a href="{@docRoot}distribute/googleplay/promote/linking.html">Linking to Your Products</a></strong> — Link formats that you can use to bring users to your app in Google Play.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="final-checks">17. Final checks and publishing</h2>
-
-<p>When you think you are ready to publish, sign in to the Developer Console and take a few moments for a few
-final checks.</p>
-
-<p>Make sure that: </p>
-
-<ul>
-<li>Your developer profile has the correct information and is linked to the proper Google Wallet merchant account (if you are selling products).</li>
-<li>You have the right version of the app uploaded.</li>
-<li>All parts of your Product Details are ready, including all graphic assets, screenshots, video, localized descriptions, and so on. </li>
-<li>You have set your app's pricing to free or priced.</li>
-<li>You have set country (and carrier) targeting and priced your products (if appropriate) in buyer currencies</li>
-<li>"Compatible devices" shows that your app is actually reaching the devices that you are targeting. If not, you should check with your development team on the apps requirements and filtering rules. </li>
-<li>You have provided the correct link to your web site and the correct support email address.</li>
-<li>Your app does not violate content policy guidelines.</li>
-<li>You have acknowledged that your app meets the guidelines for Android content on Google Play and also US export laws. </li>
-</ul>
-
-<p>Your app is now ready to publish!</p>
-
-<p>If you are releasing an update, make sure to read the <a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113476&topic=2365760&ctx=topic">requirements for publishing updates</a>. </p>
-
-<p>When you are ready, click the <strong>Publish</strong> button in the Developer Console. Within a few hours, your app will become available to users and your product page will be appear in Google Play for browsing, searching, or linking from your promotional campaigns.</p>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://www.android.com/us/developer-content-policy.html">Google Play Developer Program Policies</a></strong> — Guidelines for what is acceptable conent in Google Play. Please read and understand the policies before publishing. </li>
-<li><strong><a href="{@docRoot}distribute/googleplay/promote/linking.html">Updates</a></strong> — Requirements for app updates in Google Play.</li>
-<li><strong><a href="{@docRoot}support.html">Developer Support</a></strong> — Support resources that you can use to find answers and report issues.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-
-<h2 id="support">18. Support users after launch</h2>
-
-<p>After you publish an app or an app update, it's crucial for you to support
-your customers. Prompt and courteous support can provide a better experience for
-users that results in better ratings and more positive reviews for your
-products. Users are likely to be more engaged with your app and recommend it if
-you are responsive to their needs and feedback. This is especially true after
-publishing if you are using a coordinated promotional campaign.</p>
-
-<p>There are a number of ways that you can keep in touch with users and offer
-them support. The most fundamental is to provide your <em>support email
-address</em> on your product details page. Beyond that, you can provide support
-in any way you choose, such as a forum, mailing list or a Google+ page. The
-Google Play team does provide user support for downloading, installing and
-payments issues, but issues that fall outside of these topics will fall under
-your domain. Examples of issues you can support include: feature requests,
-questions about using the app and questions about compatibility settings. </p>
-
-<p>After publishing, plan to: </p>
-<ul>
-<li>Check your ratings and reviews frequently on your app's product details
-page. Watch for recurring issues that could signal bugs or other issues. </li>
-<li>Be mindful of new Android platform version launches, as compatibility
-settings for your apps might need to be updated.</li>
-<li>Put a link to your support resources on your web site and set up any other
-support such as forums.</li>
-<li>Provide an appropriate support email address on your product details page
-and respond to users when they take the time to email you.</li>
-<li>Beyond the automatic refund window offered by Google Play, be generous with
-your own refund policy, as satisfied users will be more likely to purchase in
-the future. </li>
-<li>Acknowledge and fix issues in your app. It helps to be transparent and
-list known issues on your product details page proactively. </li>
-<li>Publish updates as frequently as you are able, without sacrificing quality
-or annoying users with too-frequent updates. </li>
-<li>With each update, make sure to provide a summary of what's changed. You can
-enter this information in the Developer Console. Users will read it and
-appreciate that you are serious about improving the quality of your app. </li>
-</ul>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113477&topic=2364761&ctx=topic">Supporting your users
-</a></strong> — Help Center document describing options for supporting users.</li>
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1153479">In-app Billing</a></strong> — Help Center document describing how to correctly set up In-app Billing.</li>
-<li><strong><a href="https://support.google.com/payments/answer/2741495?rd=1">Issuing Refunds</a></strong> — -- Help Center document describing how to issue refunds.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-
-
diff --git a/docs/html/distribute/googleplay/publish/register.jd b/docs/html/distribute/googleplay/publish/register.jd
deleted file mode 100644
index faade81..0000000
--- a/docs/html/distribute/googleplay/publish/register.jd
+++ /dev/null
@@ -1,80 +0,0 @@
-page.title=Get Started with Publishing
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-<h2>Help topics</h2>
-<ul>
- <li><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113468">Developer Registration</a></li>
- <li><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=138294&topic=2365624&ctx=topic">Supported Locations for Distributing Apps</a></li>
- <li><a href="http://support.google.com/googleplay/android-developer/bin/topic.py?hl=en&topic=2364761">Policy and Best Practices</a></li>
- <li><a href="http://support.google.com/googleplay/android-developer/">Developer Support</a></li>
-</ul>
-
-<h2>Get Started</h2>
-<ol>
- <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li>
-</ol>
-
-</div>
-</div>
-
-<p>You can set up to start publishing on Google Play in only a few minutes. Here's how you do it: </p>
-
-<ul>
-<li>Register for a Google Play publisher account</li>
-<li>If you will sell apps, set up a Google Wallet Merchant Account</li>
-<li>Explore the Google Play Developer Console and learn about the tools for publishing</li>
-</ul>
-
-
-<h3>Register for a publisher account</h3>
-
-<p>The first step is to visit the Google Play Developer Console and register for a publisher account.</p>
-
-<p>Here's what you will do during registration: </p>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2>Tips</h2>
- <ul>
- <li>You need a Google account to register. You can create one during the process. </li>
- <li>If you are an organization, consider registering a new Google account rather than using a personal account.</li>
- <li>Review the <a href="https://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=138294">developer countries</a> and <a href="https://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=150324">merchant countries</a> where you can distribute and sell apps.</li>
- </ul>
-</div></div>
-
-
-<ol>
-<li>Visit the Google Play Developer Console at <a
-href="https://play.google.com/apps/publish/">https://play.google.com/apps/publish/</a>.
-<li>Enter basic information about your <strong>developer identity</strong> — developer
-name, email address, and so on. You can modify this information later.</li>
-<li>Read and accept the <strong>Developer Distribution Agreement</strong> that applies to your
-country or region. Note that apps and store listings that you publish on Google Play must comply
-with the Developer Program Policies and US export law,</li>
-<li>Pay a <strong>$25 USD registration fee</strong> using Google Wallet. If you don't have
-a Google Wallet account, you can quickly set one up during the process.</li>
-</ol>
-
-<p>When your registration is verified, you’ll be notified at the email address you specified during registration.</p>
-
-<h3>Set up a Google Wallet Merchant account</h3>
-
-<p>If you want to sell products on Google Play — priced apps, in-app products, or subscriptions — you will also need to set up a Google Wallet Merchant Account. You can do that at any time, but make sure to first review the list of <a href="https://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=150324">merchant countries</a>.</p>
-
-<p>To set up a Merchant account from the Developer Console:</p>
-
-<ol>
-<li><strong>Sign in</strong> to your Google Play Developer Console at
-<a href="https://play.google.com/apps/publish/">https://play.google.com/apps/publish/</a>
-<li>Open <strong>Financial reports</strong> <img src="{@docRoot}images/distribute/console-reports.png"
- style="vertical-align:baseline;margin:0"> on the side navigation.
-<li>Click <strong>Setup a Merchant Account now</strong>.</li>
-</ol>
-
-<p>This takes you to the Google Wallet site to sign up as a Merchant;
-you'll need information about your business available to complete this step.</p>
-
-<h3>Explore the Developer Console</h3>
-<p>When your registration is verified, you can sign in to your Developer Console, which will be the home for your app publishing operations and tools on Google Play. </p>
diff --git a/docs/html/distribute/googleplay/quality/core.jd b/docs/html/distribute/googleplay/quality/core.jd
deleted file mode 100644
index 9e23bcc..0000000
--- a/docs/html/distribute/googleplay/quality/core.jd
+++ /dev/null
@@ -1,804 +0,0 @@
-page.title=Core App Quality Guidelines
-@jd:body
-
-<div id="qv-wrapper"><div id="qv">
-<h2>Quality Criteria</h2>
- <ol>
- <li><a href="#ux">Design and Interaction</a></li>
- <li><a href="#fn">Functionality</a></li>
- <li><a href="#ps">Performance and Stability</a></li>
- <li><a href="#listing">Google Play</a></li>
-
- </ol>
-
- <h2>Testing</h2>
- <ol>
- <li><a href="#test-environment">Setting Up a Test Environment</a></li>
- <li><a href="#tests">Test Procedures</a></li>
- </ol>
-
- <h2>You Should Also Read</h2>
- <ol>
- <li><a href="{@docRoot}distribute/googleplay/quality/tablet.html">Tablet App Quality Checklist</a></li>
- <li><a href="{@docRoot}distribute/googleplay/strategies/app-quality.html">Improving App Quality</a></li>
- </ol>
-
-
-</div>
-</div>
-
-<p>App quality directly influences the long-term success of your app—in
-terms of installs, user rating and reviews, engagement, and user retention.
-Android users expect high-quality apps, even more so if they've spent money on
-them.</p>
-
-<p>This document helps you assess basic aspects of quality in your app through a
-compact set of <em>core app quality criteria</em> and associated tests. All
-Android apps should meet these criteria.</p>
-
-<p>Before publishing your app, make sure to test it against these criteria to
-ensure that it functions well on many devices, meets Android standards for
-navigation and design, and is prepared for promotional opportunities in the
-Google Play Store. Your testing will go well beyond what's described here—the
-purpose of this document is to specify the essential characteristics
-of basic quality so that you can include them in your test plans.</p>
-
-<p>If your app is targeting tablet devices, make sure that it delivers a rich,
-compelling experience to your tablet customers. See the <a
-href="{@docRoot}distribute/googleplay/quality/tablet.html">Tablet App Quality
-Checklist</a> for recommendations on ways to optimize your app for tablets.</p>
-
-
-<h2 id="ux">Visual Design and User Interaction</h2>
-
-<p>These criteria ensure that your app provides standard Android visual design
-and interaction patterns where appropriate, for a consistent and intuitive
-user experience.</p>
-
-<table>
- <tr>
- <th style="width:2px;">
- Area
- </th>
- <th style="width:54px;">
- ID
- </th>
-
-
- <th>
- Description
- </th>
- <th style="width:54px;">
- Tests
- </th>
- </tr>
- <tr id="UX-B1">
- <td>Standard design</td>
- <td>
- UX-B1
- </td>
- <td>
- <p style="margin-bottom:.5em;">App follows <a href="{@docRoot}design/index.html">Android Design</a> guidelines and uses common <a href="{@docRoot}design/patterns/index.html">UI patterns and icons</a>:</p>
- <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
- <li>App does not redefine the expected function of a system icon (such as the Back button).</li>
- <li>App does not replace a system icon with a completely different icon if it triggers the standard UI behavior. </li>
- <li>If the app provides a customized version of a standard system icon, the icon strongly resembles the system icon and triggers the standard system behavior.</li>
- <li>App does not redefine or misuse Android UI patterns, such that icons or behaviors could be misleading or confusing to users.</li>
- </ol>
- </td>
- <td><a href="#core">CR-all</a></td>
- </tr>
-
-
- <tr>
- <td rowspan="3">Navigation</td>
- <td id="UX-N1">
- UX-N1
- </td>
-
- <td>
- <p>App supports standard system <a href="{@docRoot}design/patterns/navigation.html">Back button navigation</a> and does not make use of any custom, on-screen "Back button" prompts.</p>
- </td>
- <td><a href="#core">CR-3</a></td>
- </tr>
- <tr>
- <td id="UX-N2">
- UX-N2
- </td>
- <td>
- <p>All dialogs are dismissable using the Back button.</p>
- </td>
- <td><a href="#core">CR-3</a></td>
- </tr>
-
- <tr id="UX-N3">
- <td>
- UX-N3
- </td>
- <td>
- Pressing the Home button at any point navigates to the Home screen of the device.
- </td>
- <td><a href="#core">CR-1</a></td>
- </tr>
- <tr id="UX-S1">
- <td rowspan="2">Notifications</td>
- <td>
- UX-S1
- </td>
- <td>
- <p style="margin-bottom:.5em;">Notifications follow Android Design <a href="{@docRoot}design/patterns/notifications.html">guidelines</a>. In particular:</p>
- <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
- <li>Multiple notifications are stacked into a single notification object, where possible.</li>
- <li>Notifications are persistent only if related to ongoing events (such as music playback or a phone call).</li>
- <li>Notifications do not contain advertising or content unrelated to the core function of the app, unless the user has opted in.</li>
- </ol>
-
- </td>
- <td><a href="#core">CR-11</a></td>
- </tr>
- <tr id="UX-S2">
-
- <td>
- UX-S2
- </td>
-
- <td>
-
- <p style="margin-bottom:.5em;">App uses notifications only to:</p>
- <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
- <li>Indicate a change in context relating to the user personally (such as an incoming message), or</li>
- <li>Expose information/controls relating to an ongoing event (such as music playback or a phone call).</li>
- </ol>
- </td>
- <td><a href="#core">CR-11</a></td>
- </tr>
-
- </table>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="{@docRoot}design/index.html">Android Design</a></strong> — Overview of design and user experience best practices for Android apps. </li>
-<li><strong><a href="{@docRoot}design/patterns/navigation.html">Navigation with Back and Up</a></strong> — Android Design document describing standard navigation patterns. </li>
-<li><strong><a href="{@docRoot}design/patterns/actionbar.html">Action Bar</a></strong> — Android Design document describing how to use the Action Bar. </li>
-<li><strong><a href="{@docRoot}design/style/iconography.html">Iconography</a></strong> — Android Design describing how to use various types of icons.</li>
-<li><strong><a href="{@docRoot}design/patterns/notifications.html">Notifications</a></strong> — Android Design document describing how to design and use notifications. </li>
-</ul>
-</td>
-</tr>
-</table>
-
-<h2 id="fn">Functionality</h2>
-
-<p>These criteria ensure that your app provides expected functional behavior with the appropriate level of permissions. </p>
-
-<table>
- <tr>
- <th style="width:2px;">
- Area
- </th>
- <th style="width:54px;">
- ID
- </th>
-
-
- <th>
- Description
- </th>
- <th style="width:54px;">
- Tests
- </th>
- </tr>
-
- <tr id="FN-P1">
- <td rowspan="2">Permissions</td>
- <td>
- FN-P1
- </td>
- <td>App requests only the <em>absolute minimum</em> permissions that it needs to support core functionality.
- </td>
- <td rowspan="2"><a href="#core">CR-11</a></td>
- </tr>
- <tr id="FN-P2">
- <td>
- FN-P2
- </td>
- <td><p style="margin-bottom:.5em;">App does not request permissions to access sensitive data (such as Contacts or the System Log) or services that can cost the user money (such as the Dialer or SMS), unless related to a core capability of the app.
- </td>
- </tr>
- <tr id="FN-L1">
- <td>Install location</td>
- <td>
- FN-L1
- </td>
- <td>
- <p style="margin-bottom:.5em;">App functions normally when installed on SD card (if supported by app).</p>
-
- <p style="margin-bottom:.25em;">Supporting installation to SD card is recommended for most large apps (10MB+). See the <a href="{@docRoot}guide/topics/data/install-location.html">App Install Location</a> developer guide for information about which types of apps should support installation to SD card.</p>
- </td>
-
- <td><a href="#SD-1">SD-1</a>
- </td>
- </tr>
- <tr id="FN-A1">
- <td rowspan="4">Audio</td>
- <td>
- FN-A1
- </td>
-
- <td>
- Audio does not play when the screen is off, unless this is a core feature (for example, the app is a music player).
- </td>
- <td><a href="#core">CR-7</a></td>
- </tr>
- <tr id="FN-A2">
- <td>
- FN-A2
- </td>
- <td>
- Audio does not <a href="http://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html">play behind the lock screen</a>, unless this is a core feature.
- </td>
- <td><a href="#core">CR-8</a></td>
- </tr>
- <tr id="FN-A3">
- <td>
- FN-A3
- </td>
- <td>
- Audio does not play on the home screen or over another app, unless this is a core feature.
- </td>
- <td><a href="#core">CR-1, <br />CR-2</a></td>
- </tr>
- <tr id="FN-A4">
- <td>
- FN-A4
- </td>
- <td>
- Audio resumes when the app returns to the foreground, or indicates to the user that playback is in a paused state.
- </td>
- <td><a href="#core">CR-1, CR-8</a></td>
- </tr>
- <tr id="FN-U1">
- <td rowspan="3">UI and Graphics</td>
- <td>
- FN-U1
- </td>
- <td>
- <p style="margin-bottom:.5em;">App supports both landscape and portrait orientations (if possible).</em></p>
- <p style="margin-bottom:.25em;">Orientations expose largely the same features and actions and preserve functional parity.
- Minor changes in content or views are acceptable.</p>
- </td>
- <td><a href="#core">CR-5</a></td>
- </tr>
- <tr id="FN-U2">
- <td>
- FN-U2
- </td>
- <td>
- <p style="margin-bottom:.5em;">App uses the whole screen in both orientations and does not letterbox to account for orientation changes.</em></p>
- <p style="margin-bottom:.25em;">Minor letterboxing to compensate for small variations in screen geometry is acceptable.</p>
- </td>
- <td><a href="#core">CR-5</a></td>
- </tr>
- <tr id="FN-U3">
- <td>
- FN-U3
- </td>
- <td>
- <p style="margin-bottom:.5em;">App correctly handles rapid transitions between display orientations without rendering problems.</p>
- </td>
- <td><a href="#core">CR-5</a></td>
- </tr>
-
- <tr id="FN-S1">
- <td rowspan="2">User/app state</td>
- <td>
- FN-S1
- </td>
- <td>
- <p style="margin-bottom:.5em;">App should not leave any services running when the app is in the background, unless related to a core capability of the app.</p>
- <p style="margin-bottom:.25em;">For example, the app should not leave services running to maintain a network connection for notifications, to maintain a Bluetooth connection, or to keep the GPS powered-on.</p>
- </td>
- <td><a href="#core">CR-6</a></td>
- </tr>
- <tr id="FN-S2">
- <td>
- FN-S2
- </td>
- <td>
- <p style="margin-bottom:.5em;">App correctly preserves and restores user or app state.</p>
- <p style="margin-bottom:.25em;">App preserves user or app state when leaving the foreground and prevents accidental data loss due to back-navigation and other state changes. When returning to the foreground, the app must restore the preserved state and any significant stateful transaction that was pending, such as changes to editable fields, game progress, menus, videos, and other sections of the app or game.</p>
- <ol style="margin-bottom:.25em;list-style-type:lower-alpha">
- <li>When the app is resumed from the Recents app switcher, the app returns the user to the exact state in which it was last used.</li>
- <li>When the app is resumed after the device wakes from sleep (locked) state, the app returns the user to the exact state in which it was last used.</li>
- <li>When the app is relaunched from Home or All Apps, the app restores the app state as closely as possible to the previous state.</li>
- <li>On Back keypresses, the app gives the user the option of saving any app or user state that would otherwise be lost on back-navigation.</li>
- </ol>
- </td>
- <td><a href="#core">CR-1, CR-3, CR-5</a></td>
- </tr>
-
-</table>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html">Making Android Apps that Play Nice</a></strong> — Developer blog post discussing the audio lifecycle and expected audio behaviors for Android apps. </li>
-<li><strong><a href="{@docRoot}guide/components/tasks-and-back-stack.html">Tasks and Back Stack</a></strong> — Developer guide describing how to implement back-navigation.</li>
-<li><strong><a href="{@docRoot}training/basics/activity-lifecycle/recreating.html">Recreating an Activity</a></strong> — Android Training class the shows how to preserve and restore app state.</li>
-
-</ul>
-</td>
-</tr>
-</table>
-
-
-<h2 id="ps">Performance and Stability</h2>
-
-<p>To ensure a high user rating, your app needs to perform well and stay
-responsive on all of the devices and form factors and screens that it is
-targeting. These criteria ensure that the app provides the basic performance,
-stability, and responsiveness expected by users.</p>
-
-<table>
- <tr>
- <th style="width:2px;">
- Area
- </th>
- <th style="width:54px;">
- ID
- </th>
- <th>
- Description
- </th>
- <th style="width:54px;">
- Tests
- </th>
- </tr>
- <tr id="PS-S1">
- <td>Stability</td>
- <td>
- PS-S1
- </td>
- <td>
- App does not crash, force close, freeze, or otherwise function abnormally on any targeted device.
- </td>
- <td><a href="#core">CR-all</a>, <a href="#SD-1">SD-1</a>, <a href="#HA-1">HA-1</a></td>
- </tr>
-
- <tr id="PS-P1">
- <td rowspan="2">Performance</td>
- <td>
- PS-P1
- </td>
- <td>
- App loads quickly or provides onscreen feedback to the user (a progress indicator or similar cue) if the app
- takes longer than two seconds to load.
- </td>
- <td>
- <a href="#core">CR-all</a>, <a href="#SD-1">SD-1</a>
- </td>
- </tr>
- <tr id="PS-P2">
-
- <td>
- PS-P2
- </td>
- <td>
- With StrictMode enabled (see <a href="#strictmode">StrictMode Testing</a>, below), no red flashes (performance warnings from StrictMode) are visible when exercising the app, including
- during game play, animations and UI transitions, and any other part of the app.
- </td>
- <td>
- <a href="#PM-1">PM-1</a>
- </td>
- </tr>
- <tr id="PS-M1">
- <td>Media</td>
- <td>
- PS-M1
- </td>
- <td>
- Music and video playback is smooth, without crackle, stutter, or other artifacts, during normal app usage and load.
- </td>
- <td>
- <a href="#core">CR-all</a>, <a href="#SD-1">SD-1</a>, <a href="#HA-1">HA-1</a>
- </td>
- </tr>
- <tr id="PS-V1">
- <td rowspan="2">Visual quality</td>
- <td>
- PS-V1
- </td>
- <td>
- <p style="margin-bottom:.5em;">App displays graphics, text, images, and other UI elements without noticeable distortion, blurring, or pixelation.</p>
-
- <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
- <li>App provides high-quality graphics for all targeted screen sizes and form factors, including for <a href="{@docRoot}distribute/googleplay/quality/tablet.html">larger-screen devices such as tablets</a>.</li>
- <li>No aliasing at the edges of menus, buttons, and other UI elements is visible.</li>
- </ol>
- </td>
- <td rowspan="2"><a href="#core">CR-all</a></td>
- </tr>
- <tr id="PS-V2">
- <td>
- PS-V2
- </td>
- <td>
- <p style="margin-bottom:.5em;">App displays text and text blocks in an acceptable manner. </p>
-
- <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
- <li>Composition is acceptable in all supported form factors, including for larger-screen devices such as tablets.</li>
- <li>No cut-off letters or words are visible.</li>
- <li>No improper word wraps within buttons or icons are visible.</li>
- <li>Sufficient spacing between text and surrounding elements.</li>
- </ol>
- </td>
-
- </tr>
-</table>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="http://android-developers.blogspot.com/2010/12/new-gingerbread-api-strictmode.html">Using StrictMode</a></strong> — Developer blog post discussing StrictMode and how to use it for performance monitoring in your app. </li>
-<li><strong><a href="{@docRoot}guide/practices/responsiveness.html">Designing for Responsiveness</a></strong> — Developer guide describing best practices for keeping your app responsive.</li>
-<li><strong><a href="http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html">Multithreading for Performance</a></strong> — Developer blog post discussing ways to improve performance through multi-threading.</li>
-</ul>
-</td>
-</tr>
-</table>
-
-
-<h2 id="listing">Google Play</h2>
-
-<p>To launch your app successfully on Google Play, raise its ratings, and make
-sure that it is ready for promotional activities in the store, follow the
-criteria below.</p>
-
-<table>
- <tr>
- <th style="width:2px;">
- Area
- </th>
- <th style="width:54px;">
- ID
- </th>
- <th>
- Description
- </th>
- <th style="width:54px;">
- Tests
- </th>
- </tr>
- <tr id="GP-P1">
- <td rowspan="2">Policies</td>
- <td>
- GP-P1
- </td>
- <td>
- App strictly adheres to the terms of the <a href="http://play.google.com/about/developer-content-policy.html">Google Play Developer Content Policy</a> and does not offer inappropriate content, does not use intellectual property or brand of others, and so on.
- </td>
- <td>
- <a href="#gp">GP-all</a>
- </td>
- </tr>
-
- <tr id="GP-P2">
- <td>
- GP-P2
- </td>
- <td>
- <p style="margin-bottom:.5em;">App maturity level is set appropriately, based on the
- <a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=188189">Content Rating Guidelines</a>.</p>
-
- <p style="margin-bottom:.25em;">Especially, note that apps that request permission to use the device location cannot be given the maturity level "Everyone". </p>
- </td>
- <td>
- <a href="#gp">GP-1</a>
- </td>
- </tr>
-
- <tr id="GP-D1">
- <td rowspan="3">App Details Page</td>
- <td>
- GP-D1
- </td>
- <td>
- <p style="margin-bottom:.5em;">App feature graphic follows the guidelines outlined in this
- <a href="http://android-developers.blogspot.com/2011/10/android-market-featured-image.html">blog post</a>. Make sure that:</p>
-
- <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
- <li>The app listing includes a high-quality feature graphic.</li>
- <li>The feature graphic does not contain device images, screenshots, or small text that will be illegible when scaled down and displayed on the smallest screen size that your app is targeting.</li>
- <li>The feature graphic does not resemble an advertisement.</li>
- </ol>
-
-
- </td>
-
- <td>
- <a href="#gp">GP-1, GP-2</a>
- </td>
- </tr>
- <tr id="GP-D2">
- <td>
- GP-D2
- </td>
- <td>
- App screenshots and videos do not show or reference non-Android devices.
- </td>
- <td rowspan="2"><a href="#gp">GP-1</a></td>
- </tr>
- <tr id="GP-D3">
- <td>
- GP-D3
- </td>
- <td>
- App screenshots or videos do not
- represent the content and experience of your app in a misleading way.
- </td>
- </tr>
- <tr id="GP-X1">
- <td>User Support</td>
- <td>
- GP-X1
- </td>
- <td>Common user-reported bugs in the Reviews tab of the Google Play page are addressed if they are
- reproducible and occur on many different devices. If a bug occurs on only a few devices,
- you should still address it if those devices are particularly popular or new.
- </td>
-
- <td>
- <a href="#gp">GP-1</a>
- </td>
-
- </tr>
-</table>
-
-<table>
-<tr>
-<td><p>Related resources:</p>
-<ul style="margin-top:-.5em;">
-<li><strong><a href="https://play.google.com/apps/publish/">Launch Checklist</a></strong> — Recommendations on how to prepare your app for publishing, test it, and launch successfully on Google Play.</li>
-<li><strong><a href="http://play.google.com/about/developer-content-policy.html">Google Play Developer Program Policies</a></strong> — Guidelines for what is acceptable conent in Google Play. Please read and understand the and understand the policies before publishing.</p>
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=188189">Rating your application content for Google Play</a></strong> — Help Center document describing content ratings levels and how to choose the appropriate one for your app.</li>
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=1078870">Graphic Assets for your Application
-</a></strong> — Details about the graphic assets you need to upload before publishing.</li>
-<li><strong><a href="http://android-developers.blogspot.com/2011/10/android-market-featured-image.html">Google Play Featured Image Guidelines
-</a></strong> — Blog post discussing how to create an attractive, effective Featured Image for your app.</li>
-<li><strong><a href="http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113477&topic=2364761&ctx=topic">Supporting your users
-</a></strong> — Help Center document describing options for supporting users.</li>
-</ul>
-</td></tr>
-</table>
-
-
-<h2 id="test-environment">Setting Up a Test Environment</h2>
-
-<p>To assess the quality of your app, you need to set up a suitable
-hardware or emulator environment for testing. </p>
-
-<p>The ideal test environment would
-include a small number of actual hardware devices that represent key form
-factors and hardware/software combinations currently available to consumers.
-It's not necessary to test on <em>every</em> device that's on the market —
-rather, you should focus on a small number of representative devices, even using
-one or two devices per form factor. </p>
-
-<p>If you are not able to obtain actual hardware devices for testing, you should
-<a href="{@docRoot}tools/devices/index.html">set up emulated devices (AVDs)</a>
-to represent the most common form factors and
-hardware/software combinations.</p>
-
-<p>To go beyond basic testing, you can add more devices, more form factors, or
-new hardware/software combinations to your test environment. You can also
-increase the number or complexity of tests and quality criteria. </p>
-
-
-<h2 id="tests">
- Test Procedures
-</h2>
-
-<p>These test procedures help you discover various types of quality issues in
-your app. You can combine the tests or integrate groups of tests together in
-your own test plans. See the sections above for references that associate
-specific criteria with specific tests. </p>
-
-<table>
- <tr>
- <th style="width:2px;">
- Type
- </th>
- <th style="width:54px;">
- Test
- </th>
- <th>
- Description
- </th>
- </tr>
- <tr>
- <td rowspan="12" id="core">Core Suite</td>
- <td>
- CR-0
- </td>
- <td><p style="margin-bottom:.5em;">Navigate to all parts of the app — all screens, dialogs, settings, and all user flows. </p>
-
- <ol style="margin-bottom:.5em;list-style-type:lower-alpha">
- <li>If the application allows for editing or content creation, game play, or media playback, make sure to enter those flows to create or modify content.</li>
- <li>While exercising the app, introduce transient changes in network connectivity, battery function, GPS or location availability, system load, and so on. </li>
- </ol>
- </td>
- </tr>
- <tr id="tg2">
- <td id="core">
- CR-1
- </td>
- <td>From each app screen, press the device's Home key, then re-launch the app from the All Apps screen.
- </td>
- </tr>
- <tr id="CR-2">
- <td>
- CR-2
- </td>
- <td>From each app screen, switch to another running app and then return to the app under test using the Recents app switcher.
- </td>
- </tr>
-
- <tr id="CR-3">
- <td>
- CR-3
- </td>
- <td>From each app screen (and dialogs), press the Back button.
- </td>
- </tr>
- <tr id="CR-5">
- <td>
- CR-5
- </td>
- <td>From each app screen, rotate the device between landscape and portrait orientation at least three times.
- </td>
- </tr>
- <tr id="CR-6">
- <td>
- CR-6
- </td>
- <td>Switch to another app to send the test app into the background. Go to Settings and check whether the test app has any services running while in the background. In Android 4.0 and higher, go to the Apps screen and find the app in the "Running" tab. In earlier versions, use "Manage Applications" to check for running services.
- </td>
- </tr>
-
-
- <tr id="CR-7">
- <td>
- CR-7
- </td>
- <td>
- Press the power button to put the device to sleep, then press the power button again to
- awaken the screen.
- </td>
- </tr>
- <tr id="CR-8">
- <td>
- CR-8
- </td>
- <td>
- Set the device to lock when the power button is pressed. Press the power button to put the device to sleep, then press the power button again to
- awaken the screen, then unlock the device.
- </td>
- </tr>
- <tr id="CR-9">
- <!-- Hardware features -->
- <td>
- CR-9
- </td>
- <td>
- For devices that have slide-out keyboards, slide the keyboard in and out at least once. For devices that have keyboard docks, attach the device to the keyboard dock.
- </td>
- </tr>
- <tr id="CR-10">
- <td>
- CR-10
- </td>
- <td>
- For devices that have an external display port, plug-in the external display.
- </td>
- </tr>
- <tr id="CR-11">
- <td>
- CR-11
- </td>
- <td>Trigger and observe in the notications drawer all types of notifications that the app can display. Expand notifications where applicable (Android 4.1 and higher), and tap all actions offered.</td>
- </tr>
- <tr id="CR-12">
- <td>
- CR-12
- </td>
- <td>Examine the permissions requested by the app by going to Settings > App Info.
- </td>
- </tr>
- <tr id="tg3">
- <td>Install on SD Card</td>
- <td>
- SD-1
- </td>
- <td>
- <p style="margin-bottom:.5em;">Repeat <em>Core Suite</em> with app installed to <a href="{@docRoot}guide/topics/data/install-location.html">device SD card</a> (if supported by app).</p>
-
- <p style="margin-bottom:.25em;">To move the app to SD card, you can use Settings > App Info > Move to SD Card.</p>
- </td>
- </tr>
- <tr id="tg3">
- <td>Hardware acceleration</td>
- <td>
- HA-1
- </td>
- <td>
- <p style="margin-bottom:.5em;">Repeat <em>Core Suite</em> with hardware acceleration enabled.</p>
-
- <p style="margin-bottom:.25em;">To force-enable hardware acceleration (where supported by device), add <code>hardware-accelerated="true"</code> to the <code><application></code> in the app manifest and recompile.</p>
- </td>
- </tr>
- <tr id="tg3">
- <td>Performance Monitoring</td>
- <td>
- PM-1
- </td>
- <td>
- <p style="margin-bottom:.5em;">Repeat <em>Core Suite</em> with StrictMode profiling enabled <a href="#strictmode">as described below</a>. <p style="margin-bottom:.25em;">Pay close attention to garbage collection and its impact on the user experience.</p>
- </td>
- </tr>
- <tr id="gp">
- <td rowspan="3">Google Play</td>
- <td>
- GP-1
- </td>
- <td>
- Sign into the <a href="https://play.google.com/apps/publish/">Developer Console</a> to review your developer profile, app description, screenshots, feature graphic, maturity settings, and user feedback.
- </td>
- </tr>
- <tr id="GP-2">
- <td>
- GP-2
- </td>
- <td>
- Download your feature graphic and screenshots and scale them down to match the display sizes on the devices and form factors you are targeting.
- </td>
- </tr>
- <tr id="GP-3">
- <td>
- GP-3
- </td>
- <td>
- Review all graphical assets, media, text, code libraries, and other content packaged in the app or expansion file download.
- </td>
- </tr>
- <tr id="GP-4">
- <td>Payments</td>
- <td>
- GP-4
- </td>
- <td>
- Navigate to all screens of your app and enter all in-app purchase flows.
- </td>
-</tr>
-
-</table>
-
-<h3 id="strictmode">
-Testing with StrictMode
-</h3>
-
-<p>For performance testing, we recommend enabling
-{@link android.os.StrictMode} in your app
-and using it to catch operations on the main thread and other threads that could
-affect performance, network accesses, file reads/writes, and so on.</p>
-
-<p>You can set up a monitoring policy per thread using
-{@link android.os.StrictMode.ThreadPolicy.Builder} and enable all supported monitoring in the
-<code>ThreadPolicy</code> using
-{@link android.os.StrictMode.ThreadPolicy.Builder#detectAll()}.</p>
-
-<p>Make sure to enable <strong>visual notification</strong> of policy violations
-for the <code>ThreadPolicy</code> using {@link android.os.StrictMode.ThreadPolicy.Builder#penaltyFlashScreen() penaltyFlashScreen()}.</p>
diff --git a/docs/html/distribute/googleplay/quality/index.jd b/docs/html/distribute/googleplay/quality/index.jd
deleted file mode 100644
index ef537b1..0000000
--- a/docs/html/distribute/googleplay/quality/index.jd
+++ /dev/null
@@ -1,45 +0,0 @@
-page.title=App Quality
-@jd:body
-
-<p>App quality directly influences the long-term success of your app—in
-terms of installs, user rating and reviews, engagement, and user retention.
-Android users expect high-quality apps, even more so if they've spent money on
-them. At the same time, users enjoy and value apps that put a priority on
-continuous improvement. </p>
-
-<p>Before you publish an app on Google Play, it's important to make sure that
-your app meets the basic quality expectations of users, across all of the form
-factors and device types that the app is targeting. The documents in this
-section help you assess your app's fundamental quality and address any
-issues that you find. </p>
-
-<div class="vspace size-1">
-
-</div>
-<div class="layout-content-row">
- <div class="layout-content-col span-4">
- <h4>
- Core App Quality
- </h4>
- <p>
- A set of core quality criteria that all Android apps should meet on all targeted devices.
- </p><a href="{@docRoot}distribute/googleplay/quality/core.html">Learn more »</a>
- </div>
- <div class="layout-content-col span-4">
- <h4>
- Tablet App Quality
- </h4>
- <p>
- A set recommendations for delivering the best possible experience to tablet users.
- </p><a href="{@docRoot}distribute/googleplay/quality/tablet.html">Learn more »</a>
- </div>
- <div class="layout-content-col span-4">
- <h4>
- Improving App Quality
- </h4>
- <p>
- Tips on continuously improving your app's quality, ratings, reviews, downloads, and engagement.
- </p><a href="{@docRoot}distribute/googleplay/strategies/app-quality.html">Learn more
- »</a>
- </div>
-</div>
diff --git a/docs/html/distribute/googleplay/quality/tablet.jd b/docs/html/distribute/googleplay/quality/tablet.jd
deleted file mode 100644
index fe046d4..0000000
--- a/docs/html/distribute/googleplay/quality/tablet.jd
+++ /dev/null
@@ -1,969 +0,0 @@
-page.title=Tablet App Quality Checklist
-@jd:body
-
-<div id="qv-wrapper"><div id="qv">
-<h2>Checklist</h2>
-<ol>
-
-<li><a href="#core-app-quality">1. Test for Basic Tablet App Quality</a></li>
-<li><a href="#optimize-layouts">2. Optimize your layouts</a></li>
-<li><a href="#use-extra-space">3. Use the extra screen area</a></li>
-<li><a href="#use-tablet-icons">4. Use assets designed for tablets</a></li>
-<li><a href="#adjust-font-sizes">5. Adjust fonts and touch targets</a></li>
-<li><a href="#adjust-widgets">6. Adjust homescreen widgets</a></li>
-<li><a href="#offer-full-feature-set">7. Offer the app's full feature set</a></li>
-<li><a href="#android-versions">8. Target Android versions properly</a></li>
-<li><a href="#hardware-requirements">9. Declare dependencies properly</a></li>
-<li><a href="#support-screens">10. Declare tablet screens support</a></li>
-<li><a href="#google-play">11. Showcase your tablet UI</a></li>
-<li><a href="#google-play-best-practices">12. Follow publishing best practices</a></li>
-
-</ol>
-<h2>Testing</h2>
-<ol>
-<li><a href="#test-environment">Setting Up a Test Environment</a></li>
-</ol>
-</div></div>
-
-<p>Before you publish an app on Google Play, it's important to make sure that the app meets the basic expectations of tablet users through compelling features and an intuitive, well-designed UI. </p>
-
-<p>Tablets are a growing part of the Android installed base that offers new
-opportunities for <a
-href="{@docRoot}distribute/googleplay/spotlight/tablets.html">user engagement
-and monetization</a>. If your app is targeting tablet users, this document helps
-you focus on key aspects of quality, feature set, and UI that can have a
-significant impact on the app's success. Each focus area is given as checklist
-item, with each one comprising several smaller tasks or best practices.</p>
-
-<p>Although the checklist tasks below are numbered for convenience,
-you can handle them in any order and address them to the extent that you feel
-is right for your app. In the interest of delivering the best possible product
-to your customers, follow the checklist recommendations
-to the greatest extent possible. </p>
-
-<p>As you move through the checklist, you'll find links to support resources
-that can help you address the topics raised in each task.</p>
-
-
-<h2 id="core-app-quality" style="margin-top:1.5em;">1. Test for basic tablet app quality</h2>
-
-<p>The first step in delivering a great tablet app experience is making sure
-that it meets the <em>core app quality criteria</em> for all of the devices
-and form factors that the app is targeting. For complete information, see the <a
-href="{@docRoot}distribute/googleplay/quality/core.html">Core App Quality Guidelines</a>.
-</p>
-
-<p>
- Before publishing, also ensure that your app passes several basic
- technical checks and launch criteria, such as:
-</p>
-
-<ul>
- <li><a href="#android-versions">Targets appropriate Android versions</a></li>
- <li><a href="#hardware-requirements">Specifies any hardware dependencies properly</a></li>
- <li><a href="#support-screens">Declares support for appropriate screens</a></li>
- <li><a href="#use-extra-space">Uses all of the available screen space</a></li>
- <li><a href="#google-play">Screenshots are uploaded to Google Play</a></li>
-</ul>
-
-<p>If your app is already uploaded to the Google Play Developer Console, you
- can see how it is doing against these checks
- by visiting the <a href="#google-play-optimization-tips">Optimization
- Tips page</a>.</p>
-
-
-<h2 id="optimize-layouts">2. Optimize your layouts for larger screens</h2>
-
-<p>Android makes it easy to develop an app that runs well on a wide range of
-device screen sizes and form factors. This broad compatibility works in your
-favor, since it helps you design a single app that you can distribute widely to
-all of your targeted devices. However, to give your users the best possible
-experience on each screen configuration — in particular on tablets
-— you need to optimize your layouts and other UI components for each
-targeted screen configuration. On tablets, optimizing your UI lets you take
-full advantage of the additional screen available, such as to offer new features,
-present new content, or enhance the experience in other ways to deepen user
-engagement.</p>
-
-<p>If you developed your app for handsets and now want to distribute it to
-tablets, you can start by making minor adjustments to your layouts, fonts, and
-spacing. In some cases — such as for 7-inch tablets or for a game with
-large canvas — these adjustments may be all
-you need to make your app look great. In other cases, such as for larger
-tablets, you can redesign parts of your UI to replace "stretched UI" with an
-efficient multipane UI, easier navigation, and additional content. </p>
-
-<p>Here are some suggestions:</p>
-
-<div style="width:390px;float:right;margin:1.5em;margin-top:0em;">
-<img src="{@docRoot}images/training/app-navigation-multiple-sizes-multipane-bad.png"
-style="width:390px;padding:4px;margin-bottom:0em;">
-<p class="image-caption" style="padding:0em .5em .5em 2em"><span
-style="font-weight:500;">Get rid of "stretched" UI</span>: On tablets, single-pane
-layouts lead to awkward whitespace and excessive line lengths. Use padding to
-reduce the width of UI elements and consider using multi-pane layouts.</p>
-</div>
-
-<ul>
-<li>Provide custom layouts as needed for <code>large</code> and
-<code>xlarge</code> screens. You can also provide layouts that are loaded based
-on the screen's <a href="{@docRoot}guide/practices/screens_support.html#NewQualifiers">shortest
-dimension</a> or the <a href="{@docRoot}guide/practices/screens_support.html#NewQualifiers">minimum
-available width and height</a>. </li>
-<li>At a minimum, customize dimensions such as font sizes, margins, spacing for
-larger screens, to improve use of space and content legibility. </li>
-<li>Adjust positioning of UI controls so that they are easily accessible to
-users when holding a tablet, such as toward the sides when in
-landscape orientation.</li>
-<li>Padding of UI elements should normally be larger on tablets than on handsets. A
-<a href="{@docRoot}design/style/metrics-grids.html#48dp-rhythm">48dp rhythm</a> (and a 16dp
-grid) is recommended.</li>
-<li>Adequately pad text content so that it is not aligned directly along screen edges.
-Use a minimum <code>16dp</code> padding around content near screen edges.</li>
-</ul>
-
-<p>In particular, make sure that your layouts do not appear "stretched"
-across the screen:</p>
-
-<ul>
-<li>Lines of text should not be excessively long — optimize for a maximum
-100 characters per line, with best results between 50 and 75.</li>
-<li>ListViews and menus should not use the full screen width.</li>
-<li>Use padding to manage the widths of onscreen elements or switch to a
-multi-pane UI for tablets (see next section).</li>
-</ul>
-
-<div class="rel-resources">
- <h3>
- Related resources
- </h3>
-
- <ul>
- <li>
- <a href=
- "{@docRoot}design/style/metrics-grids.html">Metrics
- and Grids</a>—Android Design document that explains how to create
- layouts based on density-independent grids.
- </li>
-
- <li>
- <a href=
- "{@docRoot}design/style/devices-displays.html">Devices
- and Displays</a>—Android Design document that explains how to
- design a UI that works well on different devices and
- screen sizes.
- </li>
-
- <li>
- <a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple
- Screens</a>—Developer documentation that explains the details of
- managing UI for best display on multiple screen sizes.
- </li>
-
- <li>
- <a href=
- "{@docRoot}guide/practices/screens_support.html#ConfigurationExamples">
- Configuration examples</a>—Examples of how to declare layouts and
- other resources for specific screen sizes.
- </li>
- </ul>
-</div>
-
-
-<h2 id="use-extra-space">3. Take advantage of extra screen area available on tablets</h2>
-
-<div style="width:290px;float:right;margin:1.5em;margin-bottom:0;margin-top:0;">
-<img src="{@docRoot}images/training/app-navigation-multiple-sizes-multipane-good.png"
-style="width:280px;padding:4px;margin-bottom:0em;">
-<p class="image-caption" style="padding:0em .5em .5em 1.5em"><span
-style="font-weight:500;">Multi-pane layouts</span> result in a better visual
-balance on tablet screens, while offering more utility and legibility.</p>
-</div>
-
-<p>Tablet screens provide significantly more screen real estate to your app,
-especially when in landscape orientation. In particular, 10-inch tablets offer a
-greatly expanded area, but even 7-inch tablets give you more space for
-displaying content and engaging users. </p>
-
-<p>As you consider the UI of your app when running on tablets, make sure that it
-is taking full advantage of extra screen area available on tablets. Here are
-some suggestions:</p>
-
-<ul>
-<li>Look for opportunities to include additional content or use an alternative
-treatment of existing content.</li>
-<li>Use <a href="{@docRoot}design/patterns/multi-pane-layouts.html">multi-pane
-layouts</a> on tablet screens to combine single views into a compound view. This
-lets you use the additional screen area more efficiently and makes it easier for
-users to navigate your app. </li>
-<li>Plan how you want the panels of your compound views to reorganize when
-screen orientation changes.</li>
-
-<div style="width:490px;margin:1.5em auto 1.5em 0;">
-<div style="">
-<img src="{@docRoot}images/ui-ex-single-panes.png"
-style="width:490px;padding:4px;margin-bottom:0em;" align="middle">
-<img src="{@docRoot}images/ui-ex-multi-pane.png" style="width:490px;padding:4px;margin-bottom:0em;">
-<p class="image-caption" style="padding:.5em"><span
-style="font-weight:500;">Compound views</span> combine several single views from a
-handset UI <em>(above)</em> into a richer, more efficient UI for tablets
-<em>(below)</em>. </p>
-</div>
-</div>
-
-<li>While a single screen is implemented as an {@link android.app.Activity}
-subclass, consider implementing individual content panels as {@link
-android.app.Fragment} subclasses. This lets you
-maximize code reuse across different form factors and across screens that
-share content.</li>
-<li>Decide on which screen sizes you'll use a multi-pane UI, then provide the
-different layouts in the appropriate screen size buckets (such as
-<code>large</code>/<code>xlarge</code>) or minimum screen widths (such as
-<code>sw600dp</code>/<code>sw720</code>).</li>
-</ul>
-
-<div class="rel-resources">
- <h3>
- Related resources
- </h3>
-
- <ul>
- <li>
- <a href="{@docRoot}design/patterns/multi-pane-layouts.html">Multi-pane
- Layouts</a>—Android Design guide for using multi-pane UI, including
- examples of how to flatten navigation and integrate more content into
- your tablet UI.
- </li>
-
- <li>
- <a href=
- "{@docRoot}training/design-navigation/multiple-sizes.html">Planning for Multiple
- Touchscreen Sizes</a>—Android Training class that walks you through
- the essentials of planning an intuitive, effective navigation for tablets
- and other devices.
- </li>
-
- <li>
- <a href="{@docRoot}training/multiscreen/index.html">Designing for
- Multiple Screens</a>—Android Training class that walks you through
- the essentials of planning an intuitive, effective navigation for tablets
- and other devices.
- </li>
- </ul>
-</div>
-
-
-<h2 id="use-tablet-icons">4. Use Icons and other assets that are designed
-for tablet screens</h2>
-
-<p>To ensure your app looks its best, provide icons and other bitmap
-assets for each density in the range commonly supported by tablets. Specifically, you should
-design your icons for the action bar, notifications, and launcher according to the
-<a href="{@docRoot}design/style/iconography.html">Iconography</a> guidelines and
-provide them in multiple densities, so they appear at the appropriate size on all screens
-without blurring or other scaling artifacts.</p>
-
-<p class="table-caption"><strong>Table 1</strong>. Raw asset sizes for icon types.<table>
-<tr>
-<th>Density</th>
-<th>Launcher</th>
-<th>Action Bar</th>
-<th>Small/Contextual</th>
-<th>Notification</th>
-</tr>
-<tr>
-<td><code>mdpi</code></td>
-<td>48x48 px</td>
-<td>32x32 px</td>
-<td>16x16 px</td>
-<td>24x24 px</td>
-</tr>
-<tr>
-<td><code>hdpi</code></td>
-<td>72x72 px</td>
-<td>48x48 px</td>
-<td>24x24 px</td>
-<td>36x36 px</td>
-</tr>
-<tr>
-<td><code>tvdpi</code></td>
-<td><em>(use hdpi)</em></td>
-<td><em>(use hdpi)</em></td>
-<td><em>(use hdpi)</em></td>
-<td><em>(use hdpi)</em></td>
-</tr>
-<tr>
-<td><code>xhdpi</code></td>
-<td>96x96 px</td>
-<td>64x64 px</td>
-<td>32x32 px</td>
-<td>48x48 px</td>
-</tr>
-<tr>
-<td><code>xxhdpi</code></td>
-<td>144x144 px</td>
-<td>96x96 px</td>
-<td>48x48 px</td>
-<td>72x72 px</td>
-</tr>
-
-</table>
-
-<p>Your app should supply a version of each icon and bitmap asset that's optimized
-for <strong>at least one</strong> the following common tablet screen densities:</p>
-
-<ul>
- <li><code>hdpi</code></li>
- <li><code>xhdpi</code></li>
- <li><code>xxhdpi</code></li>
-</ul>
-
-<p>Other tips:</p>
-
-<ul>
-<li>When possible, use vector shapes for your icon designs so you can scale them
-without loss of detail and edge crispness.</li>
-<li>Use density-specific <a
-href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">
-resource qualifiers</a> to ensure that the proper icons are loaded for each screen density.</li>
-<li>Tablets and other large screen devices often request a launcher icon that is one density
-size larger than the device's actual density, so you should provide your launcher
-icon at the highest density possible. For example, if a tablet has an {@code xhdpi} screen,
-it will request the {@code xxhdpi} version of the launcher icon.</li>
-</ul>
-
-<div class="rel-resources">
- <h3>
- Related resources
- </h3>
-
- <ul>
- <li>
- <a href="{@docRoot}design/style/iconography.html">Iconography</a>—
- Design guidelines and tips about how to create various types of icons.
- </li>
-
- <li>
- <a href=
- "{@docRoot}guide/topics/resources/providing-resources.html">Providing
- Resources</a>—Developer documentation on how to provide
- sets of layouts and drawable resources for specific ranges of device
- screens.
- </li>
-
- <li>
- <a href="{@docRoot}guide/practices/screens_support.html">Supporting
- Multiple Screens</a>—API Guide documentation that
- explains the details of managing UI for best display on multiple screen
- sizes.
- </li>
-
- <li>
- <a href=
- "{@docRoot}training/basics/supporting-devices/screens.html">Supporting Different
- Screens</a>—Android Training class that takes you
- through the process of optimizing the user experience for different
- screen sizes and densities.
- </li>
- </ul>
-</div>
-
-
-<h2 id="adjust-font-sizes">5. Adjust font sizes and touch targets for tablet screens</h2>
-
-<p>To make sure your app is easy to use on tablets, take some time to adjust the
-font sizes and touch targets in your tablet UI, for all of the screen
-configurations you are targeting. You can adjust font sizes through <a
-href="{@docRoot}guide/topics/ui/themes.html">styleable attributes</a> or <a
-href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">dimension
-resources</a>, and you can adjust touch targets through layouts and bitmap
-drawables, as discussed above. </p>
-
-<p>Here are some considerations:</p>
-<ul>
-<li>Text should not be excessively large or small on tablet screen sizes and
-densities. Make sure that labels are sized appropriately for the UI elements they
-correspond to, and ensure that there are no improper line breaks in labels,
-titles, and other elements.</li>
-<li>The recommended touch-target size for onscreen elements is 48dp (32dp
-minimum) — some adjustments may be needed in your tablet UI. Read <a
-href="{@docRoot}design/style/metrics-grids.html">Metrics and
-Grids
-</a> to learn about implementation strategies to help most of your users. To
-meet the accessibility needs of certain users, it may be appropriate to use
-larger touch targets. </li>
-<li>When possible, for smaller icons, expand the touchable area to more than
-48dp using {@link android.view.TouchDelegate}
-or just centering the icon within the transparent button.</li>
-</ul>
-
-<div class="rel-resources">
- <h3>
- Related resources
- </h3>
-
- <ul>
- <li>
- <a href=
- "{@docRoot}design/style/metrics-grids.html">Metrics
- and Grids</a> —Android Design document that explains how to arrange
- and size touch targets and other UI elements on the screen.
- </li>
-
- <li>
- <a href="{@docRoot}design/style/typography.html">Typography</a>—Android
- Design document that gives an overview of how to use typography in your
- apps.
- </li>
-
- <li>
- <a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple
- Screens</a>—Developer documentation that explains the details of
- managing UI for best display on multiple screen sizes.
- </li>
-
- <li>
- <a href="{@docRoot}training/multiscreen/screendensities.html">Supporting
- Different Densities</a>—Android Training class that shows you how
- to provide sets of layouts and drawable resources for specific ranges of
- device screens.
- </li>
- </ul>
-</div>
-
-
-<h2 id="adjust-widgets">6. Adjust sizes of home screen widgets for tablet screens</h2>
-
-<p>If your app includes a home screen widget, here are a few points to consider
-to ensure a great user experience on tablet screens: </p>
-
-<ul>
-<li>Make sure that the widget's default height and width are set appropriately
-for tablet screens, as well as the minimum and maximum resize height and width.
-</li>
-<li>The widget should be resizable to 420dp or more, to span 5 or more home
-screen rows (if this is a vertical or square widget) or columns (if this is a
-horizontal or square widget). </li>
-<li>Make sure that 9-patch images render correctly.</li>
-<li>Use default system margins.</li>
-<li>Set the app's <code>targetSdkVersion</code> to 14 or higher, if
-possible.</li>
-</ul>
-
-<div class="rel-resources">
- <h3>
- Related resources
- </h3>
-
- <ul>
- <li>
- <a href="{@docRoot}guide/topics/appwidgets/index.html#MetaData">Adding the
- AppWidgetProviderInfo Metadata</a> —API Guide that explains how to
- set the height and width dimensions of a widget.
- </li>
-
- <li>
- <a href="{@docRoot}guide/practices/ui_guidelines/widget_design.html">App Widget
- Design Guidelines</a>—API Guide that provides best practices and
- techniques for designing and managing the size of widgets.
- </li>
- </ul>
-</div>
-
-
-<h2 id="offer-full-feature-set">7. Offer the app's full feature set to tablet users</h2>
-
-<p>Let your tablet users experience the best features of your app. Here are
-some recommendations:</p>
-
-<ul>
-<li>Design your app to offer at least the same set of features on tablets as it does on
-handsets. </li>
-<li>In exceptional cases, your app might omit or replace certain features on
-tablets if they are not supported by the hardware or use-case of most tablets.
-For example:
-<ul>
-<li>If the handset uses telephony features but telephony is not available on the
-current tablet, you can omit or replace the related functionality.</li>
-<li>Many tablets have a GPS sensor, but most users would not normally carry
-their tablets while running. If your phone app provides functionality to let the
-user record a GPS track of their runs while carrying their phones, the app would not need to
-provide that functionality on tablets because the use-case is not
-compelling.</li>
-</ul>
-</li>
-<li>If you will omit a feature or capability from your tablet UI, make sure
-that it is not accessible to users or that it offers “graceful degradation”
-to a replacement feature (also see the section below on hardware features).</li>
-</ul>
-
-<h2 id="android-versions">8. Target Android versions properly</h2>
-
-<p>To ensure the broadest possible distribution to tablets, make sure that your
-app properly targets the Android versions that support tablets. Initial support for
-tablets was added in <a href="{@docRoot}about/versions/android-3.0.html">Android 3.0</a>
-(API level 11). Unified UI
-framework support for tablets, phones, and other devices was introduced in <a
-href="{@docRoot}about/versions/android-4.0.html">Android 4.0</a> (API level 14) and is
-supported in later versions.
-
-<p>You can set the app's
-range of targeted Android versions in the manifest file, in the
-<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code><uses-sdk></code></a> element. In most cases, you can target Android versions properly by setting the element's <code>targetSdkVersion</code> attribute to the highest API level available.</p>
-
-<p style="margin-bottom:.5em;">At a minimum, check the <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code><uses-sdk></code></a>
- element to make sure that:</p>
-
- <ol style="list-style-type:lower-alpha;margin-top:0em;">
- <li><code>targetSdkVersion</code> is declared with value 11 or higher (14 or higher is recommended), OR</li>
- <li><code>minSdkVersion</code> is declared with value 11 or higher.</li>
- <li>If a <code>maxSdkVersion</code> attribute is declared, it must have a value of 11 or higher. Note that, in general, the use of <code>maxSdkVersion</code> is <em>not recommended</em>.</li>
-</ol>
-
-<div class="rel-resources">
-<h3>
- Related resources
-</h3>
-
-<ul>
- <li>
- <a href=
- "{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">Android API
- Levels</a>—Introduces API levels and how they relate to compatibility.
- A reference of available API levels is included.
- </li>
- <li>
- <a href="{@docRoot}training/basics/supporting-devices/platforms.html">Supporting Different Platform Versions</a>—Training class showing how to declare support for
- minimum and target API levels in your app.
- </li>
-</ul>
-</div>
-
-<h2 id="hardware-requirements">9. Declare hardware feature dependencies properly</h2>
-
-<p>
- Handsets and tablets typically offer slightly different hardware support for
- sensors, camera, telephony, and other features. For example, many tablets are
- available in a "Wi-Fi" configuration that does not include telephony support.
-</p>
-
-<p>
- So that you can distribute a single APK broadly across your full customer
- base of phones and tablets, make sure that your app doesn't declare
- requirements for hardware features that aren't commonly available on tablets.
- Instead, properly declare the hardware features as <em>not required</em> in the app
- manifest, as described below.
-</p>
-
-<ul>
-<li>In your app manifest, locate any <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a>
-elements. In particular, look for hardware features that might not be
-available on some tablets, such as:
-
-<ul>
-<li><code>android.hardware.telephony</code></li>
-<li><code>android.hardware.camera</code> (refers to back camera), or</li>
-<li><code>android.hardware.camera.front</code></li>
-</ul></li>
-
-<li>Declare the <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a>
-elements as <em>not required</em> by including the <code>android:required=”false”</code>
-attribute.
-
-<p>
- For example, here's the proper way to declare a dependency on
- <code>android.hardware.telephony</code>, such that you can still
- distribute the app broadly, even to devices that don't offer telephony:
-</p>
-
-<pre><uses-feature android:name="android.hardware.telephony" android:required="false" /></pre></li>
-
-<li>Similarly, check the manifest for <a href="/guide/topics/manifest/permission-element.html"><code><permission></code></a> elements that
-<a href="/guide/topics/manifest/uses-feature-element.html#permissions">imply hardware
-feature requirements</a> that not be appropriate for tablets. If you find such
-permissions, make sure to explicitly declare a corresponding
-<code><uses-feature></code> element for the features and includes the
-<code>android:required=”false”</code> attribute.</li>
-</ul>
-
-
-<p>
- After declaring hardware features as <em>not required</em>, make sure to test
- your app on a variety of devices. The app should function normally when the
- hardware features it uses are not available, and it should offer "graceful
- degradation" and alternative functionality where appropriate.
-</p>
-
-<p>
- For example, if an app normally uses GPS to set the location but GPS is not
- supported on the device, the app could let the user set the location manually
- instead. The app can check for device hardware capabilities at runtime and handle
- as needed.
-</p>
-
-<div class="rel-resources">
-<h3>
- Related resources
-</h3>
-
-<ul>
- <li>
- <a href=
- "{@docRoot}guide/topics/manifest/uses-feature-element.html#permissions">Permissions
- that Imply Feature Requirements</a>—A list of permissions that may
- cause unwanted filtering if declared in your app's manifest.
- </li>
- <li>
- <a href=
- "{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a>—Description
- and reference documentation for the <code><uses-feature></code>
- manifest element.
- </li>
-
- <li>
- <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#testing">Testing
- the features required by your application</a>—Description of how to
- determine the actual set of hardware and software requirements (explicit or
- implied) that your app requires.
- </li>
-</ul>
-</div>
-
-<h2 id="support-screens">10. Declare support for tablet screens</h2>
-
-<p>To ensure that you can distribute your app to a broad range of tablets, your app should
-declare support for tablet screen sizes in its manifest file, as follows:</p>
-
-<ul>
- <li>A
- <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html"><code><supports-screens></code></a>
- element, if declared, must not specify <code>android:largeScreens="false"</code>
- or <code>android:xlargeScreens="false"</code>.</li>
- <li>For apps targeting <code>minSdkVersion</code> value less than 13, a
- <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html"><code><supports-screens></code></a>
- element must be declared with both <code>android:largeScreens="true"</code> and
- <code>android:xlargeScreens="true"</code>.</li>
-</ul>
-
-<p>If the app declares a
-<a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html"><code><compatible-screens></code></a>
-element in the manifest, the element should include attributes that specify
-<em>all of the size and density combinations for tablet screens</em> that the
-app supports. Note that, if possible, you should avoid using the
-<a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html"><code><compatible-screens></code></a>
-element in your app.</p>
-
-<div class="rel-resources">
- <h3>
- Related resources
- </h3>
-
- <ul>
- <li>
- <a href=
- "{@docRoot}guide/practices/screens_support.html#DeclaringScreenSizeSupport">Declaring
- Screen Size Support</a>—Developer documentation that explains the
- details of managing UI for best display on multiple screen sizes.
- </li>
- </ul>
-</div>
-
-
-<h2 id="google-play">11. Showcase your tablet UI in Google Play</h2>
-
-<p>
- After you've done the work to create an rich, optimized UI for your tablet
- app, make sure that you let your customers know about it! Here are some key
- ways to promote your tablet app to users on Google Play.
-</p>
-
-<h4>
- Upload screenshots of your tablet UI
-</h4>
-
-<p>
- Tablet users want to know what your app is like on a tablet device, not on a
- phone. If you developed a tablet app, make sure to upload screenshots
- of your tablet UI to the Google Play Developer Console. Here are some guidelines:
- </p>
-
-<ul style="margin-top:0;">
- <li>Your screenshots should show the core functionality of your app, not a
- startup or sign-in page. Wherever users will spend most of their time, that's
- what you should show in your screenshots.
- </li>
-
- <li>Add screenshots taken on both 7-inch and 10-inch tablets.
- </li>
-
- <li>It's recommended that you add screenshots taken in both landscape and
- portrait orientations, if possible.
- </li>
-
- <li>Use screen captures if possible. Avoid showing actual device hardware in your
- screenshots.</li>
-
- <li>The recommended resolution of your tablet screenshots is <strong>1280 x 720</strong>
- or higher in each orientation.
- </li>
-
- <li>You can upload as many as 8 screenshots of your tablet UI for 7-inch tablets
- and an additional 8 for 10-inch tablets.
- </li>
-</ul>
-
-<h4>
- Update your app description and release notes
-</h4>
-
-<ul>
- <li>In your app description, make sure to highlight that your app offers
- tablet-optimized UI and great features for tablet users. Consider adding some
- detail about how your tablet UI works and why users will like it.
- </li>
-
- <li>Include information about tablet support in the app's release notes and
- update information.
- </li>
-</ul>
-
-<h4>
- Update your promotional video
-</h4>
-
-<p>
- Many users view an app's promotional video to get an idea of what the app is
- like and whether they'll enjoy it. For tablet users, capitalize on this
- interest by highlighting your app's tablet UI in your promotional video. Here
- are some tips and guidelines:
-</p>
-
-<ul>
- <li>Add one or more shots of your app running on a tablet. To engage with
- tablet users most effectively, it's recommended that you promote your tablet
- UI in approximately equal proportion to your phone UI.
- </li>
-
- <li>Show your tablet UI as early as possible in the video. Don't assume that
- tablet users will wait patiently through a feature walkthrough on a phone UI.
- Ideally, you should engage them immediately by showing the tablet UI within
- the first 10 seconds, or at the same point that you introduce the phone UI.
- </li>
-
- <li>To make it clear that you are showing a tablet UI, include shots of your
- app running on a hand-held tablet device.
- </li>
-
- <li>Highlight your app's tablet UI in the video's narrative or voiceover.
- </li>
-</ul>
-
-<h4>
- Feature your tablet UI in your promotional campaigns
-</h4>
-
-<p>
- Make sure to let tablet users know about your tablet UI in your promotional
- campaigns, web site, social posts, advertisements, and elsewhere. Here are
- some suggestions:
-</p>
-
-<ul>
- <li>Plan a marketing or advertising campaign that highlights the use of your
- app on tablets.</li>
-
- <li>Show your tablet app at its best in your promotional campaigns—use the <a href=
- "{@docRoot}distribute/promote/device-art.html">Device Art Generator</a> to
- quickly generate a high-quality promotional image of your app running on a
- 7-inch or 10-inch tablet, in the orientation of your choice, with or without
- drop-shadow and screen glare. It's as simple as capture, drag, and drop.
- </li>
-
- <li>Include a Google Play badge in your online promotions to let users link
- directly to your app's store listing. You can generate a badge in a variety
- of languages using the <a href=
- "{@docRoot}distribute/googleplay/promote/badges.html">Badge Generator</a>.
- </li>
-</ul>
-
-<div class="rel-resources">
- <h3>
- Related resources
- </h3>
-
- <ul>
- <li>
- <a href="{@docRoot}distribute/googleplay/publish/preparing.html">Publishing
- Checklist</a>
- —Recommendations on how to prepare your app for publishing, test
- it, and launch successfully on Google Play.
- </li>
-
- <li>
- <a href="https://play.google.com/apps/publish/">Google Play
- Developer Console</a>—The tools console for publishing
- your app to Android users.
- </li>
- <li>
- <a href=
- "{@docRoot}distribute/googleplay/promote/badges.html">Google Play
- Badge Generator</a>—Create "Get it on Google Play" badges for your
- app in a variety of languages with a single click.
- </li>
- <li>
- <a href=
- "{@docRoot}distribute/promote/device-art.html">Device Art
- Generator</a>—Drag and drop tool that lets you instantly create production-
- ready art showing your app running on a tablet device.
- </li>
- </ul>
-</div>
-
-<h2 id="google-play-best-practices">12. Follow best practices for publishing in Google Play</h2>
-
-<p>Here are some best practices for delivering a successful tablet app on Google Play.</p>
-
-<h4 id="google-play-optimization-tips">Check out your app's Optimization Tips</h4>
-
-<p>The Google Play Developer Console now offers an Optimization Tips page that
-lets you quickly check how your app is doing against basic guidelines for tablet app
-distribution and quality. To visit the page, sign into the Developer Console,
-load the app from All Applications, and click Optimization Tips in
-the left navigation.</p>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h2 style="line-height:1em;">How to send feedback</h2>
-
-<p>Please use the link below to send
-feedback or request a manual review of your Optimization Tips.</p>
-
-<p>Make sure to read the relevant sections of the Tablet App Quality
-Guidelines prior to sending feedback.</p>
-
-<p><strong><a href="https://support.google.com/googleplay/android-developer/contact/tabletq"
-target="_googleplay" style="white-space:nowrap">Designed for Tablets Contact Form »</a></strong></p>
-</div>
-</div>
-
-<p>The Developer Console creates your app's Optimization Tips page
-by running a series of checks to verify basic quality
-criteria. If it finds any issues, it alerts you to them as "To Do"
-items in the Optimization Tips page.</p>
-
-<p>If you've developed a tablet experience for your app, make sure
-to visit the Optimization Tips page to see how your app is doing
-against the basic checks. If there are any issues listed, we
-recommend addressing them in your app and uploading a new binary for
-distribution, if needed. </p>
-
-<p>If the Optimization Tips page lists "To Do" issues that you feel don't
-apply to your app or affect its quality on tablets, please notify us
-using the <a href="https://support.google.com/googleplay/android-developer/contact/tabletq"
-target="_googleplay" style="white-space:nowrap">Designed for Tablets Contact Form »</a>. We
-will review your app and update your Optimization Tips page as
-appropriate.</p>
-
-
-<h4>Confirm the app's filtering</h4>
-
-<p>After you've uploaded the app to the <a href="https://play.google.com/apps/publish/">Developer Console</a>, check the APK's Supported Devices list to make sure that the app is not filtered from tablet devices that you want to target.</p>
-
-<h4>Distribute as a single APK</h4>
-
-<p>
- It's recommended that you publish your app as a single APK for all screen
- sizes (phones and tablets), with a single Google Play listing. This approach
- has several important advantages.
-</p>
-
-<ul style="margin-top:.25em;">
- <li>Easier for users to find your app from search, browsing, or promotions
- </li>
-
- <li>Easier for users to restore your app automatically if they get a new
- device.
- </li>
-
- <li>Your ratings and download stats are consolidated across all devices.
- </li>
-
- <li>Publishing a tablet app in a second listing can dilute ratings for your
- brand.
- </li>
-</ul>
-
-<p>
- If necessary, you can alternatively choose to deliver your app using <a href=
- "{@docRoot}google/play/publishing/multiple-apks.html">Multiple APK Support</a>,
- although in most cases using a single APK to reach all devices is strongly
- recommended.
-</p>
-
-<div class="rel-resources">
-<h3>Related resources</h3>
-<ul>
-<li><a href="{@docRoot}distribute/googleplay/publish/preparing.html">Publishing
- Checklist</a>—
- Recommendations on how to prepare your app for publishing, test it, and launch
- successfully on Google Play.</li>
-<li><a href="https://play.google.com/apps/publish/">Google Play Developer
- Console</a>—The tools console for publishing your app to Android users.</li>
-</ul>
-</div>
-
-
-<h2 id="test-environment">Setting Up a Test Environment for Tablets</h2>
-
-<p>To assess the quality of your app on tablets — both for core app quality
-and tablet app quality — you need to set up a suitable
-hardware or emulator environment for testing. </p>
-
-<p>The ideal test environment would
-include a small number of actual hardware devices that represent key form
-factors and hardware/software combinations currently available to consumers.
-It's not necessary to test on <em>every</em> device that's on the market —
-rather, you should focus on a small number of representative devices, even using
-one or two devices per form factor. The table below provides an overview of
-devices you could use for testing.</p>
-
-<p>If you are not able to obtain actual hardware devices for testing, you should
-<a href="{@docRoot}tools/devices/index.html">set up emulated devices (AVDs)</a>
-to represent the most common form factors and
-hardware/software combinations. See the table below for suggestions on the emulator
-configurations to use. </p>
-
-<p>To go beyond basic testing, you can add more devices, more form factors, or
-new hardware/software combinations to your test environment. For example, you
-could include mid-size tablets, tablets with more or fewer hardware/software
-features, and so on. You can also increase the number or complexity of tests
-and quality criteria. </p>
-
-<p class="table-caption"><strong>Table 1</strong>. A typical tablet test environment might
-include one or two devices from each row in the table below, with one of the
-listed platform versions, screen configurations, and hardware feature configurations.</p>
-
-<table>
-<tr>
-<th>Type</th>
-<th>Size</th>
-<th>Density</th>
-<th>Version</th>
-<th>AVD Skin</th>
-</tr>
-
-<tr>
-<td>7-inch tablet</td>
-<td><span style="white-space:nowrap"><code>large</code> or</span><br /><code>-sw600</code></td>
-<td><code>hdpi</code>,<br /><code>tvdpi</code></td>
-<td>Android 4.0+ (API level 14 and higher)</td>
-<td>WXGA800-7in</td>
-</tr>
-<tr>
-<td><span style="white-space:nowrap">10-inch</span> tablet</td>
-<td><span style="white-space:nowrap"><code>xlarge</code> or</span><br /><code>-sw800</code></td>
-<td><code>mdpi</code>,<br /><code>hdpi</code>,<br /><code>xhdpi</code></td>
-<td>Android 3.2+ (API level 13 and higher)</td>
-<td>WXGA800</td>
-</tr>
-</table>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/spotlight/index.jd b/docs/html/distribute/googleplay/spotlight/index.jd
deleted file mode 100644
index fc2e162..0000000
--- a/docs/html/distribute/googleplay/spotlight/index.jd
+++ /dev/null
@@ -1,162 +0,0 @@
-page.title=Spotlight
-page.tags="videos, google play, monetize, inapp"
-meta.tags="stories, googleplay, monetizing, landing"
-page.image=/images/video-kiwi.jpg
-walkthru=0
-header.hide=0
-
-@jd:body
-
-
-<p>Android developers, their apps, and their successes with Android and Google Play. </p>
-
-<div id="Kiwi" style="background: #F0F0F0;
- border-top: 1px solid #DDD;
- padding: 0px 0 24px 0;
- overflow: auto;
- clear:both;
- margin-bottom:40px;
- margin-top:30px;">
- <div style="padding:0 0 0 29px;">
- <h4>Developer Story: Kiwi, Inc.</h4>
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 17px 20px 9px 0;"
- src="//lh4.ggpht.com/qUI-8MJy70l4qoVBR_sx-56ckR_m0R_ZXcJ1DiTYUR3R_owWzsCFTYkAk4p5DMnaSdY3=w124" >
- <div style="width:700px;">
- <p style="margin-top:26px;
- margin-bottom:12px;">
- Android-first developer <a href="//play.google.com/store/apps/developer?id=Kiwi,+Inc." target="_android">Kiwi, Inc.</a> has had 5 titles in the top 25 grossing on Google Play, including <a href="https://play.google.com/store/apps/details?id=com.kiwi.shipwrecked" target="_android">Shipwrecked: Lost Island</a>, <a href="https://play.google.com/store/apps/details?id=com.kiwi.monsterpark" target="_android">Monsterama Park</a>, and <a href="https://play.google.com/store/apps/details?id=com.kiwi.mysteryestate" target="_android">Hidden Object: Mystery Estate</a>. Hear how Google Play helped them double revenue every six months with features like instant updates, staged rollouts, and more.</p>
- </div>
- <iframe style="float:left;
- margin-right:24px;
- margin-top:14px;" width="700" height="394" src=
- "http://www.youtube.com/embed/WWArLD6nqrk?HD=1;rel=0;origin=developer.android.com;" frameborder="0" allowfullscreen>
- </iframe>
- </div>
-</div>
-<div style="background: #F0F0F0;
- border-top: 1px solid #DDD;
- padding: 0px 0 24px 0;
- overflow: auto;
- clear:both;
- margin-bottom:40px;
- margin-top:30px;">
- <div style="padding:0 0 0 29px;">
- <h4>Developer Story: Colopl</h4>
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 17px 20px 9px 0;"
- src="//lh3.ggpht.com/sx2ILNaXQYOsHfR91T5tUWGlfXE1FutHCBN02Fll6mi9gIaG6RZCGbeJMtIvOoegCPTh=w124" >
- <div style="width:700px;">
- <p style="margin-top:26px;
- margin-bottom:12px;">
- The creators of Kuma The Bear, Japan-based <a href="https://play.google.com/store/apps/developer?id=COLOPL,+Inc." target="_android">Colopl</a>, talk about how Google Play and Android allowed them to grow their business to become one of the most profitable games publishers in APAC to date. </p>
- </div>
- <iframe style="float:left;
- margin-right:24px;
- margin-top:14px;" width="700" height="394" src=
- "http://www.youtube.com/embed/CbpoZeQCNe4?HD=1;rel=0;origin=developer.android.com;" frameborder="0" allowfullscreen>
- </iframe>
- </div>
-</div>
-
-<div style="background: #F0F0F0;
- border-top: 1px solid #DDD;
- padding: 0px 0 24px 0;
- overflow: auto;
- clear:both;
- margin-bottom:40px;
- margin-top:30px;">
- <div style="padding:0 0 0 29px;">
- <h4>Developer Story: redBus.in</h4>
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 17px 20px 9px 0;" src=
- "//lh4.ggpht.com/kvI2XfzBPGBDASvxvP18MCCj7YPEmLcG4nh1BlYW4XzaW12gg3iXtcM2ZqDnAfLLB9ed=w124">
- <div style="width:700px;">
- <p style="margin-top:26px;
- margin-bottom:12px;">
- Bangalore-based developers <a href="//play.google.com/store/apps/details?id=in.redbus.android">redBus.in</a> are bringing the sophistication and convenience of air-travel booking to bus transit. Hear how Android is helping them deliver a superior travel experience to millions of daily bus riders in India.</p>
- </div>
- <iframe style="float:left;
- margin-right:24px;
- margin-top:14px;" width="700" height="394" src=
- "http://www.youtube.com/embed/O8i4HUw7JYA?HD=1;rel=0;origin=developer.android.com;" frameborder="0" allowfullscreen>
- </iframe>
- </div>
-</div>
-
-<div style="background: #F0F0F0;
- border-top: 1px solid #DDD;
- padding: 0px 0 24px 0;
- overflow: auto;
- clear:both;
- margin-bottom:40px;
- margin-top:30px;">
- <div style="padding:0 0 0 29px;">
- <h4>Developer Story: Smule</h4>
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 17px 20px 9px 0;" src=
- "//lh6.ggpht.com/z5wl9PuHl9JfO54uefjRTUX70SuLY-1DRpPxQ5mg7XEDfnYhBDssh1RrPZjN1tbwzhg=w124">
- <div style="width:700px;">
- <p style="margin-top:26px;
- margin-bottom:12px;">
- The creators of <a href="//play.google.com/store/apps/details?id=com.smule.autorap">AutoRap</a>, <a href="//play.google.com/store/apps/details?id=com.smule.magicpiano">Magic Piano</a>, and <a href="//play.google.com/store/apps/details?id=com.smule.songify">Songify</a> talk about their experiences launching on Android, the explosive global growth they’ve seen on Google Play, and some of the techniques they use to market and monetize their products effectively across the world.</p>
- </div>
- <iframe style="float:left;
- margin-right:24px;
- margin-top:14px;" width="700" height="394" src=
- "http://www.youtube.com/embed/RRelFvc6Czo?HD=1;rel=0;origin=developer.android.com;" frameborder="0" allowfullscreen>
- </iframe>
- </div>
-</div>
-
-<div style="background: #F0F0F0;
- border-top: 1px solid #DDD;
- padding: 0px 0 24px 0;
- overflow: auto;
- clear:both;
- margin-bottom:-10px;
- margin-top:30px;">
- <div style="padding:0 0 0 29px;">
- <h4>Developer Story: Robot Invader</h4>
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 17px 20px 9px 0;" src=
- "//g0.gstatic.com/android/market/com.robotinvader.knightmare/hi-256-0-9e08d83bc8d01649e167131d197ada1cd1783fb0">
- <div style="width:700px;">
- <p style="margin-top:26px;margin-bottom:12px;">Robot Invader chose
- Android and Google Play as the launch platform for their first game,<br />
- <a data-g-event="Developers Page" data-g-label="Case Study Link" href=
- "//play.google.com/store/apps/details?id=com.robotinvader.knightmare"><em>Wind-up
- Knight</em></a>.
- </p>
- <p>
- Hear from the developers how Android helped them reach millions of users
- and more than 100 device models with a single app binary, then iterate rapidly to ensure
- a great user experience.
- </p>
- </div>
- <iframe style="float:left;
- margin-right:24px;
- margin-top:14px;" width="700" height="394" src=
- "http://www.youtube.com/embed/hTtlLiUTowY" frameborder="0" allowfullscreen></iframe>
- </div>
-</div>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/start.jd b/docs/html/distribute/googleplay/start.jd
new file mode 100644
index 0000000..6dc397b
--- /dev/null
+++ b/docs/html/distribute/googleplay/start.jd
@@ -0,0 +1,163 @@
+page.title=Get Started with Publishing
+page.metaDescription=Start publishing on Google Play in minutes by registering for a developer account.
+meta.tags="publishing"
+page.tags="google play", "publishing", "register", "signup"
+page.image=/distribute/images/getting-started.jpg
+
+@jd:body
+
+<div class="top-right-float" style="margin-right:24px;margin-top:-18px">
+ <a href="https://play.google.com/apps/publish/"><img src=
+ "{@docRoot}images/gp-start-button.png"></a>
+</div>
+
+<p>
+ Start publishing on Google Play in minutes by:
+</p>
+
+<ul>
+ <li>Registering for a Google Play publisher account
+ </li>
+
+ <li>Setting up a Google Wallet Merchant Account, if you will sell apps or
+ in-app products.
+ </li>
+
+ <li>Exploring the <a href="https://play.google.com/apps/publish/">Google Play
+ Developer Console</a> and publishing tools.
+ </li>
+</ul>
+
+<p>
+ When you're ready, use the Start button to go to the Developer Console.
+</p>
+
+<div class="headerLine">
+ <h1>
+ Register for a Publisher Account
+ </h1>
+
+ <hr>
+</div>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <h2>
+ Tips
+ </h2>
+
+ <ul>
+ <li>You need a Google account to register. You can create one during the
+ process.
+ </li>
+
+ <li>If you are an organization, consider registering a new Google account
+ rather than using a personal account.
+ </li>
+
+ <li>Review the <a href=
+ "https://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=138294">
+ developer countries</a> and <a href=
+ "https://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=150324">
+ merchant countries</a> where you can distribute and sell apps.
+ </li>
+ </ul>
+ </div>
+</div>
+
+<ol>
+ <li>Visit the <a href="https://play.google.com/apps/publish/">Google Play
+ Developer Console</a>.
+ </li>
+
+ <li>Enter basic information about your <strong>developer identity</strong>
+ — name, email address, and so on. You can modify this information
+ later.
+ </li>
+
+ <li>Read and accept the <strong>Developer Distribution Agreement</strong> for
+ your country or region. Note that apps and store listings that you publish on
+ Google Play must comply with the Developer Program Policies and US export
+ law.
+ </li>
+
+ <li>Pay a <strong>$25 USD registration fee</strong> using Google Wallet. If
+ you don't have a Google Wallet account, you can quickly set one up during the
+ process.
+ </li>
+
+ <li>When your registration is verified, you’ll be notified at the email
+ address you entered during registration.
+ </li>
+</ol>
+
+<div class="headerLine">
+ <h1 id="merchant-account">
+ Set Up a Google Wallet Merchant Account
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure" style="width:200px;">
+ <img src="{@docRoot}images/gp-start-wallet-icon.png">
+</div>
+
+<p>
+ If you want to sell priced apps, in-app products, or subscriptions, you’ll
+ need a Google Wallet Merchant Account. You can set one up at any time, but
+ first review the list of <a href=
+ "https://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=150324">
+ merchant countries</a>.<br>
+ <br>
+ To set up a Google Wallet Merchant Account:<br>
+ <br>
+</p>
+
+<ol>
+ <li>
+ <strong>Sign in</strong> to your Google Play Developer Console at <a href=
+ "https://play.google.com/apps/publish/" target=
+ "_blank">https://play.google.com/apps/publish/</a>.
+ </li>
+
+ <li>Open <strong>Financial reports</strong> <img src=
+ "{@docRoot}images/distribute/console-reports.png"> on the side navigation.
+ </li>
+
+ <li>Click <strong>Setup a Merchant Account now</strong>.
+ </li>
+</ol>
+
+<p>
+ This takes you to the Google Wallet site; you'll need information about your
+ business to complete this step.
+</p>
+
+<div class="headerLine">
+ <h1>
+ Explore the Developer Console
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ When your registration is verified, you can sign in to your Developer
+ Console, which is the home for your app publishing operations and tools on
+ Google Play.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-dc-home.png" class="border-img">
+</div>
+
+<div class="headerLine">
+<h1 id="related-resources">Related Resources</h1><hr />
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/googleplay/gettingstarted"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
diff --git a/docs/html/distribute/googleplay/strategies/app-quality.jd b/docs/html/distribute/googleplay/strategies/app-quality.jd
deleted file mode 100644
index eb2cd2b..0000000
--- a/docs/html/distribute/googleplay/strategies/app-quality.jd
+++ /dev/null
@@ -1,121 +0,0 @@
-page.title=Improving App Quality After Launch
-@jd:body
-
-<div id="qv-wrapper">
-<div id="qv">
-<h2>Strategies</h2>
-<ol>
-<li><a href="#listen">Listen to Your Users</a></li>
-<li><a href="#stability">Improve Stability and Eliminate Bugs</a></li>
-<li><a href="#responsiveness">Improve UI Responsiveness</a></li>
-<li><a href="#usability">Improve Usability</a></li>
-<li><a href="#appearance">Professional Appearance and Aesthetics</a></li>
-<li><a href="#features">Deliver the Right Set of Features</a></li>
-<li><a href="#integrate">Integrate with the System and Third-Party Apps</a></li>
-<li><a href="#details">Pay Attention to Details</a></li>
-</ol>
-
-<h2>You Should Also Read</h2>
-<ol>
-<li><a href="{@docRoot}distribute/googleplay/quality/core.html">Core App Quality Guidelines</a></li>
-<li><a href="{@docRoot}distribute/googleplay/quality/tablet.html">Tablet App Quality Checklist</a></li>
-</ol>
-
-</div>
-</div>
-
-<p>
-With thousands of new apps being published in Google Play every week, it's important to look for any available way to get the most visibility and the highest ratings possible. One way of improving your app's visibility in the ecosystem is by deploying well-targeted mobile advertising campaigns and cross-app promotions. Another time-tested method of fueling the impression-install-ranking cycle is simply: <em>improve the product</em>!</p>
-<p>
-A better app can go a very long way: a higher quality app will translate to higher user ratings, generally better rankings, more downloads, and higher retention (longer install periods). High-quality apps also have a much higher likelihood of getting some unanticipated positive publicity such as being featured in Google Play or getting social media buzz.</p>
-<p>
-The upside to having a higher-quality app is obvious. However, it's not always clear how to make an app "better". This document looks at some of the key factors in app quality and ways of improving your app over time, after you've launched the app.</p>
-
-<h2 id="listen">Listen to Your Users</h2>
-<p>
-Most ways of measuring the "success" of an app are dependent on user behavior. User-related metrics such as number of downloads, daily active installs, retention rates, and so on highlight the importance of users. If you aren't doing so already, it's a good idea to start thinking of your app's quality as it relates to your users.</p>
-<p>
-The most obvious way to listen to users is by reading and addressing comments on your app in Google Play. Although the comments aren't always productive or constructive, some will provide valuable insight on aspects of your app that you may not have consciously considered before. It's important to remember that users have the opportunity to change their ratings and comments about an app as much as they'd like.</p>
-<p>
-One way to reach users and help them address their concerns is to set up your own support and discussion destination(s). There are some great support tools out there that can put you in touch with your users directly, from forums such as <a href="http://groups.google.com">Google Groups</a> to comprehensive customer support products and destinations. Once you get set up with such a tool, make sure to fill in the support link in your Google Play product details page — users do click through to these.</p>
-<p>
-Another way to better listen to your users is by having a public beta or trusted tester program. It's crucial to have some amount of real user testing before releasing something in Google Play. Fortunately, you can distribute your apps to users outside of Google Play via a website; this website can require a login or be publicly accessible — it's entirely up to you. Take advantage of this opportunity by offering your next planned update to some early adopters, before submitting to Google Play. You'll be surprised by how many little, yet impactful, improvements can come out of crowd-sourced, real-user testing.</p>
-
-
-<h2 id="stability">Improve Stability and Eliminate Bugs</h2>
-
-<p>
-The effect of overall app stability of ratings and user satisfaction is very well-known and there are many tools and techniques for testing and profiling your app on different devices and user scenarios.</p>
-<p>
-One noteworthy and yet relatively underused tool for catching stability issues such as crashes is the <a href="{@docRoot}tools/help/monkey.html">UI/Application Exerciser Monkey</a> (Monkey). Monkey will send random UI events to your app's activities, allowing you to trigger user flows that can uncover stability problems.</p>
-<p>
-Also, with the Google error-reporting features built into most Android devices, users now have a way to report application crashes to developers. The error reports show up in aggregate in the Google Play Developer Console. Make sure to read these reports often and act on them appropriately.</p>
-<p>
-Last, keep an external bug and feature request tracker and let users know how to find it. This will enable them to engage with the app at a closer level, by following features and bugs that affect them. User frustration with app problems can be effectively managed with diligent issue tracking and communication. Some of the community support tools listed above offer issue tracking features, and if your project is open source, most popular repository hosting sites will offer this as well.</p>
-
-<h2 id="responsiveness">Improve UI Responsiveness</h2>
-<p>
-One sure-fire way to lose your users is to give them a slow, unresponsive UI. Research has shown that <a href="http://googleresearch.blogspot.com/2009/06/speed-matters.html">speed matters</a>... for any interface, be it desktop, web, or mobile. In fact, the importance of speed is amplified on mobile devices since users often need their information on the go and in a hurry.</p>
-<p>
-You can improve your apps's UI responsiveness by moving long-running operations off the main thread to worker threads. Android offers built-in debugging facilities such as StrictMode for analyzing your app's performance and activities on the main thread. You can see more recommendations in <a href="http://www.youtube.com/watch?v=c4znvD-7VDA">Writing Zippy Android Apps</a>, a developer session from Google I/O 2010,</p>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<h3>More resources</h3>
-<ul>
-<li><a href="{@docRoot}design/index.html">Android Design</a></li>
-<li><a href="{@docRoot}guide/practices/performance.html">Designing for Performance</a></li>
-<li><a href="{@docRoot}guide/practices/responsiveness.html">Designing for Responsiveness</a>
-<li><a href="{@docRoot}guide/practices/seamlessness.html">Designing for Seamlessness</a>
-</li>
-</ul>
-</div></div>
-<p>
-A great way to improve UI performance is to minimize the complexity of your layouts. If you open up <a href="{@docRoot}tools/help/hierarchy-viewer.html">hierarchyviewer</a> and see that your layouts are more than 5 levels deep, it may be time to simplify your layout. Consider refactoring those deeply nested LinearLayouts into RelativeLayout. The impact of View objects is cumulative — each one costs about 1 to 2 KB of memory, so large view hierarchies can be a recipe for disaster, causing frequent VM garbage collection passes which block the main (UI) thread. You can learn more in <a href="http://www.youtube.com/watch?v=wDBM6wVEO70">World of ListView</a>, another session at Google I/O.</p>
-<p>
-Lastly, pointed out in the blog post <a href="http://android-developers.blogspot.com/2010/10/traceview-war-story.html">Traceview War Story</a>, tools like <a href="{@docRoot}tools/help/traceview.html">traceview</code> and <a href="{@docRoot}tools/help/ddms.html">ddms</a> can be your best friends in improving your app by profiling method calls and monitoring VM memory allocations, respectively.</p>
-
-
-<h2 id="usability">Improve Usability</h2>
-<p>
-In usability and in app design too, you should listen carefully to your users. Ask a handful of real Android device users (friends, family, etc.) to try out your app and observe them as they interact with it. Look for cases where they get confused, are unsure of how to proceed, or are surprised by certain behaviors. Minimize these cases by rethinking some of the interactions in your app, perhaps working in some of the <a href="http://www.youtube.com/watch?v=M1ZBjlCRfz0">user interface patterns</a> the Android UI team discussed at Google I/O.</p>
-
-<div class="sidebox-wrapper">
-<div class="sidebox">
-<p>
-As you are designing or evaluating your app's UI, make sure to read and become familiar with the <a href="/design/index.html">Android Design</a> guidelines. Included are many examples of UI patterns, styles, and building blocks, as well as tools for the design process.</p>
-</div></div>
-
-<p>
-In the same vein, two problems that can plague some Android user interfaces are small tap targets and excessively small font sizes. These are generally easy to fix and can make a big impact on usability and user satisfaction. As a general rule, optimize for ease of use and legibility, while minimizing, or at least carefully balancing, information density.</p>
-
-<p>
-Another way to incrementally improve usability, based on real-world data, is to implement <a href="http://code.google.com/mobile/analytics/docs/">Analytics</a> throughout your app to log usage of particular sections. Consider demoting infrequently used sections to the overflow menu in the <a href="{@docRoot}design/patterns/actionbar.html">Action bar</a>, or removing them altogether. For often-used sections and UI elements, make sure they're immediately obvious and easily accessible in your app's UI so that users can get to them quickly.</p>
-<p>
-Lastly, usability is an extensive and well-documented subject, with close ties to interface design, cognitive science, and other disciplines.</p>
-
-<h2 id="appearance">Professional Appearance and Aesthetics</h2>
-<p>
-There's no substitute for a real user interface designer — ideally one who's well-versed in mobile and Android, and ideally handy with both interaction and visual design. One popular venue to post openings for designers is <a href="http://jobs.smashingmagazine.com">jobs.smashingmagazine.com</a>, and leveraging social networks can also surface great talent.</p>
-<p>
-If you don't have the luxury of working with a UI designer, there are some ways in which you can improve your app's appearance yourself. First, get familiar with Adobe Photoshop, Adobe Fireworks, or some other raster image editing tool. Mastering the art of the pixel in these apps takes time, but honing this skill can help build polish across your interface designs. Also, master the resources framework by studying the framework UI assets and layouts and reading through the <a href="{@docRoot}guide/topics/resources/index.html">resources documentation</a>. Techniques such as 9-patches and resource directory qualifiers are somewhat unique to Android, and are crucial in building flexible yet aesthetic UIs.</p>
-<p>
-Before you get too far in designing your app and writing the code, make sure to visit the Android Design site and learn about the vision, the building blocks, and the tools of designing beautiful and inspiring user interfaces.</p>
-
-<h2 id="features">Deliver the Right Set of Features</h2>
-<p>
-Having the <em>right</em> set of features in your app is important. It's often easy to fall into the trap of feature-creep, building as much functionality into your app as possible. Providing instant gratification by immediately showing the most important or relevant information is crucial on mobile devices. Providing too much information can be as frustrating (or even more so) than not providing enough of it.</p>
-<p>
-Again, listen to your users by collecting and responding to feature requests. Be careful, though, to take feature requests with a grain of salt. Requests can be very useful in aggregate, to get a sense of what kinds of functionality you should be working on, but not every feature request needs to be implemented.</p>
-
-<h2 id="integrate">Integrate with the System and Third-Party apps</h2>
-<p>
-A great way to deliver a delightful user experience is to integrate tightly with the operating system. Features like <a href="{@docRoot}guide/topics/appwidgets/index.html">Home screen widgets</a>, <a href="{@docRoot}design/patterns/notifications.html">rich notifications</a>, <a href="{@docRoot}guide/topics/search/index.html">global search integration</a>, and {@link android.widget.QuickContactBadge Quick Contacts} are fairly low-hanging fruit in this regard. </p>
-
-<p>For some app categories, basic features like home screen widgets are par for the course. Not including them is a sure-fire way to tarnish an otherwise positive user experience. Some apps can achieve even tighter OS integration with Android's contacts, accounts, and sync APIs. </p>
-<p>
-Third-party integrations can provide even more user delight and give the user a feeling of device cohesiveness. It's also a really nice way of adding functionality to your app without writing any extra code (by leveraging other apps' functionalities). For example, if you're creating a camera app, you can allow users to edit their photos in another app before saving them to their collection, if they have that third-party application installed. More information on this subject is available in the Android Training class <a href="{@docRoot}training/basics/intents/index.html">Interacting with Other Apps</a>.</p>
-
-<h2 id="details">Pay Attention to Details</h2>
-<p>
-One particular detail to pay close attention to is your app's icon quality and consistency. Make sure your app icons (especially your launcher icon) are crisp and pixel-perfect at all resolutions, and follow the <a href="{@docRoot}guide/practices/ui_guidelines/icon_design.html">icon guidelines</a> as much as possible. If you're having trouble or don't have the resources to design the icons yourself, consider using the <a href="http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html">Android Asset Studio</a> tool to generate a set.</p>
diff --git a/docs/html/distribute/googleplay/strategies/featuring.jd b/docs/html/distribute/googleplay/strategies/featuring.jd
deleted file mode 100644
index 4c4e67e..0000000
--- a/docs/html/distribute/googleplay/strategies/featuring.jd
+++ /dev/null
@@ -1,4 +0,0 @@
-page.title=Preparing for Featuring
-@jd:body
-
-<p>Placeholder...</p>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/strategies/index.jd b/docs/html/distribute/googleplay/strategies/index.jd
deleted file mode 100644
index 3794bbf..0000000
--- a/docs/html/distribute/googleplay/strategies/index.jd
+++ /dev/null
@@ -1,33 +0,0 @@
-page.title=Success Strategies
-page.metaDescription=
-header.hide=1
-footer.hide=1
-
-@jd:body
-
-
-
-<style>
-#landing-graphic-container {
- position: relative;
-}
-
-#text-overlay {
- position: absolute;
- left: 0;
- top: 472px;
- width: 280px;
-}
-</style>
-
-<div id="landing-graphic-container">
- <div id="text-overlay">
- Strategies for building ratings, improving reviews, monetizing, and more.
- <br><br>
- <a href="/distribute/googleplay/promote/product-pages.html" class="landing-page-link">Preparing for Featuring</a>
- </div>
-
- <a href="{@docRoot}distribute/googleplay/promote/index.html">
- <img src="{@docRoot}design/media/index_landing_page.png">
- </a>
-</div>
\ No newline at end of file
diff --git a/docs/html/distribute/images/about-play-education.jpg b/docs/html/distribute/images/about-play-education.jpg
new file mode 100644
index 0000000..1fe6b2c
--- /dev/null
+++ b/docs/html/distribute/images/about-play-education.jpg
Binary files differ
diff --git a/docs/html/distribute/images/about-play.jpg b/docs/html/distribute/images/about-play.jpg
new file mode 100644
index 0000000..e62cb58
--- /dev/null
+++ b/docs/html/distribute/images/about-play.jpg
Binary files differ
diff --git a/docs/html/distribute/images/advertising.jpg b/docs/html/distribute/images/advertising.jpg
new file mode 100644
index 0000000..9625671
--- /dev/null
+++ b/docs/html/distribute/images/advertising.jpg
Binary files differ
diff --git a/docs/html/distribute/images/advertising.png b/docs/html/distribute/images/advertising.png
new file mode 100644
index 0000000..5dc0ed4
--- /dev/null
+++ b/docs/html/distribute/images/advertising.png
Binary files differ
diff --git a/docs/html/distribute/images/alt-distribution.jpg b/docs/html/distribute/images/alt-distribution.jpg
new file mode 100644
index 0000000..39c0514
--- /dev/null
+++ b/docs/html/distribute/images/alt-distribution.jpg
Binary files differ
diff --git a/docs/html/distribute/images/android-support-card.jpg b/docs/html/distribute/images/android-support-card.jpg
new file mode 100644
index 0000000..b1883c0
--- /dev/null
+++ b/docs/html/distribute/images/android-support-card.jpg
Binary files differ
diff --git a/docs/html/distribute/images/build-buzz.jpg b/docs/html/distribute/images/build-buzz.jpg
new file mode 100644
index 0000000..3f83a1a
--- /dev/null
+++ b/docs/html/distribute/images/build-buzz.jpg
Binary files differ
diff --git a/docs/html/distribute/images/core-quality-guidelines.jpg b/docs/html/distribute/images/core-quality-guidelines.jpg
new file mode 100644
index 0000000..d0c2479
--- /dev/null
+++ b/docs/html/distribute/images/core-quality-guidelines.jpg
Binary files differ
diff --git a/docs/html/distribute/images/create-listing.jpg b/docs/html/distribute/images/create-listing.jpg
new file mode 100644
index 0000000..befb936
--- /dev/null
+++ b/docs/html/distribute/images/create-listing.jpg
Binary files differ
diff --git a/docs/html/distribute/images/default.jpg b/docs/html/distribute/images/default.jpg
new file mode 100644
index 0000000..8050744
--- /dev/null
+++ b/docs/html/distribute/images/default.jpg
Binary files differ
diff --git a/docs/html/distribute/images/developer-console.jpg b/docs/html/distribute/images/developer-console.jpg
new file mode 100644
index 0000000..09f4a86
--- /dev/null
+++ b/docs/html/distribute/images/developer-console.jpg
Binary files differ
diff --git a/docs/html/distribute/images/ecommerce.jpg b/docs/html/distribute/images/ecommerce.jpg
new file mode 100644
index 0000000..0b2efdc
--- /dev/null
+++ b/docs/html/distribute/images/ecommerce.jpg
Binary files differ
diff --git a/docs/html/distribute/images/edu-guidelines.jpg b/docs/html/distribute/images/edu-guidelines.jpg
new file mode 100644
index 0000000..280dcfe
--- /dev/null
+++ b/docs/html/distribute/images/edu-guidelines.jpg
Binary files differ
diff --git a/docs/html/distribute/images/expand-into-new-markets.jpg b/docs/html/distribute/images/expand-into-new-markets.jpg
new file mode 100644
index 0000000..0f17f13
--- /dev/null
+++ b/docs/html/distribute/images/expand-into-new-markets.jpg
Binary files differ
diff --git a/docs/html/distribute/images/freemium.jpg b/docs/html/distribute/images/freemium.jpg
new file mode 100644
index 0000000..6919202
--- /dev/null
+++ b/docs/html/distribute/images/freemium.jpg
Binary files differ
diff --git a/docs/html/distribute/images/getting-started.jpg b/docs/html/distribute/images/getting-started.jpg
new file mode 100644
index 0000000..47f524a
--- /dev/null
+++ b/docs/html/distribute/images/getting-started.jpg
Binary files differ
diff --git a/docs/html/distribute/images/gp-app-practices.png b/docs/html/distribute/images/gp-app-practices.png
new file mode 100644
index 0000000..0afc4cb
--- /dev/null
+++ b/docs/html/distribute/images/gp-app-practices.png
Binary files differ
diff --git a/docs/html/distribute/images/gp-edu-apps-image.jpg b/docs/html/distribute/images/gp-edu-apps-image.jpg
new file mode 100644
index 0000000..8785db1
--- /dev/null
+++ b/docs/html/distribute/images/gp-edu-apps-image.jpg
Binary files differ
diff --git a/docs/html/distribute/images/gp-games-practices.png b/docs/html/distribute/images/gp-games-practices.png
new file mode 100644
index 0000000..e2b63c5
--- /dev/null
+++ b/docs/html/distribute/images/gp-games-practices.png
Binary files differ
diff --git a/docs/html/distribute/images/gp-optimize-card.jpg b/docs/html/distribute/images/gp-optimize-card.jpg
new file mode 100644
index 0000000..4c91f1c
--- /dev/null
+++ b/docs/html/distribute/images/gp-optimize-card.jpg
Binary files differ
diff --git a/docs/html/distribute/images/gpfe-faq.jpg b/docs/html/distribute/images/gpfe-faq.jpg
new file mode 100644
index 0000000..cf10a95
--- /dev/null
+++ b/docs/html/distribute/images/gpfe-faq.jpg
Binary files differ
diff --git a/docs/html/distribute/images/know-your-user.jpg b/docs/html/distribute/images/know-your-user.jpg
new file mode 100644
index 0000000..9336125
--- /dev/null
+++ b/docs/html/distribute/images/know-your-user.jpg
Binary files differ
diff --git a/docs/html/distribute/images/launch-checklist.jpg b/docs/html/distribute/images/launch-checklist.jpg
new file mode 100644
index 0000000..c571c9e
--- /dev/null
+++ b/docs/html/distribute/images/launch-checklist.jpg
Binary files differ
diff --git a/docs/html/distribute/images/localization-checklist.jpg b/docs/html/distribute/images/localization-checklist.jpg
new file mode 100644
index 0000000..26765fe
--- /dev/null
+++ b/docs/html/distribute/images/localization-checklist.jpg
Binary files differ
diff --git a/docs/html/distribute/images/payment-method.jpg b/docs/html/distribute/images/payment-method.jpg
new file mode 100644
index 0000000..a9f8b19
--- /dev/null
+++ b/docs/html/distribute/images/payment-method.jpg
Binary files differ
diff --git a/docs/html/distribute/images/play-education.jpg b/docs/html/distribute/images/play-education.jpg
new file mode 100644
index 0000000..8780993
--- /dev/null
+++ b/docs/html/distribute/images/play-education.jpg
Binary files differ
diff --git a/docs/html/distribute/images/premium.jpg b/docs/html/distribute/images/premium.jpg
new file mode 100644
index 0000000..210fddb
--- /dev/null
+++ b/docs/html/distribute/images/premium.jpg
Binary files differ
diff --git a/docs/html/distribute/images/subscription.jpg b/docs/html/distribute/images/subscription.jpg
new file mode 100644
index 0000000..9b6f112
--- /dev/null
+++ b/docs/html/distribute/images/subscription.jpg
Binary files differ
diff --git a/docs/html/distribute/images/tablet-guidelines-color.jpg b/docs/html/distribute/images/tablet-guidelines-color.jpg
new file mode 100644
index 0000000..ffb1a03
--- /dev/null
+++ b/docs/html/distribute/images/tablet-guidelines-color.jpg
Binary files differ
diff --git a/docs/html/distribute/images/tablet-guidelines.jpg b/docs/html/distribute/images/tablet-guidelines.jpg
new file mode 100644
index 0000000..b16b48c
--- /dev/null
+++ b/docs/html/distribute/images/tablet-guidelines.jpg
Binary files differ
diff --git a/docs/html/distribute/index.jd b/docs/html/distribute/index.jd
index 6c6e113..da960ce 100644
--- a/docs/html/distribute/index.jd
+++ b/docs/html/distribute/index.jd
@@ -1,38 +1,21 @@
-page.title=Distribute Apps
+page.title=Distribute Your Apps
page.viewport_width=970
+section.landing=true
header.hide=1
+nonavpage=true
+page.metaDescription=The most visited store in the world for Android apps. Cloud-connected and always synced, it's never been easier for users to find and download your apps.
@jd:body
-
-
-<div class="marquee">
- <div class="madin-img" style="position:absolute;margin-left:42px;margin-top:76px;">
- <img src="{@docRoot}images/home/google-play.png">
- </div>
- <div class="copy" style="position:relative;left:480px;width:360;">
- <h1 style="margin-bottom:10px;">Your Apps on Google Play</h1>
- <p>The most visited store in the world for Android apps. Cloud-connected and always synced,
- it's never been easier for users to find and download your apps.</p>
- <p><a class="button" href="https://play.google.com/apps/publish/"
- >Go to Developer Console »</a></p>
- </div>
-</div>
-<div class="distribute-features col-13" style="clear:both;margin-top:246px;">
- <ul>
- <li><h5>Growth Engine</h5>
- A billion downloads a month and growing. Get your apps in front of millions of users at Google's scale.<br />
- <a href="{@docRoot}distribute/googleplay/about/visibility.html">Read More ›</a>
- <li><h5>Build Your Business</h5> Sell your app in over 130 countries. Flexible monetization options with in-app purchase, subscriptions, and more. <br />
- <a href="{@docRoot}distribute/googleplay/about/monetizing.html">Read More ›</a></li>
- <li class="last"><h5>Distribution Control</h5> Deliver your apps to the users you want, on the devices you want, on <em>your</em> schedule. <br />
- <a href="{@docRoot}distribute/googleplay/about/distribution.html">Read More ›</a></li>
- </ul>
-</div>
-
-
-
-
-
-
+ <div class="resource-widget resource-carousel-layout col-16"
+ style="height:420px;margin-top:20px;padding-top:0"
+ data-query="type:youtube+tag:googleplay+tag:developerstory+tag:featured, type:blog+tag:googleplay+tag:distribute+tag:featured"
+ data-sortOdrder="-timestamp"
+ data-maxResults="4"></div>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="collection:launch/static"
+ data-sortOrder=""
+ data-cardSizes="6x6,6x6,6x2x3,12x6,6x6,6x2x3,6x6,6x6,12x6,6x6"
+ data-maxResults="24"></div>
diff --git a/docs/html/distribute/monetize/ads.jd b/docs/html/distribute/monetize/ads.jd
new file mode 100644
index 0000000..40120c3
--- /dev/null
+++ b/docs/html/distribute/monetize/ads.jd
@@ -0,0 +1,114 @@
+page.title=Monetize with Ads
+page.metaDescription=Ads are a quick and easy way to incorporate a monetization option into both your free and paid apps.
+page.tags="monetizing", "free", "freemium", "ads"
+page.image=/distribute/images/advertising.png
+
+@jd:body
+
+<div class="figure">
+ <img src="{@docRoot}distribute/images/advertising.jpg" style="width:460px;">
+</div>
+
+<p>
+ In-app advertising offers a quick and easy way to incorporate a monetization
+ option into both your <a href=
+ "{@docRoot}distribute/monetize/freemium.html">freemium</a>, <a href=
+ "{@docRoot}distribute/monetize/premium.html">premium</a>, and <a href=
+ "{@docRoot}distribute/monetize/subscriptions.html">subscription</a> apps. </p>
+
+<p>Using <a href=
+ "http://www.google.com/ads/admob/monetize.html#subid=us-en-et-dac">AdMob</a>
+ and the <a href="{@docRoot}google/play-services/ads.html">Google
+ Mobile Ads SDK</a> included in Google Play Services, you’re able to add
+ advertising into your apps, with just a few lines of code.
+</p>
+
+<p>
+ When including ads in your apps you should consider:
+</p>
+
+<ul>
+ <li>
+ <p>
+ <strong>Placement within your apps</strong> — Well placed ads will
+ optimize your revenue by making it more likely that users will ‘click
+ through’. Poorly placed ads can result in low click-through rates, and in
+ the worse cases poor rating and users rapidly abandoning your apps. You
+ can get advice on how to best place ads from the developer training on
+ <a href=
+ "{@docRoot}training/monetization/ads-and-ux.html">using
+ ads</a>.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <strong>Ad formats</strong> — Every app offers a different type of
+ experience for users, so it’s important to consider the format of ads
+ you’re using to ensure it’s compatible with the experience. While banner
+ ads may work well for a flashlight utility app, an immersive gaming app
+ may benefit more from a video interstitial. Mismatched ad formats may
+ negatively affect your users’ experience and ad revenue, so try to select
+ formats that fit well with the content and flow of your apps.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <strong>Maximizing your performance</strong> — Ensure you’re optimizing
+ your advertising revenue by maximizing your CPMs <em>and</em> fill rate.
+ Often ad providers will cite very high CPMs but will have a low fill rate
+ that can severely decrease your effective CPM, so look at both of these
+ figures. Also consider using a <a href=
+ "https://support.google.com/admob/v2/answer/3063564?hl=en&ref_topic=3063091#subid=us-en-et-dac">
+ mediation</a> solution if you’d like to use multiple ad providers in your
+ apps. Look for solutions that offer yield management or <a href=
+ "https://support.google.com/admob/v2/answer/3379794?hl=en&ref_topic=3379793#subid=us-en-et-dac">
+ network optimization</a> features to serve the highest paying ad for each
+ impression.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <strong>Exercising control options</strong> — A variety of ads promoting a
+ broad selection of other services or apps may show up within you apps.
+ Depending on your goals and the type of experience you want to provide
+ your users, it may make sense to <a href=
+ "https://support.google.com/admob/v2/answer/3150235?hl=enl#subid=us-en-et-dac">
+ block</a> certain advertisements from appearing. Some developers don’t
+ want apps in a similar category showing to their users, but some don’t
+ mind.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ <strong>Cross promoting your other apps</strong> — Ads can be used for
+ more than just earning revenue. Consider using <a href=
+ "https://support.google.com/admob/v2/answer/3210452?hl=en#subid=us-en-et-dac">
+ house ads</a> within your apps to create awareness and promote your
+ entire portfolio of apps. When launching new apps, an easy way to quickly
+ attract users is to promote directly to your existing customers.
+ </p>
+ </li>
+</ul>
+
+<p>
+ To start monetizing with ads sign up for <a href=
+ "http://www.google.com/ads/admob/#subid=us-en-et-dac">AdMob</a> and integrate
+ the <a href="https://developers.google.com/mobile-ads-sdk/download">Google
+ Mobile Ads SDK</a> into your apps. If you also need to manage direct deals
+ with advertisers, consider using <a href=
+ "http://www.google.com/doubleclick/publishers/small-business/index.html#subid=us-en-et-dac">
+ DoubleClick for Publishers Small Business</a>.
+</p>
+
+<div class="headerLine"><h1 id="related-resources">Related resources</h1><hr></div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/monetize/advertising"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
+
diff --git a/docs/html/distribute/monetize/ecommerce.jd b/docs/html/distribute/monetize/ecommerce.jd
new file mode 100644
index 0000000..b3f790d
--- /dev/null
+++ b/docs/html/distribute/monetize/ecommerce.jd
@@ -0,0 +1,59 @@
+page.title=E-commerce
+page.image=/distribute/images/ecommerce.jpg
+page.metaImage=With Instant Buy you can sell physical goods and services from your web pages.
+page.tags="monetizing", "physical goods", "wallet"
+@jd:body
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-ecom-0.png" style="width:300px;">
+ <p class="img-caption">
+ Product Purchase with Instant Buy
+ </p>
+</div>
+
+<p>
+ With Google Wallet Instant Buy, you've the added flexibility of selling
+ physical goods and services, such as clothing or movie tickets, through your
+ apps using <a href=
+ "https://developers.google.com/wallet/instant-buy/">Instant Buy for
+ Android</a> in the US.
+</p>
+
+<p>
+ You can use this option where your app is the store-front for retail or
+ webtail operations. However, you can also combine it with your <a href=
+ "{@docRoot}distribute/monetize/premium.html">premium</a> and <a href=
+ "{@docRoot}distribute/monetize/freemium.html">freemium</a> apps by offering
+ related products.
+</p>
+
+<p>
+ Your customers purchase goods and services with any Google Wallet payment
+ method — credit card, gift card, or Wallet balance. Google Wallet
+ Instant Buy helps you minimize user data entry by enabling your payment flow
+ to retrieve information directly from the user’s wallet.
+</p>
+
+<p>
+ You also keep your existing payment infrastructure and leverage Google Wallet
+ to optimize your payment flow — users can make purchases in as a few as
+ two clicks and the flow is simplified with features to retrieve information
+ directly from the user’s wallet and intelligent auto-completion of addresses.
+ To get started, set up a <a href=
+ "{@docRoot}distribute/googleplay/start.html#merchant-account">Merchant
+ Account</a>.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+</div>
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/monetize/ecommerce"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
+
diff --git a/docs/html/distribute/monetize/freemium.jd b/docs/html/distribute/monetize/freemium.jd
new file mode 100644
index 0000000..ec86d19
--- /dev/null
+++ b/docs/html/distribute/monetize/freemium.jd
@@ -0,0 +1,80 @@
+page.title=Monetize Freemium Apps
+page.image=/distribute/images/freemium.jpg
+page.metaDescription=Use Google Play In-app Billing and other tools to monetize your free apps.
+page.tags="in-app", "billing", "iap", "monetizing"
+@jd:body
+
+<p>
+ Users are more likely to download free apps and games compared to priced
+ ones. However, we provide you with a number of ways to monetize free apps,
+ using <a href="{@docRoot}google/play/billing/index.html">In-app
+ Billing</a>. With this tool you can sell digital goods that are:
+</p>
+
+<ul>
+ <li>Durable — once purchased the item will always be available to the
+ user, such as additional app features.
+ </li>
+
+ <li>Consumable — items that might be used progressively or expire after
+ a period of time, such as a game booster or news subscription.
+ </li>
+</ul>
+
+<p>
+ A basic approach is to offer a free download with limited features or full
+ features for a limited time. Then use an in-app purchase to unlock the full,
+ unlimited app.
+</p>
+
+<div class="center-img" style="width:620px">
+<div style="float:right; width:300px; padding-left:1em;">
+ <img src="{@docRoot}images/gp-freemium-1.jpg" class="border-img">
+ <p class="img-caption">
+ Consumable product purchase
+ </p>
+</div>
+
+<div style="width:300px;float:left;">
+ <img src="{@docRoot}images/gp-freemium-0.jpg" class="border-img">
+ <p class="img-caption">
+ Durable goods purchase
+ </p>
+</div>
+</div>
+
+<p class="clearfloat">
+ A more advanced approach is to offer a range of features and content items
+ through in-app purchases. For example, in games you can offer users new
+ levels, playing pieces, or other game features. In apps you can offer
+ features or functionality that enhance the user experience either by
+ extending existing features or offering new ones. Using this approach you can
+ generate a continuing revenue stream from each app install.
+</p>
+
+<p>
+ Any item offered as an in-app purchase can also be offered as a subscription.
+</p>
+
+<p>
+ To get started with In-app Billing you need to set-up a Google Wallet
+ <a href="{@docRoot}distribute/googleplay/start.html#merchant-account">Merchant
+ Account</a> from Developer Console. You then define <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#in-app-products">in-app
+ products</a> in the Developer Console, integrate the In-app Billing API into
+ your apps, and add the mechanisms to unlock features or deliver content.
+</p>
+
+<div class="headerLine">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/monetize/freemium"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3,9x3,9x3,6x3,6x3"
+ data-maxResults="6"></div>
diff --git a/docs/html/distribute/monetize/index.jd b/docs/html/distribute/monetize/index.jd
new file mode 100644
index 0000000..7350a24
--- /dev/null
+++ b/docs/html/distribute/monetize/index.jd
@@ -0,0 +1,36 @@
+page.title=Monetize
+section.landing=true
+nonavpage=true
+
+@jd:body
+
+<p>
+ There are many ways to make money with your apps on Google Play, and we offer
+ a variety of tools to make it easy. Take advantage of Google Play’s
+ phenomenal growth by using one or more of the business models available.
+</p>
+
+<p>
+ To get started, set up your <a href=
+ "{@docRoot}distribute/googleplay/start.html#merchant-account">Merchant Account</a>
+ from your Developer Console. This will not only help you get paid, but also
+ help you track where your money is coming from.
+</p>
+
+<div class="dynamic-grid">
+
+ <div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/monetize"
+ data-cardSizes="6x6"
+ data-maxResults="9">
+ </div>
+
+<h3>Related resources</h3>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="tag:monetizing"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="6">
+ </div>
+</div>
diff --git a/docs/html/distribute/monetize/monetize_toc.cs b/docs/html/distribute/monetize/monetize_toc.cs
new file mode 100644
index 0000000..aeb6cf8
--- /dev/null
+++ b/docs/html/distribute/monetize/monetize_toc.cs
@@ -0,0 +1,47 @@
+<ul id="nav">
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/monetize/premium.html">
+ <span class="en">Premium</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/monetize/freemium.html">
+ <span class="en">Freemium</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/monetize/subscriptions.html">
+ <span class="en">Subscriptions</span>
+ </a
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/monetize/ecommerce.html">
+ <span class="en">E-commerce</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/monetize/ads.html">
+ <span class="en">Ads</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/monetize/payments.html">
+ <span class="en">Purchasing</span>
+ </a>
+ </div>
+ </li>
+
+</ul>
+
+
+<script type="text/javascript">
+<!--
+ buildToggleLists();
+ changeNavLang(getLangPref());
+//-->
+</script>
+
diff --git a/docs/html/distribute/monetize/payments.jd b/docs/html/distribute/monetize/payments.jd
new file mode 100644
index 0000000..37b4d44
--- /dev/null
+++ b/docs/html/distribute/monetize/payments.jd
@@ -0,0 +1,104 @@
+page.title=Convenient, Frictionless Purchasing
+page.image=/distribute/images/payment-method.jpg
+page.metaDescription=Users can purchase instantly with a choice of payment methods.
+page.tags="google play", "payments", "gift card"
+
+@jd:body
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-start-wallet-icon.png" style="width:200px;">
+</div>
+
+<p>
+ Google Play makes it fast and easy for your customers to buy your products,
+ whether from a phone, a tablet, or a desktop computer. They can purchase
+ instantly with a streamlined, consistent purchasing process and convenient
+ payment methods.
+</p>
+
+<div class="headerLine">
+ <h1 id="dcb">
+ Direct Carrier Billing
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Users pay by charging their monthly carrier bills . The benefit of Direct
+ Carrier Billing is that it opens up markets where credit cards are less
+ common, as purchases are charged to your customers’ monthly mobile phone
+ bills. This option is available to users in key markets
+ around the world. Many more will get the option in the months ahead.
+</p>
+
+<div class="headerLine">
+ <h1 id="credit">
+ Credit Cards
+ </h1>
+ <hr>
+</div>
+
+<p>
+ Users can pay using any credit card that they’ve registered in Google Play.
+ Credit Cards added to Google Play are stored in the user’s Google Wallet and
+ available for in-app purchases and instant buys too. To make it easy for
+ users to get started, registration is offered as a part of the initial device
+ setup process.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="gift-cards">
+ Google Play Gift Cards
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-payments-1.png">
+</div>
+
+<p>
+ Gift cards enable users to add value to their Google Play balance by entering
+ a unique code printed on a card purchased online or from major retailers.
+ More information gift cards can be found <a href=
+ "http://play.google.com/intl/en-US_us/about/giftcards/" target=
+ "_android">here</a>.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="balance">
+ Google Play Balance
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-balance.png">
+</div>
+
+<p>
+ Google Play balance, also known as stored value, is a stored account balance
+ in Google Play. Users can increase their balance by redeeming <a href=
+ "https://play.google.com/intl/en-US_us/about/giftcards/">gift cards</a> or by
+ earning rewards through the <a href=
+ "https://play.google.com/store/apps/details?id=com.google.android.apps.paidtasks&hl=en">
+ Google Opinions Rewards app</a>, and they can use their balance to make
+ purchases of apps, games, or other content.
+</p>
+
+<p>
+ The payment methods available to users may vary based on location, carrier
+ network, and other factors.
+</p>
+
+<div class="headerLine clearfloat"><h1 id="related-resources">Related Resources</h1><hr></div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/monetize/paymentmethods"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="8"></div>
+
diff --git a/docs/html/distribute/monetize/premium.jd b/docs/html/distribute/monetize/premium.jd
new file mode 100644
index 0000000..b66cd03
--- /dev/null
+++ b/docs/html/distribute/monetize/premium.jd
@@ -0,0 +1,49 @@
+page.title=Monetize Premium Apps
+page.image=/distribute/images/premium.jpg
+page.metaDescription=Charging users to download your apps is a simple, convenient monetization model.
+page.tags="monetizing", "paid"
+
+@jd:body
+
+<div class="figure"><img src="{@docRoot}images/gp-premium-0.png" />
+<p class="img-caption" style="width:300px">Paid app</p>
+</div>
+<p>
+ Charging users to download your apps is a simple, convenient monetization
+ model. After creating your <a href=
+ "/distribute/googleplay/start.html#merchant-account">Merchant
+ Account</a>, you <a href=
+ "/distribute/googleplay/developer-console.html#selling-pricing-your-products">set prices for your
+ apps</a> in the Developer Console. You can optionally include advertising or use
+ <a href="{@docRoot}google/play/billing/index.html">In-app
+ Billing</a> to sell additional features or content.
+</p>
+
+<p>
+ This model could work well for any app or game, but might be particularly
+ relevant to those with extensive features or that address a narrow niche in
+ the market. Certain categories of apps, such as games for children, should be
+ monetized by paying for them up front instead of advertising or in-app
+ purchases.
+</p>
+
+<p>
+ However, this model may limit your apps monetization potential, particularly
+ in developing markets. You may be able to achieve greater revenue using the
+ <a href="{@docRoot}distribute/monetize/freemium.html">freemium</a>, <a href=
+ "{@docRoot}distribute/monetize/subscriptions.html">subscriptions</a> or
+ <a href="{@docRoot}distribute/monetize/ads.html">advertising</a> models.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1>
+ Related Resources
+ </h1>
+ <hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/monetize/premium"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
\ No newline at end of file
diff --git a/docs/html/distribute/monetize/subscriptions.jd b/docs/html/distribute/monetize/subscriptions.jd
new file mode 100644
index 0000000..a838e30
--- /dev/null
+++ b/docs/html/distribute/monetize/subscriptions.jd
@@ -0,0 +1,71 @@
+page.title=Monetize with Subscriptions
+page.image=/distribute/images/subscription.jpg
+page.metaDescription=Sell subscriptions to your products to create continuing revenue streams.
+page.tags="in-app", "iap", "monetizing", "free", "trials"
+@jd:body
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-subscription-0.jpg">
+ <p class="img-caption" style="width:300px;">
+ In-App Subscriptions
+ </p>
+</div>
+
+<p>
+ Subscriptions provide an excellent opportunity to create continuing revenue
+ streams. Subscriptions are similar to digital goods offered through <a href=
+ "{@docRoot}google/play/billing/index.html">In-app Billing</a> but made
+ available on a recurring monthly or annual basis.
+</p>
+
+<p>
+ When users purchase subscriptions in your apps, Google Play handles all
+ checkout details so your apps never have to directly process any financial
+ transactions. Google Play processes all payments for subscriptions through
+ Google Wallet, just as it does for standard in-app products and app
+ purchases. This ensures a consistent and familiar purchase flow for your
+ users and reduces cart abandonment rates.
+</p>
+
+<p>
+ At a basic level you can offer use of your apps or access to their content on
+ a subscription basis, using a <a href=
+ "{@docRoot}google/play/billing/billing_subscriptions.html#trials">free trial
+ subscription</a> to allow users to explore the apps or content.
+</p>
+
+<p>
+ A more advanced approach is to offer specific features or content items as
+ subscriptions within your apps. This way you can offer users basic or core
+ features or content for free or part of the initial purchase and extended
+ features or content as subscriptions. You can have multiple subscriptions
+ active in an app at any one time.
+</p>
+
+<p>
+ To get started with subscriptions you need to set-up a Google Wallet <a href=
+ "{@docRoot}distribute/googleplay/start.html#merchant-account">Merchant
+ Account</a> from the Developer Console. You then define subscriptions for
+ published or draft apps in the <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#in-app-billing">In-app
+ Products</a> section of the Developer Console, integrate the In-app Billing
+ API into your apps, and add the mechanisms to unlock subscribed features or
+ deliver content.
+</p>
+
+<div class="sidebox" style="width:400px;float:left;margin-left:0">
+ <p>
+ <strong>Tip:</strong> Due to some direct carrier billing limits, we
+ recommend monthly subscriptions. Annual subscriptions may exceed limits,
+ causing the purchase to be blocked and you to lose that revenue.
+ </p>
+</div>
+
+<div class="headerLine clearfloat"><h1 id="related-resources">Related Resources</h1><hr></div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/monetize/subscriptions"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
+
diff --git a/docs/html/distribute/open.jd b/docs/html/distribute/open.jd
deleted file mode 100644
index f9e9c3b..0000000
--- a/docs/html/distribute/open.jd
+++ /dev/null
@@ -1,107 +0,0 @@
-page.title=Open Distribution
-@jd:body
-
-<p>As an open platform, Android offers choice. You
-distribute your Android apps to users in any way you want, using any
-distribution approach or combination of approaches that meets your needs.
-From publishing in an app marketplace to serving your apps from a web site or
-emailing them directly users, you are never locked into any
-particular distribution platform.</p>
-
-<p>The process for building and packaging your app for distribution is the same,
-regardless of how you will distribute your app. This saves you time and lets you
-automate parts of the process as needed. You can read <a
-href="{@docRoot}tools/publishing/preparing.html">Preparing
-for Release</a> for more information.</p>
-
-<p>The sections below highlight some of the alternatives for distributing
-your apps to users.</p>
-
-<h2 id="publishing-marketplace">Distributing through an App Marketplace</h2>
-
-<p>Usually, to reach the broadest possible audience, you would distribute your
-apps through a marketplace, such as Google Play.</p>
-
-<p>Google Play is the premier marketplace for Android apps and is particularly
-useful if you want to distribute your applications to a large global audience.
-However, you can distribute your apps through any app marketplace you want or
-you can use multiple marketplaces.</p>
-
-<h2 id="publishing-email">Distributing your application through email</h2>
-
-<div class="figure" style="width:246px">
- <img src="{@docRoot}images/publishing/publishing_via_email.png"
- alt="Screenshot showing the graphical user interface users see when you send them an app"
- style="width:240px;" />
- <p class="img-caption">
- <strong>Figure 1.</strong> Users can simply click <strong>Install</strong> when you send them
- an application via email.
- </p>
-</div>
-
-<p>The easiest and quickest way to release your application is to send it to users through
-email. To do this, you prepare your application for release and then attach it to an email
-and send it to a user. When users open your email message on their Android-powered device,
-the Android system will recognize the APK and display an <strong>Install Now</strong>
-button in the email message (see figure 1). Users can install your application by touching the
-button.</p>
-
-<p class="note"><strong>Note:</strong> The <strong>Install Now</strong> button
-shown in Figure 1 appears only if users have configured their device to allow
-installation from <a href="#unknown-sources">unknown sources</a> and have opened your
-email with the native Gmail application.</p>
-
-<p>Distributing applications through email is convenient if you are sending your application to
-only a few trusted users, but it provides few protections from piracy and unauthorized
-distribution; that is, anyone you send your application to can simply forward it to someone else.</p>
-
-<h2 id="publishing-website">Distributing through a web site</h2>
-
-<p>If you do not want to release your app on a marketplace like Google Play, you
-can make the app available for download on your own website or server, including
-on a private or enterprise server. To do this, you must first prepare your
-application for release in the normal way. Then all you need to do is host the
-release-ready APK file on your website and provide a download link to users.
-</p>
-
-<p>When users browse to the download link from their Android-powered devices,
-the file is downloaded and Android system automatically starts installing it on
-the device. However, the installation process will start automatically only if
-users have configured their Settings to allow the installation of apps from
-<a href="#unknown-sources">unknown sources</a>.</p>
-
-<p>Although it is relatively easy to release your application on your own
-website, it can be inefficient. For example, if you want to monetize your
-application you will have to process and track all financial transactions
-yourself and you will not be able to use Google Play's <a
-href="{@docRoot}google/play/billing/index.html">In-app Billing service</a>
-to sell in-app products. In addition, you will not be able to use the <a
-href="{@docRoot}google/play/licensing/index.html">Licensing service</a> to
-help prevent unauthorized installation and use of your application.</p>
-
-
-<h2 id="unknown-sources">User Opt-In for Apps from Unknown Sources</h2>
-
-<div class="figure" style="width:246px;margin-top:0;">
- <img src="{@docRoot}images/publishing/publishing_unknown_sources_sm.png"
- alt="Screenshot showing the setting for accepting download and install of
- apps from unknown sources." style="width:240px;" />
- <p class="img-caption">
- <strong>Figure 2.</strong> Users must enable the <strong>Unknown sources</strong>
- setting before they can install apps not downloaded from Google Play.
- </p>
-</div>
-
-<p>Android protects users from inadvertent download and install of apps from
-locations other than Google Play (which is trusted). It blocks such installs
-until the user opts-in <strong>Unknown sources</strong> in
-Settings <strong>></strong> Security, shown in Figure 2. To allow
-the installation of applications from other sources, users need to enable the
-Unknown sources setting on their devices, and they need to make this
-configuration change <em>before</em> they download your application to their
-devices.</p>
-
-<p class="note">Note that some network providers do not allow users to install
-applications from unknown sources.</p>
-
-
diff --git a/docs/html/distribute/googleplay/spotlight/games.jd b/docs/html/distribute/stories/games.jd
similarity index 91%
rename from docs/html/distribute/googleplay/spotlight/games.jd
rename to docs/html/distribute/stories/games.jd
index 1fbc03f..1a482b1 100644
--- a/docs/html/distribute/googleplay/spotlight/games.jd
+++ b/docs/html/distribute/stories/games.jd
@@ -1,6 +1,7 @@
page.title=Developer Stories: Google Play Game Services
-walkthru=0
-header.hide=0
+meta.tags="google play, developer story, games, global"
+page.image=/images/distribute/glu-ew-gpgames.jpg
+page.metaDescription=How gaming studios are using Google Play game services to deliver new gaming experiences for their users.
@jd:body
@@ -25,7 +26,7 @@
width: 78px;
float: left;
margin: 12px 20px 9px 20px;"
- src="//lh6.ggpht.com/_UOay5HBxf077suKYzmikU2IbnYOJub3X0inz-LoUsVh4TX758BEyArjoR7owXijkAA=w124">
+ src="http://lh6.ggpht.com/_UOay5HBxf077suKYzmikU2IbnYOJub3X0inz-LoUsVh4TX758BEyArjoR7owXijkAA=w124">
<div style="list-style: none;height:100%;
float: right;
@@ -49,7 +50,7 @@
<div style="padding:.5em 0 0 1em;">
<a href="https://play.google.com/store/apps/details?id=com.concretesoftware.pbachallenge_androidmarket&hl=en">
- <img alt="Android app on Google Play" src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ <img alt="Android app on Google Play" src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
</div>
@@ -102,7 +103,7 @@
width: 78px;
float: left;
margin: 12px 20px 30px 20px;"
- src="//lh4.ggpht.com/Q7mQJsdhulW4_s039R9aaRhQkGnyzLkhF00j5EnyhHOivijnyi7P7b5A8qG0xk1r-jQ=w124">
+ src="http://lh4.ggpht.com/Q7mQJsdhulW4_s039R9aaRhQkGnyzLkhF00j5EnyhHOivijnyi7P7b5A8qG0xk1r-jQ=w124">
<div style="list-style: none;height:100%;
float: right;
@@ -126,7 +127,7 @@
<div style="padding:.5em 0 0 1em;">
<a href="https://play.google.com/store/apps/details?id=com.glu.ewarriors2">
- <img alt="Android app on Google Play" src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ <img alt="Android app on Google Play" src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
</div>
@@ -176,7 +177,7 @@
width: 78px;
float: left;
margin: 12px 20px 9px 20px;" src=
- "https://lh3.ggpht.com/dTUrKLffqXHJtPuIlp8fjDhROuzrTcpidbNFprugR65hMrPLX7Omd8SGop0xMXXKzcw=w124">
+ "http://lh3.ggpht.com/dTUrKLffqXHJtPuIlp8fjDhROuzrTcpidbNFprugR65hMrPLX7Omd8SGop0xMXXKzcw=w124">
<div style="list-style: none;height:100%;
float: right;
@@ -202,7 +203,7 @@
<div style="padding:.5em 0 0 1em;">
<a href="https://play.google.com/store/apps/details?id=com.vectorunit.red">
- <img alt="Android app on Google Play" src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ <img alt="Android app on Google Play" src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
</div>
diff --git a/docs/html/distribute/stories/index.jd b/docs/html/distribute/stories/index.jd
new file mode 100644
index 0000000..ca7647d
--- /dev/null
+++ b/docs/html/distribute/stories/index.jd
@@ -0,0 +1,13 @@
+page.title=Developer Stories
+section.landing=true
+page.metaDescription=Android developers, their apps, and their successes with Android and Google Play.
+
+@jd:body
+
+<p>Android developers, their apps, and their successes with Android and Google Play.</p>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="type:youtube+tag:developerstory"
+ data-sortOrder="-timestamp"
+ data-cardSizes="18x12"
+ data-maxResults="32"></div>
diff --git a/docs/html/distribute/googleplay/spotlight/localization.jd b/docs/html/distribute/stories/localization.jd
similarity index 95%
rename from docs/html/distribute/googleplay/spotlight/localization.jd
rename to docs/html/distribute/stories/localization.jd
index ae5993d..d6e6ccf 100644
--- a/docs/html/distribute/googleplay/spotlight/localization.jd
+++ b/docs/html/distribute/stories/localization.jd
@@ -1,6 +1,8 @@
page.title=Developer Stories: Localization in Google Play
-walkthru=0
-header.hide=0
+meta.tags="google play, developer story, localization, global"
+page.tags="stories", "video", "case study"
+page.image=/images/distribute/zombie-ragdoll-n5-land.jpg
+page.metaDescription=Hear from Android developers who have successfully used the Google Play App Translation Service.
@jd:body
@@ -65,7 +67,7 @@
<div style="padding:.5em 0 0 1em;">
<a href="https://play.google.com/store/apps/details?id=com.rvappstudios.zombieragdoll">
<img alt="Android app on Google Play"
- src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
@@ -177,7 +179,7 @@
<div style="padding:.5em 0 0 1em;">
<a href="https://play.google.com/store/apps/details?id=com.unearby.sayhi">
<img alt="Android app on Google Play"
- src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
@@ -262,7 +264,7 @@
<div style="padding:.5em 0 0 1em;">
<a href="https://play.google.com/store/apps/details?id=com.rvappstudios.zombieragdoll">
<img alt="Android app on Google Play"
- src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
</div>
diff --git a/docs/html/distribute/stories/stories_toc.cs b/docs/html/distribute/stories/stories_toc.cs
new file mode 100644
index 0000000..944dabe
--- /dev/null
+++ b/docs/html/distribute/stories/stories_toc.cs
@@ -0,0 +1,34 @@
+<ul id="nav">
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/index.html">
+ <span class="en">Videos</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/localization.html">
+ <span class="en">Going Global</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/games.html">
+ <span class="en">Games</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/tablets.html">
+ <span class="en">Tablets</span>
+ </a>
+ </div>
+ </li>
+
+</ul>
+
+
+<script type="text/javascript">
+<!--
+ buildToggleLists();
+ changeNavLang(getLangPref());
+//-->
+</script>
+
diff --git a/docs/html/distribute/googleplay/spotlight/tablets.jd b/docs/html/distribute/stories/tablets.jd
similarity index 91%
rename from docs/html/distribute/googleplay/spotlight/tablets.jd
rename to docs/html/distribute/stories/tablets.jd
index 7a98755..771fa52 100644
--- a/docs/html/distribute/googleplay/spotlight/tablets.jd
+++ b/docs/html/distribute/stories/tablets.jd
@@ -1,11 +1,12 @@
page.title=Developer Stories: The Opportunity of Android Tablets
-walkthru=0
-header.hide=0
+meta.tags="google play, developer story, journal, tablets, pure"
+pdage.metaDescription=Developers are investing in a full tablet experience for their apps and seeing those investments pay off big.
+page.image=/images/distribute/rememberthemilk.png
@jd:body
-<p>More and more, developers are investing in a full tablet experience
+<p>"More" and more, developers are investing in a full tablet experience
for their apps and are seeing those investments pay off big. The increased
screen area on tablets opens up a world of possibilities, allowing for more
engagement with the user — which can mean an increase in usage as well as
@@ -27,7 +28,7 @@
width: 78px;
float: left;
margin: 12px 20px 9px 20px;" src=
- "//lh3.ggpht.com/xmnal18taauP2mjQFEhr1PhcItQ_W32IRuaD86IoL2U_4E-mfeKiliKtkISgOuA6Ln9n=w124">
+ "http://lh3.ggpht.com/xmnal18taauP2mjQFEhr1PhcItQ_W32IRuaD86IoL2U_4E-mfeKiliKtkISgOuA6Ln9n=w124">
<div style="list-style: none;height:100%;
float: right;
@@ -40,7 +41,7 @@
<ul>
- <li><a href="//play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">Remember The Milk</a></li>
+ <li><a href="http://play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">Remember The Milk</a></li>
<li>A feature-packed to-do list app; never forget the milk (or anything else) again</li>
</ul>
@@ -53,9 +54,9 @@
</ul>
<div style="padding:.5em 0 0 1em;">
- <a href="//play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">
+ <a href="http://play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">
<img alt="Android app on Google Play"
- src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
@@ -64,9 +65,9 @@
<div style="line-height:1.4em;">
<p style="margin-top:0;margin-bottom:12px;">When the Android tablet guidelines
came out in 2012, the team at Remember The Milk had already been thinking about
- a redesign for their <a href="//play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">feature-packed
+ a redesign for their <a href="http://play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">feature-packed
to-do list app</a>. Omar Kilani, Co-founder of Remember The Milk, explains how
- <a href="//blog.rememberthemilk.com/2013/04/the-all-new-remember-the-milk-for-android-and-tablets-too/">updating</a>
+ <a href="http://blog.rememberthemilk.com/2013/04/the-all-new-remember-the-milk-for-android-and-tablets-too/">updating</a>
their app to meet the tablet guidelines lead to an 83% jump in tablet installs: </p>
<p>“We took this as an opportunity to think about how we were going to approach
@@ -138,7 +139,7 @@
<div style="padding:.5em 0 0 1em;">
<a href="http://play.google.com/store/apps/details?id=com.mint">
<img alt="Android app on Google Play"
- src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
@@ -228,7 +229,7 @@
<div style="padding:.5em 0 0 1em;">
<a href="http://play.google.com/store/apps/details?id=com.tinyco.village">
<img alt="Android app on Google Play"
- src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
@@ -318,7 +319,7 @@
<div style="padding:.5em 0 0 1em;">
<a href="http://play.google.com/store/apps/details?id=com.instapaper.android">
<img alt="Android app on Google Play"
- src="//developer.android.com/images/brand/en_generic_rgb_wo_45.png" />
+ src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
</a>
</div>
diff --git a/docs/html/distribute/tools/disttools_toc.cs b/docs/html/distribute/tools/disttools_toc.cs
new file mode 100644
index 0000000..f4f39f0
--- /dev/null
+++ b/docs/html/distribute/tools/disttools_toc.cs
@@ -0,0 +1,46 @@
+<ul id="nav">
+
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/tools/launch-checklist.html">
+ <span class="en">Launch Checklist</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/tools/localization-checklist.html">
+ <span class="en">Localization Checklist</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/tools/promote/device-art.html">
+ <span class="en">Device Art Generator</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/tools/promote/badges.html">
+ <span class="en">Google Play Badges</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/tools/promote/linking.html">
+ <span class="en">Linking to Your Products</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/tools/promote/brand.html">
+ <span class="en">Brand Guidelines</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/tools/open-distribution.html">
+ <span class="en">Alternative Distribution</span></a>
+ </div>
+ </li>
+</ul>
+
+<script type="text/javascript">
+<!--
+ buildToggleLists();
+ changeNavLang(getLangPref());
+//-->
+</script>
+
diff --git a/docs/html/distribute/tools/index.jd b/docs/html/distribute/tools/index.jd
new file mode 100644
index 0000000..c8f0212
--- /dev/null
+++ b/docs/html/distribute/tools/index.jd
@@ -0,0 +1,57 @@
+page.title=Tools & Reference
+section.landing=true
+nonavpage=true
+
+@jd:body
+
+<p>
+ Here you’ll find resources to help you publish your apps and games, acquire
+ users, and monetize your investment.
+</p>
+
+<div class="dynamic-grid">
+
+ <h3>Publishing and Launch</h3>
+ <div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/tools/checklists"
+ data-cardSizes="9x6"
+ data-maxResults="2">
+ </div>
+
+<h3>Marketing Tools</h3>
+ <div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/tools/promote"
+ data-cardSizes="6x6"
+ data-maxResults="3">
+ </div>
+
+ <h3>Developer Support</h3>
+ <div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/tools/support"
+ data-cardSizes="6x6"
+ data-maxResults="3">
+ </div>
+
+ <h3>Developer News</h3>
+ <div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/tools/news"
+ data-cardSizes="9x6"
+ data-maxResults="2">
+ </div>
+
+ <h3>More</h3>
+ <div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/tools/more"
+ data-cardSizes="6x6"
+ data-maxResults="3">
+ </div>
+
+<!-- <h3>Related Resources</h3>
+ <div class="resource-widget resource-stack-layout col-16"
+ data-query="tag:developersupport"
+ data-sortOrder="-timestamp"
+ data-numStacks="3"
+ data-maxResults="6">
+ </div> -->
+
+</div>
diff --git a/docs/html/distribute/tools/launch-checklist.jd b/docs/html/distribute/tools/launch-checklist.jd
new file mode 100644
index 0000000..3b0dd55
--- /dev/null
+++ b/docs/html/distribute/tools/launch-checklist.jd
@@ -0,0 +1,1072 @@
+page.title=Launch Checklist
+page.metaDescription=Essential overview of the complete process of delivering your app to users. Read this checklist early in development to help you plan for a successful launch on Google Play.
+meta.tags="localizing, publishing, disttools"
+page.tags="launch, publishing, Google Play"
+page.image=/distribute/images/launch-checklist.jpg
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv" style="width:280px">
+ <h2>Checklist</h2>
+ <ol>
+ <li><a href="#understand-publishing">1. Understand the Publishing Process</a></li>
+ <li><a href="#understand-policies">2. Understand Google Play Policies</a></li>
+ <li><a href="#test-quality">3. Test for Core App Quality</a></li>
+ <li><a href="#determine-rating">4. Determine Content Rating</a></li>
+ <li><a href="#determine-country">5. Determine Country Distribution</a></li>
+ <li><a href="#confirm-size">6. Confirm Overall Size</a></li>
+ <li><a href="#confirm-platform">7. Confirm Platform and Screen Ranges</a></li>
+ <li><a href="#decide-price">8. Decide Free or Priced</a></li>
+ <li><a href="#consider-billing">9. Use In-app Billing</a></li>
+ <li><a href="#set-prices">10. Set Prices for your Products</a></li>
+ <li><a href="#start-localization">11. Start Localization</a></li>
+ <li><a href="#prepare-graphics">12. Prepare Promotional Graphics, Screenshots, and Videos</a></li>
+ <li><a href="#build-upload">13. Build the Release-ready APK</a></li>
+ <li><a href="#plan-beta">14. Plan a Beta Release</a></li>
+ <li><a href="#complete-details">15. Complete the Store Listing</a></li>
+ <li><a href="#use-badges">16. Use Google Play Badges and Links</a></li>
+ <li><a href="#final-checks">17. Final Checks and Publishing</a></li>
+ <li><a href="#support-users">18. Support Users after Launch </a></li>
+ </ol>
+ </div>
+</div>
+
+<div class="top-right-float" style="width:194px"><img
+src="{@docRoot}distribute/images/launch-checklist.jpg"></div>
+
+<p>
+ Before you publish your apps on Google Play and distribute them to users, you
+ need to get the apps ready, test them, and prepare your promotional
+ materials.
+</p>
+
+<p>
+ This page helps you understand the publishing process and get ready for a
+ successful product launch on Google Play. It summarizes some of the tasks
+ you'll need to complete before publishing your app on Google Play, such as
+ creating a signed, release-ready application package (APK), understanding the
+ requirements of the app, and creating the product page and graphic assets for
+ each of your apps.
+</p>
+
+<p>
+ The preparation and publishing tasks are numbered to give you a rough idea of
+ sequence. However, you can handle the tasks in any sequence that works for
+ you or you can skip steps as appropriate.
+</p>
+
+<p>
+ As you move toward publishing, a variety of support resources are available
+ to you. Relevant links are provided in each step.
+</p>
+
+<div class="headerLine">
+ <h1 id="understand-publishing">
+ 1. Understand the Publishing Process
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Before you begin the steps in this checklist, you should take a moment to
+ read and understand the overall publishing workflow and become familiar with
+ how the process works. In particular, you or your development team will need
+ to prepare your apps for release using a process common to all Android apps.
+ The <a href="{@docRoot}tools/publishing/publishing_overview.html">Publishing
+ workflow documents</a> provide the details on how publishing works and how to
+ get an APK ready for release.
+</p>
+
+<p>
+ Once you are familiar with publishing in general, continue reading to
+ understand the issues that you should consider when publishing apps on Google
+ Play.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/understanding"
+data-sortorder="-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3"
+data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="understand-policies">
+ 2. Understand Google Play Policies and Agreements
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Make sure that you understand and follow the Google Play program policies
+ that you accepted when registering. Google Play actively enforces the
+ policies and any violations can lead to suspension of your apps or, for
+ repeated violations, termination of your developer account.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/policies" data-sortorder=
+"-timestamp" data-cardsizes="6x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="test-quality">
+ 3. Test for Quality
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Before you publish apps on Google Play, it's important to make sure that they
+ meet the basic quality expectations for all Android apps, on all of the
+ devices that you are targeting. You can check your app's quality by setting
+ up a test environment and testing the app against a short set of
+ <strong>quality criteria that applies to all apps</strong>. For complete
+ information, see the <a href=
+ "{@docRoot}distribute/essentials/quality/core.html">Core App Quality</a>
+ guidelines.
+</p>
+
+<p>
+ If your app is targeting tablet devices, make sure that it delivers a rich,
+ compelling experience to your tablet customers. See the <a href=
+ "{@docRoot}distribute/essentials/quality/tablets.html">Tablet App Quality</a>
+ guidelines for recommendations on ways to optimize your app for tablets.
+</p>
+
+<p>
+ If you plan to make your apps available to Google Play for Education, then
+ you need to make sure they are suitable for a K-12 classroom and offer
+ outstanding educational value. See the <a href=
+ "{@docRoot}distribute/essentials/gpfe-guidelines.html">Education
+ Guidelines</a> for information on the characteristics your education apps
+ should exhibit.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/quality" data-sortorder=
+"-timestamp" data-cardsizes="6x3,6x3,6x3,9x3,9x3,9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="determine-rating">
+ 4. Determine your App’s Content Rating
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Google Play requires you to set a content rating for your app, which informs
+ Google Play users of its maturity level. Before you publish, you should
+ confirm what rating level you want to use. The available content rating
+ levels are:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Everyone
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Low maturity
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Medium maturity
+ </p>
+ </li>
+
+ <li>
+ <p>
+ High maturity
+ </p>
+ </li>
+</ul>
+
+<p>
+ On their Android devices, Android users can set the desired maturity level
+ for browsing. Google Play then filters apps based on the setting, so the
+ content rating you select can affect the app's distribution to users. You can
+ assign (or change) the content rating for your apps in the Developer Console,
+ no changes are required in your app binary.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/rating" data-sortorder=
+"-timestamp" data-cardsizes="9x3,6x3,6x3,9x3,9x3,9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="determine-country">
+ 5. Determine Country Distribution
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Google Play lets you control what countries and territories your apps are
+ distributed to. For the widest reach and the largest potential customer base,
+ you’d normally want to distribute to all available countries and territories.
+ However, because of business needs, app requirements, or launch dependencies,
+ you might want to exclude one or more countries from your distribution.
+</p>
+
+<p>
+ It's important to determine the exact country distribution early, because it
+ can affect:
+</p>
+
+<ul>
+ <li>
+ <p>
+ The need for localized resources in the app.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ The need for a localized app description in the Developer Console.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Legal requirements for the app that may be specific to certain countries.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Time zone support, local pricing, and so on.
+ </p>
+ </li>
+</ul>
+
+<p>
+ With your target countries in mind, you should assess your localization
+ needs, both in your apps and in their Google Play listings details, and start
+ the work of localization well in advance of your target launch date.
+</p>
+
+<p>
+ See <a href=
+ "{@docRoot}distribute/tools/localization-checklist.html">Localization
+ Checklist</a> for key steps and considerations in the localization process.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/country" data-sortorder=
+"-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="confirm-size">
+ 6. Confirm the App's Overall Size
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ The overall size of your app can affect its design and how you publish it on
+ Google Play. Currently, the maximum size for an APK published on Google Play
+ is <strong>50 MB</strong>. If your app exceeds that size, or if you want to
+ offer a secondary download, you can use <a href=
+ "{@docRoot}google/play/expansion-files.html">APK Expansion Files</a>, which
+ Google Play will host for free on its server infrastructure and automatically
+ handle the download to devices.
+</p>
+
+<ul>
+ <li>
+ <p>
+ The maximum size for an APK published on Google Play is 50 MB.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ You can use up to two (2) APK Expansion Files, each up to 2GB in size,
+ for each APK.
+ </p>
+ </li>
+</ul>
+
+<p>
+ Using APK Expansion files is a convenient, cost-effective method of
+ distributing large apps. However, the use of APK Expansion Files requires
+ some changes in your app binary, so you will need to make those changes
+ before creating your release-ready APK.
+</p>
+
+<p>
+ To minimize the size of your app binary, make sure that you run the <a href=
+ "{@docRoot}tools/help/proguard.html">Proguard</a> tool or similar obfuscator
+ on your code when building your release-ready APK.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/size" data-sortorder=
+"-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="confirm-platform">
+ 7. Confirm the App's Platform and Screen Compatibility Ranges
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Before publishing, it's important to make sure that your apps are designed to
+ run properly on the Android platform versions and device screen sizes that
+ you want to target.
+</p>
+
+<p>
+ From an app-compatibility perspective, Android platform versions are defined
+ by <a href=
+ "{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API
+ level</a>. You should confirm the minimum version that your app is compatible
+ with <a href=
+ "{@docRoot}guide/topics/manifest/uses-sdk-element.html"><minSdkVersion></a>,
+ as that will affect its distribution to Android devices once it is published.
+</p>
+
+<p>
+ For screen sizes, you should confirm that the app runs properly and looks
+ good on the range of screen sizes and pixel densities that you want to
+ support. You should follow the advice provided in <a href=
+ "{@docRoot}guide/practices/screens_support.html">Supporting Multiple
+ Screens</a> to provide scalable support for multiple screen sizes. However,
+ if you have been unable to do so, declare the minimum screen-size supported
+ by your apps using <a href=
+ "{@docRoot}guide/topics/manifest/supports-screens-element.html"><supports-screens></a>.
+ Google Play will then restrict the availability of your apps accordingly,
+ making them available to devices with the declared screen size or large.
+</p>
+
+<p>
+ To get a better understanding of the current device penetration of Android
+ platform versions and screen sizes across all Android devices, see the
+ <a href="{@docRoot}about/dashboards/index.html">Device Dashboard</a> charts.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/platform" data-sortorder=
+"-timestamp" data-cardsizes="6x3,6x3,6x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="decide-price">
+ 8. Decide Whether your App will be Free or Priced
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-launch-checklist-1.png">
+</div>
+
+<p>
+ On Google Play, you can publish apps as free to download or priced. Free apps
+ can be downloaded by any Android user in Google Play. Paid apps can be
+ downloaded only by users who are in a country that supports paid downloads
+ and have registered a form of payment in Google Play, such as a credit card
+ or Direct Carrier Billing.
+</p>
+
+<p>
+ Deciding whether you apps will be free or paid is important because, on
+ Google Play, <strong>free apps must remain free</strong>.
+</p>
+
+<ul>
+ <li>
+ <p>
+ Once you publish an app as a free app, you cannot change it to being a
+ priced app. However, you can still sell <a href=
+ "{@docRoot}google/play/billing/billing_overview.html#products">in-app
+ products</a> and <a href=
+ "{@docRoot}google/play/billing/billing_subscriptions.html">subscriptions</a>
+ through Google Play's <a href=
+ "{@docRoot}google/play/billing/index.html">In-app Billing</a> service.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ If you publish your app as a priced app, you <em>can</em> change it at
+ any time to be a free app (<strong>but cannot then change it back to
+ priced</strong>). You can also sell in-app products and subscriptions.
+ </p>
+ </li>
+</ul>
+
+<p>
+ If your app is be priced, or if you'll be selling in-app products, you need
+ <a href=
+ "https://developers.google.com/wallet/digital/training/getting-started/merchant-setup">
+ set up a Google Wallet Merchant Account</a> before you can publish.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/price" data-sortorder=
+"-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="consider-billing">
+ 9. Consider using In-app Billing
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Google Play <a href="{@docRoot}google/play/billing/index.html">In-app
+ Billing</a> lets you sell digital content in your applications. You can use
+ the service to sell a wide range of content, including downloadable content
+ such as media files or photos, and virtual content such as game levels or
+ potions. In-app Billing service lets you sell one-time purchases and
+ subscriptions from inside your app. This can help you to monetize the app
+ over its installed lifetime.
+</p>
+
+<p>
+ If your are looking for more ways to monetize your app and build engagement,
+ you should consider In-app Billing or Instant Buy. These services have become
+ very popular with both users and developers. To use In-app Billing or Instant
+ Buy, you need to make changes to your app binary, so you will need to
+ complete and test your implementation before creating your release-ready APK.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/purchasemethod"
+data-sortorder="-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3"
+data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="set-prices">
+ 10. Set Prices for your Products
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ If your apps is priced or you’ll sell in-app or physical products, Google
+ Play lets you set prices for your products in a variety of currencies, for
+ users in markets around the world. You can set prices individually in
+ different currencies, so you have the flexibility to adjust your price
+ according to market conditions and exchange rates.
+</p>
+
+<p>
+ Before you publish, consider how you’ll price your products and what your
+ prices will be in various currencies. Later, you can set prices in all
+ available currencies through the Developer Console.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/setprice" data-sortorder=
+"-timestamp" data-cardsizes="9x3,9x3,9x3,9x3,9x3,9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="start-localization">
+ 11. Start Localization
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ With your country targeting in mind, it's a good idea to assess your
+ localization needs, ensure your apps are internationalized, and start the
+ work of localizing well in advance of your target launch date.
+</p>
+
+<p>
+ In addition to your application design, there are at least three aspects of
+ localization to consider:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Localizing the strings, images, and other resources in your apps.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Localizing your apps’ store listing details on Google Play.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Localizing the apps’ graphic assets, screenshots, and videos that
+ accompany your store listing.
+ </p>
+ </li>
+</ul>
+
+<p>
+ See <a href=
+ "{@docRoot}distribute/tools/localization-checklist.html">Localization
+ Checklist</a> for key steps and considerations in the localization process.
+</p>
+
+<p>
+ To localize your store listing, first create and finalize your app title,
+ description, and promotional text. Collect and send all of these for
+ localization. You can optionally translate the "Recent Changes" text for app
+ updates as well. Later you can add your localized listing details in the
+ Developer Console, or you can choose to let Google Play auto-translate your
+ listing details into the languages you support.
+</p>
+
+<p>
+ A key part of making your app listing attractive to a global customer base is
+ creating localized versions of your promotional graphics, screenshots and
+ videos. For example, your app's feature graphic might include text that
+ should be translated, for maximum effectiveness. You can create different
+ versions of your promotional graphics for each language and upload them to
+ the Developer Console. If you offer a promotional video, you can create
+ localized versions of it and then add a link to the correct localized video
+ for each language you support.
+</p>
+
+<p>
+ When your translations are complete, move them into your app resources as
+ needed and test that they are loaded properly. Save your app's translated
+ listing details for later, when you upload assets and configure the store
+ listing.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/localization"
+data-sortorder="-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3"
+data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="prepare-graphics">
+ 12. Prepare Promotional Graphics, Screenshots, and Videos
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ When you publish on Google Play, you can supply a variety of high-quality
+ graphic assets to showcase your app or brand. After you publish, these appear
+ on your store listing page, search results, and elsewhere. These graphic
+ assets are key parts of a successful store listing page that attracts and
+ engages users, so you should consider having a professional produce them for
+ you. Screenshots and videos are also very important, because they show how
+ your apps look, how they’re used or played, and what makes them different.
+</p>
+
+<p>
+ All of your graphic assets should be designed so that they are easy to see
+ and highlight your apps or brand in a colorful, interesting way. The assets
+ should reference the same logo and icon as users will find in the All Apps
+ launcher once they have downloaded the app. Your graphic assets should also
+ fit in well with the graphic assets of all the apps you publish, which will
+ be also be displayed to users on your store listing page.
+</p>
+
+<p>
+ To help you market your apps more effectively to a global audience, Google
+ Play lets you create localized versions of your promotional graphics,
+ screenshots, and videos and upload them to the Developer Console. When a user
+ visits your app's store listing, Google Play displays the promotional
+ graphic, screenshots, and video that you've provided for the user's language.
+</p>
+
+<p>
+ To localize your promotional graphics, you can translate any embedded text,
+ use different imagery or presentation, or change your marketing approach to
+ best address the needs of users in specific languages. For example, if your
+ feature or promotional graphic includes an embedded product name or tag line,
+ you can translate that text and add it to a localized version of the
+ promotional graphic.
+</p>
+
+<p>
+ Because your localized graphic assets and videos are so important, you should
+ get started on creating and localizing them well in advance of your target
+ publishing date.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/graphics" data-sortorder=
+"-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="build-upload">
+ 13. Build and Upload the Release-ready APK
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ When you are satisfied that your apps meet your UI, compatibility, and
+ quality requirements, you can build the release-ready versions of the apps.
+ You upload the release-ready APKs to your Developer Console and distribute to
+ users.
+</p>
+
+<p>
+ The process for preparing a release-ready APK is the same for all apps,
+ regardless of how they are distributed. Generally the process includes basic
+ code cleanup and optimization, building and signing with your release key,
+ and final testing.
+</p>
+
+<p>
+ For complete details on how to create a release-ready version of your app,
+ read <a href="{@docRoot}tools/publishing/preparing.html">Preparing for
+ Release</a>.
+</p>
+
+<p>
+ Once you have the release-ready APKs in hand, you can upload them to the
+ Developer Console. If necessary, you can replace an APK with a more recent
+ version before publishing.
+</p>
+<!--<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/toolsreference/launchchecklist/build"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3,6x3,9x3,9x3,9x3"
+ data-maxResults="6"></div>-->
+
+<div class="headerLine clearfloat">
+ <h1 id="plan-beta">
+ 14. Plan a Beta Release
+ </h1>
+
+ <hr>
+</div>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <h2>
+ Easy beta testing
+ </h2>
+
+ <p>
+ Google Play lets you set up groups of alpha and beta testers, anywhere
+ around the world. Check out this powerful feature next time you sign in
+ to the Developer Console.
+ </p>
+ </div>
+</div>
+
+<p>
+ Before launching your apps, it's always valuable to get real-world feedback
+ from users — even more so when you are launching new apps. It's highly
+ recommended that you distribute a pre-release version of your app to users
+ across your key markets and provide an easy means for them to provide
+ feedback and report bugs.
+</p>
+
+<p>
+ Google Play can help you set up a beta program for your app. After you sign
+ in to your Developer Console and have upload your APKs, you can set up groups
+ of users for alpha and beta testing the apps. You can start with a small
+ group of alpha testers, then move to a larger group of beta testers. Once
+ users are added, they access your app's store listing and install the app.
+ <strong>Users on alpha or beta versions cannot leave reviews or
+ ratings</strong>, so there is <strong>no risk to your rating</strong> on
+ Google Play. You need to arrange a mechanism for any testing feedback to be
+ delivered - such as a Google Forum or Google+.
+</p>
+
+<p>
+ The feedback you receive will help you adjust your UI, translations, and
+ store listing to ensure a great experience for users.
+</p>
+<!-- Related resources
+
+<table>
+ <tr>
+ <td>Beta-testing and Staged Rollouts
+See how you can facilitate testing with Google Play.</td>
+ </tr>
+</table> -->
+
+<div class="headerLine">
+ <h1 id="complete-details">
+ 15. Complete the Apps’ Store Listing
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ On Google Play, your apps’ product information is shown to users on their
+ store listing pages, the pages that users visit to learn more about your apps
+ and the pages from which they will decide to purchase or download your apps,
+ on their Android devices or on the web.
+</p>
+
+<p>
+ Google Play gives you a variety of ways to promote your apps and engage with
+ users on your store listing pages, from colorful graphics, screenshots, and
+ videos to localized descriptions, release details, and links to your other
+ apps. As you prepare to publish your apps, make sure that you take advantage
+ of all that your product detail pages can offer, making your apps as
+ compelling as possible to users.
+</p>
+
+<p>
+ You should begin planning your product pages in advance of your target launch
+ date, arranging for localized description, high-quality graphic assets,
+ screenshots and video, and so on.
+</p>
+
+<p>
+ As you get near your target publishing date, you should become familiar with
+ all the fields, options, and assets associated with the store listing
+ configuration page in the Developer Console. As you collect the information
+ and assets for the page, make sure that you can enter or upload it to the
+ Developer Console, until the page is complete and ready for publishing.
+</p>
+
+<p>
+ After you've set your apps’ geographic targeting in the Developer Console,
+ remember to add your localized store listing, promotional graphics, and so
+ on, for all of the languages that you support.
+</p>
+
+<p>
+ If your app is targeting tablet devices, make sure to include at least one
+ screenshot of the app running on a tablet, and highlight your apps’ support
+ for tablets in the app description, release notes, promotional campaigns, and
+ elsewhere.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/productdetails"
+data-sortorder="-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3"
+data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="use-badges">
+ 16. Use Google Play Badges and Links in your Promotional Campaigns
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Google Play badges give you an officially branded way of promoting your apps
+ to Android users. Use the <a href=
+ "{@docRoot}distribute/tools/promote/badges.html">Google Play Badge
+ generator</a> to quickly create badges to link users to your products from
+ web pages, ads, reviews, and more. You can also use special <a href=
+ "{@docRoot}distribute/tools/promote/linking.html">link formats</a> to link
+ directly to your store listing page, to a list of your products, or to search
+ results.
+</p>
+
+<p>
+ To help your apps get traction after launch, it's strongly recommended that
+ you support launch with a promotional campaign that announces your product
+ through many channels as possible, in as many countries as possible. For
+ example, you can promote a launch using ad placements, social network or blog
+ posts, video and other media, interviews and reviews, or any other channels
+ available.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/badges" data-sortorder=
+"-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="final-checks">
+ 17. Final Checks and Publishing
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ When you think you’re ready to publish, sign in to the Developer Console and
+ take a few moments for a few final checks.
+</p>
+
+<p>
+ Make sure that:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Your developer profile has the correct information and is linked to the
+ proper Google Wallet merchant account (if you’re selling products).
+ </p>
+ </li>
+
+ <li>
+ <p>
+ You have the right version of the apps uploaded.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ All parts of your store listing are ready, including all graphic assets,
+ screenshots, video, localized descriptions, and so on.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ You have set your app's pricing to free or priced.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ You have set country (and carrier) targeting and priced your products (if
+ appropriate) in buyer currencies
+ </p>
+ </li>
+
+ <li>
+ <p>
+ "Compatible devices" shows that your apps are reaching the devices that
+ you’re targeting. If not, you should check with your development team on
+ the apps’ requirements and filtering rules.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ You’ve provided the correct link to your website and the correct support
+ email address.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Your apps don’t violate content policy guidelines.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ You’ve acknowledged that your apps meets the guidelines for Android
+ content on Google Play and also US export laws.
+ </p>
+ </li>
+</ul>
+
+<p>
+ Your apps are now ready to publish!
+</p>
+
+<p>
+ If you’re releasing an update, make sure to read the <a href=
+ "http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113476&topic=2365760&ctx=topic">
+ requirements for publishing updates</a>.
+</p>
+
+<p>
+ When you’re ready, click the <strong>Publish</strong> button in the Developer
+ Console. Within a few hours, your apps will become available to users and
+ your product page will appear in Google Play for browsing, searching, or
+ linking from your promotional campaigns.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/launchchecklist/finalchecks"
+data-sortorder="-timestamp" data-cardsizes="6x3,6x3,6x3,9x3,9x3,9x3"
+data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="support-users">
+ 18. Support Users after Launch
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ After you publish apps or app updates, it's crucial for you to support your
+ customers. Prompt and courteous support can provide a better experience for
+ users that results in better ratings and more positive reviews for your
+ products. Users are likely to be more engaged with your app and recommend it
+ if you’re responsive to their needs and feedback. This is especially true
+ after publishing if you’re using a coordinated promotional campaign.
+</p>
+
+<p>
+ There are a number of ways that you can keep in touch with users and offer
+ them support. The most fundamental is to provide your <em>support email
+ address</em> on your store listing pages. Beyond that, you can provide
+ support in any way you choose, such as a forum, mailing list, or a Google+
+ page. The Google Play team provides user support for downloading, installing.
+ and payments issues, but issues that fall outside of these topics will be in
+ your domain. Examples of issues you can support include: feature requests,
+ questions about using the apps, and questions about compatibility settings.
+</p>
+
+<p>
+ After publishing, plan to:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Check your ratings and reviews frequently on your apps’ store listing
+ pages. Watch for recurring themes that could signal bugs or other issues.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Be mindful of new Android platform version launches, as compatibility
+ settings for your apps might need to be updated.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Put a link to your support resources on your website and set up any other
+ support such as forums.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Provide an appropriate support email address on your store listing pages
+ and respond to users when they take the time to email you.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Beyond the automatic refund window offered by Google Play, be generous
+ with your own refund policy, as satisfied users will be more likely to
+ purchase in the future.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Acknowledge and fix issues in your apps. It helps to be transparent and
+ list known issues on your store listing pages proactively.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Publish updates as frequently as you’re able, without sacrificing quality
+ or annoying users with too-frequent updates.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ With each update, make sure to provide a summary of what's changed. You
+ can enter this information in the Developer Console. Users will read it
+ and appreciate that you are serious about improving the quality of your
+ apps.
+ </p>
+ </li>
+</ul>
+</ul>
+
+<h3>Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/toolsreference/launchchecklist/afterlaunch"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3,9x3,9x3,9x3,9x3"
+ data-maxResults="6"></div>
diff --git a/docs/html/distribute/tools/localization-checklist.jd b/docs/html/distribute/tools/localization-checklist.jd
new file mode 100644
index 0000000..7a638ed
--- /dev/null
+++ b/docs/html/distribute/tools/localization-checklist.jd
@@ -0,0 +1,978 @@
+page.title=Localization Checklist
+page.metaDescription=Take advantage of the worldwide audience offered by Android and Google Play. Read this checklist to get an overview of how to deliver your product to markets around the world.
+meta.tags="localizing, publishing, disttools"
+page.tags="local, l10n, translation, language"
+page.image=/distribute/images/localization-checklist.jpg
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv" style="width:280px">
+ <h2>Checklist</h2>
+ <ol>
+ <li><a href="#identify-languages">1. Identify target languages and locales</a></li>
+ <li><a href="#design">2. Design for localization</a></li>
+ <li><a href="#manage-strings">3. Manage strings for localization</a></li>
+ <li><a href="#translate-strings">4. Translate UI strings and other resources</a></li>
+ <li><a href="#test">5. Test your localized app</a></li>
+ <li><a href="#prepare-launch">6. Prepare for international launch</a></li>
+ <li><a href="#support-users">7. Support international users after launch</a></li>
+ </ol>
+ </div>
+</div>
+
+<div class="top-right-float" style="width:194px">
+ <img src="{@docRoot}distribute/images/localization-checklist.jpg">
+</div>
+
+<p>
+ Android and Google Play offer you a worldwide audience for your apps, with an
+ addressable user base that's growing very rapidly in countries such as Japan,
+ Korea, India, Brazil, and Russia. We strongly encourage you to localize as it
+ can maximize your apps’ distribution potential resulting in ratings from
+ users around the world.
+</p>
+
+<p>
+ Localization involves a variety of tasks throughout your app development
+ cycle, and advance planning is essential. This document helps you identify
+ key aspects of localization to get your app ready for a successful worldwide
+ launch on Google Play.
+</p>
+
+<div class="headerLine">
+ <h1 id="identify-languages">
+ 1. Identify target languages and locales
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ A basic but important step in preparing for localization is identifying the
+ countries where you’ll distribute your apps and the languages spoken there.
+ Localizing your apps is particularly important in countries where there is a
+ large market opportunity and English or another international language is not
+ widely used.
+</p>
+
+<p>
+ For international users, you can manage your apps in three main dimensions:
+ country, locale, and language. Of those, language is the key consideration
+ for localization (locale can also significant because of differences in
+ formats for dates, times, currencies, and similar information). Users control
+ both the language and locale used on their Android devices and in turn those
+ affect how your app is displayed.
+</p>
+
+<p>
+ Typically, you would decide which countries to target first, based on overall
+ market size and opportunity, app category, competitive landscape, local
+ pricing and financial factors, and so on. Then, based on your country
+ targeting, you would determine the languages you need to support in your
+ apps.
+</p>
+
+<p>
+ You may then decide to localize into some or all languages of the targeted
+ country. It might make sense to start with a major regional language and add
+ more languages as user base grows.
+</p>
+
+<p>
+ Once you have identified your target languages, you can focus your
+ development, translation, testing, and marketing efforts to these markets.
+</p>
+
+<h3 id="related-resources">
+ Related Resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/localizationchecklist/identifylocales"
+data-sortorder="-timestamp" data-cardsizes="9x3," data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="design">
+ 2. Design for localization
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ After you've determined your target languages for localization, assess what
+ you'll need to do to support them in your apps and plan the work early.
+ Consider the vocabulary expansion, script requirements, character spacing and
+ wrapping constraints, left-to-right and right-to-left support, and other
+ potential factors in each language.
+</p>
+
+<h4>
+ <strong>Design a single set of flexible layouts</strong>
+</h4>
+
+<p>
+ As you create your layouts, make sure that any UI elements that hold text are
+ designed generously. It’s good to allow more space than necessary for your
+ language (up to 30% more is normal) to accommodate other languages.
+</p>
+
+<p>
+ Also, elements should be able to expand horizontally or vertically to
+ accommodate variations in the width and height of UI strings or input text.
+ Your text strings shouldn’t overlap borders or the screen edge in any of your
+ target languages.
+</p>
+
+<p>
+ If you design your UI carefully, you can typically use a single set of
+ layouts for all of the languages you support. See <a href=
+ "{@docRoot}training/basics/fragments/fragment-ui.html">Building a Flexible
+ UI</a> for more information.
+</p>
+
+<h4>
+ <strong>Use alternative layouts where needed</strong>
+</h4>
+
+<p>
+ In cases where your UI can't accommodate text in one of your target
+ languages, you can create an <a href=
+ "{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">
+ alternative layout</a> for that language only. Android makes it easy to
+ declare sets of layouts and other resources to load for specific languages,
+ locales, screen sizes, and so on, simply by tagging them with the appropriate
+ resource qualifiers. While the flexibility of alternative layouts exists it
+ can also make your apps harder to maintain over time. In general, using a
+ single, more flexible layout is preferred.
+</p>
+
+<h4>
+ <strong>Support RTL layouts and text</strong>
+</h4>
+
+<p>
+ If you’re distributing to countries where right-to-left (RTL) scripts are
+ used, you should consider implementing support for RTL layouts and text
+ display and editing, to the extent possible.
+</p>
+
+<p>
+ Android 4.1 introduced limited support for bidirectional text, allowing apps
+ to display and edit text in both left-to-right (LTR) and right-to-left (RTL)
+ scripts. Android 4.2 added <a href=
+ "http://android-developers.blogspot.fr/2013/03/native-rtl-support-in-android-42.html">
+ full native support for RTL layouts</a>, including layout mirroring, so that
+ you can deliver the same great app experiences to all of your users.
+</p>
+
+<p>
+ At a minimum, for Android 4.2 users, it's simple to add basic RTL layout
+ mirroring, which goes a long way toward meeting the needs of RTL users.
+</p>
+
+<h4>
+ <strong>Use system-provided formats for dates, times, numbers, and
+ currencies</strong>
+</h4>
+
+<p>
+ Where your apps specify dates, times, numbers, currencies, and other entities
+ that can vary by locale, make sure to use the system-provided formats, rather
+ than app-specific formats. Keep in mind that not every locale uses the same
+ thousands separator, decimal separator, or percent sign.
+</p>
+
+<p>
+ Android provides a variety of utilities for formatting and converting
+ patterns across locales, such as <a href=
+ "{@docRoot}reference/android/text/format/DateUtils.html">DateUtils</a> and
+ <a href="{@docRoot}reference/java/text/DateFormat.html">DateFormat</a> for
+ dates; <a href=
+ "{@docRoot}reference/java/lang/String.html#format(java.lang.String,%20java.lang.Object...)">
+ String.format()</a> or <a href=
+ "{@docRoot}reference/java/text/DecimalFormat.html">DecimalFormat</a> for
+ numbers and currency; <a href=
+ "{@docRoot}reference/android/telephony/PhoneNumberUtils.html">PhoneNumberUtils</a>
+ for phone numbers; and others.
+</p>
+
+<p>
+ Hardcoding your formats based on assumptions about the user's locale can
+ result in problems when the user changes to another locale. Using
+ system-provided formats and utilities is strongly encouraged.
+</p>
+
+<h4>
+ <strong>Include a full set of default resources</strong>
+</h4>
+
+<p>
+ Make sure that your apps can run properly regardless of language or locale by
+ providing a complete set of default resources. The app's default resources
+ are those that are <em>not marked</em> with any language or locale
+ qualifiers, for example those stored in res/drawable/ and res/values/. If
+ your apps attempt to load a resource that isn't available in the current
+ language or in the default set, they will crash.
+</p>
+
+<p>
+ Whatever the default language you’re using in your apps, make sure that you
+ store the associated layouts, drawables, and strings in default resource
+ directories, without language or locale qualifiers.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/tools/loc/designforloc" data-sortorder="-timestamp"
+data-cardsizes="9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="manage-strings">
+ 3. Manage strings for localization
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ It's important to manage your apps’ UI strings properly, so that you deliver
+ a great experience for users and make localization straightforward.
+</p>
+
+<h4>
+ <strong>Move all strings into strings.xml</strong>
+</h4>
+
+<p>
+ As you build your apps, remember not to hard code any string. Instead declare
+ <em>all</em> of your strings as resources in a default strings.xml file which
+ makes it easy to update and localize. Strings in strings.xml file can be
+ extracted, translated and integrated back into your app (with appropriate
+ qualifiers) without any changes to compiled code.
+</p>
+
+<p>
+ If you generate images with text, put those strings in strings.xml as well,
+ and regenerate the images after translation.
+</p>
+
+<h4>
+ <strong>Follow Android guidelines for UI strings</strong>
+</h4>
+
+<p>
+ As you design and develop your UIs, make sure that you pay close attention to
+ <em>how</em> you talk to your user. In general, use a <a href=
+ "{@docRoot}design/style/writing.html">succinct and compressed style</a> that
+ is friendly but brief, and use a consistent style throughout your UIs.
+</p>
+
+<p>
+ Make sure that you read and follow the Android Design recommendations for
+ <a href="{@docRoot}design/style/writing.html">writing style and word
+ choice</a>. Doing so will make your apps appear more polished to the user and
+ will help users understand your UI more quickly.
+</p>
+
+<p>
+ Also, always use Android standard terminology wherever possible—such as
+ for UI elements such as "Action Bar," "Options Menu," "System Bar,"
+ "Notifications," and so on. Using Android terms correctly and consistently
+ makes translation easier and results in a better end-product for users.
+</p>
+
+<h4>
+ <strong>Provide sufficient context for declared strings</strong>
+</h4>
+
+<p>
+ As you declare strings in your strings.xml file, make sure to describe the
+ context in which the string is used. This information will be invaluable to
+ translators and result in better quality translation and will also help you
+ manage your strings more effectively over time.
+</p>
+
+<p>
+ Here's an example:
+</p>
+
+<pre class="prettyprint">
+<!-- The action for submitting a form. This text is on a button that can fit 30 chars -->
+<string name="login_submit_button">Sign in</string>
+</pre>
+<p>
+ Consider providing context information that may include:
+</p>
+
+<ul>
+ <li>
+ <p>
+ What is this string for? When/where is it presented to the user?
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Where is this in the layout? For example, if it’s a button, translations
+ are less flexible than if it were a text box.
+ </p>
+ </li>
+</ul>
+
+<h4>
+ <strong>Mark message parts that should not be translated</strong>
+</h4>
+
+<p>
+ Often strings contain contain text that shouldn’t be translated to other
+ languages. Common examples might be a piece of code, a placeholder for a
+ value, a special symbol, or a name. As you prepare you strings for
+ translation, look for and mark text that should remain as-is, without
+ translation, so that translators don’t change it.
+</p>
+
+<p>
+ To mark text that should not be translated, use an
+ <code><xliff:g></code> placeholder tag. Here's an example tag that
+ ensures the text "%1$s" will not be changed during translation (otherwise it
+ could break the message):
+</p>
+
+<pre class="prettyprint">
+<string name="countdown">
+ <xliff:g id="time" example="5 days>%1$s</xliff:g>until holiday
+</string>
+</pre>
+<p>
+ When you declare a placeholder tag, always add an id attribute that explains
+ what the placeholder is for. If your apps will later replace the placeholder
+ value, be sure to provide an example attribute to clarify the expected use.
+</p>
+
+<p>
+ Here are some more examples of placeholder tags:
+</p>
+
+<pre>
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+<!-- Example placeholder for a special unicode symbol -->
+
+<string name="star_rating">Check out our 5
+
+ <xliff:g id="star">\u2605</xliff:g>
+
+</string>
+
+<!-- Example placeholder for a for a URL -->
+
+<string name="app_homeurl">
+
+ Visit us at <xliff:g id="application_homepage">http://my/app/home.html</xliff:g>
+
+</string>
+
+<!-- Example placeholder for a name -->
+
+<string name="prod_name">
+
+ Learn more at <xliff:g id="prod_gamegroup">Game Group</xliff:g>
+
+</string>
+
+<!-- Example placeholder for a literal -->
+
+<string name="promo_message">
+
+ Please use the "<xliff:g id="promotion_code">ABCDEFG</xliff:g>” to get a discount.
+
+</string>
+
+...
+
+</resources>
+</pre>
+<h3 class="clearfloat">
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/localizationchecklist/managestrings"
+data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="translate-strings">
+ 4. Translate UI strings and other resources
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Translating your apps’ UI strings and resources to your target languages is
+ the key phase of localization, and it's the one that requires the most care
+ and planning.
+</p>
+
+<p>
+ It is recommended to work with a professional translator (see <a href=
+ "#gp-trans">Purchase professional translations</a>) to ensure high quality
+ translations that enhance the value of your app. Machine translations,
+ although an option may not produce as good an experience for your users.
+</p>
+
+<h4>
+ <strong>Prepare for translation</strong>
+</h4>
+
+<p>
+ Translation output quality will depend in part on your input therefore make
+ sure that your strings.xml file is well organized, well commented, and
+ accurate.
+</p>
+
+<p>
+ Here are some ways to prepare your strings for translation:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Make sure your strings are formatted correctly and consistently.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Follow the strings recommendations listed in <a href=
+ "#manage-strings">Manage strings for localization</a>, above.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Clean up the strings.xml file and remove unused strings.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Place comments in the file to identify the owner, origin, and the version
+ of the file, as well as any special instructions for translators.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Identify existing translations, if any, and include those in an outgoing
+ zip file or other package that you send to translators.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Identify drawables or other resources that require translation and
+ include them in the translators’ package.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Additionally, consider translating your apps’ store listing details
+ — app title and description, release notes, and so on — as
+ well as other international marketing materials.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Create a terminology list that explains the meaning and use of key terms
+ found in your product, your market, or the underlying technology. Add the
+ list to the translators’ package.
+ </p>
+ </li>
+</ul>
+
+<h4>
+ <strong>Send your strings for translation</strong>
+</h4>
+
+<p>
+ Early in the development cycle, contact professional translation vendors to
+ get an idea of cost and turnaround time. Make sure to include multiple
+ iterations in the cost. You can find translation vendors online or use
+ translation services available directly from Google Play Developer console
+ (see <a href="#gp-trans">Purchase professional translations</a>).
+</p>
+
+<p>
+ When your translations are complete, take a preliminary look at the
+ translations. Check that all files were translated, check for potential
+ encoding issues, and make sure that declaration formats are intact.
+</p>
+
+<p>
+ If everything looks good, carefully move the localized directories and files
+ back into your apps’ resources. Make sure to tag the directories with the
+ appropriate language and locale qualifiers so that they'll later be loaded
+ properly.
+</p>
+
+<p>
+ After the translations are merged back into your app, start <a href=
+ "#test">testing the localized app</a>.
+</p>
+
+<h4 id="gp-trans">
+ <strong>Purchase professional translations through Google Play</strong>
+</h4>
+
+<div class="sidebox-wrapper">
+ <div class="sidebox">
+ <h2>
+ App Translations Service
+ </h2>
+
+ <p>
+ To make it easy to export your app's strings and import the finished
+ translations into your project, try the <a href=
+ "{@docRoot}sdk/installing/installing-adt.html#tmgr">ADT Translation
+ Manager Plugin</a>.
+ </p>
+ </div>
+</div>
+
+<p>
+ Google Play App Translation Service can help you quickly find and purchase
+ translations of your app. In the Developer Console, you can browse a list of
+ third-party vendors who are pre-qualified by Google to offer high-quality
+ translation at competitive prices. You can upload the strings you want
+ translated, select the languages you want to translate into, and select your
+ translation vendor based on time and price.
+</p>
+
+<p>
+ Once you've purchased translations, you'll receive an email from your vendor.
+ Your translations are a direct business agreement between you and your
+ vendor; you'll need to work directly with the vendor to manage the
+ translation process and deliverables and resolve any support issues.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-localization-trans-0.png" class="border-img">
+</div>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/localizationchecklist/translatestrings"
+data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="test">
+ 5. Test your localized app
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Once you've received your translated strings and resources and moved them
+ back into your apps, you need to test the apps to make sure that they’re
+ ready for distribution to your international users.
+</p>
+
+<p>
+ Manual testing can help you discover localization issues in your layouts and
+ strings that can affect user satisfaction and, ultimately, your apps' user
+ rating.
+</p>
+
+<h4>
+ <strong>Set up a test environment</strong>
+</h4>
+
+<p>
+ To test your localized app, you'll need to set up an environment consisting
+ of multiple devices (or virtual devices) and screen sizes, based on the
+ markets and form factors you’re targeting. Note that the range of devices in
+ specific regions might be different. If possible, match your test devices to
+ the actual devices likely to be available to users.
+</p>
+
+<h4>
+ <strong>Look for common localization issues</strong>
+</h4>
+
+<p>
+ On each test device, set the language or locale in Settings. Install and
+ launch the app and then navigate through all of the UI flows, dialogs, and
+ user interactions. Enter text in inputs. Some things to look for include:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Clipped text, or text that overlaps the edge of UI elements or the screen
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Poor line wrapping
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Incorrect word breaks or punctuation
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Incorrect alphabetical sorting
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Incorrect layout direction or text direction
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Untranslated text — if your default strings are displayed instead
+ of translated strings, then you may have overlooked those strings for
+ translation or marked the resources directory with an incorrect language
+ qualifier.
+ </p>
+ </li>
+</ul>
+
+<p>
+ For cases where your strings have expanded in translation and no longer fit
+ your layouts, it's suggested you try to simplify your default text, simplify
+ your translated text, or adjust your default layouts. If none of those
+ resolves the issue, you can create a custom layout for the language.
+</p>
+
+<h4>
+ <strong>Test for default resources</strong>
+</h4>
+
+<p>
+ After you've tested your apps in all of your supported languages and locales,
+ make sure to test it again in an <em>unsupported language</em> and locale.
+ This’ll help you make sure that your apps includes a full set of default
+ strings and resources, so that your apps are usable to all users, regardless
+ of their preferred language.
+</p>
+
+<h4>
+ <strong>Review with native-language speakers</strong>
+</h4>
+
+<p>
+ During or after testing, it's recommended that you let native speakers review
+ your localized apps. One way to do that is through beta testing with regional
+ users — Google Play can help you do this. <!-- </p>
+
+<h3 class="clearfloat">Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/toolsreference/localizationchecklist/test"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3,6x3,9x3,9x3,9x3"
+ data-maxResults="6"></div> -->
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="prepare-launch">
+ 6. Prepare for international launch
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Getting your apps translated is a key part of localization, but to help your
+ product attract users and gain visibility, you should prepare for launch in
+ your target countries and create a broader launch and marketing plan for
+ international users.
+</p>
+
+<h4>
+ <strong>Localize your Google Play listing</strong>
+</h4>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <h2>
+ Localize your Google Play listing
+ </h2>
+
+ <p>
+ Google Play Store listing is the first impression international users
+ will have of your app. You should highlight what's great about your apps
+ to all of your users! Localize your listing in the Developer Console,
+ including:
+ </p>
+
+ <ul>
+ <li>App title and description
+ </li>
+
+ <li>App screenshots on phones and tablets
+ </li>
+
+ <li>Promotional graphics and videos.
+ </li>
+ </ul>
+ </div>
+</div>
+
+<p>
+ If you want your apps to be successful in international markets, it's
+ essential to localize your Google Play store listing. You can manage your
+ localized listing in the Developer Console.
+</p>
+
+<p>
+ Well before launch, decide on your app title, description, promotional text,
+ marketing names and programs, and other text and images. Send your listing
+ text and images for translation early, so that you’ve them ready when beta
+ testing begins. When your translated text is available, you can add it
+ through the Developer Console.
+</p>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <h2>
+ Store listing translation in Google Play
+ </h2>
+
+ <p>
+ You can use the App Translation service on Google Play to translate your
+ store listing. Prepare an XML file with your store listing information
+ and upload just as you would upload the strings.xml file (see <a href=
+ "#gp-trans">Purchase professional translations</a>)
+ </p>
+ </div>
+</div>
+
+<p>
+ Also, since you've made the effort to create a great localized app, let users
+ know about it! Take screenshots of your UI in each language, for phones and
+ 7- and 10- inch tablets. You can upload screenshots to the Developer Console
+ for each language you support. These will be of great value to users browsing
+ your app listings in other languages.
+</p>
+
+<p>
+ It's also essential to create localized versions of your promotional graphics
+ and videos. For example, your apps’ feature graphics might include text that
+ should be translated, for maximum effectiveness, or you might want to take a
+ different visual approach in one country than you do in another. You can
+ create different versions of your promotional graphics for each language and
+ upload them to the Developer Console. If you offer a promotional video, you
+ can create localized versions of it and then add a link to the correct
+ localized video for each language you support.
+</p>
+
+<h4>
+ <strong>Plan a beta release in key countries</strong>
+</h4>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <h2>
+ Easy beta testing
+ </h2>
+
+ <p>
+ Google Play now lets you set up groups of alpha and beta testers,
+ anywhere around the world. Check out this powerful feature next time you
+ sign in to the Developer Console.
+ </p>
+ </div>
+</div>
+
+<p>
+ Before launching your apps, it's always valuable to get real-world feedback
+ from users — even more so when you are launching an app in a new
+ language, country, or region. In those cases, it's highly recommended that
+ you distribute a pre-release version of your apps to users across your key
+ markets and provide an easy means for them to provide feedback and report
+ bugs.
+</p>
+
+<p>
+ Google Play can help you set up a beta program for your apps. After you sign
+ in to the Developer Console and upload your APK, you can set up groups of
+ users for alpha testing and beta testing the app. You can start with a small
+ group of alpha testers, then move to a larger group of beta testers.
+</p>
+
+<p>
+ Once users are added, they access your app's store listing and install the
+ app. <strong>Users on alpha or beta versions cannot leave reviews or
+ ratings</strong>, so there is <strong>no risk to your rating</strong> on
+ Google Play, however it does mean you need to setup a mechanism for your
+ testers to provide you with feedback: consider creating a <a href=
+ "http://www.google.com/+/business/">Google+</a> page or <a href=
+ "https://groups.google.com/forum/#!overview">Google Groups</a>.
+</p>
+
+<p>
+ The feedback you receive will help you adjust your UI, translations, and
+ store listing to ensure a great experience for users.
+</p>
+
+<h4>
+ <strong>Plan for international marketing</strong>
+</h4>
+
+<p>
+ For highest visibility across countries, consider an international marketing
+ or advertising campaign. The scope of the campaign will vary based on the
+ budget you can support, but in general it's cost-effective and productive to
+ do regional or country-specific marketing at launch and after.
+</p>
+
+<h4>
+ <strong>Create localized Google Play badges</strong>
+</h4>
+
+<p>
+ If you’re preparing international marketing, make sure to include a <a href=
+ "{@docRoot}distribute/tools/promote/badges.html">localized Google Play
+ badge</a> to tell users you're on Google Play. You can use the badge
+ generator to quickly build localized badges that you can use on websites or
+ marketing materials. High-resolution assets are also available.
+</p>
+
+<h4>
+ <strong>Create Localized Device Art</strong>
+</h4>
+
+<p>
+ If you feature product shots of your apps running on Android devices, make
+ sure that those shots look great and reflect the latest in Android devices.
+ To help you create high-quality marketing materials, use the drag-and-drop
+ <a href="{@docRoot}distribute/tools/promote/device-art.html">Device Art
+ Generator</a> to quickly frame your screenshot on a Nexus device.
+</p>
+
+<h4>
+ <strong>Check your Optimization Tips</strong>
+</h4>
+
+<p>
+ As you prepare for launch, make sure to sign into the Developer Console and
+ check your apps’ Optimization Tips. The Optimization Tips let you know when
+ you’re missing parts of your localized store listing and provide other
+ helpful reminders for a successful localized launch.
+</p>
+
+<h3>
+ Related resources
+</h3>
+
+<div class="resource-widget resource-flow-layout col-13" data-query=
+"collection:distribute/toolsreference/localizationchecklist/preplaunch"
+data-sortorder="-timestamp" data-cardsizes="9x3,9x3,6x3,9x3,9x3,9x3"
+data-maxresults="6">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="support-users">
+ 7. Support international users after launch
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ After you launch your apps internationally, you should be prepared to support
+ users in a variety of languages and time zones. The extent of your
+ international user support depends on your budget, but at a minimum you
+ should watch your ratings, reviews, and download stats carefully after
+ launch.
+</p>
+
+<p>
+ Here are some suggestions:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Use the app stats in the Developer Console to compare your downloads,
+ installs, and uninstalls, and ratings across languages and
+ countries—If your downloads or ratings aren’t keeping up in
+ specific languages or countries, consider options for improving your
+ product or changing your marketing approach.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Check reviews regularly—Google Play translates all user reviews for
+ you, so you can stay in touch with how international users feel about
+ your apps, what features they like and what issues are affecting them. By
+ watching reviews, you can spot technical issues that may affect users in
+ a particular country, then fix and update your apps.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Respond to reviews if possible—It's good to engage with
+ international users in their language or a common language if possible.
+ If not, you can try using translation tools, although results may not be
+ predictable. If your apps gets very popular in a language, consider
+ getting support help from native-language speakers.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Make sure there's a link to any support resources on your website.
+ Consider setting up language-specific user groups, Google+ communities,
+ or other support forums.
+ </p>
+ </li>
+</ul>
+
+<p>
+ By following these practices for localizing your apps, promoting and
+ marketing to international users, and providing ongoing support, you can
+ attract many new users to your apps and maintain their loyalty.
+</p>
+
+<p>
+ Make sure to read the <a href=
+ "{@docRoot}distribute/tools/launch-checklist.html">Launch Checklist</a> to
+ learn more about how to plan, build, and launch your app on Google Play.
+</p>
+<h3 class="clearfloat">Related resources</h3>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/toolsreference/localizationchecklist/supportlaunch"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3,9x3,6x3,9x3,9x3,9x3"
+ data-maxResults="6"></div>
+
diff --git a/docs/html/distribute/tools/open-distribution.jd b/docs/html/distribute/tools/open-distribution.jd
new file mode 100644
index 0000000..f804af2
--- /dev/null
+++ b/docs/html/distribute/tools/open-distribution.jd
@@ -0,0 +1,150 @@
+page.title=Alternative Distribution Options
+page.metaDescription=With Android you can distribute apps to users in any way you want, using any store or distribution approach.
+page.image=/distribute/images/alt-distribution.jpg
+
+@jd:body
+
+<p>
+ As an open platform, Android offers choice. You can distribute your Android
+ apps to users in any way you want, using any distribution approach or
+ combination of approaches that meets your needs. From publishing in an app
+ marketplace to serving your apps from a web site or emailing them directly
+ users, you’re never locked into any particular distribution platform.
+</p>
+
+<p>
+ The process for building and packaging your apps for distribution is the
+ same, regardless of how you distribute them. This saves you time and lets you
+ automate parts of the process as needed. You can read <a href=
+ "{@docRoot}tools/publishing/preparing.html">Preparing for Release</a> for
+ more information.
+</p>
+
+<p>
+ The sections below highlight some of the alternatives for distributing your
+ apps.
+</p>
+
+<div class="headerLine">
+ <h1>
+ Distributing Through an App Marketplace
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Usually, to reach the broadest possible audience, you’d distribute your apps
+ through a marketplace, such as Google Play.
+</p>
+
+<p>
+ Google Play is the premier marketplace for Android apps and is particularly
+ useful if you want to distribute your apps to a large global audience.
+ However, you can distribute your apps through any app marketplace you want or
+ use multiple marketplaces.
+</p>
+
+<p>
+ Unlike other forms of distribution, Google Play allows you to use the In-app
+ Billing service and Licensing service. The <a href=
+ "{@docRoot}google/play/billing/index.html">In-app Billing service</a> makes
+ it easy to sell in-app products like game jewels or app feature upgrades. The
+ <a href="{@docRoot}google/play/licensing/index.html">Licensing service</a>
+ helps prevent unauthorized installation and use of your apps.
+</p>
+
+<div class="headerLine">
+ <h1>
+ Distributing Your Apps by Email
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure" style="width:300px;">
+ <img src="{@docRoot}images/publishing/publishing_via_email.png">
+ <p class="img-caption">
+ <b>Figure 1.</b> Users can simply click <b>Install</b> when you send them
+ an application via email.
+ </p>
+</div>
+
+<p>
+ An easy and quick way to release your apps is to send them to users by email.
+ To do this, you prepare the app for release, attach it to an email, and send
+ it to a user. When the user open your email on their Android-powered device,
+ the Android system recognizes the APK and displays an <strong>Install
+ Now</strong> button in the email message (see Figure 1). Users can install
+ your app by touching the button.
+</p>
+
+<p>
+ <strong>Note:</strong> The <strong>Install Now</strong> button, shown in
+ Figure 1, appears only if the user has configured their device to allow
+ installation from <a href=
+ "{@docRoot}distribute/open.html#unknown-sources">unknown sources</a> and
+ opened your email in the native Gmail app.
+</p>
+
+<p>
+ Distributing apps through email is convenient if you’re sending them to a few
+ trusted users, as it provides few protections from piracy and unauthorized
+ distribution; that is, anyone you send your apps to can simply forward them
+ to others.
+</p>
+
+<div class="headerLine">
+ <h1>
+ Distributing Through a Website
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ If you don’t want to release your apps on a marketplace such as Google Play,
+ you can make them available for download on your own website or server,
+ including on a private or enterprise server. To do this, you first prepare
+ your apps for release in the normal way. Then all you need to do is host the
+ release-ready APK file on your website and provide a download link to users.
+</p>
+
+<p>
+ When users browse to the download link from their Android-powered devices,
+ the file is downloaded and Android system automatically starts installing it
+ on the device. However, the installation process will start automatically
+ only if users have configured their Settings to allow the installation of
+ apps from <a href="{@docRoot}distribute/open.html#unknown-sources">unknown
+ sources</a>.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1>
+ User Opt-In for Apps from Unknown Sources
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure" style="width:325px;">
+ <img src="{@docRoot}images/publishing/publishing_unknown_sources_sm.png">
+ <p class="img-caption">
+ <b>Figure 2.</b> Users must enable the <b>Unknown sources</b> setting
+ before they can install apps not downloaded from Google Play.
+ </p>
+</div>
+
+<p>
+ Android protects users from inadvertent download and install of apps from
+ locations other than Google Play (which is trusted). It blocks such installs
+ until the user opts-in <strong>Unknown sources</strong> in Settings
+ <strong>></strong> Security, shown in Figure 2. Users need to make this
+ configuration change <em>before</em> they download your apps to their
+ devices.
+</p>
+
+<p>
+ Note that some network providers don’t allow users to install applications
+ from unknown sources.
+</p>
diff --git a/docs/html/distribute/googleplay/promote/badge-files.jd b/docs/html/distribute/tools/promote/badge-files.jd
similarity index 96%
rename from docs/html/distribute/googleplay/promote/badge-files.jd
rename to docs/html/distribute/tools/promote/badge-files.jd
index 03ebd01..cce3632 100644
--- a/docs/html/distribute/googleplay/promote/badge-files.jd
+++ b/docs/html/distribute/tools/promote/badge-files.jd
@@ -1,9 +1,10 @@
page.title=Google Play Badge Files
+page.image=/images/gp-badges-set.png
+page.metaDescription=Download hi-res assets for localized Google Play badges.
+page.tags="badge, google play"
+
@jd:body
-
-
-
<style>
table tr td {border:0}
</style>
@@ -278,13 +279,13 @@
</ul>
<p>For more information, see the
-<a href="{@docRoot}distribute/googleplay/promote/brand.html#brand-google_play">Brand
+<a href="{@docRoot}distribute/tools/promote/brand.html#brand-google_play">Brand
Guidelines</a>.
<p>To quickly create a badge that links to your apps on Google Play,
use the <a
-href="{@docRoot}distribute/googleplay/promote/badges.html">Googe Play badge generator</a>.</p>
+href="{@docRoot}distribute/tools/promote/badges.html">Googe Play badge generator</a>.</p>
\ No newline at end of file
diff --git a/docs/html/distribute/googleplay/promote/badges.jd b/docs/html/distribute/tools/promote/badges.jd
similarity index 94%
rename from docs/html/distribute/googleplay/promote/badges.jd
rename to docs/html/distribute/tools/promote/badges.jd
index 9a32921..e91a804 100644
--- a/docs/html/distribute/googleplay/promote/badges.jd
+++ b/docs/html/distribute/tools/promote/badges.jd
@@ -1,19 +1,25 @@
-page.title=Google Play Badges
+page.title=Google Play Badge Generator
+page.image=/images/gp-badges-set.png
+page.metaDescription=Build badges for your app in just a few clicks, or download hi-res badge assets localized for a variety of languages.
+meta.tags="disttools, promoting, deviceart, marketing, googleplay"
+page.tags="badge, google play"
+
@jd:body
-<p itemprop="description">Google Play badges allow you to promote your app with official branding
-in your online ads, promotional materials, or anywhere else you want a link to your app.</p>
+<p itemprop="description">Google Play badges enable you to promote your apps with
+official branding in your online ads, promotional materials, or anywhere you want
+a link to your apps</p>
<p>In the form below,
input your app's package name or publisher name, choose the badge style,
click <em>Build my badge</em>, then paste the HTML into your web content.</p>
<p>If you're creating a promotional web page for your app, you should also use the
-<a href="{@docRoot}distribute/promote/device-art.html">Device Art Generator</a>, which quickly
+<a href="{@docRoot}distribute/tools/promote/device-art.html">Device Art Generator</a>, which quickly
wraps your screenshots in real device artwork.</p>
<p>For guidelines when using the Google Play badge and other brand assets,
-see the <a href="{@docRoot}distribute/googleplay/promote/brand.html#brand-google_play">Brand
+see the <a href="{@docRoot}distribute/tools/promote/brand.html#brand-google_play">Brand
Guidelines</a>.</p>
<style type="text/css">
@@ -60,7 +66,7 @@
var APP_LANGS = ['it','pt-br','pt-pt','nl','ko','ja','fr','es','es-419','en','de'];
// variables for creating 'try it out' demo button
-var imagePath = "https://developer.android.com/images/brand/"
+var imagePath = "{@docRoot}images/brand/"
var linkStart = "<a href=\"https://play.google.com/store/";
var imageStart = "\">\n"
+ " <img alt=\"";
@@ -353,3 +359,4 @@
<p>Try it out:</p>
<div id="button-preview" style="margin-top:1em"></div>
</div>
+
diff --git a/docs/html/distribute/googleplay/promote/brand.jd b/docs/html/distribute/tools/promote/brand.jd
similarity index 92%
rename from docs/html/distribute/googleplay/promote/brand.jd
rename to docs/html/distribute/tools/promote/brand.jd
index 0bda561..2116c0f 100644
--- a/docs/html/distribute/googleplay/promote/brand.jd
+++ b/docs/html/distribute/tools/promote/brand.jd
@@ -1,11 +1,13 @@
page.title=Brand Guidelines
+page.image=/assets/images/resource-card-default-android.jpg
+page.metaDescription=Guidelines and downloads for the Android and Google Play brands.
+page.tags="brand, bugdroid, assets"
+
@jd:body
-
-
<p>We encourage you to use the Android and Google Play brands with your Android app
promotional materials. You can use the icons and other assets on this page
-provided that you follow the guidelines described below.</p>
+provided that you follow the guidelines.</p>
<h2 id="brand-android">Android</h2>
@@ -139,11 +141,11 @@
</div>
<p>The "Get it on Google Play" and "Android App on Google Play" logos are badges that you
- can use on your web site and promotional materials, to point to your products on Google
+ can use on your website and promotional materials, to point to your products on Google
Play.</p>
<ul>
- <li>Do not modify the color, proportions, spacing or any other aspect of the badge image.
+ <li>Don't modify the color, proportions, spacing, or any other aspect of the badge image.
</li>
<li>When used alongside logos for other application marketplaces, the Google Play logo
should be of equal or greater size.</li>
@@ -161,15 +163,15 @@
<p>To quickly create a badge that links to your apps on Google Play,
use the <a
- href="{@docRoot}distribute/googleplay/promote/badges.html">Googe Play badge generator</a>
+ href="{@docRoot}distribute/tools/promote/badges.html">Googe Play badge generator</a>
(provides the badge in over 40 languages).</p>
<p>To create your own size, download an Adobe® Illustrator® (.ai) file for the
- <a href="{@docRoot}distribute/googleplay/promote/badge-files.html">Google Play
+ <a href="{@docRoot}distribute/tools/promote/badge-files.html">Google Play
badge in over 40 languages</a>.</p>
<p>For details on all the ways that you can link to your product details page in Google Play,
- see <a href="{@docRoot}distribute/googleplay/promote/linking.html">Linking to your products</a></p>
+ see <a href="{@docRoot}distribute/tools/promote/linking.html">Linking to your products</a></p>
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/land_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/land_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/land_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/galaxy_nexus/land_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/port_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/port_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/port_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/galaxy_nexus/port_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/galaxy_nexus/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/thumb.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/galaxy_nexus/thumb.png
rename to docs/html/distribute/tools/promote/device-art-resources/galaxy_nexus/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_10/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_10/land_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_10/land_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_10/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_10/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_10/land_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_10/land_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_10/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_10/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_10/land_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_10/land_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_10/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_10/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_10/port_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_10/port_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_10/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_10/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_10/port_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_10/port_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_10/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_10/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_10/port_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_10/port_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_10/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_10/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_10/thumb.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_10/thumb.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_10/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_4/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_4/land_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_4/land_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_4/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_4/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_4/land_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_4/land_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_4/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_4/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_4/land_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_4/land_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_4/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_4/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_4/port_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_4/port_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_4/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_4/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_4/port_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_4/port_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_4/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_4/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_4/port_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_4/port_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_4/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_4/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_4/thumb.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_4/thumb.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_4/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_5/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5/land_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_5/land_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_5/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_5/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5/land_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_5/land_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_5/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_5/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5/land_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_5/land_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_5/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_5/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5/port_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_5/port_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_5/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_5/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5/port_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_5/port_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_5/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_5/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5/port_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_5/port_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_5/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_5/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_5/thumb.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_5/thumb.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_5/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7/land_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7/land_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7/land_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7/land_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7/land_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7/land_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7/port_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7/port_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7/port_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7/port_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7/port_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7/port_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7/thumb.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7/thumb.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7_2012/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7_2012/land_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7_2012/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7_2012/land_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7_2012/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7_2012/land_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7_2012/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7_2012/port_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7_2012/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7_2012/port_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7_2012/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7_2012/port_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_7_2012/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/thumb.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_7_2012/thumb.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_7_2012/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_s/land_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_s/land_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_s/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_s/land_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_s/land_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_s/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_s/land_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_s/land_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_s/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_s/port_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_s/port_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_s/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_s/port_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_s/port_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_s/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_s/port_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_s/port_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_s/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/nexus_s/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/nexus_s/thumb.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/nexus_s/thumb.png
rename to docs/html/distribute/tools/promote/device-art-resources/nexus_s/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/land_back.png b/docs/html/distribute/tools/promote/device-art-resources/xoom/land_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/xoom/land_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/xoom/land_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/land_fore.png b/docs/html/distribute/tools/promote/device-art-resources/xoom/land_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/xoom/land_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/xoom/land_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/land_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/xoom/land_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/xoom/land_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/xoom/land_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/port_back.png b/docs/html/distribute/tools/promote/device-art-resources/xoom/port_back.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/xoom/port_back.png
rename to docs/html/distribute/tools/promote/device-art-resources/xoom/port_back.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/port_fore.png b/docs/html/distribute/tools/promote/device-art-resources/xoom/port_fore.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/xoom/port_fore.png
rename to docs/html/distribute/tools/promote/device-art-resources/xoom/port_fore.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/port_shadow.png b/docs/html/distribute/tools/promote/device-art-resources/xoom/port_shadow.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/xoom/port_shadow.png
rename to docs/html/distribute/tools/promote/device-art-resources/xoom/port_shadow.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art-resources/xoom/thumb.png b/docs/html/distribute/tools/promote/device-art-resources/xoom/thumb.png
similarity index 100%
rename from docs/html/distribute/promote/device-art-resources/xoom/thumb.png
rename to docs/html/distribute/tools/promote/device-art-resources/xoom/thumb.png
Binary files differ
diff --git a/docs/html/distribute/promote/device-art.jd b/docs/html/distribute/tools/promote/device-art.jd
similarity index 97%
rename from docs/html/distribute/promote/device-art.jd
rename to docs/html/distribute/tools/promote/device-art.jd
index b3b414e..b0b5f84 100644
--- a/docs/html/distribute/promote/device-art.jd
+++ b/docs/html/distribute/tools/promote/device-art.jd
@@ -1,9 +1,13 @@
page.title=Device Art Generator
+page.image=/images/device-art-ex-crop.jpg
+page.metaDescription=Drag and drop screenshots of your app into real device artwork, for better looking promotional images and improved visual context.
+meta.tags="disttools, promoting, deviceart, marketing"
+page.tags="device, deviceart, nexus, assets"
+Xnonavpage=true
+
@jd:body
-<p>The device art generator allows you to quickly wrap your app screenshots in real device artwork.
-This provides better visual context for your app screenshots on your web site or in other
-promotional materials.</p>
+<p>The device art generator enables you to quickly wrap app screenshots in real device artwork. This provides better visual context for your app screenshots on your website or in other promotional materials</p>
<p class="note"><strong>Note</strong>: Do <em>not</em> use graphics created here in your 1024x500
feature image or screenshots for your Google Play app listing.</p>
diff --git a/docs/html/distribute/googleplay/promote/linking.jd b/docs/html/distribute/tools/promote/linking.jd
similarity index 95%
rename from docs/html/distribute/googleplay/promote/linking.jd
rename to docs/html/distribute/tools/promote/linking.jd
index 4fdc5db..025480b 100644
--- a/docs/html/distribute/googleplay/promote/linking.jd
+++ b/docs/html/distribute/tools/promote/linking.jd
@@ -1,4 +1,9 @@
page.title=Linking to Your Products
+page.image=/images/gp-linking-ex-crop.png
+meta.tags="promoting"
+page.tags="linking"
+page.metaDescription=Learn how to build links that take users to your published apps in Google Play from browse or search.
+
@jd:body
<div class="sidebox-wrapper">
@@ -25,7 +30,7 @@
<p>If you are linking from an Android app, you can also control whether the link
launches the Play Store application or the browser, which takes the user
-to the Google Play web site.</p>
+to the Google Play website.</p>
<h2 id="OpeningDetails">Linking to a Product Details Page</h2>
@@ -173,7 +178,7 @@
and <code>market://</code> for links in Android apps.</p>
<p>If you want to link to your products from an Android app, create an {@link
-android.content.Intent} that opens an Google Play URL, as shown in the example
+android.content.Intent} that opens a Google Play URL, as shown in the example
below.</p>
<pre>
diff --git a/docs/html/distribute/users/build-buzz.jd b/docs/html/distribute/users/build-buzz.jd
new file mode 100644
index 0000000..b76498e
--- /dev/null
+++ b/docs/html/distribute/users/build-buzz.jd
@@ -0,0 +1,301 @@
+page.title=Build Buzz
+page.image=/distribute/images/build-buzz.jpg
+page.metaDescription=Generate interest and demand for your app. Here are some ways to help users find, download, and install your apps.
+page.tags="users, growth, promotion"
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>
+ Contents
+ </h2>
+
+ <ol>
+ <li>
+ <a href="#link-to-your-apps">Link to Your Apps</a>
+ </li>
+ <li>
+ <a href="#use-the-google-play-badge">Use the Badge</a>
+ </li>
+ <li>
+ <a href="#cross-promote-from-your-other-apps">Cross-Promote Your Apps</a>
+ </li>
+ <li>
+ <a href="#hold-a-contest">Hold a Contest</a>
+ </li>
+ <li>
+ <a href="#leverage-pr">Leverage PR</a>
+ </li>
+ <li>
+ <a href="#use-social-media">Use Social Media</a>
+ </li>
+ <li>
+ <a href="#publish-youtube-videos">Publish YouTube Videos</a>
+ </li>
+ <li>
+ <a href="#advertise">Advertise</a>
+ </li>
+ <li>
+ <a href="#maximize-your-marketing-spend">Maximize Your Marketing
+ spend</a>
+ </li>
+ <li><a href="#related-resources">Related Resources</a></li>
+ </ol>
+ </div>
+</div>
+
+<div style="float:right;border 2px solid #ddd;">
+ <img src="{@docRoot}distribute/images/build-buzz.jpg" style=
+ "width:240px;margin:0 0 1.5em 1em;">
+</div>
+
+<p>
+ With more apps published each week in Google Play, building buzz
+ around your own apps helps them get noticed and makes it easier for
+ users to find and download them.
+</p>
+
+<p>
+ Building buzz doesn’t have a single formula. The tools and techniques
+ described here have worked for other developers, but finding the right mix
+ will depend on your apps, your audience, and your competition. And don’t be
+ afraid to try something different or quirky, taking a risk could pay big
+ dividends.
+</p>
+
+<div class="headerLine">
+ <h1 id="link-to-your-apps">
+ Link to Your Apps in Google Play
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ After publishing your apps, you can take Android users directly to your
+ app/games detail page on Google Play by <a href=
+ "{@docRoot}distribute/tools/promote/linking.html">providing links</a> in your
+ social network posts, ad campaigns, app reviews and articles, your website,
+ and more.
+</p>
+
+<p>
+ You can also link to:
+</p>
+
+<ul>
+ <li>A <a href=
+ "{@docRoot}distribute/tools/promote/linking.html#OpeningPublisher">list</a>
+ of all of your apps
+ </li>
+
+ <li>A Google Play <a href=
+ "{@docRoot}distribute/tools/promote/linking.html#PerformingSearch">search
+ result</a>
+ </li>
+
+ <li>A <a href=
+ "{@docRoot}distribute/tools/promote/linking.html#OpeningCollection">collection</a>
+ on Google Play
+ </li>
+</ul>
+
+<div class="headerLine clearfloat">
+ <h1 id="use-the-google-play-badge">
+ Use the Google Play Badge
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure" style="margin:0 3em;">
+ <img src="{@docRoot}images/gp-build-buzz-uplift-1.png">
+</div>
+
+<p>
+ <a href="{@docRoot}distribute/tools/promote/badges.html">Google Play
+ badges</a> are an especially great way let Android users know that your apps
+ are available and link them directly to your Google Play page. Users are more
+ likely to download and trust your apps and games when the Google Play badge
+ is used.
+</p>
+
+<p>Badge your
+ websites, collateral, and ad campaigns. With the badge generator, they're
+ also easy to make and available in multiple languages.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="cross-promote-from-your-other-apps">
+ Cross-Promote from Your Other Apps
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure-right">
+ <img src="{@docRoot}images/gp-buzz-1.jpg">
+ <p class="img-caption">
+ Cross-promoting related apps.
+ </p>
+</div>
+
+<p>
+ Cross promoting, or house ads, is a great cost effective way to get users to
+ try out new titles. Be sure that your house ad is unobtrusive and presented
+ at a time convenient for users to leave your apps and try out your new title.
+ Also, be sure to include logic that allows users to dismiss the ad and
+ control if they will be asked again later.
+</p>
+
+<p>
+ Consider using free AdMob <a href=
+ "https://support.google.com/admob/v2/answer/3210452?hl=en#subid=us-en-et-dac">
+ house ads</a> within your apps to create awareness and promote your entire
+ portfolio of apps. When launching new apps, an easy way to quickly attract
+ users is to promote directly to your existing customers.
+</p>
+
+<div class="headerLine">
+ <h1 id="hold-a-contest">
+ Hold a Contest
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Contests can be a great way to engage your users. If you have a game, hold a
+ tournament and promote it through your marketing channels. Use Google Play
+ Games APIs for leaderboards and achievements to stimulate competition. Some
+ app developers have provided prizes for creative uses of an app or social
+ engagement. For example, a photo app developer can hold a photo contest.
+</p>
+
+<p>
+ But be sure you’re complying with the appropriate legal requirements in your
+ country and provide a clear set of terms and conditions, accessible online.
+ Don’t let a lack of attention to detail spoil a great marketing opportunity.
+</p>
+
+<div class="headerLine">
+ <h1 id="leverage-pr">
+ Leverage PR
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Public Relations outreach can be a valuable marketing initiative. Many
+ developers use PR to announce new features in their apps or games, which, in
+ turn, builds demand for the updated release when it comes out. You can also
+ provide early copies of your app or game for the press to review, and publish
+ their reviews when the app or game launches.
+</p>
+
+<div class="headerLine">
+ <h1 id="use-social-media">
+ Use Social Media
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Social media is your opportunity to build promotion for your apps. Start with
+ your own channels: update users on your plans before launch, announce your
+ launch, and talk about progress after launch (downloads, new features, and
+ alike.) Then expand by encouraging your users to forward and share your
+ posts.
+</p>
+
+<p>
+ Take advantage of bloggers. Look for bloggers that cover Android and learn
+ what interest them. Remember to look locally as well as globally, gaining a
+ local following can be a great springboard to global success. When you’ve
+ selected a target group of bloggers focus on them by sending details of your
+ apps and free versions if the apps are priced. Follow up and ask them to
+ review your apps. A review on the right blog is a great promotion.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="publish-youtube-videos">
+ Publish YouTube Videos
+ </h1>
+
+ <hr>
+</div>
+
+<div class="center-img" style="padding-top:1em;">
+ <img src="{@docRoot}images/gp-build-buzz-yt.png">
+</div>
+
+<p>
+ YouTube videos are now an essential part of building buzz. Use them to
+ showcase your apps’ feature. Remember to do this before, at, and after
+ launch. Taking users on a journey through the development of your apps can be
+ a great way to drive downloads at launch.
+</p>
+
+<div class="headerLine">
+ <h1 id="advertise">
+ Advertise
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/google/gps-ads.png" style="width:340px">
+</div>
+
+<p>
+ Advertise your app in other apps to increase downloads. There are many tools
+ to help you target the right users for your apps and games. You can use
+ <a href=
+ "http://www.google.com/ads/admob/promote.html#subid=us-en-et-dac">AdMob</a>
+ to drive installs of your app at a target cost-per-acquisition (CPA). You
+ also get free house ads for your own app. <a href=
+ "https://apps.admob.com/admob/signup?subid=us-en-et-dac&_adc=ww-ww-et-admob2&hl=en">
+ Sign up for an AdMob account</a> to get started.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="maximize-your-marketing-spend">
+ Maximize your Marketing Spend
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure" style="margin: 0 3em;">
+ <img src="{@docRoot}images/gp-build-buzz-uplift-2.png" style="">
+</div>
+
+<p>
+ Maximize buzz and leverage the halo effect of cross-platform, multimedia,
+ simultaneous launches.
+</p>
+
+<p><strong>Developers who launch on multiple platforms at
+ the same time have received a 10-20% uplift.</strong>If you’re spending money
+ to advertise your launch or spending effort on press, shipping on multiple
+ platforms simultaneously helps you maximize your return on investment.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+
+ <hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/users/buildbuzz"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
+
diff --git a/docs/html/distribute/users/build-community.jd b/docs/html/distribute/users/build-community.jd
new file mode 100644
index 0000000..1623939
--- /dev/null
+++ b/docs/html/distribute/users/build-community.jd
@@ -0,0 +1,202 @@
+page.title=Build Community
+page.metaDescription=Build a loyal following with great support and communication.
+page.tags="users, growth, community"
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>
+ Contents
+ </h2>
+
+ <ol>
+ <li>
+ <a href="#starting-your-community">Starting Your Community</a>
+ </li>
+
+ <li>
+ <a href="#tools-to-build-your-community">Tools to Build Your Community</a>
+ </li>
+
+ <li>
+ <a href="#managing-your-community">Managing Your Community</a>
+ </li>
+ <li>
+ <a href="#related-resources">Related Resources</a>
+ </li>
+ </ol>
+ </div>
+</div>
+
+<p>
+ Fans of your apps love to help others, turn newer users into fans, and bring
+ you more users as they talk about your app. Building a community can help you
+ tap into those influencers to help you improve your app and provide support
+ to others.
+</p>
+
+<p>
+ Building your own community can help you bring content that will delight
+ users and get them talking about your apps to friends, family and others in
+ their social network.
+</p>
+
+<div class="headerLine">
+ <h1 id="starting-your-community">
+ Starting Your Community
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ In conjunction with your apps’ design and development, you should start
+ defining and building your community infrastructure. There’s no one approach
+ that fits all, and the approach for each of your apps may need to be a little
+ different. You should start by thinking about your potential users and asking
+ questions such as:
+</p>
+
+<ul>
+ <li>
+ <p>
+ How will my users prefer to interact? Game users may prefer a modern feed
+ style community, users of a financial management app a more traditional
+ discussion forum.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Should I have a community for all my apps or should each app have its
+ own? Will users be turned off if the community isn’t just about the app
+ that interests them or can I make it a way to turn them onto my other
+ apps?
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Will different countries or territories, or speakers of particular
+ languages need separate forums? How will I handle feedback in languages I
+ don’t know?
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Do I need any additional policies beyond those governing the tool used to
+ host the community?
+ </p>
+ </li>
+</ul>
+
+<p>
+ Any way you do it, starting your community early helps you build momentum as
+ you turn happy users into influencers.
+</p>
+
+<p>
+ Consider inviting your existing users through a rich notification or an
+ opt-in on your website. Don’t overlook inviting your critics too. If you have
+ been able to address their earlier issues you may convert them into
+ supporters — it’s not unknown for your harshest critics to become your most
+ enthusiastic fans if you address their concerns.
+</p>
+
+<p>
+ When you use the <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">beta-testing
+ feature</a> in Google Play, you’ll create a testers group through 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> to
+ define who gets your software for testing. Consider managing these groups as
+ communities in their own right.
+</p>
+
+<div class="headerLine">
+ <h1 id="tools-to-build-your-community">
+ Tools to Build Your Community
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ There are many tools you can use to build your community. Before you launch,
+ inviting <a href="http://www.google.com/+/business/">Google+</a> users or
+ <a href="https://support.google.com/groups/answer/46601?hl=en">Google
+ Groups</a> to <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">beta-test</a>
+ your app can help you kickstart your community while you listen to and
+ respond to your user feedback.
+</p>
+
+<p>
+ Once you’ve launched, your Google+ or other social media presence can help
+ you continue to gather feedback, answer questions, and get input on updates.
+ Use social media to get the conversation started. Post updates to your
+ followers, announce new apps, and host contests. Ask followers to re-post so
+ that they bring new users into the conversation. Fans love to profess their
+ passion for great apps, so be sure to give them plenty of reason to do so.
+</p>
+
+<p>
+ Forums like <a href=
+ "https://support.google.com/groups/answer/46601?hl=en">Google Groups</a> are
+ particularly well suited to help you and your users provide support to
+ others. By helping out your community, you’re building your fan base who will
+ share their experiences with other prospective customers.
+</p>
+
+<p>
+ Respond to comments and reviews on both your product details page on Google
+ Play and <a href="http://youtube.com">YouTube</a> pages. Prospective
+ customers are influenced by reviews and comments, so be sure to manage your
+ brand in every channel you can.
+</p>
+
+<div class="headerLine">
+ <h1 id="managing-your-community">
+ Managing Your Community
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-community-0.png">
+</div>
+
+<p>
+ Engaged users want you to succeed. Let them know you’re listening! Responding
+ to posts, comments, and other social media mentions improves your ratings by
+ letting users know you care.
+</p>
+
+<p>
+ Update the product based on user feedback and announce new releases. Users
+ often change their original star ratings after feeling heard, inspiring more
+ users to install your apps.
+</p>
+
+<p>
+ There are many ways to make your community feel special. Consider polls to
+ let users influence product updates. Use competitions to inspire and reward
+ your community. Giving a special <em>member of the week</em> badge is an easy
+ way to recognize those that help others. Or get users involved in testing new
+ versions or new apps to make them feel special.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="related-resources">
+ Related Resources
+ </h1>
+ <hr>
+</div>
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/users/buildcommunity"
+ data-sortOrder="-timestamp"
+ data-cardSizes="9x3"
+ data-maxResults="6"></div>
\ No newline at end of file
diff --git a/docs/html/distribute/users/expand-to-new-markets.jd b/docs/html/distribute/users/expand-to-new-markets.jd
new file mode 100644
index 0000000..cc94a92
--- /dev/null
+++ b/docs/html/distribute/users/expand-to-new-markets.jd
@@ -0,0 +1,325 @@
+page.title=Expand Into New Markets
+page.metaDescription=Tap fast-growing markets in Japan, Korea, India, Brazil, and many other countries around the world.
+page.image=/distribute/images/expand-into-new-markets.jpg
+page.tags="users, growth, global"
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>
+ Contents
+ </h2>
+
+ <ol>
+ <li>
+ <a href="#localize-your-product">Localize Your Product</a>
+ </li>
+
+ <li>
+ <a href="#testing-and-support">Testing and Support</a>
+ </li>
+
+ <li>
+ <a href="#localize-your-google-play-listing">Localize Your Store
+ Listing</a>
+ </li>
+
+ <li>
+ <a href="#marketing">Marketing</a>
+ </li>
+
+ <li>
+ <a href="#related-resources">Related Resources</a>
+ </li>
+ </ol>
+ </div>
+</div>
+<p>
+ Android and Google Play give you a worldwide audience for your apps, with an
+ addressable user base that's growing very rapidly in countries such as Japan,
+ Korea, India, and Brazil. You can sell your app in more than 130 countries.
+</p>
+
+<p>
+ To <strong>maximize your app's distribution potential and earn high
+ ratings</strong> from users around the world, we encourage you to localize
+ your app. Once you’ve built a solid foundation in your home market, take
+ advantage of Android’s powerful growth around the world and expand your app
+ to new markets.
+</p>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <p>
+ <strong>Tip:</strong> Localization is more than translation. Plan product
+ features, launch, and marketing for key markets.
+ </p>
+ </div>
+</div>
+
+<p class="caution" style="font-size:15.5px;">
+</p>
+
+<p>
+ Localization involves a variety of tasks throughout your app development
+ cycle, and advance planning is essential. But <strong>localization is more
+ than just translating your UI</strong>. To be successful, you also need to
+ localize your Google Play listing and ensure your marketing is suitable for
+ the demographic you’re addressing.
+</p>
+
+<p>
+ To reduce development and maintenance effort, use a single APK for all
+ regions. A single APK also allows you to more easily track metrics by
+ country. Google Play takes care of providing the appropriate localized
+ version of your app based on user location.
+</p>
+
+<div class="headerLine">
+ <h1 id="localize-your-product">
+ Localize Your Product
+ </h1>
+
+ <hr>
+</div>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <p>
+ <strong>Tip:</strong> Use a professional translation service located in
+ your target country to ensure high quality and good user ratings.
+ </p>
+ </div>
+</div>
+
+<p>
+ The first step is to identify your target markets and associated languages,
+ then focus your product localization on those countries. Some of the tasks
+ include translating your UI strings and localizing dates and times, layouts,
+ text direction, and finally your Google Play store listing. To learn more
+ about how to localize your app, visit our <a href=
+ "{@docRoot}distribute/tools/localization-checklist.html">Localization
+ Checklist</a>.
+</p>
+<!-- <p>[Need graphic highlighting that it’s all about getting high ratings]</p> -->
+
+<p>
+ Work with a professional translator, preferably located in the country you’re
+ localizing your apps for, to ensure high quality results. Machine
+ translations may affect your apps’ ratings, as they’re less reliable than
+ high-quality professional translations. For example, a professional service
+ will know to consider the vocabulary expansion, left-to-right and
+ right-to-left support, and other factors in each language. Learn more about
+ UI considerations and other factors in the <a href=
+ "{@docRoot}distribute/tools/localization-checklist.html#design">Design for
+ Localization</a> section of the Localization Checklist.
+</p>
+
+<p>
+ <strong>Google Play App Translation Service</strong> can help you quickly
+ find and purchase translations of your apps. In the <a href=
+ "https://play.google.com/apps/publish/">Developer Console</a>, you can browse
+ a list of third-party vendors who are pre-qualified by Google to offer
+ high-quality professional translations at competitive prices.
+</p>
+
+<div style="float:left; width:48%; padding:8px;">
+ <img src="{@docRoot}images/gp-listing-3.jpg">
+</div>
+
+<div style="width:48%; padding:8px; float:left">
+ <img src="{@docRoot}images/gp-expand-2.jpg">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="testing-and-support">
+ Testing and Support
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Before you launch, be sure to use our <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">beta
+ testing</a> and <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#staged-rollouts">staged
+ rollouts</a> to identify and address issues before users can rate your app.
+ Feedback can be gathered using 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>. Watch
+ user sentiment and respond if necessary as you add countries.
+</p>
+
+<p>
+ After you launch, <strong>offer support hours in the local time zone in the
+ local language</strong>. When possible, having a local presence can
+ dramatically increase your daily active users and revenue. For example,
+ <a href="">this developer</a> was able to <strong>increase their revenue over
+ 500% after creating a local presence</strong> in Asia and taking great care
+ of their users.
+</p>
+
+<div class="headerLine">
+ <h1 id="localize-your-google-play-listing">
+ Localize Your Google Play Store Listing
+ </h1>
+
+ <hr>
+</div>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <p>
+ <strong>Tip:</strong> You can select regions, set regional pricing, and
+ localize your listing while maintaining only one APK.
+ </p>
+ </div>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-buyer-currency.png" class="border-img">
+</div>
+
+<p>
+ Within your Google Play listing, you’ll need to set the regions in which your
+ apps will be available, set pricing for each, and customize your Google Play
+ listing to ensure it speaks to local audiences. You can change your country
+ and carrier targeting at any time just by saving changes in the Google Play
+ Developer Console.
+</p>
+
+<h3>
+ Region selection
+</h3>
+
+<p>
+ In the Developer Console, you can set the regions you make your app available
+ to, pricing in local currencies, and all Google Play listing marketing. You
+ can specify which countries and territories you want to distribute to, and
+ even which carriers (for some countries).
+</p>
+
+<h3>
+ Pricing
+</h3>
+
+<p>
+ When you start to address new markets you have several options for setting
+ the prices of your products: apps, in-app products, and subscriptions. You
+ can set a default price for each product and allow Google Play to adjust this
+ each month for changes in exchange rates, or manually set prices.
+</p>
+
+<p>
+ There are several reasons why it might be beneficial to set prices manually,
+ such as:
+</p>
+
+<ul>
+ <li>
+ <p>
+ Cost of living differences. To better target developing markets you may
+ consider offering your apps at a lower price to make them more affordable
+ in relation to local incomes.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Price perception. Users in some countries respond well to prices set to
+ x.99, while others prefer x.00 pricing.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Numerology. You may wish to avoid using certain numbers that are
+ considered unlucky, such as 13 or 4.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Competition. Your app may have local competition in some markets that you
+ need to account for.
+ </p>
+ </li>
+
+ <li>
+ <p>
+ Local trends and interests. Your apps may be able to bear a higher price
+ in some markets. For example, the interest in various sports varies
+ greatly from country to country.
+ </p>
+ </li>
+</ul>
+
+<p>
+ You may also want to run short-term promotions and discounts in specific
+ countries.
+</p>
+
+<p>
+ The <a href=
+ "{@docRoot}distribute/googleplay/developer-console.html#selling-pricing-your-products">
+ Pricing & Distribution</a> section in the <a href=
+ "https://play.google.com/apps/publish/">Developer Console</a> is where you
+ set and manage regional distribution and local prices.
+</p>
+
+<h3>
+ Copy and creative
+</h3>
+
+<p>
+ To market to users around the world, <strong>localize your store listing,
+ including app details and description, promotional graphics, screenshots, and
+ more.</strong> Graphical assets and copy can be uploaded for each country you
+ are targeting.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-expand-4.jpg" class="border-img">
+</div>
+
+<div>
+ <img src="{@docRoot}images/gp-expand-5.jpg" class="border-img">
+</div>
+
+<p>
+ Learn more about how to localize your <a href=
+ "{@docRoot}distribute/tools/launch-checklist.html#prepare-graphics">store
+ listing</a>.
+</p>
+
+<div class="headerLine">
+ <h1 id="marketing">
+ Marketing
+ </h1>
+
+ <hr>
+</div>
+
+<div class="figure">
+ <img src="{@docRoot}images/gp-badge-jp.png">
+</div>
+
+<p>
+ Just like your Google Play listing, all other marketing should be localized
+ to speak to the local audience. This includes images, colors, icons, and
+ audio. To maximize effectiveness, <strong>run promotions, contests, and
+ announcements at local time</strong>. You can build a localized <a href=
+ "{@docRoot}distribute/tools/promote/badges.html">Google Play badge</a> and
+ <a href="{@docRoot}distribute/tools/promote/device-art.html">device art</a>
+ for each language you support.
+</p>
+
+<div class="headerLine clearfloat"><h1 id="related-resources">Related Resources</h1><hr></div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/getusers/expandnewmarkets"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3,6x3,6x3,6x3,6x3,6x3"
+ data-maxResults="6"></div>
diff --git a/docs/html/distribute/users/index.jd b/docs/html/distribute/users/index.jd
new file mode 100644
index 0000000..77ef609
--- /dev/null
+++ b/docs/html/distribute/users/index.jd
@@ -0,0 +1,30 @@
+page.title=Get Users
+section.landing=true
+nonavpage=true
+
+@jd:body
+
+<p>
+ You’ve published your app, now how do you acquire users? Every app and game
+ is different, but there are some common themes from successful Google Play
+ developers. These best practices are critical to your app or game’s success.
+</p>
+
+<div class="dynamic-grid">
+
+<div class="resource-widget resource-flow-layout landing col-16"
+ data-query="collection:distribute/users"
+ data-cardSizes="6x6, 6x6, 6x6, 9x6, 9x6, 6x6, 6x6, 6x6"
+ data-maxResults="8">
+</div>
+
+<h3>Related resources</h3>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="type:youtube+tag:users,tag:global,type:blog+tag:users"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="6">
+ </div>
+
+</div>
diff --git a/docs/html/distribute/users/know-your-user.jd b/docs/html/distribute/users/know-your-user.jd
new file mode 100644
index 0000000..fb91a05
--- /dev/null
+++ b/docs/html/distribute/users/know-your-user.jd
@@ -0,0 +1,153 @@
+page.title=Know Your User
+page.metaDescription=It\'s essential to understand your users and listen to their input. Here are some ideas.
+page.image=/distribute/images/know-your-user.jpg
+page.tags="users, growth, global"
+
+@jd:body
+
+<div style="width:100%">
+ <img src="{@docRoot}images/gp-androidify.png">
+</div>
+
+<p>
+ A key part of growing your apps' installed base is knowing more about your
+ users — how they discover your app, what devices they use, what they do
+ when they use your app, and how often they return to it.
+</p>
+
+<div class="headerLine">
+ <h1 id="read-ratings-comments">
+ Read Ratings Comments
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ The most obvious way to get to know your users is by reading review comments
+ for your apps on Google Play. While the details provided in reviews will vary
+ greatly, in addition to telling you about what users like and dislike in your
+ apps, they can also provide insight into your users’ motivations for using
+ your apps. And remember that users can update their ratings and comments
+ about an app when you fix issues.
+</p>
+
+<p>
+ Learn more about <a href=
+ "{@docRoot}distribute/essentials/optimizing-your-app.html#listen-to-your-users">
+ how to listen to users</a>.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-your-user-0.jpg" class="border-img">
+ <p class="img-caption">
+ User ratings
+ </p>
+</div>
+
+<div class="headerLine">
+ <h1 id="start-community">
+ Start a Community
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Another great way to get to know your users, learn who they are, and what
+ they are looking for, is to start a community. There are many support tools
+ you can use, from forums such as <a href="http://groups.google.com/">Google
+ Groups</a> to comprehensive customer support products. You can integrate some
+ directly into your apps. And once you deploy a support tool, make sure to
+ fill in the support link in your Google Play product details page.
+</p>
+
+<p>
+ <a href="{@docRoot}distribute/users/build-community.html">Learn more about
+ starting and managing a community</a>.
+</p>
+
+<div class="headerLine">
+ <h1 id="create-survey">
+ Create a Survey
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Consider using a survey to gather information about your users and their
+ views on your apps. Compared to app reviews, a questionnaire enables you to
+ seek specific information. However use with care, as the creation of suitable
+ question is something of an art. Also consider providing an appropriate
+ incentive for completing the questionnaire, as too few responses can be worse
+ than no responses at all.
+</p>
+
+<p>
+ You can create a questionnaire with <a href=
+ "http://www.google.com/drive/apps.html#forms">Google Drive Forms</a> or use
+ one of the various third-party survey and questionnaire hosting tools
+ available, such as SurveyMonkey.
+</p>
+
+<div class="headerLine">
+ <h1 id="add-analytics">
+ Add Analytics to your Apps
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Analytics data can tell you a lot about your users, by exposing their
+ behaviour in your apps. You can use <a href=
+ "http://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html">
+ Google Analytics by linking it with your Google Play account</a> or use a
+ third-party analytics tool. Analytics tools can help you gather information
+ on app installs, feature popularity, unused features, and more. You can see
+ any usage pattern differences by region, device, time day and other
+ variables.
+</p>
+
+<p>
+ Read more about <a href=
+ "{@docRoot}distribute/essentials/optimizing-your-app.html#measuring-analyzing-responding">
+ measuring behavior</a>.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-dc-stats.png" class="border-img">
+</div>
+
+<div class="headerLine">
+ <h1 id="use-google">
+ Use Google+
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ <a href="https://plus.google.com/">Google+</a> is a great way to gather user
+ feedback, announce surveys and contests, and see how users react to new
+ features and functionality. Many developers manage a Google+ page to
+ communicate with their users. It’s also a good way to get feedback from your
+ beta-testing. Some developers have a page for each of their apps. This is
+ especially true for game developers, who post challenges and tournaments.
+ Google+ can also be used to post game walkthroughs and tips.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-your-user-2.jpg">
+</div>
+
+<div class="headerLine clearfloat">
+<h1 id="related-resources">Related Resources</h1><hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/users/knowyouruser"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="6"></div>
\ No newline at end of file
diff --git a/docs/html/distribute/users/users_toc.cs b/docs/html/distribute/users/users_toc.cs
new file mode 100644
index 0000000..a2437a6
--- /dev/null
+++ b/docs/html/distribute/users/users_toc.cs
@@ -0,0 +1,40 @@
+<ul id="nav">
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/know-your-user.html">
+ <span class="en">Know Your User</span></a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/your-listing.html">
+ <span class="en">Create a Great Listing</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/build-buzz.html">
+ <span class="en">Build Buzz</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/build-community.html">
+ <span class="en">Build Community</span>
+ </a>
+ </div>
+ </li>
+ <li class="nav-section">
+ <div class="nav-section empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/users/expand-to-new-markets.html">
+ <span class="en">Expand to New Markets</span>
+ </a>
+ </div>
+ </li>
+
+</ul>
+
+
+<script type="text/javascript">
+<!--
+ buildToggleLists();
+ changeNavLang(getLangPref());
+//-->
+</script>
diff --git a/docs/html/distribute/users/your-listing.jd b/docs/html/distribute/users/your-listing.jd
new file mode 100644
index 0000000..cc72fff
--- /dev/null
+++ b/docs/html/distribute/users/your-listing.jd
@@ -0,0 +1,191 @@
+page.title=Create a Great Listing
+page.metaDescription=Make your listing page compelling and integrate it into your marketing campaigns.
+page.image=/distribute/images/create-listing.jpg
+page.tags="listing, google play, users, growth"
+
+@jd:body
+
+<p>
+ Your Google Play app listings are a vital part of your app marketing, from
+ organic traffic or visits you generate through marketing and promotion.
+ Potential users will quickly move on from a poor listing, so the importance
+ of having a great one can't be ignored.
+</p>
+
+<div class="headerLine">
+ <h1 id="graphics-imagery">
+ Graphics & Imagery Tips
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Be sure to supply a variety of high-quality graphic assets to showcase your
+ apps or brand on Google Play search results and your product details pages.
+ These graphic assets are key parts of successful product details pages that
+ attracts and engages users, so consider having a professional produce them
+ for you.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-listing-0.jpg" class="border-img">
+</div>
+
+<h3>
+ Icons
+</h3>
+
+<p>
+ For most users, the <a href=
+ "{@docRoot}design/style/iconography.html#launcher">launcher icon</a>
+ (sometimes referred to as the app icon) is the first impression of your app.
+ As higher density screens on both phones and tablets gain popularity, it's
+ important to make sure your launcher icon is crisp and high quality. To do
+ this, make sure you’re including XHDPI (320dpi) and XXHDPI (480dpi) versions
+ of the icon in your apps. Learn more about <a href=
+ "http://android-developers.blogspot.com/2013/07/making-beautiful-android-app-icons.html">
+ Making Beautiful Android App Icons</a> from the <a href=
+ "http://android-developers.blogspot.com/">Android Developers blog</a>.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-listing-1.png" class="border-img">
+</div>
+
+<h3>
+ Screenshots and videos
+</h3>
+
+<p>
+ Be sure to showcase how your apps look, their important features, and what
+ makes them different. Showcase any game play, characters, and their
+ personalities. Some developers build special screens to highlight what’s
+ happening in the screenshot, and extra video footage to highlight the brand.
+ Get more details <a href=
+ "{@docRoot}distribute/tools/launch-checklist.html#prepare-graphics">here</a>.
+</p>
+
+<div>
+ <img src="{@docRoot}images/gp-listing-2.jpg">
+</div>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <p>
+ <strong>Tip:</strong> If your app runs on both phones and tablets, be
+ sure to include screenshots from both devices, including both horizontal
+ and portrait aspect ratios.
+ </p>
+ </div>
+</div>
+
+<h3>
+ Featured image
+</h3>
+
+<p>
+ Choosing the right featured image is important, it needs to convey as much
+ about the features of your apps and what makes them special as possible,
+ without being cluttered and confusing. Check out the <a href=
+ "http://android-developers.blogspot.com/">Android Developers blog</a> post
+ for more <a href=
+ "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html">
+ Featured-Image Guidelines</a>.
+</p>
+
+<div class="headerLine clearfloat">
+ <h1 id="localization-tips">
+ Localization Tips
+ </h1>
+
+ <hr>
+</div>
+
+<div class="sidebox-wrapper" style="float:right;">
+ <div class="sidebox">
+ <p>
+ <strong>Tip:</strong> Translate any embedded text, use different imagery
+ or presentation, and match any marketing promotion to the needs of users
+ in other markets. For example: Some eastern markets respond to price
+ points that end in .00 or .05 more than .99.
+ </p>
+ </div>
+</div>
+
+<p>
+ Many developers start in their country of strength, then expand into new
+ markets. To help you market your apps more effectively to a global audience,
+ create <a href=
+ "http://android-developers.blogspot.com/2012/12/localize-your-promotional-graphics-on.html">
+ localized versions of your promotional graphics, screenshots, and videos</a>.
+ When a user visits your product display pages, Google Play will show the
+ localized assets that you’ve provided for that country. Find out more about
+ <a href="{@docRoot}distribute/users/expand-to-new-markets.html">capitalize on
+ the growing international audience</a>.
+</p>
+
+<div style="float:left;">
+ <img src="{@docRoot}images/gp-listing-3.jpg">
+</div>
+
+<div class="headerLine clearfloat">
+ <h1 id="keyword-tips">
+ Keyword Tips
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ Think carefully about the keywords you use for your apps. Think about words
+ that represent the core feature of your apps. Also consider other words that
+ the user might use to search for your app. For example, if you have a Live
+ Wallpaper app, you may want to include the term ‘background’. This way, users
+ who don’t yet know the terminology can find your app.
+</p>
+
+<div class="headerLine">
+ <h1 id="app-indexing">
+ Sign Up for App Indexing
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ App Indexing provides deep links from Google searches to your apps. Get more
+ details and a link to the sign up page <a href=
+ "https://developers.google.com/app-indexing/">here</a>.
+</p>
+
+<div class="center-img">
+ <img src="{@docRoot}images/gp-listing-4.jpg">
+</div>
+
+<div class="headerLine">
+ <h1 id="education-app">
+ Education App Tips
+ </h1>
+
+ <hr>
+</div>
+
+<p>
+ If you’ve an educational app for the K-12 market, include it in Google Play
+ for Education. Google Play for Education can help your innovative educational
+ apps gain visibility with the right audiences, without having to knock on
+ school doors. Learn more about <a href=
+ "{@docRoot}distribute/googleplay/edu/about.html">Google Play for
+ Education</a>.
+</p>
+
+<div class="headerLine">
+<h1 id="related-resources">Related Resources</h1><hr>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+ data-query="collection:distribute/users/createagreatlisting"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x3"
+ data-maxResults="6"></div>
\ No newline at end of file
diff --git a/docs/html/google/play/billing/billing_subscriptions.jd b/docs/html/google/play/billing/billing_subscriptions.jd
index aa25092..d0e6dc5 100644
--- a/docs/html/google/play/billing/billing_subscriptions.jd
+++ b/docs/html/google/play/billing/billing_subscriptions.jd
@@ -1,6 +1,10 @@
-page.title=Subscriptions
+page.title=Google Play In-App Subscriptions
parent.title=In-app Billing
parent.link=index.html
+page.metaDescription=Subscriptions let you sell content or features in your app with automated, recurring billing.
+page.image=/images/play_dev.jpg
+page.tags="inapp, iap, billing"
+meta.tags="monetization, inappbilling, subscriptions"
@jd:body
<div id="qv-wrapper">
diff --git a/docs/html/google/play/billing/billing_testing.jd b/docs/html/google/play/billing/billing_testing.jd
index 9d1964a..df6c657 100644
--- a/docs/html/google/play/billing/billing_testing.jd
+++ b/docs/html/google/play/billing/billing_testing.jd
@@ -367,6 +367,6 @@
publish your application on Google Play. You can follow the normal steps for <a
href="{@docRoot}tools/publishing/preparing.html">preparing</a>, <a
href="{@docRoot}tools/publishing/app-signing.html">signing</a>, and <a
-href="{@docRoot}distribute/googleplay/publish/preparing.html">publishing on Google Play</a>.
+href="{@docRoot}distribute/tools/launch-checklist.html">publishing on Google Play</a>.
</p>
diff --git a/docs/html/google/play/billing/index.jd b/docs/html/google/play/billing/index.jd
index 481a79c..dce20cb 100644
--- a/docs/html/google/play/billing/index.jd
+++ b/docs/html/google/play/billing/index.jd
@@ -1,4 +1,8 @@
page.title=Google Play In-app Billing
+page.metaDescription=In-app Billing lets you sell digital content as one-time purchases or subscriptions.
+page.image=/images/play_dev.jpg
+meta.tags="monetizing, inappbilling, subscriptions"
+page.tags="inapp, iap, subscriptions"
@jd:body
<p>In-app Billing is a Google Play service that lets you sell digital content from inside
@@ -40,8 +44,6 @@
<p>To get started, read the documents below or take the <a href="{@docRoot}training/in-app-billing/index.html">Selling
In-app Products</a> training class.</p>
-</div>
-</div>
<dl>
<dt><strong><a href="{@docRoot}google/play/billing/billing_overview.html">Overview</a></strong></dt>
diff --git a/docs/html/google/play/billing/v2/billing_subscriptions.jd b/docs/html/google/play/billing/v2/billing_subscriptions.jd
index 9c86e20..f8051a9 100644
--- a/docs/html/google/play/billing/v2/billing_subscriptions.jd
+++ b/docs/html/google/play/billing/v2/billing_subscriptions.jd
@@ -382,7 +382,7 @@
startActivity(intent);</pre>
<p>For more information, see
- <a href="{@docRoot}distribute/googleplay/promote/linking.html">Linking to Your Products</a>.</p>
+ <a href="{@docRoot}distribute/tools/promote/linking.html">Linking to Your Products</a>.</p>
<h2 id="purchase-state-changes">Recurring Billing, Cancellation, and Changes In Purchase State</h2>
diff --git a/docs/html/google/play/expansion-files.jd b/docs/html/google/play/expansion-files.jd
index a21fbc5..e90f8fa 100644
--- a/docs/html/google/play/expansion-files.jd
+++ b/docs/html/google/play/expansion-files.jd
@@ -1,4 +1,6 @@
page.title=APK Expansion Files
+page.metaDescription=If your app needs more than the 50MB APK max, use free APK expansion files from Google Play.
+page.tags="apk size, apk max, large assets"
@jd:body
diff --git a/docs/html/google/play/licensing/adding-licensing.jd b/docs/html/google/play/licensing/adding-licensing.jd
index 93561f6..3bf4c1a 100644
--- a/docs/html/google/play/licensing/adding-licensing.jd
+++ b/docs/html/google/play/licensing/adding-licensing.jd
@@ -646,7 +646,7 @@
deep-links the user to the application's details page on Google Play, from which the
use can purchase the application. For more information on how to set up such
links, see <a
-href="{@docRoot}distribute/googleplay/promote/linking.html">Linking to Your Products</a>. </li>
+href="{@docRoot}distribute/tools/promote/linking.html">Linking to Your Products</a>. </li>
<li>Display a Toast notification that indicates that the features of the
application are limited because it is not licensed. </li>
</ul>
@@ -988,7 +988,7 @@
publish the application on Google Play. Follow the normal steps to <a
href="{@docRoot}tools/publishing/preparing.html">prepare</a>, <a
href="{@docRoot}tools/publishing/app-signing.html">sign</a>, and then <a
-href="{@docRoot}distribute/googleplay/publish/preparing.html">publish the application</a>.
+href="{@docRoot}distribute/tools/launch-checklist.html">publish the application</a>.
</p>
diff --git a/docs/html/google/play/licensing/index.jd b/docs/html/google/play/licensing/index.jd
index 6632fc0..a7ae57a 100644
--- a/docs/html/google/play/licensing/index.jd
+++ b/docs/html/google/play/licensing/index.jd
@@ -1,4 +1,7 @@
-page.title=Application Licensing
+page.title=App Licensing
+page.metaDescription=Information on using the licensing feature of Google Play to protect your apps.
+meta.tags="licensing, drm"
+page.image=/assets/images/resource-card-default-android.jpg
@jd:body
diff --git a/docs/html/google/play/licensing/setting-up.jd b/docs/html/google/play/licensing/setting-up.jd
index d83f91b..f43e4aba 100644
--- a/docs/html/google/play/licensing/setting-up.jd
+++ b/docs/html/google/play/licensing/setting-up.jd
@@ -42,7 +42,7 @@
using your Google account and agree to the Google Play terms of service.</p>
<p>For more information, see <a
-href="{@docRoot}distribute/googleplay/publish/register.html">Get Started with Publishing</a>.</p>
+href="{@docRoot}distribute/googleplay/start.html">Get Started with Publishing</a>.</p>
<p>If you already have a publisher account on Google Play, use your
Developer Console to set up licensing.</p>
diff --git a/docs/html/guide/components/index.jd b/docs/html/guide/components/index.jd
index 37fb7e9..811d015 100644
--- a/docs/html/guide/components/index.jd
+++ b/docs/html/guide/components/index.jd
@@ -1,7 +1,9 @@
page.title=App Components
page.landing=true
page.landing.intro=Android's application framework lets you create rich and innovative apps using a set of reusable components. This section explains how you can build the components that define the building blocks of your app and how to connect them together using intents.
+page.metaDescription=Android's application framework lets you create rich and innovative apps using a set of reusable components. This section explains how you can build the components that define the building blocks of your app and how to connect them together using intents.
page.landing.image=images/develop/app_components.png
+page.image=images/develop/app_components.png
@jd:body
diff --git a/docs/html/guide/practices/screens_support.jd b/docs/html/guide/practices/screens_support.jd
index 8c76411..dbe6c1a 100644
--- a/docs/html/guide/practices/screens_support.jd
+++ b/docs/html/guide/practices/screens_support.jd
@@ -1,4 +1,7 @@
page.title=Supporting Multiple Screens
+page.metaDescription=Nanaging UIs for the best display on multiple screen sizes.
+meta.tags="multiple screens"
+
@jd:body
<div id="qv-wrapper">
diff --git a/docs/html/guide/topics/manifest/uses-feature-element.jd b/docs/html/guide/topics/manifest/uses-feature-element.jd
index 6143b4b..a716bf8 100644
--- a/docs/html/guide/topics/manifest/uses-feature-element.jd
+++ b/docs/html/guide/topics/manifest/uses-feature-element.jd
@@ -689,7 +689,7 @@
<td>The application requires landscape orientation.</td>
<td rowspan="2">
<p>For example, if your app requires portrait orientation, you should declare
-<code><uses-feature android:name="android.hardware.screen.portrait"/></code> so that only devices
+<code><uses-feature android:name="android.hardware.screen.portrait"/></code> so that only devices
that support portrait orientation (whether always or by user choice) can install your app. If your
application <em>supports</em> both orientations, then you don't need to declare either.</p>
<p>Both orientations are assumed <em>not required</em>, by default, so your app may be installed
diff --git a/docs/html/guide/topics/resources/index.jd b/docs/html/guide/topics/resources/index.jd
index 386abf5..b85170b 100644
--- a/docs/html/guide/topics/resources/index.jd
+++ b/docs/html/guide/topics/resources/index.jd
@@ -2,6 +2,8 @@
page.landing=true
page.landing.intro=It takes more than just code to build a great app. Resources are the additional files and static content that your code uses, such as bitmaps, layout definitions, user interface strings, animation instructions, and more.
page.landing.image=images/develop/resources.png
+page.image=/images/develop/resources.png
+page.metaDescription=Developer guide about how to use resources in your Android apps.
@jd:body
diff --git a/docs/html/guide/topics/resources/localization.jd b/docs/html/guide/topics/resources/localization.jd
index 3bb9ab5..e86d4c9 100644
--- a/docs/html/guide/topics/resources/localization.jd
+++ b/docs/html/guide/topics/resources/localization.jd
@@ -1,485 +1,487 @@
-page.title=Localizing with Resources
-parent.title=Application Resources
-page.tags=localizing,localization,resources,formats,l10n
-parent.link=index.html
-@jd:body
-
-<div id="qv-wrapper">
- <div id="qv">
-
-<h2>Quickview</h2>
-
-<ul>
- <li>Use resource sets to create a localized app.</li>
- <li>Android loads the correct resource set for the user's language and locale.</li>
- <li>If localized resources are not available, Android loads your default resources.</li>
-</ul>
-
-<h2>In this document</h2>
-<ol>
- <li><a href="#resource-switching">Overview: Resource-Switching in Android</a></li>
-<li><a href="#using-framework">Using Resources for Localization</a></li>
-<li><a href="#strategies">Localization Tips</a></li>
-<li><a href="#testing">Testing Localized Applications</a></li>
-</ol>
-
-<h2>See also</h2>
- <ol>
- <li><a href="{@docRoot}distribute/googleplay/publish/localizing.html">Localization Checklist</a></li>
- <li><a href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a></li>
- <li><a href="{@docRoot}guide/topics/ui/declaring-layout.html">Layouts</a></li>
- <li><a href="{@docRoot}reference/android/app/Activity.html#ActivityLifecycle">Activity Lifecycle</a></li>
-</ol>
-</div>
-</div>
-
-<p>Android will run on many devices in many regions. To reach the most users,
-your application should handle text, audio files, numbers, currency, and
-graphics in ways appropriate to the locales where your application will be used.
-</p>
-
-<p>This document describes best practices for localizing Android
-applications. The principles apply whether you are developing your application
-using ADT with Eclipse, Ant-based tools, or any other IDE. </p>
-
-<p>You should already have a working knowledge of Java and be familiar with
-Android resource loading, the declaration of user interface elements in XML,
-development considerations such as Activity lifecycle, and general principles of
-internationalization and localization. </p>
-
-<p>It is good practice to use the Android resource framework to separate the
-localized aspects of your application as much as possible from the core Java
-functionality:</p>
-
-<ul>
- <li>You can put most or all of the <em>contents</em> of your application's
-user interface into resource files, as described in this document and in <a
-href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a>.</li>
- <li>The <em>behavior</em> of the user interface, on the other hand, is driven
-by your Java code.
- For example, if users input data that needs to be formatted or sorted
-differently depending on locale, then you would use Java to handle the data
-programmatically. This document does not cover how to localize your Java code.
-</li>
-</ul>
-
-<p>For a short guide to localizing strings in your app, see the training lesson, <a
-href="{@docRoot}training/basics/supporting-devices/languages.html">Supporting Different Languages</a>. </p>
-
-
-<h2 id="resource-switching">Overview: Resource-Switching in Android</h2>
-
-<p>Resources are text strings, layouts, sounds, graphics, and any other static
-data that your Android application needs. An application can include multiple
-sets of resources, each customized for a different device configuration. When a
-user runs the application, Android automatically selects and loads the
-resources that best match the device.</p>
-
-<p>(This document focuses on localization and locale. For a complete description
-of resource-switching and all the types of configurations that you can
-specify — screen orientation, touchscreen type, and so on — see <a
-href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">Providing
-Alternative Resources</a>.)</p>
-
-<table border="0" cellspacing="0" cellpadding="0">
- <tr border="0">
- <td width="180" style="border: 0pt none ;"><p class="special-note">
- <strong>When you write your application:</strong>
- <br><br>
- You create a set of default resources, plus alternatives to be used in
- different locales.</p></td>
- <td style="border: 0pt none; padding:0">
- <p style="border:0; padding:0"><img src="../../../images/resources/right-arrow.png" alt="right-arrow"
- width="51" height="17"></p></td>
- <td width="180" style="border: 0pt none ;"><p class="special-note">
- <strong>When a user runs your application:</strong>
- <br><br>The Android system selects which resources to load, based on the
- device's locale.</p></td>
- </tr>
-</table>
-
-<p>When you write your application, you create default and alternative resources
-for your application to use. To create resources, you place files within
-specially named subdirectories of the project's <code>res/</code> directory.
-</p>
-
-
-
-<h3 id="defaults-r-important">Why Default Resources Are Important</h3>
-
-<p>Whenever the application runs in a locale for which you have not provided
-locale-specific text, Android will load the default strings from
-<code>res/values/strings.xml</code>. If this default file is absent, or if it
-is missing a string that your application needs, then your application will not run
-and will show an error.
-The example below illustrates what can happen when the default text file is incomplete. </p>
-
-<p><em>Example:</em>
-<p>An application's Java code refers to just two strings, <code>text_a</code> and
- <code>text_b</code>. This application includes a localized resource file
- (<code>res/values-en/strings.xml</code>) that defines <code>text_a</code> and
- <code>text_b</code> in English. This application also includes a default
- resource file (<code>res/values/strings.xml</code>) that includes a
-definition for <code>text_a</code>, but not for <code>text_b</code>:
-<ul>
- <li>This application might compile without a problem. An IDE such as Eclipse
- will not highlight any errors if a resource is missing.</li>
- <li>When this application is launched on a device with locale set to English,
- the application might run without a problem, because
- <code>res/values-en/strings.xml</code> contains both of the needed text
- strings.</li>
- <li>However, <strong>the user will see an error message and a Force Close
- button</strong> when this application is launched on a device set to a
- language other than English. The application will not load.</li>
-</ul>
-
-
-<p>To prevent this situation, make sure that a <code>res/values/strings.xml</code>
- file exists and that it defines every needed string. The situation applies to
- all types of resources, not just strings: You
- need to create a set of default resource files containing all
- the resources that your application calls upon — layouts, drawables,
- animations, etc. For information about testing, see <a href="#test-for-default">
- Testing for Default Resources</a>.</p>
-
-<h2 id="using-framework">Using Resources for Localization</h2>
-
-<h3 id="creating-defaults">How to Create Default Resources</h3>
-
-<p>Put the application's default text in
-a file with the following location and name:</p>
-<p><code> res/values/strings.xml</code> (required directory)</p>
-
-<p>The text strings in <code>res/values/strings.xml</code> should use the
-default language, which is the language that you expect most of your application's users to
-speak. </p>
-
-<p>The default resource set must also include any default drawables and layouts,
- and can include other types of resources such as animations.
-<br>
- <code> res/drawable/</code>(required directory holding at least
- one graphic file, for the application's icon on Google Play)<br>
- <code> res/layout/</code> (required directory holding an XML
- file that defines the default layout)<br>
- <code> res/anim/</code> (required if you have any
- <code>res/anim-<em><qualifiers></em></code> folders)<br>
- <code> res/xml/</code> (required if you have any
- <code>res/xml-<em><qualifiers></em></code> folders)<br>
- <code> res/raw/</code> (required if you have any
- <code>res/raw-<em><qualifiers></em></code> folders)
-</p>
-
-<p class="note"><strong>Tip:</strong> In your code, examine each reference to
- an Android resource. Make sure that a default resource is defined for each
- one. Also make sure that the default string file is complete: A <em>
- localized</em> string file can contain a subset of the strings, but the
- <em>default</em> string file must contain them all.
-</p>
-
-<h3 id="creating-alternatives">How to Create Alternative Resources</h3>
-
-<p>A large part of localizing an application is providing alternative text for
-different languages. In some cases you will also provide alternative graphics,
-sounds, layouts, and other locale-specific resources. </p>
-
-<p>An application can specify many <code>res/<em><qualifiers></em>/</code>
-directories, each with different qualifiers. To create an alternative resource for
-a different locale, you use a qualifier that specifies a language or a
-language-region combination. (The name of a resource directory must conform
-to the naming scheme described in
-<a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">Providing
-Alternative Resources</a>,
-or else it will not compile.)</p>
-
-<p><em>Example:</em></p>
-
-<p>Suppose that your application's default language is English. Suppose also
-that you want to localize all the text in your application to French, and most
-of the text in your application (everything except the application's title) to
-Japanese. In this case, you could create three alternative <code>strings.xml</code>
-files, each stored in a locale-specific resource directory:</p>
-
-<ol>
- <li><code>res/values/strings.xml</code><br>
- Contains English text for all the strings that the application uses,
-including text for a string named <code>title</code>.</li>
- <li><code>res/values-fr/strings.xml</code><br>
- Contain French text for all the strings, including <code>title</code>.</li>
- <li><code>res/values-ja/strings.xml</code><br>
- Contain Japanese text for all the strings <em>except</em>
-<code>title</code>.<br>
- <code></code></li>
-</ol>
-
-<p>If your Java code refers to <code>R.string.title</code>, here is what will
-happen at runtime:</p>
-
-<ul>
- <li>If the device is set to any language other than French, Android will load
-<code>title</code> from the <code>res/values/strings.xml</code> file.</li>
- <li>If the device is set to French, Android will load <code>title</code> from
-the <code>res/values-fr/strings.xml</code> file.</li>
-</ul>
-
-<p>Notice that if the device is set to Japanese, Android will look for
-<code>title</code> in the <code>res/values-ja/strings.xml</code> file. But
-because no such string is included in that file, Android will fall back to the
-default, and will load <code>title</code> in English from the
-<code>res/values/strings.xml</code> file. </p>
-
-<h3 id="resource-precedence">Which Resources Take Precedence?</h3>
-
-<p> If multiple resource files match a device's configuration, Android follows a
-set of rules in deciding which file to use. Among the qualifiers that can be
-specified in a resource directory name, <strong>locale almost always takes
-precedence</strong>. </p>
-<p><em>Example:</em></p>
-
-<p>Assume that an application includes a default set of graphics and two other
-sets of graphics, each optimized for a different device setup:</p>
-
-<ul>
- <li><code>res/drawable/</code><br>
- Contains
- default graphics.</li>
- <li><code>res/drawable-small-land-stylus/</code><br>
- Contains graphics optimized for use with a device that expects input from a
- stylus and has a QVGA low-density screen in landscape orientation.</li>
- <li><code>res/drawable-ja/</code> <br>
- Contains graphics optimized for use with Japanese.</li>
-</ul>
-
-<p>If the application runs on a device that is configured to use Japanese,
-Android will load graphics from <code>res/drawable-ja/</code>, even if the
-device happens to be one that expects input from a stylus and has a QVGA
-low-density screen in landscape orientation.</p>
-
-<p class="note"><strong>Exception:</strong> The only qualifiers that take
-precedence over locale in the selection process are MCC and MNC (mobile country
-code and mobile network code). </p>
-
-<p><em>Example:</em></p>
-
-<p>Assume that you have the following situation:</p>
-
-<ul>
- <li>The application code calls for <code>R.string.text_a</code></li>
- <li>Two relevant resource files are available:
- <ul>
- <li><code>res/values-mcc404/strings.xml</code>, which includes
-<code>text_a</code> in the application's default language, in this case
-English.</li>
- <li><code>res/values-hi/strings.xml</code>, which includes
-<code>text_a</code> in Hindi.</li>
- </ul>
- </li>
- <li>The application is running on a device that has the following
-configuration:
- <ul>
- <li>The SIM card is connected to a mobile network in India (MCC 404).</li>
- <li>The language is set to Hindi (<code>hi</code>).</li>
- </ul>
- </li>
-</ul>
-
-<p>Android will load <code>text_a</code> from
-<code>res/values-mcc404/strings.xml</code> (in English), even if the device is
-configured for Hindi. That is because in the resource-selection process, Android
-will prefer an MCC match over a language match. </p>
-
-<p>The selection process is not always as straightforward as these examples
-suggest. Please read <a
-href="{@docRoot}guide/topics/resources/providing-resources.html#BestMatch">How Android Finds
-the Best-matching Resource</a> for a more nuanced description of the
-process. All the qualifiers are described and listed in order of
-precedence in <a
-href="{@docRoot}guide/topics/resources/providing-resources.html#table2">Table 2 of Providing
-Alternative Resources</a>.</p>
-
-<h3 id="referring-to-resources">Referring to Resources in Java</h3>
-
-<p>In your application's Java code, you refer to resources using the syntax
-<code>R.<em>resource_type</em>.<em>resource_name</em></code> or
-<code>android.R.<em>resource_type</em>.<em>resource_name</em></code><em>.</em>
-For more about this, see <a
-href="{@docRoot}guide/topics/resources/accessing-resources.html">Accessing Resources</a>.</p>
-
-<h2 id="checklist">Localization Checklist</h2>
-
-<p>For a complete overview of the process of localizing and distributing an Android application,
-see the <a href="{@docRoot}distribute/googleplay/publish/localizing.html">Localization
-Checklist</a> document.</p>
-
-<h2 id="strategies">Localization Tips</h2>
-
-<h4 id="failing2">Design your application to work in any locale</h4>
-
-<p>You cannot assume anything about the device on which a user will
-run your application. The device might have hardware that you were not
-anticipating, or it might be set to a locale that you did not plan for or that
-you cannot test. Design your application so that it will function normally or fail gracefully no
-matter what device it runs on.</p>
-
-<p class="note"><strong>Important:</strong> Make sure that your application
-includes a full set of default resources.</p> <p>Make sure to include
-<code>res/drawable/</code> and a <code>res/values/</code> folders (without any
-additional modifiers in the folder names) that contain all the images and text
-that your application will need. </p>
-
-<p>If an application is missing even one default resource, it will not run on a
- device that is set to an unsupported locale. For example, the
- <code>res/values/strings.xml</code> default file might lack one string that
- the application needs: When the application runs in an unsupported locale and
- attempts to load <code>res/values/strings.xml</code>, the user will see an
- error message and a Force Close button. An IDE such as Eclipse will not
- highlight this kind of error, and you will not see the problem when you
- test the application on a device or emulator that is set to a supported locale.</p>
-
-<p>For more information, see <a href="#test-for-default">Testing for Default Resources</a>.</p>
-
-<h4>Design a flexible layout</h4>
-
-<p> If you need to rearrange your layout to fit a certain language (for example
-German with its long words), you can create an alternative layout for that
-language (for example <code>res/layout-de/main.xml</code>). However, doing this
-can make your application harder to maintain. It is better to create a single
-layout that is more flexible.</p>
-
-<p>Another typical situation is a language that requires something different in
-its layout. For example, you might have a contact form that should include two
-name fields when the application runs in Japanese, but three name fields when
-the application runs in some other language. You could handle this in either of
-two ways:</p>
-
-<ul>
- <li>Create one layout with a field that you can programmatically enable or
-disable, based on the language, or</li>
- <li>Have the main layout include another layout that includes the changeable
-field. The second layout can have different configurations for different
-languages.</li>
-</ul>
-
-<h4>Avoid creating more resource files and text strings than you need</h4>
-
-<p>You probably do not need to create a locale-specific
-alternative for every resource in your application. For example, the layout
-defined in the <code>res/layout/main.xml</code> file might work in any locale,
-in which case there would be no need to create any alternative layout files.
-</p>
-
-<p>Also, you might not need to create alternative text for every
-string. For example, assume the following:</p>
-
-<ul>
- <li>Your application's default language is American
-English. Every string that the application uses is defined, using American
-English spellings, in <code>res/values/strings.xml</code>. </li>
-
- <li>For a few important phrases, you want to provide
-British English spelling. You want these alternative strings to be used when your
-application runs on a device in the United Kingdom. </li>
-</ul>
-
-<p>To do this, you could create a small file called
-<code>res/values-en-rGB/strings.xml</code> that includes only the strings that
-should be different when the application runs in the U.K. For all the rest of
-the strings, the application will fall back to the defaults and use what is
-defined in <code>res/values/strings.xml</code>.</p>
-
-<h4>Use the Android Context object for manual locale lookup</h4>
-
-<p>You can look up the locale using the {@link android.content.Context} object
-that Android makes available:</p>
-
-<pre>String locale = context.getResources().getConfiguration().locale.getDisplayName();</pre>
-
-<h2 id="testing">Testing Localized Applications</h2>
-
-<h3 id="device">Testing on a Device</h3>
-<p>Keep in mind that the device you are testing may be significantly different from
- the devices available to consumers in other geographies. The locales available
- on your device may differ from those available on other devices. Also, the
- resolution and density of the device screen may differ, which could affect
- the display of strings and drawables in your UI.</p>
-
-<p>To change the locale on a device, use the Settings application (Home >
-Menu > Settings > Locale & text > Select locale). </p>
-
-<h3 id="emulator">Testing on an Emulator</h3>
-
-<p>For details about using the emulator, see See <a
-href="{@docRoot}tools/help/emulator.html">Android Emulator</a>.</p>
-<h4>Creating and using a custom locale</h4>
-
-<p>A "custom" locale is a language/region combination that the Android
-system image does not explicitly support. (For a list of supported locales in
-Android platforms see the Version Notes in the <a
-href="{@docRoot}sdk/index.html">SDK</a> tab). You can test
-how your application will run in a custom locale by creating a custom locale in
-the emulator. There are two ways to do this:</p>
-
-<ul>
- <li>Use the Custom Locale application, which is accessible from the
-Application tab. (After you create a custom locale, switch to it by
-pressing and holding the locale name.)</li>
- <li>Change to a custom locale from the adb shell, as described below.</li>
-</ul>
-
-<p>When you set the emulator to a locale that is not available in the Android
-system image, the system itself will display in its default language. Your
-application, however, should localize properly.</p>
-
-<h4>Changing the emulator locale from the adb shell</h4>
-
-<p>To change the locale in the emulator by using the adb shell. </p>
-
-<ol>
- <li>Pick the locale you want to test and determine its language and region codes, for
-example <code>fr</code> for French and <code>CA</code> for Canada.<br>
- </li>
- <li>Launch an emulator.</li>
- <li>From a command-line shell on the host computer, run the following
-command:<br>
- <code>adb shell</code><br>
- or if you have a device attached, specify that you want the emulator by adding
-the <code>-e</code> option:<br>
- <code>adb -e shell</code></li>
- <li>At the adb shell prompt (<code>#</code>), run this command: <br>
- <code>setprop persist.sys.language [<em>language code</em>];setprop
-persist.sys.country [<em>country code</em>];stop;sleep 5;start <br>
- </code>Replace bracketed sections with the appropriate codes from Step
-1.</li>
-</ol>
-
-<p>For instance, to test in Canadian French:</p>
-
-<p><code>setprop persist.sys.language fr;setprop persist.sys.country
-CA;stop;sleep 5;start </code></p>
-
-<p>This will cause the emulator to restart. (It will look like a full reboot,
-but it is not.) Once the Home screen appears again, re-launch your application (for
-example, click the Run icon in Eclipse), and the application will launch with
-the new locale. </p>
-
-<h3 id="test-for-default">Testing for Default Resources</h3>
-<p>Here's how to test whether an application includes every string resource that it needs: </p>
-<ol><li>Set the emulator or device to a language that your application does not
- support. For example, if the application has French strings in
- <code>res/values-fr/</code> but does not have any Spanish strings in
- <code>res/values-es/</code>, then set the emulator's locale to Spanish.
- (You can use the Custom Locale application to set the emulator to an
- unsupported locale.)</li>
- <li>Run the application.</li>
-<li>If the application shows an error message and a Force Close button, it might
- be looking for a string that is not available. Make sure that your
- <code>res/values/strings.xml</code> file includes a definition for
- every string that the application uses.</li>
-</ol>
-</p>
-
-<p>If the test is successful, repeat it for other types of
- configurations. For example, if the application has a layout file called
- <code>res/layout-land/main.xml</code> but does not contain a file called
- <code>res/layout-port/main.xml</code>, then set the emulator or device to
- portrait orientation and see if the application will run.
-
+page.title=Localizing with Resources
+parent.title=Application Resources
+page.tags="localizing","localization","resources", "formats", "l10n"
+parent.link=index.html
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+
+<h2>Quickview</h2>
+
+<ul>
+ <li>Use resource sets to create a localized app.</li>
+ <li>Android loads the correct resource set for the user's language and locale.</li>
+ <li>If localized resources are not available, Android loads your default resources.</li>
+</ul>
+
+<h2>In this document</h2>
+<ol>
+ <li><a href="#resource-switching">Overview: Resource-Switching in Android</a></li>
+<li><a href="#using-framework">Using Resources for Localization</a></li>
+<li><a href="#strategies">Localization Tips</a></li>
+<li><a href="#testing">Testing Localized Applications</a></li>
+</ol>
+
+<h2>See also</h2>
+ <ol>
+ <li><a href="{@docRoot}distribute/tools/localization-checklist.html">Localization Checklist</a></li>
+ <li><a href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a></li>
+ <li><a href="{@docRoot}guide/topics/ui/declaring-layout.html">Layouts</a></li>
+ <li><a href="{@docRoot}reference/android/app/Activity.html#ActivityLifecycle">Activity Lifecycle</a></li>
+</ol>
+</div>
+</div>
+
+<p>Android will run on many devices in many regions. To reach the most users,
+your application should handle text, audio files, numbers, currency, and
+graphics in ways appropriate to the locales where your application will be used.
+</p>
+
+<p>This document describes best practices for localizing Android
+applications. The principles apply whether you are developing your application
+using ADT with Eclipse, Ant-based tools, or any other IDE. </p>
+
+<p>You should already have a working knowledge of Java and be familiar with
+Android resource loading, the declaration of user interface elements in XML,
+development considerations such as Activity lifecycle, and general principles of
+internationalization and localization. </p>
+
+<p>It is good practice to use the Android resource framework to separate the
+localized aspects of your application as much as possible from the core Java
+functionality:</p>
+
+<ul>
+ <li>You can put most or all of the <em>contents</em> of your application's
+user interface into resource files, as described in this document and in <a
+href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a>.</li>
+ <li>The <em>behavior</em> of the user interface, on the other hand, is driven
+by your Java code.
+ For example, if users input data that needs to be formatted or sorted
+differently depending on locale, then you would use Java to handle the data
+programmatically. This document does not cover how to localize your Java code.
+</li>
+</ul>
+
+<p>For a short guide to localizing strings in your app, see the training lesson, <a
+href="{@docRoot}training/basics/supporting-devices/languages.html">Supporting Different Languages</a>. </p>
+
+
+<h2 id="resource-switching">Overview: Resource-Switching in Android</h2>
+
+<p>Resources are text strings, layouts, sounds, graphics, and any other static
+data that your Android application needs. An application can include multiple
+sets of resources, each customized for a different device configuration. When a
+user runs the application, Android automatically selects and loads the
+resources that best match the device.</p>
+
+<p>(This document focuses on localization and locale. For a complete description
+of resource-switching and all the types of configurations that you can
+specify — screen orientation, touchscreen type, and so on — see <a
+href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">Providing
+Alternative Resources</a>.)</p>
+
+<table border="0" cellspacing="0" cellpadding="0">
+ <tr border="0">
+ <td width="180" style="border: 0pt none ;"><p class="special-note">
+ <strong>When you write your application:</strong>
+ <br><br>
+ You create a set of default resources, plus alternatives to be used in
+ different locales.</p></td>
+ <td style="border: 0pt none; padding:0">
+ <p style="border:0; padding:0"><img src="../../../images/resources/right-arrow.png" alt="right-arrow"
+ width="51" height="17"></p></td>
+ <td width="180" style="border: 0pt none ;"><p class="special-note">
+ <strong>When a user runs your application:</strong>
+ <br><br>The Android system selects which resources to load, based on the
+ device's locale.</p></td>
+ </tr>
+</table>
+
+<p>When you write your application, you create default and alternative resources
+for your application to use. To create resources, you place files within
+specially named subdirectories of the project's <code>res/</code> directory.
+</p>
+
+
+
+<h3 id="defaults-r-important">Why Default Resources Are Important</h3>
+
+<p>Whenever the application runs in a locale for which you have not provided
+locale-specific text, Android will load the default strings from
+<code>res/values/strings.xml</code>. If this default file is absent, or if it
+is missing a string that your application needs, then your application will not run
+and will show an error.
+The example below illustrates what can happen when the default text file is incomplete. </p>
+
+<p><em>Example:</em>
+<p>An application's Java code refers to just two strings, <code>text_a</code> and
+ <code>text_b</code>. This application includes a localized resource file
+ (<code>res/values-en/strings.xml</code>) that defines <code>text_a</code> and
+ <code>text_b</code> in English. This application also includes a default
+ resource file (<code>res/values/strings.xml</code>) that includes a
+definition for <code>text_a</code>, but not for <code>text_b</code>:
+<ul>
+ <li>This application might compile without a problem. An IDE such as Eclipse
+ will not highlight any errors if a resource is missing.</li>
+ <li>When this application is launched on a device with locale set to English,
+ the application might run without a problem, because
+ <code>res/values-en/strings.xml</code> contains both of the needed text
+ strings.</li>
+ <li>However, <strong>the user will see an error message and a Force Close
+ button</strong> when this application is launched on a device set to a
+ language other than English. The application will not load.</li>
+</ul>
+
+
+<p>To prevent this situation, make sure that a <code>res/values/strings.xml</code>
+ file exists and that it defines every needed string. The situation applies to
+ all types of resources, not just strings: You
+ need to create a set of default resource files containing all
+ the resources that your application calls upon — layouts, drawables,
+ animations, etc. For information about testing, see <a href="#test-for-default">
+ Testing for Default Resources</a>.</p>
+
+<h2 id="using-framework">Using Resources for Localization</h2>
+
+<h3 id="creating-defaults">How to Create Default Resources</h3>
+
+<p>Put the application's default text in
+a file with the following location and name:</p>
+<p><code> res/values/strings.xml</code> (required directory)</p>
+
+<p>The text strings in <code>res/values/strings.xml</code> should use the
+default language, which is the language that you expect most of your application's users to
+speak. </p>
+
+<p>The default resource set must also include any default drawables and layouts,
+ and can include other types of resources such as animations.
+<br>
+ <code> res/drawable/</code>(required directory holding at least
+ one graphic file, for the application's icon on Google Play)<br>
+ <code> res/layout/</code> (required directory holding an XML
+ file that defines the default layout)<br>
+ <code> res/anim/</code> (required if you have any
+ <code>res/anim-<em><qualifiers></em></code> folders)<br>
+ <code> res/xml/</code> (required if you have any
+ <code>res/xml-<em><qualifiers></em></code> folders)<br>
+ <code> res/raw/</code> (required if you have any
+ <code>res/raw-<em><qualifiers></em></code> folders)
+</p>
+
+<p class="note"><strong>Tip:</strong> In your code, examine each reference to
+ an Android resource. Make sure that a default resource is defined for each
+ one. Also make sure that the default string file is complete: A <em>
+ localized</em> string file can contain a subset of the strings, but the
+ <em>default</em> string file must contain them all.
+</p>
+
+<h3 id="creating-alternatives">How to Create Alternative Resources</h3>
+
+<p>A large part of localizing an application is providing alternative text for
+different languages. In some cases you will also provide alternative graphics,
+sounds, layouts, and other locale-specific resources. </p>
+
+<p>An application can specify many <code>res/<em><qualifiers></em>/</code>
+directories, each with different qualifiers. To create an alternative resource for
+a different locale, you use a qualifier that specifies a language or a
+language-region combination. (The name of a resource directory must conform
+to the naming scheme described in
+<a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">Providing
+Alternative Resources</a>,
+or else it will not compile.)</p>
+
+<p><em>Example:</em></p>
+
+<p>Suppose that your application's default language is English. Suppose also
+that you want to localize all the text in your application to French, and most
+of the text in your application (everything except the application's title) to
+Japanese. In this case, you could create three alternative <code>strings.xml</code>
+files, each stored in a locale-specific resource directory:</p>
+
+<ol>
+ <li><code>res/values/strings.xml</code><br>
+ Contains English text for all the strings that the application uses,
+including text for a string named <code>title</code>.</li>
+ <li><code>res/values-fr/strings.xml</code><br>
+ Contain French text for all the strings, including <code>title</code>.</li>
+ <li><code>res/values-ja/strings.xml</code><br>
+ Contain Japanese text for all the strings <em>except</em>
+<code>title</code>.<br>
+ <code></code></li>
+</ol>
+
+<p>If your Java code refers to <code>R.string.title</code>, here is what will
+happen at runtime:</p>
+
+<ul>
+ <li>If the device is set to any language other than French, Android will load
+<code>title</code> from the <code>res/values/strings.xml</code> file.</li>
+ <li>If the device is set to French, Android will load <code>title</code> from
+the <code>res/values-fr/strings.xml</code> file.</li>
+</ul>
+
+<p>Notice that if the device is set to Japanese, Android will look for
+<code>title</code> in the <code>res/values-ja/strings.xml</code> file. But
+because no such string is included in that file, Android will fall back to the
+default, and will load <code>title</code> in English from the
+<code>res/values/strings.xml</code> file. </p>
+
+<h3 id="resource-precedence">Which Resources Take Precedence?</h3>
+
+<p> If multiple resource files match a device's configuration, Android follows a
+set of rules in deciding which file to use. Among the qualifiers that can be
+specified in a resource directory name, <strong>locale almost always takes
+precedence</strong>. </p>
+<p><em>Example:</em></p>
+
+<p>Assume that an application includes a default set of graphics and two other
+sets of graphics, each optimized for a different device setup:</p>
+
+<ul>
+ <li><code>res/drawable/</code><br>
+ Contains
+ default graphics.</li>
+ <li><code>res/drawable-small-land-stylus/</code><br>
+ Contains graphics optimized for use with a device that expects input from a
+ stylus and has a QVGA low-density screen in landscape orientation.</li>
+ <li><code>res/drawable-ja/</code> <br>
+ Contains graphics optimized for use with Japanese.</li>
+</ul>
+
+<p>If the application runs on a device that is configured to use Japanese,
+Android will load graphics from <code>res/drawable-ja/</code>, even if the
+device happens to be one that expects input from a stylus and has a QVGA
+low-density screen in landscape orientation.</p>
+
+<p class="note"><strong>Exception:</strong> The only qualifiers that take
+precedence over locale in the selection process are MCC and MNC (mobile country
+code and mobile network code). </p>
+
+<p><em>Example:</em></p>
+
+<p>Assume that you have the following situation:</p>
+
+<ul>
+ <li>The application code calls for <code>R.string.text_a</code></li>
+ <li>Two relevant resource files are available:
+ <ul>
+ <li><code>res/values-mcc404/strings.xml</code>, which includes
+<code>text_a</code> in the application's default language, in this case
+English.</li>
+ <li><code>res/values-hi/strings.xml</code>, which includes
+<code>text_a</code> in Hindi.</li>
+ </ul>
+ </li>
+ <li>The application is running on a device that has the following
+configuration:
+ <ul>
+ <li>The SIM card is connected to a mobile network in India (MCC 404).</li>
+ <li>The language is set to Hindi (<code>hi</code>).</li>
+ </ul>
+ </li>
+</ul>
+
+<p>Android will load <code>text_a</code> from
+<code>res/values-mcc404/strings.xml</code> (in English), even if the device is
+configured for Hindi. That is because in the resource-selection process, Android
+will prefer an MCC match over a language match. </p>
+
+<p>The selection process is not always as straightforward as these examples
+suggest. Please read <a
+href="{@docRoot}guide/topics/resources/providing-resources.html#BestMatch">How Android Finds
+the Best-matching Resource</a> for a more nuanced description of the
+process. All the qualifiers are described and listed in order of
+precedence in <a
+href="{@docRoot}guide/topics/resources/providing-resources.html#table2">Table 2 of Providing
+Alternative Resources</a>.</p>
+
+<h3 id="referring-to-resources">Referring to Resources in Java</h3>
+
+<p>In your application's Java code, you refer to resources using the syntax
+<code>R.<em>resource_type</em>.<em>resource_name</em></code> or
+<code>android.R.<em>resource_type</em>.<em>resource_name</em></code><em>.</em>
+For more about this, see <a
+href="{@docRoot}guide/topics/resources/accessing-resources.html">Accessing Resources</a>.</p>
+
+<h2 id="checklist">Localization Checklist</h2>
+
+<p>For a complete overview of the process of localizing and distributing an Android application,
+see the <a href="{@docRoot}distribute/tools/localization-checklist.html">Localization
+Checklist</a> document.</p>
+
+<h2 id="strategies">Localization Tips</h2>
+
+<h4 id="failing2">Design your application to work in any locale</h4>
+
+<p>You cannot assume anything about the device on which a user will
+run your application. The device might have hardware that you were not
+anticipating, or it might be set to a locale that you did not plan for or that
+you cannot test. Design your application so that it will function normally or fail gracefully no
+matter what device it runs on.</p>
+
+<p class="note"><strong>Important:</strong> Make sure that your application
+includes a full set of default resources.</p> <p>Make sure to include
+<code>res/drawable/</code> and a <code>res/values/</code> folders (without any
+additional modifiers in the folder names) that contain all the images and text
+that your application will need. </p>
+
+<p>If an application is missing even one default resource, it will not run on a
+ device that is set to an unsupported locale. For example, the
+ <code>res/values/strings.xml</code> default file might lack one string that
+ the application needs: When the application runs in an unsupported locale and
+ attempts to load <code>res/values/strings.xml</code>, the user will see an
+ error message and a Force Close button. An IDE such as Eclipse will not
+ highlight this kind of error, and you will not see the problem when you
+ test the application on a device or emulator that is set to a supported locale.</p>
+
+<p>For more information, see <a href="#test-for-default">Testing for Default Resources</a>.</p>
+
+<h4>Design a flexible layout</h4>
+
+<p> If you need to rearrange your layout to fit a certain language (for example
+German with its long words), you can create an alternative layout for that
+language (for example <code>res/layout-de/main.xml</code>). However, doing this
+can make your application harder to maintain. It is better to create a single
+layout that is more flexible.</p>
+
+<p>Another typical situation is a language that requires something different in
+its layout. For example, you might have a contact form that should include two
+name fields when the application runs in Japanese, but three name fields when
+the application runs in some other language. You could handle this in either of
+two ways:</p>
+
+<ul>
+ <li>Create one layout with a field that you can programmatically enable or
+disable, based on the language, or</li>
+ <li>Have the main layout include another layout that includes the changeable
+field. The second layout can have different configurations for different
+languages.</li>
+</ul>
+
+<h4>Avoid creating more resource files and text strings than you need</h4>
+
+<p>You probably do not need to create a locale-specific
+alternative for every resource in your application. For example, the layout
+defined in the <code>res/layout/main.xml</code> file might work in any locale,
+in which case there would be no need to create any alternative layout files.
+</p>
+
+<p>Also, you might not need to create alternative text for every
+string. For example, assume the following:</p>
+
+<ul>
+ <li>Your application's default language is American
+English. Every string that the application uses is defined, using American
+English spellings, in <code>res/values/strings.xml</code>. </li>
+
+ <li>For a few important phrases, you want to provide
+British English spelling. You want these alternative strings to be used when your
+application runs on a device in the United Kingdom. </li>
+</ul>
+
+<p>To do this, you could create a small file called
+<code>res/values-en-rGB/strings.xml</code> that includes only the strings that
+should be different when the application runs in the U.K. For all the rest of
+the strings, the application will fall back to the defaults and use what is
+defined in <code>res/values/strings.xml</code>.</p>
+
+<h4>Use the Android Context object for manual locale lookup</h4>
+
+<p>You can look up the locale using the {@link android.content.Context} object
+that Android makes available:</p>
+
+<pre>String locale = context.getResources().getConfiguration().locale.getDisplayName();</pre>
+
+<h2 id="testing">Testing Localized Applications</h2>
+
+<h3 id="device">Testing on a Device</h3>
+<p>Keep in mind that the device you are testing may be significantly different from
+ the devices available to consumers in other geographies. The locales available
+ on your device may differ from those available on other devices. Also, the
+ resolution and density of the device screen may differ, which could affect
+ the display of strings and drawables in your UI.</p>
+
+<p>To change the locale on a device, use the Settings application (Home >
+Menu > Settings > Locale & text > Select locale). </p>
+
+<h3 id="emulator">Testing on an Emulator</h3>
+
+<p>For details about using the emulator, see See <a
+href="{@docRoot}tools/help/emulator.html">Android Emulator</a>.</p>
+<h4>Creating and using a custom locale</h4>
+
+<p>A "custom" locale is a language/region combination that the Android
+system image does not explicitly support. (For a list of supported locales in
+Android platforms see the Version Notes in the <a
+href="{@docRoot}sdk/index.html">SDK</a> tab). You can test
+how your application will run in a custom locale by creating a custom locale in
+the emulator. There are two ways to do this:</p>
+
+<ul>
+ <li>Use the Custom Locale application, which is accessible from the
+Application tab. (After you create a custom locale, switch to it by
+pressing and holding the locale name.)</li>
+ <li>Change to a custom locale from the adb shell, as described below.</li>
+</ul>
+
+<p>When you set the emulator to a locale that is not available in the Android
+system image, the system itself will display in its default language. Your
+application, however, should localize properly.</p>
+
+<h4>Changing the emulator locale from the adb shell</h4>
+
+<p>To change the locale in the emulator by using the adb shell. </p>
+
+<ol>
+ <li>Pick the locale you want to test and determine its language and region codes, for
+example <code>fr</code> for French and <code>CA</code> for Canada.<br>
+ </li>
+ <li>Launch an emulator.</li>
+ <li>From a command-line shell on the host computer, run the following
+command:<br>
+ <code>adb shell</code><br>
+ or if you have a device attached, specify that you want the emulator by adding
+the <code>-e</code> option:<br>
+ <code>adb -e shell</code></li>
+ <li>At the adb shell prompt (<code>#</code>), run this command: <br>
+ <code>setprop persist.sys.language [<em>language code</em>];setprop
+persist.sys.country [<em>country code</em>];stop;sleep 5;start <br>
+ </code>Replace bracketed sections with the appropriate codes from Step
+1.</li>
+</ol>
+
+<p>For instance, to test in Canadian French:</p>
+
+<p><code>setprop persist.sys.language fr;setprop persist.sys.country
+CA;stop;sleep 5;start </code></p>
+
+<p>This will cause the emulator to restart. (It will look like a full reboot,
+but it is not.) Once the Home screen appears again, re-launch your application (for
+example, click the Run icon in Eclipse), and the application will launch with
+the new locale. </p>
+
+<h3 id="test-for-default">Testing for Default Resources</h3>
+<p>Here's how to test whether an application includes every string resource that it needs: </p>
+<ol><li>Set the emulator or device to a language that your application does not
+ support. For example, if the application has French strings in
+ <code>res/values-fr/</code> but does not have any Spanish strings in
+ <code>res/values-es/</code>, then set the emulator's locale to Spanish.
+ (You can use the Custom Locale application to set the emulator to an
+ unsupported locale.)</li>
+ <li>Run the application.</li>
+<li>If the application shows an error message and a Force Close button, it might
+ be looking for a string that is not available. Make sure that your
+ <code>res/values/strings.xml</code> file includes a definition for
+ every string that the application uses.</li>
+</ol>
+</p>
+
+<p>If the test is successful, repeat it for other types of
+ configurations. For example, if the application has a layout file called
+ <code>res/layout-land/main.xml</code> but does not contain a file called
+ <code>res/layout-port/main.xml</code>, then set the emulator or device to
+ portrait orientation and see if the application will run.
+
+
+
diff --git a/docs/html/guide/topics/ui/accessibility/index.jd b/docs/html/guide/topics/ui/accessibility/index.jd
index 56efc4c..dcc22d7 100644
--- a/docs/html/guide/topics/ui/accessibility/index.jd
+++ b/docs/html/guide/topics/ui/accessibility/index.jd
@@ -1,5 +1,9 @@
page.title=Accessibility
parent.title=User Interface
+page.metaDescription=How to make your apps accessible to users with visual, physical, or other limitations. Robust support will increase your app's user base.
+
+page.tags="accessibility"
+page.image=/design/media/accessibility_contentdesc.png
parent.link=../index.html
@jd:body
diff --git a/docs/html/images/blog.jpg b/docs/html/images/blog.jpg
new file mode 100644
index 0000000..a3ee7d8
--- /dev/null
+++ b/docs/html/images/blog.jpg
Binary files differ
diff --git a/docs/html/images/device-art-ex-crop.jpg b/docs/html/images/device-art-ex-crop.jpg
new file mode 100644
index 0000000..42c769b
--- /dev/null
+++ b/docs/html/images/device-art-ex-crop.jpg
Binary files differ
diff --git a/docs/html/images/gp-about-0.jpg b/docs/html/images/gp-about-0.jpg
new file mode 100644
index 0000000..2dd6a8c
--- /dev/null
+++ b/docs/html/images/gp-about-0.jpg
Binary files differ
diff --git a/docs/html/images/gp-about-listing.jpg b/docs/html/images/gp-about-listing.jpg
new file mode 100644
index 0000000..256c051
--- /dev/null
+++ b/docs/html/images/gp-about-listing.jpg
Binary files differ
diff --git a/docs/html/images/gp-about-picks1.jpg b/docs/html/images/gp-about-picks1.jpg
new file mode 100644
index 0000000..555bd7b
--- /dev/null
+++ b/docs/html/images/gp-about-picks1.jpg
Binary files differ
diff --git a/docs/html/images/gp-about-picks2.jpg b/docs/html/images/gp-about-picks2.jpg
new file mode 100644
index 0000000..ec25e74
--- /dev/null
+++ b/docs/html/images/gp-about-picks2.jpg
Binary files differ
diff --git a/docs/html/images/gp-about-picks3.jpg b/docs/html/images/gp-about-picks3.jpg
new file mode 100644
index 0000000..eb57da9
--- /dev/null
+++ b/docs/html/images/gp-about-picks3.jpg
Binary files differ
diff --git a/docs/html/images/gp-about-top.jpg b/docs/html/images/gp-about-top.jpg
new file mode 100644
index 0000000..01a2744
--- /dev/null
+++ b/docs/html/images/gp-about-top.jpg
Binary files differ
diff --git a/docs/html/images/gp-androidify.png b/docs/html/images/gp-androidify.png
new file mode 100644
index 0000000..122d596
--- /dev/null
+++ b/docs/html/images/gp-androidify.png
Binary files differ
diff --git a/docs/html/images/gp-apps-home.png b/docs/html/images/gp-apps-home.png
deleted file mode 100644
index 851f722..0000000
--- a/docs/html/images/gp-apps-home.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-badge-jp.png b/docs/html/images/gp-badge-jp.png
new file mode 100644
index 0000000..00b5d1f
--- /dev/null
+++ b/docs/html/images/gp-badge-jp.png
Binary files differ
diff --git a/docs/html/images/gp-badges-set.png b/docs/html/images/gp-badges-set.png
new file mode 100644
index 0000000..e2e0e94
--- /dev/null
+++ b/docs/html/images/gp-badges-set.png
Binary files differ
diff --git a/docs/html/images/gp-balance.png b/docs/html/images/gp-balance.png
new file mode 100644
index 0000000..7802bcc
--- /dev/null
+++ b/docs/html/images/gp-balance.png
Binary files differ
diff --git a/docs/html/images/gp-build-buzz-yt.png b/docs/html/images/gp-build-buzz-yt.png
new file mode 100644
index 0000000..7901aa5
--- /dev/null
+++ b/docs/html/images/gp-build-buzz-yt.png
Binary files differ
diff --git a/docs/html/images/gp-buzz-1.jpg b/docs/html/images/gp-buzz-1.jpg
new file mode 100644
index 0000000..ce2444b
--- /dev/null
+++ b/docs/html/images/gp-buzz-1.jpg
Binary files differ
diff --git a/docs/html/images/gp-collectibles.png b/docs/html/images/gp-collectibles.png
deleted file mode 100644
index a63cd50..0000000
--- a/docs/html/images/gp-collectibles.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-community-0.png b/docs/html/images/gp-community-0.png
new file mode 100644
index 0000000..bb8fde2
--- /dev/null
+++ b/docs/html/images/gp-community-0.png
Binary files differ
diff --git a/docs/html/images/gp-core-quality.png b/docs/html/images/gp-core-quality.png
new file mode 100644
index 0000000..196459f
--- /dev/null
+++ b/docs/html/images/gp-core-quality.png
Binary files differ
diff --git a/docs/html/images/gp-dc-ab.png b/docs/html/images/gp-dc-ab.png
new file mode 100644
index 0000000..0604a1b
--- /dev/null
+++ b/docs/html/images/gp-dc-ab.png
Binary files differ
diff --git a/docs/html/images/gp-dc-inapp.jpg b/docs/html/images/gp-dc-inapp.jpg
new file mode 100644
index 0000000..e830e31
--- /dev/null
+++ b/docs/html/images/gp-dc-inapp.jpg
Binary files differ
diff --git a/docs/html/images/gp-dc-invite.png b/docs/html/images/gp-dc-invite.png
new file mode 100644
index 0000000..403b53d
--- /dev/null
+++ b/docs/html/images/gp-dc-invite.png
Binary files differ
diff --git a/docs/html/images/gp-dc-startscreen.jpg b/docs/html/images/gp-dc-startscreen.jpg
new file mode 100644
index 0000000..afaa91b
--- /dev/null
+++ b/docs/html/images/gp-dc-startscreen.jpg
Binary files differ
diff --git a/docs/html/images/gp-details-pages-magicpiano.png b/docs/html/images/gp-details-pages-magicpiano.png
deleted file mode 100644
index 4bb1962..0000000
--- a/docs/html/images/gp-details-pages-magicpiano.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-details-ww.png b/docs/html/images/gp-details-ww.png
deleted file mode 100644
index ccc522c..0000000
--- a/docs/html/images/gp-details-ww.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-e-value.png b/docs/html/images/gp-e-value.png
new file mode 100644
index 0000000..86c8f86
--- /dev/null
+++ b/docs/html/images/gp-e-value.png
Binary files differ
diff --git a/docs/html/images/gp-ecom-0.png b/docs/html/images/gp-ecom-0.png
new file mode 100644
index 0000000..22b6040
--- /dev/null
+++ b/docs/html/images/gp-ecom-0.png
Binary files differ
diff --git a/docs/html/images/gp-edu-monetize.png b/docs/html/images/gp-edu-monetize.png
new file mode 100644
index 0000000..6db273c
--- /dev/null
+++ b/docs/html/images/gp-edu-monetize.png
Binary files differ
diff --git a/docs/html/images/gp-edu-optin-console.jpg b/docs/html/images/gp-edu-optin-console.jpg
new file mode 100644
index 0000000..239b966
--- /dev/null
+++ b/docs/html/images/gp-edu-optin-console.jpg
Binary files differ
diff --git a/docs/html/images/gp-edu-quality.png b/docs/html/images/gp-edu-quality.png
new file mode 100644
index 0000000..b103483
--- /dev/null
+++ b/docs/html/images/gp-edu-quality.png
Binary files differ
diff --git a/docs/html/images/gp-engage-0.jpg b/docs/html/images/gp-engage-0.jpg
new file mode 100644
index 0000000..b4f44b5
--- /dev/null
+++ b/docs/html/images/gp-engage-0.jpg
Binary files differ
diff --git a/docs/html/images/gp-engage-5.jpg b/docs/html/images/gp-engage-5.jpg
new file mode 100644
index 0000000..10fa0c2
--- /dev/null
+++ b/docs/html/images/gp-engage-5.jpg
Binary files differ
diff --git a/docs/html/images/gp-engage-6.jpg b/docs/html/images/gp-engage-6.jpg
new file mode 100644
index 0000000..2da09e1
--- /dev/null
+++ b/docs/html/images/gp-engage-6.jpg
Binary files differ
diff --git a/docs/html/images/gp-engage-9.jpg b/docs/html/images/gp-engage-9.jpg
new file mode 100644
index 0000000..46b94f0
--- /dev/null
+++ b/docs/html/images/gp-engage-9.jpg
Binary files differ
diff --git a/docs/html/images/gp-engage-share-plus.png b/docs/html/images/gp-engage-share-plus.png
new file mode 100644
index 0000000..a1aa46e
--- /dev/null
+++ b/docs/html/images/gp-engage-share-plus.png
Binary files differ
diff --git a/docs/html/images/gp-engage-smule.jpg b/docs/html/images/gp-engage-smule.jpg
new file mode 100644
index 0000000..087da79
--- /dev/null
+++ b/docs/html/images/gp-engage-smule.jpg
Binary files differ
diff --git a/docs/html/images/gp-expand-2.jpg b/docs/html/images/gp-expand-2.jpg
new file mode 100644
index 0000000..a7b6916
--- /dev/null
+++ b/docs/html/images/gp-expand-2.jpg
Binary files differ
diff --git a/docs/html/images/gp-expand-4.jpg b/docs/html/images/gp-expand-4.jpg
new file mode 100644
index 0000000..1d5b1a1
--- /dev/null
+++ b/docs/html/images/gp-expand-4.jpg
Binary files differ
diff --git a/docs/html/images/gp-expand-5.jpg b/docs/html/images/gp-expand-5.jpg
new file mode 100644
index 0000000..b2b2264
--- /dev/null
+++ b/docs/html/images/gp-expand-5.jpg
Binary files differ
diff --git a/docs/html/images/gp-freemium-0.jpg b/docs/html/images/gp-freemium-0.jpg
new file mode 100644
index 0000000..767c1f3
--- /dev/null
+++ b/docs/html/images/gp-freemium-0.jpg
Binary files differ
diff --git a/docs/html/images/gp-freemium-1.jpg b/docs/html/images/gp-freemium-1.jpg
new file mode 100644
index 0000000..1e509c5
--- /dev/null
+++ b/docs/html/images/gp-freemium-1.jpg
Binary files differ
diff --git a/docs/html/images/gp-games-home.png b/docs/html/images/gp-games-home.png
deleted file mode 100644
index 81b7f7a..0000000
--- a/docs/html/images/gp-games-home.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-growth-downloads.png b/docs/html/images/gp-growth-downloads.png
deleted file mode 100644
index 4a4b194..0000000
--- a/docs/html/images/gp-growth-downloads.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-launch-checklist-1.png b/docs/html/images/gp-launch-checklist-1.png
new file mode 100644
index 0000000..069cd69
--- /dev/null
+++ b/docs/html/images/gp-launch-checklist-1.png
Binary files differ
diff --git a/docs/html/images/gp-linking-ex-crop.png b/docs/html/images/gp-linking-ex-crop.png
new file mode 100644
index 0000000..c108651
--- /dev/null
+++ b/docs/html/images/gp-linking-ex-crop.png
Binary files differ
diff --git a/docs/html/images/gp-listing-0.jpg b/docs/html/images/gp-listing-0.jpg
new file mode 100644
index 0000000..a204f9f
--- /dev/null
+++ b/docs/html/images/gp-listing-0.jpg
Binary files differ
diff --git a/docs/html/images/gp-listing-1.png b/docs/html/images/gp-listing-1.png
new file mode 100644
index 0000000..ed15d96
--- /dev/null
+++ b/docs/html/images/gp-listing-1.png
Binary files differ
diff --git a/docs/html/images/gp-listing-2.jpg b/docs/html/images/gp-listing-2.jpg
new file mode 100644
index 0000000..73304f4
--- /dev/null
+++ b/docs/html/images/gp-listing-2.jpg
Binary files differ
diff --git a/docs/html/images/gp-listing-3.jpg b/docs/html/images/gp-listing-3.jpg
new file mode 100644
index 0000000..a4def2e
--- /dev/null
+++ b/docs/html/images/gp-listing-3.jpg
Binary files differ
diff --git a/docs/html/images/gp-listing-4.jpg b/docs/html/images/gp-listing-4.jpg
new file mode 100644
index 0000000..f580f86
--- /dev/null
+++ b/docs/html/images/gp-listing-4.jpg
Binary files differ
diff --git a/docs/html/images/gp-localization-trans-0.png b/docs/html/images/gp-localization-trans-0.png
new file mode 100644
index 0000000..2e7b73e
--- /dev/null
+++ b/docs/html/images/gp-localization-trans-0.png
Binary files differ
diff --git a/docs/html/images/gp-optimize-analytics.png b/docs/html/images/gp-optimize-analytics.png
new file mode 100644
index 0000000..81298d0
--- /dev/null
+++ b/docs/html/images/gp-optimize-analytics.png
Binary files differ
diff --git a/docs/html/images/gp-optimize-speed.png b/docs/html/images/gp-optimize-speed.png
new file mode 100644
index 0000000..6ebb995
--- /dev/null
+++ b/docs/html/images/gp-optimize-speed.png
Binary files differ
diff --git a/docs/html/images/gp-optimize.png b/docs/html/images/gp-optimize.png
new file mode 100644
index 0000000..e8388ea
--- /dev/null
+++ b/docs/html/images/gp-optimize.png
Binary files differ
diff --git a/docs/html/images/gp-optimizing-chat-bubbles.png b/docs/html/images/gp-optimizing-chat-bubbles.png
new file mode 100644
index 0000000..71ac767
--- /dev/null
+++ b/docs/html/images/gp-optimizing-chat-bubbles.png
Binary files differ
diff --git a/docs/html/images/gp-optimizing-image-4.jpg b/docs/html/images/gp-optimizing-image-4.jpg
new file mode 100644
index 0000000..949ca81
--- /dev/null
+++ b/docs/html/images/gp-optimizing-image-4.jpg
Binary files differ
diff --git a/docs/html/images/gp-payments-1.png b/docs/html/images/gp-payments-1.png
new file mode 100644
index 0000000..6eaca93
--- /dev/null
+++ b/docs/html/images/gp-payments-1.png
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-eula-violation.png b/docs/html/images/gp-policy-ads-eula-violation.png
deleted file mode 100644
index 204c320..0000000
--- a/docs/html/images/gp-policy-ads-eula-violation.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-impersonate-violation-app-ui.png b/docs/html/images/gp-policy-ads-impersonate-violation-app-ui.png
deleted file mode 100644
index a2a39a9..0000000
--- a/docs/html/images/gp-policy-ads-impersonate-violation-app-ui.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-impersonate-violation-sys-warning.png b/docs/html/images/gp-policy-ads-impersonate-violation-sys-warning.png
deleted file mode 100644
index f323b06..0000000
--- a/docs/html/images/gp-policy-ads-impersonate-violation-sys-warning.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-impersonate-violation.png b/docs/html/images/gp-policy-ads-impersonate-violation.png
deleted file mode 100644
index 385ae6e..0000000
--- a/docs/html/images/gp-policy-ads-impersonate-violation.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-interstitial-violation.png b/docs/html/images/gp-policy-ads-interstitial-violation.png
deleted file mode 100644
index 4871493..0000000
--- a/docs/html/images/gp-policy-ads-interstitial-violation.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-maturity-violation.png b/docs/html/images/gp-policy-ads-maturity-violation.png
deleted file mode 100644
index d41870e..0000000
--- a/docs/html/images/gp-policy-ads-maturity-violation.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-notif-attr-violation.png b/docs/html/images/gp-policy-ads-notif-attr-violation.png
deleted file mode 100644
index 3d6393b..0000000
--- a/docs/html/images/gp-policy-ads-notif-attr-violation.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-notif-attr.png b/docs/html/images/gp-policy-ads-notif-attr.png
deleted file mode 100644
index da39cfb..0000000
--- a/docs/html/images/gp-policy-ads-notif-attr.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-paywall-violation.png b/docs/html/images/gp-policy-ads-paywall-violation.png
deleted file mode 100644
index 8bbfd1b..0000000
--- a/docs/html/images/gp-policy-ads-paywall-violation.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-paywall.png b/docs/html/images/gp-policy-ads-paywall.png
deleted file mode 100644
index e7b1e19..0000000
--- a/docs/html/images/gp-policy-ads-paywall.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ads-terms.png b/docs/html/images/gp-policy-ads-terms.png
deleted file mode 100644
index dcbdf4a..0000000
--- a/docs/html/images/gp-policy-ads-terms.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ip-copyright-violation.png b/docs/html/images/gp-policy-ip-copyright-violation.png
deleted file mode 100644
index a4e96a8..0000000
--- a/docs/html/images/gp-policy-ip-copyright-violation.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ip-impersonation-violation.png b/docs/html/images/gp-policy-ip-impersonation-violation.png
deleted file mode 100644
index b1d9923..0000000
--- a/docs/html/images/gp-policy-ip-impersonation-violation.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-ip-trademark-violation.png b/docs/html/images/gp-policy-ip-trademark-violation.png
deleted file mode 100644
index c05b67b..0000000
--- a/docs/html/images/gp-policy-ip-trademark-violation.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-spam-negreview.png b/docs/html/images/gp-policy-spam-negreview.png
deleted file mode 100644
index f68eba3..0000000
--- a/docs/html/images/gp-policy-spam-negreview.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-policy-spam-reqrating.png b/docs/html/images/gp-policy-spam-reqrating.png
deleted file mode 100644
index 20e17c1..0000000
--- a/docs/html/images/gp-policy-spam-reqrating.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-premium-0.png b/docs/html/images/gp-premium-0.png
new file mode 100644
index 0000000..4bacc25
--- /dev/null
+++ b/docs/html/images/gp-premium-0.png
Binary files differ
diff --git a/docs/html/images/gp-rating-web.png b/docs/html/images/gp-rating-web.png
index 0885826..14582af 100644
--- a/docs/html/images/gp-rating-web.png
+++ b/docs/html/images/gp-rating-web.png
Binary files differ
diff --git a/docs/html/images/gp-sendto.png b/docs/html/images/gp-sendto.png
deleted file mode 100644
index 7409c14..0000000
--- a/docs/html/images/gp-sendto.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-start-button.png b/docs/html/images/gp-start-button.png
new file mode 100644
index 0000000..fa3d5e1
--- /dev/null
+++ b/docs/html/images/gp-start-button.png
Binary files differ
diff --git a/docs/html/images/gp-start-wallet-icon.png b/docs/html/images/gp-start-wallet-icon.png
new file mode 100644
index 0000000..3ecbcf6
--- /dev/null
+++ b/docs/html/images/gp-start-wallet-icon.png
Binary files differ
diff --git a/docs/html/images/gp-subs.png b/docs/html/images/gp-subs.png
deleted file mode 100644
index 9b3a7df..0000000
--- a/docs/html/images/gp-subs.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-subscription-0.jpg b/docs/html/images/gp-subscription-0.jpg
new file mode 100644
index 0000000..0c4b389
--- /dev/null
+++ b/docs/html/images/gp-subscription-0.jpg
Binary files differ
diff --git a/docs/html/images/gp-tab.png b/docs/html/images/gp-tab.png
deleted file mode 100644
index 4673d21..0000000
--- a/docs/html/images/gp-tab.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-tablet-quality-4.jpg b/docs/html/images/gp-tablet-quality-4.jpg
new file mode 100644
index 0000000..33dfcbd
--- /dev/null
+++ b/docs/html/images/gp-tablet-quality-4.jpg
Binary files differ
diff --git a/docs/html/images/gp-tablet-quality-5.jpg b/docs/html/images/gp-tablet-quality-5.jpg
new file mode 100644
index 0000000..668482a
--- /dev/null
+++ b/docs/html/images/gp-tablet-quality-5.jpg
Binary files differ
diff --git a/docs/html/images/gp-tablets-full-feature-set.png b/docs/html/images/gp-tablets-full-feature-set.png
new file mode 100644
index 0000000..fa04082
--- /dev/null
+++ b/docs/html/images/gp-tablets-full-feature-set.png
Binary files differ
diff --git a/docs/html/images/gp-top-new-paid.png b/docs/html/images/gp-top-new-paid.png
deleted file mode 100644
index d98d6ca..0000000
--- a/docs/html/images/gp-top-new-paid.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gp-your-user-0.jpg b/docs/html/images/gp-your-user-0.jpg
new file mode 100644
index 0000000..9286b54
--- /dev/null
+++ b/docs/html/images/gp-your-user-0.jpg
Binary files differ
diff --git a/docs/html/images/gp-your-user-2.jpg b/docs/html/images/gp-your-user-2.jpg
new file mode 100644
index 0000000..0f44e2a
--- /dev/null
+++ b/docs/html/images/gp-your-user-2.jpg
Binary files differ
diff --git a/docs/html/images/gpfe-developer.png b/docs/html/images/gpfe-developer.png
new file mode 100644
index 0000000..4b3251c
--- /dev/null
+++ b/docs/html/images/gpfe-developer.png
Binary files differ
diff --git a/docs/html/images/gpfe-educator.png b/docs/html/images/gpfe-educator.png
new file mode 100644
index 0000000..6e49a7f
--- /dev/null
+++ b/docs/html/images/gpfe-educator.png
Binary files differ
diff --git a/docs/html/images/gpfe-start-0.jpg b/docs/html/images/gpfe-start-0.jpg
new file mode 100644
index 0000000..e97381d
--- /dev/null
+++ b/docs/html/images/gpfe-start-0.jpg
Binary files differ
diff --git a/docs/html/images/gpp-cat-feature280-photo.png b/docs/html/images/gpp-cat-feature280-photo.png
deleted file mode 100644
index ae2749b..0000000
--- a/docs/html/images/gpp-cat-feature280-photo.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gpp-cat-feature280-puzzle.png b/docs/html/images/gpp-cat-feature280-puzzle.png
deleted file mode 100644
index db203c6..0000000
--- a/docs/html/images/gpp-cat-feature280-puzzle.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/gpp-cat-feature280-sports.png b/docs/html/images/gpp-cat-feature280-sports.png
deleted file mode 100644
index dcd70aa..0000000
--- a/docs/html/images/gpp-cat-feature280-sports.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/images/play_dev.jpg b/docs/html/images/play_dev.jpg
new file mode 100644
index 0000000..6aae165
--- /dev/null
+++ b/docs/html/images/play_dev.jpg
Binary files differ
diff --git a/docs/html/images/play_dev.png b/docs/html/images/play_dev_sm.png
similarity index 100%
rename from docs/html/images/play_dev.png
rename to docs/html/images/play_dev_sm.png
Binary files differ
diff --git a/docs/html/images/plus.jpg b/docs/html/images/plus.jpg
new file mode 100644
index 0000000..652aa1a
--- /dev/null
+++ b/docs/html/images/plus.jpg
Binary files differ
diff --git a/docs/html/images/video-Colopl.png b/docs/html/images/video-Colopl.png
deleted file mode 100644
index 0ee88c6..0000000
--- a/docs/html/images/video-Colopl.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/index.jd b/docs/html/index.jd
index 99a469a..a4b0683 100644
--- a/docs/html/index.jd
+++ b/docs/html/index.jd
@@ -39,13 +39,12 @@
<script src="//ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js"></script>
<div style="box-shadow: 3px 10px 18px 1px #999;width:600px;height:336px">
<div id="ytapiplayer">
- <a href="http://www.youtube.com/watch?v=i2uvYI6blEE"><img width=600
- src="https://i1.ytimg.com/vi/i2uvYI6blEE/maxresdefault.jpg"></a><!--You need Flash player 8+ and JavaScript enabled to view this video. -->
+ <a href="http://www.youtube.com/watch?v=WWArLD6nqrk"><img width=600 src="{@docRoot}images/video-kiwi.jpg"></a><!--You need Flash player 8+ and JavaScript enabled to view this video. -->
</div>
<script type="text/javascript">
var params = { allowScriptAccess: "always" };
var atts = { id: "ytapiplayer" };
- swfobject.embedSWF("//www.youtube.com/v/i2uvYI6blEE?enablejsapi=1&playerapiid=ytplayer&version=3&HD=1;rel=0;showinfo=0;modestbranding;origin=developer.android.com;autohide=1",
+ swfobject.embedSWF("//www.youtube.com/v/WWArLD6nqrk?enablejsapi=1&playerapiid=ytplayer&version=3&HD=1;rel=0;showinfo=0;modestbranding;origin=developer.android.com;autohide=1",
"ytapiplayer", "600", "336", "8", null, null, params, atts);
// Callback used to pause/resume carousel based on video state
@@ -74,9 +73,10 @@
</div>
</div>
<div class="content-right col-4">
- <h1 style="white-space:nowrap;line-height:1.2em;">Developer Story: <br />Box Inc.</h1>
- <p>Box is a cloud-based platform and app for users to share business information. See how they got over 5 million downloads by leveraging the flexibility in the Android platform.</p>
- <p><a href="{@docRoot}distribute/googleplay/spotlight/index.html" class="button">Watch more videos </a></p>
+ <h1 style="white-space:nowrap;line-height:1.2em;">Developer Story: <br />Kiwi, Inc.</h1>
+ <p>Game developer Kiwi has had five titles in the top 25 grossing on Google Play. Hear how Google Play
+ has helped them double revenue every six months.</p>
+ <p><a href="{@docRoot}distribute/stories/index.html" class="button">Watch more videos </a></p>
</div>
</li>
diff --git a/docs/html/jd_collections.js b/docs/html/jd_collections.js
new file mode 100644
index 0000000..8a4ac47
--- /dev/null
+++ b/docs/html/jd_collections.js
@@ -0,0 +1,697 @@
+var RESOURCE_COLLECTIONS = {
+ "launch/static": {
+ "title": "",
+ "resources": [
+ "http://www.youtube.com/watch?v=1RIz-cmTQB4",
+ "http://www.youtube.com/watch?v=MVBMWDzyHAI",
+ "http://android-developers.blogspot.com/2013/11/app-translation-service-now-available.html",
+ "http://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
+ "http://android-developers.blogspot.com/2013/11/bring-your-apps-into-classroom-with.html",
+ "distribute/essentials/quality/tablets.html",
+ "distribute/users/build-buzz.html",
+ "distribute/monetize/premium.html",
+ "distribute/monetize/freemium.html",
+ "distribute/monetize/ads.html",
+ "distribute/essentials/best-practices/apps.html",
+ "distribute/essentials/best-practices/games.html",
+ "distribute/users/know-your-user.html",
+ "distribute/googleplay/developer-console.html"
+ ]
+ },
+ "distribute/gp/gplanding": {
+ "resources": [
+ "distribute/googleplay/about.html",
+ "distribute/googleplay/start.html",
+ "distribute/googleplay/developer-console.html"
+ ]
+ },
+ "distribute/gp/gpfelanding": {
+ "resources": [
+ "distribute/googleplay/edu/about.html",
+ "distribute/googleplay/edu/start.html",
+ "distribute/googleplay/edu/faq.html"
+ ]
+ },
+ "distribute/essentials": {
+ "resources": [
+ "distribute/essentials/quality/core.html",
+ "distribute/essentials/quality/tablets.html",
+ "distribute/essentials/gpfe-guidelines.html",
+ "distribute/essentials/optimizing-your-app.html",
+ "distribute/essentials/best-practices/apps.html",
+ "distribute/essentials/best-practices/games.html"
+ ]
+ },
+ "distribute/users": {
+ "title": "",
+ "resources": [
+ "distribute/users/know-your-user.html",
+ "distribute/users/your-listing.html",
+ "distribute/users/build-buzz.html",
+ "distribute/users/build-community.html",
+ "distribute/users/expand-to-new-markets.html"
+ ]
+ },
+ "distribute/engagelanding": {
+ "resources": [
+ "distribute/engage/widgets.html",
+ "distribute/engage/notifications.html",
+ "distribute/engage/gcm.html",
+ "distribute/engage/easy-signin.html",
+ "distribute/engage/deep-linking.html",
+ "distribute/engage/game-services.html",
+ "distribute/engage/app-updates.html",
+ "distribute/engage/community.html",
+ "distribute/engage/video.html"
+ ]
+ },
+ "distribute/monetize": {
+ "resources": [
+ "distribute/monetize/premium.html",
+ "distribute/monetize/freemium.html",
+ "distribute/monetize/subscriptions.html",
+ "distribute/monetize/ecommerce.html",
+ "distribute/monetize/ads.html",
+ "distribute/monetize/payments.html"
+ ]
+ },
+ "distribute/tools/checklists": {
+ "title": "",
+ "resources": [
+ "distribute/tools/launch-checklist.html",
+ "distribute/tools/localization-checklist.html"
+ ]
+ },
+ "distribute/tools/promote": {
+ "resources": [
+ "distribute/tools/promote/device-art.html",
+ "distribute/tools/promote/badges.html",
+ "distribute/tools/promote/linking.html"
+ ]
+ },
+ "distribute/tools/support": {
+ "title": "Google Play",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer",
+ "https://support.google.com/googleplay/android-developer/answer/4430948",
+ "support.html"
+ ]
+ },
+ "distribute/tools/news": {
+ "title": "",
+ "resources": [
+ "http://android-developers.blogspot.com/",
+ "https://plus.google.com/+AndroidDevelopers/"
+ ]
+ },
+ "distribute/tools/more": {
+ "title": "Google Play",
+ "resources": [
+ "distribute/tools/promote/brand.html",
+ "distribute/tools/open-distribution.html",
+ "about/dashboards/index.html"
+ ]
+ },
+ "distribute/googleplay": {
+ "title": "Google Play",
+ "resources": [
+ "distribute/googleplay/developer-console.html",
+ "distribute/essentials/best-practices/apps.html",
+ "distribute/tools/launch-checklist.html",
+ "distribute/essentials/best-practices/games.html",
+ ]
+ },
+ "distribute/googleplay/gettingstarted": {
+ "title": "Get Started",
+ "resources": [
+ "distribute/googleplay/developer-console.html",
+ "https://support.google.com/googleplay/android-developer/answer/113468",
+ "https://support.google.com/googleplay/android-developer/answer/138294",
+ "https://support.google.com/googleplay/android-developer"
+ ]
+ },
+ "distribute/googleplay/developerconsole": {
+ "title": "Developer Console",
+ "resources": [
+ "google/play/billing/index.html",
+ "https://support.google.com/googleplay/android-developer/answer/138294"
+ ]
+ },
+ "distribute/googleplay/gpfe/highlight": {
+ "title": "About Google Play for Education",
+ "resources": [
+ "http://youtu.be/vzvpcEffvaE"
+ ]
+ },
+ "distribute/googleplay/gpfe/dev/about": {
+ "title": "About Google Play for Education / Developers",
+ "resources": [
+ "distribute/googleplay/edu/start.html",
+ "distribute/essentials/gpfe-guidelines.html",
+ "distribute/googleplay/edu/faq.html",
+ "distribute/essentials/quality/tablets.html"
+ ]
+ },
+ "distribute/googleplay/gpfe/dev": {
+ "title": "About Google Play for Education / Developers",
+ "resources": [
+ "distribute/googleplay/edu/about.html",
+ "distribute/essentials/gpfe-guidelines.html",
+ "distribute/essentials/quality/tablets.html",
+ "distribute/googleplay/developer-console.html",
+ "http://play.google.com/about/developer-distribution-agreement-addendum.html",
+ ]
+ },
+ "distribute/googleplay/aboutgpfe/educators/about": {
+ "title": "About Google Play for Education / Educators",
+ "resources": [
+ "http://www.google.com/edu/tablets/",
+ "http://www.youtube.com/watch?v=haEmsMo0f3w"
+ ]
+ },
+ "distribute/googleplay/aboutgpfe/educators": {
+ "title": "About Google Play for Education / Educators",
+ "resources": [
+ "http://www.google.com/edu/tablets/",
+ "http://youtu.be/vzvpcEffvaE"
+ ]
+ },
+ "distribute/googleplay/gettingstartedgpfe/educators": {
+ "title": "About Google Play for Education / Educators",
+ "resources": [
+ "http://www.google.com/edu/tablets/",
+ "http://youtu.be/vzvpcEffvaE"
+ ]
+ },
+ "distribute/essentials/eduessentials/developers": {
+ "title": "",
+ "resources": [
+ "distribute/googleplay/developer-console.html",
+ "distribute/googleplay/edu/start.html",
+ "distribute/googleplay/edu/faq.html"
+ ]
+ },
+ "distribute/essentials/eduessentials/educators": {
+ "title": "",
+ "resources": [
+ "http://www.google.com/edu/tablets/",
+ "distribute/essentials/quality/tablets.html",
+ ]
+ },
+ "distribute/essentials/optimizing": {
+ "title": "Optimizing Your App",
+ "resources": [
+ "design/index.html",
+ "training/articles/perf-anr.html",
+ "http://android-developers.blogspot.com/2013/10/improved-app-insight-by-linking-google.html"
+ ]
+ },
+ "distribute/users/knowyouruser": {
+ "title": "",
+ "resources": [
+ "distribute/essentials/optimizing-your-app.html",
+ "http://www.youtube.com/watch?v=RRelFvc6Czo",
+ "distribute/stories/localization.html"
+ ]
+ },
+ "distribute/users/buildbuzz": {
+ "title": "",
+ "resources": [
+ "distribute/tools/promote/badges.html",
+ "distribute/tools/promote/linking.html",
+ "distribute/tools/promote/device-art.html",
+ "http://plus.google.com/+GooglePlay"
+ ]
+ },
+ "distribute/users/createagreatlisting": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/answer/1078870",
+ "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+ "distribute/tools/launch-checklist.html",
+ "http://android-developers.blogspot.com/2013/07/making-beautiful-android-app-icons.html",
+ "http://android-developers.blogspot.com/2012/12/localize-your-promotional-graphics-on.html",
+ "http://android-developers.blogspot.com/2013/10/making-your-app-content-more-accessible.html"
+ ]
+ },
+ "distribute/users/buildcommunity": {
+ "title": "",
+ "resources": [
+ "distribute/googleplay/developer-console.html",
+ "https://support.google.com/groups/answer/46601",
+ "https://support.google.com/plus/topic/2888488",
+ "http://www.youtube.com/yt/dev/"
+ ]
+ },
+ "distribute/toolsreference/bestpractices/apps": {
+ "title": "",
+ "resources": [
+ "distribute/googleplay/developer-console.html",
+ "http://android-developers.blogspot.com/"
+ ]
+ },
+ "distribute/toolsreference/bestpractices/games": {
+ "title": "",
+ "resources": [
+ "google/play-services/games.html",
+ "http://android-developers.blogspot.com/",
+ "distribute/googleplay/developer-console.html",
+ "http://www.youtube.com/watch?v=1RIz-cmTQB4"
+ ]
+ },
+ "distribute/essentials/corequalityguidelines/visualdesign": {
+ "title": "",
+ "resources": [
+ "design/index.html",
+ "design/patterns/navigation.html",
+ "design/patterns/actionbar.html",
+ "design/style/iconography.html",
+ "design/patterns/notifications.html"
+ ]
+ },
+ "distribute/essentials/corequalityguidelines/functionality": {
+ "title": "",
+ "resources": [
+ "http://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html",
+ "guide/components/tasks-and-back-stack.html",
+ "training/basics/activity-lifecycle/recreating.html"
+ ]
+ },
+ "distribute/essentials/core/performance": {
+ "title": "",
+ "resources": [
+ "http://android-developers.blogspot.com/2010/12/new-gingerbread-api-strictmode.html",
+ "training/articles/perf-anr.html",
+ "http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html"
+ ]
+ },
+ "distribute/essentials/core/play": {
+ "title": "",
+ "resources": [
+ "distribute/tools/launch-checklist.html",
+ "http://play.google.com/about/developer-content-policy.html",
+ "https://support.google.com/googleplay/android-developer/answer/188189",
+ "https://support.google.com/googleplay/android-developer/answer/1078870",
+ "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+ "https://support.google.com/googleplay/android-developer/answer/113477"
+ ]
+ },
+ "distribute/essentials/tabletguidelines/optimize": {
+ "title": "",
+ "resources": [
+ "design/style/metrics-grids.html",
+ "design/style/devices-displays.html",
+ "guide/practices/screens_support.html",
+ //"guide/practices/screens_support.html#ConfigurationExamples",
+ ]
+ },
+ "distribute/essentials/tabletguidelines/extrascreen": {
+ "title": "",
+ "resources": [
+ "design/patterns/multi-pane-layouts.html",
+ "training/design-navigation/multiple-sizes.html",
+ "training/multiscreen/index.html",
+ ]
+ },
+ "distribute/essentials/tabletguidelines/assets": {
+ "title": "",
+ "resources": [
+ "design/style/iconography.html",
+ "guide/topics/resources/providing-resources.html",
+ "guide/practices/screens_support.html",
+ "training/basics/supporting-devices/screens.html"
+ ]
+ },
+ "distribute/essentials/tabletguidelines/fonts": {
+ "title": "",
+ "resources": [
+ "design/style/metrics-grids.html",
+ "design/style/typography.html",
+ "guide/practices/screens_support.html",
+ "training/multiscreen/screendensities.html"
+ ]
+ },
+ "distribute/essentials/tabletguidelines/widgets": {
+ "title": "",
+ "resources": [
+ "guide/topics/appwidgets/index.html#MetaData",
+ "guide/topics/appwidgets/index.html",
+ "design/patterns/widgets.html"
+ ]
+ },
+ "distribute/essentials/tabletguidelines/versions": {
+ "title": "",
+ "resources": [
+ "guide/topics/manifest/uses-sdk-element.html#ApiLevels",
+ "guide/topics/manifest/uses-sdk-element.html",
+ "training/basics/supporting-devices/platforms.html"
+ ]
+ },
+ "distribute/essentials/tabletguidelines/hardware": {
+ "title": "",
+ "resources": [
+ "guide/topics/manifest/uses-feature-element.html",
+ "guide/topics/manifest/uses-feature-element.html#testing"
+ ]
+ },
+ "distribute/essentials/tabletguidelines/tabletscreens": {
+ "title": "",
+ "resources": [
+ "guide/practices/screens_support.html#DeclaringScreenSizeSupport",
+ "guide/practices/screens_support.html"
+ ]
+ },
+ "distribute/essentials/tabletguidelines/showcase": {
+ "title": "",
+ "resources": [
+ "distribute/tools/launch-checklist.html",
+ "https://play.google.com/apps/publish/",
+ "distribute/tools/promote/badges.html",
+ "distribute/tools/promote/device-art.html"
+ ]
+ },
+ "distribute/essentials/tabletguidelines/googleplay": {
+ "title": "",
+ "resources": [
+ "http://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
+ "google/play/filters.html"
+ ]
+ },
+ "distribute/essentials/tabletguidelines": {
+ "title": "",
+ "resources": [
+ "distribute/essentials/quality/core.html",
+ "http://android-developers.blogspot.com/2013/10/more-visibility-for-tablet-apps-in.html",
+ "distribute/tools/launch-checklist.html",
+ "distribute/tools/promote/device-art.html"
+ ]
+ },
+ "distribute/getusers/notifications": {
+ "title": "",
+ "resources": [
+ "design/patterns/notifications.html",
+ "distribute/engage/gcm.html",
+ "http://play.google.com/about/developer-content-policy.html"
+ ]
+ },
+ "distribute/engage/widgets": {
+ "title": "",
+ "resources": [
+ "design/patterns/widgets.html",
+ "guide/topics/appwidgets/index.html"
+ ]
+ },
+ "distribute/getusers/expandnewmarkets": {
+ "title": "",
+ "resources": [
+ "distribute/tools/localization-checklist.html",
+ "https://support.google.com/googleplay/android-developer/table/3541286",
+ "distribute/stories/localization.html",
+ "distribute/tools/promote/badges.html",
+ "distribute/tools/promote/device-art.html",
+ "http://www.youtube.com/watch?v=SkHHPf3EdzE"
+ ]
+ },
+ "distribute/engage/gcm": {
+ "title": "",
+ "resources": [
+ "google/gcm/index.html",
+ "http://developer.chrome.com/apps/cloudMessagingV2",
+ "http://www.youtube.com/watch?v=y76rjidm8cU"
+ ]
+ },
+ "distribute/engage/googleplaygames": {
+ "title": "",
+ "resources": [
+ "google/play-services/games.html",
+ "distribute/essentials/best-practices/games.html"
+ ]
+ },
+ "distribute/engage/gplus": {
+ "title": "",
+ "resources": [
+ "google/play-services/plus.html",
+ "google/play-services/games.html",
+ "https://developers.google.com/+/mobile/android/share/interactive-post",
+ "https://developers.google.com/+/mobile/android/share/deep-link"
+ ]
+ },
+ "distribute/engage/community": {
+ "title": "",
+ "resources": [
+ "distribute/users/build-community.html",
+ "distribute/engage/video.html"
+ ]
+ },
+ "distribute/engage/deeplinks": {
+ "title": "",
+ "resources": [
+ "distribute/engage/easy-signin.html",
+ "https://developers.google.com/app-indexing/",
+ "https://developers.google.com/+/mobile/android/share/interactive-post"
+ ]
+ },
+ "distribute/engage/appupdates": {
+ "title": "",
+ "resources": [
+ "distribute/essentials/optimizing-your-app.html",
+ "distribute/tools/launch-checklist.html",
+ "distribute/googleplay/developer-console.html",
+ "design/patterns/notifications.html"
+ ]
+ },
+ "distribute/engage/video/more": {
+ "title": "",
+ "resources": [
+ "http://www.youtube.com/yt/dev/",
+ "distribute/essentials/best-practices/games.html",
+ "http://www.youtube.com/watch?v=RRelFvc6Czo"
+ ]
+ },
+ "distribute/engage/community": {
+ "title": "",
+ "resources": [
+ "distribute/users/build-community.html",
+ "distribute/engage/video.html"
+ ]
+ },
+ "distribute/engage/kiwi": {
+ "title": "",
+ "resources": [
+ "http://www.youtube.com/watch?v=WWArLD6nqrk"
+ ]
+ },
+ "distribute/toolsreference/gpfefaq": {
+ "title": "",
+ "resources": [
+ "http://www.google.com/edu/tablets/",
+ "distribute/googleplay/edu/start.html",
+ "http://play.google.com/about/developer-distribution-agreement-addendum.html",
+ "distribute/essentials/quality/core.html",
+ "distribute/essentials/quality/tablets.html"
+ ]
+ },
+ "distribute/toolsreference/localizationchecklist/identifylocales": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/answer/138294"
+ ]
+ },
+ "distribute/tools/loc/designforloc": {
+ "title": "",
+ "resources": [
+ "http://android-developers.blogspot.com/2013/03/native-rtl-support-in-android-42.html",
+ "guide/topics/resources/string-resource.html#Plurals",
+ "guide/topics/resources/string-resource.html",
+ "reference/java/util/Locale.html"
+ ]
+ },
+ "distribute/toolsreference/localizationchecklist/managestrings": {
+ "title": "",
+ "resources": [
+ "guide/topics/resources/string-resource.html",
+ "design/style/writing.html",
+ "http://en.wikipedia.org/wiki/XLIFF"
+ ]
+ },
+ "distribute/toolsreference/localizationchecklist/translatestrings": {
+ "title": "",
+ "resources": [
+ "distribute/stories/localization.html",
+ ]
+ },
+ "distribute/toolsreference/localizationchecklist/preplaunch": {
+ "title": "",
+ "resources": [
+ "distribute/tools/promote/badges.html",
+ "distribute/tools/promote/device-art.html"
+ ]
+ },
+ "distribute/toolsreference/localizationchecklist/supportlaunch": {
+ "title": "",
+ "resources": [
+ "distribute/tools/launch-checklist.html",
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/understanding": {
+ "title": "",
+ "resources": [
+ "tools/publishing/publishing_overview.html",
+ "tools/publishing/preparing.html"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/policies": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/answer/4430948",
+ "https://support.google.com/googleplay/android-developer/topic/2364761",
+ "https://support.google.com/googleplay/android-developer"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/quality": {
+ "title": "",
+ "resources": [
+ "distribute/essentials/quality/core.html",
+ "distribute/essentials/quality/tablets.html",
+ "distribute/essentials/gpfe-guidelines.html"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/rating": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/answer/188189",
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/country": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/answer/138294"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/size": {
+ "title": "",
+ "resources": [
+ "google/play/expansion-files.html",
+ "tools/help/proguard.html"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/platform": {
+ "title": "",
+ "resources": [
+ "guide/practices/screens_support.html",
+ "about/dashboards/index.html",
+ "guide/topics/manifest/uses-sdk-element.html"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/price": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/table/3541286",
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/purchasemethod": {
+ "title": "",
+ "resources": [
+ "google/play/billing/index.html",
+ "google/play/billing/billing_subscriptions.html"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/setprice": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/answer/1169947",
+ "https://support.google.com/googleplay/android-developer/answer/138412",
+ "https://support.google.com/googleplay/android-developer/answer/112622",
+ "https://support.google.com/googleplay/android-developer/answer/138000"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/localization": {
+ "title": "",
+ "resources": [
+ "distribute/tools/localization-checklist.html",
+ "guide/topics/resources/localization.html",
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/graphics": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/answer/1078870",
+ "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/productdetails": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/answer/113475",
+ "https://support.google.com/googleplay/android-developer/answer/1078870"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/badges": {
+ "title": "",
+ "resources": [
+ "distribute/tools/promote/badges.html",
+ "distribute/tools/promote/linking.html"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/finalchecks": {
+ "title": "",
+ "resources": [
+ "http://play.google.com/about/developer-content-policy.html",
+ "https://support.google.com/googleplay/android-developer/answer/113476",
+ "support.html"
+ ]
+ },
+ "distribute/toolsreference/launchchecklist/afterlaunch": {
+ "title": "",
+ "resources": [
+ "https://support.google.com/googleplay/android-developer/answer/113477",
+ "https://support.google.com/googleplay/android-developer/answer/1153479",
+ "https://support.google.com/payments/answer/2741495",
+ "distribute/essentials/optimizing-your-app.html"
+ ]
+ },
+ "distribute/monetize/premium": {
+ "title": "",
+ "resources": [
+ "google/play/billing/index.html",
+ "https://support.google.com/googleplay/android-developer/answer/4407611"
+ ]
+ },
+ "distribute/monetize/freemium": {
+ "title": "",
+ "resources": [
+ "google/play/billing/index.html",
+ "https://support.google.com/googleplay/android-developer/answer/4407611"
+ ]
+ },
+ "distribute/monetize/subscriptions": {
+ "title": "",
+ "resources": [
+ "google/play/billing/billing_subscriptions.html",
+ "https://support.google.com/googleplay/android-developer/answer/4407611"
+ ]
+ },
+ "distribute/monetize/ecommerce": {
+ "title": "",
+ "resources": [
+ "https://developers.google.com/wallet/instant-buy/",
+ "https://support.google.com/googleplay/android-developer/answer/4407611"
+ ]
+ },
+ "distribute/monetize/advertising": {
+ "title": "",
+ "resources": [
+ "http://www.google.com/ads/admob/#subid=us-en-et-dac",
+ "http://www.google.com/doubleclick/publishers/small-business/index.html",
+ "http://support.google.com/googleplay/android-developer/topic/2985714",
+ "training/monetization/ads-and-ux.html"
+ ]
+ },
+ "distribute/monetize/paymentmethods": {
+ "title": "",
+ "resources": [
+ "https://play.google.com/about/giftcards/",
+ "https://support.google.com/googleplay/answer/2651410"
+ ]
+ },
+}
diff --git a/docs/html/jd_extras.js b/docs/html/jd_extras.js
new file mode 100644
index 0000000..f26b747
--- /dev/null
+++ b/docs/html/jd_extras.js
@@ -0,0 +1,1104 @@
+/* Metadata represendations of resources that are outside of the autogenerated
+ local resource lists, or that override local resource representations.
+
+ Resources listed here are referenced from sitemap sections and collections,
+ matched by url string if there is no resource existing in ALL_RESOURCES.
+
+ Currently, these articles can override only the generated resources
+ in DISTRIBUTE_RESOURCES. A representation defined here will not be applied
+ when a collection or section specifies a url that's not in DISTRIBUTE_RESOURCEs.
+ Also
+ So if a section url refers to a static doc that's
+ not in a distribute section, you need to create an item for
+ it in this file. Fix is to compare across
+ ALL_RESOURCES_BY_URL. */
+
+DISTRIBUTE_RESOURCES = DISTRIBUTE_RESOURCES.concat([
+ {
+ "title":"Developer Registration",
+ "titleFriendly":"",
+ "summary":"Additional information about the registration process.",
+ "url":"https://support.google.com/googleplay/android-developer/answer/113468",
+ "group":"",
+ "keywords": [],
+ "tags": [],
+ "image":"images/play_dev.jpg",
+ "type":"google"
+ },
+ {
+ "title": "Google Play Distribution and Seller Countries",
+ "titleFriendly":"",
+ "summary": "List of countries and territories where you can distribute your apps in Google Play.",
+ "url":"https://support.google.com/googleplay/android-developer/answer/138294",
+ "group":"",
+ "keywords": [],
+ "tags": [],
+ "image":"images/play_dev.jpg",
+ "type":"google"
+ },
+ {
+ "title":"Google Play Content Policies",
+ "titleFriendly":"",
+ "summary":"Details on policies relating to your developer account and app distribution is governed.",
+ "url":"https://support.google.com/googleplay/android-developer/topic/3453577",
+ "group":"",
+ "keywords": [],
+ "tags": ["#developersupport"],
+ "image":"images/play_dev.jpg",
+ "type":"google"
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["#developersupport #termsandpolicies"],
+ "url": "https://support.google.com/googleplay/android-developer/answer/4407611",
+ "timestamp": 1194884220000,
+ "image": 'images/play_dev.jpg',
+ "title": "Google Play Terms and Policies",
+ "summary": "Developer terms and policies that apply when you distribute apps in Google Play.",
+ "keywords": [],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "title":"Google Play Policy Center",
+ "titleFriendly":"",
+ "summary":"A central resource for you to learn about Google Play policies and guidelines.",
+ "url":"https://support.google.com/googleplay/android-developer/answer/4430948",
+ "group":"",
+ "keywords": [],
+ "tags": [],
+ "image":"http://storage.googleapis.com/support-kms-prod/SNP_712EA2784949DDF085C46E3BE7B1DC618A09_4389397_en_v0",
+ "type":"google"
+ },
+ {
+ "title":"Developer Help Center",
+ "titleFriendly":"",
+ "summary":"Complete details on getting started, publishing, troubleshooting, and more.",
+ "url":"https://support.google.com/googleplay/android-developer",
+ "group":"",
+ "keywords": [],
+ "tags": [],
+ "image":"images/play_dev.jpg",
+ "type":"google"
+ },
+ {
+ "title":"Google for Education",
+ "titleFriendly":"",
+ "summary":"Find out more about how Google can support your work with apps and tablets.",
+ "url":"http://www.google.com/edu/tablets/",
+ "group":"",
+ "keywords": [],
+ "tags": [],
+ "image":"distribute/images/gp-edu-apps-image.jpg",
+ "type":"google"
+ },
+ {
+ "title":"Keeping Your App Responsive",
+ "titleFriendly":"",
+ "summary":"This document describes how the Android system determines whether an application is not responding and provides guidelines for ensuring that your application stays responsive.",
+ "url":"training/articles/perf-anr.html",
+ "group":"",
+ "keywords": [],
+ "tags": [],
+ "image":"",
+ "type":"google"
+ },
+ {
+ "title":"Google Play Game Services",
+ "titleFriendly":"",
+ "summary":"Tools to offer a better game experience.",
+ "url":"google/play-services/games.html",
+ "group":"",
+ "keywords": [],
+ "tags": [],
+ "image":"",
+ "type":"google"
+ },
+
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "versions", "blog", "googleplay"
+ ],
+ "url": "http://android-developers.blogspot.com/",
+ "timestamp": 1004884220000,
+ "image": "images/blog.jpg",
+ "title": "Android Developers Blog",
+ "summary": "Follow the latest news on Android design, development, and distribution.",
+ "keywords": [],
+ "type": "blog",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://android-developers.blogspot.com/2011/11/making-android-games-that-play-nice.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Making Android Apps that Play Nice",
+ "summary": "Audio lifecycle and expected audio behaviors for Android apps.",
+ "keywords": [],
+ "type": "blog",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://android-developers.blogspot.com/2010/07/multithreading-for-performance.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Multithreading for Performance",
+ "summary": "Ways to improve performance through multi-threading.",
+ "keywords": [],
+ "type": "blog",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://play.google.com/about/developer-content-policy.html",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Developer Program Policies",
+ "summary": "Guidelines acceptable content in Google Play. Please read and understand the policies before publishing.",
+ "keywords": [],
+ "type": "google",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/188189",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Rating your application content for Google Play",
+ "summary": "How to choose the appropriate content ratings level for your apps.",
+ "keywords": [],
+ "type": "support",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://android-developers.blogspot.com/2011/10/android-market-featured-image.html",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Google Play Featured Image Guidelines",
+ "summary": "How to create attractive, effective Featured Images for your apps.",
+ "keywords": [],
+ "type": "support",
+ "titleFriendly": ""
+ },
+{
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/113477",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Supporting your users",
+ "summary": "Options for supporting users.",
+ "keywords": [],
+ "type": "support",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "guide/practices/screens_support.html#ConfigurationExamples",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Configuration examples",
+ "summary": "How to declare layouts and other resources for specific screen sizes.",
+ "keywords": [],
+ "type": "design",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "training/design-navigation/multiple-sizes.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Planning for Multiple Touchscreen Sizes",
+ "summary": "",
+ "keywords": [],
+ "type": "design",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "training/multiscreen/index.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Designing for Multiple Screens",
+ "summary": "Designing an intuitive, effective navigation for tablets and other devices.",
+ "keywords": [],
+ "type": "design",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "guide/topics/resources/providing-resources.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Providing Resources",
+ "summary": "Layouts and drawable resources for specific ranges of device screens.",
+ "keywords": [],
+ "type": "design",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "training/basics/supporting-devices/screens.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Supporting Different Screens",
+ "summary": "Optimizing the user experience for different screen sizes and densities.",
+ "keywords": [],
+ "type": "design",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "guide/topics/appwidgets/index.html#MetaData",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Adding the AppWidgetProviderInfo Metadata",
+ "summary": "How to set the height and width dimensions of a widget.",
+ "keywords": [],
+ "type": "design",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "guide/topics/manifest/uses-sdk-element.html#ApiLevels",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Android API Levels",
+ "summary": "Introduction to API levels and how they relate to compatibility.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "guide/practices/screens_support.html#DeclaringScreenSizeSupport",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Declaring screen size support",
+ "summary": "How to declare support for screen sizes in your app\'s manifest.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "guide/topics/manifest/uses-feature-element.html#testing",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Checking for hardware feature requirements",
+ "summary": "Determining an app’s hardware and software requirements.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://play.google.com/apps/publish/",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Google Play Developer Console",
+ "summary": "The tools console for publishing your app.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://youtu.be/SkHHPf3EdzE",
+ "timestamp": 1194884220000,
+ "image": "http://i1.ytimg.com/vi/SkHHPf3EdzE/maxresdefault.jpg",
+ "title": "Level Up Your Android Game",
+ "summary": "Learn how to take your game to the next level on Google Play.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://developers.google.com/+/mobile/android/share/interactive-post",
+ "timestamp": 1194884220000,
+ "image": 'images/google/gps-googleplus.png',
+ "title": "Sharing interactive posts to Google+ from your Android app",
+ "summary": "Interactive posts provide an easy and prominent way to allow users to share your site or app with their friends and invite them to take a specific action.",
+ "keywords": ["Interactive", "Google+"],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://play.google.com/about/developer-distribution-agreement.html",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Developer Distribution Agreement",
+ "summary": "Terms for distributing and selling apps and in-app products in Google Play.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/113417",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Inappropriate content in comments and applications",
+ "summary": "More details on what content is appropriate.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/legal/troubleshooter/1114905",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Removing content from Google",
+ "summary": "Find how how to request the removal of content that infringes on your trademark.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://play.google.com/about/developer-distribution-agreement-addendum.html",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Google Play for Education Addendum",
+ "summary": "Review the education-specific requirements.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://android-developers.blogspot.com/2013/03/native-rtl-support-in-android-42.html",
+ "timestamp": null,
+ "image": null,
+ "title": "Native RTL Support in Android 4.2",
+ "summary": "Blog post that explains how to support RTL in your UI.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "guide/topics/resources/string-resource.html#Plurals",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Quantity Strings (Plurals)",
+ "summary": "How to work with string plurals according to rules of grammar in a given locale.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "reference/java/util/Locale.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Locale",
+ "summary": "Determine what CLDR data or version of the Unicode spec a particular Android platform version uses.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "guide/topics/resources/string-resource.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "String Resources",
+ "summary": "Explains how to use string resources in your UI.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "distribute/tools/localization-checklist.html#strings",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Manage strings for localization",
+ "summary": "Guidance on having your strings translation ready.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "tools/publishing/publishing_overview.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "General Publishing Overview",
+ "summary": "Start here for an overview of publishing options for Android apps.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "tools/publishing/preparing.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Preparing for Release",
+ "summary": "Developer documentation on how to build the signed, release-ready APK. This process is the same for all Android apps.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "distribute/googleplay/policies/index.html",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Google Play Policies and Guidelines",
+ "summary": "An overview of Google Play policies for spam, intellectual property, and ads, with examples of common problems.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/topic/2364761",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Policy and Best Practices",
+ "summary": "Help Center document describing various content policies and processes.",
+ "keywords": [],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "google/play/expansion-files.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "APK Expansion Files",
+ "summary": "Developer documentation describing APK Expansion Files and how to support them in your app.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "tools/help/proguard.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "ProGuard",
+ "summary": "Developer documentation describing how to use ProGuard to shrink, optimize, and obfuscate your code prior to release.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "title":"Dashboards",
+ "titleFriendly":"",
+ "summary":"This page provides information about the relative number of devices that share a certain characteristic, such as Android version or screen size. This information may help you prioritize efforts for supporting different devices by revealing which devices…",
+ "url":"about/dashboards/index.html",
+ "group":"",
+ "keywords": ["android","dashboard","platforms","versions"],
+ "tags": ["#ecosystem","#versions","#whatsnew"],
+ "image":"http://chart.googleapis.com/chart?chl=GL%201.1%20only%7CGL%202.0%7CGL%203.0&chf=bg%2Cs%2C00000000&chd=t%3A0.1%2C93.5%2C6.4&chco=c4df9b%2C6fad0c&chs=400x250&cht=p",
+ "lang":"en",
+ "type":"about"
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://developers.google.com/wallet/instant-buy/",
+ "timestamp": 1194884220000,
+ "image": "distribute/images/payment-method.jpg",
+ "title": "Google Wallet Instant Buy APIs",
+ "summary": "Developer documentation describing Instant Buy and how to support it in your apps.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/1169947",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Selling Apps in Multiple Currencies",
+ "summary": "Help Center document describing how pricing works in Google Play.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/138412",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Prices and supported currencies",
+ "summary": "Help Center document listing supported currencies for pricing your apps.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/112622",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Transaction Fees",
+ "summary": "Help Center document describing transaction fees for priced apps and in-app products.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/138000",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Specifying tax rates",
+ "summary": "Help Center document describing how to set tax rates for different countries.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "guide/topics/resources/localization.html",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Localizing with Resources",
+ "summary": "Developer guide to localizing resources in your app.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/113475",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Category types",
+ "summary": "Help Center document listing available categories for apps.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/113476",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Updates",
+ "summary": "Requirements for app updates in Google Play.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/1153479",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "In-app Billing",
+ "summary": "Help Center document describing how to correctly set up In-app Billing.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "#gpfe",
+ "#googleplay"
+ ],
+ "url": "http://youtu.be/vzvpcEffvaE",
+ "timestamp": 1383243492000,
+ "image": "http://i1.ytimg.com/vi/vzvpcEffvaE/maxresdefault.jpg",
+ "title": "Introducing Google Play for Education",
+ "summary": "Google Play for Education is a destination where schools can find great, teacher-approved, educational apps and videos on Play Store. Teachers can filter content by subject matter, grade and other criteria. Bulk purchase and instant distribution let educators bring your apps directly to classrooms and schools.",
+ "keywords": [],
+ "type": "youtube",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "#engagement",
+ ],
+ "url": "http://www.youtube.com/yt/dev/",
+ "timestamp": 1383243492000,
+ "image": "http://www.youtube.com/yt/dev/media/images/yt-dev-home-hero.jpg",
+ "title": "YouTube for Developers",
+ "summary": "The YouTube APIs and Tools enable you to integrate YouTube's video content and functionality into your website, app, or device.",
+ "keywords": [],
+ "type": "youtube",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "#engagement",
+ ],
+ "url": "https://developers.google.com/app-indexing/",
+ "timestamp": 1383243492000,
+ "image": "https://developers.google.com/app-indexing/images/allthecooks_srp.png",
+ "title": "Sign Up for App Indexing",
+ "summary": "Google is working with app developers and webmasters to index the content of apps and relate them to websites. When relevant, Google Search results on Android will include deep links to apps.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "#gcm",
+ ],
+ "url": "http://www.youtube.com/watch?v=y76rjidm8cU",
+ "timestamp": 1383243492000,
+ "image": "http://1.bp.blogspot.com/-IF-1-1kA0sg/UYwTidxdi3I/AAAAAAAAAEU/ellLeQ-E1vs/s800/google-io-lockup-2.png",
+ "title": "Google Cloud Messaging at I/O 2013",
+ "summary": "Google Cloud Messaging allows your services to efficiently send data to applications on Android devices. See what's new, and learn how to use GCM to make your apps more efficient.",
+ "keywords": ["gcm"],
+ "type": "youtube",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "#googleplus",
+ ],
+ "url": "https://developers.google.com/+/mobile/android/people",
+ "timestamp": 1383243492000,
+ "image": "images/google/gps-googleplus.png",
+ "title": "Sign Up for App Indexing",
+ "summary": "After you let users sign in with Google, you can access their age range, language, public profile information, and people that they have circled.",
+ "keywords": ["googleplus"],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "#gcm",
+ ],
+ "url": "http://developer.chrome.com/apps/cloudMessagingV2",
+ "timestamp": 1383243492000,
+ "image": "images/kk-chromium-icon.png",
+ "title": "Google Cloud Messaging for Chrome",
+ "summary": "Google Cloud Messaging for Chrome (GCM) is a service for signed-in Chrome users that helps developers send message data from servers to their Chrome apps and extensions.",
+ "keywords": ["gcm"],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "#sdkupdates"
+ ],
+ "url": "http://android-developers.blogspot.com/2013/07/making-beautiful-android-app-icons.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Make Beautiful Android App Icons",
+ "summary": "Follow these in-depth launcher icon tips on the Android Developers blog.",
+ "keywords": [],
+ "type": "blog",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "#sdkupdates"
+ ],
+ "url": "http://android-developers.blogspot.com/2012/12/localize-your-promotional-graphics-on.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Localize Your Promotional Graphics",
+ "summary": "Learn how to capitalise on international audiences.",
+ "keywords": [],
+ "type": "blog",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [
+ "#sdkupdates"
+ ],
+ "url": "http://android-developers.blogspot.com/2013/10/making-your-app-content-more-accessible.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Make your App Content more Accessible with App Linking",
+ "summary": "About using search and deep linking to get more users.",
+ "keywords": [],
+ "type": "blog",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://developers.google.com/+/mobile/android/share/interactive-post",
+ "timestamp": 1194884220000,
+ "image": 'images/google/gps-googleplus.png',
+ "title": "Sharing interactive posts to Google+ from your Android app",
+ "summary": "Interactive posts provide an easy and prominent way to allow users to share your site or app with their friends and invite them to take a specific action.",
+ "keywords": ["Interactive", "Google+"],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/2528691",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "How to add multiple user accounts to your Developer Console for testing and more.",
+ "summary": "",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://developers.google.com/+/mobile/android/share/deep-link",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Adding deep linking to Google+ posts shared from your Android app",
+ "summary": "",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "google/play/licensing/index.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Application Licensing",
+ "summary": "Information on the features of Google Play to protect your apps’ licences.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "design/style/writing.html",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "Writing Style",
+ "summary": "Android Design guidelines for voice and style in your UI.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://en.wikipedia.org/wiki/XLIFF",
+ "timestamp": 1194884220000,
+ "image": null,
+ "title": "XML Localisation Interchange File Format (XLIFF)",
+ "summary": "Background information on XLIFF.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/googleplay/android-developer/answer/1078870",
+ "timestamp": 1194884220000,
+ "image": "images/play_dev.jpg",
+ "title": "Graphic Assets for your Application",
+ "summary": "Details about the graphics you can add to your product listing.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "https://support.google.com/payments/answer/2741495",
+ "timestamp": null,
+ "image": null,
+ "title": "Issuing Refunds",
+ "summary": "Help Center document describing how to issue refunds.",
+ "keywords": [],
+ "type": "guide",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": [],
+ "url": "http://android-developers.blogspot.com/2013/11/bring-your-apps-into-classroom-with.html",
+ "timestamp": null,
+ "image": "distribute/images/gp-edu-apps-image.jpg",
+ "title": "Google play for education",
+ "summary": " ",
+ "keywords": [],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["localization", "pricing", "developer support"],
+ "url": "https://support.google.com/googleplay/android-developer/table/3541286",
+ "timestamp": null,
+ "image": "images/play_dev.jpg",
+ "title": "Supported locations for distributing your apps in Google Play",
+ "summary": "Countries and regions where you can distribute your app in Google Play.",
+ "keywords": [],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["games", "localization", "quality"],
+ "url": "http://www.youtube.com/watch?v=SkHHPf3EdzE",
+ "timestamp": null,
+ "image": "https://developers.google.com/apps/images/io_2013/google-io-logo.png",
+ "title": "Level Up Your Android Game",
+ "summary": "Learn how to take your game to the next level in this Google I/O session.",
+ "keywords": [],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["support"],
+ "url": "https://support.google.com/groups/answer/46601",
+ "timestamp": null,
+ "image": null,
+ "title": "Google Groups",
+ "summary": "Create a group for your community.",
+ "keywords": [],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["support"],
+ "url": "https://support.google.com/plus/topic/2888488",
+ "timestamp": null,
+ "image": null,
+ "title": "Google+ Communities",
+ "summary": "Host a Google+ community for testers or users.",
+ "keywords": [],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["monetize", "ads"],
+ "url": "http://www.google.com/ads/admob/#subid=us-en-et-dac",
+ "timestamp": null,
+ "image": "distribute/images/advertising.png",
+ "title": "AdMob for Android",
+ "summary": "Make money by connecting with over a million Google advertisers all over the world, so your revenue scales with your app.",
+ "keywords": ["ads"],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["monetize", "ads"],
+ "url": "http://www.google.com/doubleclick/publishers/small-business/index.html",
+ "timestamp": null,
+ "image": "http://www.google.com/doubleclick/publishers/small-business/images/define_ad.png",
+ "title": "DoubleClick for Publishers",
+ "summary": "A free ad management solution that helps growing publishers sell, schedule, deliver, and measure all of their digital ad inventory.",
+ "keywords": ["ads"],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["monetize", "ads"],
+ "url": "http://support.google.com/googleplay/android-developer/topic/2985714",
+ "timestamp": null,
+ "image": "http://storage.googleapis.com/support-kms-prod/SNP_712EA2784949DDF085C46E3BE7B1DC618A09_4389397_en_v0",
+ "title": "Policy Center: Ads",
+ "summary": "Introduction to ads and system interference policies in Google Play",
+ "keywords": ["ads"],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["monetize", "giftcards"],
+ "url": "https://play.google.com/about/giftcards/",
+ "timestamp": null,
+ "image": "images/gp-balance.png",
+ "title": "Google Play Gift Cards",
+ "summary": "Buy Google Play gift cards online or at a variety of retail stores.",
+ "keywords": ["gift card"],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["monetize", "paymentmethods"],
+ "url": "https://support.google.com/googleplay/answer/2651410",
+ "timestamp": null,
+ "image": "images/play_dev.jpg",
+ "title": "Google Play Accepted Payment Methods",
+ "summary": "Support details on the payment methods supported in Google Play.",
+ "keywords": ["gift card"],
+ "type": "distribute",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["plus", "social"],
+ "url": "https://plus.google.com/+AndroidDevelopers/",
+ "timestamp": null,
+ "image": "images/plus.jpg",
+ "title": "+Android Developers",
+ "summary": "Sharing news, ideas, and techniques for success.",
+ "keywords": ["+AndroidDevelopers"],
+ "type": "Google+",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["plus", "social"],
+ "url": "http://plus.google.com/+GooglePlay",
+ "timestamp": null,
+ "image": "https://lh4.googleusercontent.com/-IKezweZlcXI/AAAAAAAAAAI/AAAAAAABOvg/uK8Z0jekVE4/s120-c/photo.jpg",
+ "title": "+Google Play",
+ "summary": "News and discussion about Google Play, apps, and other content in Google+.",
+ "keywords": ["+GooglePlay"],
+ "type": "Google+",
+ "titleFriendly": ""
+ },
+ {
+ "lang": "en",
+ "group": "",
+ "tags": ["support", "android"],
+ "url": "support.html",
+ "timestamp": null,
+ "image": null,
+ "title": "Developer Support",
+ "summary": "Links to community and support resources for Android developers.",
+ "keywords": ["support"],
+ "type": "Google+",
+ "titleFriendly": ""
+ },
+]);
\ No newline at end of file
diff --git a/docs/html/jd_tag_helpers.js b/docs/html/jd_tag_helpers.js
new file mode 100644
index 0000000..ca01386
--- /dev/null
+++ b/docs/html/jd_tag_helpers.js
@@ -0,0 +1,110 @@
+function mergeArrays() {
+ var arr = arguments[0] || [];
+ for (var i = 1; i < arguments.length; i++) {
+ arr = arr.concat(arguments[i]);
+ }
+ return arr;
+}
+
+var ALL_RESOURCES = mergeArrays(
+ DESIGN_RESOURCES,
+ DISTRIBUTE_RESOURCES,
+ GOOGLE_RESOURCES,
+ GUIDE_RESOURCES,
+ SAMPLES_RESOURCES,
+ TOOLS_RESOURCES,
+ TRAINING_RESOURCES,
+ YOUTUBE_RESOURCES,
+ BLOGGER_RESOURCES
+);
+
+for (var i = 0; i < ALL_RESOURCES.length; i++) {
+ ALL_RESOURCES[i].index = i;
+}
+
+function mergeMaps() {
+ var allRes = {};
+ var offset = 0;
+
+ for (var i = 0; i < arguments.length; i++) {
+ var r = arguments[i];
+ for (var tag in r.map) {
+ allRes[tag] = allRes[tag] || [];
+ allRes[tag] = allRes[tag].concat(r.map[tag].map(function(i){ return ALL_RESOURCES[i + offset]; }));
+ }
+ offset += r.arr.length;
+ }
+
+ return allRes;
+}
+
+function setFromArray(arr) {
+ arr = arr || [];
+ var set = {};
+ for (var i = 0; i < arr.length; i++) {
+ set[arr[i]] = true;
+ }
+ return set;
+}
+
+function buildResourceLookupMap(resourceDict) {
+ var map = {};
+ for (var key in resourceDict) {
+ var dictForKey = {};
+ var srcArr = resourceDict[key];
+ for (var i = 0; i < srcArr.length; i++) {
+ dictForKey[srcArr[i].index] = true;
+ }
+ map[key] = dictForKey;
+ }
+ return map;
+}
+
+// Type lookups
+
+var ALL_RESOURCES_BY_TYPE = {
+ 'design': DESIGN_RESOURCES,
+ 'distribute': DISTRIBUTE_RESOURCES,
+ 'google': GOOGLE_RESOURCES,
+ 'guide': GUIDE_RESOURCES,
+ 'samples': SAMPLES_RESOURCES,
+ 'tools': TOOLS_RESOURCES,
+ 'training': TRAINING_RESOURCES,
+ 'youtube': YOUTUBE_RESOURCES,
+ 'blog': BLOGGER_RESOURCES
+};
+var IS_RESOURCE_OF_TYPE = buildResourceLookupMap(ALL_RESOURCES_BY_TYPE);
+
+// Tag lookups
+
+var ALL_RESOURCES_BY_TAG = mergeMaps(
+ {map:DESIGN_BY_TAG,arr:DESIGN_RESOURCES},
+ {map:DISTRIBUTE_BY_TAG,arr:DISTRIBUTE_RESOURCES},
+ {map:GOOGLE_BY_TAG,arr:GOOGLE_RESOURCES},
+ {map:GUIDE_BY_TAG,arr:GUIDE_RESOURCES},
+ {map:SAMPLES_BY_TAG,arr:SAMPLES_RESOURCES},
+ {map:TOOLS_BY_TAG,arr:TOOLS_RESOURCES},
+ {map:TRAINING_BY_TAG,arr:TRAINING_RESOURCES},
+ {map:YOUTUBE_BY_TAG,arr:YOUTUBE_RESOURCES},
+ {map:BLOGGER_BY_TAG,arr:BLOGGER_RESOURCES}
+);
+var IS_RESOURCE_TAGGED = buildResourceLookupMap(ALL_RESOURCES_BY_TAG);
+
+// URL and language lookups
+
+var ALL_RESOURCES_BY_URL = {};
+var ALL_RESOURCES_BY_LANG = {};
+
+for (var i = 0; i < ALL_RESOURCES.length; i++) {
+ var res = ALL_RESOURCES[i];
+ var lang = res.lang;
+ if (lang) {
+ ALL_RESOURCES_BY_LANG[lang] = ALL_RESOURCES_BY_LANG[lang] || [];
+ ALL_RESOURCES_BY_LANG[lang].push(res);
+ }
+ var url = res.url;
+ if (url) {
+ ALL_RESOURCES_BY_URL[url] = res;
+ }
+}
+var IS_RESOURCE_IN_LANG = buildResourceLookupMap(ALL_RESOURCES_BY_LANG);
\ No newline at end of file
diff --git a/docs/html/legal.jd b/docs/html/legal.jd
index aaa3c39..c6143da 100644
--- a/docs/html/legal.jd
+++ b/docs/html/legal.jd
@@ -1,4 +1,5 @@
page.title=Legal Notice
+page.type=about
fullpage=1
@jd:body
@@ -39,7 +40,7 @@
use of it must be attributed as such.</p>
<p>For more information about Android brands, see the <a
-href="{@docRoot}distribute/googleplay/promote/brand.html">Brand Guidelines</a>.</p>
+href="{@docRoot}distribute/tools/promote/brand.html">Brand Guidelines</a>.</p>
<p>All other trademarks are the property of their respective owners.</p>
diff --git a/docs/html/license.jd b/docs/html/license.jd
index b98c912..0f671e2 100644
--- a/docs/html/license.jd
+++ b/docs/html/license.jd
@@ -1,4 +1,5 @@
page.title=Content License
+page.type=about
fullpage=1
excludeFromSuggestions=true
@jd:body
@@ -68,7 +69,7 @@
style="margin:0;padding:0 2px;vertical-align:baseline" /> stylized typeface logo) are not included
in the license.
Please see <a
-href="{@docRoot}distribute/googleplay/promote/brand.html">Brand Guidelines</a> for
+href="{@docRoot}distribute/tools/promote/brand.html">Brand Guidelines</a> for
information about this usage. </li>
<li>In some cases, a page may include content, such as an image, that is not
diff --git a/docs/html/reference/android/preview/support/package-summary.html b/docs/html/reference/android/preview/support/package-summary.html
index d367f87..2f50871 100644
--- a/docs/html/reference/android/preview/support/package-summary.html
+++ b/docs/html/reference/android/preview/support/package-summary.html
@@ -82,13 +82,6 @@
-
-
-
-
-
-
-
<html>
<head>
@@ -101,13 +94,15 @@
<!-- STYLESHEETS -->
<link rel="stylesheet"
-href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" title="roboto">
+href="//fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+ title="roboto">
<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
<!-- JAVASCRIPT -->
-<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="//www.google.com/jsapi" type="text/javascript"></script>
<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
<script type="text/javascript">
var toRoot = "/";
@@ -131,7 +126,7 @@
<body class="gc-documentation
- develop">
+ preview">
<div id="doc-api-level" class="" style="display:none"></div>
<a name="top"></a>
@@ -139,31 +134,30 @@
<a name="top"></a>
- <!-- Header -->
- <div id="header">
- <div class="wrap" id="header-wrap">
- <div class="col-3 logo-wear">
- <a href="/wear/index.html">
- <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
- </a>
- </div>
+<!-- Header -->
+<div id="header-wrapper">
+ <div id="header">
+ <div class="wrap" id="header-wrap">
+ <div class="col_3 logo wear-logo">
+ <a href="/wear/index.html">
+ <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
+ </a>
+ </div>
+ <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
+color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
- <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
- color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-
- <!-- New Search -->
- <div class="menu-container">
- <div class="moremenu">
- <div id="more-btn"></div>
- </div>
+
+
+<div class="menu-container">
+ <div class="moremenu">
+ <div id="more-btn"></div>
+ </div>
<div class="morehover" id="moremenu">
<div class="top"></div>
<div class="mid">
<div class="header">Links</div>
<ul>
- <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li>
+ <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
<li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
<li><a href="/about/index.html">About Android</a></li>
</ul>
@@ -173,16 +167,32 @@
<li class="active"><a>Android Developers</a></li>
<li><a href="http://source.android.com">Android Open Source Project</a></li>
</ul>
-
-
-
-
-
+
+
+ <div class="header">Language</div>
+ <div id="language" class="locales">
+ <select name="language" onChange="changeLangPref(this.value, true)">
+ <option value="en">English</option>
+ <option value="es">Español</option>
+ <option value="ja">日本語</option>
+ <option value="ko">한국어</option>
+ <option value="ru">Русский</option>
+ <option value="zh-cn">中文 (中国)</option>
+ <option value="zh-tw">中文 (台灣)</option>
+ </select>
+ </div>
+ <script type="text/javascript">
+ <!--
+ loadLangPref();
+ //-->
+ </script>
+
+
<br class="clearfix" />
- </div><!-- end mid -->
+ </div><!-- end 'mid' -->
<div class="bottom"></div>
- </div><!-- end morehover -->
+ </div><!-- end 'moremenu' -->
<div class="search" id="search-container">
<div class="search-inner">
@@ -190,16 +200,16 @@
<div class="left"></div>
<form onsubmit="return submit_search()">
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-onkeydown="return search_changed(event, true, '/')"
-onkeyup="return search_changed(event, false, '/')" />
+ onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+ onkeydown="return search_changed(event, true, '/')"
+ onkeyup="return search_changed(event, false, '/')" />
</form>
<div class="right"></div>
- <a class="close hide">close</a>
- <div class="left"></div>
- <div class="right"></div>
- </div>
- </div><!-- end search -->
+ <a class="close hide">close</a>
+ <div class="left"></div>
+ <div class="right"></div>
+ </div><!-- end search-inner -->
+ </div><!-- end search-container -->
<div class="search_filtered_wrapper reference">
<div class="suggest-card reference no-display">
@@ -228,30 +238,37 @@
<ul class="search_filtered">
</ul>
</div>
- </div><!-- end search_filtered_wrapper -->
-
</div>
- <!-- end menu_container -->
+</div><!-- end menu-container (search and menu widget) -->
- </div><!-- end header-wrap -->
- </div>
- <!-- /Header -->
+ </div><!-- end header-wrap -->
+ </div><!-- /Header -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
+</div> <!--end header-wrapper -->
+
+<div id="sticky-header">
+ <div>
+ <a class="logo" href="#top"></a>
+ <a class="top" href="#top"></a>
+ <ul class="breadcrumb">
+
+ <li class="current">Preview Notifications Reference</li>
+ </ul>
+ </div>
+</div>
-
<div class="wrap clearfix" id="body-content">
<div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav" class="scroll-pane">
-<a class="totop" href="#top" data-g-event="left-nav-top">to top</a>
<ul id="nav">
@@ -328,7 +345,7 @@
</ul>
-
+
</div>
</div> <!-- end side-nav -->
@@ -362,12 +379,6 @@
-
-
-
-
-
-
<h2>android.preview.support.v4.app</h2>
<div class="jd-sumtable">
@@ -418,14 +429,6 @@
-
-
-
-
-
-
-
-
diff --git a/docs/html/reference/android/preview/support/v4/app/NotificationManagerCompat.html b/docs/html/reference/android/preview/support/v4/app/NotificationManagerCompat.html
index 6375d9a..8322ab2 100644
--- a/docs/html/reference/android/preview/support/v4/app/NotificationManagerCompat.html
+++ b/docs/html/reference/android/preview/support/v4/app/NotificationManagerCompat.html
@@ -82,13 +82,6 @@
-
-
-
-
-
-
-
<html>
<head>
@@ -101,13 +94,15 @@
<!-- STYLESHEETS -->
<link rel="stylesheet"
-href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" title="roboto">
+href="//fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+ title="roboto">
<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
<!-- JAVASCRIPT -->
-<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="//www.google.com/jsapi" type="text/javascript"></script>
<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
<script type="text/javascript">
var toRoot = "/";
@@ -130,7 +125,7 @@
</head>
<body class="gc-documentation
- develop" itemscope itemtype="http://schema.org/Article">
+ preview" itemscope itemtype="http://schema.org/Article">
<div id="doc-api-level" class="" style="display:none"></div>
<a name="top"></a>
@@ -138,31 +133,30 @@
<a name="top"></a>
- <!-- Header -->
- <div id="header">
- <div class="wrap" id="header-wrap">
- <div class="col-3 logo-wear">
- <a href="/wear/index.html">
- <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
- </a>
- </div>
+<!-- Header -->
+<div id="header-wrapper">
+ <div id="header">
+ <div class="wrap" id="header-wrap">
+ <div class="col_3 logo wear-logo">
+ <a href="/wear/index.html">
+ <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
+ </a>
+ </div>
+ <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
+color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
- <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
- color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-
- <!-- New Search -->
- <div class="menu-container">
- <div class="moremenu">
- <div id="more-btn"></div>
- </div>
+
+
+<div class="menu-container">
+ <div class="moremenu">
+ <div id="more-btn"></div>
+ </div>
<div class="morehover" id="moremenu">
<div class="top"></div>
<div class="mid">
<div class="header">Links</div>
<ul>
- <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li>
+ <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
<li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
<li><a href="/about/index.html">About Android</a></li>
</ul>
@@ -172,16 +166,32 @@
<li class="active"><a>Android Developers</a></li>
<li><a href="http://source.android.com">Android Open Source Project</a></li>
</ul>
-
-
-
-
-
+
+
+ <div class="header">Language</div>
+ <div id="language" class="locales">
+ <select name="language" onChange="changeLangPref(this.value, true)">
+ <option value="en">English</option>
+ <option value="es">Español</option>
+ <option value="ja">日本語</option>
+ <option value="ko">한국어</option>
+ <option value="ru">Русский</option>
+ <option value="zh-cn">中文 (中国)</option>
+ <option value="zh-tw">中文 (台灣)</option>
+ </select>
+ </div>
+ <script type="text/javascript">
+ <!--
+ loadLangPref();
+ //-->
+ </script>
+
+
<br class="clearfix" />
- </div><!-- end mid -->
+ </div><!-- end 'mid' -->
<div class="bottom"></div>
- </div><!-- end morehover -->
+ </div><!-- end 'moremenu' -->
<div class="search" id="search-container">
<div class="search-inner">
@@ -189,16 +199,16 @@
<div class="left"></div>
<form onsubmit="return submit_search()">
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-onkeydown="return search_changed(event, true, '/')"
-onkeyup="return search_changed(event, false, '/')" />
+ onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+ onkeydown="return search_changed(event, true, '/')"
+ onkeyup="return search_changed(event, false, '/')" />
</form>
<div class="right"></div>
- <a class="close hide">close</a>
- <div class="left"></div>
- <div class="right"></div>
- </div>
- </div><!-- end search -->
+ <a class="close hide">close</a>
+ <div class="left"></div>
+ <div class="right"></div>
+ </div><!-- end search-inner -->
+ </div><!-- end search-container -->
<div class="search_filtered_wrapper reference">
<div class="suggest-card reference no-display">
@@ -227,30 +237,37 @@
<ul class="search_filtered">
</ul>
</div>
- </div><!-- end search_filtered_wrapper -->
-
</div>
- <!-- end menu_container -->
+</div><!-- end menu-container (search and menu widget) -->
- </div><!-- end header-wrap -->
- </div>
- <!-- /Header -->
+ </div><!-- end header-wrap -->
+ </div><!-- /Header -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
+</div> <!--end header-wrapper -->
+
+<div id="sticky-header">
+ <div>
+ <a class="logo" href="#top"></a>
+ <a class="top" href="#top"></a>
+ <ul class="breadcrumb">
+
+ <li class="current">NotificationManagerCompat</li>
+ </ul>
+ </div>
+</div>
-
<div class="wrap clearfix" id="body-content">
<div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav" class="scroll-pane">
-<a class="totop" href="#top" data-g-event="left-nav-top">to top</a>
<ul id="nav">
@@ -327,7 +344,7 @@
</ul>
-
+
</div>
</div> <!-- end side-nav -->
@@ -340,6 +357,7 @@
+
<div class="col-12" id="doc-col">
<div id="api-info-block">
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html b/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html
index 6fbf8b6..77807e4 100644
--- a/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html
+++ b/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html
@@ -82,13 +82,6 @@
-
-
-
-
-
-
-
<html>
<head>
@@ -101,13 +94,15 @@
<!-- STYLESHEETS -->
<link rel="stylesheet"
-href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" title="roboto">
+href="//fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+ title="roboto">
<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
<!-- JAVASCRIPT -->
-<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="//www.google.com/jsapi" type="text/javascript"></script>
<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
<script type="text/javascript">
var toRoot = "/";
@@ -130,7 +125,7 @@
</head>
<body class="gc-documentation
- develop" itemscope itemtype="http://schema.org/Article">
+ preview" itemscope itemtype="http://schema.org/Article">
<div id="doc-api-level" class="" style="display:none"></div>
<a name="top"></a>
@@ -138,31 +133,30 @@
<a name="top"></a>
- <!-- Header -->
- <div id="header">
- <div class="wrap" id="header-wrap">
- <div class="col-3 logo-wear">
- <a href="/wear/index.html">
- <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
- </a>
- </div>
+<!-- Header -->
+<div id="header-wrapper">
+ <div id="header">
+ <div class="wrap" id="header-wrap">
+ <div class="col_3 logo wear-logo">
+ <a href="/wear/index.html">
+ <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
+ </a>
+ </div>
+ <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
+color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
- <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
- color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-
- <!-- New Search -->
- <div class="menu-container">
- <div class="moremenu">
- <div id="more-btn"></div>
- </div>
+
+
+<div class="menu-container">
+ <div class="moremenu">
+ <div id="more-btn"></div>
+ </div>
<div class="morehover" id="moremenu">
<div class="top"></div>
<div class="mid">
<div class="header">Links</div>
<ul>
- <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li>
+ <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
<li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
<li><a href="/about/index.html">About Android</a></li>
</ul>
@@ -172,16 +166,32 @@
<li class="active"><a>Android Developers</a></li>
<li><a href="http://source.android.com">Android Open Source Project</a></li>
</ul>
-
-
-
-
-
+
+
+ <div class="header">Language</div>
+ <div id="language" class="locales">
+ <select name="language" onChange="changeLangPref(this.value, true)">
+ <option value="en">English</option>
+ <option value="es">Español</option>
+ <option value="ja">日本語</option>
+ <option value="ko">한국어</option>
+ <option value="ru">Русский</option>
+ <option value="zh-cn">中文 (中国)</option>
+ <option value="zh-tw">中文 (台灣)</option>
+ </select>
+ </div>
+ <script type="text/javascript">
+ <!--
+ loadLangPref();
+ //-->
+ </script>
+
+
<br class="clearfix" />
- </div><!-- end mid -->
+ </div><!-- end 'mid' -->
<div class="bottom"></div>
- </div><!-- end morehover -->
+ </div><!-- end 'moremenu' -->
<div class="search" id="search-container">
<div class="search-inner">
@@ -189,16 +199,16 @@
<div class="left"></div>
<form onsubmit="return submit_search()">
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-onkeydown="return search_changed(event, true, '/')"
-onkeyup="return search_changed(event, false, '/')" />
+ onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+ onkeydown="return search_changed(event, true, '/')"
+ onkeyup="return search_changed(event, false, '/')" />
</form>
<div class="right"></div>
- <a class="close hide">close</a>
- <div class="left"></div>
- <div class="right"></div>
- </div>
- </div><!-- end search -->
+ <a class="close hide">close</a>
+ <div class="left"></div>
+ <div class="right"></div>
+ </div><!-- end search-inner -->
+ </div><!-- end search-container -->
<div class="search_filtered_wrapper reference">
<div class="suggest-card reference no-display">
@@ -227,30 +237,37 @@
<ul class="search_filtered">
</ul>
</div>
- </div><!-- end search_filtered_wrapper -->
-
</div>
- <!-- end menu_container -->
+</div><!-- end menu-container (search and menu widget) -->
- </div><!-- end header-wrap -->
- </div>
- <!-- /Header -->
+ </div><!-- end header-wrap -->
+ </div><!-- /Header -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
+</div> <!--end header-wrapper -->
+
+<div id="sticky-header">
+ <div>
+ <a class="logo" href="#top"></a>
+ <a class="top" href="#top"></a>
+ <ul class="breadcrumb">
+
+ <li class="current">RemoteInput.Builder</li>
+ </ul>
+ </div>
+</div>
-
<div class="wrap clearfix" id="body-content">
<div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav" class="scroll-pane">
-<a class="totop" href="#top" data-g-event="left-nav-top">to top</a>
<ul id="nav">
@@ -327,7 +344,7 @@
</ul>
-
+
</div>
</div> <!-- end side-nav -->
@@ -340,6 +357,7 @@
+
<div class="col-12" id="doc-col">
<div id="api-info-block">
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.html b/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.html
index 0e1cebe..43fd36e 100644
--- a/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.html
+++ b/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.html
@@ -82,13 +82,6 @@
-
-
-
-
-
-
-
<html>
<head>
@@ -101,13 +94,15 @@
<!-- STYLESHEETS -->
<link rel="stylesheet"
-href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" title="roboto">
+href="//fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+ title="roboto">
<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
<!-- JAVASCRIPT -->
-<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="//www.google.com/jsapi" type="text/javascript"></script>
<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
<script type="text/javascript">
var toRoot = "/";
@@ -130,7 +125,7 @@
</head>
<body class="gc-documentation
- develop" itemscope itemtype="http://schema.org/Article">
+ preview" itemscope itemtype="http://schema.org/Article">
<div id="doc-api-level" class="" style="display:none"></div>
<a name="top"></a>
@@ -138,31 +133,30 @@
<a name="top"></a>
- <!-- Header -->
- <div id="header">
- <div class="wrap" id="header-wrap">
- <div class="col-3 logo-wear">
- <a href="/wear/index.html">
- <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
- </a>
- </div>
+<!-- Header -->
+<div id="header-wrapper">
+ <div id="header">
+ <div class="wrap" id="header-wrap">
+ <div class="col_3 logo wear-logo">
+ <a href="/wear/index.html">
+ <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
+ </a>
+ </div>
+ <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
+color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
- <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
- color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-
- <!-- New Search -->
- <div class="menu-container">
- <div class="moremenu">
- <div id="more-btn"></div>
- </div>
+
+
+<div class="menu-container">
+ <div class="moremenu">
+ <div id="more-btn"></div>
+ </div>
<div class="morehover" id="moremenu">
<div class="top"></div>
<div class="mid">
<div class="header">Links</div>
<ul>
- <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li>
+ <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
<li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
<li><a href="/about/index.html">About Android</a></li>
</ul>
@@ -172,16 +166,32 @@
<li class="active"><a>Android Developers</a></li>
<li><a href="http://source.android.com">Android Open Source Project</a></li>
</ul>
-
-
-
-
-
+
+
+ <div class="header">Language</div>
+ <div id="language" class="locales">
+ <select name="language" onChange="changeLangPref(this.value, true)">
+ <option value="en">English</option>
+ <option value="es">Español</option>
+ <option value="ja">日本語</option>
+ <option value="ko">한국어</option>
+ <option value="ru">Русский</option>
+ <option value="zh-cn">中文 (中国)</option>
+ <option value="zh-tw">中文 (台灣)</option>
+ </select>
+ </div>
+ <script type="text/javascript">
+ <!--
+ loadLangPref();
+ //-->
+ </script>
+
+
<br class="clearfix" />
- </div><!-- end mid -->
+ </div><!-- end 'mid' -->
<div class="bottom"></div>
- </div><!-- end morehover -->
+ </div><!-- end 'moremenu' -->
<div class="search" id="search-container">
<div class="search-inner">
@@ -189,16 +199,16 @@
<div class="left"></div>
<form onsubmit="return submit_search()">
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-onkeydown="return search_changed(event, true, '/')"
-onkeyup="return search_changed(event, false, '/')" />
+ onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+ onkeydown="return search_changed(event, true, '/')"
+ onkeyup="return search_changed(event, false, '/')" />
</form>
<div class="right"></div>
- <a class="close hide">close</a>
- <div class="left"></div>
- <div class="right"></div>
- </div>
- </div><!-- end search -->
+ <a class="close hide">close</a>
+ <div class="left"></div>
+ <div class="right"></div>
+ </div><!-- end search-inner -->
+ </div><!-- end search-container -->
<div class="search_filtered_wrapper reference">
<div class="suggest-card reference no-display">
@@ -227,30 +237,37 @@
<ul class="search_filtered">
</ul>
</div>
- </div><!-- end search_filtered_wrapper -->
-
</div>
- <!-- end menu_container -->
+</div><!-- end menu-container (search and menu widget) -->
- </div><!-- end header-wrap -->
- </div>
- <!-- /Header -->
+ </div><!-- end header-wrap -->
+ </div><!-- /Header -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
+</div> <!--end header-wrapper -->
+
+<div id="sticky-header">
+ <div>
+ <a class="logo" href="#top"></a>
+ <a class="top" href="#top"></a>
+ <ul class="breadcrumb">
+
+ <li class="current">RemoteInput</li>
+ </ul>
+ </div>
+</div>
-
<div class="wrap clearfix" id="body-content">
<div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav" class="scroll-pane">
-<a class="totop" href="#top" data-g-event="left-nav-top">to top</a>
<ul id="nav">
@@ -327,7 +344,7 @@
</ul>
-
+
</div>
</div> <!-- end side-nav -->
@@ -340,6 +357,7 @@
+
<div class="col-12" id="doc-col">
<div id="api-info-block">
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html
index f27d406..9592e27 100644
--- a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html
+++ b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html
@@ -82,13 +82,6 @@
-
-
-
-
-
-
-
<html>
<head>
@@ -101,13 +94,15 @@
<!-- STYLESHEETS -->
<link rel="stylesheet"
-href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" title="roboto">
+href="//fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+ title="roboto">
<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
<!-- JAVASCRIPT -->
-<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="//www.google.com/jsapi" type="text/javascript"></script>
<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
<script type="text/javascript">
var toRoot = "/";
@@ -130,7 +125,7 @@
</head>
<body class="gc-documentation
- develop" itemscope itemtype="http://schema.org/Article">
+ preview" itemscope itemtype="http://schema.org/Article">
<div id="doc-api-level" class="" style="display:none"></div>
<a name="top"></a>
@@ -138,31 +133,30 @@
<a name="top"></a>
- <!-- Header -->
- <div id="header">
- <div class="wrap" id="header-wrap">
- <div class="col-3 logo-wear">
- <a href="/wear/index.html">
- <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
- </a>
- </div>
+<!-- Header -->
+<div id="header-wrapper">
+ <div id="header">
+ <div class="wrap" id="header-wrap">
+ <div class="col_3 logo wear-logo">
+ <a href="/wear/index.html">
+ <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
+ </a>
+ </div>
+ <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
+color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
- <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
- color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-
- <!-- New Search -->
- <div class="menu-container">
- <div class="moremenu">
- <div id="more-btn"></div>
- </div>
+
+
+<div class="menu-container">
+ <div class="moremenu">
+ <div id="more-btn"></div>
+ </div>
<div class="morehover" id="moremenu">
<div class="top"></div>
<div class="mid">
<div class="header">Links</div>
<ul>
- <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li>
+ <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
<li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
<li><a href="/about/index.html">About Android</a></li>
</ul>
@@ -172,16 +166,32 @@
<li class="active"><a>Android Developers</a></li>
<li><a href="http://source.android.com">Android Open Source Project</a></li>
</ul>
-
-
-
-
-
+
+
+ <div class="header">Language</div>
+ <div id="language" class="locales">
+ <select name="language" onChange="changeLangPref(this.value, true)">
+ <option value="en">English</option>
+ <option value="es">Español</option>
+ <option value="ja">日本語</option>
+ <option value="ko">한국어</option>
+ <option value="ru">Русский</option>
+ <option value="zh-cn">中文 (中国)</option>
+ <option value="zh-tw">中文 (台灣)</option>
+ </select>
+ </div>
+ <script type="text/javascript">
+ <!--
+ loadLangPref();
+ //-->
+ </script>
+
+
<br class="clearfix" />
- </div><!-- end mid -->
+ </div><!-- end 'mid' -->
<div class="bottom"></div>
- </div><!-- end morehover -->
+ </div><!-- end 'moremenu' -->
<div class="search" id="search-container">
<div class="search-inner">
@@ -189,16 +199,16 @@
<div class="left"></div>
<form onsubmit="return submit_search()">
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-onkeydown="return search_changed(event, true, '/')"
-onkeyup="return search_changed(event, false, '/')" />
+ onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+ onkeydown="return search_changed(event, true, '/')"
+ onkeyup="return search_changed(event, false, '/')" />
</form>
<div class="right"></div>
- <a class="close hide">close</a>
- <div class="left"></div>
- <div class="right"></div>
- </div>
- </div><!-- end search -->
+ <a class="close hide">close</a>
+ <div class="left"></div>
+ <div class="right"></div>
+ </div><!-- end search-inner -->
+ </div><!-- end search-container -->
<div class="search_filtered_wrapper reference">
<div class="suggest-card reference no-display">
@@ -227,30 +237,37 @@
<ul class="search_filtered">
</ul>
</div>
- </div><!-- end search_filtered_wrapper -->
-
</div>
- <!-- end menu_container -->
+</div><!-- end menu-container (search and menu widget) -->
- </div><!-- end header-wrap -->
- </div>
- <!-- /Header -->
+ </div><!-- end header-wrap -->
+ </div><!-- /Header -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
+</div> <!--end header-wrapper -->
+
+<div id="sticky-header">
+ <div>
+ <a class="logo" href="#top"></a>
+ <a class="top" href="#top"></a>
+ <ul class="breadcrumb">
+
+ <li class="current">WearableNotifications.Action.Builder</li>
+ </ul>
+ </div>
+</div>
-
<div class="wrap clearfix" id="body-content">
<div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav" class="scroll-pane">
-<a class="totop" href="#top" data-g-event="left-nav-top">to top</a>
<ul id="nav">
@@ -327,7 +344,7 @@
</ul>
-
+
</div>
</div> <!-- end side-nav -->
@@ -340,6 +357,7 @@
+
<div class="col-12" id="doc-col">
<div id="api-info-block">
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html
index ff9c904..8073fa8 100644
--- a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html
+++ b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html
@@ -82,13 +82,6 @@
-
-
-
-
-
-
-
<html>
<head>
@@ -101,13 +94,15 @@
<!-- STYLESHEETS -->
<link rel="stylesheet"
-href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" title="roboto">
+href="//fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+ title="roboto">
<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
<!-- JAVASCRIPT -->
-<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="//www.google.com/jsapi" type="text/javascript"></script>
<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
<script type="text/javascript">
var toRoot = "/";
@@ -130,7 +125,7 @@
</head>
<body class="gc-documentation
- develop" itemscope itemtype="http://schema.org/Article">
+ preview" itemscope itemtype="http://schema.org/Article">
<div id="doc-api-level" class="" style="display:none"></div>
<a name="top"></a>
@@ -138,31 +133,30 @@
<a name="top"></a>
- <!-- Header -->
- <div id="header">
- <div class="wrap" id="header-wrap">
- <div class="col-3 logo-wear">
- <a href="/wear/index.html">
- <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
- </a>
- </div>
+<!-- Header -->
+<div id="header-wrapper">
+ <div id="header">
+ <div class="wrap" id="header-wrap">
+ <div class="col_3 logo wear-logo">
+ <a href="/wear/index.html">
+ <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
+ </a>
+ </div>
+ <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
+color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
- <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
- color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-
- <!-- New Search -->
- <div class="menu-container">
- <div class="moremenu">
- <div id="more-btn"></div>
- </div>
+
+
+<div class="menu-container">
+ <div class="moremenu">
+ <div id="more-btn"></div>
+ </div>
<div class="morehover" id="moremenu">
<div class="top"></div>
<div class="mid">
<div class="header">Links</div>
<ul>
- <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li>
+ <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
<li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
<li><a href="/about/index.html">About Android</a></li>
</ul>
@@ -172,16 +166,32 @@
<li class="active"><a>Android Developers</a></li>
<li><a href="http://source.android.com">Android Open Source Project</a></li>
</ul>
-
-
-
-
-
+
+
+ <div class="header">Language</div>
+ <div id="language" class="locales">
+ <select name="language" onChange="changeLangPref(this.value, true)">
+ <option value="en">English</option>
+ <option value="es">Español</option>
+ <option value="ja">日本語</option>
+ <option value="ko">한국어</option>
+ <option value="ru">Русский</option>
+ <option value="zh-cn">中文 (中国)</option>
+ <option value="zh-tw">中文 (台灣)</option>
+ </select>
+ </div>
+ <script type="text/javascript">
+ <!--
+ loadLangPref();
+ //-->
+ </script>
+
+
<br class="clearfix" />
- </div><!-- end mid -->
+ </div><!-- end 'mid' -->
<div class="bottom"></div>
- </div><!-- end morehover -->
+ </div><!-- end 'moremenu' -->
<div class="search" id="search-container">
<div class="search-inner">
@@ -189,16 +199,16 @@
<div class="left"></div>
<form onsubmit="return submit_search()">
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-onkeydown="return search_changed(event, true, '/')"
-onkeyup="return search_changed(event, false, '/')" />
+ onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+ onkeydown="return search_changed(event, true, '/')"
+ onkeyup="return search_changed(event, false, '/')" />
</form>
<div class="right"></div>
- <a class="close hide">close</a>
- <div class="left"></div>
- <div class="right"></div>
- </div>
- </div><!-- end search -->
+ <a class="close hide">close</a>
+ <div class="left"></div>
+ <div class="right"></div>
+ </div><!-- end search-inner -->
+ </div><!-- end search-container -->
<div class="search_filtered_wrapper reference">
<div class="suggest-card reference no-display">
@@ -227,30 +237,37 @@
<ul class="search_filtered">
</ul>
</div>
- </div><!-- end search_filtered_wrapper -->
-
</div>
- <!-- end menu_container -->
+</div><!-- end menu-container (search and menu widget) -->
- </div><!-- end header-wrap -->
- </div>
- <!-- /Header -->
+ </div><!-- end header-wrap -->
+ </div><!-- /Header -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
+</div> <!--end header-wrapper -->
+
+<div id="sticky-header">
+ <div>
+ <a class="logo" href="#top"></a>
+ <a class="top" href="#top"></a>
+ <ul class="breadcrumb">
+
+ <li class="current">WearableNotifications.Action</li>
+ </ul>
+ </div>
+</div>
-
<div class="wrap clearfix" id="body-content">
<div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav" class="scroll-pane">
-<a class="totop" href="#top" data-g-event="left-nav-top">to top</a>
<ul id="nav">
@@ -327,7 +344,7 @@
</ul>
-
+
</div>
</div> <!-- end side-nav -->
@@ -340,6 +357,7 @@
+
<div class="col-12" id="doc-col">
<div id="api-info-block">
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html
index d6ec260..15d3303 100644
--- a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html
+++ b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html
@@ -82,13 +82,6 @@
-
-
-
-
-
-
-
<html>
<head>
@@ -101,13 +94,15 @@
<!-- STYLESHEETS -->
<link rel="stylesheet"
-href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" title="roboto">
+href="//fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+ title="roboto">
<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
<!-- JAVASCRIPT -->
-<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="//www.google.com/jsapi" type="text/javascript"></script>
<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
<script type="text/javascript">
var toRoot = "/";
@@ -130,7 +125,7 @@
</head>
<body class="gc-documentation
- develop" itemscope itemtype="http://schema.org/Article">
+ preview" itemscope itemtype="http://schema.org/Article">
<div id="doc-api-level" class="" style="display:none"></div>
<a name="top"></a>
@@ -138,31 +133,30 @@
<a name="top"></a>
- <!-- Header -->
- <div id="header">
- <div class="wrap" id="header-wrap">
- <div class="col-3 logo-wear">
- <a href="/wear/index.html">
- <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
- </a>
- </div>
+<!-- Header -->
+<div id="header-wrapper">
+ <div id="header">
+ <div class="wrap" id="header-wrap">
+ <div class="col_3 logo wear-logo">
+ <a href="/wear/index.html">
+ <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
+ </a>
+ </div>
+ <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
+color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
- <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
- color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-
- <!-- New Search -->
- <div class="menu-container">
- <div class="moremenu">
- <div id="more-btn"></div>
- </div>
+
+
+<div class="menu-container">
+ <div class="moremenu">
+ <div id="more-btn"></div>
+ </div>
<div class="morehover" id="moremenu">
<div class="top"></div>
<div class="mid">
<div class="header">Links</div>
<ul>
- <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li>
+ <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
<li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
<li><a href="/about/index.html">About Android</a></li>
</ul>
@@ -172,16 +166,32 @@
<li class="active"><a>Android Developers</a></li>
<li><a href="http://source.android.com">Android Open Source Project</a></li>
</ul>
-
-
-
-
-
+
+
+ <div class="header">Language</div>
+ <div id="language" class="locales">
+ <select name="language" onChange="changeLangPref(this.value, true)">
+ <option value="en">English</option>
+ <option value="es">Español</option>
+ <option value="ja">日本語</option>
+ <option value="ko">한국어</option>
+ <option value="ru">Русский</option>
+ <option value="zh-cn">中文 (中国)</option>
+ <option value="zh-tw">中文 (台灣)</option>
+ </select>
+ </div>
+ <script type="text/javascript">
+ <!--
+ loadLangPref();
+ //-->
+ </script>
+
+
<br class="clearfix" />
- </div><!-- end mid -->
+ </div><!-- end 'mid' -->
<div class="bottom"></div>
- </div><!-- end morehover -->
+ </div><!-- end 'moremenu' -->
<div class="search" id="search-container">
<div class="search-inner">
@@ -189,16 +199,16 @@
<div class="left"></div>
<form onsubmit="return submit_search()">
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-onkeydown="return search_changed(event, true, '/')"
-onkeyup="return search_changed(event, false, '/')" />
+ onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+ onkeydown="return search_changed(event, true, '/')"
+ onkeyup="return search_changed(event, false, '/')" />
</form>
<div class="right"></div>
- <a class="close hide">close</a>
- <div class="left"></div>
- <div class="right"></div>
- </div>
- </div><!-- end search -->
+ <a class="close hide">close</a>
+ <div class="left"></div>
+ <div class="right"></div>
+ </div><!-- end search-inner -->
+ </div><!-- end search-container -->
<div class="search_filtered_wrapper reference">
<div class="suggest-card reference no-display">
@@ -227,30 +237,37 @@
<ul class="search_filtered">
</ul>
</div>
- </div><!-- end search_filtered_wrapper -->
-
</div>
- <!-- end menu_container -->
+</div><!-- end menu-container (search and menu widget) -->
- </div><!-- end header-wrap -->
- </div>
- <!-- /Header -->
+ </div><!-- end header-wrap -->
+ </div><!-- /Header -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
+</div> <!--end header-wrapper -->
+
+<div id="sticky-header">
+ <div>
+ <a class="logo" href="#top"></a>
+ <a class="top" href="#top"></a>
+ <ul class="breadcrumb">
+
+ <li class="current">WearableNotifications.Builder</li>
+ </ul>
+ </div>
+</div>
-
<div class="wrap clearfix" id="body-content">
<div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav" class="scroll-pane">
-<a class="totop" href="#top" data-g-event="left-nav-top">to top</a>
<ul id="nav">
@@ -327,7 +344,7 @@
</ul>
-
+
</div>
</div> <!-- end side-nav -->
@@ -340,6 +357,7 @@
+
<div class="col-12" id="doc-col">
<div id="api-info-block">
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.html b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.html
index e03e16e..c9948b8 100644
--- a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.html
+++ b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.html
@@ -82,13 +82,6 @@
-
-
-
-
-
-
-
<html>
<head>
@@ -101,13 +94,15 @@
<!-- STYLESHEETS -->
<link rel="stylesheet"
-href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" title="roboto">
+href="//fonts.googleapis.com/css?family=Roboto+Condensed">
+<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
+ title="roboto">
<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
<!-- JAVASCRIPT -->
-<script src="http://www.google.com/jsapi" type="text/javascript"></script>
+<script src="//www.google.com/jsapi" type="text/javascript"></script>
<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
<script type="text/javascript">
var toRoot = "/";
@@ -130,7 +125,7 @@
</head>
<body class="gc-documentation
- develop" itemscope itemtype="http://schema.org/Article">
+ preview" itemscope itemtype="http://schema.org/Article">
<div id="doc-api-level" class="" style="display:none"></div>
<a name="top"></a>
@@ -138,31 +133,30 @@
<a name="top"></a>
- <!-- Header -->
- <div id="header">
- <div class="wrap" id="header-wrap">
- <div class="col-3 logo-wear">
- <a href="/wear/index.html">
- <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
- </a>
- </div>
+<!-- Header -->
+<div id="header-wrapper">
+ <div id="header">
+ <div class="wrap" id="header-wrap">
+ <div class="col_3 logo wear-logo">
+ <a href="/wear/index.html">
+ <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
+ </a>
+ </div>
+ <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
+color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
- <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
- color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-
- <!-- New Search -->
- <div class="menu-container">
- <div class="moremenu">
- <div id="more-btn"></div>
- </div>
+
+
+<div class="menu-container">
+ <div class="moremenu">
+ <div id="more-btn"></div>
+ </div>
<div class="morehover" id="moremenu">
<div class="top"></div>
<div class="mid">
<div class="header">Links</div>
<ul>
- <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li>
+ <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
<li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
<li><a href="/about/index.html">About Android</a></li>
</ul>
@@ -172,16 +166,32 @@
<li class="active"><a>Android Developers</a></li>
<li><a href="http://source.android.com">Android Open Source Project</a></li>
</ul>
-
-
-
-
-
+
+
+ <div class="header">Language</div>
+ <div id="language" class="locales">
+ <select name="language" onChange="changeLangPref(this.value, true)">
+ <option value="en">English</option>
+ <option value="es">Español</option>
+ <option value="ja">日本語</option>
+ <option value="ko">한국어</option>
+ <option value="ru">Русский</option>
+ <option value="zh-cn">中文 (中国)</option>
+ <option value="zh-tw">中文 (台灣)</option>
+ </select>
+ </div>
+ <script type="text/javascript">
+ <!--
+ loadLangPref();
+ //-->
+ </script>
+
+
<br class="clearfix" />
- </div><!-- end mid -->
+ </div><!-- end 'mid' -->
<div class="bottom"></div>
- </div><!-- end morehover -->
+ </div><!-- end 'moremenu' -->
<div class="search" id="search-container">
<div class="search-inner">
@@ -189,16 +199,16 @@
<div class="left"></div>
<form onsubmit="return submit_search()">
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-onkeydown="return search_changed(event, true, '/')"
-onkeyup="return search_changed(event, false, '/')" />
+ onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
+ onkeydown="return search_changed(event, true, '/')"
+ onkeyup="return search_changed(event, false, '/')" />
</form>
<div class="right"></div>
- <a class="close hide">close</a>
- <div class="left"></div>
- <div class="right"></div>
- </div>
- </div><!-- end search -->
+ <a class="close hide">close</a>
+ <div class="left"></div>
+ <div class="right"></div>
+ </div><!-- end search-inner -->
+ </div><!-- end search-container -->
<div class="search_filtered_wrapper reference">
<div class="suggest-card reference no-display">
@@ -227,30 +237,37 @@
<ul class="search_filtered">
</ul>
</div>
- </div><!-- end search_filtered_wrapper -->
-
</div>
- <!-- end menu_container -->
+</div><!-- end menu-container (search and menu widget) -->
- </div><!-- end header-wrap -->
- </div>
- <!-- /Header -->
+ </div><!-- end header-wrap -->
+ </div><!-- /Header -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
+</div> <!--end header-wrapper -->
+
+<div id="sticky-header">
+ <div>
+ <a class="logo" href="#top"></a>
+ <a class="top" href="#top"></a>
+ <ul class="breadcrumb">
+
+ <li class="current">WearableNotifications</li>
+ </ul>
+ </div>
+</div>
-
<div class="wrap clearfix" id="body-content">
<div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav" class="scroll-pane">
-<a class="totop" href="#top" data-g-event="left-nav-top">to top</a>
<ul id="nav">
@@ -327,7 +344,7 @@
</ul>
-
+
</div>
</div> <!-- end side-nav -->
@@ -340,6 +357,7 @@
+
<div class="col-12" id="doc-col">
<div id="api-info-block">
diff --git a/docs/html/sdk/installing/installing-adt.jd b/docs/html/sdk/installing/installing-adt.jd
index e12dfd8..7bf366c 100644
--- a/docs/html/sdk/installing/installing-adt.jd
+++ b/docs/html/sdk/installing/installing-adt.jd
@@ -75,7 +75,7 @@
<div class="sidebox-wrapper">
<div class="sidebox">
<h2>App Translations in Google Play</h2>
-<p>Google Play <a href="{@docRoot}distribute/googleplay/publish/localizing.html#gp-trans">App
+<p>Google Play <a href="{@docRoot}distribute/tools/localization-checklist.html#gp-trans">App
Translation Service</a> is available in the Developer Console to help you
localize your app for a global user base. You can browse qualified vendors, get
estimates, upload strings for translation, and then import the translations directly
@@ -99,7 +99,7 @@
localization works instantly.</p>
<p>For more information about translation services in Google Play, see <a
-href="{@docRoot}distribute/googleplay/publish/localizing.html#gp-trans">Purchase
+href="{@docRoot}distribute/tools/localization-checklist.html#gp-trans">Purchase
professional translations through the Developer Console</a>.</p>
<p>To install the ADT Translation Manager Plugin follow these steps:</p>
@@ -129,7 +129,7 @@
<ul>
<li>The full ADT Plugin must be installed in your Eclipse environment before you install the ADT Translation Manager Plugin.</li>
<li>ADT Translation Manager Plugin is designed for use with the translation services offered through the Google Play Developer Console. It is not designed for general purpose import/export of strings. </li>
-<li>To use the plugin, you must <a href="{@docRoot}distribute/googleplay/publish/register.html">set up a Developer Console account</a>. </li>
+<li>To use the plugin, you must <a href="{@docRoot}distribute/googleplay/start.html">set up a Developer Console account</a>. </li>
<li>Currently, translation services are available through the Developer Console only as part of a pilot program. To use the plugin, you must first sign up for the pilot program by visiting the Developer Console.</li>
<li>If you downloaded ADT as part of the SDK ADT bundle, you may encounter an error when attempting to download the ADT Translation Manager Plugin from the remote repository. In that case, open the <strong>Install New
Software</strong>, uncheck "Contact all update sites during install to find required software" at the bottom and try again. </li>
diff --git a/docs/html/sitemap.txt b/docs/html/sitemap.txt
index 9bff5d4..cd87d1c 100644
--- a/docs/html/sitemap.txt
+++ b/docs/html/sitemap.txt
@@ -17,8 +17,8 @@
http://developer.android.com/google/index.html
http://developer.android.com/distribute/googleplay/publish/index.html
http://developer.android.com/distribute/googleplay/promote/index.html
-http://developer.android.com/distribute/googleplay/quality/index.html
-http://developer.android.com/distribute/googleplay/spotlight/index.html
+http://developer.android.com/distribute/essentials/quality/index.html
+http://developer.android.com/distribute/stories/index.html
http://developer.android.com/distribute/open.html
http://developer.android.com/about/versions/jelly-bean.html
http://developer.android.com/support.html
@@ -64,9 +64,9 @@
http://developer.android.com/design/building-blocks/dialogs.html
http://developer.android.com/design/building-blocks/pickers.html
http://developer.android.com/google/play-services/maps.html
-http://developer.android.com/distribute/googleplay/quality/tablet.html
-http://developer.android.com/distribute/googleplay/spotlight/tablets.html
-http://developer.android.com/distribute/googleplay/quality/core.html
+http://developer.android.com/distribute/essentials/quality/tablet.html
+http://developer.android.com/distribute/stories/tablets.html
+http://developer.android.com/distribute/essentials/quality/core.html
http://developer.android.com/guide/topics/ui/notifiers/notifications.html
http://developer.android.com/guide/topics/ui/dialogs.html
http://developer.android.com/downloads/design/Android_Design_Downloads_20120823.zip
@@ -173,13 +173,13 @@
http://developer.android.com/distribute/googleplay/about/visibility.html
http://developer.android.com/distribute/googleplay/about/monetizing.html
http://developer.android.com/distribute/googleplay/about/distribution.html
-http://developer.android.com/distribute/googleplay/publish/register.html
+http://developer.android.com/distribute/googleplay/start.html
http://developer.android.com/distribute/googleplay/publish/console.html
-http://developer.android.com/distribute/googleplay/publish/preparing.html
-http://developer.android.com/distribute/googleplay/promote/linking.html
+http://developer.android.com/distribute/tools/launch-checklist.html
+http://developer.android.com/distribute/tools/promote/linking.html
http://developer.android.com/distribute/googleplay/promote/badges.html
http://developer.android.com/distribute/promote/device-art.html
-http://developer.android.com/distribute/googleplay/promote/brand.html
+http://developer.android.com/distribute/tools/promote/brand.html
http://developer.android.com/distribute/googleplay/strategies/app-quality.html
http://developer.android.com/google/play/billing/index.html
http://developer.android.com/google/play/licensing/index.html
diff --git a/docs/html/support.jd b/docs/html/support.jd
index 63bed30..4271eee 100644
--- a/docs/html/support.jd
+++ b/docs/html/support.jd
@@ -1,6 +1,8 @@
page.title=Developer Support
+page.type=about
fullpage=1
-excludeFromSuggestions=true
+page.metaDescription=Resources available to help you report and resolve issues while you are developing apps for Android.
+page.image=/images/android-support-card.png
@jd:body
<div class="wrap" style="width:940px;">
diff --git a/docs/html/tools/publishing/preparing.jd b/docs/html/tools/publishing/preparing.jd
index 413b56e..7192aa8 100644
--- a/docs/html/tools/publishing/preparing.jd
+++ b/docs/html/tools/publishing/preparing.jd
@@ -22,7 +22,7 @@
<ol>
<li><a href="{@docRoot}tools/publishing/publishing_overview.html">Publishing Overview</a></li>
<li><a href="{@docRoot}tools/publishing/app-signing.html">Signing Your Applications</a></li>
- <li><a href="{@docRoot}distribute/googleplay/publish/preparing.html">Launch Checklist for Google Play</a></li>
+ <li><a href="{@docRoot}distribute/tools/launch-checklist.html">Launch Checklist for Google Play</a></li>
</ol>
</div>
</div>
@@ -44,7 +44,7 @@
<p>This document summarizes the main tasks you need to perform to prepare your application for
release. The tasks that are described in this document apply to all Android applications regardless
how they are released or distributed to users. If you are releasing your application through Google
-Play, you should also read <a href="{@docRoot}distribute/googleplay/publish/preparing.html">Publishing
+Play, you should also read <a href="{@docRoot}distribute/tools/launch-checklist.html">Publishing
Checklist for Google Play</a> to be sure your release-ready application satisfies all Google Play
requirements.</p>
@@ -353,7 +353,7 @@
behaves correctly, you can release your application to users. For more information, see
<a href="{@docRoot}tools/publishing/publishing_overview.html#publishing-release">Releasing Your
Application to Users</a>. If you are publishing your application on Google Play, see
-<a href="{@docRoot}distribute/googleplay/publish/preparing.html">Launch Checklist
+<a href="{@docRoot}distribute/tools/launch-checklist.html">Launch Checklist
for Google Play</a>.</p>
diff --git a/docs/html/tools/publishing/publishing_overview.jd b/docs/html/tools/publishing/publishing_overview.jd
index ea01e20..c4b3bdf 100644
--- a/docs/html/tools/publishing/publishing_overview.jd
+++ b/docs/html/tools/publishing/publishing_overview.jd
@@ -16,7 +16,7 @@
</ol>
<h2>See also</h2>
<ol>
- <li><a href="{@docRoot}distribute/googleplay/publish/preparing.html">Publishing on Google Play</a></li>
+ <li><a href="{@docRoot}distribute/tools/launch-checklist.html">Publishing on Google Play</a></li>
</ol>
</div>
</div>
@@ -35,7 +35,7 @@
</li>
</ul>
-<p>Usually, you release your application through an application marketplace, such as <a href="{@docRoot}distribute/index.html">Google Play</a>.
+<p>Usually, you release your application through an application marketplace, such as <a href="{@docRoot}distribute/googleplay/index.html">Google Play</a>.
However, you can also release applications by sending them directly to users or by letting users
download them from your own website.</p>
@@ -157,7 +157,7 @@
</li>
</ul>
-<p>For information complete information, see <a href="{@docRoot}distribute/index.html">Google Play</a>.</p>
+<p>For information complete information, see <a href="{@docRoot}distribute/googleplay/index.html">Google Play</a>.</p>
<h3 id="publishing-email">Releasing your application through email</h3>
diff --git a/docs/html/tools/publishing/versioning.jd b/docs/html/tools/publishing/versioning.jd
index a1cfb30..6d3ec2f 100644
--- a/docs/html/tools/publishing/versioning.jd
+++ b/docs/html/tools/publishing/versioning.jd
@@ -25,7 +25,7 @@
<ol>
<li><a href="{@docRoot}tools/publishing/preparing.html">Preparing to Publish Your Application</a></li>
-<li><a href="{@docRoot}distribute/googleplay/publish/preparing.html">Launch Checklist for Google Play</a></li>
+<li><a href="{@docRoot}distribute/tools/launch-checklist.html">Launch Checklist for Google Play</a></li>
<li><a href="{@docRoot}guide/topics/manifest/manifest-intro.html">The AndroidManifest.xml File</a></li>
</ol>
diff --git a/docs/html/training/basics/intents/sending.jd b/docs/html/training/basics/intents/sending.jd
index 30dc95a..2a4dae7 100644
--- a/docs/html/training/basics/intents/sending.jd
+++ b/docs/html/training/basics/intents/sending.jd
@@ -166,7 +166,7 @@
starts in case you need to disable the feature that uses the intent before the user attempts to use
it. If you know of a specific app that can handle the intent, you can also provide a link for the
user to download the app (see how to <a
-href="{@docRoot}distribute/googleplay/promote/linking.html">link to your product on Google
+href="{@docRoot}distribute/tools/promote/linking.html">link to your product on Google
Play</a>).</p>
diff --git a/docs/html/training/basics/supporting-devices/languages.jd b/docs/html/training/basics/supporting-devices/languages.jd
index 5a1507c..45e2ab2 100644
--- a/docs/html/training/basics/supporting-devices/languages.jd
+++ b/docs/html/training/basics/supporting-devices/languages.jd
@@ -19,7 +19,7 @@
</ol>
<h2>You should also read</h2>
<ul>
- <li><a href="{@docRoot}distribute/googleplay/publish/localizing.html">Localization Checklist</a></li>
+ <li><a href="{@docRoot}distribute/tools/localization-checklist.html">Localization Checklist</a></li>
<li><a href="{@docRoot}guide/topics/resources/localization.html">Localization with Resources</a></li>
</ul>
</div>
diff --git a/docs/html/training/basics/supporting-devices/platforms.jd b/docs/html/training/basics/supporting-devices/platforms.jd
index c38101a..60aaf6a 100644
--- a/docs/html/training/basics/supporting-devices/platforms.jd
+++ b/docs/html/training/basics/supporting-devices/platforms.jd
@@ -1,4 +1,5 @@
page.title=Supporting Different Platform Versions
+page.metaDescription=Training on how to declare support for minimum and target API levels.
parent.title=Supporting Different Devices
parent.link=index.html
diff --git a/docs/html/training/design-navigation/multiple-sizes.jd b/docs/html/training/design-navigation/multiple-sizes.jd
index 26a5828..a0ce103 100644
--- a/docs/html/training/design-navigation/multiple-sizes.jd
+++ b/docs/html/training/design-navigation/multiple-sizes.jd
@@ -8,6 +8,10 @@
next.title=Providing Descendant and Lateral Navigation
next.link=descendant-lateral.html
+meta.tags="multiple screens"
+page.metaDescription=Designing an intuitive, effective navigation for tablets and other devices.
+page.image=/images/training/app-navigation-multiple-sizes-strategy-stack.png
+
@jd:body
<div id="tb-wrapper">
diff --git a/docs/html/training/multiscreen/index.jd b/docs/html/training/multiscreen/index.jd
index 45b6161..8eff246 100644
--- a/docs/html/training/multiscreen/index.jd
+++ b/docs/html/training/multiscreen/index.jd
@@ -1,5 +1,6 @@
page.title=Designing for Multiple Screens
-page.tags=tablet,tv,fragments,support
+page.tags="tablet","tv","fragments","support"
+page.metaDescription=Training on how to add intuitive, effective navigation for tablets and other devices.
trainingnavtop=true
startpage=true
diff --git a/docs/html/training/multiscreen/screendensities.jd b/docs/html/training/multiscreen/screendensities.jd
index 7d6ff44..7817830 100644
--- a/docs/html/training/multiscreen/screendensities.jd
+++ b/docs/html/training/multiscreen/screendensities.jd
@@ -1,4 +1,7 @@
page.title=Supporting Different Densities
+page.metaDescription=Providing sets of layouts and drawable resources for specific ranges of device screens.
+meta.tags="multiple screens"
+
parent.title=Designing for Multiple Screens
parent.link=index.html
diff --git a/services/core/java/com/android/server/location/LocationRequestStatistics.java b/services/core/java/com/android/server/location/LocationRequestStatistics.java
index 85231bb..264026e 100644
--- a/services/core/java/com/android/server/location/LocationRequestStatistics.java
+++ b/services/core/java/com/android/server/location/LocationRequestStatistics.java
@@ -13,7 +13,7 @@
public class LocationRequestStatistics {
private static final String TAG = "LocationStats";
- // Maps package name nad provider to location request statistics.
+ // Maps package name and provider to location request statistics.
public final HashMap<PackageProviderKey, PackageStatistics> statistics
= new HashMap<PackageProviderKey, PackageStatistics>();
diff --git a/telephony/java/android/telephony/PhoneNumberUtils.java b/telephony/java/android/telephony/PhoneNumberUtils.java
index c79e9bf..9da032a 100644
--- a/telephony/java/android/telephony/PhoneNumberUtils.java
+++ b/telephony/java/android/telephony/PhoneNumberUtils.java
@@ -1492,6 +1492,10 @@
* @return the normalized number.
*/
public static String normalizeNumber(String phoneNumber) {
+ if (TextUtils.isEmpty(phoneNumber)) {
+ return "";
+ }
+
StringBuilder sb = new StringBuilder();
int len = phoneNumber.length();
for (int i = 0; i < len; i++) {