diff options
-rw-r--r-- | core/java/android/provider/Settings.java | 11 | ||||
-rw-r--r-- | docs/html/about/versions/jelly-bean.jd | 6 | ||||
-rw-r--r-- | docs/html/about/versions/kitkat.jd | 5 | ||||
-rw-r--r-- | docs/html/distribute/distribute_toc.cs | 1 | ||||
-rw-r--r-- | docs/html/distribute/googleplay/publish/localizing.jd | 24 | ||||
-rw-r--r-- | docs/html/distribute/googleplay/spotlight/localization.jd | 328 | ||||
-rw-r--r-- | docs/html/guide/topics/connectivity/nfc/hce.jd | 28 | ||||
-rw-r--r-- | docs/html/guide/topics/resources/localization.jd | 12 | ||||
-rw-r--r-- | docs/html/images/distribute/hichat-n5-port.jpg | bin | 0 -> 78475 bytes | |||
-rw-r--r-- | docs/html/images/distribute/indian-rummy-n4-land.jpg | bin | 0 -> 104355 bytes | |||
-rw-r--r-- | docs/html/images/distribute/zombie-ragdoll-n5-land.jpg | bin | 0 -> 96833 bytes | |||
-rw-r--r-- | docs/html/sdk/installing/installing-adt.jd | 17 | ||||
-rw-r--r-- | docs/html/tools/debugging/debugging-memory.jd | 23 |
13 files changed, 399 insertions, 56 deletions
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index 7f24539..04f3f0a 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -3252,9 +3252,14 @@ public final class Settings { /** * A 64-bit number (as a hex string) that is randomly - * generated on the device's first boot and should remain - * constant for the lifetime of the device. (The value may - * change if a factory reset is performed on the device.) + * generated when the user first sets up the device and should remain + * constant for the lifetime of the user's device. The value may + * change if a factory reset is performed on the device. + * <p class="note"><strong>Note:</strong> When a device has <a + * href="{@docRoot}about/versions/android-4.2.html#MultipleUsers">multiple users</a> + * (available on certain devices running Android 4.2 or higher), each user appears as a + * completely separate device, so the {@code ANDROID_ID} value is unique to each + * user.</p> */ public static final String ANDROID_ID = "android_id"; diff --git a/docs/html/about/versions/jelly-bean.jd b/docs/html/about/versions/jelly-bean.jd index c7d1941..c6702b0 100644 --- a/docs/html/about/versions/jelly-bean.jd +++ b/docs/html/about/versions/jelly-bean.jd @@ -438,9 +438,9 @@ SetupWizard, Clock, Downloads, and more.</p> <p>Android 4.3 also includes new utilities and APIs for creating better RTL strings and testing your localized UIs. A new <strong>BidiFormatter</strong> -provides a set of simple APIs for wrapping Unicode strings so that you can -fine-tune your text rendering in RTL scripts. To let you use this utility more -broadly in your apps, the BidiFormatter APIs are also now available for earlier +class provides a simple API for wrapping Unicode strings, so that RTL-script +data is displayed as intended in LTR-locale messages and vice-versa. To let you use this utility more +broadly in your apps, the BidiFormatter API is also now available for earlier platform versions through the Support Package in the Android SDK. </p> <p>To assist you with managing date formatting across locales, Android 4.3 diff --git a/docs/html/about/versions/kitkat.jd b/docs/html/about/versions/kitkat.jd index 4c80d4e..5e442ec 100644 --- a/docs/html/about/versions/kitkat.jd +++ b/docs/html/about/versions/kitkat.jd @@ -1006,8 +1006,9 @@ window.onhashchange = function () { <h4 id="44-pseudolocale-rtl">Force RTL Layout</h4> <p> - To make it easier to test and debug your layouts, Android includes a new - developer option to force RTL layout direction in all apps. + To make it easier to test and debug layout mirroring issues without switching + to an RTL language, Android includes a new developer option to force RTL layout + direction in all apps. </p> <p> diff --git a/docs/html/distribute/distribute_toc.cs b/docs/html/distribute/distribute_toc.cs index ecdf2a8..b9a0eec 100644 --- a/docs/html/distribute/distribute_toc.cs +++ b/docs/html/distribute/distribute_toc.cs @@ -81,6 +81,7 @@ <ul> <li><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/tablets.html">Tablet Stories</a></li> <li><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/games.html">Game Stories</a></li> + <li><a href="<?cs var:toroot ?>distribute/googleplay/spotlight/localization.html">Localization Stories</a></li> </ul> </li> diff --git a/docs/html/distribute/googleplay/publish/localizing.jd b/docs/html/distribute/googleplay/publish/localizing.jd index 7788ce1..1a5f3c1 100644 --- a/docs/html/distribute/googleplay/publish/localizing.jd +++ b/docs/html/distribute/googleplay/publish/localizing.jd @@ -372,24 +372,24 @@ properly.</p> <p>After the translations are merged back into your app, start <a href="#testing">testing the localized app</a>.</p> +<h4 id="gp-trans">Purchase professional translations through Google Play +<br />App Translation Service</h4> + <div class="sidebox-wrapper"> <div class="sidebox"> -<h2>Join the translation pilot</h2> -<p>Google Play is offering translation services as part of a pilot -program. If you're interested, sign up on the APK page in your -Developer Console.</p> +<h2>App Translations in Google Play</h2> -<p>If you join, also try the <a +<p>Hear from developers who have used the Google Play App Translation Service in <a +href="{@docRoot}distribute/googleplay/spotlight/localization.html">Developer +Stories: Localization in Google Play</a>.</p> + +<p>To make it easy to export your app's strings and import +the finished translations into your project, try the <a href="{@docRoot}sdk/installing/installing-adt.html#tmgr"> -ADT Translation Manager Plugin</a>, which makes it easy to upload -your strings to the Developer Console and download translations -right into your project. </div> +ADT Translation Manager Plugin</a>.</div> </div> -<h4 id="gp-trans">Purchase professional translations through the -Developer Console</h4> - -<p>Google Play can help you quickly find and purchase translations of your app. +<p>Google Play App Translation Service can help you quickly find and purchase translations of your app. In the Developer Console, you can browse a list of third-party vendors who are pre-qualified by Google to offer high-quality translation at competitive prices. You can upload the strings you want translated, select the languages you want to diff --git a/docs/html/distribute/googleplay/spotlight/localization.jd b/docs/html/distribute/googleplay/spotlight/localization.jd new file mode 100644 index 0000000..ae5993d --- /dev/null +++ b/docs/html/distribute/googleplay/spotlight/localization.jd @@ -0,0 +1,328 @@ +page.title=Developer Stories: Localization in Google Play +walkthru=0 +header.hide=0 + +@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="//developer.android.com/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="//developer.android.com/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="//developer.android.com/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/guide/topics/connectivity/nfc/hce.jd b/docs/html/guide/topics/connectivity/nfc/hce.jd index 3e6468f..4ef6859 100644 --- a/docs/html/guide/topics/connectivity/nfc/hce.jd +++ b/docs/html/guide/topics/connectivity/nfc/hce.jd @@ -70,7 +70,7 @@ protocol frames to a secure element. Figure 2 illustrates how host-based card em works.</p> <img src="{@docRoot}images/nfc/host-based-card.png" /> -<p class="img-caption"><strong>Figure 2.</strong> NFC card emulation with a secure element.</p> +<p class="img-caption"><strong>Figure 2.</strong> NFC card emulation without a secure element.</p> <h2 id="SupportedProtocols">Supported NFC Cards and Protocols</h2> @@ -288,12 +288,12 @@ enforces that only the Android OS can bind to your service. </p> <pre> <service android:name=".MyHostApduService" android:exported="true" - android:permission="android.permission.BIND_NFC_SERVICE"> + android:permission="android.permission.BIND_NFC_SERVICE"> <intent-filter> <action android:name="android.nfc.cardemulation.action.HOST_APDU_SERVICE"/> </intent-filter> <meta-data android:name="android.nfc.cardemulation.host_apdu_service" - android:resource="@xml/apduservice"/> + android:resource="@xml/apduservice"/> </service> </pre> @@ -306,7 +306,7 @@ below:</p> android:description="@string/servicedesc" android:requireDeviceUnlock="false"> <aid-group android:description="@string/aiddescription" - android:category="other"> + android:category="other"> <aid-filter android:name="F0010203040506"/> <aid-filter android:name="F0394148148100"/> </aid-group> @@ -381,14 +381,14 @@ shown below:</p> <pre> <host-apdu-service xmlns:android="http://schemas.android.com/apk/res/android" - android:description="@string/servicedesc" - android:requireDeviceUnlock="false" - android:apduServiceBanner="@drawable/my_banner"> - <aid-group android:description="@string/aiddescription" - android:category="payment"> - <aid-filter android:name="F0010203040506"/> - <aid-filter android:name="F0394148148100"/> - </aid-group> + android:description="@string/servicedesc" + android:requireDeviceUnlock="false" + android:apduServiceBanner="@drawable/my_banner"> + <aid-group android:description="@string/aiddescription" + android:category="payment"> + <aid-filter android:name="F0010203040506"/> + <aid-filter android:name="F0394148148100"/> + </aid-group> </host-apdu-service> </pre> @@ -478,12 +478,12 @@ almost identical to the declaration of a HCE service. The exceptions are:</p> <pre> <service android:name=".MyOffHostApduService" android:exported="true" - android:permission="android.permission.BIND_NFC_SERVICE"> + android:permission="android.permission.BIND_NFC_SERVICE"> <intent-filter> <action android:name="android.nfc.cardemulation.action.OFF_HOST_APDU_SERVICE"/> </intent-filter> <meta-data android:name="android.nfc.cardemulation.off_host_apdu_ervice" - android:resource="@xml/apduservice"/> + android:resource="@xml/apduservice"/> </service> </pre> </li> diff --git a/docs/html/guide/topics/resources/localization.jd b/docs/html/guide/topics/resources/localization.jd index 55c8dc4..7288aeb 100644 --- a/docs/html/guide/topics/resources/localization.jd +++ b/docs/html/guide/topics/resources/localization.jd @@ -19,7 +19,7 @@ parent.link=index.html <ol>
<li><a href="#resource-switching">Overview: Resource-Switching in Android</a></li>
<li><a href="#using-framework">Using Resources for Localization</a></li>
-<li><a href="#strategies">Localization Strategies</a></li>
+<li><a href="#strategies">Localization Tips</a></li>
<li><a href="#testing">Testing Localized Applications</a></li>
</ol>
@@ -304,7 +304,13 @@ Alternative Resources</a>.</p> For more about this, see <a
href="{@docRoot}guide/topics/resources/accessing-resources.html">Accessing Resources</a>.</p>
-<h2 id="strategies">Localization Strategies</h2>
+<h2 id="checklist">Localization Checklist</h2>
+
+<p>For a complete overview of the process of localizing and distributing an Android application,
+see the <a href="{@docRoot}distribute/googleplay/publish/localizing.html">Localization
+Checklist</a> document.</p>
+
+<h2 id="strategies">Localization Tips</h2>
<h4 id="failing2">Design your application to work in any locale</h4>
@@ -478,6 +484,4 @@ the new locale. </p> portrait orientation and see if the application will run.
-<h2 id="checklist">Localization Checklist</h2>
-<p>For an overview of the process of localizing an Android application, see the <a href="{@docRoot}distribute/googleplay/publish/localizing.html">Localization Checklist</a>.</p>
diff --git a/docs/html/images/distribute/hichat-n5-port.jpg b/docs/html/images/distribute/hichat-n5-port.jpg Binary files differnew file mode 100644 index 0000000..b93e983 --- /dev/null +++ b/docs/html/images/distribute/hichat-n5-port.jpg diff --git a/docs/html/images/distribute/indian-rummy-n4-land.jpg b/docs/html/images/distribute/indian-rummy-n4-land.jpg Binary files differnew file mode 100644 index 0000000..61943fc --- /dev/null +++ b/docs/html/images/distribute/indian-rummy-n4-land.jpg diff --git a/docs/html/images/distribute/zombie-ragdoll-n5-land.jpg b/docs/html/images/distribute/zombie-ragdoll-n5-land.jpg Binary files differnew file mode 100644 index 0000000..e2bf6b5 --- /dev/null +++ b/docs/html/images/distribute/zombie-ragdoll-n5-land.jpg diff --git a/docs/html/sdk/installing/installing-adt.jd b/docs/html/sdk/installing/installing-adt.jd index 88fd7df..66c3034 100644 --- a/docs/html/sdk/installing/installing-adt.jd +++ b/docs/html/sdk/installing/installing-adt.jd @@ -74,12 +74,14 @@ To get these packages for your SDK, continue to <div class="sidebox-wrapper"> <div class="sidebox"> -<h2>Join the translation pilot</h2> -<p>Google Play is offering <a -href="{@docRoot}distribute/googleplay/publish/localizing.html#gp-trans"> -translation services</a> as part of a pilot program. If you are interested, -sign up for the pilot program on the APK page in your Developer Console.</p> -</div></div> +<h2>App Translations in Google Play</h2> +<p>Google Play <a href="{@docRoot}distribute/googleplay/publish/localizing.html#gp-trans">App +Translation Service</a> is available in the Developer Console to help you +localize your app for a global user base. You can browse qualified vendors, get +estimates, upload strings for translation, and then import the translations directly +into your app.</p> +</div> +</div> <p>ADT Translation Manager Plugin is an Android SDK Tools plugin that helps you work with strings that you are localizing. It's designed to work @@ -97,7 +99,8 @@ the correct locations under <code>res/values</code>, so that localization works instantly.</p> <p>For more information about translation services in Google Play, see <a -href="{@docRoot}distribute/googleplay/publish/localizing.html#gp-trans">Purchase professional translations through the Developer Console</a>.</p> +href="{@docRoot}distribute/googleplay/publish/localizing.html#gp-trans">Purchase +professional translations through the Developer Console</a>.</p> <p>To install the ADT Translation Manager Plugin follow these steps:</p> diff --git a/docs/html/tools/debugging/debugging-memory.jd b/docs/html/tools/debugging/debugging-memory.jd index 0454293..a7f443c 100644 --- a/docs/html/tools/debugging/debugging-memory.jd +++ b/docs/html/tools/debugging/debugging-memory.jd @@ -181,11 +181,18 @@ Moving that object into a global member is a simple fix that helps improve perfo <h2 id="ViewingAllocations">Viewing Overall Memory Allocations</h2> -<p>For further analysis, you may want to observe how that your app's memory is -divided between different categories, which you can do with the <code>adb meminfo</code> data.</p> +<p>For further analysis, you may want to observe how your app's memory is +divided between different types of RAM allocation with the +following <a href="{@docRoot}tools/help/adb.html">adb</a> command:</p> -<p>When talking about how much RAM your app is using with this data, the key metrics -discussed below are:</p> +<pre class="no-pretty-print"> +adb shell dumpsys meminfo <package_name> +</pre> + +<p>The output lists all of your app's current allocations, measured in kilobytes.</p> + +<p>When inspecting this information, you should be familiar with the +following types of allocation:</p> <dl> <dt>Private (Clean and Dirty) RAM</dt> @@ -210,15 +217,9 @@ determine the actual memory being used by all processes. This means PSS is a goo actual RAM weight of a process and for comparison against the RAM use of other processes and the total available RAM.</p> -<p>You can look at the memory use of your app (measured in kilobytes) with the -following adb command:</p> - -<pre class="no-pretty-print"> -adb shell dumpsys meminfo <package_name> -</pre> <p>For example, below is the the output for Gmail’s process on a tablet device. There is a lot of -information here, but key points for discussion are highlighted in different colors.</p> +information here, but key points for discussion are listed below.</p> <p class="note"><strong>Note:</strong> The information you see may vary slightly from what is shown here, as some details of the output differ across platform versions.</p> |