1 page.title= 2 page.metaDescription= Android, . 3 page.image=/distribute/images/tablet-guidelines-color.jpg 4 Xnonavpage=true 5 6 @jd:body 7 <div id="qv-wrapper"><div id="qv"> 8 <h2> </h2> 9 <ol> 10 <li><a href="#core-app-quality">1. </a></li> 11 <li><a href="#optimize-layouts">2. </a></li> 12 <li><a href="#use-extra-space">3. </a></li> 13 <li><a href="#use-tablet-icons">4. , </a></li> 14 <li><a href="#adjust-font-sizes">5. </a></li> 15 <li><a href="#adjust-widgets">6. </a></li> 16 <li><a href="#offer-full-feature-set">7. </a></li> 17 <li><a href="#android-versions">8. Android</a></li> 18 <li><a href="#hardware-requirements">9. </a></li> 19 <li><a href="#support-screens">10. </a></li> 20 <li><a href="#google-play">11. </a></li> 21 <li><a href="#google-play-best-practices">12. Google Play</a></li> 22 23 </ol> 24 <h2></h2> 25 <ol> 26 <li><a href="#test-environment"> </a></li> 27 </ol> 28 </div></div> 29 30 <div class="todp-right-float" style="padding-right:0;margin-bottom:1em;"> 31 <img src="{@docRoot}distribute/images/tablet-guidelines-color.jpg" style="width:480px;"> 32 </div> 33 34 <p> 35 Android, 36 <a href="{@docRoot}distribute/stories/tablets.html"> 37 </a>. 38 , 39 , . 40 </p> 41 42 <p> 43 , . 44 , 45 , , 46 47 . 48 </p> 49 50 <p> 51 , 52 . 53 </p> 54 55 <div class="headerLine"><h2 id="core-app-quality">1. </h2></div> 56 57 <p> 58 <em> </em> 59 -, . . <a href="{@docRoot}distribute/essentials/quality/core.html"> </a>. 60 </p> 61 62 <p> 63 , , : 64 </p> 65 66 <ul> 67 <li><a href="#android-versions"> Android;</a></li> 68 <li><a href="#hardware-requirements"> ;</a></li> 69 <li><a href="#support-screens"> ;</a></li> 70 <li><a href="#use-extra-space"> ;</a></li> 71 <li><a href="#google-play"> Google Play .</a></li> 72 </ul> 73 74 <p> Google Play, , 75 , 76 <a href="#google-play-optimization-tips"> 77 </a>.</p> 78 79 80 <div class="headerLine"> 81 <h2 id="optimize-layouts">2. </h2></div> 82 83 <p> 84 Android , 85 - . 86 , , 87 . , 88 — — 89 90 . 91 , , 92 , , , 93 . 94 </p> 95 96 <p> 97 , 98 , 99 , . — , 7- , 100 — , 101 . , , , 102 , " " 103 , . 104 </p> 105 106 107 <div style="width:500px;margin:1.5em;margin-top:-16px;"> 108 <img src="{@docRoot}images/training/app-navigation-multiple-sizes-multipane-bad.png" style="padding:4px;margin-bottom:0em;"> 109 <p class="img-caption"><span 110 style="font-weight:500;"> "" </span>: 111 . , 112 , .</p> 113 </div> 114 115 <p> .</p> 116 117 118 <ul> 119 <li> <code>large</code> 120 <code>xlarge</code>. , 121 : <a href="{@docRoot}guide/practices/screens_support.html#NewQualifiers"> 122 </a> <a href="{@docRoot}guide/practices/screens_support.html#NewQualifiers"> 123 </a>. 124 </li> 125 126 <li> , 127 , , . 128 </li> 129 130 <li> , 131 , , 132 . 133 </li> 134 135 <li> , 136 . <a href="{@docRoot}design/style/metrics-grids.html#48dp-rhythm"> 137 48 </a> ( 16 ). 138 </li> 139 140 <li> , 141 . <code>16dp</code> 142 (16 ). 143 </li> 144 </ul> 145 146 <p> , "" 147 .</p> 148 149 <ul> 150 <li> — , 151 100 , 50-75 .</li> 152 <li> ListView .</li> 153 <li> 154 (. ).</li> 155 </ul> 156 157 <h3 class="rel-resources clearfloat"> </h3> 158 159 <div class="resource-widget resource-flow-layout col-13" 160 data-query="collection:distribute/essentials/tabletguidelines/optimize" 161 data-sortOrder="-timestamp" 162 data-cardSizes="6x3" 163 data-maxResults="6"></div> 164 165 166 <div class="headerLine"><h2 id="use-extra-space">3. </h2></div> 167 168 <div style="width:340px;float:right;margin:1.5em;margin-bottom:0;margin-top:0;"> 169 <img src="{@docRoot}images/training/app-navigation-multiple-sizes-multipane-good.png" style="padding:4px;margin-bottom:0em;"> 170 <p class="img-caption"><span 171 style="font-weight:500;"> </span> , 172 .</p> 173 </div> 174 175 <p> 176 , . 10- , 7- 177 178 . </p> 179 180 <p> , , 181 . 182 .</p> 183 184 <ul> 185 <li> : 186 .</li> 187 <li> <a href="{@docRoot}design/patterns/multi-pane-layouts.html"> </a>, 188 . 189 190 . </li> 191 <li> 192 .</li> 193 194 <div style="width:490px;margin:1.5em auto 1.5em 0;"> 195 <div style=""> 196 <img src="{@docRoot}images/ui-ex-single-panes.png" style="width:490px;padding:4px;margin-bottom:0em;" align="middle"> 197 <img src="{@docRoot}images/ui-ex-multi-pane.png" style="width:490px;padding:4px;margin-bottom:0em;"> 198 <p class="image-caption" style="padding:.5em"><span 199 style="font-weight:500;"> </span> 200 <em>(. )</em> 201 <em>(. )</em>. </p> 202 </div> 203 </div> 204 205 <li> {@link android.app.Activity}, 206 {@link 207 android.app.Fragment}. 208 , 209 - .</li> 210 <li> , 211 , (, 212 <code>large</code>/<code>xlarge</code>) (, 213 <code>sw600dp</code>/<code>sw720</code>).</li> 214 </ul> 215 216 <h3 class="rel-resources clearfloat"> </h3> 217 218 <div class="resource-widget resource-flow-layout col-13" 219 data-query="collection:distribute/essentials/tabletguidelines/extrascreen" 220 data-sortOrder="-timestamp" 221 data-cardSizes="6x3,6x3,6x3" 222 data-maxResults="6"></div> 223 224 <div class="headerLine"><h2 id="use-tablet-icons">4. , </h2></div> 225 226 <div><img src="{@docRoot}design/media/devices_displays_density@2x.png"></div> 227 228 <p> , 229 , . , 230 , 231 <a href="{@docRoot}design/style/iconography.html"> </a>, , 232 233 .</p> 234 235 <p class="table-caption"><strong>1.</strong> .<table> 236 <tr> 237 <th></th> 238 <th> </th> 239 <th> </th> 240 <th>/ </th> 241 <th></th> 242 </tr> 243 <tr> 244 <td><code>mdpi</code></td> 245 <td>48x48 .</td> 246 <td>32x32 .</td> 247 <td>16x16 .</td> 248 <td>24x24 .</td> 249 </tr> 250 <tr> 251 <td><code>hdpi</code></td> 252 <td>72x72 .</td> 253 <td>48x48 .</td> 254 <td>24x24 .</td> 255 <td>36x36 .</td> 256 </tr> 257 <tr> 258 <td><code>tvdpi</code></td> 259 <td><em>( hdpi)</em></td> 260 <td><em>( hdpi)</em></td> 261 <td><em>( hdpi)</em></td> 262 <td><em>( hdpi)</em></td> 263 </tr> 264 <tr> 265 <td><code>xhdpi</code></td> 266 <td>96x96 .</td> 267 <td>64x64 .</td> 268 <td>32x32 .</td> 269 <td>48x48 .</td> 270 </tr> 271 <tr> 272 <td><code>xxhdpi</code></td> 273 <td>144x144 .</td> 274 <td>96x96 .</td> 275 <td>48x48 .</td> 276 <td>72x72 .</td> 277 </tr> 278 279 </table> 280 281 <p> 282 , , 283 <strong> </strong> , 284 . 285 </p> 286 <ul> 287 <li><code>hdpi</code></li> 288 <li><code>xhdpi</code></li> 289 <li><code>xxhdpi</code></li> 290 </ul> 291 292 <p> .</p> 293 294 <ul> 295 <li> , .</li> 296 <li> <a href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources"> 297 </a>, .</li> 298 <li> , 299 " " , , 300 . , {@code xhdpi}, 301 {@code xxhdpi}.</li> 302 </ul> 303 304 <h3 class="rel-resources clearfloat"> </h3> 305 306 <div class="resource-widget resource-flow-layout col-13" 307 data-query="collection:distribute/essentials/tabletguidelines/assets" 308 data-sortOrder="-timestamp" 309 data-cardSizes="9x3" 310 data-maxResults="6"></div> 311 312 <div class="headerLine"><h2 id="adjust-font-sizes">5. 313 </h2></div> 314 315 <p> , 316 317 . <a href="{@docRoot}guide/topics/ui/themes.html"> </a> <a href="{@docRoot}guide/topics/resources/more-resources.html#Dimension"> 318 </a>, 319 , . </p> 320 321 <p> .</p> 322 <ul> 323 <li> 324 , . , 325 , ; , 326 , .</li> 327 <li> 48 328 ( 32 ) — . 329 . , , 330 <a href="{@docRoot}design/style/metrics-grids.html"> </a>. 331 , 332 . </li> 333 <li>, , , 334 48 , {@link android.view.TouchDelegate}, 335 .</li> 336 </ul> 337 338 <h3 class="rel-resources clearfloat"> </h3> 339 340 <div class="resource-widget resource-flow-layout col-13" 341 data-query="collection:distribute/essentials/tabletguidelines/fonts" 342 data-sortOrder="-timestamp" 343 data-cardSizes="9x3,9x3,6x3,6x3,6x3" 344 data-maxResults="6"></div> 345 346 <div class="headerLine"><h2 id="adjust-widgets">6. </h2></div> 347 348 <p> , 349 , , . </p> 350 351 <ul> 352 <li> , 353 , . 354 </li> 355 <li> 420 , 356 5 ( ) 357 ( ). </li> 358 <li>, 9-Patch .</li> 359 <li> .</li> 360 <li> <code>targetSdkVersion</code> 14 , 361 .</li> 362 </ul> 363 364 <h3 class="rel-resources clearfloat"> </h3> 365 366 <div class="resource-widget resource-flow-layout col-13" 367 data-query="collection:distribute/essentials/tabletguidelines/widgets" 368 data-sortOrder="-timestamp" 369 data-cardSizes="6x3" 370 data-maxResults="6"></div> 371 372 373 <div class="headerLine"><h2 id="offer-full-feature-set">7. </h2></div> 374 375 <div class="centered-full-image" style="width:600px;margin:1.5em"><img src="{@docRoot}images/gp-tablets-full-feature-set.png" alt="Tablet feature sets"></div> 376 377 <p> 378 . .</p> 379 380 <ul> 381 <li> , 382 , . 383 </li> 384 385 <li> 386 , 387 . : 388 <ul> 389 <li> , , 390 . 391 </li> 392 393 <li> GPS, 394 . 395 GPS , , 396 , 397 . 398 </li> 399 </ul> 400 </li> 401 402 <li> - 403 , , , 404 (. ). 405 </li> 406 </ul> 407 408 <div class="headerLine"><h2 id="android-versions">8. Android</h2></div> 409 410 <p> 411 , , 412 Android . 413 <a href="{@docRoot}about/versions/android-3.0.html">Android 3.0</a> ( API 11). 414 415 , <a href="{@docRoot}about/versions/android-4.0.html">Android 416 4.0</a> 417 </p> 418 419 <p> 420 Android, 421 <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code><uses-sdk></code></a> 422 . Android, 423 <code>targetSdkVersion</code> 424 API. 425 </p> 426 427 <p style="margin-bottom:.5em;"> 428 , <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html"><code><uses-sdk></code></a>, 429 . 430 </p> 431 432 <ol style="list-style-type:lower-alpha;margin-top:0em;"> 433 <li> 434 <code>targetSdkVersion</code> 11 ( 14 435 ). 436 </li> 437 438 <li> 439 , <code>minSdkVersion</code> 11 . 440 </li> 441 442 <li> <code>maxSdkVersion</code>, 443 11 . , , , 444 <code>maxSdkVersion</code> <em> </em>. 445 </li> 446 </ol> 447 448 <h3 class="rel-resources clearfloat"> </h3> 449 450 <div class="resource-widget resource-flow-layout col-13" 451 data-query="collection:distribute/essentials/tabletguidelines/versions" 452 data-sortOrder="-timestamp" 453 data-cardSizes="6x3" 454 data-maxResults="6"></div> 455 456 <div class="headerLine"><h2 id="hardware-requirements">9. </h2></div> 457 458 <p> 459 460 , , . , Wi-Fi, 461 . 462 </p> 463 464 <p> 465 , APK 466 , , 467 , . 468 , , <em> </em>, , 469 . 470 </p> 471 472 <ul> 473 <li> <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a> 474 . , , 475 , : 476 477 <ul> 478 <li><code>android.hardware.telephony</code></li> 479 <li><code>android.hardware.camera</code> ( ), </li> 480 <li><code>android.hardware.camera.front</code></li> 481 </ul></li> 482 483 <li> <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html"><code><uses-feature></code></a> 484 <em></em>, <code>android:required=false</code>. 485 486 487 <p> 488 , , 489 <code>android.hardware.telephony</code>, , 490 , . 491 </p> 492 493 <pre><uses-feature android:name="android.hardware.telephony" android:required="false" /></pre></li> 494 495 <li> , , <a href="{@docRoot}guide/topics/manifest/permission-element.html"><code><permission></code></a>, 496 <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html#permissions"> 497 </a>, . , 498 499 <code><uses-feature></code> 500 <code>android:required=false</code>.</li> 501 </ul> 502 503 504 <p> 505 <em> </em>, 506 . , 507 , " 508 " , . 509 </p> 510 511 <p> 512 , GPS, 513 , 514 . 515 . 516 </p> 517 518 <h3 class="rel-resources clearfloat"> </h3> 519 520 <div class="resource-widget resource-flow-layout col-13" 521 data-query="collection:distribute/essentials/tabletguidelines/hardware" 522 data-sortOrder="-timestamp" 523 data-cardSizes="9x3" 524 data-maxResults="6"></div> 525 526 <div class="headerLine"><h2 id="support-screens">10. </h2></div> 527 528 <p> , 529 .</p> 530 531 <ul> 532 <li> 533 <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html"><code><supports-screens></code></a>, , 534 <code>android:largeScreens="false"</code> 535 <code>android:xlargeScreens="false"</code>.</li> 536 <li> <code>minSdkVersion</code> 537 13, <a href="{@docRoot}guide/topics/manifest/supports-screens-element.html"><code><supports-screens></code></a> 538 <code>android:largeScreens="true"</code> 539 <code>android:xlargeScreens="true"</code>.</li> 540 </ul> 541 542 <p> 543 <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html"><code><compatible-screens></code></a>, 544 , 545 <em> </em>, 546 . , , , 547 <a href="{@docRoot}guide/topics/manifest/compatible-screens-element.html"><code><compatible-screens></code></a> 548 .</p> 549 550 <h3 class="rel-resources clearfloat"> </h3> 551 552 <div class="resource-widget resource-flow-layout col-13" 553 data-query="collection:distribute/essentials/tabletguidelines/tabletscreens" 554 data-sortOrder="-timestamp" 555 data-cardSizes="9x3,6x3,6x3" 556 data-maxResults="6"></div> 557 558 559 <div class="headerLine"><h2 id="google-play">11. Google Play</h2></div> 560 561 <p> 562 , 563 , ! 564 Google Play. 565 </p> 566 567 <div><img class="border-img" src="{@docRoot}images/gp-tablet-quality-4.jpg"></div> 568 569 570 <h4> 571 572 </h4> 573 574 <p> 575 , 576 , . , 577 Google Play. . 578 </p> 579 580 <ul style="margin-top:0;"> 581 <li> , 582 . , 583 . 584 </li> 585 586 <li> 7-, 10- . 587 </li> 588 589 <li> , , 590 . 591 </li> 592 593 <li> , . - 594 .</li> 595 596 <li> <strong>1280 x 720</strong> 597 . 598 </li> 599 600 <li> 8 7- 601 8 10- . 602 </li> 603 </ul> 604 605 <h4> 606 607 </h4> 608 609 <ul> 610 <li> , 611 . 612 , . 613 </li> 614 615 <li> 616 . 617 </li> 618 </ul> 619 620 <h4> 621 622 </h4> 623 624 <p> 625 , , 626 , , . , 627 . 628 . 629 </p> 630 631 <ul> 632 <li> , . 633 , 634 . 635 </li> 636 637 <li> . , 638 , . 639 , , 640 10 . 641 </li> 642 643 <li> , , 644 , , . 645 </li> 646 647 <li> . 648 </li> 649 </ul> 650 651 <h4> 652 653 </h4> 654 655 <p> 656 657 : -, , . . 658 . 659 </p> 660 661 <ul> 662 <li> , 663 .</li> 664 665 <li> 666 — <a href="{@docRoot}distribute/tools/promote/device-art.html"> </a> 667 , 668 7- 10- , . . 669 </li> 670 671 <li> Google Play -, 672 . 673 <a href="{@docRoot}distribute/tools/promote/badges.html"> </a>. 674 </li> 675 </ul> 676 677 <h3 class="rel-resources clearfloat"> </h3> 678 679 <div class="resource-widget resource-flow-layout col-13" 680 data-query="collection:distribute/essentials/tabletguidelines/showcase" 681 data-sortOrder="-timestamp" 682 data-cardSizes="9x3,9x3,9x3,9x3" 683 data-maxResults="6"></div> 684 685 <div class="headerLine"> 686 <h2 id="google-play-best-practices"> 687 12. Google Play 688 </h2> 689 690 691 </div> 692 693 <p> 694 695 , Google Play. 696 </p> 697 698 <div> 699 <img class="border-img" src="{@docRoot}images/gp-tablet-quality-5.jpg" style="1px solid #ddd"> 700 </div> 701 702 <h4 id="google-play-optimization-tips"> 703 704 </h4> 705 706 <p> Google Play , 707 , 708 . , , 709 " ", " " 710 .</p> 711 712 <div class="sidebox-wrapper"> 713 <div class="sidebox"> 714 <h2> </h2> 715 716 <p> , 717 .</p> 718 719 <p> " 720 ", .</p> 721 722 <p><strong><a href="https://support.google.com/googleplay/android-developer/contact/tabletq" target="_googleplay" style="white-space:nowrap"> : »</a></strong></p> 723 </div> 724 </div> 725 726 <p> 727 728 . - , 729 " " .</p> 730 731 <p> , 732 , 733 . - , 734 , , , 735 . </p> 736 737 <p> " " , 738 , , 739 , , <a href="https://support.google.com/googleplay/android-developer/contact/tabletq" target="_googleplay" style="white-space:nowrap"> »</a>. 740 741 .</p> 742 743 744 <h4> </h4> 745 746 <p> 747 , <a href="https://play.google.com/apps/publish/"> </a>, 748 APK , , 749 , . 750 </p> 751 752 <h4> APK</h4> 753 754 <p> 755 APK 756 ( ) Google Play. 757 . 758 </p> 759 760 <ul style="margin-top:.25em;"> 761 <li> , . 762 </li> 763 764 <li> 765 . 766 </li> 767 768 <li> . 769 </li> 770 771 <li> 772 . 773 </li> 774 </ul> 775 776 <p> 777 , 778 <a href="{@docRoot}google/play/publishing/multiple-apks.html"> APK</a>, 779 APK . 780 </p> 781 782 <h3 class="rel-resources clearfloat"> </h3> 783 <div class="resource-widget resource-flow-layout col-13" 784 data-query="collection:distribute/essentials/tabletguidelines/googleplay" 785 data-sortOrder="-timestamp" 786 data-cardSizes="9x3" 787 data-maxResults="6"></div> 788 789 790 <div class="headerLine"> 791 <h2 id="test-environment"> 792 793 </h2> 794 795 796 </div> 797 798 <p> 799 , 800 , — 801 . 802 </p> 803 804 <p> 805 <a href="{@docRoot}distribute/essentials/quality/core.html#test-environment"> 806 </a> , 807 808 . 809 </p> 810 811 <p class="table-caption"><strong>1.</strong> - 812 () , 813 , - .</p> 814 815 <table> 816 <tr> 817 <th></th> 818 <th></th> 819 <th></th> 820 <th></th> 821 <th> AVD</th> 822 </tr> 823 824 <tr> 825 <td>7- </td> 826 <td><span style="white-space:nowrap"><code>large</code> </span><br /><code>-sw600</code></td> 827 <td><code>hdpi</code>,<br /><code>tvdpi</code></td> 828 <td>Android 4.0+ ( API 14 )</td> 829 <td>WXGA800-7in</td> 830 </tr> 831 <tr> 832 <td><span style="white-space:nowrap">10-</span> </td> 833 <td><span style="white-space:nowrap"><code>xlarge</code> </span><br /><code>-sw800</code></td> 834 <td><code>mdpi</code>,<br /><code>hdpi</code>,<br /><code>xhdpi</code></td> 835 <td>Android 3.2+ ( API 13 )</td> 836 <td>WXGA800</td> 837 </tr> 838 </table> 839 840 <div class="headerLine"><h2 id="related-resources"> </h2></div> 841 842 <div class="resource-widget resource-flow-layout col-13" 843 data-query="collection:distribute/essentials/tabletguidelines" 844 data-sortOrder="-timestamp" 845 data-cardSizes="9x3" 846 data-maxResults="6"></div>