1page.title=Tablet App Quality Checklist 2@jd:body 3 4<div id="qv-wrapper"><div id="qv"> 5<h2>Checklist</h2> 6<ol> 7 8<li><a href="#core-app-quality">1. Test for Core App Quality</a></li> 9<li><a href="#optimize-layouts">2. Optimize your layouts</a></li> 10<li><a href="#use-extra-space">3. Use the extra screen area</a></li> 11<li><a href="#use-tablet-icons">4. Use assets designed for tablets</a></li> 12<li><a href="#adjust-font-sizes">5. Adjust fonts and touch targets</a></li> 13<li><a href="#adjust-widgets">6. Adjust homescreen widgets</a></li> 14<li><a href="#offer-full-feature-set">7. Offer the app's full feature set</a></li> 15<li><a href="#hardware-requirements">8. Don’t require hardware features</a></li> 16<li><a href="#support-screens">9. Declare tablet screen support</a></li> 17<li><a href="#google-play">10. Follow best practices for publishing in Google Play</a></li> 18 19</ol> 20<h2>Testing</h2> 21<ol> 22<li><a href="#test-environment">Setting Up a Test Environment</a></li> 23</ol> 24</div></div> 25 26 27<p>Before you publish an app on Google Play, it's important to make sure that 28the app meets the basic expectations of tablet users through compelling features 29and an intuitive, well-designed UI. </p> 30 31<p>Tablets are a growing part of the Android installed base that offers new 32opportunities for <a 33href="{@docRoot}distribute/googleplay/spotlight/tablets.html">user engagement 34and monetization</a>. If your app is targeting tablet users, this document helps 35you focus on key aspects of quality, feature set, and UI that can have a 36significant impact on the app's success. Each focus area is given as checklist 37item, with each one comprising several smaller tasks or best practices.</p> 38 39<p>Although the checklist tasks below are numbered for convenience, 40you can handle them in any order and address them to the extent that you feel 41is right for your app. In the interest of delivering the best possible product 42to your customers, follow the checklist recommendations 43to the greatest extent possible. </p> 44 45<p>As you move through the checklist, you'll find links to support resources 46that can help you address the topics raised in each task.</p> 47 48 49<h2 id="core-app-quality">1. Test for Core App Quality</h2> 50 51<p>The first step in delivering a great tablet app experience is making sure 52that it meets the <em>core app 53quality criteria</em> for all of the devices and form factors that the app is 54targeting. For complete information, see the <a 55href="{@docRoot}distribute/googleplay/quality/core.html">Core App Quality Checklist</a>. 56</p> 57 58<p>To assess the quality of your app on tablets — both for core app quality 59and tablet app quality — you need to set up a suitable 60hardware or emulator environment for testing. For more information, 61see <a href="#test-environment">Setting Up a Test Environment</a>.</p> 62 63<table> 64<tr> 65<td><p>Related resources:</p> 66<ul style="margin-top:-.5em;"> 67<li><strong><a 68href="{@docRoot}distribute/googleplay/quality/core.html">Core App Quality 69Guidelines</a></strong> — A set of core quality criteria that all Android 70apps should meet on all targeted devices.</li> 71</ul> 72</td> 73</tr> 74</table> 75 76<h2 id="optimize-layouts">2. Optimize your layouts for larger screens</h2> 77 78<p>Android makes it easy to develop an app that runs well on a wide range of 79device screen sizes and form factors. This broad compatibility works in your 80favor, since it helps you design a single app that you can distribute widely to 81all of your targeted devices. However, to give your users the best possible 82experience on each screen configuration — in particular on tablets 83— you need to optimize your layouts and other UI components for each 84targeted screen configuration. On tablets, optimizing your UI lets you take 85full advantage of the additional screen available, such as to offer new features, 86present new content, or enhance the experience in other ways to deepen user 87engagement.</p> 88 89<p>If you developed your app for handsets and now want to distribute it to 90tablets, you can start by making minor adjustments to your layouts, fonts, and 91spacing. In some cases — such as for 7-inch tablets or for a game with 92large canvas — these adjustments may be all 93you need to make your app look great. In other cases, such as for larger 94tablets, you can redesign parts of your UI to replace "stretched UI" with an 95efficient multipane UI, easier navigation, and additional content. </p> 96 97<p>Here are some suggestions:</p> 98 99<div style="width:390px;float:right;margin:1.5em;margin-top:0em;"> 100<img src="{@docRoot}images/training/app-navigation-multiple-sizes-multipane-bad.png" style="width:390px;padding:4px;margin-bottom:0em;"> 101<p class="image-caption" style="padding:0em .5em .5em 2em"><span 102style="font-weight:500;">Get rid of "stretched" UI</span>: On tablets, single-pane layouts lead to awkward whitespace and excessive line lengths. Use padding to reduce the width of UI elements and consider using multi-pane layouts.</p> 103</div> 104 105<ul> 106<li>Provide custom layouts as needed for <code>large</code> and 107<code>xlarge</code> screens. You can also provide layouts that are loaded based 108on the screen's <a href="{@docRoot}guide/practices/screens_support.html#NewQualifiers">shortest 109dimension</a> or the <a href="{@docRoot}guide/practices/screens_support.html#NewQualifiers">minimum 110available width and height</a>. </li> 111<li>At a minimum, customize dimensions such as font sizes, margins, spacing for 112larger screens, to improve use of space and content legibility. </li> 113<li>Adjust positioning of UI controls so that they are easily accessible to 114users when holding a tablet, such as toward the sides when in 115landscape orientation.</li> 116<li>Padding of UI elements should normally be larger on tablets than on handsets. A 117<a href="{@docRoot}design/style/metrics-grids.html#48dp-rhythm">48dp rhythm</a> (and a 16dp 118grid) is recommended.</li> 119<li>Adequately pad text content so that it is not aligned directly along screen edges. 120Use a minimum <code>16dp</code> padding around content near screen edges.</li> 121</ul> 122 123<p>In particular, make sure that your layouts do not appear "stretched" 124across the screen:</p> 125 126<ul> 127<li>Lines of text should not be excessively long — optimize for a maximum 128100 characters per line, with best results between 50 and 75.</li> 129<li>ListViews and menus should not use the full screen width.</li> 130<li>Use padding to manage the widths of onscreen elements or switch to a 131multi-pane UI for tablets (see next section).</li> 132</ul> 133 134<table> 135<tr> 136<td><p>Related resources:</p> 137<ul style="margin-top:-.5em;"> 138<li><strong><a href="http://developer.android.com/design/style/metrics-grids.html">Metrics and Grids 139</a></strong> — Android Design document that explains ....</li> 140<li><strong><a href="http://developer.android.com/design/style/devices-displays.html">Devices and Displays 141</a></strong> — Android Design document that explains ....</li> 142<li><strong><a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a></strong> — Developer documentation that explains the details of managing UI for best display on multiple screen sizes.</li> 143<li><strong><a href="http://developer.android.com/guide/practices/screens_support.html#ConfigurationExamples">Configuration examples 144</a></strong> — Examples of how to declare layouts and other resources for specific screen sizes.</a></li> 145</ul> 146</td> 147</tr> 148</table> 149 150 151<h2 id="use-extra-space">3. Take advantage of extra screen area available on tablets</h2> 152 153<div style="width:290px;float:right;margin:1.5em;margin-bottom:0;margin-top:0;"> 154<img src="{@docRoot}images/training/app-navigation-multiple-sizes-multipane-good.png" style="width:280px;padding:4px;margin-bottom:0em;"> 155<p class="image-caption" style="padding:0em .5em .5em 1.5em"><span 156style="font-weight:500;">Multi-pane layouts</span> result in a better visual balance on tablet screens, while offering more utility and legibility.</p> 157</div> 158 159<p>Tablet screens provide significantly more screen real estate to your app, 160especially when in landscape orientation. In particular, 10-inch tablets offer a 161greatly expanded area, but even 7-inch tablets give you more space for 162displaying content and engaging users. </p> 163 164<p>As you consider the UI of your app when running on tablets, make sure that it 165is taking full advantage of extra screen area available on tablets. Here are 166some suggestions:</p> 167 168<ul> 169<li>Look for opportunities to include additional content or use an alternative 170treatment of existing content.</li> 171<li>Use <a href="{@docRoot}design/patterns/multi-pane-layouts.html">multi-pane 172layouts</a> on tablet screens to combine single views into a compound view. This 173lets you use the additional screen area more efficiently and makes it easier for 174users to navigate your app. </li> 175<li>Plan how you want the panels of your compound views to reorganize when 176screen orientation changes.</li> 177 178 179 180<div style="width:490px;margin:1.5em auto 1.5em 0;"> 181 182<div style=""> 183<img src="{@docRoot}images/ui-ex-single-panes.png" style="width:490px;padding:4px;margin-bottom:0em;" align="middle"> 184<img src="{@docRoot}images/ui-ex-multi-pane.png" style="width:490px;padding:4px;margin-bottom:0em;"> 185<p class="image-caption" style="padding:.5em"><span 186style="font-weight:500;">Compound views</span> combine several single views from a handset UI <em>(above)</em> into a richer, more efficient UI for tablets <em>(below)</em>. </p> 187</div> 188</div> 189 190<li>While a single screen is implemented as an {@link android.app.Activity} 191subclass, consider implementing individual content panels as {@link 192android.app.Fragment} subclasses. This lets you maximize code reuse across 193different form factors and across screens that share content.</li> 194<li>Decide on which screen sizes you'll use a multi-pane UI, then provide the 195different layouts in the appropriate screen size buckets (such as 196<code>large</code>/<code>xlarge</code>) or minimum screen widths (such as 197<code>sw600dp</code>/<code>sw720</code>).</li> 198</ul> 199 200<table> 201<tr> 202<td><p>Related resources:</p> 203<ul style="margin-top:-.5em;"> 204<li><strong><a href="{@docRoot}design/patterns/multi-pane-layouts.html">Multi-pane Layouts</a></strong> — Android Design guide for using multi-pane UI, including examples of how to flatten navigation and integrate more content into your tablet UI.</li> 205<li><strong><a href="{@docRoot}training/design-navigation/multiple-sizes.html">Planning for Multiple Touchscreen Sizes</a></strong> — Android Training class that walks you through the essentials of planning an intuitive, effective navigation for tablets and other devices. </li> 206<li><strong><a href="{@docRoot}training/multiscreen/index.html">Designing for Multiple Screens</a></strong> — Android Training class that walks you through the essentials of planning an intuitive, effective navigation for tablets and other devices. </li> 207</ul> 208</td> 209</tr> 210</table> 211 212 213<h2 id="use-tablet-icons">4. Use Icons and other assets that are designed for tablet screens</h2> 214 215<p>So that your app looks its best, make sure to use icons and other bitmap 216assets that are created specifically for the densities used by tablet screens. 217Specifically, you should create sets of alternative bitmap drawables for each 218density in the range commonly supported by tablets.</p> 219 220<p class="table-caption"><strong>Table 1</strong>. Raw asset sizes for icon types.<table> 221<tr> 222<th>Density </th> 223<th colspa>Launcher</th> 224<th>Action Bar</th> 225<th>Small/Contextual</th> 226<th>Notification</th> 227</tr> 228<tr> 229<td><code>mdpi</code></td> 230<td>48x48px</td> 231<td>32x32px</td> 232<td>16x16px</td> 233<td>24x24px</td> 234</tr> 235<tr> 236<td><code>hdpi</code></td> 237<td>72x72px</td> 238<td>48x48px</td> 239<td>24x24px</td> 240<td>36x36px</td> 241</tr> 242<tr> 243<td><code>tvdpi</code></td> 244<td><em>(use hdpi)</em></td> 245<td><em>(use hdpi)</em></td> 246<td><em>(use hdpi)</em></td> 247<td><em>(use hdpi)</em></td> 248</tr> 249<tr> 250<td><code>xhdpi</code></td> 251<td>96x96px</td> 252<td>64x64px</td> 253<td>32x32px</td> 254<td>48x48px</td> 255</tr> 256 257</table> 258 259<p>Other points to consider: </p> 260 261<ul> 262<li>Icons in the action bar, notifications, and launcher should be designed 263according to the icon design guidelines and have the same physical size on 264tablets as on phones.</li> 265<li>Use density-specific <a 266href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources"> 267resource qualifiers</a> to ensure that the proper set of alternative resources 268gets loaded.</li> 269</ul> 270 271<table> 272<tr> 273<td><p>Related resources:</p> 274<ul style="margin-top:-.5em;"> 275<li><strong><a href="{@docRoot}design/style/iconography.html">Iconography</a></strong> — Android Design document that shows how to use various types of icons.</li> 276<li><strong><a href="{@docRoot}guide/topics/resources/providing-resources.html">Providing Resources</a></strong> — Developer documentation on how to provide sets of layouts and drawable resources for specific ranges of device screens. </li> 277<li><strong><a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a></strong> — API Guide documentation that explains the details of managing UI for best display on multiple screen sizes.</li> 278<li><strong><a href="{@docRoot}training/basics/supporting-devices/screens.html">Supporting Different Screens</a></strong> — Android Training class that takes you through the process of optimizing the user experience for different screen sizes and densities.</li> 279</ul> 280</td> 281</tr> 282</table> 283 284 285<h2 id="adjust-font-sizes">5. Adjust font sizes and touch targets for tablet screens</h2> 286 287<p>To make sure your app is easy to use on tablets, take some time to adjust the 288font sizes and touch targets in your tablet UI, for all of the screen 289configurations you are targeting. You can adjust font sizes through <a 290href="{@docRoot}guide/topics/ui/themes.html">styleable attributes</a> or <a 291href="{@docRoot}guide/topics/resources/more-resources.html#Dimension">dimension 292resources</a>, and you can adjust touch targets through layouts and bitmap 293drawables, as discussed above. </p> 294 295<p>Here are some considerations:</p> 296<ul> 297<li>Text should not be excessively large or small on tablet screen sizes and 298densities. Make sure that labels are sized appropriately for the UI elements they 299correspond to, and ensure that there are no improper line breaks in labels, 300titles, and other elements.</li> 301<li>The recommended touch-target size for onscreen elements is 48dp (32dp 302minimum) — some adjustments may be needed in your tablet UI. Read <a 303href="http://developer.android.com/design/style/metrics-grids.html">Metrics and 304Grids 305</a> to learn about implementation strategies to help most of your users. To 306meet the accessibility needs of certain users, it may be appropriate to use 307larger touch targets. </li> 308<li>When possible, for smaller icons, expand the touchable area to more than 30948dp using {@link android.view.TouchDelegate} or just centering the icon within 310the transparent button.</li> 311</ul> 312 313<table> 314<tr> 315<td><p>Related resources:</p> 316<ul style="margin-top:-.5em;"> 317<li><strong><a href="http://developer.android.com/design/style/metrics-grids.html">Metrics and Grids 318</a></strong> — Android Design document that explains how to arrange and size touch targets and other UI elements on the screen.</li> 319<li><strong><a href="{@docRoot}design/style/typography.html">Typography</a></strong> — Android Design document that gives an overview of how to use typography in your apps. </li> 320<li><strong><a href="{@docRoot}guide/practices/screens_support.html">Supporting Multiple Screens</a></strong> — Developer documentation that explains the details of managing UI for best display on multiple screen sizes.</li> 321<li><strong><a href="{@docRoot}training/multiscreen/screendensities.html">Supporting Different Densities</a></strong> — Android Training class that shows you how to provide sets of layouts and drawable resources for specific ranges of device screens. </li> 322</ul> 323</td> 324</tr> 325</table> 326 327 328<h2 id="adjust-widgets">6. Adjust sizes of home screen widgets for tablet screens</h2> 329 330<p>If your app includes a home screen widget, here are a few points to consider 331to ensure a great user experience on tablet screens: </p> 332 333<ul> 334<li>Make sure that the widget's default height and width are set appropriately 335for tablet screens, as well as the minimum and maximum resize height and width. 336</li> 337<li>The widget should be resizable to 420dp or more, to span 5 or more home 338screen rows (if this is a vertical or square widget) or columns (if this is a 339horizontal or square widget). </li> 340<li>Make sure that 9-patch images render correctly.</li> 341<li>Use default system margins.</li> 342<li>Set the app's <code>targetSdkVersion</code> to 14 or higher, if 343possible.</li> 344</ul> 345 346<table> 347<tr> 348<td><p>Related resources:</p> 349<ul style="margin-top:-.5em;"> 350<li><strong><a href="{@docRoot}guide/topics/appwidgets/index.html#MetaData">Adding the AppWidgetProviderInfo Metadata 351</a></strong> — API Guide that explains how to set the height and width dimensions of a widget.</li> 352<li><strong><a href="{@docRoot}guide/practices/ui_guidelines/widget_design.html">App Widget Design Guidelines</a></strong> — API Guide that provides best practices and techniques for designing and managing the size of widgets. </li> 353</ul> 354</td> 355</tr> 356</table> 357 358 359<h2 id="offer-full-feature-set">7. Offer the app's full feature set to tablet users</h2> 360 361<p>Let your tablet users experience the best features of your app. Here are 362some recommendations:</p> 363 364<ul> 365<li>Design your app to offer at least the same set of features on tablets as it does on 366handsets. </li> 367<li>In exceptional cases, your app might omit or replace certain features on 368tablets if they are not supported by the hardware or use-case of most tablets. 369For example: 370<ul> 371<li>If the handset uses telephony features but telephony is not available on the 372current tablet, you can omit or replace the related functionality.</li> 373<li>Many tablets have a GPS sensor, but most users would not normally carry 374their tablets while running. If your phone app provides functionality to let the 375user record a GPS track of their runs while carrying their phones, the app would not need to 376provide that functionality on tablets because the use-case is not 377compelling.</li> 378</ul> 379</li> 380<li>If you will omit a feature or capability from your tablet UI, make sure 381that it is not accessible to users or that it offers “graceful degradation” 382to a replacement feature (also see the section below on hardware features).</li> 383</ul> 384 385 386<h2 id="hardware-requirements">8. Don’t require hardware features that might not be available on tablets</h2> 387 388<p>Handsets and tablets typically offer slightly different hardware support for 389sensors, camera, telephony, and other features. For example, many tablets are 390available in a "Wi-Fi" configuration that does not include telephony support.</p> 391 392<p>To ensure that you can deliver a single APK broadly across the 393your full customer base, make sure that your app does not have built-in 394requirements for hardware features that aren't commonly available on tablets. 395</p> 396 397<ul> 398<li>Your app's manifest should not include <a 399href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a> 400elements for hardware features or capabilities that might not be 401available on tablets, except when they are declared with the 402<code>android:required=”false”</code> attribute. For example, your app should 403not <em>require</em> features such as: 404<ul> 405<li><code>android.hardware.telephony</code></li> 406<li><code>android.hardware.camera</code> (refers to back camera), or</li> 407<li><code>android.hardware.camera.front</code></li> 408</ul> 409</li> 410<li>Similarly, your app manifest should not include any <a 411href="{@docRoot}guide/topics/manifest/permission-element.html"><code><permission></code></a> elements that <a 412href="{@docRoot}guide/topics/manifest/uses-feature-element.html#permissions">imply 413feature requirements</a> that might not be appropriate for tablets, except when 414accompanied by a corresponding <code><uses-feature></code> element 415declared with the <code>android:required=”false”</code> attribute.</li> 416</ul> 417 418<p>In all cases, the app must function normally when the hardware features it 419uses are not available and should offer “graceful degradation” and alternative 420functionality where appropriate. For example, if GPS is not supported on the device, 421your app could let the user set their location manually. The app should do 422run-time checking for the hardware capability that it needs and handle as needed.</p> 423 424<table> 425<tr> 426<td><p>Related resources:</p> 427<ul style="margin-top:-.5em;"> 428<li><strong><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#permissions">Permissions that Imply Feature Requirements</a></strong> — A list of permissions that may cause unwanted filtering if declared in your app's manifest.</li> 429<li><strong><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a></strong> — Description and reference documentation for the <code><uses-feature></code> manifest element.</li> 430<li><strong><a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#testing">Testing the features required by your application</a></strong> — Description of how to determine the actual set of hardware and software requirements (explicit or implied) that your app requires.</li> 431</ul> 432</td> 433</tr> 434</table> 435 436 437<h2 id="support-screens">9. Declare support for tablet screen configurations</h2> 438 439<p>To ensure that you can distribute your app to a broad range of tablets, 440declare all the screen sizes that your app supports in its manifest:</p> 441 442<ul> 443<li>Declare a <a 444href="{@docRoot}guide/topics/manifest/supports-screens-element.html"><code><supports-screens></code></a> element 445with appropriate attributes, as needed.</li> 446<li>If the app declares a <code><compatible-screens></code> element in the 447manifest, the element must include attributes that specify <em>all of the size and 448density combinations for tablet screens</em> that the app supports. Note that, if possible, 449you should avoid using this element in your app.</li> 450</ul> 451 452<table> 453<tr> 454<td><p>Related resources:</p> 455<ul style="margin-top:-.5em;"> 456<li><strong><a href="{@docRoot}guide/topics/manifest/supports-screens-element.html"><code><supports-screens></code></a></strong> 457— Description and reference documentation for the <code><supports-screens></code> 458manifest element.</li> 459<li><strong><a href="{@docRoot}guide/practices/screens_support.html#DeclaringScreenSizeSupport">Declaring Screen Size 460Support</a></strong> — Developer documentation that explains the details of managing UI 461for best display on multiple screen sizes.</li> 462</ul> 463</td> 464</tr> 465</table> 466 467 468<h2 id="google-play">10. Follow best practices for publishing in Google Play</h2> 469 470<ul> 471<li>Publish your app as a single APK for all screen sizes (handsets 472and tablets), with a single Google Play listing: 473 <ul style="margin-top:.25em;"> 474 <li>Easier for users to find your app from search, browsing, or promotions</li> 475 <li>Easier for users to restore your app automatically if they get a new device.</li> 476 <li>Your ratings and download stats are consolidated across all devices.</li> 477 <li>Publishing a tablet app in a second listing can dilute ratings for your brand.</li> 478 </ul> 479</li> 480<li>If necessary, you can alternatively choose to deliver your app using <a 481href="{@docRoot}google/play/publishing/multiple-apks.html">Multiple APK Support</a>, 482although in most cases using a single APK to reach all devices is strongly recommended.</li> 483 484<li>Highlight your app’s tablet capabilities in the product details page: 485 <ul style="margin-top:.25em;"> 486 <li>Add <strong>at least one screenshot taken while the app is running on a 487 tablet</strong>. It's recommended that you add one screenshot of landscape orientation 488 and one of portrait orientation, if possible. These screenshots make it clear to users 489 that your app is designed for tablets and highlight all the effort you've put into designing 490 a great tablet app experience.</li> 491 <li>Mention tablet support in the app description.</li> 492 <li>Include information about tablet support in the app's release notes and update 493 information.</li> 494 <li>In your app's promo video, add shots of your app running on a tablet.</li> 495 </ul> 496</li> 497<li>Make sure you are distributing to tablet devices. Check the app's Supported Devices 498list in the <a href="https://play.google.com/apps/publish/">Developer Console</a> 499to make sure your app is not filtered from tablet devices that you want to target.</li> 500 501<li>Let tablet users know about your app! Plan a marketing or advertising campaign that 502highlights the use of your app on tablets.</li> 503</ul> 504 505<table> 506<tr> 507<td><p>Related resources:</p> 508<ul style="margin-top:-.5em;"> 509<li><strong><a href="https://play.google.com/apps/publish/">Publishing Checklist</a></strong> — Recommendations on how to prepare your app for publishing, test it, and launch successfully on Google Play.</li> 510<li><strong><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></strong> — The tools console for publishing your app to Android users.</li> 511</ul> 512</td> 513</tr> 514</table> 515 516<h2 id="test-environment">Setting Up a Test Environment for Tablets</h2> 517 518<p>To assess the quality of your app on tablets — both for core app quality 519and tablet app quality — you need to set up a suitable 520hardware or emulator environment for testing. </p> 521 522<p>The ideal test environment would 523include a small number of actual hardware devices that represent key form 524factors and hardware/software combinations currently available to consumers. 525It's not necessary to test on <em>every</em> device that's on the market — 526rather, you should focus on a small number of representative devices, even using 527one or two devices per form factor. The table below provides an overview of 528devices you could use for testing.</p> 529 530<p>If you are not able to obtain actual hardware devices for testing, you should 531<a href="{@docRoot}tools/devices/index.html">set up emulated devices (AVDs)</a> 532to represent the most common form factors and 533hardware/software combinations. See the table below for suggestions on the emulator 534configurations to use. </p> 535 536<p>To go beyond basic testing, you can add more devices, more form factors, or 537new hardware/software combinations to your test environment. For example, you 538could include mid-size tablets, tablets with more or fewer hardware/software 539features, and so on. You can also increase the number or complexity of tests 540and quality criteria. </p> 541 542<p class="table-caption"><strong>Table 1</strong>. A typical tablet test environment might 543include one or two devices from each row in the table below, with one of the 544listed chipsets, platform versions, and hardware feature configurations.</p> 545 546<table> 547<tr> 548<th>Type</th> 549<th>Size</th> 550<th>Density</th> 551<th>Version</th> 552<th>AVD Skin</th> 553</tr> 554 555<tr> 556<td>7-inch tablet</td> 557<td><span style="white-space:nowrap"><code>large</code> or</span><br /><code>-sw600</code></td> 558<td><code>hdpi</code>,<br /><code>tvdpi</code></td> 559<td>Android 4.0+</td> 560<td>WXGA800-7in</td> 561</tr> 562<tr> 563<td><span style="white-space:nowrap">10-inch</span> tablet</td> 564<td><span style="white-space:nowrap"><code>xlarge</code> or</span><br /><code>-sw800</code></td> 565<td><code>mdpi</code>,<br /><code>hdpi</code></td> 566<td>Android 3.2+</td> 567<td>WXGA800</td> 568</tr> 569</table>