Սկիպ կոնտենտ
A8

Android 8.1 Developer Preview for Android APK

Հրատարակիչ: Google
Android APK Free
Ներբեռնում vPreview 1K բեռնումներ
Ֆայլի տեսակAPK
ՏարբերակPreview
Հրատարակիչ Google
Թողարկման ամսաթիվ25 հոկ, 2017 թ.
Ավելացման ամսաթիվը25 հոկ, 2017 թ.
OS պահանջներըAndroid
ՊահանջներOnly compatible with the Nexus 5X, Nexus 6P, Pixel C, Pixel, Pixel XL, Pixel 2, and Pixel 2 XL.
Ընդհանուր ներբեռնումներ1 002
Շաբաթական ներբեռնումներ8
ԳինըFree

Նկարագրություն

Android O-ն օգտատերերի և մշակողների համար ներկայացնում է մի շարք նոր հնարավորություններ և հնարավորություններ: Այս փաստաթուղթը ընդգծում է, թե ինչ նորություն կա մշակողների համար:

Համոզվեք, որ ստուգեք Android O-ի վարքագծի փոփոխությունները՝ իմանալու այն ոլորտների մասին, որտեղ հարթակի փոփոխությունները կարող են ազդել ձեր հավելվածների վրա:

Նյարդային ցանցերի API

Նյարդային ցանցերի API-ն (NNAPI) ապահովում է հավելվածների ապարատային արագացում՝ սարքի վրա մեքենայական ուսուցման գործողությունների համար: API-ն աջակցում է սարքի վրա մոդելի ստեղծմանը, կազմմանը և կատարմանը: Հավելվածները սովորաբար ուղղակիորեն չեն օգտագործում NNAPI; Փոխարենը, NNAPI-ն կոչվելու է մեքենայական ուսուցման գրադարանների, շրջանակների և գործիքների միջոցով, որոնք թույլ են տալիս մշակողներին վերապատրաստել իրենց մոդելները և տեղադրել դրանք Android սարքերում:

Նյարդային ցանցերի API-ի մասին ավելին իմանալու համար տե՛ս Նյարդային ցանցերի API-ի տեղեկատու փաստաթղթերը և Նյարդային ցանցերի API մշակողների ուղեցույցը:

Ծանուցումներ

Android 8.1 Developer Preview 1-ը ներառում է ծանուցումների հետևյալ փոփոխությունները.

Այժմ հավելվածները կարող են միայն վայրկյանում մեկ անգամ ծանուցման ազդանշան հնչեցնել: Զգուշացման ձայները, որոնք գերազանցում են այս ցուցանիշը, հերթագրված չեն և կորչում են: Այս փոփոխությունը չի ազդում ծանուցումների վարքագծի այլ ասպեկտների վրա, և ծանուցումների հաղորդագրությունները դեռևս հրապարակվում են այնպես, ինչպես սպասվում էր:

NotificationListenerService-ը և ConditionProviderService-ը չեն աջակցվում ցածր հզորությամբ Android-ով աշխատող սարքերում, որոնք վերադարձնում են true, երբ կանչվում է ActivityManager.isLowRamDevice()-ը:

Բարելավված թիրախավորում ցածր RAM սարքերի համար

Android 8.1-ը (API մակարդակ 27) ավելացնում է ապարատային-առանձնահատկությունների երկու նոր հաստատուններ՝ FEATURE_RAM_LOW և FEATURE_RAM_NORMAL, Փաթեթների կառավարիչին: Այս հաստատունները թույլ են տալիս թիրախավորել ձեր հավելվածների և APK-ի բաժանումները նորմալ կամ ցածր RAM սարքերի վրա:

Այս հաստատունները թույլ են տալիս Play Store-ին նպաստել օգտատերերի ավելի լավ փորձին՝ ընդգծելով հավելվածները, որոնք հատկապես լավ են համապատասխանում տվյալ սարքի հնարավորություններին:

Ինքնալրացման շրջանակի թարմացումներ

Android 8.1 Developer Preview (API մակարդակ 27) ապահովում է մի քանի բարելավումներ Autofill Framework-ում, որոնք դուք կարող եք ներառել ձեր հավելվածներում:

Մշակողի նախադիտումն ավելացնում է անհատական ​​նկարագրությունների աջակցություն, որոնք Android համակարգը ցուցադրում է ավտոմատ լրացման պահպանման միջերեսում՝ տվյալների սկզբնական ներկայացման փոխարեն: Սա օգտակար է, օրինակ, երբ ցանկանում եք քողարկել կրեդիտ քարտի համարը և ցույց տալ միայն վերջին չորս թվանշանները: Ավելին իմանալու համար տես CustomDescription դասը:

