blob: b218a4e5bf9dde7fd028a59a7516af91c67e3eeb [file] [log] [blame]
page.title=Android N cho Nhà phát trin
meta.tags="preview", "androidn"
page.tags="preview", "developer preview"
page.image=images/cards/card-n-apis_2x.png
@jd:body
<div id="tb-wrapper">
<div id="tb">
<h2>Các tính năng chính cho nhà phát trin</h2>
<ol>
<ul style="list-style-type:none;">
<li><a href="#multi-window_support">H tr đa ca sổ</a></li>
<li><a href="#notification_enhancements">Thông báo</a></li>
<li><a href="#jit_aot">Biên dch JIT/AOT</a></li>
<li><a href="#quick_path_to_app_install">Cài đặt ng dng nhanh chóng</a></li>
<li><a href="#doze_on_the_go">Chế độ Ng sâu khi di chuyn</a></li>
<li><a href="#background_optimizations">Ti ưu hóa chy ngm</a></li>
<li><a href="#data_saver">Tiết kim d liu</a></li>
<li><a href="#tile_api">API cho ô Cài đặt nhanh</a></li>
<li><a href="#number-blocking">Chn số</a></li>
<li><a href="#call_screening">Sàng lc cuc gi</a></li>
<li><a href="#multi-locale_languages">Bn địa và ngôn ngữ</a></li>
<li><a href="#icu4">API ICU4J trong Android</a></li>
<li><a href="#gles_32">API OpenGL ES 3.2</a></li>
<li><a href="#android_tv_recording">Ghi li trên Android TV</a></li>
<li><a href="#android_for_work">Android cho Công vic</a></li>
<li><a href="#accessibility_enhancements">Tr năng</a></li>
<li><a href="#direct_boot">Khi động Trc tiếp</a></li>
<li><a href="#key_attestation">Chng thc khóa</a></li>
<li><a href="#network_security_config">Cu hình Bo mt mng</a></li>
<li><a href="#default_trusted_ca">CA an toàn mc định</a></li>
<li><a href="apk_signature_v2">Lược đồ ch ký s v2 cho tp APK</a></li>
<li><a href="#scoped_directory_access">Truy cp thư mc theo phm vi</a></li>
</ol>
</div>
</div>
<p>Android N vn đang trong quá trình phát trin nhưng bây gi bn có th dùng th
dưới dng N Developer Preview. Các phn dưới đây s nêu bt mt s
tính năng mi cho nhà phát trin. </p>
<p>
Bn cn xem <a href="{@docRoot}preview/behavior-changes.html">Các thay đổi Hành vi</a> để biết được
nhng phn thay đổi ca nn tng có th nh hưởng đến ng dng ca bn, hãy xem
các hướng dn cho nhà phát trin để biết thêm v nhng tính năng chính và ti xung tài liu <a href="{@docRoot}preview/setup-sdk.html#docs-dl">Tham kho API</a> để biết chi tiết v
các API mi.
</p>
<h2 id="multi-window_support">H tr đa ca sổ</h2>
<p>Trong Android N, chúng tôi s đưa vào nn tng mt tính năng đa nhim mi
rt được mong đợi &mdash; h tr đa ca sổ. </p>
<p>Gi đây người dùng có th nhanh chóng m đồng thi hai ng dng trên màn hình. </p>
<ul>
<li>Trên đin thoi và máy tính bng
chy Android N, người dùng có th chy hai ng dng song song hai bên hoc
trên dưới trong chế độ chia đôi màn hình. Người dùng có th thay đổi kích thước ca ng dng bng cách kéo
thanh phân chia gia. </li>
<li>Trên thiết b Android TV, các ng dng có th t đặt vào <a href="{@docRoot}preview/features/picture-in-picture.html">chế độ
hình-trong-hình</a>, cho phép ng dng tiếp tc hin th ni dung khi người dùng duyt web hoc
tương tác vi ng dng khác. Hãy xem bên dưới để biết thêm thông tin. </li>
</ul>
<div class="col-4of10">
<img src="{@docRoot}images/android-7.0/mw-portrait.png" alt="" style="height:460px;padding-left:1em;" id="img-split-screen" />
<p class="img-caption">
<strong>Hình 1.</strong> Các ng dng chy trong chế độ chia màn hình.
</p>
</div>
<p>Đặc bit là trên máy tính bng và các thiết b màn hình ln khác, vic h tr đa ca s
cho phép bn mang li nhng cách thc mi thu hút người dùng. Thm chí bn còn có th cho phép kéo th trong
ng dng để người dùng kéo ni dung mt cách thun tin vào hoc ra ngoài ng dng ca bn &mdash; đây là mt cách
nâng cao tri nghim ca người dùng rt hiu quả. </p>
<p>Thêm tính năng h tr đa màn hình vào ng dng ca bn và cu hình cách thc
x lý hin th đa ca s là điu rt đơn gin. Ví dụ, bn có th ch định kích thước
ti thiu cho phép ca hot động, ngăn người dùng thay đổi kích thước ca hot động nh hơn
kích thước đó. Bn cũng có th vô hiu hóa hin th đa ca s cho ng dng ca mình, giúp
đảm bo h thng s ch hin th ng dng ca bn chế độ toàn màn hình.</p>
<p>
Để biết thêm thông tin, hãy xem tài liu cho nhà phát trin <a href="{@docRoot}preview/features/multi-window.html">H tr đa ca sổ</a>
.
</p>
<h2 id="notification_enhancements">Ci tiến thông báo</h2>
<p>Chúng tôi đã thiết kế li thông báo trong Android N để chúng được s dng d dàng và nhanh
hơn. Mt s các thay đổi bao gm:</p>
<ul>
<li>
<strong>Cp nht Mu</strong>: Chúng tôi đã cp nht các mu thông báo để
to đim nhn mi cho nh gây n tượng và nh đại din. Nhà phát trin s có th
tn dng các mu mi nhưng ch cn thc hin mt s chnh sa nh trong mã ngun ca họ.
</li>
<li>
<strong>Thông báo gp</strong>: H thng có th nhóm các tin nhn
li vi nhau, ví d như theo ch đề tin nhn và hin th thành nhóm. Người dùng có th
thc hin các thao tác như Hy hoc Lưu tr chúng ngay ti chỗ. Nếu bn tng
trin khai các thông báo cho Android Wear thì bn đã làm quen vi
mô hình này.
</li>
<li>
<strong>Tr li trc tiếp</strong>: Đối vi nhng ng dng giao tiếp theo thi gian thc,
h thng Android s h tr tr li ngay ti ch để người dùng có th nhanh chóng phn hi li
mt tin nhn SMS hoc tin nhn văn bn trc tiếp bên trong giao din thông báo đó.
</li>
<li>
<strong>Dng xem tùy chnh</strong>: Hai API mi cho phép bn s dng các trang trí
h thng như tiêu đề và hành động ca thông báo khi s dng các dng xem
tùy chnh trong thông báo.
</li>
</ul>
<div class="col-4of12">
<img src="{@docRoot}images/android-7.0/notifications-1.png" alt="" style="padding:.5em;max-width:226px">
</div>
<div class="col-4of12">
<img src="{@docRoot}images/android-7.0/notifications-3.png" alt="" style="padding:.5em;max-width:226px">
</div>
<div class="col-4of12">
<img src="{@docRoot}images/android-7.0/notifications-2.png" alt="" style="padding:.5em;max-width:226px">
</div>
<p class="img-caption">
<strong>Hình 2.</strong> Thông báo gp và tr li trc tiếp.
</p>
<p>Hãy xem
hướng dn v <a href="{@docRoot}preview/features/notification-updates.html">Thông báo</a>
để biết cách trin khai các tính năng mi này.</p>
<h2 id="jit_aot">Biên dch JIT/AOT theo cu hình</h2>
<p>Trong Android N, chúng tôi đã b sung mt trình biên dch Just in Time (JIT) có mã được cu hình cho
ART, cho phép nó nâng cao hiu năng ca các ng dng Android tc thì khi
chy. Trình biên dch JIT b tr thêm cho trình biên dch Ahead of Time (AOT) ca ART
và giúp ci hin hiu năng thi gian chy, tiết kim không gian lưu tr và tăng tc độ các bn cp nht ca
ng dng và cp nht ca h thng.</p>
<p>Biên dch theo cu hình cho phép ART qun lý quá trình biên dch AOT/JIT ca tng ng dng
tùy theo s dng thc tế cũng như các điu kin trên thiết bị. Ví
dụ, ART s duy trì mt cu hình cho các phương thc hay dùng nht ca mi ng dng và có th biên dch trước
ri to b đệm cho các phương thc đó để có hiu năng cao nht. Nhng phn khác ca ng dng
s được gi nguyên không biên dch cho đến khi chúng thc s được s dng.</p>
<p>Bên cnh nâng cao hiu năng cho các phn chính ca ng dng, quá trình biên dch
theo cu hình còn giúp gim tng lượng RAM được s dng ca ng dng, bao gm c các
tp nh phân liên quan. Tính năng này đặc bit quan trng trên các thiết b ít b nhớ.</p>
<p>ART s qun lý quá trình biên dch theo cu hình bng cách gim ti thiu tác động đến
pin ca thiết bị. Nó s tiến hành quá trình biên dch trước ch khi nào thiết b nhàn ri và
đang sc, giúp tiết kim thi gian và pin bng cách thc hin công vic đó trước.</p>
<h2 id="quick_path_to_app_install">Cài đặt ng dng nhanh chóng</h2>
<p>Mt trong nhng li ích d thy nht ca trình biên dch JIT ca ART là tc độ cài đặt
ng dng và cp nht h thng. Ngay c các ng dng ln cn vài phút để
ti ưu và cài đặt trong Android 6.0 thì gi đây có th cài đặt ch trong mt vài
giây. Các cp nht cho h thng cũng s nhanh hơn vì không còn bước ti ưu hóa na. </p>
<h2 id="doze_on_the_go">Chế độ Ng sâu khi di chuyn...</h2>
<p>Chế độ Ng sâu đã được gii thiu trong Android 6.0. Đây là mt chế độ ca h thng giúp tiết kim pin bng cách trì hoãn
các hot động CPU và mng ca ng dng khi thiết b đang nhàn ri, ví d như khi thiết b
đang nm trên bàn hoc trong ngăn kéo. </p>
<p>Gi đây Chế độ Ng sâu trong Android N đã được ci tiến thêm và tiết kim pin ngay c khi đang di chuyn.
Bt k khi nào màn hình đang tt trong mt khong thi gian và thiết b không được cm sc thì
Chế độ Ng sâu s áp dng tp con ca các hn chế CPU và mng quen thuc đối vi các ng dng.
Điu này có nghĩa là người dùng có th tiết kim pin ngay c khi đang mang thiết b trong túi
ca họ.</p>
<img src="/preview/images/doze-diagram-1.png" alt="" id="figure1" />
<p class="img-caption">
<strong>Hình 3.</strong> Chế độ Ng sâu đang áp dng
các hn chế để ci thin thi lượng pin ngay c khi thiết b không được đặt mt chỗ.
</p>
<p>Sau mt khong thi gian ngn khi màn hình tt và thiết b ch chy bng ngun pin, Chế độ Ng sâu
s hn chế truy cp mng và trì hoãn các tác vụ, đồng bộ. Trong các khong thi gian
bo trì ngn, các ng dng s được phép truy cp mng và mi tác vụ/đồng b
b trì hoãn s được thc thi. Bt màn hình hoc cm sc vào thiết b s đưa
thiết b thoát khi Chế độ Ng sâu.</p>
<p>Khi để thiết b nm mt ch ln na vi màn hình được tt và chy bng pin trong mt
khong thi gian thì Chế độ Ng sâu s áp dng toàn b các hn chế CPU và mng đối vi {@link
android.os.PowerManager.WakeLock}, báo thc {@link android.app.AlarmManager} và quét
GPS/Wi-Fi.</p>
<p>Bn có th áp dng các thc hành tt nht tương t để điu chnh ng dng ca mình cho Chế độ Ng sâu cho dù
thiết b có đang di chuyn hay đứng yên. Do đó, nếu bn đã cp nht ng dng để x lý
Chế độ Ng sâu mt cách tinh tế thì bn hoàn toàn yên tâm. Nếu không, hãy tiến hành <a href="{@docRoot}training/monitoring-device-state/doze-standby.html#assessing_your_app">làm cho
ng dng thích ng vi Chế độ Ng sâu</a> ngay.</p>
<h2 id="background_optimizations">D án Svelte: Ti ưu hóa chy ngm</h2>
<p>D án Svelte là mt n lc liên tc nhm ti gim s dng RAM ca h thng và các ng dng
trên khp h sinh thái các thiết b Android. Trong Android N, d án
Svelte tp trung vào vic ti ưu hóa cách thc các ng dng chy ngm. </p>
<p>X lý chy ngm là mt phn quan trng ca hu hết các ng dng. Khi s dng đúng cách, nó
có th giúp cho tri nghim người dùng ca bn tr nên tuyt vi &mdash; tc thì, nhanh chóng và nhn biết được bi cnh.
Khi không s dng đúng cách, x lý chy ngm có th tiêu tn RAM (và
pin) mt cách không cn thiết cũng như nh hưởng đến hiu năng h thng cho các ng dng khác. </p>
<p>K t Android 5.0, {@link android.app.job.JobScheduler} đã tr thành
cách thc được ưu tiên để thc hin công vic chy ngm thích hp
cho người dùng. ng dng có th lên lch cho các tác v trong khi cho phép h thng ti ưu hóa da trên
các điu kin v b nhớ, ngun đin và kết ni. JobScheduler đem li kh năng kim soát và
s đơn gin, và chúng tôi mun mi ng dng đều s dng nó. </p>
<p>
Mt gii pháp hiu qu khác là <a href="https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmNetworkManager">
<code>GCMNetworkManager</code></a>, thuc mt phn ca Dch v Google Play, cho phép
lên lch tác v tương t vi kh năng tương thích trên các phiên bn Android
cũ.
</p>
<p>Chúng tôi đang tiếp tc kế tha <code>JobScheduler</code> và
<code>GCMNetworkManager</code> để đáp ng nhiu hơn
các trường hp s dng ca bn &mdash; ví d như trong Android N gi đây bn đã có th lên lch cho công vic
chy ngm da vào nhng thay đổi trong các Trình cung cp Ni dung. Đồng thi, chúng tôi đang tiến hành
loi b mt s mu cũ có th làm gim hiu năng h thng,
đặc bit trên các thiết b ít b nhớ.</p>
<p>Trong Android N, chúng tôi s loi b ba truyn phát không biu th được s dng ph biến &mdash;
{@link android.net.ConnectivityManager#CONNECTIVITY_ACTION}, {@link
android.hardware.Camera#ACTION_NEW_PICTURE} và {@link
android.hardware.Camera#ACTION_NEW_VIDEO} &mdash; bởi vì các truyền phát này có thể đánh thức
các tiến trình chy ngm ca nhiu ng dng cùng lúc và s dng quá mc b nh và pin. Nếu
ng dng ca bn đang nhn các truyn phát này thì hãy tn dng N Developer Preview để
chuyn sang <code>JobScheduler</code> và các API liên quan khác thay thế. </p>
<p>
Hãy xem tài liu <a href="{@docRoot}preview/features/background-optimization.html">Ti ưu hóa
Chy ngm</a> để biết thêm chi tiết.
</p>
<h2 id="data_saver">Tiết kim d liu</h2>
<div class="col-5of12" style="margin-right:1.5em;">
<img src="{@docRoot}images/android-7.0/datasaver.png" style="border:2px solid #ddd">
<p class="img-caption" style="padding-right:2em;">
<strong>Hình 4.</strong> Tính năng Tiết kim d liu trong mc Settings.
</p>
</div>
<p>Trong vòng đời ca mt thiết b di động thì chi phí gói cước d liu di động v cơ bn
s cao hơn giá thành ca chính thiết b đó. Đối vi nhiu người dùng, d liu di động là mt
tài nguyên đắt đỏ h mun s dng tiết kim. </p>
<p>Android N đã đưa vào chế độ Tiết kim d liu, mt dch v h thng mi giúp gim
s dng d liu di động, cho dù là chuyn vùng, gn đến k thanh toán cước,
hoc trên mt gói d liu tr trước khiêm tn. Tiết kim d liu cho người dùng kim soát cách thc ng dng
s dng d liu di động và cho phép nhà phát trin cung cp dch v hiu qu hơn khi Tiết kim
d liu được bt. </p>
<p>Khi người dùng bt Tiết kim d liu trong <strong>Settings</strong> và thiết b đang
s dng mt mng có đo lưu lượng thì h thng s chn vic s dng d liu chy ngm và truyn tín hiu cho ng dng
để s dng ít d liu hơn tin cnh bt c khi nào có th &mdash; chng hn như bng cách gii hn
bit rate để truyn phát, gim cht lượng hình nh, trì hoãn to trước b đệm để ti ưu,
v.v. Người dùng có th lp danh sách các ng dng c th được phép s dng
d liu có tính lưu lượng được chy ngm ngay c khi Tiết kim d liu được bt.</p>
<p>Android N m rng lp {@link android.net.ConnectivityManager} để cung cp cho các ng dng mt
cách thc <a href="{@docRoot}preview/features/data-saver.html#status">truy xut
các tùy chn Tiết kim d liu ca người dùng</a> và <a href="{@docRoot}preview/features/data-saver.html#monitor-changes">theo dõi
các thay đổi ca tùy chn</a>. Mi ng dng cn kim tra xem người dùng đó đã bt Tiết kim
D liu hay chưa và c gng gii hn s dng d liu chy tin cnh và chy ngm.</p>
<h2 id="tile_api">API cho ô Cài đặt nhanh</h2>
<div style="float:right;max-width:320px">
<img src="{@docRoot}images/android-7.0/quicksettings.png" style="padding-left:1.5em;">
<p class="img-caption" style="padding-left:2em;">
<strong>Hình 5.</strong> Các ô Cài đặt nhanh trong vùng hin th thông báo.
</p>
</div><p>Cài đặt nhanh là mt cách ph biến và đơn gin để hin th các cài đặt và hành động quan trng,
trc tiếp t khu vc thông báo. Trong Android N, chúng tôi đã m rng phm vi ca
Cài đặt nhanh để khiến nó tr nên hu ích và thun tin hơn na. </p>
<p>Chúng tôi đã thêm không gian cho các ô Cài đặt nhanh mà người dùng có th
truy cp trên toàn b mt vùng hin th được phân trang bng cách vut sang trái hoc phi. Chúng tôi cũng
cho người dùng kim soát nhng ô Cài đặt nhanh nào s xut hin và v trí xut hin
ca chúng &mdash; người dùng ch cn kéo và th để thêm hoc di chuyn các ô. </p>
<p>Đối vi nhà phát trin, Android N cũng b sung mt API mi cho phép định nghĩa các ô
Cài đặt nhanh ca riêng bn giúp người dùng d dàng truy cp ti các điu khin và hành động quan trng trong ng dng ca bn.</p>
<p>
Các ô Cài đặt nhanh được dành riêng cho các điu khin hoc hành động
khn cp hoc thường xuyên được s dng, không nên dùng làm li tt để
khi chy mt ng dng.
</p>
<p>
Mt khi đã định nghĩa các ô ca mình bn có th làm ni chúng lên trước người dùng để h có th thêm
các ô này vào Cài đặt nhanh bng cách ch cn kéo và thả.
</p>
<p>
Để biết thêm thông tin v vic to mt ô ng dng, hãy xem
<code>android.service.quicksettings.Tile</code> trong tài liệu <a href="{@docRoot}preview/setup-sdk.html#docs-dl">Tham khảo API</a> có thể tải xuống.
</p>
<h2 id="number-blocking">Chn số</h2>
<p>Android N đã h tr chn s đin thoi trong nn tng này và cung cp mt
API khuôn kh cho phép các nhà cung cp dch v duy trì mt danh sách s b chn.
ng dng SMS mc định, ng dng gi đin mc định và các ng dng ca nhà cung cp có th đọc và
ghi vào danh sách s b chn. Các ng dng khác không th truy cp vào danh sách này.</p>
<p>Thông qua vic đưa chn s thành mt tính năng tiêu chun ca nn tng, Android s cung cp
cách thc thng nht để các ng dng h tr chn s trên mt lot các
thiết bị. Nhng li ích mà ng dng có th tn dng gm:</p>
<ul>
<li> S b chn cuc gi cũng s b chn tin nhn văn bn
<li> S b chn có th được duy trì qua các ln thiết lp li và qua nhiu thiết b thông qua tính năng Sao lưu &amp;
Khôi phc
<li> Nhiu ng dng có th s dng cùng mt danh sách s b chn
</ul>
<p>Ngoài ra, vic tích hp ng dng ca nhà mng thông qua Android cũng đồng nghĩa là các nhà mng có th
đọc danh sách s b chn trên thiết b và thc hin chn s t phía nhà cung cp dch v
cho người dùng để ngăn các cuc gi và tin nhn văn bn không mong mun tiếp cn người dùng
thông qua bt k phương tin nào, ví d như đim cui VOIP hoc đin thoi chuyn cuc gi.</p>
<p>
Để biết thêm thông tin, hãy xem <code>android.provider.BlockedNumberContract</code>
trong tài liu <a href="{@docRoot}preview/setup-sdk.html#docs-dl">Tham kho
API</a> có th ti xung.
</p>
<h2 id="call_screening">Sàng lc cuc gi</h2>
<p>
Android N cho phép ng dng gi đin mc định sàng lc các cuc gi đến. ng dng
gi đin thc hin điu này bng cách thc thi <code>CallScreeningService</code> mi,
cho phép ng dng gi đin thc hin mt s hành động da trên
{@link android.telecom.Call.Details Call.Details} ca cuc gi đến như:
</p>
<ul>
<li> T chi cuc gi đến
<li> Không cho phép cuc gi lưu trong nht ký cuc gi
<li> Không hin th thông báo v cuc gi cho người dùng
</ul>
<p>
Để biết thêm thông tin, hãy xem <code>android.telecom.CallScreeningService</code>
trong tài liu <a href="{@docRoot}preview/setup-sdk.html#docs-dl">Tham kho
API</a> có th ti xung.
</p>
<h2 id="multi-locale_languages">H tr đa bn địa, thêm nhiu ngôn ngữ</h2>
<p>Android N cho phép người dùng chn <strong>đa bn địa</strong> trong Settings,
để h tr tt hơn cho các trường hp song ngữ. Các ng dng có th s dng
mt API mi để truy xut các bn địa được chn ca người dùng và sau đó mang đến
tri nghim người dùng tinh tế hơn cho người dùng đa bn địa &mdash; như hin th các kết qu tìm kiếm bng
nhiu ngôn ng và không yêu cu dch các trang web sang ngôn ng mà
người dùng đã biết.</p>
<p>Ngoài h tr đa bn địa, Android N cũng m rng danh sách các ngôn ng
kh dng đối vi người dùng. Nn tng này cung cp hơn 25 biến th cho các ngôn ng
được s dng ph biến như Tiếng Anh, Tây Ban Nha, Pháp và Ả-rp. Nó cũng b sung h tr
mt phn cho hơn 100 ngôn ng mi.</p>
<p>Các ng dng có th truy xut danh sách b bn địa theo người dùng bng cách gi <code>LocaleList.GetDefault()</code>. Để h tr s lượng bn địa m rng, Android N đang thay đổi cách thc
phân gii tài nguyên. Hãy đảm bo bn kim tra và xác minh rng ng dng ca mình
đang hot động như mong mun theo lô-gic phân gii tài nguyên mi này.</p>
<p>Để tìm hiu v hành vi phân gii tài nguyên mi và các thc hành tt nht bn nên
thc hin theo, hãy xem mc <a href="{@docRoot}preview/features/multilingual-support.html">H tr đa ngôn ngữ</a>.</p>
<h2 id="icu4">API ICU4J trong Android</h2>
<p>
Android N đã cung cp mt tp nh các API <a href="http://site.icu-project.org/">ICU4J</a> trong khuôn kh Android thuc
gói <code>android.icu</code>. Vic chuyn nhp sang rt d dàng và hu hết ch liên quan đến
vic đổi t không gian tên <code>com.java.icu</code> thành
<code>android.icu</code>. Nếu bn đang s dng gói ICU4J trong ng dng
ca mình thì vic chuyn đổi sang các API <code>android.icu</code> được cung cp trong khuôn kh
Android có th giúp làm gim đáng k kích thước ca tp APK.
</p>
<p>
Để tìm hiu thêm v API ICU4J trên Android, hãy xem <a href="{@docRoot}preview/features/icu4j-framework.html">H tr ICU4J</a>.
</p>
<h2 id="gles_32">API OpenGL&trade; ES 3.2</h2>
<p>Android N b sung các giao din khuôn kh và h tr nn tng cho OpenGL ES 3.2, bao gm:</p>
<ul>
<li> Mi phn m rng trong <a class="external-link" href="https://www.khronos.org/registry/gles/extensions/ANDROID/ANDROID_extension_pack_es31a.txt">Gói Tin ích m rng Android</a></a> (AEP) ngoi tr <code>EXT_texture_sRGB_decode</code>
<li> B đệm khung hình du chm động cho HDR và to bóng trì hoãn.
<li> Các lnh v BaseVertex cho phép chia gói và truyn phát hiu qu hơn.
<li> Kim soát truy cp b đệm mnh m để gim phí tn qun lý ca WebGL.
</ul>
<p>API khuôn kh cho OpenGL ES 3.2 trên Android N được cung cp vi lp
<code>GLES32</code>. Khi s dng OpenGL ES 3.2, hãy đảm bo khai báo
yêu cu trong tp bn kê khai ca bn bng th <code>&lt;uses-feature&gt;</code> và
thuc tính <code>android:glEsVersion</code>. </p>
<p>Để biết thông tin v s dng OpenGL ES, bao gm cách kim tra phiên bn
OpenGL ES được h tr ca thiết b ti thi gian chy, hãy xem mc <a href="{@docRoot}guide/topics/graphics/opengl.html">Hướng dn API OpenGL ES</a>.</p>
<h2 id="android_tv_recording">Ghi li trên Android TV</h2>
<p>Android N b sung kh năng ghi và phát li ni dung t các dch v
ngun vào ca Android TV thông qua các API ghi li. Được xây dng da trên các API
chuyn dch thi gian sn có, các dch v ngun vào TV có th kim soát d liu ca kênh nào được phép ghi li, cách thc
lưu tr các phiên được ghi li cũng như qun lý tương tác ca người dùng vi ni dung ghi li. </p>
<p>Để biết thêm thông tin, hãy xem <a href="{@docRoot}preview/features/tv-recording-api.html">API ghi li ca Android TV</a>.</p>
<h2 id="android_for_work">Android cho Công vic</h2>
<p>Android cho Công vic b sung nhiu tính năng mi và các API cho thiết b chy Android N.
Dưới đây là mt s đim ni bt &mdash; để xem danh sách đầy đủ các cp nht ca Android N
liên quan đến Android cho Công vic, vui lòng xem Các thay đổi ca Android cho Công vic.</p>
<h3 id="work_profile_security_challenge">Th thách bo mt cu hình công vic </h3>
<p>
Người s hu cu hình có th ch định mt th thách bo mt riêng cho các ng dng đang chy trong
cu hình công vic. Th thách công vic được hin th khi người dùng c gng m
bt k ng dng công vic nào. Hoàn tt thành công th thách bo mt s m khóa
cu hình công vic và gii mã nó nếu cn. Đối vi người s hu cu hình,
<code>ACTION_SET_NEW_PASSWORD</code> s yêu cu người dùng đặt mt th thách
công vic và <code>ACTION_SET_NEW_PARENT_PROFILE_PASSWORD</code> s yêu cu
người dùng đặt khóa thiết bị.
</p>
<p>
Người s hu cu hình có th đặt các chính sách mt khu riêng bit cho th thách công vic
(như độ dài mã PIN cn thiết hoc có th s dng du vân tay
để m khóa cu hình hay không) bng <code>setPasswordQuality()</code>,
<code>setPasswordMinimumLength()</code> và các phương thc liên quan. Người s hu
cu hình cũng có th cài khóa thiết b bng thc th <code>DevicePolicyManager</code>
được tr v bi phương thc <code>getParentProfileInstance()</code> mi.
Ngoài ra, người s hu cu hình có th tùy chnh màn hình xác thc thông tin cho
th thách công vic bng các phương thc <code>setOrganizationColor()</code> và
<code>setOrganizationName()</code> mi.
</p>
<h3 id="turn_off_work">Tt công vic </h3>
<p>Trên mt thiết b có cu hình công vic, người dùng có th bt hoc tt chế độ công vic. Khi chế độ công vic được
tt người dùng được qun lý s tm thi b tt, khiến vô hiu hóa các ng dng
cu hình công vic, đồng b chy ngm và các thông báo. Điu này bao gm c ng dng
ca người s hu cu hình. Khi chế độ công vic b tt, h thng s hin th biu tượng
trng thái liên tc để nhc người dùng đó rng h không th khi chy các ng dng công vic. Trình khi chy
s ch báo rng các ng dng và widget công vic không kh dng. </p>
<h3 id="always_on_vpn">VPN luôn bt </h3>
<p>Người s hu thiết b và người s hu cu hình có th đảm bo rng nhng ng dng công vic luôn kết ni
thông qua mt VPN ch định. H thng s t động khi động VPN đó sau khi
thiết b khi động.</p>
<p>
Các phương thc <code>DevicePolicyManager</code> mi gm
<code>setAlwaysOnVpnPackage()</code> và
<code>getAlwaysOnVpnPackage()</code>.
</p>
<p>Do các dch v VPN có th được gn kết trc tiếp bi h thng mà không cn tương tác
ca ng dng, các máy khách VPN cn x lý các đim bt đầu cho VPN luôn bt. Ging
trước đây, các dch v được ch định ti h thng bng mt b lc ý định phù hp vi
hành động <code>android.net.VpnService</code>. </p>
<p>
Người dùng cũng có th đặt th công các máy khách VPN luôn bt có cài đặt các phương thc
<code>VPNService</code> trong người dùng chính bng
<strong>Settings&gt;More&gt;Vpn</strong>.
</p>
<h2 id="accessibility_enhancements">Ci tiến tr năng</h2>
<p>Android N nay đã h tr Cài đặt Kh năng nhìn trc tiếp trên màn hình Chào mng khi thiết lp
thiết b mi. Điu này giúp người dùng rt d dàng khám phá và cu hình
các tính năng tr năng trên thiết b ca họ, bao gm c ch phóng đại, c
phông chữ, kích thước hin th và TalkBack. </p>
<p>Vi các tính năng tr năng được b trí ngày càng d thy hơn, khi được bt
kh năng người dùng s th ng dng ca bn s cao hơn. Hãy đảm bo bn kim th ng dng ca mình
trước vi các cài đặt này được bt. Bn có th bt chúng trong Settings &gt;
Accessibility.</p>
<p>Ngoài ra, trong Android N, các dch v tr năng đã có th tr giúp người dùng b các tn thương
vn động chm vào màn hình. API mi cho phép xây dng các dch v vi nhng
tính năng như theo dõi chuyn động ca khuôn mt, theo dõi chuyn động ca mt, quét đim, v.v. nhm
đáp ng nhu cu nhng người dùng này.</p>
<p>Để biết thêm thông tin, hãy xem <code>android.accessibilityservice.GestureDescription</code>
trong tài liu <a href="{@docRoot}preview/setup-sdk.html#docs-dl">Tham kho API</a> có thể tải xuống.</p>
<h2 id="direct_boot">Khi động Trc tiếp</h2>
<p>Khi động Trc tiếp ci thin thi gian khi động ca thiết b và cho phép các ng dng
đã đăng ký có chc năng hn chế ngay c sau khi khi động li ngoài d kiến.
Ví dụ, nếu mt thiết b được mã hóa khi động li khi người dùng đang ng thì
báo thc, tin nhn và các cuc gi đến đã đăng ký có th tiếp tc thông báo
cho người dùng như thường lệ. Điu này cũng có nghĩa là các dch v tr năng cũng s
kh dng ngay sau khi khi động xong.</p>
<p>Khi động Trc tiếp s dng mã hóa theo tp trong Android N
để bt các chính sách mã hóa chi tiết cho c d liu ca h thng và ng dng.
H thng s s dng mt b lưu tr mã hóa thiết b cho d liu h thng được chn và d liu ng dng
đã đăng ký công khai. Theo mc định, mt b lưu tr mã hóa thông tin xác thc s được s dng cho mi
d liu h thng, d liu người dùng, ng dng và d liu ca ng dng khác. </p>
<p>Trong quá trình khi động, h thng s khi động vào chế độ hn chế và ch có quyn truy cp ti
d liu mã hóa thiết b mà thôi, và không có quyn truy cp thông thường ti ng dng hoc d liu.
Nếu bn có các thành phn mun chy trong chế độ này thì bn có th đăng ký
chúng bng cách đặt c trong bn kê khai. Sau khi khi động, h thng s kích hot
các thành phn đã đăng ký bng cách truyn phát ý định <code>LOCKED_BOOT_COMPLETED</code>
. H thng s đảm bo cho d liu mã hóa thiết b đã đăng ký s kh dng
trước khi m khóa. Mi d liu khác s không kh dng cho ti khi Người dùng xác nhn thông tin xác thc trên màn hình khóa
ca h để gii mã nó. </p>
Để biết thêm thông tin, hãy xem <a href="{@docRoot}preview/features/direct-boot.html">Khi động Trc tiếp</a>.</p>
</p>
<h2 id="key_attestation">Chng thc khóa</h2>
<p>Các b lưu tr khóa da trên phn cng cung cp mt phương thc an toàn hơn rt nhiu để to, lưu trữ,
và s dng các khóa mt mã trên thiết b Android. Chúng bo v các khóa trước
nhân Linux, trước các l hng bo mt tim tàng ca Android và trước vic trích xut
t các máy b giành quyn điu khin và b can thip vào các tp h thng (máy b root).</p>
<p>Android N đã đưa ra tính năng Chng thc khóa để s dng các b lưu tr khóa da trên phn cng mt cách
d dàng và bo mt hơn. Các ng dng và dch v không thuc thiết b có th s dng Chng thc
khóa để xác định chc chn xem mt cp khóa RSA hoc EC có
da trên phn cng hay không, các đặc đim ca cp khóa đó là gì và
các ràng buc nào được áp dng cho vic s dng và tính hp l ca cp khóa đó. </p>
<p>Các ng dng và dch v không thuc thiết b có th yêu cu thông tin v mt cp khóa
thông qua chng ch chng thc X.509. Chng ch này phi được ký bi mt khóa
chng thc hp lệ. Khóa chng thc là mt khóa ký ECDSA, được
đưa vào b lưu tr khóa da trên phn cng ca thiết b ti nhà máy.
Do đó, mt chng ch chng thc được ký bi khóa
chng thc hp l s xác nhn s tn ti ca b lưu tr khóa da trên phn cng, kèm theo
chi tiết v các cp khóa trong b lưu tr khóa đó.</p>
<p>Để chc chn thiết b đang s dng nh
Android bo mt, chính thc t nhà máy, Chng thc khóa yêu cu <a class="external-link" href="https://source.android.com/security/verifiedboot/verified-boot.html#bootloader_requirements">bootloader</a>
ca thiết b cung cp thông tin sau cho <a class="external-link" href="https://source.android.com/security/trusty/index.html">Môi trường Thc thi
An toàn (TEE)</a>:</p>
<ul>
<li>Phiên bn HĐH và cp vá li được cài đặt trên thiết bị</li>
<li>Khóa công khai <a href="https://source.android.com/security/verifiedboot/index.html" class="external-link">Khi động được xác thc</a> và trạng thái khóa</li>
</ul>
<p>Để biết thêm thông tin v tính năng b lưu tr khóa da trên phn cng,
hãy xem hướng dn <a href="https://source.android.com/security/keystore/" class="external-link">B lưu tr khóa da trên phn cng</a>.</p>
<p>Ngoài Chng thc khóa, Android N cũng gii thiu
các khóa da vào vân tay mà không được thu hi khi đăng ký vân tay.</p>
<h2 id="network_security_config">Cu hình Bo mt mng</h2>
<p>Trong Android N, các ng dng có th tùy biến hành vi ca các kết ni
bo mt (HTTPS, TLS) ca chúng mt cách an toàn mà không cn chnh sa mã nh s dng khai báo
<em>Cu hình Bo mt mng</em> thay vì s dng các API lp trình truyn thng
d xy ra li (vd: X509TrustManager).</p>
<p>Các tính năng được h trợ:</p>
<ul>
<li><b>Ngun tin cy tùy chnh.</b> Cho phép mt ng dng tùy chnh
Nhà cung cp chng ch (CA) nào s được tin cy cho các kết ni bo mt ca ng dng. Ví
dụ, tin cy các chng ch t ký c th hoc mt b gii hn các CA công khai.
</li>
<li><b>Ch khng chế khi g li.</b> Cho phép nhà phát trin ng dng an toàn g li
các kết ni bo mt ca ng dng mà không to thêm ri ro cho phn cơ s
đã cài đặt.
</li>
<li><b>Không s dng truyn gi văn bn chưa mã hóa.</b> Cho phép mt ng dng t bo v mình khi vic
vô tình s dng truyn gi văn bn chưa mã hóa cleartext.</li>
<li><b>Ghim chng chỉ.</b> Mt tính năng nâng cao cho phép mt ng dng
gii hn các khóa máy ch nào là an toàn đối vi các kết ni bo mt.</li>
</ul>
<p>Để biết thêm thông tin, hãy xem <a href="{@docRoot}preview/features/security-config.html">Cu hình Bo mt
mng</a>.</p>
<h2 id="default_trusted_ca">Nhà cung cp Chng ch An toàn mc định</h2>
<p>Theo mc định, các ng dng nhm mc tiêu Android N ch tin cy các chng ch do h thng cp
và không còn tin cy các Nhà cung cp chng ch (CA) do người dùng thêm vào. Các ng dng nhm mc tiêu Android
N mun tin cy các CA do người dùng thêm vào nên s dng
<a href="{@docRoot}preview/features/security-config.html">Cu hình Bo mt mng</a> để
ch định cách thc tin cy các CA ca người dùng.</p>
<h2 id="apk_signature_v2">Lược đồ ch ký s v2 cho tp APK</h2>
<p>Lp PackageManager nay đã h tr xác thc ng dng bng Lược đồ ch ký s v2
APK. Lược đồ ch ký s v2 APK là mt lược đồ ch ký s trên toàn b tp
làm tăng đáng k tc độ xác thc và tăng cường s bo đảm
toàn vn bng cách phát hin các thay đổi trái phép đối vi các tp APK.</p>
<p>Để bo đảm tương thích ngược, mt tp APK phi được ký bng lược đồ
ch ký s v1 (Lược đồ ch ký s JAR) trước khi được ký bng lược đồ ch ký s v2.
Vi lược đồ ch ký s v2, quá trình xác thc s tht bi nếu bn ký tp APK bng mt
chng ch khác sau khi ký bng lược đồ v2. </p>
<p>H tr cho lược đồ ch ký s v2 cho tp AKP s có sau trong N Developer
Preview.</p>
<h2 id="scoped_directory_access">Truy cp thư mc theo phm vi</h2>
<p>Trong Android N, ng dng có th s dng các API mi để yêu cu truy cp vào các thư mc <a href="{@docRoot}guide/topics/data/data-storage.html#filesExternal">b nh lưu tr
ngoài</a> riêng, bao gm các thư mc trên phương tin có th tháo ra như th
SD. Các API mi đã ti gin cách thc ng dng ca bn truy cp các thư mc lưu tr ngoài
tiêu chun như thư mc <code>Pictures</code>. Các ng dng
như ng dng qun lý nh có th s dng các API này thay vì s dng
<code>READ_EXTERNAL_STORAGE</code> để cp quyn truy cp ti mi thư mc
lưu trữ, hoc Khuôn kh Truy cp Lưu tr để giúp người dùng di chuyn ti
thư mc đó.</p>
<p>Ngoài ra, các API mi này cũng đơn gin hóa các bước mà người dùng thc hin để cp quyn truy cp
b nh lưu tr ngoài cho ng dng ca bn. Khi bn s dng các API mi, h thng s s dng mt UI cp quyn
đơn gin cung cp các thông tin chi tiết rõ ràng v thư mc nào ng dng đang
yêu cu quyn truy cp.</p>
<p>Để biết thêm thông tin, hãy xem tài liu cho nhà phát trin
<a href="{@docRoot}preview/features/scoped-folder-access.html">Truy cp
Thư mc theo Phm vi</a>.</p>