1 page.title=AndroidN 2 meta.tags=" ", "androidn" 3 page.tags="preview", "developer preview" 4 page.image=images/cards/card-n-apis_2x.png 5 @jd:body 6 7 8 9 10 <div id="qv-wrapper"> 11 <div id="qv"> 12 <h2> </h2> 13 <ol> 14 <ul style="list-style-type:none;"> 15 <li><a href="#multi-window_support"> </a></li> 16 <li><a href="#notification_enhancements"></a></li> 17 <li><a href="#jit_aot">/ </a></li> 18 <li><a href="#quick_path_to_app_install"> </a></li> 19 <li><a href="#doze_on_the_go"> : Doze</a></li> 20 <li><a href="#background_optimizations"> </a></li> 21 <li><a href="#data_saver"> </a></li> 22 <li><a href="#tile_api">API </a></li> 23 <li><a href="#number-blocking"> </a></li> 24 <li><a href="#call_screening"> </a></li> 25 <li><a href="#multi-locale_languages"> </a></li> 26 <li><a href="#icu4">API- ICU4J Android</a></li> 27 <li><a href="#gles_32">API OpenGL ES 3.2</a></li> 28 <li><a href="#android_tv_recording"> Android TV</a></li> 29 <li><a href="#android_for_work">Android for Work</a></li> 30 <li><a href="#accessibility_enhancements"> </a></li> 31 <li><a href="#direct_boot"> Direct Boot</a></li> 32 <li><a href="#key_attestation"> </a></li> 33 <li><a href="#network_security_config"> </a></li> 34 <li><a href="#default_trusted_ca"> </a></li> 35 <li><a href="apk_signature_v2"> APK, 2</a></li> 36 <li><a href="#scoped_directory_access"> </a></li> 37 </ol> 38 </div> 39 </div> 40 41 42 43 <p> AndroidN , 44 NDeveloper Preview. 45 . </p> 46 47 <p> 48 <a href="{@docRoot}preview/behavior-changes.html"> </a>, 49 , , 50 <a href="{@docRoot}preview/setup-sdk.html#docs-dl"> API</a> 51 API-. 52 </p> 53 54 <h2 id="multi-window_support"> </h2> 55 56 57 <p> AndroidN 58 . </p> 59 60 <p> . </p> 61 <ul> 62 <li> 63 AndroidN 64 . 65 . </li> 66 67 <li> Android TV <a href="{@docRoot}preview/features/picture-in-picture.html"> 68 " "</a>, , 69 . . </li> 70 </ul> 71 72 <div class="col-4of10"> 73 <img src="{@docRoot}preview/images/mw-portrait.png" alt="" style="height:460px;padding-left:1em;" id="img-split-screen" /> 74 <p class="img-caption"> 75 <strong>. 1.</strong> . 76 </p> 77 </div> 78 79 <p> , 80 . 81 82 . </p> 83 84 <p> 85 . , , 86 . 87 , 88 .</p> 89 90 <p> 91 <a href="{@docRoot}preview/features/multi-window.html"> </a>. 92 93 </p> 94 95 <h2 id="notification_enhancements"> </h2> 96 97 <p> AndroidN , . 98 .</p> 99 100 <ul> 101 <li> 102 <strong> </strong>. 103 . 104 . 105 </li> 106 107 <li> 108 <strong> </strong>. , 109 , . 110 , , . 111 Android Wear, 112 . 113 </li> 114 115 <li> 116 <strong> </strong>. 117 Android . 118 . 119 </li> 120 121 <li> 122 <strong> </strong>. API- , 123 , 124 . 125 </li> 126 </ul> 127 128 <div class="col-4of12"> 129 <img src="{@docRoot}preview/images/notifications-1.png" alt="" style="padding:.5em;max-width:226px"> 130 </div> 131 132 <div class="col-4of12"> 133 <img src="{@docRoot}preview/images/notifications-3.png" alt="" style="padding:.5em;max-width:226px"> 134 </div> 135 136 <div class="col-4of12"> 137 <img src="{@docRoot}preview/images/notifications-2.png" alt="" style="padding:.5em;max-width:226px"> 138 </div> 139 140 141 <p class="img-caption"> 142 <strong>. 2.</strong> . 143 </p> 144 145 <p> 146 <a href="{@docRoot}preview/features/notification-updates.html"></a>. 147 </p> 148 149 150 151 <h2 id="jit_aot"> / </h2> 152 153 <p> AndroidN (JIT) 154 ART, Android . 155 JIT- (AOT) ART 156 , , . 157 </p> 158 159 <p> ART AOT/JIT- 160 . , 161 ART , 162 . , 163 .</p> 164 165 <p> 166 , . 167 .</p> 168 169 <p>ART 170 . , 171 , .</p> 172 173 <h2 id="quick_path_to_app_install"> </h2> 174 175 <p> JIT- ART 176 . , 177 Android6.0 , . 178 , . </p> 179 180 <h2 id="doze_on_the_go"> : Doze</h2> 181 182 <p> Android6.0 Doze . 183 , , . 184 </p> 185 186 <p> Android N Doze . 187 , , 188 Doze . 189 , , . 190 </p> 191 192 193 <img src="/preview/images/doze-diagram-1.png" alt="" id="figure1" /> 194 <p class="img-caption"> 195 <strong>. 3.</strong> Doze 196 , . 197 </p> 198 199 200 <p> , , Doze 201 . 202 203 . 204 Doze.</p> 205 206 <p> ( ), 207 Doze {@link 208 android.os.PowerManager.WakeLock}, {@link android.app.AlarmManager} 209 GPS/Wi-Fi.</p> 210 211 <p> Doze , , 212 213 Doze, . , <a href="{@docRoot}training/monitoring-device-state/doze-standby.html#assessing_your_app"> 214 Doze</a> .</p> 215 216 <h2 id="background_optimizations"> Svelte: </h2> 217 218 <p> Svelte, 219 Android. AndroidN 220 Svelte . </p> 221 222 <p> . 223 , -. 224 ( 225 ) . </p> 226 227 <p> Android5.0, {@link android.app.job.JobScheduler}. 228 , , 229 . JobScheduler , 230 . 231 </p> 232 233 <p> 234 <a href="https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmNetworkManager"> 235 <code>GCMNetworkManager</code></a> Google Play, 236 237 Android. 238 </p> 239 240 <p> <code>JobScheduler</code> 241 <code>GCMNetworkManager</code>. 242 , AndroidN 243 . 244 , , 245 .</p> 246 247 <p> AndroidN — 248 {@link android.net.ConnectivityManager#CONNECTIVITY_ACTION}, {@link 249 android.hardware.Camera#ACTION_NEW_PICTURE} {@link 250 android.hardware.Camera#ACTION_NEW_VIDEO}, — 251 , . 252 , NDeveloper Preview 253 <code>JobScheduler</code> API-. </p> 254 255 <p> 256 <a href="{@docRoot}preview/features/background-optimization.html"> 257 </a>. 258 </p> 259 260 261 <h2 id="data_saver"> </h2> 262 263 <div class="col-5of12" style="margin-right:1.5em;"> 264 <img src="{@docRoot}preview/images/datasaver.png" style="border:2px solid #ddd"> 265 266 <p class="img-caption" style="padding-right:2em;"> 267 <strong>. 4.</strong> . 268 </p> 269 </div> 270 271 <p> 272 . 273 , . </p> 274 275 <p> AndroidN , 276 , 277 . 278 . 279 </p> 280 281 <p> <strong>Settings</strong> , 282 283 , : 284 , , 285 .. , 286 .</p> 287 288 <p>AndroidN {@link android.net.ConnectivityManager}, 289 <a href="{@docRoot}preview/features/data-saver.html#status"> 290 </a> <a href="{@docRoot}preview/features/data-saver.html#monitor-changes"> 291 </a>. , , 292 .</p> 293 294 295 <h2 id="tile_api">API </h2> 296 297 298 <div style="float:right;max-width:320px"> 299 <img src="{@docRoot}preview/images/quicksettings.png" style="padding-left:1.5em;"> 300 301 <p class="img-caption" style="padding-left:2em;"> 302 <strong>. 5.</strong> . 303 </p> 304 305 306 </div><p> 307 . Android N 308 . </p> 309 310 <p> , 311 , . 312 . 313 </p> 314 315 <p> AndroidN API, 316 .</p> 317 318 <p> 319 , , 320 . 321 . 322 </p> 323 324 <p> 325 , 326 . 327 </p> 328 329 <p> 330 331 <code>android.service.quicksettings.Tile</code> <a href="{@docRoot}preview/setup-sdk.html#docs-dl"> API</a>. 332 </p> 333 334 335 336 <h2 id="number-blocking"> </h2> 337 338 <p> AndroidN 339 API- , . 340 , . 341 .</p> 342 343 <p> , Android 344 . 345 :</p> 346 347 <ul> 348 <li> , , . 349 <li> . 350 351 <li> . 352 </ul> 353 354 <p> , Android , 355 , 356 - , 357 , VOIP .</p> 358 359 <p> 360 <code>android.provider.BlockedNumberContract</code> 361 <a href="{@docRoot}preview/setup-sdk.html#docs-dl"> API</a>. 362 363 </p> 364 365 <h2 id="call_screening"> </h2> 366 367 <p> 368 AndroidN . 369 <code>CallScreeningService</code>, 370 371 {@link android.telecom.Call.Details Call.Details} , : 372 </p> 373 374 <ul> 375 <li> ; 376 <li> ; 377 <li> . 378 </ul> 379 380 <p> 381 <code>android.telecom.CallScreeningService</code> 382 <a href="{@docRoot}preview/setup-sdk.html#docs-dl"> API</a>. 383 384 </p> 385 386 387 <h2 id="multi-locale_languages"> , </h2> 388 389 390 <p>AndroidN <strong> </strong> 391 . 392 API 393 , : 394 ; - , . 395 </p> 396 397 <p> AndroidN . 398 399 , , , , 25 . 400 100 .</p> 401 402 <p> , , <code>LocaleList.GetDefault()</code>. AndroidN 403 . , 404 .</p> 405 406 <p> 407 <a href="{@docRoot}preview/features/multilingual-support.html"> </a>.</p> 408 409 <h2 id="icu4">API- ICU4J Android</h2> 410 411 <p> 412 AndroidN API- <a href="http://site.icu-project.org/">ICU4J</a> 413 <code>android.icu</code>. 414 <code>com.java.icu</code> 415 <code>android.icu</code>. ICU4J , 416 API- <code>android.icu</code>, Android, 417 APK. 418 </p> 419 420 <p> 421 Android ICU4J API <a href="{@docRoot}preview/features/icu4j-framework.html"> ICU4J</a>. 422 </p> 423 424 425 426 <h2 id="gles_32">API OpenGL™ ES 3.2</h2> 427 428 <p> AndroidN OpenGLES3.2, .</p> 429 430 <ul> 431 <li> <a class="external-link" href="https://www.khronos.org/registry/gles/extensions/ANDROID/ANDROID_extension_pack_es31a.txt">Android Extension Pack</a></a> (AEP) <code>EXT_texture_sRGB_decode</code>. 432 <li> HDR . 433 <li> BaseVertex . 434 <li> WebGL. 435 </ul> 436 437 <p>API- OpenGLES3.2 AndroidN 438 <code>GLES32</code>. OpenGLES3.2 439 <code><uses-feature></code> 440 <code>android:glEsVersion</code>. </p> 441 442 <p> OpenGLES, 443 , , . <a href="{@docRoot}guide/topics/graphics/opengl.html"> API OpenGLES</a>.</p> 444 445 446 <h2 id="android_tv_recording"> Android TV</h2> 447 448 <p> AndroidN AndroidTV 449 API- . API 450 , 451 . </p> 452 453 <p> <a href="{@docRoot}preview/features/tv-recording-api.html">API- AndroidTV</a>.</p> 454 455 456 <h2 id="android_for_work">Android for Work</h2> 457 458 <p> Android for Work API- AndroidN. 459 . Android for Work, 460 AndroidN, Android for Work.</p> 461 462 <h3 id="work_profile_security_challenge"> </h3> 463 464 <p> 465 , . 466 467 , . 468 , , . 469 <code>ACTION_SET_NEW_PASSWORD</code>, , 470 <code>ACTION_SET_NEW_PARENT_PROFILE_PASSWORD</code>, . 471 472 </p> 473 474 <p> 475 476 (, PIN-, 477 ) <code>setPasswordQuality()</code>, 478 <code>setPasswordMinimumLength()</code> . 479 <code>DevicePolicyManager</code>, 480 <code>getParentProfileInstance()</code>. 481 , 482 <code>setOrganizationColor()</code> 483 <code>setOrganizationName()</code>. 484 </p> 485 <h3 id="turn_off_work"> </h3> 486 487 <p> . 488 , , , 489 . . 490 , 491 , . , 492 . </p> 493 494 <h3 id="always_on_vpn"> VPN </h3> 495 496 <p> 497 VPN. VPN . 498 </p> 499 500 <p> 501 <code>DevicePolicyManager</code> 502 <code>setAlwaysOnVpnPackage()</code> 503 <code>getAlwaysOnVpnPackage()</code>. 504 </p> 505 506 <p> VPN , 507 VPN VPN. , 508 , 509 <code>android.net.VpnService</code>. </p> 510 511 <p> 512 VPN, 513 <code>VPNService</code>, 514 <strong>Settings>More>Vpn</strong>. 515 </p> 516 517 <h2 id="accessibility_enhancements"> </h2> 518 519 <p>AndroidN Vision Settings . 520 521 , , , 522 TalkBack. </p> 523 524 <p> 525 . , 526 Settings> 527 Accessibility.</p> 528 529 <p> AndroidN 530 . API 531 , , , , 532 .</p> 533 534 <p> <code>android.accessibilityservice.GestureDescription</code> 535 <a href="{@docRoot}preview/setup-sdk.html#docs-dl"> API</a>.</p> 536 537 538 <h2 id="direct_boot"> Direct Boot</h2> 539 540 <p> Direct Boot 541 . 542 , , , 543 , , . 544 , . 545 </p> 546 547 <p> Direct Boot AndroidN 548 . 549 , , . 550 , , 551 , . </p> 552 553 <p> , 554 , . 555 , , , 556 . 557 <code>LOCKED_BOOT_COMPLETED</code>. 558 , , 559 . , , 560 . </p> 561 562 <a href="{@docRoot}preview/features/direct-boot.html">Direct Boot</a>.</p> 563 </p> 564 565 566 <h2 id="key_attestation"> </h2> 567 568 <p> , , 569 Android. 570 Linux, Android 571 .</p> 572 573 <p> 574 AndroidN . , 575 , RSA EC 576 , 577 . </p> 578 579 <p> 580 X.509, 581 . ECDSA, 582 . 583 , , 584 . 585 </p> 586 587 <p> , Android, 588 <a class="external-link" href="https://source.android.com/security/verifiedboot/verified-boot.html#bootloader_requirements"></a> 589 <a class="external-link" href="https://source.android.com/security/trusty/index.html"> 590 (TEE)</a>:</p> 591 592 <ul> 593 <li> , ;</li> 594 <li> <a href="https://source.android.com/security/verifiedboot/index.html" class="external-link"> </a> .</li> 595 </ul> 596 597 <p> 598 <a href="https://source.android.com/security/keystore/" class="external-link"></a>.</p> 599 600 <p> AndroidN , 601 , .</p> 602 603 <h2 id="network_security_config"> </h2> 604 605 <p> AndroidN (HTTPS, TLS) 606 , - , 607 <em> </em> 608 API- (, X509TrustManager).</p> 609 610 <p> :</p> 611 <ul> 612 <li><b> .</b> 613 () . , 614 . 615 </li> 616 <li><b> .</b> 617 . 618 619 </li> 620 <li><b> .</b> 621 .</li> 622 <li><b> .</b> , 623 .</li> 624 </ul> 625 626 <p> <a href="{@docRoot}preview/features/security-config.html"> </a>. 627 </p> 628 629 <h2 id="default_trusted_ca"> </h2> 630 631 <p> AndroidN 632 , . AndroidN 633 , 634 <a href="{@docRoot}preview/features/security-config.html"> </a> . 635 </p> 636 637 <h2 id="apk_signature_v2"> APK, 2</h2> 638 639 <p> PackageManager APK 640 2. APK , 641 , APK. 642 </p> 643 644 <p> APK 645 ( JAR) , 2. 646 2 , APK 647 2. </p> 648 649 <p> APK 2 N Developer 650 Preview.</p> 651 652 <h2 id="scoped_directory_access"> </h2> 653 654 <p> AndroidN API- <a href="{@docRoot}guide/topics/data/data-storage.html#filesExternal"> </a>, 655 , SD-. 656 API- 657 , <code>Pictures</code>. , , , 658 API- 659 <code>READ_EXTERNAL_STORAGE</code>, 660 Storage Access Framework, . 661 </p> 662 663 <p> , API- . 664 API, , 665 , . 666 </p> 667 668 <p> 669 <a href="{@docRoot}preview/features/scoped-folder-access.html"> </a>. 670 </p> 671 672 673 674 675 676 677