Մշակողի նախադիտումը թույլ է տալիս նշել վավերացնող օբյեկտ, որը ձեր հավելվածը կարող է օգտագործել՝ որոշելու, թե արդյոք Android համակարգը պետք է ցուցադրի ինքնալրացման պահպանման միջերեսը: Այս ֆունկցիոնալությունը տրամադրվում է SaveInfo.Builder դասի setValidator() մեթոդով։

Developer Preview-ում BaseAdapter դասը ներառում է setAutofillOptions() մեթոդը, որը թույլ է տալիս տրամադրել ադապտերների արժեքների լարային ներկայացումներ: Սա օգտակար է պտտվող կառավարիչների համար, որոնք դինամիկ կերպով առաջացնում են արժեքներ իրենց ադապտերներում: Օրինակ, դուք կարող եք օգտագործել thesetAutofillOptions() մեթոդը՝ տրամադրելու լարային ներկայացում այն ​​տարիների ցանկի համար, որոնք օգտատերերը կարող են ընտրել որպես վարկային քարտի գործողության ժամկետի մաս: Ինքնալրացման ծառայությունները կարող են օգտագործել տողերի ներկայացումը՝ տվյալներ պահանջող դիտումները պատշաճ կերպով լրացնելու համար:

Բացի այդ, AutofillManager դասը ներառում է notifyViewVisibilityChanged(View, int, boolean) մեթոդը, որը կարող եք զանգահարել՝ վիրտուալ կառուցվածքում դիտման տեսանելիության փոփոխության մասին տեղեկացնելու շրջանակին: Կա նաև մեթոդի գերբեռնվածություն ոչ վիրտուալ կառույցների համար: Այնուամենայնիվ, ոչ վիրտուալ կառույցները սովորաբար չեն պահանջում, որ դուք հստակ ծանուցեք շրջանակը, քանի որ մեթոդն արդեն կանչված է View դասի կողմից:

EditText թարմացում

Սկսած API մակարդակից 27, EditText.getText() մեթոդը վերադարձնում է Editable; նախկինում այն ​​վերադարձրել է CharSequence: Այս փոփոխությունը հետընթաց-համատեղելի է, քանի որ Editable-ն իրականացնում է CharSequence:

Խմբագրելի ինտերֆեյսը ապահովում է արժեքավոր լրացուցիչ գործառույթներ: Օրինակ, քանի որ Editable-ն իրականացնում է նաև Spannable ինտերֆեյսը, դուք կարող եք նշել բովանդակությունը EditText-ի օրինակում:

Ծրագրային ապահով զննարկման գործողություններ

Օգտագործելով Safe Browsing API-ի WebView ներդրումը, ձեր հավելվածը կարող է հայտնաբերել, երբ WebView-ի օրինակը փորձում է նավարկել դեպի URL, որը Google-ը դասակարգել է որպես հայտնի սպառնալիք: Լռելյայնորեն, WebView-ը ցույց է տալիս ինտերստիցիալ, ինչպես ցույց է տրված Նկար 1-ում, որը նախազգուշացնում է օգտագործողին հայտնի սպառնալիքի մասին և նրան հնարավորություն է տալիս բեռնել URL-ը, այնուամենայնիվ, կամ վերադառնալ նախկին անվտանգ էջ:

Android 8.1 Developer Preview-ում դուք կարող եք ծրագրային կերպով սահմանել, թե ինչպես է ձեր հավելվածն արձագանքում հայտնի սպառնալիքին.

Դուք կարող եք վերահսկել, թե արդյոք ձեր հավելվածը հայտնի սպառնալիքներ է հաղորդում Անվտանգ զննարկմանը:

Դուք կարող եք ստիպել ձեր հավելվածին ավտոմատ կերպով կատարել որոշակի գործողություն, օրինակ՝ վերադառնալ անվտանգություն, ամեն անգամ, երբ այն հանդիպում է URL-ի, որը Safe Browsing-ը դասակարգում է որպես հայտնի սպառնալիք:

Նշում. Հայտնի սպառնալիքներից օպտիմալ պաշտպանվելու համար սպասեք, մինչև որ նախաստորագրեք Safe Browsing-ը, նախքան WebView օբյեկտի loadUrl() մեթոդը կանչելը:

