Merge "Docs: Simplified the Running and Building in Android Studio doc" into mnc-mr-docs
diff --git a/docs/html/about/_book.yaml b/docs/html/about/_book.yaml
new file mode 100644
index 0000000..207bcc0
--- /dev/null
+++ b/docs/html/about/_book.yaml
@@ -0,0 +1,49 @@
+toc:
+- title: Marshmallow
+ path: /about/versions/marshmallow/index.html
+ section:
+ - title: Android 6.0 APIs
+ path: /about/versions/marshmallow/android-6.0.html
+ - title: Android 6.0 Changes
+ path: /about/versions/marshmallow/android-6.0-changes.html
+ - title: Android 6.0 Samples
+ path: /about/versions/marshmallow/samples.html
+
+- title: Lollipop
+ path: /about/versions/lollipop.html
+ section:
+ - title: Android 5.1 APIs
+ path: /about/versions/android-5.1.html
+ - title: Android 5.0 APIs
+ path: /about/versions/android-5.0.html
+ custom_link_attributes:
+ - es-lang: "API de Android 5.0"
+ - ja-lang: "Android 5.0 API"
+ - ko-lang: "Android 5.0 API"
+ - ru-lang: "API для Android 5.0"
+ - zh-cn-lang: "Android 5.0 API"
+ - zh-tw-lang: "Android 5.0 API"
+ - title: Android 5.0 Changes
+ path: /about/versions/android-5.0-changes.html
+
+- title: KitKat
+ path: /about/versions/kitkat.html
+ section:
+ - title: Android 4.4 APIs
+ path: /about/versions/android-4.4.html
+
+- title: Jelly Bean
+ path: /about/versions/jelly-bean.html
+ section:
+ - title: Android 4.3 APIs
+ path: /about/versions/android-4.3.html
+ - title: Android 4.2 APIs
+ path: /about/versions/android-4.2.html
+ - title: Android 4.1 APIs
+ path: /about/versions/android-4.1.html
+
+- title: About Android
+ path: /about/android.html
+
+- title: Dashboards
+ path: /about/dashboards/index.html
diff --git a/docs/html/design/_book.yaml b/docs/html/design/_book.yaml
new file mode 100644
index 0000000..0bfc2d2
--- /dev/null
+++ b/docs/html/design/_book.yaml
@@ -0,0 +1,111 @@
+toc:
+- title: Creative Vision
+ path: /design/get-started/creative-vision.html
+ section:
+ - title: Design Principles
+ path: /design/get-started/principles.html
+ custom_link_attributes:
+ - es-lang: "Principios de diseño para Android"
+ - ja-lang: "Android デザイン指針"
+ - ko-lang: "Android 디자인 원칙"
+ - pt-br-lang: "Princípios de projeto para Android"
+ - ru-lang: "Принципы проектирования Android"
+ - zh-cn-lang: "Android 设计原则"
+ - zh-tw-lang: "Android 設計原則"
+ - title: New in Android
+ path: /design/patterns/new.html
+
+- title: Material for Android
+ path: /design/material/index.html
+ custom_link_attributes:
+ - ja-lang: "マテリアル デザイン"
+ - ko-lang: "머티어리얼 디자인"
+ - zh-cn-lang: "材料设计"
+ - zh-tw-lang: "材料設計"
+
+- title: Devices
+ path: /design/devices.html
+ section:
+ - title: Phones & Tablets
+ path: /design/handhelds/index.html
+ - title: Wear
+ path: /design/wear/index.html
+ section:
+ - title: Creative Vision
+ path: /design/wear/creative-vision.html
+ - title: Design Principles
+ path: /design/wear/principles.html
+ - title: App Structure
+ path: /design/wear/structure.html
+ - title: Context Awareness
+ path: /design/wear/context.html
+ - title: UI Patterns
+ path: /design/wear/patterns.html
+ - title: Style
+ path: /design/wear/style.html
+ - title: Watch Faces
+ path: /design/wear/watchfaces.html
+ - title: TV
+ path: /design/tv/index.html
+ section:
+ - title: Creative Vision
+ path: /design/tv/principles.html
+ - title: UI Patterns
+ path: /design/tv/patterns.html
+ - title: Style
+ path: /design/tv/style.html
+ - title: Auto
+ path: /design/auto/index.html
+
+- title: Pure Android
+ path: /design/patterns/index.html
+ section:
+ - title: Devices and Displays
+ path: /design/style/devices-displays.html
+ - title: Navigation
+ path: /design/patterns/navigation.html
+ custom_link_attributes:
+ - es-lang: "Navegación con los botones Back y Up"
+ - ja-lang: "Back と Up を使用したナビゲーション"
+ - ko-lang: "뒤로 및 위로 탐색 기능이 포함된 탐색"
+ - pt-br-lang: "Navegação com Voltar e Para cima"
+ - ru-lang: "Навигация с помощью кнопок \"Назад\" и \"Вверх\""
+ - zh-cn-lang: "使用返回和向上导航"
+ - zh-tw-lang: "使用 [返回] 及 [上一層] 導覽"
+ - title: Notifications
+ path: /design/patterns/notifications.html
+ custom_link_attributes:
+ - es-lang: "Notificaciones"
+ - ja-lang: "通知"
+ - ko-lang: "알림"
+ - pt-br-lang: "Notificações"
+ - ru-lang: "Уведомления"
+ - zh-cn-lang: "通知"
+ - zh-tw-lang: "通知"
+ - title: Widgets
+ path: /design/patterns/widgets.html
+ - title: Swipe Views
+ path: /design/patterns/swipe-views.html
+ - title: Full Screen
+ path: /design/patterns/fullscreen.html
+ - title: Confirming & Acknowledging
+ path: /design/patterns/confirming-acknowledging.html
+ custom_link_attributes:
+ - es-lang: "Confirmación y reconocimiento"
+ - ja-lang: "確認と通知"
+ - ko-lang: "확인 및 승인하기"
+ - pt-br-lang: "Confirmação e reconhecimento"
+ - ru-lang: "Подтверждение и уведомление"
+ - zh-cn-lang: "确认和确知"
+ - zh-tw-lang: "確認及確認完成"
+ - title: Pure Android
+ path: /design/patterns/pure-android.html
+ - title: Compatibility
+ path: /design/patterns/compatibility.html
+ - title: Accessibility
+ path: /design/patterns/accessibility.html
+ - title: Help
+ path: /design/patterns/help.html
+
+- title: Downloads
+ path: /design/downloads/index.html
diff --git a/docs/html/distribute/analyze/_book.yaml b/docs/html/distribute/analyze/_book.yaml
new file mode 100644
index 0000000..1e24cb9
--- /dev/null
+++ b/docs/html/distribute/analyze/_book.yaml
@@ -0,0 +1,18 @@
+toc:
+- title: Get Started with Analytics
+ path: /distribute/analyze/start.html
+
+- title: Measure What Matters
+ path: /distribute/analyze/measure.html
+
+- title: Understand User Value
+ path: /distribute/analyze/understand-user-value.html
+
+- title: Improve Marketing ROI
+ path: /distribute/analyze/improve-roi.html
+
+- title: Build Better Apps
+ path: /distribute/analyze/build-better-apps.html
+
+- title: Act Across Google Services
+ path: /distribute/analyze/google-services.html
diff --git a/docs/html/distribute/engage/_book.yaml b/docs/html/distribute/engage/_book.yaml
new file mode 100644
index 0000000..ef86a2a
--- /dev/null
+++ b/docs/html/distribute/engage/_book.yaml
@@ -0,0 +1,30 @@
+toc:
+- title: Increase Usage through Intents
+ path: /distribute/engage/intents.html
+
+- title: Build Useful Widgets
+ path: /distribute/engage/widgets.html
+
+- title: Use Rich Notifications
+ path: /distribute/engage/notifications.html
+
+- title: Drive Usage with Search
+ path: /distribute/engage/deep-linking.html
+
+- title: Drive Engagement with Ads
+ path: /distribute/engage/ads.html
+
+- title: Encourage Competition
+ path: /distribute/engage/game-services.html
+
+- title: Understand User Behavior
+ path: /distribute/engage/analytics.html
+
+- title: Add Google Sign-in
+ path: /distribute/engage/easy-signin.html
+
+- title: Integrate GCM
+ path: /distribute/engage/gcm.html
+
+- title: Get Feedback with Beta Tests
+ path: /distribute/engage/beta.html
diff --git a/docs/html/distribute/essentials/_book.yaml b/docs/html/distribute/essentials/_book.yaml
new file mode 100644
index 0000000..a953074
--- /dev/null
+++ b/docs/html/distribute/essentials/_book.yaml
@@ -0,0 +1,50 @@
+toc:
+- title: Core App Quality
+ path: /distribute/essentials/quality/core.html
+ custom_link_attributes:
+ - zh-cn-lang: "应用的核心质量"
+
+- title: Tablet App Quality
+ path: /distribute/essentials/quality/tablets.html
+ custom_link_attributes:
+ - zh-cn-lang: "平板电脑应用的质量"
+
+- title: Wear App Quality
+ path: /distribute/essentials/quality/wear.html
+
+- title: TV App Quality
+ path: /distribute/essentials/quality/tv.html
+
+- title: Auto App Quality
+ path: /distribute/essentials/quality/auto.html
+
+- title: Launch Checklist
+ path: /distribute/tools/launch-checklist.html
+ custom_link_attributes:
+ - zh-cn-lang: "发布检查清单"
+
+- title: Localization Checklist
+ path: /distribute/tools/localization-checklist.html
+ custom_link_attributes:
+ - zh-cn-lang: "本地化检查清单"
+
+- title: Brand Guidelines
+ path: /distribute/tools/promote/brand.html
+ custom_link_attributes:
+ - zh-cn-lang: "品牌指南"
+
+- title: Device Art Generator
+ path: /distribute/tools/promote/device-art.html
+
+- title: Google Play Badges
+ path: https://play.google.com/intl/en_us/badges/
+ custom_link_attributes:
+ - zh-cn-lang: "Google Play 徽章生成器"
+
+- title: Linking to Your Products
+ path: /distribute/tools/promote/linking.html
+ custom_link_attributes:
+ - zh-cn-lang: "链接到您的商品"
+
+- title: Alternative Distribution
+ path: /distribute/tools/open-distribution.html
diff --git a/docs/html/distribute/googleplay/_book.yaml b/docs/html/distribute/googleplay/_book.yaml
new file mode 100644
index 0000000..63c9008
--- /dev/null
+++ b/docs/html/distribute/googleplay/_book.yaml
@@ -0,0 +1,100 @@
+toc:
+- title: The Google Play Opportunity
+ path: /distribute/googleplay/about.html
+ custom_link_attributes:
+ - es-lang: "La oportunidad de Google Play"
+ - ja-lang: "Google Play の可能性"
+ - ko-lang: "Google Play 활용 기회"
+ - pt-br-lang: "A oportunidade do Google Play"
+ - ru-lang: "Возможности Google Play"
+ - zh-cn-lang: "Google Play 蕴藏的机会"
+ - zh-tw-lang: "Google Play商機"
+
+- title: Get Started with Publishing
+ path: /distribute/googleplay/start.html
+ custom_link_attributes:
+ - es-lang: "Comienza a publicar"
+ - ja-lang: "アプリを公開する"
+ - ko-lang: "게시 시작하기"
+ - pt-br-lang: "Introdução à publicação"
+ - ru-lang: "Первые шаги в публикациях"
+ - zh-cn-lang: "开始发布"
+ - zh-tw-lang: "開始發行"
+
+- title: Developer Console
+ path: /distribute/googleplay/developer-console.html
+ custom_link_attributes:
+ - es-lang: "Consola para desarrolladores"
+ - ja-lang: "デベロッパー コンソール"
+ - ko-lang: "개발자 콘솔"
+ - pt-br-lang: "Console do Desenvolvedor"
+ - ru-lang: "Консоль разработчика"
+ - zh-cn-lang: "开发者控制台"
+
+- title: Distribute to Android Wear
+ path: /distribute/googleplay/wear.html
+ custom_link_attributes:
+ - es-lang: "Distribución para Android Wear"
+ - ja-lang: "Android Wear への配布"
+ - ko-lang: "Android Wear에 배포"
+ - pt-br-lang: "Distribuindo para Android Wear"
+ - ru-lang: "Распространение приложений Android Wear"
+ - zh-cn-lang: "分发到 Android Wear"
+ - zh-tw-lang: "散佈至 Android Wear"
+
+- title: Distribute to Android TV
+ path: /distribute/googleplay/tv.html
+ custom_link_attributes:
+ - es-lang: "Distribución para Android TV"
+ - ja-lang: "Android TV への配布"
+ - ko-lang: "Android TV에 배포"
+ - pt-br-lang: "Distribuindo para Android TV"
+ - ru-lang: "Распространение приложений в Android TV"
+ - zh-cn-lang: "分发到 Android TV"
+ - zh-tw-lang: "散佈至 Android 電視"
+
+- title: Distribute to Android Auto
+ path: /distribute/googleplay/auto.html
+ custom_link_attributes:
+ - es-lang: "Distribución para Android Auto"
+ - ja-lang: "Android Auto への配布"
+ - ko-lang: "Android Auto에 배포"
+ - pt-br-lang: "Distribuindo para o Android Auto"
+ - ru-lang: "Распространение приложений для Android Auto"
+ - zh-cn-lang: "分发到 Android Auto"
+ - zh-tw-lang: "散佈至 Android Auto"
+
+- title: Designed for Families
+ path: /distribute/googleplay/families/about.html
+ custom_link_attributes:
+ - es-lang: "Diseñado para la familia"
+ - ru-lang: "Для всей семьи"
+ - zh-cn-lang: "为家庭设计"
+
+- title: Google Play for Work
+ path: /distribute/googleplay/work/about.html
+
+- title: Google Play for Education
+ path: /distribute/googleplay/edu/about.html
+ section:
+ - title: Publish Apps
+ path: /distribute/googleplay/edu/start.html
+ - title: Video Resources
+ path: /distribute/googleplay/edu/videos.html
+
+- title: Stream Your Content with Cast
+ path: /distribute/googleplay/cast.html
+
+- title: Build VR with Cardboard
+ path: /distribute/googleplay/cardboard.html
+
+- title: Find Success on Google Play
+ path: /distribute/googleplay/guide.html
+ custom_link_attributes:
+ - es-lang: "Cómo tener éxito en Google Play"
+ - ja-lang: "Google Play で成功を手にする"
+ - ko-lang: "Google Play에서 성공 모색"
+ - pt-br-lang: "Obtendo sucesso no Google Play"
+ - ru-lang: "Найдите свой путь к успеху в Google Play"
+ - zh-cn-lang: "在 Google Play 上取得成功"
+ - zh-tw-lang: "在 Google Play 上尋找成功"
diff --git a/docs/html/distribute/monetize/_book.yaml b/docs/html/distribute/monetize/_book.yaml
new file mode 100644
index 0000000..2ebc695
--- /dev/null
+++ b/docs/html/distribute/monetize/_book.yaml
@@ -0,0 +1,18 @@
+toc:
+- title: Premium
+ path: /distribute/monetize/premium.html
+
+- title: Freemium
+ path: /distribute/monetize/freemium.html
+
+- title: Subscriptions
+ path: /distribute/monetize/subscriptions.html
+
+- title: AdMob Ads
+ path: /distribute/monetize/ads.html
+
+- title: E-commerce
+ path: /distribute/monetize/ecommerce.html
+
+- title: Purchasing
+ path: /distribute/monetize/payments.html
diff --git a/docs/html/distribute/stories/_book.yaml b/docs/html/distribute/stories/_book.yaml
new file mode 100644
index 0000000..ef245d3
--- /dev/null
+++ b/docs/html/distribute/stories/_book.yaml
@@ -0,0 +1,12 @@
+toc:
+- title: Videos
+ path: /distribute/stories/index.html
+
+- title: Going Global
+ path: /distribute/stories/localization.html
+
+- title: Games
+ path: /distribute/stories/games.html
+
+- title: Tablets
+ path: /distribute/stories/tablets.html
diff --git a/docs/html/distribute/stories/apps.jd b/docs/html/distribute/stories/apps.jd
new file mode 100644
index 0000000..9a642dc
--- /dev/null
+++ b/docs/html/distribute/stories/apps.jd
@@ -0,0 +1,34 @@
+page.title=Developer Stories: Apps
+meta.tags="apps, developer story"
+page.timestamp=1381449601
+page.image=images/cards/distribute/stories/intuit-mint.png
+page.metaDescription=How app developers are making use of localization, tablet features.
+
+@jd:body
+
+<p>
+ Learn more about how app developers are using Google Play services to delight
+ their users.
+</p>
+
+<section class="dac-section dac-small" id="app-videos"><div class="wrap">
+ <h2 class="norule">Videos</h2>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="type:youtube+tag:developerstory+tag:apps"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x6"
+ data-items-per-page="15"
+ data-initial-results="6"></div>
+</div></section>
+
+<section class="dac-section dac-small" id="apps-articles"><div class="wrap">
+ <h2 class="norule">Articles</h2>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="type:distribute+tag:developerstory+tag:apps"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x6"
+ data-items-per-page="15"
+ data-initial-results="3"></div>
+</div></section>
\ No newline at end of file
diff --git a/docs/html/distribute/stories/apps/intuit-mint.jd b/docs/html/distribute/stories/apps/intuit-mint.jd
new file mode 100644
index 0000000..5b2e400
--- /dev/null
+++ b/docs/html/distribute/stories/apps/intuit-mint.jd
@@ -0,0 +1,82 @@
+page.title=Mint finds more screen real estate gives more engagement
+page.metaDescription=Intuit expands their Mint app to the tablet.
+page.tags="developerstory", "apps", "googleplay"
+page.image=images/cards/distribute/stories/intuit-mint.png
+page.timestamp=1456340902
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/intuit-mint-icon.png"
+ height="113" />
+</div>
+
+<p>
+ Intuit wanted to expand their
+ <a class="external-link"
+ href="http://play.google.com/store/apps/details?id=com.mint">Mint.com
+ Personal Finance</a> offering for mobile by including a version optimized for
+ Android tablets. However, they knew that taking the layout that worked for
+ phones and simply showing an enlarged version wouldn’t take full advantage of
+ the opportunities that tablets afford.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ Following the Tablet Quality guidelines, the Intuit team updated Mint to
+ target 7- to 10-inch tablets, in addition to phones. “We knew we had a lot
+ more real estate, and we wanted to provide a more immersive experience for
+ our users” said Ken Sun, Intuit Group Product Manager for Mint.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:380px">
+ <img
+ src="{@docRoot}images/distribute/stories/intuit-mint-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/intuit-mint-screenshot.png 1x
+ {@docRoot}images/distribute/stories/intuit-mint-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Mint used the extra screen area on tablets to offer quick access to
+ additional tools and information
+ </p>
+</div>
+
+<p>
+ Intuit’s Mint app, which has a 4-star rating on Google Play, brings a number
+ of features to Android tablets that aren’t available for phones. These include
+ a more visual presentation of personal financial data: a change that has
+ contributed to <b>much higher user engagement</b>.
+</p>
+
+<p>
+ For example, 50 percent more Android tablet users have Mint sessions of <b>
+ five minutes or longer</b> than they do on phones.
+</p>
+
+<p>
+ Intuit also noted that customer budget operations (view, edit, drill-down,
+ and others) are <b>seven times higher on Android tablets</b> than they are on
+ phones.
+</p>
+
+<p>
+ Ken noted that “We’ve found that phone usage is indicative of a customer’s
+ regular financial check-in, while tablet usage points towards more analysis
+ and interaction with that customer’s personal financial data. This is the
+ sort of immersive engagement experience we were looking for; the tablet and
+ phone apps serve as great complements to each other."
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out more about creating a tablet version of your app by reviewing the
+ <a href="http://developer.android.com/distribute/essentials/quality/tablets.html">
+ Tablet App Quality</a> guidelines and growing your user base.
+</p>
diff --git a/docs/html/distribute/stories/apps/remember-the-milk.jd b/docs/html/distribute/stories/apps/remember-the-milk.jd
new file mode 100644
index 0000000..16c0caf
--- /dev/null
+++ b/docs/html/distribute/stories/apps/remember-the-milk.jd
@@ -0,0 +1,77 @@
+page.title=Remember The Milk lifts installs with tablet design
+page.metaDescription=The team at Remember The Milk redesigned their app for tablets.
+page.tags="developerstory", "apps", "googleplay"
+page.image=images/cards/distribute/stories/remember-the-milk.jpg
+page.timestamp=1456340902
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/rememberthemilk-icon.png"
+ height="113" />
+</div>
+
+<p>
+ When the Android tablet guidelines came out, the team at Remember The Milk had
+ already been thinking about a redesign for
+ <a class="external-link"
+ href="http://play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">
+ Remember The Milk</a> their feature-packed to-do list app; never forget the
+ milk (or anything else) again.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ “We took this as an opportunity to think about how we were going to approach
+ Android tablets differently from a user experience perspective,” says Omar
+ Kilani, Co-founder of Remember The Milk. “The guidelines were a helpful
+ resource, and with the extra screen real estate tablets afford, users have
+ the opportunity to see all of their data in context and drill down on more
+ items."
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:367px">
+ <img
+ src="{@docRoot}images/distribute/stories/rememberthemilk-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/rememberthemilk-screenshot.png 1x
+ {@docRoot}images/distribute/stories/rememberthemilk-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Tablet version of Remember The Milk
+ </p>
+</div>
+
+<p>
+ In addition to the basic changes to bring the app to tablets, the team also
+ came out with a number of other goodies — including a new set of widgets and
+ richer notifications, and more ways to provide an immersive experience for
+ their users. And importantly, following the guidelines meant they could
+ deliver a <b>single APK for phones and tablets</b>.
+</p>
+
+<p>
+ Following the
+ <a class="external-link"
+ href="http://blog.rememberthemilk.com/2013/04/the-all-new-remember-the-milk-for-android-and-tablets-too/">
+ update</a> of the Android app, in part to meet the tablet design criteria,
+ Remember The Milk saw an <b>83% increase in tablet installs</b>. They also
+ noted that Nexus 7 was theat most popular Android device for the app.
+</p>
+
+<p>
+ Omar Kilani, concludesd that “For us, designing for tablets was an investment that has really paid off.”
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out more about creating a tablet version of your app by reviewing the
+ <a href="http://developer.android.com/distribute/essentials/quality/tablets.html">
+ Tablet App Quality</a> guidelines and growing your user base.
+</p>
diff --git a/docs/html/distribute/stories/apps/sayhi.jd b/docs/html/distribute/stories/apps/sayhi.jd
new file mode 100644
index 0000000..1beb028
--- /dev/null
+++ b/docs/html/distribute/stories/apps/sayhi.jd
@@ -0,0 +1,83 @@
+page.title=SayHi Chat grows installs and user engagement with App Translation Service
+page.metaDescription=The SayHi team used details from Google Analytics, the DAU and user growth numbers, to identify several candidate languages for new translations.
+page.tags="developerstory", "apps", "googleplay"
+page.image=images/cards/distribute/stories/sayhichat.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/sayhichat-icon.png"
+ height="113" />
+</div>
+
+<p>
+ The <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.unearby.sayhi">
+ SayHi Chat app</a>, a social app to help its users find people nearby, was
+ first released in Japanese, Chinese, and English. It soon became one of the
+ most popular apps in Japan, Hong Kong, and Taiwan.
+</p>
+
+
+<h3>What they did</h3>
+
+<p>
+ The SayHi team realized that the global growth of SayHi was being restricted
+ by the limited number of languages in which the app was available. Using
+ details from Google Analytics, the DAU and user growth numbers, the SayHi team
+ identified several candidate languages for new translations. After looking at
+ the total of Android and iOS users in each market, they settled on a list of
+ 13 additional languages. They then engaged the App Translation Service through
+ the Google Play Developer Console to complete the translations.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:194px">
+ <img width="194"
+ src="{@docRoot}images/distribute/stories/sayhichat-screenshot.jpg"
+ srcset=
+ "{@docRoot}images/distribute/stories/sayhichat-screenshot.jpg 1x
+ {@docRoot}images/distribute/stories/sayhichat-screenshot_2x.jpg 2x">
+ <p class="img-caption">
+ Arabic version of SayHi Chat
+ </p>
+</div>
+
+<p>
+ SayHi launched in its new languages in August 2013 and immediately saw a 120
+ percent increase in install rates. In addition, the app entered the Top 10
+ apps rankings in countries including Poland and Italy.
+</p>
+
+<p>
+ Notably, they also saw steady growth in Spain after replacing their previous
+ non-professional Spanish translation with a professional one produced by the
+ App Translation Service.
+</p>
+
+<p>
+ There was also an increase of about 20 percent in revenue and around a 50
+ percent increase in User Reviews in the new languages.
+</p>
+
+<p>
+ Yan Shi, senior developer at SayHi, says “The App Translation Service is
+ really easy to use and the completion time for translation requests is very
+ good.”
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out more about the
+ <a href="http://developer.android.com/distribute/tools/localization-checklist.html#gp-trans">
+ App Translation Service</a> and read the full
+ <a href="https://developer.android.com/distribute/tools/localization-checklist.html">
+ Localization checklist</a> to simplify the process of localizing your app or
+ game for users across the globe.
+</p>
diff --git a/docs/html/distribute/stories/games.jd b/docs/html/distribute/stories/games.jd
index 22ab1dc..fe059eb 100644
--- a/docs/html/distribute/stories/games.jd
+++ b/docs/html/distribute/stories/games.jd
@@ -1,4 +1,4 @@
-page.title=Developer Stories: Google Play Game Services
+page.title=Developer Stories: Games
meta.tags="google play, games, global, developer story"
page.timestamp=1381449601
page.image=/images/distribute/glu-ew-gpgames.jpg
@@ -7,23 +7,29 @@
@jd:body
<p>
- <a href="https://developers.google.com/games/">Google Play game services</a>
- lets you add great social features to your games quickly, without having to
- build them yourself. You can add multiplayer, game invites, quests, and a
- variety of other features — all from within your app. Google provides
- cross-platform game and player infrastructure for you, as well as insights
- and analytics to help you understand the activities of users in your games.
+ Learn how top game studios are taking advantage of Google Play game services
+ — the features they've added and the results they are seeing.
</p>
-<p>
- The case study presentations below highlight how top game studios are taking
- advantage of Google Play game services — the features they've added and
- the results they are seeing. Each deck (PDF) is focused on a single game and
- how it uses a specific Google Play gemes feature.
-</p>
+<section class="dac-section dac-small" id="games-videos"><div class="wrap">
+ <h2 class="norule">Videos</h2>
-<div class="resource-widget resource-flow-layout col-13"
- data-query="collection:distribute/stories/games"
- data-sortOrder="-timestamp"
- data-cardSizes="18x12"
- data-maxResults="32"></div>
\ No newline at end of file
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="type:youtube+tag:developerstory+tag:games"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x6"
+ data-items-per-page="15"
+ data-initial-results="6"></div>
+</div></section>
+
+<section class="dac-section dac-small" id="games-articles"><div class="wrap">
+ <h2 class="norule">Articles</h2>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="type:distribute+tag:developerstory+tag:games"
+ data-sortOrder="-timestamp"
+ data-cardSizes="6x6"
+ data-items-per-page="15"
+ data-initial-results="6"></div>
+</div></section>
+
diff --git a/docs/html/distribute/stories/games/concrete-bowling.jd b/docs/html/distribute/stories/games/concrete-bowling.jd
new file mode 100644
index 0000000..f4f6549
--- /dev/null
+++ b/docs/html/distribute/stories/games/concrete-bowling.jd
@@ -0,0 +1,93 @@
+page.title=Concrete Software increases engagement with quests
+page.metaDescription=Concrete Software makes use of Google Play games services in its 10-pin bowling game, PBA Bowling Challenge.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/concrete-bowling.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img
+ src="{@docRoot}images/distribute/stories/concrete-bowling-icon.png" />
+</div>
+
+<p>
+ Concrete Software makes use of Google Play games services in its 10-pin
+ bowling game,
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.concretesoftware.pbachallenge_androidmarket">
+ PBA Bowling Challenge</a>. Once users have signed in with Google Play games
+ services they’re able to take part in multiplayer games, view leaderboards,
+ and gain achievements.
+</p>
+
+
+<h3>What they did</h3>
+
+<p>
+ To offer players new game content, Concrete Software implemented Google Play
+ games services quests. Easily accessible from the game’s home screen, quests
+ are designed with clear goals that integrated into in-game goals and core
+ experience. Each quest stated rewards; offered a progress tracker, which
+ updates as users advance; gave a clear deadline; and a call to action button.
+ Both short-term and long-term quests were offered to users.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:310px">
+ <img
+ src="{@docRoot}images/distribute/stories/concrete-bowling-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/concrete-bowling-screenshot.png 1x
+ {@docRoot}images/distribute/stories/concrete-bowling-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Prominent and customized quest icon displayed on home screen
+ </p>
+</div>
+
+<p>
+ Quests appealed most to dedicated users, and yet there is still an increase
+ in their engagement after using quests. <b>Sessions per user improved 14.4
+ percent</b> DoD upon quests acceptance, and <b>3.7 percent</b> DoD upon
+ completion. While users who accepted a quest <b>started 98 percent more
+ sessions per day</b>; users who completed a quest <b>started 140.2 percent
+ </b> more.
+</p>
+
+<p>
+ Concrete Software also found that quest acceptance and completion rates
+ increased overtime, while daily active users (DAU) remained constant. Among
+ users who accepted the first quest, almost <b>48% of the users accepted a
+ second</b> quest. Among those who completed the first, <b>78% accepted a
+ second</b>.
+</p>
+
+<p>
+ Quests also had a positive impact on retention with one day retention for
+ users who accepted a quest being <b>39.2 percent higher</b> than the average;
+ for users who completed a quest, it’s <b>60.7 percent higher</b> than the
+ average.
+</p>
+
+<p>
+ See examples of how Concrete Software integrated Google Play games services
+ into the <a class="external-link"
+ href="{@docRoot}shareables/stories/ConcreteSoftware_PBABowling_gpgs.pdf">
+ UI of PBA Bowling Challenge</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out how to
+ <a class="external-link"
+ href="https://developers.google.com/games/services/common/concepts/quests">
+ implement quests</a> in your games and discover more about
+ <a href="https://developer.android.com/distribute/engage/game-services.html">
+ using Google Play games services</a> in your games to increase player
+ engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/doctor-who-legacy.jd b/docs/html/distribute/stories/games/doctor-who-legacy.jd
new file mode 100644
index 0000000..d62e250
--- /dev/null
+++ b/docs/html/distribute/stories/games/doctor-who-legacy.jd
@@ -0,0 +1,97 @@
+page.title=Achievements drive engagement in Doctor Who: Legacy
+page.metaDescription=The Tiny Rebel Games integrated achievements and cloud services from Google Play games services into the award-winning Doctor Who: Legacy game, under license from BBC Worldwide.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/doctor-who-legacy.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/doctor-who-legacy-icon.png"
+ height="113" />
+</div>
+
+<p>
+ The Tiny Rebel Games team has a combined experience of over 35 years in
+ creating blockbuster console, PC, and mobile games in the areas of production,
+ design, marketing, social media, PR, and distribution.
+</p>
+
+<p>
+ They are the publisher and co-developer (along with Seed Studio in Taiwan) of
+ the award-winning
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.tinyrebel.doctorwholegacy">
+ Doctor Who: Legacy</a> game, under license from BBC Worldwide.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ Tiny Rebel Games integrated achievements and cloud services from Google
+ Play games services into Doctor Who: Legacy. Achievements were supported with
+ beautifully designed and customized badges to encourage players to unlock. To
+ delight users with quick wins, achievements can be unlocked from within the
+ first play session. In addition, percentage progress updates keep players
+ motivated.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:237px">
+ <img
+ src="{@docRoot}images/distribute/stories/doctor-who-legacy-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/doctor-who-legacy-screenshot.png 1x
+ {@docRoot}images/distribute/stories/doctor-who-legacy-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Beautifully designed achievements badges encourage unlock
+ </p>
+</div>
+
+<p>
+ After integrating achievements, Tiny Rebel Games saw a dramatic increase in
+ daily revenues as a result of an increase in daily installs and the average
+ revenue per install
+</p>
+
+<p>
+ Some key metrics include:
+ <ul>
+ <li>Average <b>daily revenue increased 108 percent</b> from the 30 days
+ before to the 30 days after integrating Google Play games services.</li>
+ <li>30-day <b>average revenue per install increased 53 percent</b> after
+ implementation.</li>
+ <li>Among achievement earners, <b>integration increased daily average
+ revenue per user by ~33 percent</b>.</li>
+ </ul>
+</p>
+
+<p>
+ "Google Play has been a tremendous partner of ours in our launch and support
+ of Doctor Who: Legacy, which to date remains our most successful platform in
+ terms of downloads and revenue. Integration of cloud services and achievements
+ dramatically improved our daily revenues and we continue to look to add
+ additional services like the newly announced Google Quests," says Susan
+ Cummings, CEO and Executive Producer at Tiny Rebel Games.
+</p>
+
+<p>
+ See examples of how Tiny Rebel Games integrated Google Play games services
+ achievements into the
+ <a href="{@docRoot}shareables/stories/TinyRebel_DoctorWhoLegacy_gpgs.pdf">
+ UI of Doctor Who: Legacy</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out how to add
+ <a href="https://developers.google.com/games/services/common/concepts/achievements">achievements</a> to your games and discover more about
+ <a href="https://developer.android.com/distribute/engage/game-services.html">
+ using Google Play games services</a> in your games to increase player
+ engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/dots.jd b/docs/html/distribute/stories/games/dots.jd
new file mode 100644
index 0000000..e3851c2
--- /dev/null
+++ b/docs/html/distribute/stories/games/dots.jd
@@ -0,0 +1,84 @@
+page.title=Dots increased installs by over 6% using Store Listing Experiments
+page.metaDescription=Game developer Playdots decided to use Store Listing Experiments to see if different game screenshots could impact installs for their game Two Dots. They found that game screenshots showing gameplay mechanics drove more installs from the store listing page than their existing non-gameplay screenshots.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/dots.png
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/dots-icon.png" height="113" />
+</div>
+
+<p>
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.nerdyoctopus.gamedots&hl=en">
+ Dots</a>, the successful puzzle strategy game from games developer Playdots
+ Inc., was produced by <a class="external-link"
+ href="https://betaworks.com/">Betaworks</a> in 2013.
+ It achieved over 20 million downloads in its first year, with over five
+ billion games having played on Android and iOS since launch. For the follow
+ up,
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.weplaydots.twodotsandroid&hl=en">
+ Two Dots</a>, Playdots decided to use
+ <a class="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> to see if
+ different game screenshots could impact installs. They found that game
+ screenshots showing gameplay mechanics drove more installs from the store
+ listing page than their existing non-gameplay screenshots.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ Dots used a localized store listing experiment in the Google Play Developer
+ Console to test Two Dots screenshots in the US. They targeted 50 percent of
+ users with non-gameplay screenshots (the “control”) and the other 50 percent
+ with gameplay screenshots, to see how graphically demonstrating gameplay would
+ impact installs.
+</p>
+
+<h3>Results</h3>
+
+<p>
+ The results revealed that screenshots showing gameplay mechanics drove 6
+ percent more installs than the control group using non-gameplay screenshots.
+</p>
+
+ <img
+ src="{@docRoot}images/distribute/stories/dots-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/dots-screenshot.png 1x
+ {@docRoot}images/distribute/stories/dots-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Beautifully designed achievements badges encourage unlock
+ </p>
+
+<p>
+ In a follow up experiment they tested whether including text emphasizing
+ gameplay performed better than screenshots without text. The results showed
+ that screenshots with text highlighting gameplay had an 8 percent increase in
+ installs compared to those without.
+</p>
+
+<p>
+ Dots commented that “sometimes you have to step back and think about what your
+ objective is: illustrate gameplay. So that’s what we did — and the simplest
+ changes impacted our conversion by a huge percentage.”
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Learn how to run
+ <a class="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> and read our best practices for
+ <a href="https://developer.android.com/distribute/users/experiments.html">
+ running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/games/g4a-indian-rummy.jd b/docs/html/distribute/stories/games/g4a-indian-rummy.jd
new file mode 100644
index 0000000..0655f80
--- /dev/null
+++ b/docs/html/distribute/stories/games/g4a-indian-rummy.jd
@@ -0,0 +1,93 @@
+page.title=Ease-of-use and fast turnaround time benefits Indian Rummy.
+page.metaDescription=Games4All localized their apps based upon popularity.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/g4a-indian-rummy.jpg
+page.timestamp=1456340902
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/indian-rummy-icon.png"
+ height="113" />
+</div>
+
+<p>
+ Games4All (G4A) develops a variety of games that they distribute broadly to
+ users around the world.
+</p>
+
+<p>
+ After noticing that certain apps — including
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=org.games4all.android.games.indianrummy.prod">
+ Indian Rummy</a>, a card game in which players try to form sets and sequences
+ of cards — had become especially popular in specific countries, they decided
+ to localize those apps.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ Initially they used a local agency to do the translations and got great
+ results — the release of localized versions increased the number of users
+ tremendously.
+</p>
+
+<p>
+ Building on that success, G4A expanded their localization goals, but found
+ that translation quality varied among their vendors and costs limited the
+ language/game combinations they could translate. That's when G4A decided to try
+ the App Translation Service.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" class="style:376px">
+ <img
+ src="{@docRoot}images/distribute/stories/indian-rummy-screenshot.jpg"
+ srcset=
+ "{@docRoot}images/distribute/stories/indian-rummy-screenshot.jpg 1x
+ {@docRoot}images/distribute/stories/indian-rummy-screenshot_2x.jpg 2x">
+ <p class="img-caption">
+ Dutch version of Indian Rummy
+ </p>
+</div>
+
+<p>
+ G4A found that the cost per translation was much lower with the App Translation Service compared to local companies. The process was much easier too, G4A simply had to provide texts in the strings.xml format.
+</p>
+
+<p>
+ Initially, G4A translated Indian Rummy into five languages through the App
+ Translation Service. As a result they’ve <b>doubled the number of users</b>
+ in French and German languages and seen a <b>300 percent increase in user
+ engagement</b> with the localized versions.
+</p>
+
+<p>
+ They also found that making slight changes to games rules based on local
+ nuances was key to the game's success.
+</p>
+
+<p>
+ “In contrast [to the App Translation Service], our previous experiences with
+ translation agencies were much more difficult: files often required extensive
+ conversion operations to make them usable, and turnaround times varied
+ wildly,” says G4A founder Pieter Olivier. He continues, "With the App
+ Translation Service, the turnaround time is usually measured in days instead
+ of weeks that we were used to with traditional translation agencies."
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out more about the
+ <a href="http://developer.android.com/distribute/tools/localization-checklist.html#gp-trans">
+ App Translation Service</a> and read the full
+<a href="https://developer.android.com/distribute/tools/localization-checklist.html">
+ Localization checklist</a> to simplify the process of localizing your app or
+ game for users across the globe.
+</p>
diff --git a/docs/html/distribute/stories/games/gameloft-asphalt8.jd b/docs/html/distribute/stories/games/gameloft-asphalt8.jd
new file mode 100644
index 0000000..991c829
--- /dev/null
+++ b/docs/html/distribute/stories/games/gameloft-asphalt8.jd
@@ -0,0 +1,90 @@
+page.title=Gameloft drives viral distribution with friend invitations
+page.metaDescription=Gameloft makes extensive use of Google Play games services.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/gameloft-asphalt8.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img
+ src="{@docRoot}images/distribute/stories/gameloft-asphalt8-icon.png"
+ height="113" />
+</div>
+
+<p>
+ Founded in 2000 Gameloft has grown to deliver over 500 games, with over 2
+ million of their games being downloaded every day across smartphones and
+ feature phones.
+</p>
+
+<p>
+ Gameloft makes extensive use of Google Play games services.
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.gameloft.android.ANMP.GloftA8HM">
+ Asphalt 8: Airborne</a> is no exception including Google Play games services
+ sign-in, leaderboards, and achievements.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ To drive downloads of Asphalt 8: Airborne, Gameloft introduced friend invites.
+ Gameloft chose to display the invite option clearly next to social media
+ iconography, which started a smooth and easy friends invite flow. Then the
+ friend invites look and feel was designed to fit the game’s artistic style to
+ create a more trusted and immersive experience.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:310px">
+ <img
+ src="{@docRoot}images/distribute/stories/gameloft-asphalt8-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/gameloft-asphalt8-screenshot.png 1x
+ {@docRoot}images/distribute/stories/gameloft-asphalt8-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Friend invites match the game’s artistic style
+ </p>
+</div>
+
+<p>
+ Gameloft found that adding friends invites enhanced the overall user
+ experience and helped increase viral distribution of Asphalt 8: Airborne.
+</p>
+
+<p>
+ In addition, retention and the percentage of payers are positively correlated
+ with Google Play games sign-ins. Users that signed-in are <b>300 percent more
+ likely to come back after three days, and 400 percent more likely after seven
+ days</b>. In addition, they’re <b>3.5 times more likely to convert to payers
+ </b>.
+</p>
+
+<p>
+ Gameloft’s experience with Google Play games services has resulted in their
+ integration into the majority of Gameloft’s games.
+</p>
+
+<p>
+ See examples of how Gameloft integrated Google Play games services into the
+ <a class="external-link"
+ href="{@docRoot}shareables/stories/Gameloft_Asphalt8_gpgs.pdf">
+ UI of Asphalt 8</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out how to add
+ <a class="external-link"
+ href="https://developers.google.com/games/services/common/concepts/realtimeMultiplayer#invitations">
+ friend invitations</a> in your multi-player games and more about
+ <a href="https://developer.android.com/distribute/engage/game-services.html">
+ using Google Play games services</a> in your games to increase your player
+ engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/glu-eternity-warriors.jd b/docs/html/distribute/stories/games/glu-eternity-warriors.jd
new file mode 100644
index 0000000..bb6b400
--- /dev/null
+++ b/docs/html/distribute/stories/games/glu-eternity-warriors.jd
@@ -0,0 +1,85 @@
+page.title=Glu adds games gifts to Eternity Warriors 3 to driver player engagement
+page.metaDescription=Glu Mobile makes extensive use of Google Play games in Eternity Warriors 3 this including sign-in, leaderboards, achievements, and multiplayer games features.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/glu-eternity-warriors.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img
+ src="{@docRoot}images/distribute/stories/glu-eternity-warriors-icon.jpg"
+ height="113" />
+</div>
+
+<p>
+ Found in 2001, Glu Mobile is a leading global developer and publisher of
+ free-to-play games for smartphone and tablet devices.
+</p>
+
+<p>
+ The company makes extensive use of Google Play games services across its
+ portfolio: in Eternity Warriors 3 this includes sign-in, leaderboards,
+ achievements, and multiplayer games features.
+</p>
+
+
+<h3>What they did</h3>
+
+<p>
+ To help drive installs and player engagement, Glu added games gifts to
+ Eternity Warriors 3. They made this new feature accessible from the home
+ screen, providing it exposure by grouping it with similar “freebies” options.
+ In addition, so not to interrupt the in-game experience, they implemented an
+ automatic transition back to the gifting screen after sending requests.
+</p>
+
+<p>
+ To promote the addition of games gifts Glu:
+ <ul>
+ <li>sent push notifications to users telling them about the gifting feature.
+ </li>
+ <li>showed a full screen in-game screen promoting the gifting feature.</li>
+ <li>ran promos during promo events.</li>
+ </ul>
+</p>
+
+<p>
+ Glu went a step further by integrating friends invites into the gifts UI,
+ with the option easily accessible in the Gifting screen.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:378px">
+ <img
+ src="{@docRoot}images/distribute/stories/glu-eternity-warriors-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/glu-eternity-warriors-screenshot.png 1x
+ {@docRoot}images/distribute/stories/glu-eternity-warriors-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Gifting options are clearly displayed
+ </p>
+</div>
+
+<p>
+ Glu found that the gifting feature has a very high response rate and the gift
+ requests’ <b>fulfillment rate doubled</b> within 30 days of the feature’s
+ launch. Also these rates continued to increase over time among Eternity
+ Warriors 3 players.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out how to add
+ <a class="external-link"
+ href="https://developers.google.com/games/services/android/giftRequests">
+ game gifts</a> to your games and discover more about
+ <a href="https://developer.android.com/distribute/engage/game-services.html">
+ using Google Play games services</a> in your games to increase player
+ engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/glu-tap-baseball.jd b/docs/html/distribute/stories/games/glu-tap-baseball.jd
new file mode 100644
index 0000000..30be8e9
--- /dev/null
+++ b/docs/html/distribute/stories/games/glu-tap-baseball.jd
@@ -0,0 +1,71 @@
+page.title=Glu increased their conversion rate over 2% with Store Listing Experiments
+page.metaDescription=Glu Mobile decided to use Store Listing Experiments to see if different background colors in the game’s icon would affect installs. They found that a lighter background resulted in more installs.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/glu-tap-baseball.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/glu-tap-baseball-icon.jpg"
+ height="113" />
+</div>
+
+<p>
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.glu.baseball15&hl=en">
+ Tap Sports Baseball 2015</a> is a sports game by US games developer Glu
+ Mobile. Founded in 2001, Glu Mobile is a leading global developer and
+ publisher of free-to-play games for smartphone and tablet devices.
+</p>
+
+<p>
+ Glu Mobile decided to use
+ <a class="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> to see if different background colors in the
+ game’s icon would affect installs. They found that a lighter background
+ resulted in more installs.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ <a class="external-link"
+ href="https://play.google.com/store/apps/dev?id=8633921029894576093">Glu
+ Mobile</a> used a global store listing experiment in the Google Play Developer
+ Console to test three different background colors in the game’s icon.
+</p>
+
+<h3>Results</h3>
+
+<p>
+ The results showed that of three different color schemes — blue, light blue,
+ and light red — an icon with a light blue background converted 2.9 percent
+ more visitors than the original control icon.
+</p>
+
+
+ <img
+ src="{@docRoot}images/distribute/stories/glu-tap-baseball-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/glu-tap-baseball-screenshot.png 1x
+ {@docRoot}images/distribute/stories/glu-tap-baseball-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Beautifully designed achievements badges encourage unlock
+ </p>
+
+
+<h3>Get started</h3>
+
+<p>
+ Learn how to run
+ <a class="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> and read our best practices for
+ <a href="https://developer.android.com/distribute/users/experiments.html">
+ running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/games/hotheadgames-firefight.jd b/docs/html/distribute/stories/games/hotheadgames-firefight.jd
new file mode 100644
index 0000000..ac1461a
--- /dev/null
+++ b/docs/html/distribute/stories/games/hotheadgames-firefight.jd
@@ -0,0 +1,90 @@
+page.title=Hothead Games grows retention and revenues with leaderboards and achievements
+page.metaDescription=Following their experience with Google Play games services in Rivals at War: Firefight, Hothead Games includes its features in all their games.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/hotheadgames-firefight.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/hotheadgames-firefight-icon.png"
+ height="113" />
+</div>
+
+<p>
+ Hothead Games was founded in 2006 and took the plunge into mobile games in
+ 2011. This move has proved very successful, allowing the company to continue
+ growing into 2016 by creating and publishing great games exclusively for
+ mobile users.
+</p>
+
+<p>
+ Following their experience with Google Play games services in
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.hotheadgames.google.free.valorcmd">
+ Rivals at War: Firefight</a> they plan to include its features in all their
+ games.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ To start, the Google Play games services sign-in icon was given a prominent
+ position on the home screen so it was clear and easily accessible. They then
+ added leaderboards with their own beautifully designed badges as well as
+ achievements. Both were aligned and displayed with related in-game missions
+ showing players their progress and rewards earned. Notifications were used to
+ give players instant gratification when achievements were unlocked.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:379px">
+ <img
+ src="{@docRoot}images/distribute/stories/hotheadgames-firefight-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/hotheadgames-firefight-screenshot.png 1x
+ {@docRoot}images/distribute/stories/hotheadgames-firefight-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Beautifully designed and specialized leaderboards
+ </p>
+</div>
+
+<p>
+ Hothead games found that retention, average revenue per daily active user
+ (ARPDAU), and average revenue per user (ARPU) positively correlated with
+ Google Play games sign-ins. The metrics for users signed-in with Google Play
+ games services include:
+ <ul>
+ <li>Day one retention <b>125 percent higher</b> and day seven retention
+ <b>182 percent higher</b>.</li>
+ <li>ARPDAU <b>134 percent higher</b>.</li>
+ <li>ARPU <b>900 percent higher</b>.</li>
+ </ul>
+</p>
+
+<p>
+ See examples of how Hothead Games integrated Google Play games services
+ leaderboards and achievements into the
+ <a class="external-link"
+ href="{@docRoot}shareables/stories/HotheadGames_RivalsatWar_gpgs.pdf">
+ UI of Rivals at War: Firefight</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out how to add
+ <a class="external-link"
+ href="https://developers.google.com/games/services/common/concepts/leaderboards">
+ leaderboards</a> and
+ <a class="external-link"
+ href="https://developers.google.com/games/services/common/concepts/achievements">
+ achievements</a> to your games and discover more about
+ <a href="https://developer.android.com/distribute/engage/game-services.html">
+ using Google Play games services</a> in your games to increase player
+ engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/kongregate-adv-cap.jd b/docs/html/distribute/stories/games/kongregate-adv-cap.jd
new file mode 100644
index 0000000..8338934
--- /dev/null
+++ b/docs/html/distribute/stories/games/kongregate-adv-cap.jd
@@ -0,0 +1,76 @@
+page.title=Kongregate increases AdVenture Capitalist conversions by 5% with Store Listing Experiments
+page.metaDescription=AdVenture Capitalist, a builder game from games developers HyperHippo and Kongregate, was originally built for the web and released as a mobile version in May 2015. Kongregate decided to use Store Listing Experiments to see if different graphics could impact their installs.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/kongregate-adv-cap.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/kongregate-adv-cap-icon.png"
+ height="113" />
+</div>
+
+<p>
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.kongregate.mobile.adventurecapitalist.google&hl=en">
+ AdVenture Capitalist</a> a builder game from games developers HyperHippo and
+ Kongregate, was originally built for the web and released as a mobile version
+ in May 2015. Kongregate decided to use
+ <a class="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> to see if different graphics
+ could impact their installs. They found that graphics illustrating the game’s
+ builder mechanics and strategy drove more installs from the store listing page
+ than their existing graphics.
+
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ <a class="external-link"
+ href="https://play.google.com/store/apps/developer?id=Kongregate">
+ Kongregate</a> used a global store listing experiment in the Google Play
+ Developer Console to test two variant designs of feature art. Their prediction
+ was that their current control graphic would outperform the variant designs,
+ because of the game’s brand and icon reputation on the web.
+</p>
+
+<h3>Results</h3>
+
+<p>
+ The results revealed that variant graphics showing more of the game’s builder
+ mechanics and strategy drove more installs compared to the existing branded
+ icon.
+</p>
+
+ <img
+ src="{@docRoot}images/distribute/stories/kongregate-adv-cap-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/kongregate-adv-cap-screenshot.png 1x
+ {@docRoot}images/distribute/stories/kongregate-adv-cap-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Beautifully designed achievements badges encourage unlock
+ </p>
+
+<p>
+ Jeff Gurian, Senior Marketing Director at Kongregate commented that: "Google
+ Play's Store Listing Experiments tool allows us to maximize ASO performance
+ across all of our channels in a live environment, for free — it is now our
+ primary tool for testing."
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Learn how to run
+ <a class="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> and read our best practices for
+ <a href="https://developer.android.com/distribute/users/experiments.html">
+ running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/games/kongregate-global-assault.jd b/docs/html/distribute/stories/games/kongregate-global-assault.jd
new file mode 100644
index 0000000..e8fec2d
--- /dev/null
+++ b/docs/html/distribute/stories/games/kongregate-global-assault.jd
@@ -0,0 +1,78 @@
+page.title=Kongregate increases Global Assault installs by 92 percent with Store Listing Experiments
+page.metaDescription=Kongregate decided to use Store Listing Experiments to see if different artwork could impact the installs of their game Global Assault. They found that icons illustrating dynamic game play drove more installs from the store listing page than their existing icon.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/kongregate-global-assault.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img
+ src="{@docRoot}images/distribute/stories/kongregate-global-assault-icon.png"
+ height="113" />
+</div>
+
+<p>
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.kongregate.mobile.globalassault.google">
+ Global Assault</a> is a free-to-play, 3D strategy RPG developed and produced
+ by Kongregate that was released in November 2014. Kongregate decided to use
+ <a class="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> to see if different artwork could impact their
+ installs. They found that icons illustrating dynamic game play drove more
+ installs from the store listing page than their existing icon.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ <a class="external-link"
+ href="https://play.google.com/store/apps/developer?id=Kongregate">
+ Kongregate</a> used a global store listing experiment in the Google Play
+ Developer Console to test three new icons. From previous internal tests, they
+ believed that their existing icon, the control, would perform best in terms of
+ installs.
+</p>
+
+<h3>Results</h3>
+
+<p>
+ The results showed that one new icon, the ‘Chopper’ variant, outperformed the
+ control group by 92 percent in terms of installs. Based on these findings,
+ Kongregate changed Global Assault’s icon on Google Play to the ‘Chopper’
+ image.
+</p>
+
+
+ <img
+ src="{@docRoot}images/distribute/stories/kongregate-global-assault-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/kongregate-global-assault-screenshot.png 1x
+ {@docRoot}images/distribute/stories/kongregate-global-assault-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Beautifully designed achievements badges encourage unlock
+ </p>
+
+
+<p>
+ Jeff Gurian, Senior Marketing Director at Kongregate commented that “as a
+ publisher we are responsible for handling the marketing spend of our
+ developers. If we can improve conversion rates through art or graphics by even
+ 0.5% it is extremely valuable to us — and the Store Listing Experiment tool
+ gives us the data we need to make those decisions.”
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Learn how to run
+ <a class="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> and read our best practices for
+ <a href="https://developer.android.com/distribute/users/experiments.html">
+ running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/games/leos-fortune.jd b/docs/html/distribute/stories/games/leos-fortune.jd
new file mode 100644
index 0000000..8b20596
--- /dev/null
+++ b/docs/html/distribute/stories/games/leos-fortune.jd
@@ -0,0 +1,80 @@
+page.title=Saved games help bring players back to Leo’s Fortune
+page.metaDescription=1337 & Senri implemented Google Play games services saved games in their game Leo’s Fortune.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/leos-fortune.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/leos-fortune-icon.png"
+ height="113" />
+</div>
+
+<p>
+ 1337 & Senri, a software development firm based in Gothenburg, Sweden, have
+ collaborated on a number of games, including
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.leosfortune">
+ Leo’s Fortune</a> and
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.senri.da">Devil's
+ Attorney</a>.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ Senri implemented Google Play games services saved games in Leo’s Fortune. Each saved game includes a screenshot showing the date and time of the last play session, as well as the current chapter and total play time. In addition progress information is displayed clearly in Play Games destination app’s home screen.
+</p>
+
+<p>
+ In addition, they also implemented one Leaderboard per chapter, which fits
+ well with the flow and objective of the game.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:304px">
+ <img
+ src="{@docRoot}images/distribute/stories/leos-fortune-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/leos-fortune-screenshot.png 1x
+ {@docRoot}images/distribute/stories/leos-fortune-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Players can view and restart games
+ </p>
+</div>
+
+<p>
+ Adoption of cloud saved games, achievements, and leaderboards was very high
+ among players of Leo’s Fortune.
+</p>
+
+<p>
+ They found that Google Play games services users are 22 percent more likely to
+ come back after 1 day and 17 percent more likely after 2 days.
+</p>
+
+<p>
+ See examples of how 1337 & Senri integrated Google Play games services saved
+ games, achievements, and leaderboards into the
+ <a class="external-link"
+ href="{@docRoot}shareables/stories/Senri_LeosFortune_gpgs.pdf">
+ UI of Leo's Fortune</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out how to add
+ <a class="external-link"
+ href="https://developers.google.com/games/services/common/concepts/savedgames">
+ saved games</a> to your games and discover more about
+ <a href="https://developer.android.com/distribute/engage/game-services.html">
+ using Google Play games services</a> in your games to increase player
+ engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/noodlecake-super-stickman.jd b/docs/html/distribute/stories/games/noodlecake-super-stickman.jd
new file mode 100644
index 0000000..54a4794
--- /dev/null
+++ b/docs/html/distribute/stories/games/noodlecake-super-stickman.jd
@@ -0,0 +1,108 @@
+page.title=Noodlecake engages players with multiplayer in Super Stickman Golf 2
+page.metaDescription=For the update to Super Stickman Golf, Noodlecake made extensive use of Google Play games services.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/noodlecake-super-stickman.jpg
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/noodlecake-super-stickman-icon.png"
+ height="113" />
+</div>
+
+<p>
+ Founded in early 2011, Noodlecake Studios is an indie game studio based in
+ Canada. Noodlecake found success with its first game, Super Stickman Golf.
+ Since then they have expanded into publishing and releasing games on multiple
+ platforms.
+</p>
+
+<p>
+ For the update to Super Stickman Golf Noodlecake made extensive use of
+ Google Play games services.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ In
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.noodlecake.ssg2">
+ Super Stickman Golf 2</a> Noodlecake implemented a game open screen that
+ prompts the user to sign in, with a clear value proposition. Once the user has
+ signed in, they’re given the option to auto sign-in in the future. For users
+ who don’t select this option, sign-in is prominently displayed on the game’s
+ home screen.
+</p>
+
+<p>
+ In addition to achievements, the main Google Play games services feature in
+ Super Stickman Golf 2 is multiplayer. Users have two multiplayer options:
+ turn based or race mode, which engage with different types of players.
+ Players can find an opponent among their friends or one at random to start a
+ game immediately. And to minimize drop-off asynchronous gameplay starts
+ immediately after an invite is issued.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:379px">
+ <img
+ src="{@docRoot}images/distribute/stories/noodlecake-super-stickman-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/noodlecake-super-stickman-screenshot.png 1x
+ {@docRoot}images/distribute/stories/noodlecake-super-stickman-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Two multiplayer options engage with different types of players
+ </p>
+</div>
+
+<p>
+ Noodlecake found that user acquisition, retention, and engagement positively
+ correlated with the use of Google Play Games by players. This is consistent
+ across different games and genres, not just for Stickman Golf 2.
+</p>
+
+<p>
+ Also multiplayer, in addition to increasing user engagement, is also an
+ effective user acquisition channel.
+</p>
+
+<p>
+ Some key metrics include:
+ <ul>
+ <li>~96 percent increase in the number of users after Google Play games
+ services integration.</li>
+ <li>~26 percent decrease in the user attrition rate.</li>
+ <li>~6 percent increase in session length.</li>
+ </ul>
+</p>
+
+<p>
+ See examples of how Noodlecake Studio integrated Google Play games services
+ multiplayer and achievements into the
+ <a style="external-link"
+ href="{@docRoot}shareables/stories/Noodlecake_SuperStickmanGolf2_gpgs.pdf">
+ UI of Super Stickman Golf 2</a>.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out how to add
+ <a class="external-link"
+ href="https://developers.google.com/games/services/common/concepts/realtimeMultiplayer">
+ real-time</a> or
+ <a class="external-link"
+ href="https://developers.google.com/games/services/common/concepts/turnbasedMultiplayer">
+ turn-based</a> multiplayer and
+ <a class="external-link"
+ href="https://developers.google.com/games/services/common/concepts/achievements">achievements</a> to your games and discover more about
+ <a href="https://developer.android.com/distribute/engage/game-services.html">
+ using Google Play games services</a> in your games to increase player
+ engagement and revenues.
+</p>
diff --git a/docs/html/distribute/stories/games/rvappstudios-zombie.jd b/docs/html/distribute/stories/games/rvappstudios-zombie.jd
new file mode 100644
index 0000000..134bac4
--- /dev/null
+++ b/docs/html/distribute/stories/games/rvappstudios-zombie.jd
@@ -0,0 +1,70 @@
+page.title=Localization improves Zombie Ragdoll engagement at launch
+page.metaDescription=Zombie Ragdoll is a physics based zombie shooting game launched by RV AppStudios in August 2013. Having attended Google I/O talks, the team at RV AppStudios was inspired to go global with Zombie Ragdoll at launch.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/rvappstudios-zombie.jpg
+page.timestamp=1454440882
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/rvappstudios-zombie-icon.png" height="113" />
+</div>
+
+<p>
+ <a class="external-link" href="
+ https://play.google.com/store/apps/details?id=com.rvappstudios.zombieragdoll">
+ Zombie Ragdoll</a> is a physics based zombie shooting game launched by RV AppStudios in August
+ 2013. Inspired by Google I/O talks about reaching global users on Google Play, the team at RV
+ AppStudios was inspired to go global with Zombie Ragdoll at launch.
+</p>
+
+
+<h3>What they did</h3>
+
+<p>
+ Using the App Translation Service in the Google Play Developer Console,
+ RV AppStudios launched Zombie Ragdoll localized into 20 languages.
+ In addition to localizing the text within the game, they also localized
+ game assets to specific countries and cultures.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:380px">
+ <img width="380"
+ src="{@docRoot}images/distribute/stories/rvappstudios-zombie-screenshot.jpg"
+ srcset=
+ "{@docRoot}images/distribute/stories/rvappstudios-zombie-screenshot.jpg 1x
+ {@docRoot}images/distribute/stories/rvappstudios-zombie-screenshot_2x.jpg 2x">
+ <p class="img-caption">
+ Hindi version of Zombie Ragdoll
+ </p>
+</div>
+
+<p>
+ After launch 80% of downloads came from non-English speaking countries,
+ improving engagement with users worldwide. In addition, there was
+ growth in use in countries where their apps hadn’t been as popular
+ before; achieving significant traction in countries such as Vietnam,
+ Russia, Philippines, and Thailand.
+</p>
+
+<p>
+ Vivek Dave, founder of RV AppStudios says, “Users want a personalized
+ experience, and by offering a localized game with translation of text and
+ graphic assets, we believe users will connect at a much deeper level.""
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out more about the App Translation Service <a href="
+ http://developer.android.com/distribute/tools/localization-checklist.html#gp-trans">
+ here</a> and read the full <a href="
+ https://developer.android.com/distribute/tools/localization-checklist.html">
+ Localization checklist</a> to simplify the process of localizing your app
+ or game for users across the globe.
+</p>
diff --git a/docs/html/distribute/stories/games/tiny-co.jd b/docs/html/distribute/stories/games/tiny-co.jd
new file mode 100644
index 0000000..b8435ba
--- /dev/null
+++ b/docs/html/distribute/stories/games/tiny-co.jd
@@ -0,0 +1,78 @@
+page.title=TinyCo finds monetization opportunities on tablets
+page.metaDescription=TinyCo launches their line of apps across multiple form factors.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/tiny-co.jpg
+page.timestamp=1456340902
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/tinyvillage-icon.png"
+ height="113" />
+</div>
+
+<p>
+ App developer TinyCo, makers of a suite of games such as Tiny Monsters,
+ decided to prioritize launching effectively across multiple platforms. They
+ chose Android as one of their primary launch platforms because of its large
+ installed base and global reach. They also knew that the growing base of
+ Android tablet users represented a huge opportunity.
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ <a class="external-link"
+ href="http://play.google.com/store/apps/details?id=com.tinyco.village">
+ Tiny Village</a>, a game targeting 7- to 10-inch tablets and phones, was their
+ first title to take advantage of the strategy, and it proved to be a winning
+ one — especially in terms of Android tablets.
+</p>
+
+<h3>Results</h3>
+
+<div class="figure" style="width:336px">
+ <img
+ src="{@docRoot}images/distribute/stories/tinyvillage-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/tinyvillage-screenshot.png 1x
+ {@docRoot}images/distribute/stories/tinyvillage-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Tiny Village monetized better on tablets
+ </p>
+</div>
+
+<p>
+ In the six months from launch TinyCo saw Android tablet <b>downloads more than
+ triple</b>.
+</p>
+
+<p>
+ When used on tablets Tiny Village also showed an increase in average revenue
+ per paying user (ARPPU) — about 35% higher than on smaller-screen devices such
+ as phones. Additionally, average revenue per user <b>(ARPU) is now about 35%
+ higher</b> as well. “The game is just much more immersive on tablets,” said
+ Rajeev Nagpal, Head of Product at TinyCo.
+</p>
+
+<p>
+ There has also been a <b>consistent increase in retention</b> over other
+ platforms, an important metric for games according to Nagpal.
+</p>
+
+<p>
+ “With continued optimization of the gameplay experience and a genuine
+ commitment to our Android offering through our Griffin engine, all of our
+ metrics started to rise,” said Nagpal.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Find out more about creating a tablet version of your app by reviewing the
+ <a href="http://developer.android.com/distribute/essentials/quality/tablets.html">
+ Tablet App Quality</a> guidelines and growing your user base.
+</p>
diff --git a/docs/html/distribute/stories/games/two-dots.jd b/docs/html/distribute/stories/games/two-dots.jd
new file mode 100644
index 0000000..a2299ce
--- /dev/null
+++ b/docs/html/distribute/stories/games/two-dots.jd
@@ -0,0 +1,77 @@
+page.title=Two Dots increased installs by 7 percent using Store Listing Experiments
+page.metaDescription=Two Dots, the sequel to the popular game Dots, is a free-to-play puzzle game launched by Playdots, Inc. Playdots decided to use Store Listing Experiments to see if adding a call to action in the games’ store listing short descriptions had an impact on installs.
+page.tags="developerstory", "games", "googleplay"
+page.image=images/cards/distribute/stories/two-dots.png
+page.timestamp=1456431511
+
+@jd:body
+
+
+<h3>Background</h3>
+
+<div class="figure" style="width:113px">
+ <img src="{@docRoot}images/distribute/stories/two-dots-icon.png"
+ height="113" />
+</div>
+
+<p>
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.weplaydots.twodotsandroid&hl=en">
+ Two Dots</a>, the sequel to the popular game
+ <a class="external-link"
+ href="https://play.google.com/store/apps/details?id=com.nerdyoctopus.gamedots&hl=en">
+ Dots</a>, is a free-to-play puzzle game launched by Playdots, Inc. in May
+ 2014. Since launch it has gained over 30 million downloads, seen over five
+ billion games played, and achieved 15 times the revenue of the original Dots
+ game within a year. Dots decided to use
+ <a class="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> to see if adding a call to action in the games'
+ store listing short descriptions had an impact on installs.
+
+</p>
+
+<h3>What they did</h3>
+
+<p>
+ Dots used localized store listing experiments in the Google Play Developer
+ Console to test both games’ short descriptions. They compared the games’
+ current descriptions — the control, with no call to action — against variant
+ descriptions, targeting half of their traffic with the variant descriptions.
+</p>
+
+<h3>Results</h3>
+
+<p>
+ The results showed that the addition of a call to action in the short
+ description had a positive impact on installs.
+</p>
+
+
+ <img
+ src="{@docRoot}images/distribute/stories/two-dots-screenshot.png"
+ srcset=
+ "{@docRoot}images/distribute/stories/two-dots-screenshot.png 1x
+ {@docRoot}images/distribute/stories/two-dots-screenshot_2x.png 2x">
+ <p class="img-caption">
+ Beautifully designed achievements badges encourage unlock
+ </p>
+
+
+<p>
+ In Dots, the conversion rate increased by 2 percent with a simple call to
+ action in the variant text. In Two Dots, where a call to action was combined
+ with messaging that the game is the “best puzzle game on Android”, conversion
+ rates increased by 7 percent compared to the control description.
+</p>
+
+<h3>Get started</h3>
+
+<p>
+ Learn how to run
+ <a clas="external-link"
+ href="https://support.google.com/googleplay/android-developer/answer/6227309">
+ Store Listing Experiments</a> and read our best practices for
+ <a href="https://developer.android.com/distribute/users/experiments.html">
+ running successful experiments</a>.
+</p>
diff --git a/docs/html/distribute/stories/glu-dh.jd b/docs/html/distribute/stories/glu-dh.jd
index f23ec98..3353f69 100644
--- a/docs/html/distribute/stories/glu-dh.jd
+++ b/docs/html/distribute/stories/glu-dh.jd
@@ -1,6 +1,6 @@
page.title=Glu improves player lifetime value with Google Play games services sign-in
page.metaDescription=With the release of their game Deer Hunter 2014, leading developer and publisher Glu Mobile found that Google Play games services helped improve the user experience leading to increased player happiness.
-page.tags="stories", "Google Play"
+page.tags="developerstory", "games", "googleplay"
page.image=images/cards/distribute/stories/glu-dh.jpg
timestamp=1456787470
diff --git a/docs/html/distribute/stories/index.jd b/docs/html/distribute/stories/index.jd
index eb94e31..8fe1019 100644
--- a/docs/html/distribute/stories/index.jd
+++ b/docs/html/distribute/stories/index.jd
@@ -1,6 +1,4 @@
page.title=Developer Stories
-section.landing=true
-nonavpage=true
excludeFromSuggestions=true
page.metaDescription=Android developers, their apps, and their successes with Android and Google Play.
@@ -26,7 +24,7 @@
data-sortOrder="-timestamp"
data-cardSizes="6x6"
data-items-per-page="15"
- data-initial-results="6"></div>
+ data-initial-results="9"></div>
</div></section>
<section class="dac-section dac-small" id="latest-games"><div class="wrap">
@@ -37,5 +35,5 @@
data-sortOrder="-timestamp"
data-cardSizes="6x6"
data-items-per-page="15"
- data-initial-results="6"></div>
+ data-initial-results="9"></div>
</div></section>
diff --git a/docs/html/distribute/stories/localization.jd b/docs/html/distribute/stories/localization.jd
deleted file mode 100644
index a6a17eb..0000000
--- a/docs/html/distribute/stories/localization.jd
+++ /dev/null
@@ -1,331 +0,0 @@
-page.title=Developer Stories: Localization in Google Play
-meta.tags="google play, developer story, localization, global, games"
-page.tags="stories", "video", "case study"
-page.timestamp=1381449600
-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
-
-<p>
- As you build your app and distribute it across the world through Google Play,
- localization becomes an increasingly important tool to reach more users.
- Localization involves a <a href=
- "{@docRoot}distribute/googleplay/publish/localizing.html">variety of tasks</a>, but
- most important is creating quality translations of your app's UI strings and
- marketing materials.
-</p>
-
-<p>
- Managing the translation process across multiple languages can be a
- challenge, especially if you need to locate translators on your own. That’s
- why Google Play offers the App Translation Service right from the Developer
- Console. It's a single place where you can go to source professional
- translators, get cost estimates, and then send your strings and other
- materials for translation.
-</p>
-
-<p>
- Here are some stories from developers who have used Google Play's App Translation
- Service to localize their apps and the results they've seen as they've
- expand their offerings beyond a single language.
-</p>
-
-<!-- START STORY -->
-
-<div style="margin-bottom:2em;padding-top:10px;" id="zombieragdoll">
-
-<h3 style="line-height:1.25em">Zombie Ragdoll: Improved user engagement<br /> with localized versions</h3>
-
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 12px 20px 9px 20px;" src=
- "https://lh4.ggpht.com/m-Ew8c8C_nGctbP6PSPGOaVNnGFryReOE2yHXJ9Z6Prk1nsDyx5w5TmWfg-P5N3HypA=w124">
-
- <div style="list-style: none;height:100%;
- float: right;
- border-top: 1px solid #9C0;
- width: 220px;
- margin: 4px 20px;padding: .5em;">
-
- <h5>About the app</h5>
-
- <ul>
- <li><a href="https://play.google.com/store/apps/details?id=com.rvappstudios.zombieragdoll">Zombie Ragdoll</a></li>
- <li>A fun zombie-based physics game</li>
- </ul>
-
- <h5>Localization Results</h5>
-
- <ul>
- <li>Increased engagement because of appeal of the localized version</li>
- <li>80% of installs came from users of non-English languages</li>
- </ul>
-
- <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="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
- </a>
-
- </div>
- </div>
-
- <div style="line-height:1.4em;">
-
-<p>
- The 2013 Google I/O talks about <a href=
- "https://developers.google.com/events/io/sessions/326345917">Building Android
- Apps for a Global Audience</a> and <a href=
- "https://developers.google.com/events/io/sessions/326455375">What’s New for
- Developers in Google Play</a> inspired developers at RV AppStudios to go global
- from very beginning for their new game, Zombie Ragdoll. They launched Zombie
- Ragdoll in August 2013, localized into 20 languages.
-</p>
-
-<p>
- They quickly saw the impact of their decision to ship simultaneously in
- multiple languages through increased non-English installs and improved
- engagement with users worldwide. In addition, they started getting
- significant usage in countries where their apps had not been as popular
- before. They are seeing great traction in countries like Vietnam, Russia,
- Philippines and Thailand.
-</p>
-
-<p>
- Vivek Dave, founder of RV AppStudios, credits the success of Zombie Ragdoll
- to localization:
-</p>
-
-<p>
- "The value of localization is clear, it helps discoverability and helps
- connect with the users in other countries. So when the localization
- opportunity arose, we immediately jumped on it. Android is worldwide, and we
- would be severely limiting ourselves if we focused on English as the only
- language.
-</p>
-
-<p>
- "The App Translation Service offered in the Google Play Developer Console is
- extremely easy to use and the pricing is very attractive. Developers with
- limited localization experience can easily create, upload, and translate
- their app."
-</p>
-
-
-<p>
- RV AppStudios not only localizes the text within the game, but also localizes
- the game assets to a specific country/culture. Dave says, “Users want a
- personalized experience, and by offering a localized game with translation of
- text and graphic assets, we believe users will connect at a much deeper level
- with the game.”
-</p>
-
-
- <div style="margin-top:8px;float:left;margin-right:24px;">
- <img src="{@docRoot}images/distribute/zombie-ragdoll-n5-land.jpg" style="width:470px;">
- </div>
-
-
- <div style="margin-top:128px;">
- <p class="img-caption"><strong>Hindi version of Zombie Ragdoll</strong>:
- Localized screenshots and videos in the app's Google Play listing go a
- long way toward increasing the number of installs.</p>
- </div>
-
- </div>
-
-</div> <!-- END STORY -->
-
-<!-- START STORY -->
-
-<div style="margin-bottom:2em;padding-top:18px;clear:both;" id="sayhichat">
-
-<h3>SayHi Chat: Install growth and user engagement<br />
- from professional translations</h3>
-
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 12px 20px 9px 20px;" src=
- "https://lh5.ggpht.com/qiL6CF1Hktz618T3mbGrxvm_OoeheQ78FgG7zr90C2MCRiz4IDQsbKuHT4xQGiWEU8o=w124">
-
- <div style="list-style: none;height:100%;
- float: right;
- border-top: 1px solid #9C0;
- width: 220px;
- margin: 4px 20px;padding: .5em;">
-
- <h5>About the app</h5>
-
- <ul>
- <li><a href="https://play.google.com/store/apps/details?id=com.unearby.sayhi">SayHi Chat,
- Love, Meet, Dating</a></li>
- <li>A social app to help you find people nearby</li>
- </ul>
-
- <h5>Localization Results</h5>
-
- <ul>
- <li>120% growth in language installs for new languages added</li>
- <li>~20% increase in revenue and ~50% increase in User Reviews in the new
- languages</li>
- </ul>
-
- <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="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
- </a>
-
- </div>
- </div>
-
- <div style="line-height:1.4em;">
-
-<p>
- The SayHi Chat app started out only in Japanese, Chinese and English. It soon
- became one of the most popular apps in Japan, Hong Kong, and Taiwan. The
- SayHi team realized it was time to launch in more languages, as the language
- barrier was restricting how fast SayHi could grow globally. </p>
-
- <p>Yan Shi, senior
- developer at SayHi, says: "We checked Google Analytics for our DAU and user
- growth numbers in each country, we also looked at total Android and iOS users
- in those markets before finalizing our next set of languages.
-</p>
-
- <div style="margin-top:8px;float:left;width:270px;">
- <img src="{@docRoot}images/distribute/hichat-n5-port.jpg" style="width:240px;margin-right:48px;">
- </div>
-
-<p>
- SayHi used the App Translation Service to launch in 13 additional languages
- in August 2013 and immediately saw 120% increase in install rates. In
- addition, they are seeing their app ranked in Top 10 apps in countries like
- Poland and Italy.
-</p>
-
-<p>Notably, they saw steady growth in Spain after replacing their previous
- non-professional Spanish translation with a professional one produced through
- the App Translation Service.</p>
-
-<p>
- Yan Shi adds, “The App Translation Service is really easy to use and
- the completion time for translation requests is very good.”
-</p>
-
- <div style="width:600px;margin-top:98px;padding:0;">
- <p class="img-caption"><strong>Arabic version of SayHi Chat</strong>:
- User engagement increased significantly with
- the localized version.</p>
- </div>
-
- </div>
-</div> <!-- END STORY -->
-
-
-<div style="margin-bottom:2em;clear:both;padding-top:18px;" id="g4a"><!-- START STORY -->
-
-<h3 style="line-spacing:1.25em;">G4A Indian Rummy: Benefitting from ease-of-use and<br /> fast turnaround time</h3>
-
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 12px 20px 9px 20px;" src=
- "https://lh4.ggpht.com/IxSyQgO0LWzPRoLfCrER06-0kr6aMAa2azF7eNYB30EBZAGOLYJUZulknPockbTlDYU=w124">
-
- <div style="list-style: none;height:100%;
- float: right;
- border-top: 1px solid #9C0;
- width: 220px;
- margin: 4px 20px;padding: .5em;">
-
- <h5>About the app</h5>
-
- <ul>
- <li><a href="https://play.google.com/store/apps/details?id=org.games4all.android.games.indianrummy.prod">G4A Indian Rummy</a></li>
- <li>A card game in which the players try to form sets and sequences of cards</li>
- </ul>
-
- <h5>Localization Results</h5>
-
- <ul>
- <li>Double the number of users in French and German languages</li>
- <li>300% increase in user engagement with localized version</li>
- </ul>
-
- <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="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
- </a>
- </div>
- </div>
-
- <div style="line-height:1.4em;">
-
-<p>
- Games4All (G4A) is the developer of Indian Rummy and a variety of games that
- they distribute broadly to users around the world. After noticing that
- certain apps had become especially popular in specific countries, they
- decided to localize those apps. Initially they used a local agency to do
- the translation and got great results — the number of users in
- that language increased tremendously when they released the localized
- version.
-</p>
-
-<p>
- Building on that success, G4A expanded their localization goals but
- found that translation quality varied across their vendors and costs limited the
- language/game combinations they could try. That's when G4A decided to try the
- App Translation Service.
-</p>
-
-<p>
- Founder Pieter Olivier says, "When we heard that the App Translation
- Service was available in the Developer Console, we jumped at the opportunity.
- We've now been using the App Translation Service for several months and found
- that the cost per translation is much lower than with local companies and the
- process is much easier."
-</p>
-
-<p>So far, G4A has translated the game Indian Rummy into five languages through
- the App Translation Service.</p>
-
-<p>
- Olivier continues, "The first thing we did was convert all of our texts into
- the strings.xml format. After that using the service was extremely easy and
- straightforward. In contrast, our previous experiences with translation
- agencies were much more difficult: files often required extensive conversion
- operations to make them usable, and turnaround times varied wildly.
-</p>
-
-<p>
- "With the App Translation Service, the turnaround time is usually measured in
- days instead of weeks that we were used to with traditional translation
- agencies."
-</p>
-
- <div style="margin-top:14px;float:left;margin-right:24px;">
- <img src="{@docRoot}images/distribute/indian-rummy-n4-land.jpg" style="width:470px;">
- </div>
-
- <div style="margin-top:158px;">
- <p class="img-caption"><strong>Dutch
- version of Indian Rummy</strong>: Making slight changes to games rules based on
- local nuances was key to success of the game.</p>
- </div>
-
- </div>
-
-
-
-</div> <!-- END STORY -->
\ No newline at end of file
diff --git a/docs/html/distribute/stories/stories_toc.cs b/docs/html/distribute/stories/stories_toc.cs
index 54b7639..cd86af8 100644
--- a/docs/html/distribute/stories/stories_toc.cs
+++ b/docs/html/distribute/stories/stories_toc.cs
@@ -1,30 +1,27 @@
<ul id="nav">
<li class="nav-section">
- <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/index.html">
- <span class="en">Videos</span></a>
+ <div class="nav-section-header empty" style="font-weight:normal">
+ <a href="<?cs var:toroot?>distribute/stories/index.html">
+ <span class="en">Latest</span></a>
</div>
</li>
<li class="nav-section">
- <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/localization.html">
- <span class="en">Going Global</span></a>
+ <div class="nav-section-header empty" style="font-weight:normal">
+ <a href="<?cs var:toroot?>distribute/stories/apps.html">
+ <span class="en">Apps</span>
+ </a>
</div>
</li>
<li class="nav-section">
- <div class="nav-section-header 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-header empty" style="font-weight:normal"><a href="<?cs var:toroot?>distribute/stories/tablets.html">
- <span class="en">Tablets</span>
- </a>
+ <div class="nav-section-header empty" style="font-weight:normal">
+ <a href="<?cs var:toroot?>distribute/stories/games.html">
+ <span class="en">Games</span>
+ </a>
</div>
</li>
</ul>
-
<script type="text/javascript">
<!--
buildToggleLists();
diff --git a/docs/html/distribute/stories/tablets.jd b/docs/html/distribute/stories/tablets.jd
deleted file mode 100644
index 085cd8f..0000000
--- a/docs/html/distribute/stories/tablets.jd
+++ /dev/null
@@ -1,369 +0,0 @@
-page.title=Developer Stories: The Opportunity of Android Tablets
-meta.tags="google play, developer story, journal, tablets, apps"
-page.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
-page.timestamp=1381449600
-
-@jd:body
-
-
-<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
-more monetization opportunities. And with the growing wave of Android tablets that
-continue to hit the market, it’s an important piece of any developer’s mobile
-offering. </p>
-
-<p>Here are some stories from developers who are seeing real results as they
-expand their offering to include Android tablets.</p>
-
-
-<div style="margin-bottom:2em;" id="rememberthemilk"><!-- START STORY -->
-
-<h3>Remember The Milk: Lifting installs with tablet design</h3>
-
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 12px 20px 9px 20px;" src=
- "http://lh3.ggpht.com/xmnal18taauP2mjQFEhr1PhcItQ_W32IRuaD86IoL2U_4E-mfeKiliKtkISgOuA6Ln9n=w124">
-
- <div style="list-style: none;height:100%;
- float: right;
- border-top: 1px solid #9C0;
- width: 220px;
- margin: 4px 20px;padding: .5em;">
-
-
- <h5>About the app</h5>
-
-
- <ul>
- <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>
-
- <h5>Tablet Results</h5>
-
- <ul>
- <li>83% jump in tablet installs following update </li>
- <li>Nexus 7 is most popular Android device for app </li>
- <li>Single APK for phones and tablets</li>
- </ul>
-
- <div style="padding:.5em 0 0 1em;">
- <a href="http://play.google.com/store/apps/details?id=com.rememberthemilk.MobileRTM">
- <img alt="Android app on Google Play"
- src="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
- </a>
-
- </div>
- </div>
-
- <div style="line-height:1.4em;">
- <p style="margin-top:0;margin-bottom:12px;">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="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="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
- Android tablets differently from a user experience perspective. The guidelines
- were a helpful resource, and with the extra screen real estate tablets afford,
- users have the opportunity to see all of their data in context and drill down
- on more items. All of this is accomplished using a single APK on Play, even though
- the phone and tablet versions each capture completely different use cases for us.”</p>
-
- <p>“In the month after updating, we saw our tablet installs on Google Play jump 83%,
- and the Nexus 7 is now the most popular Android device amongst our users. For us,
- designing for tablets was an investment that has really paid off.”</p>
-
- <p>The team also came out with a number of other goodies — including a new set of
- widgets and richer notifications, and more ways to provide an immersive experience
- for their users.</p>
- </div>
-
- <div style="clear:both;margin-top:30px;width:auto;">
-
- <img src="{@docRoot}images/distribute/rememberthemilk.png">
-
- <div style="width:600px;margin-top:0px;padding:0 90px;">
- <p class="image-caption"><span style="font-weight:500;">Tablet redesign led to lift
- in installs</span>: Following the redesign of the Android app, in part to meet the tablet
- design criteria, Remember The Milk saw an 83% increase in tablet installs.</p>
- </div>
-
- </div>
-
-</div> <!-- END STORY -->
-
-
-<div style="margin-bottom:2em;" id="mint"><!-- START STORY -->
-
-<h3>Mint: More screen real estate = more engagement</h3>
-
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 12px 20px 9px 20px;" src=
- "https://lh5.ggpht.com/0xAIZJ1uE05b4RHNHgBBTIH6nRdPTY660T104xY7O2GbHXwab6YVmpU5yYg8yacfBg=w124">
-
- <div style="list-style: none;height:100%;
- float: right;
- border-top: 1px solid #9C0;
- width: 220px;
- margin: 4px 20px;padding: .5em;">
-
-
- <h5>About the app</h5>
-
-
- <ul>
- <li><a href="http://play.google.com/store/apps/details?id=com.mint">Mint.com Personal Finance</a> by Intuit Inc.</li>
- <li>Financial management app targeting 7- to 10-inch tablets and phones</li>
- </ul>
-
- <h5>Tablet Results</h5>
-
- <ul>
- <li>Able to offer richer UI features</li>
- <li>Much higher user engagement</li>
- <li>Longer sessions — more Android tablet users have sessions longer than 5 minutes</li>
- </ul>
-
- <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="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-</a>
-
- </div>
- </div>
-
- <div style="line-height:1.4em;">
- <p style="margin-top:0;margin-bottom:12px;">When Intuit was thinking about
-expanding their Mint mobile offering to include a version optimized for Android
-tablets, they knew that taking the layout that worked for phones and simply
-showing an enlarged version wouldn’t take full advantage of the opportunities
-that tablets afford.</p>
-
- <p>“We knew we had a lot more real estate, and we wanted to provide a more
-immersive experience for our users” said Ken Sun, Intuit Group Product Manager
-at Mint.</p>
-
-<p>Intuit’s Mint app, which has a 4-star rating on Google Play, brings a number
-of features to Android tablets that aren’t available for phones, including a
-more visual presentation of personal financial data.</p>
-
-<p>“Whereas our app for phones is used throughout the day for quick sessions,
-we’ve seen a larger percentage of our tablet usage happen in the evening, for
-much longer sessions,” said Sun. “People are doing a lot more than just checking
-their spending. They’re looking at historical trends, re-categorizing
-transactions, analyzing the data and setting financial goals for the future
-— digging much deeper and being more thoughtful. One example is how much
-users are interacting with their own budgets in the tablet app. Customer budget
-operations (view, edit, drill-down, etc.) are 7x higher on Android tablets than
-they are on phones.”</p>
-
-<p>Fifty percent more Android tablet users have Mint sessions of 5 minutes or
-longer than they do on phones. “We’ve found that phone usage is indicative of a
-customer’s regular financial check-in, while tablet usage points towards more
-analysis and interaction with that customer’s personal financial data. This is
-the sort of immersive engagement experience we were looking for; the tablet and
-phone apps serve as great complements to each other."</p>
- </div>
-
- <div style="clear:both;margin-top:40px;width:auto;">
-
- <img src="{@docRoot}images/distribute/mint.png">
-
- <div style="width:600px;margin-top:0px;padding:0 90px;">
- <p class="image-caption"><span style="font-weight:500;">Making the most of tablet screens</span>: Mint used the extra screen area on tablets to offer quick access to additional tools and information.</p>
- </div>
-
- </div>
-
-</div> <!-- END STORY -->
-
-
-<div style="margin:3em auto"><!-- START STORY -->
-
-
-<h3>TinyCo: Monetization opportunities abound on tablets</h3>
-
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 12px 20px 30px 20px;" src=
- "https://lh6.ggpht.com/QTy7lOGRTS58NW4XEeym2sxpWKDmRNod_n3kBrHlqTRIyzIv2gkw8DfwiR4GIAdxiHw=w124">
-
-
- <div style="list-style: none;height:100%;
- float: right;
- border-top: 1px solid #9C0;
- width: 220px;
- margin: 4px 20px;padding: .5em;">
-
- <h5>About the app</h5>
-
- <ul>
- <li><a href="http://play.google.com/store/apps/details?id=com.tinyco.village">Tiny Village</a> by TinyCo</li>
- <li>Game targeting 7- to 10-inch tablets and phones</li>
- </ul>
-
- <h5>Tablet Results</h5>
-
- <ul>
- <li>35% higher average revenue per paying user (ARPPU)</li>
- <li>Consistent increase in user retention</li>
- <li>3x increase in downloads to Android tablets in the last 6 months</li>
- </ul>
-
- <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="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-</a>
-
- </div>
- </div>
-
- <div style="line-height:1.4em;">
- <p style="margin-top:0;margin-bottom:12px;">
-
-<p>Over a year ago, app developer TinyCo, makers of a suite of games such as
-Tiny Monsters, decided to prioritize launching across multiple platforms
-effectively. They chose Android as one of their primary launch platforms because
-of its large installed base and global reach. They also knew that the growing
-base of Android tablet users represented a huge opportunity.</p>
-
- <p>Tiny Village was their first title to take advantage of the strategy, and
-it proved to be a winning one — especially in terms of Android
-tablets.</p>
-
- <p> “With continued optimization of the gameplay experience and a genuine
-commitment to our Android offering through our Griffin engine, all of our
-metrics started to rise,” said Rajeev Nagpal, Head of Product at TinyCo. In
-fact, they’ve seen Android tablet downloads more than triple in the last six
-months.</p>
-
- <p>One of the first things they noticed about usage of Tiny Village on
-tablets was an increase in average revenue per paying user (ARPPU)—about 35%
-higher than on smaller-screen devices such as phones. Additionally, average
-revenue per user ARPU is now about 35% higher as well. “The game is just much
-more immersive on tablet.”</p>
-
- <p>In addition to an increase in monetization metrics, they’ve also seen a
-consistent increase in retention over other platforms. “These are really
-important metrics for games — if you can get users to both stay around
-longer and spend more while they’re there, you have a recipe for success.”</p>
- </div>
-
- <div style="clear:both;margin-top:40px;width:auto;">
-
- <img src="{@docRoot}images/distribute/tinyvillage.png">
-
- <div style="width:600px;margin-top:0px;padding:0 90px;">
- <p class="image-caption"><span style="font-weight:500;">More monetization
-on tablets</span>: On Android tablets TinyCo has seen higher ARPPU and user
-retention than on phones.</p>
- </div>
-
- </div>
-
-</div> <!-- END STORY -->
-
-
-<div style="margin-bottom:2em;"><!-- START STORY -->
-
-<h3>Instapaper: Riding the growing wave of Android tablets</h3>
-
-
- <img alt="" class="screenshot thumbnail" style="-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px height:78px;
- width: 78px;
- float: left;
- margin: 12px 20px 9px 20px;" src=
- "https://lh3.ggpht.com/30KKcrIFO8V_wRfhnHaI9l0CLH_orIVFE7Xywtr9TBxAf0hi2BaZkKyBOs63Yfavpg=w124">
-
-
- <div style="list-style: none;height:100%;
- float: right;
- border-top: 1px solid #9C0;
- width: 220px;
- margin: 4px 20px;padding: .5em;">
-
-
-
-
- <h5>About the app</h5>
- <ul>
- <li><a href="http://play.google.com/store/apps/details?id=com.instapaper.android">Instapaper</a> by Mobelux</li>
- <li>Content-browsing utility that targets 7- to 10-inch tablets and phones</li>
- </ul>
-
- <h5>Tablet Results</h5>
-
- <ul>
- <li>Tablets are now 50% of the app's installed base.</li>
- </ul>
-
- <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="{@docRoot}images/brand/en_generic_rgb_wo_45.png" />
-</a>
-
- </div>
- </div>
-
- <div style="line-height:1.4em;">
- <p style="margin-top:0;margin-bottom:12px;">Instapaper for Android is an app
-for saving web content to read later. Developer Mobelux decided that creating a
-great UI for Android tablet users would be an essential part of their initial launch
-plan.</p>
-
- <p>The app launched at the beginning of the summer of 2012, just in time to
-take advantage of a new tide of Android tablets, including the <span
-style="white-space:nowrap;">Nexus 7</span> tablet. The app has since seen huge
-popularity among tablet users, in particular, on Nexus 7. On the day that
-pre-orders of Nexus 7 began arriving, Mobelux saw a 600% jump in downloads of
-its app on Google Play.</p>
-
- <p>“We saw a promising new set of Android tablets about to hit the market
-and wanted to position ourselves to be ready for them” said Jeff Rock of
-Mobelux. “It was a market that others were hesitant to explore, but the decision
-to prioritize tablets has paid off very well for us.”</p>
-
- <p>Since that initial 600% jump in downloads, Instapaper for Android has
-continued to see a successful run on Android tablets. In fact, Android tablets
-now represent about 50% of their installed base. “With more and more Android
-tablets coming online, we’re excited to see how our investment in Android
-tablets continues to pay off.”</p>
- </div>
-
- <div style="clear:both;margin-top:40px;width:auto;">
-
- <img src="{@docRoot}images/distribute/instapaper.png">
-
- <div style="width:600px;margin-top:0px;padding:0 90px;">
- <p class="image-caption"><span style="font-weight:500;">Popular with
-tablet users</span>: A great tablet UI and browsing convenience make Instapaper
-popular with Android tablet users.</p>
- </div>
-
- </div>
-
-</div> <!-- END STORY -->
-
-
-
diff --git a/docs/html/distribute/tools/_book.yaml b/docs/html/distribute/tools/_book.yaml
new file mode 100644
index 0000000..a55250a
--- /dev/null
+++ b/docs/html/distribute/tools/_book.yaml
@@ -0,0 +1,31 @@
+toc:
+- title: Launch Checklist
+ path: /distribute/tools/launch-checklist.html
+ custom_link_attributes:
+ - zh-cn-lang: "发布检查清单"
+
+- title: Localization Checklist
+ path: /distribute/tools/localization-checklist.html
+ custom_link_attributes:
+ - zh-cn-lang: "本地化检查清单"
+
+- title: Device Art Generator
+ path: /distribute/tools/promote/device-art.html
+
+- title: Google Play Badges
+ path: /distribute/tools/promote/badges.html
+ custom_link_attributes:
+ - zh-cn-lang: "Google Play 徽章生成器"
+
+- title: Linking to Your Products
+ path: /distribute/tools/promote/linking.html
+ custom_link_attributes:
+ - zh-cn-lang: "链接到您的商品"
+
+- title: Brand Guidelines
+ path: /distribute/tools/promote/brand.html
+ custom_link_attributes:
+ - zh-cn-lang: "品牌指南"
+
+- title: Alternative Distribution
+ path: /distribute/tools/open-distribution.html
diff --git a/docs/html/distribute/tools/localization-checklist.jd b/docs/html/distribute/tools/localization-checklist.jd
index e640243..1497c36 100644
--- a/docs/html/distribute/tools/localization-checklist.jd
+++ b/docs/html/distribute/tools/localization-checklist.jd
@@ -549,12 +549,6 @@
<img src="{@docRoot}images/gp-localization-trans-0.png" class="border-img">
</div>
-<h3 class="rel-resources clearfloat">Related resources</h3>
-
-<div class="resource-widget resource-flow-layout col-13" data-query=
-"collection:distribute/toolsreference/localizationchecklist/translatestrings"
-data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
-</div>
<div class="headerLine">
<h2 id="test">
diff --git a/docs/html/distribute/users/_book.yaml b/docs/html/distribute/users/_book.yaml
new file mode 100644
index 0000000..0febb02
--- /dev/null
+++ b/docs/html/distribute/users/_book.yaml
@@ -0,0 +1,33 @@
+toc:
+- title: Create a Great Listing
+ path: /distribute/users/your-listing.html
+
+- title: Promote with Ads
+ path: /distribute/users/promote-with-ads.html
+
+- title: Drive Installs from Search
+ path: /distribute/users/appindexing.html
+
+- title: Expand to New Markets
+ path: /distribute/users/expand-to-new-markets.html
+
+- title: Offer Over-the-air Installs
+ path: /distribute/users/ota-installs.html
+
+- title: Smarter App Invites
+ path: /distribute/users/app-invites.html
+
+- title: Drive installs from YouTube
+ path: /distribute/users/youtube.html
+
+- title: Cross-Sell with House Ads
+ path: /distribute/users/house-ads.html
+
+- title: Increase installs with Store Listing Experiments
+ path: /distribute/users/experiments.html
+
+- title: Add an App Install Banner On Your Mobile Website
+ path: /distribute/users/banners.html
+
+- title: Understand Where Your Users Come From
+ path: /distribute/users/user-acquisition.html
diff --git a/docs/html/distribute/users/promote-with-ads.jd b/docs/html/distribute/users/promote-with-ads.jd
index f0e3256..2db4ca3 100644
--- a/docs/html/distribute/users/promote-with-ads.jd
+++ b/docs/html/distribute/users/promote-with-ads.jd
@@ -29,10 +29,8 @@
</h3>
<img src="/images/distribute/promote_ads_play.png">
<p class="figure-caption">
- Search ads on Google Play are still undergoing testing and not yet
- available to buy. <a href=
- "http://android-developers.blogspot.com/2015/02/a-new-way-to-promote-your-app-on-google.html">
- Find out more</a>.
+ Promote your app on Google Play when users are searching and browsing
+ for apps.
</p>
</div>
diff --git a/docs/html/google/_book.yaml b/docs/html/google/_book.yaml
new file mode 100644
index 0000000..7c8e272
--- /dev/null
+++ b/docs/html/google/_book.yaml
@@ -0,0 +1,75 @@
+toc:
+- title: Google Play In-app Billing
+ path: /google/play/billing/index.html
+ custom_link_attributes:
+ - zh-cn-lang: "应用内结算"
+ section:
+ - title: Overview
+ path: /google/play/billing/billing_overview.html
+ custom_link_attributes:
+ - zh-cn-lang: "应用内结算概述"
+ - title: Version 3 API
+ path: /google/play/billing/api.html
+ custom_link_attributes:
+ - zh-cn-lang: "应用内结算 API"
+ section:
+ - title: Implementing the API
+ path: /google/play/billing/billing_integrate.html
+ - title: Reference
+ path: /google/play/billing/billing_reference.html
+ - title: Subscriptions
+ path: /google/play/billing/billing_subscriptions.html
+ - title: Promotions
+ path: /google/play/billing/billing_promotions.html
+ - title: Security and Design
+ path: /google/play/billing/billing_best_practices.html
+ custom_link_attributes:
+ - zh-cn-lang: "安全性和设计"
+ - title: Testing In-app Billing
+ path: /google/play/billing/billing_testing.html
+ custom_link_attributes:
+ - zh-cn-lang: "测试应用内结算"
+ - title: Administering In-app Billing
+ path: /google/play/billing/billing_admin.html
+ custom_link_attributes:
+ - zh-cn-lang: "管理应用内结算"
+ - title: Version Notes
+ path: /google/play/billing/versions.html
+
+- title: Filters on Google Play
+ path: /google/play/filters.html
+ custom_link_attributes:
+ - es-lang: "Filtros en Google Play"
+ - ja-lang: "Google Play 上のフィルタ"
+ - ko-lang: "Google Play 필터"
+ - pt-br-lang: "Filtros no Google Play"
+ - ru-lang: "Фильтры в Google Play"
+ - zh-cn-lang: "Google Play 上的筛选器"
+ - zh-tw-lang: "Google Play 上的篩選器"
+
+- title: Google Play Developer API
+ path: /google/play/developer-api.html
+
+- title: Multiple APK Support
+ path: /google/play/publishing/multiple-apks.html
+
+- title: APK Expansion Files
+ path: /google/play/expansion-files.html
+
+- title: Application Licensing
+ path: /google/play/licensing/index.html
+ section:
+ - title: Licensing Overview
+ path: /google/play/licensing/overview.html
+ - title: Setting Up for Licensing
+ path: /google/play/licensing/setting-up.html
+ - title: Adding Licensing to Your App
+ path: /google/play/licensing/adding-licensing.html
+ - title: Licensing Reference
+ path: /google/play/licensing/licensing-reference.html
+
+- title: Android Backup Service
+ path: /google/backup/index.html
+ section:
+ - title: Register
+ path: /google/backup/signup.html
diff --git a/docs/html/guide/_book.yaml b/docs/html/guide/_book.yaml
new file mode 100644
index 0000000..3cf9f92
--- /dev/null
+++ b/docs/html/guide/_book.yaml
@@ -0,0 +1,409 @@
+toc:
+- title: Introduction
+ path: /guide/index.html
+ section:
+ - title: App Fundamentals
+ path: /guide/components/fundamentals.html
+ - title: Device Compatibility
+ path: /guide/practices/compatibility.html
+ - title: System Permissions
+ path: /guide/topics/security/permissions.html
+
+- title: App Components
+ path: /guide/components/index.html
+ section:
+ - title: Intents and Intent Filters
+ path: /guide/components/intents-filters.html
+ section:
+ - title: Common Intents
+ path: /guide/components/intents-common.html
+ - title: Activities
+ path: /guide/components/activities.html
+ section:
+ - title: Fragments
+ path: /guide/components/fragments.html
+ - title: Loaders
+ path: /guide/components/loaders.html
+ - title: Tasks and Back Stack
+ path: /guide/components/tasks-and-back-stack.html
+ - title: Overview Screen
+ path: /guide/components/recents.html
+ - title: Services
+ path: /guide/components/services.html
+ section:
+ - title: Bound Services
+ path: /guide/components/bound-services.html
+ - title: AIDL
+ path: /guide/components/aidl.html
+ - title: Content Providers
+ path: /guide/topics/providers/content-providers.html
+ section:
+ - title: Content Provider Basics
+ path: /guide/topics/providers/content-provider-basics.html
+ - title: Creating a Content Provider
+ path: /guide/topics/providers/content-provider-creating.html
+ - title: Calendar Provider
+ path: /guide/topics/providers/calendar-provider.html
+ - title: Contacts Provider
+ path: /guide/topics/providers/contacts-provider.html
+ - title: Storage Access Framework
+ path: /guide/topics/providers/document-provider.html
+ - title: App Widgets
+ path: /guide/topics/appwidgets/index.html
+ section:
+ - title: App Widget Host
+ path: /guide/topics/appwidgets/host.html
+ - title: Processes and Threads
+ path: /guide/components/processes-and-threads.html
+
+- title: App Resources
+ path: /guide/topics/resources/index.html
+ section:
+ - title: Overview
+ path: /guide/topics/resources/overview.html
+ - title: Providing Resources
+ path: /guide/topics/resources/providing-resources.html
+ - title: Accessing Resources
+ path: /guide/topics/resources/accessing-resources.html
+ - title: Handling Runtime Changes
+ path: /guide/topics/resources/runtime-changes.html
+ - title: Localization
+ path: /guide/topics/resources/localization.html
+ - title: Resource Types
+ path: /guide/topics/resources/available-resources.html
+ section:
+ - title: Animation
+ path: /guide/topics/resources/animation-resource.html
+ - title: Color State List
+ path: /guide/topics/resources/color-list-resource.html
+ - title: Drawable
+ path: /guide/topics/resources/drawable-resource.html
+ - title: Layout
+ path: /guide/topics/resources/layout-resource.html
+ - title: Menu
+ path: /guide/topics/resources/menu-resource.html
+ - title: String
+ path: /guide/topics/resources/string-resource.html
+ - title: Style
+ path: /guide/topics/resources/style-resource.html
+ - title: More Types
+ path: /guide/topics/resources/more-resources.html
+
+- title: App Manifest
+ path: /guide/topics/manifest/manifest-intro.html
+ section:
+ - title: <action>
+ path: /guide/topics/manifest/action-element.html
+ - title: <activity>
+ path: /guide/topics/manifest/activity-element.html
+ - title: <activity-alias>
+ path: /guide/topics/manifest/activity-alias-element.html
+ - title: <application>
+ path: /guide/topics/manifest/application-element.html
+ - title: <category>
+ path: /guide/topics/manifest/category-element.html
+ - title: <compatible-screens>
+ path: /guide/topics/manifest/compatible-screens-element.html
+ - title: <data>
+ path: /guide/topics/manifest/data-element.html
+ - title: <grant-uri-permission>
+ path: /guide/topics/manifest/grant-uri-permission-element.html
+ - title: <instrumentation>
+ path: /guide/topics/manifest/instrumentation-element.html
+ - title: <intent-filter>
+ path: /guide/topics/manifest/intent-filter-element.html
+ - title: <manifest>
+ path: /guide/topics/manifest/manifest-element.html
+ - title: <meta-data>
+ path: /guide/topics/manifest/meta-data-element.html
+ - title: <path-permission>
+ path: /guide/topics/manifest/path-permission-element.html
+ - title: <permission>
+ path: /guide/topics/manifest/permission-element.html
+ - title: <permission-group>
+ path: /guide/topics/manifest/permission-group-element.html
+ - title: <permission-tree>
+ path: /guide/topics/manifest/permission-tree-element.html
+ - title: <provider>
+ path: /guide/topics/manifest/provider-element.html
+ - title: <receiver>
+ path: /guide/topics/manifest/receiver-element.html
+ - title: <service>
+ path: /guide/topics/manifest/service-element.html
+ - title: <supports-gl-texture>
+ path: /guide/topics/manifest/supports-gl-texture-element.html
+ - title: <supports-screens>
+ path: /guide/topics/manifest/supports-screens-element.html
+ - title: <uses-configuration>
+ path: /guide/topics/manifest/uses-configuration-element.html
+ - title: <uses-feature>
+ path: /guide/topics/manifest/uses-feature-element.html
+ - title: <uses-library>
+ path: /guide/topics/manifest/uses-library-element.html
+ - title: <uses-permission>
+ path: /guide/topics/manifest/uses-permission-element.html
+ - title: <uses-permission-sdk-23>
+ path: /guide/topics/manifest/uses-permission-sdk-23-element.html
+ - title: <uses-sdk>
+ path: /guide/topics/manifest/uses-sdk-element.html
+
+- title: User Interface
+ path: /guide/topics/ui/index.html
+ section:
+ - title: Overview
+ path: /guide/topics/ui/overview.html
+ - title: Layouts
+ path: /guide/topics/ui/declaring-layout.html
+ section:
+ - title: Linear Layout
+ path: /guide/topics/ui/layout/linear.html
+ - title: Relative Layout
+ path: /guide/topics/ui/layout/relative.html
+ - title: List View
+ path: /guide/topics/ui/layout/listview.html
+ - title: Grid View
+ path: /guide/topics/ui/layout/gridview.html
+ - title: Input Controls
+ path: /guide/topics/ui/controls.html
+ section:
+ - title: Buttons
+ path: /guide/topics/ui/controls/button.html
+ - title: Text Fields
+ path: /guide/topics/ui/controls/text.html
+ - title: Checkboxes
+ path: /guide/topics/ui/controls/checkbox.html
+ - title: Radio Buttons
+ path: /guide/topics/ui/controls/radiobutton.html
+ - title: Toggle Buttons
+ path: /guide/topics/ui/controls/togglebutton.html
+ - title: Spinners
+ path: /guide/topics/ui/controls/spinner.html
+ - title: Pickers
+ path: /guide/topics/ui/controls/pickers.html
+ - title: Input Events
+ path: /guide/topics/ui/ui-events.html
+ - title: Menus
+ path: /guide/topics/ui/menus.html
+ - title: Settings
+ path: /guide/topics/ui/settings.html
+ - title: Dialogs
+ path: /guide/topics/ui/dialogs.html
+ - title: Notifications
+ path: /guide/topics/ui/notifiers/notifications.html
+ - title: Toasts
+ path: /guide/topics/ui/notifiers/toasts.html
+ - title: Search
+ path: /guide/topics/search/index.html
+ section:
+ - title: Creating a Search Interface
+ path: /guide/topics/search/search-dialog.html
+ - title: Adding Recent Query Suggestions
+ path: /guide/topics/search/adding-recent-query-suggestions.html
+ - title: Adding Custom Suggestions
+ path: /guide/topics/search/adding-custom-suggestions.html
+ - title: Searchable Configuration
+ path: /guide/topics/search/searchable-config.html
+ - title: Drag and Drop
+ path: /guide/topics/ui/drag-drop.html
+ - title: Accessibility
+ path: /guide/topics/ui/accessibility/index.html
+ section:
+ - title: Making Applications Accessible
+ path: /guide/topics/ui/accessibility/apps.html
+ - title: Accessibility Developer Checklist
+ path: /guide/topics/ui/accessibility/checklist.html
+ - title: Building Accessibility Services
+ path: /guide/topics/ui/accessibility/services.html
+ - title: Styles and Themes
+ path: /guide/topics/ui/themes.html
+ - title: Custom Components
+ path: /guide/topics/ui/custom-components.html
+
+- title: Animation and Graphics
+ path: /guide/topics/graphics/index.html
+ section:
+ - title: Overview
+ path: /guide/topics/graphics/overview.html
+ - title: Property Animation
+ path: /guide/topics/graphics/prop-animation.html
+ - title: View Animation
+ path: /guide/topics/graphics/view-animation.html
+ - title: Drawable Animation
+ path: /guide/topics/graphics/drawable-animation.html
+ - title: Canvas and Drawables
+ path: /guide/topics/graphics/2d-graphics.html
+ - title: OpenGL ES
+ path: /guide/topics/graphics/opengl.html
+ - title: Hardware Acceleration
+ path: /guide/topics/graphics/hardware-accel.html
+
+- title: Computation
+ path: /guide/topics/renderscript/index.html
+ section:
+ - title: RenderScript
+ path: /guide/topics/renderscript/compute.html
+ - title: Advanced RenderScript
+ path: /guide/topics/renderscript/advanced.html
+ - title: Runtime API Reference
+ path: /guide/topics/renderscript/reference/overview.html
+ section:
+ - title: Numerical Types
+ path: /guide/topics/renderscript/reference/rs_value_types.html
+ - title: Object Types
+ path: /guide/topics/renderscript/reference/rs_object_types.html
+ - title: Conversion Functions
+ path: /guide/topics/renderscript/reference/rs_convert.html
+ - title: Mathematical Constants and Functions
+ path: /guide/topics/renderscript/reference/rs_math.html
+ - title: Vector Math Functions
+ path: /guide/topics/renderscript/reference/rs_vector_math.html
+ - title: Matrix Functions
+ path: /guide/topics/renderscript/reference/rs_matrix.html
+ - title: Quaternion Functions
+ path: /guide/topics/renderscript/reference/rs_quaternion.html
+ - title: Atomic Update Functions
+ path: /guide/topics/renderscript/reference/rs_atomic.html
+ - title: Time Functions and Types
+ path: /guide/topics/renderscript/reference/rs_time.html
+ - title: Allocation Data Access Functions
+ path: /guide/topics/renderscript/reference/rs_allocation_data.html
+ - title: Object Characteristics Functions
+ path: /guide/topics/renderscript/reference/rs_object_info.html
+ - title: Kernel Invocation Functions and Types
+ path: /guide/topics/renderscript/reference/rs_for_each.html
+ - title: Input/Output Functions
+ path: /guide/topics/renderscript/reference/rs_io.html
+ - title: Debugging Functions
+ path: /guide/topics/renderscript/reference/rs_debug.html
+ - title: Graphics Functions and Types
+ path: /guide/topics/renderscript/reference/rs_graphics.html
+ - title: Index
+ path: /guide/topics/renderscript/reference/index.html
+
+- title: Media and Camera
+ path: /guide/topics/media/index.html
+ section:
+ - title: Media Playback
+ path: /guide/topics/media/mediaplayer.html
+ - title: Media Router
+ path: /guide/topics/media/mediarouter.html
+ - title: Media Route Provider
+ path: /guide/topics/media/mediarouteprovider.html
+ - title: ExoPlayer
+ path: /guide/topics/media/exoplayer.html
+ - title: Supported Media Formats
+ path: /guide/appendix/media-formats.html
+ - title: Audio Capture
+ path: /guide/topics/media/audio-capture.html
+ - title: JetPlayer
+ path: /guide/topics/media/jetplayer.html
+ - title: Camera
+ path: /guide/topics/media/camera.html
+
+- title: Location and Sensors
+ path: /guide/topics/sensors/index.html
+ section:
+ - title: Location and Maps
+ path: /guide/topics/location/index.html
+ - title: Location Strategies
+ path: /guide/topics/location/strategies.html
+ - title: Sensors Overview
+ path: /guide/topics/sensors/sensors_overview.html
+ - title: Motion Sensors
+ path: /guide/topics/sensors/sensors_motion.html
+ - title: Position Sensors
+ path: /guide/topics/sensors/sensors_position.html
+ - title: Environment Sensors
+ path: /guide/topics/sensors/sensors_environment.html
+
+- title: Connectivity
+ path: /guide/topics/connectivity/index.html
+ section:
+ - title: Bluetooth
+ path: /guide/topics/connectivity/bluetooth.html
+ section:
+ - title: Bluetooth Low Energy
+ path: /guide/topics/connectivity/bluetooth-le.html
+ - title: NFC
+ path: /guide/topics/connectivity/nfc/index.html
+ section:
+ - title: NFC Basics
+ path: /guide/topics/connectivity/nfc/nfc.html
+ - title: Advanced NFC
+ path: /guide/topics/connectivity/nfc/advanced-nfc.html
+ - title: Host-based Card Emulation
+ path: /guide/topics/connectivity/nfc/hce.html
+ - title: Wi-Fi P2P
+ path: /guide/topics/connectivity/wifip2p.html
+ - title: USB
+ path: /guide/topics/connectivity/usb/index.html
+ section:
+ - title: Accessory
+ path: /guide/topics/connectivity/usb/accessory.html
+ - title: Host
+ path: /guide/topics/connectivity/usb/host.html
+ - title: SIP
+ path: /guide/topics/connectivity/sip.html
+
+- title: Text and Input
+ path: /guide/topics/text/index.html
+ section:
+ - title: Copy and Paste
+ path: /guide/topics/text/copy-paste.html
+ - title: Creating an IME
+ path: /guide/topics/text/creating-input-method.html
+ - title: Spelling Checker
+ path: /guide/topics/text/spell-checker-framework.html
+
+- title: Data Storage
+ path: /guide/topics/data/index.html
+ section:
+ - title: Storage Options
+ path: /guide/topics/data/data-storage.html
+ - title: Data Backup
+ path: /guide/topics/data/backup.html
+ - title: App Install Location
+ path: /guide/topics/data/install-location.html
+
+- title: Administration
+ path: /guide/topics/admin/index.html
+ section:
+ - title: Device Policies
+ path: /guide/topics/admin/device-admin.html
+
+- title: Web Apps
+ path: /guide/webapps/index.html
+ section:
+ - title: Supporting Different Screens in Web Apps
+ path: /guide/webapps/targeting.html
+ - title: Building Web Apps in WebView
+ path: /guide/webapps/webview.html
+ - title: Migrating to WebView in Android 4.4
+ path: /guide/webapps/migrating.html
+ - title: Debugging Web Apps
+ path: /guide/webapps/debugging.html
+ - title: Best Practices for Web Apps
+ path: /guide/webapps/best-practices.html
+
+- title: Best Practices
+ path: /guide/practices/index.html
+ custom_link_attributes:
+ - de-lang: "Bewährte Verfahren"
+ - es-lang: "Prácticas recomendadas"
+ - fr-lang: "Meilleures pratiques"
+ - it-lang: "Best practice"
+ - ja-lang: "ベスト プラクティス"
+ - zh-cn-lang: "最佳实践"
+ - zh-tw-lang: "最佳實務"
+ section:
+ - title: Supporting Multiple Screens
+ path: /guide/practices/screens_support.html
+ section:
+ - title: Distributing to Specific Screens
+ path: /guide/practices/screens-distribution.html
+ - title: Screen Compatibility Mode
+ path: /guide/practices/screen-compat-mode.html
+ - title: Supporting Tablets and Handsets
+ path: /guide/practices/tablets-and-handsets.html
+ - title: Verifying App Behavior on ART
+ path: /guide/practices/verifying-apps-art.html
diff --git a/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd b/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd
index ff45499..860d30f 100644
--- a/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd
+++ b/docs/html/guide/topics/manifest/uses-permission-sdk-23-element.jd
@@ -19,14 +19,16 @@
<dd itemprop="description">
Specifies that an app wants a particular permission, but <em>only</em> if
- the app is running on a device with SDK version 23 or higher. If the device
- is running SDK version 22 or lower, the app does not have the specified
+ the app is running on a device with <a
+ href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">API
+ level</a> 23 or higher. If the device
+ is running API level 22 or lower, the app does not have the specified
permission.
<p>
This element is useful when you update an app to include a new
feature that requires an additional permission. If a user updates an app on a
- device that is running SDK version 22 or lower, the system prompts the user
+ device that is running API level 22 or lower, the system prompts the user
at install time to grant all new permissions that are declared in that
update. If a new feature is minor enough, you may prefer to disable
the feature altogether on those devices, so the user does not have to grant
@@ -34,7 +36,9 @@
<code><uses-permission-sdk-23></code> element instead of <a href=
"uses-permission-element.html"><code><uses-permission></code></a>,
you can request the permission <em>only</em> if the app is running on
- platforms that support the runtime permissions model, in which the user
+ platforms that support the <a
+ href="{@docRoot}training/permissions/requesting.html">runtime permissions</a>
+ model, in which the user
grants permissions to the app while it is running.
</p>
diff --git a/docs/html/images/cards/distribute/stories/concrete-bowling.jpg b/docs/html/images/cards/distribute/stories/concrete-bowling.jpg
new file mode 100644
index 0000000..797da4d
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/concrete-bowling.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/doctor-who-legacy.jpg b/docs/html/images/cards/distribute/stories/doctor-who-legacy.jpg
new file mode 100644
index 0000000..565bdba
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/doctor-who-legacy.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/dots.png b/docs/html/images/cards/distribute/stories/dots.png
new file mode 100644
index 0000000..479f8cb
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/dots.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/g4a-indian-rummy.jpg b/docs/html/images/cards/distribute/stories/g4a-indian-rummy.jpg
new file mode 100644
index 0000000..28dbae2
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/g4a-indian-rummy.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/gameloft-asphalt8.jpg b/docs/html/images/cards/distribute/stories/gameloft-asphalt8.jpg
new file mode 100644
index 0000000..cdf021e
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/gameloft-asphalt8.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/glu-eternity-warriors.jpg b/docs/html/images/cards/distribute/stories/glu-eternity-warriors.jpg
new file mode 100644
index 0000000..496efcb
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/glu-eternity-warriors.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/glu-tap-baseball.jpg b/docs/html/images/cards/distribute/stories/glu-tap-baseball.jpg
new file mode 100644
index 0000000..6232786
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/glu-tap-baseball.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/hotheadgames-firefight.jpg b/docs/html/images/cards/distribute/stories/hotheadgames-firefight.jpg
new file mode 100644
index 0000000..1524001
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/hotheadgames-firefight.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/intuit-mint.png b/docs/html/images/cards/distribute/stories/intuit-mint.png
new file mode 100644
index 0000000..39b8f11
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/intuit-mint.png
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/kongregate-adv-cap.jpg b/docs/html/images/cards/distribute/stories/kongregate-adv-cap.jpg
new file mode 100644
index 0000000..f8c1cd1
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/kongregate-adv-cap.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/kongregate-global-assault.jpg b/docs/html/images/cards/distribute/stories/kongregate-global-assault.jpg
new file mode 100644
index 0000000..ae6115e
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/kongregate-global-assault.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/leos-fortune.jpg b/docs/html/images/cards/distribute/stories/leos-fortune.jpg
new file mode 100644
index 0000000..80703ee
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/leos-fortune.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/noodlecake-super-stickman.jpg b/docs/html/images/cards/distribute/stories/noodlecake-super-stickman.jpg
new file mode 100644
index 0000000..a9f8de0
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/noodlecake-super-stickman.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/remember-the-milk.jpg b/docs/html/images/cards/distribute/stories/remember-the-milk.jpg
new file mode 100644
index 0000000..3415073
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/remember-the-milk.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/rvappstudios-zombie.jpg b/docs/html/images/cards/distribute/stories/rvappstudios-zombie.jpg
new file mode 100644
index 0000000..a78ed60
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/rvappstudios-zombie.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/sayhichat.jpg b/docs/html/images/cards/distribute/stories/sayhichat.jpg
new file mode 100644
index 0000000..33f0dde
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/sayhichat.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/tiny-co.jpg b/docs/html/images/cards/distribute/stories/tiny-co.jpg
new file mode 100644
index 0000000..ad1a689
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/tiny-co.jpg
Binary files differ
diff --git a/docs/html/images/cards/distribute/stories/two-dots.png b/docs/html/images/cards/distribute/stories/two-dots.png
new file mode 100644
index 0000000..f0e3db4
--- /dev/null
+++ b/docs/html/images/cards/distribute/stories/two-dots.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/concrete-bowling-icon.png b/docs/html/images/distribute/stories/concrete-bowling-icon.png
new file mode 100644
index 0000000..e81e390
--- /dev/null
+++ b/docs/html/images/distribute/stories/concrete-bowling-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/concrete-bowling-screenshot.png b/docs/html/images/distribute/stories/concrete-bowling-screenshot.png
new file mode 100644
index 0000000..540df1f
--- /dev/null
+++ b/docs/html/images/distribute/stories/concrete-bowling-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/concrete-bowling-screenshot_2x.png b/docs/html/images/distribute/stories/concrete-bowling-screenshot_2x.png
new file mode 100644
index 0000000..0f76df6
--- /dev/null
+++ b/docs/html/images/distribute/stories/concrete-bowling-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/doctor-who-legacy-icon.png b/docs/html/images/distribute/stories/doctor-who-legacy-icon.png
new file mode 100644
index 0000000..4634fa1
--- /dev/null
+++ b/docs/html/images/distribute/stories/doctor-who-legacy-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/doctor-who-legacy-screenshot.png b/docs/html/images/distribute/stories/doctor-who-legacy-screenshot.png
new file mode 100644
index 0000000..7d3eade
--- /dev/null
+++ b/docs/html/images/distribute/stories/doctor-who-legacy-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/doctor-who-legacy-screenshot_2x.png b/docs/html/images/distribute/stories/doctor-who-legacy-screenshot_2x.png
new file mode 100644
index 0000000..556bfcd
--- /dev/null
+++ b/docs/html/images/distribute/stories/doctor-who-legacy-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/dots-icon.png b/docs/html/images/distribute/stories/dots-icon.png
new file mode 100644
index 0000000..721c536
--- /dev/null
+++ b/docs/html/images/distribute/stories/dots-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/dots-screenshot.png b/docs/html/images/distribute/stories/dots-screenshot.png
new file mode 100644
index 0000000..ec95f69
--- /dev/null
+++ b/docs/html/images/distribute/stories/dots-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/dots-screenshot_2x.png b/docs/html/images/distribute/stories/dots-screenshot_2x.png
new file mode 100644
index 0000000..17edb12
--- /dev/null
+++ b/docs/html/images/distribute/stories/dots-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/gameloft-asphalt8-icon.png b/docs/html/images/distribute/stories/gameloft-asphalt8-icon.png
new file mode 100644
index 0000000..27e5219
--- /dev/null
+++ b/docs/html/images/distribute/stories/gameloft-asphalt8-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot.png b/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot.png
new file mode 100644
index 0000000..f55c774
--- /dev/null
+++ b/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot_2x.png b/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot_2x.png
new file mode 100644
index 0000000..2b0c1e3
--- /dev/null
+++ b/docs/html/images/distribute/stories/gameloft-asphalt8-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-eternity-warriors-icon.jpg b/docs/html/images/distribute/stories/glu-eternity-warriors-icon.jpg
new file mode 100644
index 0000000..c4b0cd1
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-eternity-warriors-icon.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot.png b/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot.png
new file mode 100644
index 0000000..4b8807e
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot_2x.png b/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot_2x.png
new file mode 100644
index 0000000..b41e917
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-eternity-warriors-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-tap-baseball-icon.jpg b/docs/html/images/distribute/stories/glu-tap-baseball-icon.jpg
new file mode 100644
index 0000000..f99710b
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-tap-baseball-icon.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-tap-baseball-screenshot.png b/docs/html/images/distribute/stories/glu-tap-baseball-screenshot.png
new file mode 100644
index 0000000..92aa942
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-tap-baseball-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/glu-tap-baseball-screenshot_2x.png b/docs/html/images/distribute/stories/glu-tap-baseball-screenshot_2x.png
new file mode 100644
index 0000000..df6c8a8
--- /dev/null
+++ b/docs/html/images/distribute/stories/glu-tap-baseball-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/hotheadgames-firefight-icon.png b/docs/html/images/distribute/stories/hotheadgames-firefight-icon.png
new file mode 100644
index 0000000..c7592c1
--- /dev/null
+++ b/docs/html/images/distribute/stories/hotheadgames-firefight-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot.png b/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot.png
new file mode 100644
index 0000000..f93010e
--- /dev/null
+++ b/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot_2x.png b/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot_2x.png
new file mode 100644
index 0000000..4761715
--- /dev/null
+++ b/docs/html/images/distribute/stories/hotheadgames-firefight-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/indian-rummy-icon.png b/docs/html/images/distribute/stories/indian-rummy-icon.png
new file mode 100644
index 0000000..2e99112
--- /dev/null
+++ b/docs/html/images/distribute/stories/indian-rummy-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/indian-rummy-screenshot.jpg b/docs/html/images/distribute/stories/indian-rummy-screenshot.jpg
new file mode 100644
index 0000000..a446a8a
--- /dev/null
+++ b/docs/html/images/distribute/stories/indian-rummy-screenshot.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/indian-rummy-screenshot_2x.jpg b/docs/html/images/distribute/stories/indian-rummy-screenshot_2x.jpg
new file mode 100644
index 0000000..61943fc
--- /dev/null
+++ b/docs/html/images/distribute/stories/indian-rummy-screenshot_2x.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/intuit-mint-icon.png b/docs/html/images/distribute/stories/intuit-mint-icon.png
new file mode 100644
index 0000000..b09e430
--- /dev/null
+++ b/docs/html/images/distribute/stories/intuit-mint-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/intuit-mint-screenshot.png b/docs/html/images/distribute/stories/intuit-mint-screenshot.png
new file mode 100644
index 0000000..212ae86
--- /dev/null
+++ b/docs/html/images/distribute/stories/intuit-mint-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/intuit-mint-screenshot_2x.png b/docs/html/images/distribute/stories/intuit-mint-screenshot_2x.png
new file mode 100644
index 0000000..39b8f11
--- /dev/null
+++ b/docs/html/images/distribute/stories/intuit-mint-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-adv-cap-icon.png b/docs/html/images/distribute/stories/kongregate-adv-cap-icon.png
new file mode 100644
index 0000000..ca8c597
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-adv-cap-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot.png b/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot.png
new file mode 100644
index 0000000..5f751e2
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot_2x.png b/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot_2x.png
new file mode 100644
index 0000000..cff67dc
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-adv-cap-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-global-assault-icon.png b/docs/html/images/distribute/stories/kongregate-global-assault-icon.png
new file mode 100644
index 0000000..b93180d
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-global-assault-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/kongregate-global-assault-screenshot.png b/docs/html/images/distribute/stories/kongregate-global-assault-screenshot.png
new file mode 100644
index 0000000..d0709a3
--- /dev/null
+++ b/docs/html/images/distribute/stories/kongregate-global-assault-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/leos-fortune-icon.png b/docs/html/images/distribute/stories/leos-fortune-icon.png
new file mode 100644
index 0000000..390c027
--- /dev/null
+++ b/docs/html/images/distribute/stories/leos-fortune-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/leos-fortune-screenshot.png b/docs/html/images/distribute/stories/leos-fortune-screenshot.png
new file mode 100644
index 0000000..751dffb
--- /dev/null
+++ b/docs/html/images/distribute/stories/leos-fortune-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/leos-fortune-screenshot_2x.png b/docs/html/images/distribute/stories/leos-fortune-screenshot_2x.png
new file mode 100644
index 0000000..d67c9af
--- /dev/null
+++ b/docs/html/images/distribute/stories/leos-fortune-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/noodlecake-super-stickman-icon.png b/docs/html/images/distribute/stories/noodlecake-super-stickman-icon.png
new file mode 100644
index 0000000..2ae6e3f
--- /dev/null
+++ b/docs/html/images/distribute/stories/noodlecake-super-stickman-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot.png b/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot.png
new file mode 100644
index 0000000..9e53537
--- /dev/null
+++ b/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot_2x.png b/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot_2x.png
new file mode 100644
index 0000000..c1e8824
--- /dev/null
+++ b/docs/html/images/distribute/stories/noodlecake-super-stickman-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rememberthemilk-icon.png b/docs/html/images/distribute/stories/rememberthemilk-icon.png
new file mode 100644
index 0000000..2e026c0
--- /dev/null
+++ b/docs/html/images/distribute/stories/rememberthemilk-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rememberthemilk-screenshot.png b/docs/html/images/distribute/stories/rememberthemilk-screenshot.png
new file mode 100644
index 0000000..62b431e
--- /dev/null
+++ b/docs/html/images/distribute/stories/rememberthemilk-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rememberthemilk-screenshot_2x.png b/docs/html/images/distribute/stories/rememberthemilk-screenshot_2x.png
new file mode 100644
index 0000000..25d0391
--- /dev/null
+++ b/docs/html/images/distribute/stories/rememberthemilk-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rvappstudios-zombie-icon.png b/docs/html/images/distribute/stories/rvappstudios-zombie-icon.png
new file mode 100644
index 0000000..70c9cb2
--- /dev/null
+++ b/docs/html/images/distribute/stories/rvappstudios-zombie-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot.jpg b/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot.jpg
new file mode 100644
index 0000000..32d93df
--- /dev/null
+++ b/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot_2x.jpg b/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot_2x.jpg
new file mode 100644
index 0000000..2981a2c
--- /dev/null
+++ b/docs/html/images/distribute/stories/rvappstudios-zombie-screenshot_2x.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/sayhichat-icon.png b/docs/html/images/distribute/stories/sayhichat-icon.png
new file mode 100644
index 0000000..2ed7fed
--- /dev/null
+++ b/docs/html/images/distribute/stories/sayhichat-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/sayhichat-screenshot.jpg b/docs/html/images/distribute/stories/sayhichat-screenshot.jpg
new file mode 100644
index 0000000..55a7997
--- /dev/null
+++ b/docs/html/images/distribute/stories/sayhichat-screenshot.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/sayhichat-screenshot_2x.jpg b/docs/html/images/distribute/stories/sayhichat-screenshot_2x.jpg
new file mode 100644
index 0000000..b93e983
--- /dev/null
+++ b/docs/html/images/distribute/stories/sayhichat-screenshot_2x.jpg
Binary files differ
diff --git a/docs/html/images/distribute/stories/tinyvillage-icon.png b/docs/html/images/distribute/stories/tinyvillage-icon.png
new file mode 100644
index 0000000..313e4d4
--- /dev/null
+++ b/docs/html/images/distribute/stories/tinyvillage-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/tinyvillage-screenshot.png b/docs/html/images/distribute/stories/tinyvillage-screenshot.png
new file mode 100644
index 0000000..e149a76
--- /dev/null
+++ b/docs/html/images/distribute/stories/tinyvillage-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/tinyvillage-screenshot_2x.png b/docs/html/images/distribute/stories/tinyvillage-screenshot_2x.png
new file mode 100644
index 0000000..51948b9
--- /dev/null
+++ b/docs/html/images/distribute/stories/tinyvillage-screenshot_2x.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/two-dots-icon.png b/docs/html/images/distribute/stories/two-dots-icon.png
new file mode 100644
index 0000000..b75fe51
--- /dev/null
+++ b/docs/html/images/distribute/stories/two-dots-icon.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/two-dots-screenshot.png b/docs/html/images/distribute/stories/two-dots-screenshot.png
new file mode 100644
index 0000000..13ce693
--- /dev/null
+++ b/docs/html/images/distribute/stories/two-dots-screenshot.png
Binary files differ
diff --git a/docs/html/images/distribute/stories/two-dots-screenshot_2x.png b/docs/html/images/distribute/stories/two-dots-screenshot_2x.png
new file mode 100644
index 0000000..2e34a68
--- /dev/null
+++ b/docs/html/images/distribute/stories/two-dots-screenshot_2x.png
Binary files differ
diff --git a/docs/html/jd_collections.js b/docs/html/jd_collections.js
index bedbd2e..ce8f5fb 100644
--- a/docs/html/jd_collections.js
+++ b/docs/html/jd_collections.js
@@ -1049,7 +1049,6 @@
"resources": [
"distribute/tools/localization-checklist.html",
"https://support.google.com/googleplay/android-developer/table/3541286",
- "distribute/stories/localization.html",
"https://play.google.com/intl/en_us/badges/",
"distribute/tools/promote/device-art.html",
"https://www.youtube.com/watch?v=SkHHPf3EdzE"
@@ -1171,12 +1170,6 @@
"https://en.wikipedia.org/wiki/XLIFF"
]
},
- "distribute/toolsreference/localizationchecklist/translatestrings": {
- "title": "",
- "resources": [
- "distribute/stories/localization.html",
- ]
- },
"distribute/toolsreference/localizationchecklist/preplaunch": {
"title": "",
"resources": [
@@ -1278,8 +1271,7 @@
"distribute/toolsreference/launchchecklist/localization": {
"title": "",
"resources": [
- "distribute/tools/localization-checklist.html",
- "guide/topics/resources/localization.html",
+ "distribute/tools/localization-checklist.html"
]
},
"distribute/toolsreference/launchchecklist/graphics": {
@@ -1385,11 +1377,18 @@
"https://support.google.com/googleplay/android-developer/answer/138000?hl=zh-Hans"
]
},
+ "distribute/stories/localization": {
+ "title": "",
+ "resources": [
+ "distribute/stories/games/rvappstudios-zombie.html",
+ "distribute/stories/games/g4a-indian-rummy.html",
+ "distribute/stories/apps/sayhi.html"
+ ]
+ },
"distribute/toolsreference/launchchecklist/localization/zhcn": {
"title": "",
"resources": [
"intl/zh-cn/distribute/tools/localization-checklist.html",
- "guide/topics/resources/localization.html"
]
},
"distribute/toolsreference/launchchecklist/graphics/zhcn": {
diff --git a/docs/html/ndk/downloads/_book.yaml b/docs/html/ndk/downloads/_book.yaml
new file mode 100644
index 0000000..a5e92ce
--- /dev/null
+++ b/docs/html/ndk/downloads/_book.yaml
@@ -0,0 +1,6 @@
+toc:
+- title: Downloads
+ path: /ndk/downloads/index.html
+
+- title: Revision History
+ path: /ndk/downloads/revision_history.html
diff --git a/docs/html/ndk/guides/_book.yaml b/docs/html/ndk/guides/_book.yaml
new file mode 100644
index 0000000..fdcfe46
--- /dev/null
+++ b/docs/html/ndk/guides/_book.yaml
@@ -0,0 +1,65 @@
+toc:
+- title: Getting Started
+ path: /ndk/guides/index.html
+ section:
+ - title: Setup
+ path: /ndk/guides/setup.html
+ - title: Concepts
+ path: /ndk/guides/concepts.html
+
+- title: Building
+ path: /ndk/guides/build.html
+ section:
+ - title: Android.mk
+ path: /ndk/guides/android_mk.html
+ - title: Application.mk
+ path: /ndk/guides/application_mk.html
+ - title: ndk-build
+ path: /ndk/guides/ndk-build.html
+ - title: Standalone Toolchain
+ path: /ndk/guides/standalone_toolchain.html
+
+- title: Architectures and CPUs
+ path: /ndk/guides/arch.html
+ section:
+ - title: ABI Management
+ path: /ndk/guides/abis.html
+ - title: NEON
+ path: /ndk/guides/cpu-arm-neon.html
+ - title: x86
+ path: /ndk/guides/x86.html
+ - title: x86-64
+ path: /ndk/guides/x86-64.html
+ - title: MIPS
+ path: /ndk/guides/mips.html
+ - title: The cpufeatures Library
+ path: /ndk/guides/cpu-features.html
+
+- title: Debugging
+ path: /ndk/guides/debug.html
+ section:
+ - title: ndk-gdb
+ path: /ndk/guides/ndk-gdb.html
+ - title: ndk-stack
+ path: /ndk/guides/ndk-stack.html
+
+- title: Libraries
+ path: /ndk/guides/libs.html
+ section:
+ - title: Prebuilt Libraries
+ path: /ndk/guides/prebuilts.html
+ - title: C++ Support
+ path: /ndk/guides/cpp-support.html
+ - title: Stable APIs
+ path: /ndk/guides/stable_apis.html
+
+- title: Audio
+ path: /ndk/guides/audio/index.html
+ section:
+ - title: Basics
+ path: /ndk/guides/audio/basics.html
+ - title: OpenSL ES for Android
+ path: /ndk/guides/audio/opensl-for-android.html
+
+- title: Graphics
+ path: /ndk/guides/graphics/index.html
diff --git a/docs/html/ndk/reference/_book.yaml b/docs/html/ndk/reference/_book.yaml
new file mode 100644
index 0000000..ab8b8f9
--- /dev/null
+++ b/docs/html/ndk/reference/_book.yaml
@@ -0,0 +1,60 @@
+toc:
+- title: Asset Manager
+ path: /ndk/reference/group___asset.html
+ section:
+ - title: asset_manager.h
+ path: /ndk/reference/asset__manager_8h.html
+ - title: asset_manager_jni.h
+ path: /ndk/reference/asset__manager__jni_8h.html
+
+- title: Bitmap
+ path: /ndk/reference/group___bitmap.html
+ section:
+ - title: bitmap.h
+ path: /ndk/reference/bitmap_8h.html
+
+- title: Configuration
+ path: /ndk/reference/group___configuration.html
+ section:
+ - title: configuration.h
+ path: /ndk/reference/configuration_8h.html
+
+- title: Input
+ path: /ndk/reference/group___input.html
+ section:
+ - title: input.h
+ path: /ndk/reference/input_8h.html
+ - title: keycodes.h
+ path: /ndk/reference/keycodes_8h.html
+
+- title: Looper
+ path: /ndk/reference/group___looper.html
+ section:
+ - title: looper.h
+ path: /ndk/reference/looper_8h.html
+
+- title: Native Activity and Window
+ path: /ndk/reference/group___native_activity.html
+ section:
+ - title: native_activity.h
+ path: /ndk/reference/native__activity_8h.html
+ - title: native_window.h
+ path: /ndk/reference/native__window_8h.html
+ - title: native_window.h
+ path: /ndk/reference/native__window__jni_8h.html
+ - title: rect.h
+ path: /ndk/reference/rect_8h.html
+
+- title: Sensor
+ path: /ndk/reference/group___sensor.html
+ section:
+ - title: sensor.h
+ path: /ndk/reference/sensor_8h.html
+
+- title: Storage Manager
+ path: /ndk/reference/group___storage.html
+ section:
+ - title: storage_manager.h
+ path: /ndk/reference/storage__manager_8h.html
+ - title: obb.h
+ path: /ndk/reference/obb_8h.html
diff --git a/docs/html/ndk/samples/_book.yaml b/docs/html/ndk/samples/_book.yaml
new file mode 100644
index 0000000..3665f5a
--- /dev/null
+++ b/docs/html/ndk/samples/_book.yaml
@@ -0,0 +1,13 @@
+toc:
+- title: Overview
+ path: /ndk/samples/index.html
+
+- title: Walkthroughs
+ path: /ndk/samples/walkthroughs.html
+ section:
+ - title: hello-jni
+ path: /ndk/samples/sample_hellojni.html
+ - title: native-activity
+ path: /ndk/samples/sample_na.html
+ - title: Teapot
+ path: /ndk/samples/sample_teapot.html
diff --git a/docs/html/preview/_book.yaml b/docs/html/preview/_book.yaml
new file mode 100644
index 0000000..85e3bd3
--- /dev/null
+++ b/docs/html/preview/_book.yaml
@@ -0,0 +1,94 @@
+toc:
+- title: Program Overview
+ path: /preview/overview.html
+ custom_link_attributes:
+ - es-lang: "Información general del programa"
+ - ja-lang: "プログラム概要"
+ - ko-lang: "프로그램 개요"
+ - pt-br-lang: "Visão geral do programa"
+ - ru-lang: "Обзор программы"
+ - zh-cn-lang: "计划概览"
+ - zh-tw-lang: "程式總覽"
+
+- title: Support and Release Notes
+ path: /preview/support.html
+
+- title: Set Up to Develop
+ path: /preview/setup-sdk.html
+ custom_link_attributes:
+ - es-lang: "Configurar el SDK de la versión preliminar"
+ - ja-lang: "Preview SDK のセットアップ"
+ - ko-lang: "미리 보기 SDK 설정하기"
+ - pt-br-lang: "Configuração do Preview SDK"
+ - ru-lang: "Настройка пакета SDK Preview"
+ - zh-cn-lang: "设置预览版 SDK"
+ - zh-tw-lang: "設定預覽版 SDK"
+
+- title: Test on a Device
+ path: /preview/download.html
+
+- title: Behavior Changes
+ path: /preview/behavior-changes.html
+ custom_link_attributes:
+ - es-lang: "Cambios en los comportamientos"
+ - ja-lang: "動作の変更点"
+ - ko-lang: "동작 변경"
+ - pt-br-lang: "Mudanças de comportamento"
+ - ru-lang: "Изменения в работе"
+ - zh-cn-lang: "行为变更"
+ - zh-tw-lang: "行為變更"
+ section:
+ - title: Background Optimizations
+ path: /preview/features/background-optimization.html
+ - title: Language and Locale
+ path: /preview/features/multilingual-support.html
+
+- title: Android N for Developers
+ path: /preview/api-overview.html
+ custom_link_attributes:
+ - es-lang: "Información general de la API"
+ - ja-lang: "API の概要"
+ - ko-lang: "API 개요"
+ - pt-br-lang: "Visão geral da API"
+ - ru-lang: "Обзор API-интерфейсов"
+ - zh-cn-lang: "API 概览"
+ - zh-tw-lang: "API 總覽"
+ section:
+ - title: Multi-Window Support
+ path: /preview/features/multi-window.html
+ - title: Notifications
+ path: /preview/features/notification-updates.html
+ - title: Data Saver
+ path: /preview/features/data-saver.html
+ - title: TV Recording
+ path: /preview/features/tv-recording-api.html
+ - title: Network Security Configuration
+ path: /preview/features/security-config.html
+ - title: ICU4J Support
+ path: /preview/features/icu4j-framework.html
+ - title: Java 8 Language Features
+ path: /preview/j8-jack.html
+ - title: Android for Work Updates
+ path: /preview/features/afw.html
+
+- title: Samples
+ path: /preview/samples.html
+ custom_link_attributes:
+ - es-lang: "Ejemplos"
+ - ja-lang: "サンプル"
+ - ko-lang: "샘플"
+ - pt-br-lang: "Exemplos"
+ - ru-lang: "Примеры"
+ - zh-cn-lang: "示例"
+ - zh-tw-lang: "範例"
+
+- title: License Agreement
+ path: /preview/license.html
+ custom_link_attributes:
+ - es-lang: "Contrato de licencia"
+ - ja-lang: "使用許諾契約"
+ - ko-lang: "라이선스 계약"
+ - pt-br-lang: "Contrato de licença"
+ - ru-lang: "Лицензионное соглашение"
+ - zh-cn-lang: "许可协议"
+ - zh-tw-lang: "授權協議"
diff --git a/docs/html/preview/api-overview.jd b/docs/html/preview/api-overview.jd
index eb52c13..478f068 100644
--- a/docs/html/preview/api-overview.jd
+++ b/docs/html/preview/api-overview.jd
@@ -476,8 +476,8 @@
<h2 id="android_for_work">Android for Work</h2>
<p>Android for Work adds many new features and APIs for devices running Android N.
-Some highlights are below — for a complete list of Android for Work updates
-related to Android N, please see Android for Work Changes.</p>
+Some highlights are below — for a complete list of changes, see
+<a href="{@docRoot}preview/features/afw.html">Android for Work Updates</a>.</p>
<h3 id="work_profile_security_challenge">Work profile security challenge </h3>
diff --git a/docs/html/preview/behavior-changes.jd b/docs/html/preview/behavior-changes.jd
index bc7dbc7..cd4d27e 100644
--- a/docs/html/preview/behavior-changes.jd
+++ b/docs/html/preview/behavior-changes.jd
@@ -166,7 +166,7 @@
<p>If your app uses any of these intents, you should remove dependencies
on them as soon as possible so that you can target Android N devices properly.
The Android framework provides several solutions to mitigate the need for
- these implicit broadcasts or background services. For example, the {@link
+ these implicit broadcasts. For example, the {@link
android.app.job.JobScheduler} API provides a robust mechanism to schedule
network operations when specified conditions, such as connection to an
unmetered network, are met. You can even use {@link
@@ -174,7 +174,7 @@
</p>
<p>
- For more information about this behavior change and how to adapt your app,
+ For more information about background optimizations in N and how to adapt your app,
see <a href=
"{@docRoot}preview/features/background-optimization.html">Background
Optimizations</a>.
diff --git a/docs/html/preview/download-ota.jd b/docs/html/preview/download-ota.jd
index 9c20420..68f3c74 100644
--- a/docs/html/preview/download-ota.jd
+++ b/docs/html/preview/download-ota.jd
@@ -230,18 +230,18 @@
<tr id="volantis">
<td>Nexus 9 <br>"volantis"</td>
<td><a href="#top" onclick="onDownload(this)"
- >volantis-ota-2659757-257cba86.zip</a><br>
- MD5: d90a271b6c6edc49702df292abc66fed<br>
- SHA-1: 257cba864cec7f486e0deba9e23e00b840f9a821
+ >volantis-ota-NPC56X-2785955f.zip</a><br>
+ MD5: 36d813350fd660ab751a434782f5523f<br>
+ SHA-1: 2785955fd77310106d2fa9f02f93b595d77b8e72
</td>
</tr>
<tr id="volantisg">
<td>Nexus 9G <br>"volantisg"</td>
<td><a href="#top" onclick="onDownload(this)"
- >volantisg-ota-2659757-edd866f6.zip</a><br>
- MD5: d2bc6f760a1725a36366bb8c3230dfc7<br>
- SHA-1: edd866f643d87d56654326ba5dc4d802e0d5c2e6
+ >volantisg-ota-NPC56X-d93e161c.zip</a><br>
+ MD5: 1fb7d83cd065a962dbed49e72db97dc4<br>
+ SHA-1: d93e161c15503dc641b654f6ef4c1611222bc9fd
</td>
</tr>
diff --git a/docs/html/preview/features/picture-in-picture.jd b/docs/html/preview/features/picture-in-picture.jd
index e0fb0bb..106ad8b 100644
--- a/docs/html/preview/features/picture-in-picture.jd
+++ b/docs/html/preview/features/picture-in-picture.jd
@@ -17,6 +17,8 @@
</li>
<li><a href="#continuing_playback">Continuing Video Playback While in
Picture-in-picture</a></li>
+ <li><a href="#single_playback">Using a Single Playback Activity for
+Picture-in-picture</a></li>
<li><a href="#best">Best Practices</a></li>
</ol>
@@ -170,6 +172,31 @@
<p>When your activity switches out of PIP mode back to full-screen mode, the
system resumes your activity and calls your <code>onResume()</code> method.</p>
+<h2 id="single_playback">Using a Single Playback Activity for
+Picture-in-picture</h2>
+
+<p>In your app, a user might select a new video when browsing for content on
+the main screen, while a video playback activity is in PIP mode. Play the new
+video in the existing playback activity in full screen mode, instead of
+launching a new activity that might confuse the user.</p>
+
+<p>To ensure a single activity is used for video playback requests and
+switched into or out of PIP mode as needed, set the activity's
+<code>android:launchMode</code> to <code>singleTask</code> in your manifest:
+</p>
+
+<pre>
+<activity android:name="VideoActivity"
+ ...
+ android:supportsPictureInPicture="true"
+ android:launchMode="singleTask"
+ ...
+</pre>
+
+<p>In your activity, override {@link android.app.Activity#onNewIntent
+Activity.onNewIntent()} and handle the new video, stopping any existing video
+playback if needed.</p>
+
<h2 id="best">Best Practices</h2>
<p>PIP is intended for activities that play full-screen video. When switching
diff --git a/docs/html/samples/_book.yaml b/docs/html/samples/_book.yaml
new file mode 100644
index 0000000..3fe0d19
--- /dev/null
+++ b/docs/html/samples/_book.yaml
@@ -0,0 +1,6 @@
+toc:
+- title: About the Samples
+ path: /samples/index.html
+
+- title: What's New
+ path: /samples/new/index.html
diff --git a/docs/html/tools/_book.yaml b/docs/html/tools/_book.yaml
new file mode 100644
index 0000000..ff96666
--- /dev/null
+++ b/docs/html/tools/_book.yaml
@@ -0,0 +1,280 @@
+toc:
+- title: Download
+ path: /sdk/index.html
+ section:
+ - title: Installing the SDK
+ path: /sdk/installing/index.html
+ - title: Adding SDK Packages
+ path: /sdk/installing/adding-packages.html
+
+- title: Workflow
+ path: /tools/workflow/index.html
+ section:
+ - title: Projects
+ path: /tools/projects/index.html
+ - title: Build and Run
+ path: /tools/building/index.html
+ - title: Virtual Devices
+ path: /tools/devices/index.html
+ - title: Hardware Devices
+ path: /tools/device.html
+ section:
+ - title: USB Drivers
+ path: /tools/extras/oem-usb.html
+ - title: Testing
+ path: /tools/testing/index.html
+ - title: Debugging
+ path: /tools/debugging/index.html
+ - title: Publishing
+ path: /tools/publishing/publishing_overview.html
+ custom_link_attributes:
+ - zh-cn-lang: "发布概述"
+ section:
+ - title: Preparing for Release
+ path: /tools/publishing/preparing.html
+ custom_link_attributes:
+ - zh-cn-lang: "准备发布"
+ - title: Versioning Your Apps
+ path: /tools/publishing/versioning.html
+ - title: Signing Your Apps
+ path: /tools/publishing/app-signing.html
+
+- title: Android Studio
+ path: /tools/studio/index.html
+ section:
+ - title: Features
+ path: /tools/studio/studio-features.html
+ - title: Configuration
+ path: /tools/studio/studio-config.html
+ section:
+ - title: SDK Manager
+ path: /tools/help/sdk-manager.html
+ - title: Project Tools
+ path: /sdk/installing/create-project.html
+ section:
+ - title: Project Structure Management
+ path: /tools/help/project-mgmt.html
+ - title: Using Code Templates
+ path: /tools/projects/templates.html
+ - title: Building and Running
+ path: /tools/building/building-studio.html
+ - title: Code Tools
+ path: /tools/studio/code-tools.html
+ section:
+ - title: Improving Your Code with lint
+ path: /tools/debugging/improving-w-lint.html
+ - title: Improving Code Inspection with Annotations
+ path: /tools/debugging/annotations.html
+ - title: Deep Link and App Indexing API Support
+ path: /tools/help/app-link-indexing.html
+ - title: UI Tools
+ path: /tools/studio/ui-tools.html
+ section:
+ - title: Layout Editor
+ path: /sdk/installing/studio-layout.html
+ - title: Theme Editor
+ path: /tools/help/theme-editor.html
+ - title: Translations Editor
+ path: /tools/help/translations-editor.html
+ - title: Vector Asset Studio
+ path: /tools/help/vector-asset-studio.html
+ - title: Image Asset Studio
+ path: /tools/help/image-asset-studio.html
+ - title: AVD Manager
+ path: /tools/devices/managing-avds.html
+ - title: Debugging Tools
+ path: /tools/debugging/debugging-studio.html
+ section:
+ - title: DDMS
+ path: /tools/debugging/ddms.html
+ - title: Android Monitor
+ path: /tools/help/android-monitor.html
+ section:
+ - title: logcat Monitor
+ path: /tools/help/am-logcat.html
+ - title: Memory Monitor
+ path: /tools/help/am-memory.html
+ - title: CPU Monitor
+ path: /tools/help/am-cpu.html
+ - title: GPU Monitor
+ path: /tools/help/am-gpu.html
+ - title: Network Monitor
+ path: /tools/help/am-network.html
+ - title: Tips and Tricks
+ path: /sdk/installing/studio-tips.html
+ - title: Migrating from Eclipse ADT
+ path: /sdk/installing/migrate.html
+ section:
+ - title: Transition Guide
+ path: /tools/studio/eclipse-transition-guide.html
+
+- title: Tools Help
+ path: /tools/help/index.html
+ section:
+ - title: adb
+ path: /tools/help/adb.html
+ - title: android
+ path: /tools/help/android.html
+ section:
+ - title: Managing AVDs
+ path: /tools/devices/managing-avds-cmdline.html
+ - title: Managing Projects
+ path: /tools/projects/projects-cmdline.html
+ - title: AVD Manager
+ path: /tools/help/avd-manager.html
+ - title: bmgr
+ path: /tools/help/bmgr.html
+ - title: Desktop Head Unit
+ path: /tools/help/desktop-head-unit.html
+ - title: Device Monitor
+ path: /tools/help/monitor.html
+ - title: dmtracedump
+ path: /tools/help/dmtracedump.html
+ - title: Draw 9-Patch
+ path: /tools/help/draw9patch.html
+ - title: etc1tool
+ path: /tools/help/etc1tool.html
+ - title: Hierarchy Viewer
+ path: /tools/help/hierarchy-viewer.html
+ section:
+ - title: Optimizing your UI
+ path: /tools/debugging/debugging-ui.html
+ - title: hprof-conv
+ path: /tools/help/hprof-conv.html
+ - title: jobb
+ path: /tools/help/jobb.html
+ - title: lint
+ path: /tools/help/lint.html
+ - title: logcat
+ path: /tools/help/logcat.html
+ section:
+ - title: Reading and Writing Logs
+ path: /tools/debugging/debugging-log.html
+ - title: mksdcard
+ path: /tools/help/mksdcard.html
+ - title: ProGuard
+ path: /tools/help/proguard.html
+ - title: Tracer for OpenGL ES
+ path: /tools/help/gltracer.html
+ - title: Virtual Device Emulator
+ path: /tools/devices/emulator.html
+ section:
+ - title: Command Reference
+ path: /tools/help/emulator.html
+ - title: zipalign
+ path: /tools/help/zipalign.html
+
+- title: Build System
+ path: /sdk/installing/studio-build.html
+ section:
+ - title: Running Gradle Builds
+ path: /tools/building/building-cmdline.html
+ - title: Configuring Gradle Builds
+ path: /tools/building/configuring-gradle.html
+ - title: Android Plugin for Gradle
+ path: /tools/building/plugin-for-gradle.html
+ - title: Manifest Merging
+ path: /tools/building/manifest-merge.html
+ - title: Apps Over 65K Methods
+ path: /tools/building/multidex.html
+
+- title: Performance Tools
+ path: /tools/performance/index.html
+ section:
+ - title: Overdraw Debugger
+ path: /tools/performance/debug-gpu-overdraw/index.html
+ - title: Rendering Profiler
+ path: /tools/performance/profile-gpu-rendering/index.html
+ - title: Hierarchy Viewer
+ path: /tools/performance/hierarchy-viewer/index.html
+ section:
+ - title: Setup
+ path: /tools/performance/hierarchy-viewer/setup.html
+ - title: Profiling
+ path: /tools/performance/hierarchy-viewer/profiling.html
+ - title: Memory Profilers
+ path: /tools/performance/comparison.html
+ section:
+ - title: Memory Monitor
+ path: /tools/performance/memory-monitor/index.html
+ - title: Heap Viewer
+ path: /tools/performance/heap-viewer/index.html
+ - title: Allocation Tracker
+ path: /tools/performance/allocation-tracker/index.html
+ - title: Investigating Your RAM Usage
+ path: /tools/debugging/debugging-memory.html
+ - title: Traceview
+ path: /tools/debugging/debugging-tracing.html
+ section:
+ - title: Walkthrough
+ path: /tools/performance/traceview/index.html
+ - title: Command Reference
+ path: /tools/help/traceview.html
+ - title: Systrace
+ path: /tools/debugging/systrace.html
+ section:
+ - title: Walkthrough
+ path: /tools/performance/systrace/index.html
+ - title: Command Reference
+ path: /tools/help/systrace.html
+ - title: Battery Profilers
+ path: /tools/performance/batterystats-battery-historian/index.html
+ section:
+ - title: Historian Charts
+ path: /tools/performance/batterystats-battery-historian/charts.html
+
+- title: Testing Tools
+ path: /tools/testing/testing-tools.html
+ section:
+ - title: Testing Concepts
+ path: /tools/testing/testing_android.html
+ - title: Testing Support Library
+ path: /tools/testing-support-library/index.html
+ section:
+ - title: API Reference
+ path: /reference/android/support/test/package-summary.html
+ - title: Testing with Android Studio
+ path: /training/testing/start/index.html
+ - title: Testing from the Command-Line
+ path: /tools/testing/testing_otheride.html
+ - title: monkey
+ path: /tools/help/monkey.html
+ - title: monkeyrunner
+ path: /tools/help/monkeyrunner_concepts.html
+ section:
+ - title: MonkeyDevice
+ path: /tools/help/MonkeyDevice.html
+ - title: MonkeyImage
+ path: /tools/help/MonkeyImage.html
+ - title: MonkeyRunner
+ path: /tools/help/MonkeyRunner.html
+
+- title: Support Library
+ path: /tools/support-library/index.html
+ section:
+ - title: Features
+ path: /tools/support-library/features.html
+ - title: Setup
+ path: /tools/support-library/setup.html
+
+- title: Data Binding Library
+ path: /tools/data-binding/guide.html
+
+- title: Revisions
+ path: /tools/revisions/index.html
+ section:
+ - title: Android Studio
+ path: /tools/revisions/studio.html
+ - title: SDK Tools
+ path: /tools/sdk/tools-notes.html
+ - title: SDK Build Tools
+ path: /tools/revisions/build-tools.html
+ - title: Android Plugin for Gradle
+ path: /tools/revisions/gradle-plugin.html
+ - title: SDK Platforms
+ path: /tools/revisions/platforms.html
+ - title: ADT Plugin
+ path: /tools/sdk/eclipse-adt.html
+
+- title: NDK
+ path: /tools/sdk/ndk/index.html
diff --git a/docs/html/tools/debugging/debugging-log.jd b/docs/html/tools/debugging/debugging-log.jd
index 42b307c5..a49e8c5 100644
--- a/docs/html/tools/debugging/debugging-log.jd
+++ b/docs/html/tools/debugging/debugging-log.jd
@@ -164,7 +164,7 @@
</pre>
<p>The final element in the above expression, <code>*:S</code>, sets the priority level for all
- tags to "silent", thus ensuring only log messages with "View" and "MyApp" are displayed. Using
+ tags to "silent", thus ensuring only log messages with "ActivityManager" and "MyApp" are displayed. Using
<code>*:S</code> is an excellent way to ensure that log output is restricted to the filters that
you have explicitly specified — it lets your filters serve as a "whitelist" for log
output.</p>
diff --git a/docs/html/tools/revisions/build-tools.jd b/docs/html/tools/revisions/build-tools.jd
index 12238c0..5d9ba05 100755
--- a/docs/html/tools/revisions/build-tools.jd
+++ b/docs/html/tools/revisions/build-tools.jd
@@ -52,6 +52,23 @@
<div class="toggle-content opened">
<p><a href="#" onclick="return toggleContent(this)">
<img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
+ alt=""/>Build Tools, Revision 23.0.3</a> <em>(March 2016)</em>
+ </p>
+ <div class="toggle-content-toggleme">
+ <ul>
+ <li>Fix issues in the <a href="{@docRoot}guide/topics/renderscript/compute.html">RenderScript</a>
+ Support Library on arm64 devices.</li>
+ <li>Fix issues in the <a href="{@docRoot}guide/topics/renderscript/compute.html">RenderScript</a>
+ Support Library on certain Jelly Bean devices.</li>
+ <li>Support <code>renderscriptTargetAPI 21+</code> when using Android
+ Plugin for Gradle, Revision 2.1.0 and above .</li>
+ </ul>
+ </div>
+</div>
+
+<div class="toggle-content opened">
+ <p><a href="#" onclick="return toggleContent(this)">
+ <img src="{@docRoot}assets/images/styles/disclosure_up.png" class="toggle-content-img"
alt=""/>Build Tools, Revision 23.0.2</a> <em>(November 2015)</em>
</p>
<div class="toggle-content-toggleme">
diff --git a/docs/html/tools/studio/index.jd b/docs/html/tools/studio/index.jd
index c01291c..6b9f073 100644
--- a/docs/html/tools/studio/index.jd
+++ b/docs/html/tools/studio/index.jd
@@ -12,47 +12,44 @@
<li><a href="#project-structure">Project and File Structure</a></li>
<li><a href="#build-system">Android Build System</a></li>
<li><a href="#debug-perf">Debug and Performance</a></li>
-
-
</ol>
- <h2>See also</h2>
- <ol>
- <li><a class="external-link" href="http://confluence.jetbrains.com/display/IntelliJIDEA/FAQ+on+Migrating+to+IntelliJ+IDEA">IntelliJ FAQ on migrating to IntelliJ IDEA</a></li>
- </ol>
+
+<a class="button" href="{@docRoot}sdk/index.html" style="margin:15px">
+ Get Android Studio
+</a>
</div>
</div>
-<p>Android Studio is the official IDE for Android application development,
+<p>Android Studio is the official IDE for Android app development,
based on <a class="external-link" href="https://www.jetbrains.com/idea/" target="_blank">IntelliJ IDEA</a>.
On top of the capabilities you expect from IntelliJ,
Android Studio offers:</p>
<ul>
<li>Flexible Gradle-based build system</li>
- <li>Build variants and multiple <code>apk</code> file generation</li>
+ <li>Build variants and multiple APK file generation</li>
<li>Code templates to help you build common app features</li>
<li>Rich layout editor with support for drag and drop theme editing</li>
- <li>{@code lint} tools to catch performance, usability, version compatibility, and other problems</li>
- <li>ProGuard and app-signing capabilities</li>
+ <li>Lint tools to catch performance, usability, version compatibility, and other problems</li>
+ <li>Code shrinking with ProGuard</li>
<li>Built-in support for
<a href="http://developers.google.com/cloud/devtools/android_studio_templates/">Google Cloud Platform</a>,
making it easy to integrate Google Cloud Messaging and App Engine</li>
<li>And much more</li>
</ul>
-<p>If you're new to Android Studio or the IntelliJ IDEA interface, this
-page provides an introduction to some key Android
-Studio features.</p>
-
-<p>For specific Android Studio how-to documentation, see the pages in the <a href=
+<p>This page provides an introduction to some key Android Studio features. For
+specific Android Studio how-to documentation, see the pages in the <a href=
"{@docRoot}tools/workflow/index.html">Workflow</a> section, such as <a href=
-"{@docRoot}sdk/installing/create-project.html">Managing Projects from Android Studio</a> and
-<a href="{@docRoot}tools/building/building-studio.html">Building and Running from Android
-Studio</a>. For a summary of the latest changes to Android Studio, see the
-<a href="{@docRoot}tools/revisions/studio.html">Android Studio Release Notes</a>.</p>
+"{@docRoot}sdk/installing/create-project.html">Managing Projects from Android
+Studio</a> and <a href="{@docRoot}tools/building/building-studio.html">Building
+and Running from Android Studio</a>. For a summary of the latest changes to
+Android Studio, see the <a href="{@docRoot}tools/revisions/studio.html">Android
+Studio Release Notes</a>.</p>
+
@@ -103,8 +100,8 @@
<h3 id="other-views">Other Android Studio views</h3>
<p>When you use the <em>Project</em> view in Android Studio, you
should notice that the project structure appears different than you may be used to in Eclipse. Each
-instance of Android Studio contains a project with one or more application modules. Each
-application module folder contains the complete source sets for that module, including
+instance of Android Studio contains a project with one or more app modules. Each
+app module folder contains the complete source sets for that module, including
{@code src/main/} and {@code src/androidTest/} directories, resources, build
file and the Android manifest. For the most part, you will need to modify the files under each
module's {@code src/main/} directory for source code updates, the gradle.build file for build
@@ -202,7 +199,7 @@
runtime window to launch the Android runtime window. Click the <strong>Memory</strong> or
<strong>CPU</strong> tab. </p>
-<img src="{@docRoot}images/tools/studio-memory-monitor.png"
+<img src="{@docRoot}images/tools/studio-memory-monitor.png"
srcset="{@docRoot}images/tools/studio-memory-monitor2x.png 2x" width"635" height="171" alt="" />
<p class="img-caption"><strong>Figure 4.</strong> Monitor memory and CPU usage.</p>
diff --git a/docs/html/training/_book.yaml b/docs/html/training/_book.yaml
new file mode 100644
index 0000000..7b04892
--- /dev/null
+++ b/docs/html/training/_book.yaml
@@ -0,0 +1,1210 @@
+toc:
+- title: Getting Started
+ path: /training/index.html
+ section:
+ - title: Building Your First App
+ path: /training/basics/firstapp/index.html
+ custom_link_attributes:
+ - description: "After you've installed the Android SDK, start with this class to learn the basics about Android app development."
+ section:
+ - title: Creating an Android Project
+ path: /training/basics/firstapp/creating-project.html
+ - title: Running Your Application
+ path: /training/basics/firstapp/running-app.html
+ - title: Building a Simple User Interface
+ path: /training/basics/firstapp/building-ui.html
+ - title: Starting Another Activity
+ path: /training/basics/firstapp/starting-activity.html
+ - title: Supporting Different Devices
+ path: /training/basics/supporting-devices/index.html
+ custom_link_attributes:
+ - description: "How to build your app with alternative resources that provide an optimized user experience on multiple device form factors using a single APK."
+ section:
+ - title: Supporting Different Languages
+ path: /training/basics/supporting-devices/languages.html
+ - title: Supporting Different Screens
+ path: /training/basics/supporting-devices/screens.html
+ - title: Supporting Different Platform Versions
+ path: /training/basics/supporting-devices/platforms.html
+ - title: Managing the Activity Lifecycle
+ path: /training/basics/activity-lifecycle/index.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティのライフサイクル 管理"
+ - ko-lang: "액티비티 수명 주기 관리하기"
+ - pt-br-lang: "Como gerenciar o ciclo de vida da atividade"
+ - ru-lang: "Управление жизненным циклом операций"
+ - zh-cn-lang: "管理活动生命周期"
+ - zh-tw-lang: "管理應用行為顯示生命週期"
+ - description: "How Android activities live and die and how to create a seamless user experience by implementing lifecycle callback methods."
+ section:
+ - title: Starting an Activity
+ path: /training/basics/activity-lifecycle/starting.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティを開始する"
+ - ko-lang: "액티비티 시작하기"
+ - pt-br-lang: "Iniciando uma atividade"
+ - ru-lang: "Запуск операции"
+ - zh-cn-lang: "开始活动"
+ - zh-tw-lang: "啟動應用行為顯示"
+ - title: Pausing and Resuming an Activity
+ path: /training/basics/activity-lifecycle/pausing.html
+ - title: Stopping and Restarting an Activity
+ path: /training/basics/activity-lifecycle/stopping.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティの一時停止と再開"
+ - ko-lang: "액티비티 일시정지 및 재개하기"
+ - pt-br-lang: "Pausando e reiniciando uma atividade"
+ - ru-lang: "Приостановка и возобновление операции"
+ - zh-cn-lang: "暂停和继续活动"
+ - zh-tw-lang: "暫停並繼續應用行為顯示"
+ - title: Recreating an Activity
+ path: /training/basics/activity-lifecycle/recreating.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティを再作成する"
+ - ko-lang: "액티비티 재생성하기"
+ - pt-br-lang: "Recriando uma atividade"
+ - ru-lang: "Воссоздание операции"
+ - zh-cn-lang: "重新创建活动"
+ - zh-tw-lang: "重新建立應用行為顯示"
+ - title: Building a Dynamic UI with Fragments
+ path: /training/basics/fragments/index.html
+ custom_link_attributes:
+ - description: "How to build a user interface for your app that is flexible enough to present multiple UI components on large screens and a more constrained set of UI components on smaller screens—essential for building a single APK for both phones and tablets."
+ section:
+ - title: Creating a Fragment
+ path: /training/basics/fragments/creating.html
+ - title: Building a Flexible UI
+ path: /training/basics/fragments/fragment-ui.html
+ custom_link_attributes:
+ - zh-cn-lang: "构建灵活的界面"
+ - title: Communicating with Other Fragments
+ path: /training/basics/fragments/communicating.html
+ - title: Saving Data
+ path: /training/basics/data-storage/index.html
+ custom_link_attributes:
+ - ja-lang: "データの保存"
+ - ko-lang: "데이터 저장하기"
+ - pt-br-lang: "Salvando dados"
+ - ru-lang: "Сохранение данных"
+ - zh-cn-lang: "保存数据"
+ - zh-tw-lang: "儲存資料"
+ - description: "How to save data on the device, whether it's temporary files, downloaded app assets, user media, structured data, or something else."
+ section:
+ - title: Saving Key-Value Sets
+ path: /training/basics/data-storage/shared-preferences.html
+ custom_link_attributes:
+ - ja-lang: "キー値セットを保存する"
+ - ko-lang: "키-값 세트 저장하기"
+ - pt-br-lang: "Salvando conjuntos de valor-chave"
+ - ru-lang: "Сохранение наборов \"ключ-значение\""
+ - zh-cn-lang: "保存键值集"
+ - zh-tw-lang: "儲存索引鍵值組"
+ - title: Saving Files
+ path: /training/basics/data-storage/files.html
+ custom_link_attributes:
+ - ja-lang: "ファイルを保存する"
+ - ko-lang: "파일 저장하기"
+ - pt-br-lang: "Salvando arquivos"
+ - ru-lang: "Сохранение файлов"
+ - zh-cn-lang: "保存文件"
+ - zh-tw-lang: "儲存檔案"
+ - title: Saving Data in SQL Databases
+ path: /training/basics/data-storage/databases.html
+ custom_link_attributes:
+ - ja-lang: "SQL データベースにデータを保存する"
+ - ko-lang: "SQL 데이터베이스에 데이터 저장하기"
+ - pt-br-lang: "Salvando dados em bancos de dados do SQL"
+ - ru-lang: "Сохранение данных в базах данных SQL"
+ - zh-cn-lang: "在 SQL 数据库中保存数据"
+ - zh-tw-lang: "在 SQL 資料庫中儲存資料"
+ - title: Interacting with Other Apps
+ path: /training/basics/intents/index.html
+ custom_link_attributes:
+ - ja-lang: "他のアプリとの相互操作"
+ - ko-lang: "액티비티 수명 주기 관리하기"
+ - pt-br-lang: "Interagindo com outros aplicativos"
+ - ru-lang: "Взаимодействие с другими приложениями"
+ - zh-cn-lang: "与其他应用交互"
+ - zh-tw-lang: "與其他應用程式互動"
+ - description: "How to build a user experience that leverages other apps available on the device to perform advanced user tasks, such as capture a photo or view an address on a map."
+ section:
+ - title: Sending the User to Another App
+ path: /training/basics/intents/sending.html
+ custom_link_attributes:
+ - ja-lang: "別のアプリにユーザーを送る"
+ - ko-lang: "다른 앱으로 사용자 보내기"
+ - pt-br-lang: "Enviando o usuário para outro aplicativo"
+ - ru-lang: "Направление пользователя в другое приложение"
+ - zh-cn-lang: "向另一个应用发送用户"
+ - zh-tw-lang: "將使用者傳送至其他應用程式"
+ - title: Getting a Result from the Activity
+ path: /training/basics/intents/result.html
+ custom_link_attributes:
+ - ja-lang: "アクティビティから結果を取得する"
+ - ko-lang: "액티비티로부터 결과 가져오기"
+ - pt-br-lang: "Obtendo resultados de uma atividade"
+ - ru-lang: "Получение результата операции"
+ - zh-cn-lang: "获取活动的结果"
+ - zh-tw-lang: "從應用行為顯示取得結果"
+ - title: Allowing Other Apps to Start Your Activity
+ path: /training/basics/intents/filters.html
+ custom_link_attributes:
+ - ja-lang: "他のアプリからのアクティビティの開始を許可する"
+ - ko-lang: "다른 앱이 자신의 액티비티를 시작하도록 허용하기"
+ - pt-br-lang: "Permitindo que outros aplicativos iniciem sua atividade"
+ - ru-lang: "Разрешение другим приложениям на запуск вашей операции"
+ - zh-cn-lang: "允许其他应用开始您的活动"
+ - zh-tw-lang: "允許其他應用程式啟動您的應用行為顯示"
+ - title: Working with System Permissions
+ path: /training/permissions/index.html
+ custom_link_attributes:
+ - description: "How to declare that your app needs access to features and resources outside of its 'sandbox', and how to request those privileges at runtime."
+ section:
+ - title: Declaring Permissions
+ path: /training/permissions/declaring.html
+ - title: Requesting Permissions at Run Time
+ path: /training/permissions/requesting.html
+ - title: Best Practices for Runtime Permissions
+ path: /training/permissions/best-practices.html
+
+- title: Building Apps with Content Sharing
+ path: /training/building-content-sharing.html
+ section:
+ - title: Sharing Simple Data
+ path: /training/sharing/index.html
+ custom_link_attributes:
+ - description: "How to take your app interaction to the next level by sharing information with other apps, receive information back, and provide a simple and scalable way to perform Share actions with user content."
+ section:
+ - title: Sending Simple Data to Other Apps
+ path: /training/sharing/send.html
+ - title: Receiving Simple Data from Other Apps
+ path: /training/sharing/receive.html
+ - title: Adding an Easy Share Action
+ path: /training/sharing/shareaction.html
+ - title: Sharing Files
+ path: /training/secure-file-sharing/index.html
+ custom_link_attributes:
+ - description: "How to provide secure access to a file associated with your app using a content URI and temporary access permissions."
+ section:
+ - title: Setting Up File Sharing
+ path: /training/secure-file-sharing/setup-sharing.html
+ - title: Sharing a File
+ path: /training/secure-file-sharing/share-file.html
+ - title: Requesting a Shared File
+ path: /training/secure-file-sharing/request-file.html
+ - title: Retrieving File Information
+ path: /training/secure-file-sharing/retrieve-info.html
+ - title: Sharing Files with NFC
+ path: /training/beam-files/index.html
+ custom_link_attributes:
+ - description: "How to transfer files between devices using the NFC Android Beam feature."
+ section:
+ - title: Sending Files to Another Device
+ path: /training/beam-files/send-files.html
+ - title: Receiving Files from Another Device
+ path: /training/beam-files/receive-files.html
+
+- title: Building Apps with Multimedia
+ path: /training/building-multimedia.html
+ section:
+ - title: Managing Audio Playback
+ path: /training/managing-audio/index.html
+ custom_link_attributes:
+ - description: "How to respond to hardware audio key presses, request audio focus when playing audio, and respond appropriately to changes in audio focus."
+ section:
+ - title: Controlling Your App's Volume and Playback
+ path: /training/managing-audio/volume-playback.html
+ - title: Managing Audio Focus
+ path: /training/managing-audio/audio-focus.html
+ - title: Dealing with Audio Output Hardware
+ path: /training/managing-audio/audio-output.html
+ - title: Capturing Photos
+ path: /training/camera/index.html
+ custom_link_attributes:
+ - description: "How to leverage existing camera apps on the user's device to capture photos or control the camera hardware directly and build your own camera app."
+ section:
+ - title: Taking Photos Simply
+ path: /training/camera/photobasics.html
+ - title: Recording Videos Simply
+ path: /training/camera/videobasics.html
+ - title: Controlling the Camera
+ path: /training/camera/cameradirect.html
+ - title: Printing Content
+ path: /training/printing/index.html
+ custom_link_attributes:
+ - description: "How to print photos, HTML documents, and custom documents from your app."
+ section:
+ - title: Photos
+ path: /training/printing/photos.html
+ - title: HTML Documents
+ path: /training/printing/html-docs.html
+ - title: Custom Documents
+ path: /training/printing/custom-docs.html
+
+- title: Building Apps with Graphics & Animation
+ path: /training/building-graphics.html
+ section:
+ - title: Displaying Bitmaps Efficiently
+ path: /training/displaying-bitmaps/index.html
+ custom_link_attributes:
+ - description: "How to load and process bitmaps while keeping your user interface responsive and avoid exceeding memory limits."
+ section:
+ - title: Loading Large Bitmaps Efficiently
+ path: /training/displaying-bitmaps/load-bitmap.html
+ - title: Processing Bitmaps Off the UI Thread
+ path: /training/displaying-bitmaps/process-bitmap.html
+ - title: Caching Bitmaps
+ path: /training/displaying-bitmaps/cache-bitmap.html
+ - title: Managing Bitmap Memory
+ path: /training/displaying-bitmaps/manage-memory.html
+ - title: Displaying Bitmaps in Your UI
+ path: /training/displaying-bitmaps/display-bitmap.html
+ - title: Displaying Graphics with OpenGL ES
+ path: /training/graphics/opengl/index.html
+ custom_link_attributes:
+ - description: "How to create OpenGL graphics within the Android app framework and respond to touch input."
+ section:
+ - title: Building an OpenGL ES Environment
+ path: /training/graphics/opengl/environment.html
+ - title: Defining Shapes
+ path: /training/graphics/opengl/shapes.html
+ - title: Drawing Shapes
+ path: /training/graphics/opengl/draw.html
+ - title: Applying Projection and Camera Views
+ path: /training/graphics/opengl/projection.html
+ - title: Adding Motion
+ path: /training/graphics/opengl/motion.html
+ - title: Responding to Touch Events
+ path: /training/graphics/opengl/touch.html
+ - title: Animating Views Using Scenes and Transitions
+ path: /training/transitions/index.html
+ custom_link_attributes:
+ - description: "How to animate state changes in a view hierarchy using transitions."
+ section:
+ - title: The Transitions Framework
+ path: /training/transitions/overview.html
+ - title: Creating a Scene
+ path: /training/transitions/scenes.html
+ - title: Applying a Transition
+ path: /training/transitions/transitions.html
+ - title: Creating Custom Transitions
+ path: /training/transitions/custom-transitions.html
+ - title: Adding Animations
+ path: /training/animation/index.html
+ custom_link_attributes:
+ - description: "How to add transitional animations to your user interface."
+ section:
+ - title: Crossfading Two Views
+ path: /training/animation/crossfade.html
+ - title: Using ViewPager for Screen Slide
+ path: /training/animation/screen-slide.html
+ - title: Displaying Card Flip Animations
+ path: /training/animation/cardflip.html
+ - title: Zooming a View
+ path: /training/animation/zoom.html
+ - title: Animating Layout Changes
+ path: /training/animation/layout.html
+
+- title: Building Apps with Connectivity & the Cloud
+ path: /training/building-connectivity.html
+ section:
+ - title: Connecting Devices Wirelessly
+ path: /training/connect-devices-wirelessly/index.html
+ custom_link_attributes:
+ - description: "How to find and connect to local devices using Network Service Discovery and how to create peer-to-peer connections with Wi-Fi."
+ section:
+ - title: Using Network Service Discovery
+ path: /training/connect-devices-wirelessly/nsd.html
+ - title: Creating P2P Connections with Wi-Fi
+ path: /training/connect-devices-wirelessly/wifi-direct.html
+ - title: Using Wi-Fi P2P for Service Discovery
+ path: /training/connect-devices-wirelessly/nsd-wifi-direct.html
+ - title: Performing Network Operations
+ path: /training/basics/network-ops/index.html
+ custom_link_attributes:
+ - description: "How to create a network connection, monitor the connection for changes in connectivity, and perform transactions with XML data."
+ section:
+ - title: Connecting to the Network
+ path: /training/basics/network-ops/connecting.html
+ - title: Managing Network Usage
+ path: /training/basics/network-ops/managing.html
+ - title: Parsing XML Data
+ path: /training/basics/network-ops/xml.html
+ - title: Transferring Data Without Draining the Battery
+ path: /training/efficient-downloads/index.html
+ custom_link_attributes:
+ - description: "How to minimize your app's impact on the battery when performing downloads and other network transactions."
+ section:
+ - title: Optimizing Downloads for Efficient Network Access
+ path: /training/efficient-downloads/efficient-network-access.html
+ - title: Minimizing the Effect of Regular Updates
+ path: /training/efficient-downloads/regular_updates.html
+ - title: Redundant Downloads are Redundant
+ path: /training/efficient-downloads/redundant_redundant.html
+ - title: Modifying Patterns Based on the Connectivity Type
+ path: /training/efficient-downloads/connectivity_patterns.html
+ - title: Syncing to the Cloud
+ path: /training/backup/index.html
+ custom_link_attributes:
+ - description: "How to sync and back up app and user data to remote web services in the cloud and how to restore the data back to multiple devices."
+ section:
+ - title: Configuring Auto Backup
+ path: /training/backup/autosyncapi.html
+ - title: Using the Backup API
+ path: /training/backup/backupapi.html
+ - title: Resolving Cloud Save Conflicts
+ path: /training/cloudsave/conflict-res.html
+ custom_link_attributes:
+ - description: "How to design a robust conflict resolution strategy for apps that save data to the cloud."
+ - title: Transferring Data Using Sync Adapters
+ path: /training/sync-adapters/index.html
+ custom_link_attributes:
+ - description: "How to transfer data between the cloud and the device using the Android sync adapter framework"
+ section:
+ - title: Creating a Stub Authenticator
+ path: /training/sync-adapters/creating-authenticator.html
+ - title: Creating a Stub Content Provider
+ path: /training/sync-adapters/creating-stub-provider.html
+ - title: Creating a Sync Adapter
+ path: /training/sync-adapters/creating-sync-adapter.html
+ - title: Running a Sync Adapter
+ path: /training/sync-adapters/running-sync-adapter.html
+ - title: Transmitting Network Data Using Volley
+ path: /training/volley/index.html
+ custom_link_attributes:
+ - description: "How to perform fast, scalable UI operations over the network using Volley"
+ section:
+ - title: Sending a Simple Request
+ path: /training/volley/simple.html
+ - title: Setting Up a RequestQueue
+ path: /training/volley/requestqueue.html
+ - title: Making a Standard Request
+ path: /training/volley/request.html
+ - title: Implementing a Custom Request
+ path: /training/volley/request-custom.html
+
+- title: Building Apps with Location & Maps
+ path: /training/building-location.html
+ section:
+ - title: Making Your App Location-Aware
+ path: /training/location/index.html
+ custom_link_attributes:
+ - description: "How to add location-aware features to your app by getting the user's current location."
+ section:
+ - title: Getting the Last Known Location
+ path: /training/location/retrieve-current.html
+ - title: Changing Location Settings
+ path: /training/location/change-location-settings.html
+ - title: Receiving Location Updates
+ path: /training/location/receive-location-updates.html
+ - title: Displaying a Location Address
+ path: /training/location/display-address.html
+ - title: Creating and Monitoring Geofences
+ path: /training/location/geofencing.html
+ - title: Adding Maps
+ path: /training/maps/index.html
+ custom_link_attributes:
+ - description: "How to add maps and mapping information to your app."
+
+- title: Building Apps with User Info & Sign-In
+ path: /training/building-userinfo.html
+ section:
+ - title: Accessing Contacts Data
+ path: /training/contacts-provider/index.html
+ custom_link_attributes:
+ - description: "How to use Android's central address book, the Contacts Provider, to display contacts and their details and modify contact information."
+ section:
+ - title: Retrieving a List of Contacts
+ path: /training/contacts-provider/retrieve-names.html
+ - title: Retrieving Details for a Contact
+ path: /training/contacts-provider/retrieve-details.html
+ - title: Modifying Contacts Using Intents
+ path: /training/contacts-provider/modify-data.html
+ - title: Displaying the Quick Contact Badge
+ path: /training/contacts-provider/display-contact-badge.html
+ - title: Adding Sign-In
+ path: /training/sign-in/index.html
+ custom_link_attributes:
+ - description: "How to add user sign-in functionality to your app."
+
+- title: Building Apps for Wearables
+ path: /training/building-wearables.html
+ section:
+ - title: Adding Wearable Features to Notifications
+ path: /training/wearables/notifications/index.html
+ custom_link_attributes:
+ - description: "How to build handheld notifications that are synced to and look great on wearables."
+ section:
+ - title: Creating a Notification
+ path: /training/wearables/notifications/creating.html
+ - title: Receiving Voice Input in a Notification
+ path: /training/wearables/notifications/voice-input.html
+ - title: Adding Pages to a Notification
+ path: /training/wearables/notifications/pages.html
+ - title: Stacking Notifications
+ path: /training/wearables/notifications/stacks.html
+ - title: Creating Wearable Apps
+ path: /training/wearables/apps/index.html
+ custom_link_attributes:
+ - description: "How to build apps that run directly on wearables."
+ section:
+ - title: Creating and Running a Wearable App
+ path: /training/wearables/apps/creating.html
+ - title: Creating Custom Layouts
+ path: /training/wearables/apps/layouts.html
+ - title: Keeping Your App Visible
+ path: /training/wearables/apps/always-on.html
+ - title: Adding Voice Capabilities
+ path: /training/wearables/apps/voice.html
+ - title: Packaging Wearable Apps
+ path: /training/wearables/apps/packaging.html
+ - title: Debugging over Bluetooth
+ path: /training/wearables/apps/bt-debugging.html
+ - title: Creating Custom UIs
+ path: /training/wearables/ui/index.html
+ custom_link_attributes:
+ - description: "How to create custom user interfaces for wearable apps."
+ section:
+ - title: Defining Layouts
+ path: /training/wearables/ui/layouts.html
+ - title: Creating Cards
+ path: /training/wearables/ui/cards.html
+ - title: Creating Lists
+ path: /training/wearables/ui/lists.html
+ - title: Creating a 2D Picker
+ path: /training/wearables/ui/2d-picker.html
+ - title: Showing Confirmations
+ path: /training/wearables/ui/confirm.html
+ - title: Exiting Full-Screen Activities
+ path: /training/wearables/ui/exit.html
+ - title: Sending and Syncing Data
+ path: /training/wearables/data-layer/index.html
+ custom_link_attributes:
+ - description: "How to sync data between handhelds and wearables."
+ section:
+ - title: Accessing the Wearable Data Layer
+ path: /training/wearables/data-layer/accessing.html
+ - title: Syncing Data Items
+ path: /training/wearables/data-layer/data-items.html
+ - title: Transferring Assets
+ path: /training/wearables/data-layer/assets.html
+ - title: Sending and Receiving Messages
+ path: /training/wearables/data-layer/messages.html
+ - title: Handling Data Layer Events
+ path: /training/wearables/data-layer/events.html
+ - title: Creating Watch Faces
+ path: /training/wearables/watch-faces/index.html
+ custom_link_attributes:
+ - description: "How to create watch faces for wearables."
+ section:
+ - title: Designing Watch Faces
+ path: /training/wearables/watch-faces/designing.html
+ - title: Building a Watch Face Service
+ path: /training/wearables/watch-faces/service.html
+ - title: Drawing Watch Faces
+ path: /training/wearables/watch-faces/drawing.html
+ - title: Showing Information in Watch Faces
+ path: /training/wearables/watch-faces/information.html
+ - title: Creating Interactive Watch Faces
+ path: /training/wearables/watch-faces/interacting.html
+ - title: Providing Configuration Activities
+ path: /training/wearables/watch-faces/configuration.html
+ - title: Addressing Common Issues
+ path: /training/wearables/watch-faces/issues.html
+ - title: Optimizing Performance and Battery Life
+ path: /training/wearables/watch-faces/performance.html
+ - title: Detecting Location
+ path: /training/articles/wear-location-detection.html
+ custom_link_attributes:
+ - description: "How to detect location data on Android Wear devices."
+ - title: Requesting Permissions
+ path: /training/articles/wear-permissions.html
+ custom_link_attributes:
+ - description: "How to request permissions on Android Wear devices."
+ - title: Using the Speaker
+ path: /training/wearables/wearable-sounds.html
+ custom_link_attributes:
+ - description: "How to use the speaker on Android Wear devices."
+
+- title: Building Apps for TV
+ path: /training/tv/index.html
+ section:
+ - title: Building TV Apps
+ path: /training/tv/start/index.html
+ custom_link_attributes:
+ - ja-lang: "TV アプリのビルド"
+ - description: "How to start building TV apps or extend your existing app to run on TV devices."
+ section:
+ - title: Getting Started with TV Apps
+ path: /training/tv/start/start.html
+ custom_link_attributes:
+ - ja-lang: "TV アプリのビルドを開始する"
+ - title: Handling TV Hardware
+ path: /training/tv/start/hardware.html
+ custom_link_attributes:
+ - ja-lang: "TV ハードウェアを処理する"
+ - title: Building TV Layouts
+ path: /training/tv/start/layouts.html
+ custom_link_attributes:
+ - ja-lang: "TV 向けレイアウトをビルドする"
+ - title: Creating TV Navigation
+ path: /training/tv/start/navigation.html
+ custom_link_attributes:
+ - ja-lang: "TV 用のナビゲーションを作成する"
+ - title: Building TV Playback Apps
+ path: /training/tv/playback/index.html
+ custom_link_attributes:
+ - ja-lang: "TV 再生アプリのビルド"
+ - description: "How to build apps that provide media catalogs and play content."
+ section:
+ - title: Creating a Catalog Browser
+ path: /training/tv/playback/browse.html
+ custom_link_attributes:
+ - ja-lang: "カタログ ブラウザを作成する"
+ - title: Providing a Card View
+ path: /training/tv/playback/card.html
+ - title: Building a Details View
+ path: /training/tv/playback/details.html
+ custom_link_attributes:
+ - ja-lang: "詳細ビューをビルドする"
+ - title: Displaying a Now Playing Card
+ path: /training/tv/playback/now-playing.html
+ custom_link_attributes:
+ - ja-lang: "再生中カードを表示する"
+ - title: Adding a Guided Step
+ path: /training/tv/playback/guided-step.html
+ - title: Enabling Background Playback
+ path: /training/tv/playback/options.html
+ - title: Helping Users Find Content on TV
+ path: /training/tv/discovery/index.html
+ custom_link_attributes:
+ - description: "How to help users discover content from your app."
+ section:
+ - title: Recommending TV Content
+ path: /training/tv/discovery/recommendations.html
+ - title: Making TV Apps Searchable
+ path: /training/tv/discovery/searchable.html
+ - title: Searching within TV Apps
+ path: /training/tv/discovery/in-app-search.html
+ - title: Building TV Games
+ path: /training/tv/games/index.html
+ custom_link_attributes:
+ - description: "How to build games for TV."
+ - title: Building TV Channels
+ path: /training/tv/tif/index.html
+ custom_link_attributes:
+ - description: "How to build channels for TV."
+ section:
+ - title: Developing a TV Input Service
+ path: /training/tv/tif/tvinput.html
+ - title: Working with Channel Data
+ path: /training/tv/tif/channel.html
+ - title: Managing User Interaction
+ path: /training/tv/tif/ui.html
+ - title: TV Apps Checklist
+ path: /training/tv/publishing/checklist.html
+ custom_link_attributes:
+ - description: "An itemized list of requirements for TV apps."
+
+- title: Building Apps for Auto
+ path: /training/auto/index.html
+ section:
+ - title: Getting Started with Auto
+ path: /training/auto/start/index.html
+ custom_link_attributes:
+ - description: "How to start building or extending apps that work with Auto devices."
+ - title: Playing Audio for Auto
+ path: /training/auto/audio/index.html
+ custom_link_attributes:
+ - description: "How to extend audio apps to play content on Auto devices."
+ - title: Messaging for Auto
+ path: /training/auto/messaging/index.html
+ custom_link_attributes:
+ - description: "How to extend text messaging apps to work with Auto devices."
+
+- title: Building Apps for Work
+ path: /training/enterprise/index.html
+ section:
+ - title: Ensuring Compatibility with Managed Profiles
+ path: /training/enterprise/app-compatibility.html
+ - title: Implementing App Restrictions
+ path: /training/enterprise/app-restrictions.html
+ - title: Building a Device Policy Controller
+ path: /training/enterprise/work-policy-ctrl.html
+ - title: Configuring Corporate-Owned, Single-Use Devices
+ path: /training/enterprise/cosu.html
+
+- title: Best Practices for Interaction & Engagement
+ path: /training/best-ux.html
+ section:
+ - title: Designing Effective Navigation
+ path: /training/design-navigation/index.html
+ custom_link_attributes:
+ - description: "How to plan your app's screen hierarchy and forms of navigation so users can effectively and intuitively traverse your app content using various navigation patterns."
+ section:
+ - title: Planning Screens and Their Relationships
+ path: /training/design-navigation/screen-planning.html
+ - title: Planning for Multiple Touchscreen Sizes
+ path: /training/design-navigation/multiple-sizes.html
+ - title: Providing Descendant and Lateral Navigation
+ path: /training/design-navigation/descendant-lateral.html
+ - title: Providing Ancestral and Temporal Navigation
+ path: /training/design-navigation/ancestral-temporal.html
+ - title: "Putting it All Together: Wireframing the Example App"
+ path: /training/design-navigation/wireframing.html
+ - title: Implementing Effective Navigation
+ path: /training/implementing-navigation/index.html
+ custom_link_attributes:
+ - description: "How to implement various navigation patterns such as swipe views, a navigation drawer, and up navigation."
+ section:
+ - title: Creating Swipe Views with Tabs
+ path: /training/implementing-navigation/lateral.html
+ - title: Creating a Navigation Drawer
+ path: /training/implementing-navigation/nav-drawer.html
+ - title: Providing Up Navigation
+ path: /training/implementing-navigation/ancestral.html
+ - title: Providing Proper Back Navigation
+ path: /training/implementing-navigation/temporal.html
+ - title: Implementing Descendant Navigation
+ path: /training/implementing-navigation/descendant.html
+ - title: Notifying the User
+ path: /training/notify-user/index.html
+ custom_link_attributes:
+ - description: "How to display messages called notifications outside of your application's UI."
+ section:
+ - title: Building a Notification
+ path: /training/notify-user/build-notification.html
+ - title: Preserving Navigation when Starting an Activity
+ path: /training/notify-user/navigation.html
+ - title: Updating Notifications
+ path: /training/notify-user/managing.html
+ - title: Using Big View Styles
+ path: /training/notify-user/expanded.html
+ - title: Displaying Progress in a Notification
+ path: /training/notify-user/display-progress.html
+ - title: Supporting Swipe-to-Refresh
+ path: /training/swipe/index.html
+ custom_link_attributes:
+ - description: "How to modify your app's layout to support manual content updates triggered by the swipe-to-refresh gesture."
+ section:
+ - title: Adding Swipe-to-Refresh To Your App
+ path: /training/swipe/add-swipe-interface.html
+ - title: Responding to a Refresh Gesture
+ path: /training/swipe/respond-refresh-request.html
+ - title: Adding Search Functionality
+ path: /training/search/index.html
+ custom_link_attributes:
+ - description: "How to properly add a search interface to your app and create a searchable database."
+ section:
+ - title: Setting up the Search Interface
+ path: /training/search/setup.html
+ - title: Storing and Searching for Data
+ path: /training/search/search.html
+ - title: Remaining Backward Compatible
+ path: /training/search/backward-compat.html
+ - title: Making Your App Content Searchable by Google
+ path: /training/app-indexing/index.html
+ custom_link_attributes:
+ - description: "How to enable deep linking and indexing of your application content so that users can open this content directly from their mobile search results."
+ section:
+ - title: Enabling Deep Links for App Content
+ path: /training/app-indexing/deep-linking.html
+ - title: Specifying App Content for Indexing
+ path: /training/app-indexing/enabling-app-indexing.html
+ - title: Optimizing Content for the Assistant
+ path: /training/articles/assistant.html
+ custom_link_attributes:
+ - description: "Support contextually relevant actions through the Assist API."
+ - title: Handling App Links
+ path: /training/app-links/index.html
+ custom_link_attributes:
+ - description: "How to enable the system to handle web requests by taking the user directly to your app instead of your website."
+
+- title: Best Practices for User Interface
+ path: /training/best-ui.html
+ section:
+ - title: Designing for Multiple Screens
+ path: /training/multiscreen/index.html
+ custom_link_attributes:
+ - es-lang: "Cómo diseñar aplicaciones para varias pantallas"
+ - ja-lang: "複数画面のデザイン"
+ - zh-cn-lang: "针对多种屏幕进行设计"
+ - description: "How to build a user interface that's flexible enough to fit perfectly on any screen and how to create different interaction patterns that are optimized for different screen sizes."
+ section:
+ - title: Supporting Different Screen Sizes
+ path: /training/multiscreen/screensizes.html
+ custom_link_attributes:
+ - es-lang: "Cómo admitir varios tamaños de pantalla"
+ - ja-lang: "さまざまな画面サイズのサポート"
+ - ko-lang: "다양한 화면 크기 지원"
+ - zh-cn-lang: "支持各种屏幕尺寸"
+ - title: Supporting Different Screen Densities
+ path: /training/multiscreen/screendensities.html
+ custom_link_attributes:
+ - es-lang: "Cómo admitir varias densidades de pantalla"
+ - ja-lang: "さまざまな画面密度のサポート"
+ - zh-cn-lang: "支持各种屏幕密度"
+ - title: Implementing Adaptive UI Flows
+ path: /training/multiscreen/adaptui.html
+ custom_link_attributes:
+ - es-lang: "Cómo implementar interfaces de usuario adaptables"
+ - ja-lang: "順応性のある UI フローの実装"
+ - zh-cn-lang: "实施自适应用户界面流程"
+ - title: Adding the App Bar
+ path: /training/appbar/index.html
+ custom_link_attributes:
+ - description: "How to use the support library's toolbar widget to implement an app bar that displays properly on a wide range of devices."
+ section:
+ - title: Setting Up the App Bar
+ path: /training/appbar/setting-up.html
+ - title: Adding and Handling Actions
+ path: /training/appbar/actions.html
+ - title: Adding an Up Action
+ path: /training/appbar/up-action.html
+ - title: Action Views and Action Providers
+ path: /training/appbar/action-views.html
+ - title: Showing Pop-Up Messages
+ path: /training/snackbar/index.html
+ custom_link_attributes:
+ - description: "How to use the support library's Snackbar widget to display a brief pop-up message."
+ section:
+ - title: Building and Displaying a Pop-Up Message
+ path: /training/snackbar/showing.html
+ - title: Adding an Action to a Message
+ path: /training/snackbar/action.html
+ - title: Creating Custom Views
+ path: /training/custom-views/index.html
+ custom_link_attributes:
+ - description: "How to build custom UI widgets that are interactive and smooth."
+ section:
+ - title: Creating a Custom View Class
+ path: /training/custom-views/create-view.html
+ - title: Implementing Custom Drawing
+ path: /training/custom-views/custom-drawing.html
+ - title: Making the View Interactive
+ path: /training/custom-views/making-interactive.html
+ - title: Optimizing the View
+ path: /training/custom-views/optimizing-view.html
+ - title: Creating Backward-Compatible UIs
+ path: /training/backward-compatible-ui/index.html
+ custom_link_attributes:
+ - description: "How to use UI components and other APIs from the more recent versions of Android while remaining compatible with older versions of the platform."
+ section:
+ - title: Abstracting the New APIs
+ path: /training/backward-compatible-ui/abstracting.html
+ - title: Proxying to the New APIs
+ path: /training/backward-compatible-ui/new-implementation.html
+ - title: Creating an Implementation with Older APIs
+ path: /training/backward-compatible-ui/older-implementation.html
+ - title: Using the Version-Aware Component
+ path: /training/backward-compatible-ui/using-component.html
+ - title: Implementing Accessibility
+ path: /training/accessibility/index.html
+ custom_link_attributes:
+ - description: "How to make your app accessible to users with vision impairment or other physical disabilities."
+ section:
+ - title: Developing Accessible Applications
+ path: /training/accessibility/accessible-app.html
+ - title: Developing Accessibility Services
+ path: /training/accessibility/service.html
+ - title: Accessibility Testing Checklist
+ path: /training/accessibility/testing.html
+ - title: Managing the System UI
+ path: /training/system-ui/index.html
+ custom_link_attributes:
+ - description: "How to hide and show status and navigation bars across different versions of Android, while managing the display of other screen components."
+ section:
+ - title: Dimming the System Bars
+ path: /training/system-ui/dim.html
+ - title: Hiding the Status Bar
+ path: /training/system-ui/status.html
+ - title: Hiding the Navigation Bar
+ path: /training/system-ui/navigation.html
+ - title: Using Immersive Full-Screen Mode
+ path: /training/system-ui/immersive.html
+ - title: Responding to UI Visibility Changes
+ path: /training/system-ui/visibility.html
+ - title: Creating Apps with Material Design
+ path: /training/material/index.html
+ custom_link_attributes:
+ - es-lang: "Crear aplicaciones con Material Design"
+ - in-lang: "Desain Bahan untuk Pengembang"
+ - ja-lang: "マテリアル デザインでのアプリ作成"
+ - ko-lang: "개발자를 위한 머티리얼 디자인"
+ - pt-br-lang: "Material Design para desenvolvedores"
+ - ru-lang: "Создание приложений с помощью Material Design"
+ - vi-lang: "Material Design cho Nhà phát triển"
+ - zh-cn-lang: "面向开发者的材料设计"
+ - zh-tw-lang: "開發人員材料設計"
+ - description: "How to implement material design on Android."
+ section:
+ - title: Getting Started
+ path: /training/material/get-started.html
+ custom_link_attributes:
+ - es-lang: "Comencemos"
+ - in-lang: "Memulai"
+ - ja-lang: "スタート ガイド"
+ - ko-lang: "시작하기"
+ - pt-br-lang: "Como iniciar"
+ - ru-lang: "Начало работы"
+ - vi-lang: "Bắt đầu"
+ - zh-cn-lang: "入门指南"
+ - zh-tw-lang: "開始使用"
+ - title: Using the Material Theme
+ path: /training/material/theme.html
+ custom_link_attributes:
+ - es-lang: "Usar el tema Material"
+ - in-lang: "Menggunakan Tema Bahan"
+ - ja-lang: "マテリアル テーマの使用"
+ - ko-lang: "머티어리얼 테마 사용"
+ - pt-br-lang: "Como usar o tema do Material"
+ - ru-lang: "Использование темы Material Design"
+ - vi-lang: "Sử dụng Chủ đề Material"
+ - zh-cn-lang: "使用材料主题"
+ - zh-tw-lang: "使用材料設計風格"
+ - title: Creating Lists and Cards
+ path: /training/material/lists-cards.html
+ custom_link_attributes:
+ - es-lang: "Crear listas y tarjetas"
+ - in-lang: "Membuat Daftar dan Kartu"
+ - ja-lang: "リストとカードの作成"
+ - ko-lang: "목록 및 카드 생성"
+ - pt-br-lang: "Como criar listas e cartões"
+ - ru-lang: "Создание списков и подсказок"
+ - vi-lang: "Tạo Danh sách và Thẻ"
+ - zh-cn-lang: "创建列表与卡片"
+ - zh-tw-lang: "建立清單和卡片"
+ - title: Defining Shadows and Clipping Views
+ path: /training/material/shadows-clipping.html
+ custom_link_attributes:
+ - es-lang: "Definir vistas de recorte y sombras"
+ - in-lang: "Mendefinisikan Bayangan dan Memangkas Tampilan"
+ - ja-lang: "シャドウとクリッピング ビューの定義"
+ - ko-lang: "그림자 정의 및 뷰 클리핑"
+ - pt-br-lang: "Como definir sombras e recortar visualizações"
+ - ru-lang: "Определение теней и обрезка представлений"
+ - vi-lang: "Định nghĩa Đổ bóng và Dạng xem Cắt hình"
+ - zh-cn-lang: "定义阴影与裁剪视图"
+ - zh-tw-lang: "定義陰影和裁剪檢視"
+ - title: Working with Drawables
+ path: /training/material/drawables.html
+ custom_link_attributes:
+ - es-lang: "Trabajar con interfaces dibujables"
+ - in-lang: "Bekerja dengan Drawable"
+ - ja-lang: "ドローアブルの使用"
+ - ko-lang: "Drawable 사용"
+ - pt-br-lang: "Como trabalhar com desenháveis"
+ - ru-lang: "Работа с элементами дизайна"
+ - vi-lang: "Làm việc với Nội dung vẽ được"
+ - zh-cn-lang: "使用 Drawables"
+ - zh-tw-lang: "使用可繪項目"
+ - title: Defining Custom Animations
+ path: /training/material/animations.html
+ custom_link_attributes:
+ - es-lang: "Definir animaciones personalizadas"
+ - in-lang: "Mendefinisikan Animasi Custom"
+ - ja-lang: "カスタム アニメーションの定義"
+ - ko-lang: "사용자지정 애니메이션 정의"
+ - pt-br-lang: "Como definir animações personalizadas"
+ - ru-lang: "Определение настраиваемой анимации"
+ - vi-lang: "Định nghĩa Hoạt hình Tùy chỉnh"
+ - zh-cn-lang: "定义定制动画"
+ - zh-tw-lang: "定義自訂動畫"
+ - title: Maintaining Compatibility
+ path: /training/material/compatibility.html
+ custom_link_attributes:
+ - es-lang: "Mantener la compatibilidad"
+ - in-lang: "Mempertahankan Kompatibilitas"
+ - ja-lang: "互換性の維持"
+ - ko-lang: "호환성 유지"
+ - pt-br-lang: "Como manter a compatibilidade"
+ - ru-lang: "Обеспечение совместимости"
+ - vi-lang: "Duy trì Tính tương thích"
+ - zh-cn-lang: "维护兼容性"
+ - zh-tw-lang: "維持相容性"
+
+- title: Best Practices for User Input
+ path: /training/best-user-input.html
+ section:
+ - title: Using Touch Gestures
+ path: /training/gestures/index.html
+ custom_link_attributes:
+ - description: "How to write apps that allow users to interact with the touch screen via touch gestures."
+ section:
+ - title: Detecting Common Gestures
+ path: /training/gestures/detector.html
+ - title: Tracking Movement
+ path: /training/gestures/movement.html
+ - title: Animating a Scroll Gesture
+ path: /training/gestures/scroll.html
+ - title: Handling Multi-Touch Gestures
+ path: /training/gestures/multi.html
+ - title: Dragging and Scaling
+ path: /training/gestures/scale.html
+ - title: Managing Touch Events in a ViewGroup
+ path: /training/gestures/viewgroup.html
+ - title: Handling Keyboard Input
+ path: /training/keyboard-input/index.html
+ custom_link_attributes:
+ - description: "How to specify the appearance and behaviors of soft input methods (such as on-screen keyboards) and how to optimize the experience with hardware keyboards."
+ section:
+ - title: Specifying the Input Method Type
+ path: /training/keyboard-input/style.html
+ - title: Handling Input Method Visibility
+ path: /training/keyboard-input/visibility.html
+ - title: Supporting Keyboard Navigation
+ path: /training/keyboard-input/navigation.html
+ - title: Handling Keyboard Actions
+ path: /training/keyboard-input/commands.html
+ - title: Supporting Game Controllers
+ path: /training/game-controllers/index.html
+ custom_link_attributes:
+ - description: "How to write apps that support game controllers."
+ section:
+ - title: Handling Controller Actions
+ path: /training/game-controllers/controller-input.html
+ - title: Supporting Controllers Across Android Versions
+ path: /training/game-controllers/compatibility.html
+ - title: Supporting Multiple Game Controllers
+ path: /training/game-controllers/multiple-controllers.html
+
+- title: Best Practices for Background Jobs
+ path: /training/best-background.html
+ section:
+ - title: Running in a Background Service
+ path: /training/run-background-service/index.html
+ custom_link_attributes:
+ - description: "How to improve UI performance and responsiveness by sending work to a Service running in the background"
+ section:
+ - title: Creating a Background Service
+ path: /training/run-background-service/create-service.html
+ - title: Sending Work Requests to the Background Service
+ path: /training/run-background-service/send-request.html
+ - title: Reporting Work Status
+ path: /training/run-background-service/report-status.html
+ - title: Loading Data in the Background
+ path: /training/load-data-background/index.html
+ custom_link_attributes:
+ - description: "How to use CursorLoader to query data without affecting UI responsiveness."
+ section:
+ - title: Running a Query with a CursorLoader
+ path: /training/load-data-background/setup-loader.html
+ - title: Handling the Results
+ path: /training/load-data-background/handle-results.html
+ - title: Managing Device Awake State
+ path: /training/scheduling/index.html
+ custom_link_attributes:
+ - description: "How to use repeating alarms and wake locks to run background jobs."
+ section:
+ - title: Keeping the Device Awake
+ path: /training/scheduling/wakelock.html
+ - title: Scheduling Repeating Alarms
+ path: /training/scheduling/alarms.html
+
+- title: Best Practices for Performance
+ path: /training/best-performance.html
+ section:
+ - title: Managing Your App's Memory
+ path: /training/articles/memory.html
+ custom_link_attributes:
+ - description: "How to keep your app's memory footprint small in order to improve performance on a variety of mobile devices."
+ - title: Performance Tips
+ path: /training/articles/perf-tips.html
+ custom_link_attributes:
+ - description: "How to optimize your app's performance in various ways to improve its responsiveness and battery efficiency."
+ - title: Improving Layout Performance
+ path: /training/improving-layouts/index.html
+ custom_link_attributes:
+ - description: "How to identify problems in your app's layout performance and improve the UI responsiveness."
+ section:
+ - title: Optimizing Layout Hierarchies
+ path: /training/improving-layouts/optimizing-layout.html
+ - title: Re-using Layouts with <include/>
+ path: /training/improving-layouts/reusing-layouts.html
+ - title: Loading Views On Demand
+ path: /training/improving-layouts/loading-ondemand.html
+ - title: Making ListView Scrolling Smooth
+ path: /training/improving-layouts/smooth-scrolling.html
+ - title: Optimizing Battery Life
+ path: /training/monitoring-device-state/index.html
+ custom_link_attributes:
+ - es-lang: "Cómo optimizar la duración de la batería"
+ - ja-lang: "電池消費量の最適化"
+ - zh-cn-lang: "优化电池使用时间"
+ - description: "How to minimize the amount of power your app requires by adapting to current power conditions and performing power-hungry tasks at proper intervals."
+ section:
+ - title: Reducing Network Battery Drain
+ path: /training/performance/battery/network/index.html
+ section:
+ - title: Collecting Network Traffic Data
+ path: /training/performance/battery/network/gather-data.html
+ - title: Analyzing Network Traffic Data
+ path: /training/performance/battery/network/analyze-data.html
+ - title: Optimizing User-Initiated Network Use
+ path: /training/performance/battery/network/action-user-traffic.html
+ - title: Optimizing App-Initiated Network Use
+ path: /training/performance/battery/network/action-app-traffic.html
+ - title: Optimizing Server-Initiated Network Use
+ path: /training/performance/battery/network/action-server-traffic.html
+ - title: Optimizing General Network Use
+ path: /training/performance/battery/network/action-any-traffic.html
+ - title: Optimizing for Doze and App Standby
+ path: /training/monitoring-device-state/doze-standby.html
+ - title: Monitoring the Battery Level and Charging State
+ path: /training/monitoring-device-state/battery-monitoring.html
+ custom_link_attributes:
+ - es-lang: "Cómo controlar el nivel de batería y el estado de carga"
+ - ja-lang: "電池残量と充電状態の監視"
+ - zh-cn-lang: "监控电池电量和充电状态"
+ - title: Determining and Monitoring the Docking State and Type
+ path: /training/monitoring-device-state/docking-monitoring.html
+ custom_link_attributes:
+ - es-lang: "Cómo determinar y controlar el tipo de conector y el estado de la conexión"
+ - ja-lang: "ホルダーの装着状態とタイプの特定と監視"
+ - zh-cn-lang: "确定和监控基座对接状态和类型"
+ - title: Determining and Monitoring the Connectivity Status
+ path: /training/monitoring-device-state/connectivity-monitoring.html
+ custom_link_attributes:
+ - es-lang: "Cómo determinar y controlar el estado de la conectividad"
+ - ja-lang: "接続状態の特定と監視"
+ - zh-cn-lang: "确定和监控网络连接状态"
+ - title: Manipulating Broadcast Receivers On Demand
+ path: /training/monitoring-device-state/manifest-receivers.html
+ custom_link_attributes:
+ - es-lang: "Cómo manipular los receptores de emisión bajo demanda"
+ - ja-lang: "オンデマンドでのブロードキャスト レシーバ操作"
+ - zh-cn-lang: "根据需要操作广播接收器"
+ - title: Sending Operations to Multiple Threads
+ path: /training/multiple-threads/index.html
+ custom_link_attributes:
+ - description: "How to improve the performance and scalability of long-running operations by dispatching work to multiple threads."
+ section:
+ - title: Specifying the Code to Run on a Thread
+ path: /training/multiple-threads/define-runnable.html
+ - title: Creating a Manager for Multiple Threads
+ path: /training/multiple-threads/create-threadpool.html
+ - title: Running Code on a Thread Pool Thread
+ path: /training/multiple-threads/run-code.html
+ - title: Communicating with the UI Thread
+ path: /training/multiple-threads/communicate-ui.html
+ - title: Keeping Your App Responsive
+ path: /training/articles/perf-anr.html
+ custom_link_attributes:
+ - description: "How to keep your app responsive to user interaction so the UI does not lock-up and display an \"Application Not Responding\" dialog."
+ - title: JNI Tips
+ path: /training/articles/perf-jni.html
+ custom_link_attributes:
+ - description: "How to efficiently use the Java Native Interface with the Android NDK."
+ - title: SMP Primer for Android
+ path: /training/articles/smp.html
+ custom_link_attributes:
+ - description: "Tips for coding Android apps on symmetric multiprocessor systems."
+
+- title: Best Practices for Security & Privacy
+ path: /training/best-security.html
+ section:
+ - title: Security Tips
+ path: /training/articles/security-tips.html
+ custom_link_attributes:
+ - description: "How to perform various tasks and keep your app's data and your user's data secure."
+ - title: Security with HTTPS and SSL
+ path: /training/articles/security-ssl.html
+ custom_link_attributes:
+ - description: "How to ensure that your app is secure when performing network transactions."
+ - title: Updating Your Security Provider to Protect Against SSL Exploits
+ path: /training/articles/security-gms-provider.html
+ custom_link_attributes:
+ - description: "How to use and update Google Play services security provider, to protect against SSL exploits."
+ - title: Checking Device Compatibility with SafetyNet
+ path: /training/safetynet/index.html
+ custom_link_attributes:
+ - description: "How to use the SafetyNet service to analyze a device where your app is running and get information about its compatibility with your app."
+ - title: Enhancing Security with Device Management Policies
+ path: /training/enterprise/device-management-policy.html
+ custom_link_attributes:
+ - description: "How to create an application that enforces security policies on devices."
+
+- title: Best Practices for Permissions & Identifiers
+ path: /training/best-permissions-ids.html
+ section:
+ - title: Permissions and User Data
+ path: /training/articles/user-data-overview.html
+ custom_link_attributes:
+ - description: "Overview of app permissions on Android and how they affect your users."
+ - title: Best Practices for App Permissions
+ path: /training/articles/user-data-permissions.html
+ custom_link_attributes:
+ - description: "How to manage permissions the right way for users."
+ - title: Best Practices for Unique Identifiers
+ path: /training/articles/user-data-ids.html
+ custom_link_attributes:
+ - description: "Unique identifiers available and how to choose the right one for your use case."
+
+- title: Best Practices for Testing
+ path: /training/testing/index.html
+ section:
+ - title: Getting Started with Testing
+ path: /training/testing/start/index.html
+ custom_link_attributes:
+ - description: "How to get started with testing your Android applications."
+ - title: Building Effective Unit Tests
+ path: /training/testing/unit-testing/index.html
+ custom_link_attributes:
+ - description: "How to build effective unit tests for Android apps."
+ section:
+ - title: Building Local Unit Tests
+ path: /training/testing/unit-testing/local-unit-tests.html
+ - title: Building Instrumented Unit Tests
+ path: /training/testing/unit-testing/instrumented-unit-tests.html
+ - title: Automating UI Tests
+ path: /training/testing/ui-testing/index.html
+ custom_link_attributes:
+ - description: "How to automate your user interface tests for Android apps."
+ section:
+ - title: Testing UI for a Single App
+ path: /training/testing/ui-testing/espresso-testing.html
+ - title: Testing UI for Multiple Apps
+ path: /training/testing/ui-testing/uiautomator-testing.html
+ - title: Testing App Component Integrations
+ path: /training/testing/integration-testing/index.html
+ custom_link_attributes:
+ - description: "How to build effective integration tests for Android apps."
+ section:
+ - title: Testing Your Service
+ path: /training/testing/integration-testing/service-testing.html
+ - title: Testing Your Content Provider
+ path: /training/testing/integration-testing/content-provider-testing.html
+ - title: Testing Display Performance
+ path: /training/testing/performance.html
+ custom_link_attributes:
+ - description: "How to automate UI performance testing."
+
+- title: Using Google Play to Distribute & Monetize
+ path: /training/distribute.html
+ section:
+ - title: Selling In-app Products
+ path: /training/in-app-billing/index.html
+ custom_link_attributes:
+ - description: "How to sell in-app products from your application using In-app Billing."
+ section:
+ - title: Preparing Your App
+ path: /training/in-app-billing/preparing-iab-app.html
+ - title: Establishing Products for Sale
+ path: /training/in-app-billing/list-iab-products.html
+ - title: Purchasing Products
+ path: /training/in-app-billing/purchase-iab-products.html
+ - title: Testing Your App
+ path: /training/in-app-billing/test-iab-app.html
+ - title: Maintaining Multiple APKs
+ path: /training/multiple-apks/index.html
+ custom_link_attributes:
+ - description: "How to publish your app on Google Play with separate APKs that target different devices, while using a single app listing."
+ section:
+ - title: Creating Multiple APKs for Different API Levels
+ path: /training/multiple-apks/api.html
+ - title: Creating Multiple APKs for Different Screen Sizes
+ path: /training/multiple-apks/screensize.html
+ - title: Creating Multiple APKs for Different GL Textures
+ path: /training/multiple-apks/texture.html
+ - title: Creating Multiple APKs with 2+ Dimensions
+ path: /training/multiple-apks/multiple.html
diff --git a/docs/html/training/basics/intents/filters.jd b/docs/html/training/basics/intents/filters.jd
index 221e31b..0b1f5e1 100644
--- a/docs/html/training/basics/intents/filters.jd
+++ b/docs/html/training/basics/intents/filters.jd
@@ -197,7 +197,7 @@
<pre>
// Create intent to deliver some kind of result data
-Intent result = new Intent("com.example.RESULT_ACTION", Uri.parse("content://result_uri");
+Intent result = new Intent("com.example.RESULT_ACTION", Uri.parse("content://result_uri"));
setResult(Activity.RESULT_OK, result);
finish();
</pre>
diff --git a/docs/html/training/system-ui/status.jd b/docs/html/training/system-ui/status.jd
index 9169efc..8e5b356 100755
--- a/docs/html/training/system-ui/status.jd
+++ b/docs/html/training/system-ui/status.jd
@@ -13,7 +13,6 @@
<li><a href="#40">Hide the Status Bar on Android 4.0 and Lower</a></li>
<li><a href="#41">Hide the Status Bar on Android 4.1 and Higher</a></li>
<li><a href="#behind">Make Content Appear Behind the Status Bar</a></li>
- <li><a href="#action-bar">Synchronize the Status Bar with Action Bar Transition</a></li>
</ol>
<!-- other docs (NOT javadocs) -->
@@ -102,7 +101,7 @@
super.onCreate(savedInstanceState);
// If the Android version is lower than Jellybean, use this call to hide
// the status bar.
- if (Build.VERSION.SDK_INT < 16) {
+ if (Build.VERSION.SDK_INT < 16) {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
@@ -192,33 +191,3 @@
view hierarchy when the content insets for a window have changed, to allow the window to
adjust its content accordingly. By overriding this method you can handle the
insets (and hence your app's layout) however you want. </p>
-
- <h2 id="action-bar">Synchronize the Status Bar with Action Bar Transition</h2>
-
- <p>On Android 4.1 and higher, to avoid resizing your layout when the action bar hides and
- shows, you can enable overlay mode for the action bar.
- When in overlay mode, your activity layout uses all the
- space available as if the action bar is not there and the system draws the action bar in
- front of your layout. This obscures some of the layout at the top, but now when the
- action bar hides or appears, the system does not need to resize your layout and the
- transition is seamless.</p>
-
- <p>To enable overlay mode for the action bar, you need to create a custom theme that
- extends an existing theme with an action bar and set the
- {@code android:windowActionBarOverlay} attribute
- to {@code true}. For more discussion of this topic, see
- <a href="{@docRoot}training/basics/actionbar/overlaying.html#EnableOverlay">
- Overlaying the Action Bar</a> in the <a href="{@docRoot}training/basics/actionbar/index.html">
- Adding the Action Bar</a> class.</p>
-
-
-<p>Then use
-{@link android.view.View#SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN},
-as described above,
-to set your activity layout to use the same screen area that's available when you've enabled
-{@link android.view.View#SYSTEM_UI_FLAG_FULLSCREEN}.
-
-When you want to hide the system UI, use
-{@link android.view.View#SYSTEM_UI_FLAG_FULLSCREEN}.
-This also hides the action bar (because {@code windowActionBarOverlay=”true”)} and does
-so with a coordinated animation when both hiding and showing the two.</p>
diff --git a/docs/html/wear/_book.yaml b/docs/html/wear/_book.yaml
new file mode 100644
index 0000000..35b9e2e
--- /dev/null
+++ b/docs/html/wear/_book.yaml
@@ -0,0 +1,46 @@
+toc:
+- title: Get Started
+ path: /wear/preview/start.html
+
+- title: UI Overview
+ path: /wear/design/user-interface.html
+
+- title: Design Principles
+ path: /wear/design/index.html
+
+- title: Creating Notifications for Android Wear
+ path: /wear/notifications/creating.html
+
+- title: Receiving Voice Input from a Notification
+ path: /wear/notifications/remote-input.html
+
+- title: Adding Pages to a Notification
+ path: /wear/notifications/pages.html
+
+- title: Stacking Notifications
+ path: /wear/notifications/stacks.html
+
+- title: Notification Reference
+ path: /reference/android/preview/support/package-summary.html
+ section:
+ - title: android.preview.support.v4.app
+ section:
+ - title: NotificationManagerCompat
+ path: /reference/android/preview/support/v4/app/NotificationManagerCompat.html
+ - title: android.preview.support.wearable.notifications
+ section:
+ - title: RemoteInput
+ path: /reference/android/preview/support/wearable/notifications/RemoteInput.html
+ - title: RemoteInput.Builder
+ path: /reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html
+ - title: WearableNotifications
+ path: /reference/android/preview/support/wearable/notifications/WearableNotifications.html
+ - title: WearableNotifications.Action
+ path: /reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html
+ - title: WearableNotifications.Action.Builder
+ path: /reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html
+ - title: WearableNotifications.Builder
+ path: /reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html
+
+- title: License Agreement
+ path: /wear/license.html
diff --git a/docs/image_sources/distribute/stories/concrete-bowling-screenshot.png b/docs/image_sources/distribute/stories/concrete-bowling-screenshot.png
new file mode 100644
index 0000000..0f76df6
--- /dev/null
+++ b/docs/image_sources/distribute/stories/concrete-bowling-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/doctor-who-legacy-screenshot.png b/docs/image_sources/distribute/stories/doctor-who-legacy-screenshot.png
new file mode 100644
index 0000000..556bfcd
--- /dev/null
+++ b/docs/image_sources/distribute/stories/doctor-who-legacy-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/dots-screenshot.png b/docs/image_sources/distribute/stories/dots-screenshot.png
new file mode 100644
index 0000000..17edb12
--- /dev/null
+++ b/docs/image_sources/distribute/stories/dots-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/gameloft-asphalt8-screenshot.png b/docs/image_sources/distribute/stories/gameloft-asphalt8-screenshot.png
new file mode 100644
index 0000000..2b0c1e3
--- /dev/null
+++ b/docs/image_sources/distribute/stories/gameloft-asphalt8-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/glu-eternity-warriors-screenshot.png b/docs/image_sources/distribute/stories/glu-eternity-warriors-screenshot.png
new file mode 100644
index 0000000..b41e917
--- /dev/null
+++ b/docs/image_sources/distribute/stories/glu-eternity-warriors-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/glu-tap-baseball-screenshot.png b/docs/image_sources/distribute/stories/glu-tap-baseball-screenshot.png
new file mode 100644
index 0000000..df6c8a8
--- /dev/null
+++ b/docs/image_sources/distribute/stories/glu-tap-baseball-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/hotheadgames-firefight-screenshot.png b/docs/image_sources/distribute/stories/hotheadgames-firefight-screenshot.png
new file mode 100644
index 0000000..4761715
--- /dev/null
+++ b/docs/image_sources/distribute/stories/hotheadgames-firefight-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/indian-rummy-screenshot.jpg b/docs/image_sources/distribute/stories/indian-rummy-screenshot.jpg
new file mode 100644
index 0000000..61943fc
--- /dev/null
+++ b/docs/image_sources/distribute/stories/indian-rummy-screenshot.jpg
Binary files differ
diff --git a/docs/image_sources/distribute/stories/intuit-mint-screenshot.png b/docs/image_sources/distribute/stories/intuit-mint-screenshot.png
new file mode 100644
index 0000000..39b8f11
--- /dev/null
+++ b/docs/image_sources/distribute/stories/intuit-mint-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/kongregate-adv-cap-screenshot.png b/docs/image_sources/distribute/stories/kongregate-adv-cap-screenshot.png
new file mode 100644
index 0000000..cff67dc
--- /dev/null
+++ b/docs/image_sources/distribute/stories/kongregate-adv-cap-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/kongregate-global-assault-screenshot.png b/docs/image_sources/distribute/stories/kongregate-global-assault-screenshot.png
new file mode 100644
index 0000000..d0709a3
--- /dev/null
+++ b/docs/image_sources/distribute/stories/kongregate-global-assault-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/leos-fortune-screenshot.png b/docs/image_sources/distribute/stories/leos-fortune-screenshot.png
new file mode 100644
index 0000000..d67c9af
--- /dev/null
+++ b/docs/image_sources/distribute/stories/leos-fortune-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/noodlecake-super-stickman-screenshot.png b/docs/image_sources/distribute/stories/noodlecake-super-stickman-screenshot.png
new file mode 100644
index 0000000..c1e8824
--- /dev/null
+++ b/docs/image_sources/distribute/stories/noodlecake-super-stickman-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/rememberthemilk-screenshot.png b/docs/image_sources/distribute/stories/rememberthemilk-screenshot.png
new file mode 100644
index 0000000..25d0391
--- /dev/null
+++ b/docs/image_sources/distribute/stories/rememberthemilk-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/rvappstudios-zombie-screenshot.jpg b/docs/image_sources/distribute/stories/rvappstudios-zombie-screenshot.jpg
new file mode 100644
index 0000000..e2bf6b5
--- /dev/null
+++ b/docs/image_sources/distribute/stories/rvappstudios-zombie-screenshot.jpg
Binary files differ
diff --git a/docs/image_sources/distribute/stories/sayhichat-screenshot.jpg b/docs/image_sources/distribute/stories/sayhichat-screenshot.jpg
new file mode 100644
index 0000000..b93e983
--- /dev/null
+++ b/docs/image_sources/distribute/stories/sayhichat-screenshot.jpg
Binary files differ
diff --git a/docs/image_sources/distribute/stories/tinyvillage-screenshot.png b/docs/image_sources/distribute/stories/tinyvillage-screenshot.png
new file mode 100644
index 0000000..51948b9
--- /dev/null
+++ b/docs/image_sources/distribute/stories/tinyvillage-screenshot.png
Binary files differ
diff --git a/docs/image_sources/distribute/stories/two-dots-screenshot.png b/docs/image_sources/distribute/stories/two-dots-screenshot.png
new file mode 100644
index 0000000..2e34a68
--- /dev/null
+++ b/docs/image_sources/distribute/stories/two-dots-screenshot.png
Binary files differ