Տեսանյութի մանրապատկերների արդյունահանող

MediaMetadataRetriever դասն ունի նոր մեթոդ՝ getScaledFrameAtTime(), որը գտնում է շրջանակը տվյալ ժամանակային դիրքի մոտ և վերադարձնում է բիթքարտեզ նույն գծերի հարաբերակցությամբ, ինչ սկզբնական շրջանակը, բայց չափված՝ տեղավորելու տրված լայնության և բարձրության ուղղանկյունի մեջ: Սա օգտակար է տեսանյութից մանրապատկերներ ստեղծելու համար:

Խորհուրդ ենք տալիս օգտագործել այս մեթոդը, այլ ոչ թե getFrameAtTime(), որը կարող է վատնել հիշողությունը, քանի որ այն վերադարձնում է բիթքարտեզ նույն լուծաչափով, ինչ սկզբնաղբյուր տեսանյութը: Օրինակ, 4K տեսանյութի շրջանակը կլինի 16 ՄԲ բիթքարտեզ, որը շատ ավելի մեծ է, քան անհրաժեշտ կլինի մանրապատկերի պատկերի համար:

Համօգտագործվող հիշողության API

Android 8.1-ը (API մակարդակ 27) ներկայացնում է նոր SharedMemory դաս: Այս դասը թույլ է տալիս ստեղծել, քարտեզագրել և կառավարել անանուն ընդհանուր հիշողություն, որը կարող է օգտագործվել բազմաթիվ գործընթացների կամ հավելվածների կողմից:

WallpaperColors API

Android 8.1 Developer Preview-ը (API մակարդակ 27) ավելացնում է պաստառի գույների կառավարման աջակցություն: Այս հատկությունը թույլ է տալիս ստեղծել WallpaperColors օբյեկտ bitmap-ից, գծագրվողից կամ օգտագործելով առաջին երեք առավել տեսողական գույները: Կարող եք նաև առբերել պաստառի առաջին երեք նկատելի գույների մանրամասները:

WallpaperColors օբյեկտ ստեղծելու համար կատարեք հետևյալներից որևէ մեկը.

Երեք գույն օգտագործելով WallpaperColors օբյեկտ ստեղծելու համար ստեղծեք WallpaperColors դասի օրինակ՝ փոխանցելով հիմնական, երկրորդական և երրորդային գույները: Հիմնական գույնը չպետք է զրոյական լինի:

Bitmap-ից WallpaperColors օբյեկտ ստեղծելու համար զանգահարեք fromBitmap() մեթոդը՝ որպես պարամետր փոխանցելով bitmap աղբյուրը:

WallpaperColors օբյեկտը drawable-ից ստեղծելու համար կանչեք fromDrawable() մեթոդը՝ որպես պարամետր փոխանցելով drawable աղբյուրը:

Պաստառից առաջնային, երկրորդական կամ երրորդային գույնի մանրամասները ստանալու համար զանգահարեք հետևյալ մեթոդները.

getPrimaryColor()-ը վերադարձնում է պաստառի առավել նկատելի գույնը:

getSecondaryColor()-ը վերադարձնում է պաստառի երկրորդ ամենահայտնի գույնը:

getTertiaryColor() մեթոդը վերադարձնում է պաստառի երրորդ ամենահայտնի գույնը

Համակարգին գունային փոփոխությունների մասին ծանուցելու համար զանգահարեք notifyColorsChanged() մեթոդը: Այս մեթոդը գործարկում է onComputeColors()lifecycle միջոցառումը, որտեղ դուք հնարավորություն ունեք ապահովելու նոր WallpaperColors օբյեկտ:

Գույնի փոփոխության համար լսող ավելացնելու համար կարող եք զանգահարել addOnColorsChangedListener() մեթոդը: Կարող եք նաև զանգահարել getWallpaperColors() մեթոդը՝ պաստառի հիմնական գույները ստանալու համար:

Մատնահետքերի թարմացումներ

FingerprintManager դասը ներկայացրել է հետևյալ սխալի կոդերը.

FINGERPRINT_ERROR_LOCKOUT_PERMANENT – Օգտատերը չափազանց շատ անգամներ է փորձել ապակողպել իր սարքը՝ օգտագործելով մատնահետքի ընթերցիչը:

FINGERPRINT_ERROR_VENDOR - Տեղի ունեցավ մատնահետքի ընթերցողի հատուկ վաճառողի սխալ:

Նմանատիպ ծրագրեր

Այլընտրանքներ

Ավելին այս հրատարակչից