CUM SA

De ce modifică Google formatul aplicației Android? – CloudSavvy IT

Robot Android
quietbits / Shutterstock.com

Aplicațiile Android au fost distribuite în mod istoric ca APK-uri (pachete Android). Un APK conține o versiune compilată a unei aplicații, împreună cu resurse media critice, cum ar fi pictograme și sunete. Acestea includ, de asemenea, un fișier manifest, care furnizează informații despre aplicație sistemului Android și un set de certificate și chei de semnare care verifică identitatea editorului.

În mai 2018, Google a lansat un nou format de ambalare a aplicațiilor menit să soluționeze unele dintre neajunsurile cu APK-urile. Android App Bundles (AAB) îndeplinesc același rol ca APK-urile, dar cu diferențe semnificative de implementare.

La Google I / O 2021, Google a anunțat că AAB va deveni formatul implicit al aplicației Android. De la sfârșitul lunii august, Magazinul Play va solicita trimiterea de noi publicații de aplicații ca AAB. Utilizatorii finali care folosesc doar Magazin Play nu vor trebui să facă nimic. Pentru dezvoltatori, povestea este puțin mai complicată.

Beneficii pentru pachetul de aplicații

AAB a fost inițial introdus ca o modalitate de a rezolva unele dintre provocările obișnuite de ambalare din ecosistemul Android. Android rulează pe mii de dispozitive care acoperă o gamă largă de dimensiuni de ecran, linii de bază de performanță și arhitecturi CPU. Formatul APK nu se ridică pentru a satisface această diversitate, deoarece fiecare pachet conține toate resursele aplicației.

Dacă instalați o aplicație pe telefonul dvs., nu trebuie să descărcați cu adevărat variantele de tablete de înaltă rezoluție ale graficii sale. Cu toate acestea, cu APK, veți obține în mod normal fiecare variantă, provocând descărcări mai mari și o utilizare sporită a spațiului de stocare. Dacă un dezvoltator dorește să ofere versiuni mai simplificate, trebuie să compileze manual și să semneze mai multe APK-uri diferite.

Pachetele de aplicații adoptă o abordare diferită. Prin proiectare, ele „grupează” mai multe versiuni diferite ale unei aplicații într-un singur pachet logic. Magazinul Play trimite apoi numai biții relevanți către fiecare dispozitiv care solicită o instalare. Va produce pachetul potrivit la cerere pentru fiecare utilizator, astfel încât un utilizator american cu un dispozitiv Intel de 10 inci va primi o descărcare diferită față de o persoană germană cu un telefon ARM de 5 inci. În mod crucial, dispozitivele primesc în continuare APK-uri – utilizatorii nu vor interacționa niciodată direct cu un App Bundle. Diferența este că APK-urile sunt generate dinamic, în cloud.

Citeste si  De ce ar trebui să utilizați RingCentral Video în loc de Zoom Basic pentru afacerea dvs. mică

Pachetele de aplicații beneficiază, de asemenea, de încărcarea mai simplă a modulelor de completare și de asistență îmbunătățită pentru active mari, cum ar fi conținutul jocului. Potrivit Google, toate acestea duc de obicei la o reducere de 15% a dimensiunii descărcării, comparativ cu aceeași aplicație distribuită ca un APK.

Ce se schimbă pentru APK-urile?

Google va elimina treptat suportul pentru APK-uri începând din august 2021. Noile aplicații trimise în Magazin Play vor trebui să fie publicate ca un pachet de aplicații. Aplicațiile existente bazate pe APK vor fi în continuare acceptate, iar dezvoltatorii vor putea continua să emită actualizări. Aceste aplicații sunt descrise ca „în prezent scutite”, sugerând că actualizările ar trebui să fie lansate ca AAB-uri în viitor.

Potrivit Google, schimbarea se face astfel încât mai mulți utilizatori să beneficieze de avantajele App Bundle. Din perspectiva unui utilizator final tipic, este dificil să ne certăm cu promisiunea App Bundles: descărcările mai mici și spațiul de stocare redus vor fi binevenite de mulți, în special cei de pe dispozitivele low-end și conexiunile de internet lente.

Utilizatorii de versiuni mai vechi de Android nu vor vedea avantajele, deoarece dispozitivul lor nu va putea asambla pachete „divizate” într-o aplicație funcțională. Versiunile de sisteme de operare învechite vor putea totuși să instaleze aplicații App Bundle din Play Store – sistemul de grupare își va da seama că gestionează un dispozitiv mai vechi și va furniza în schimb un APK all-in-one obișnuit.

Dar dezavantajele?

Deși avantajele principale sunt fără îndoială, pachetele de aplicații au un dezavantaj semnificativ atât pentru dezvoltatori, cât și pentru utilizatorii avansați. Întrucât sistemul App Bundle se concentrează pe generarea dinamică in-cloud de APK-uri semnate, dezvoltatorii trebuie să predea cheile de semnare a aplicației către Google. În loc ca dezvoltatorii să semneze actualizări de aplicații în propria infrastructură de construcție, Google va prelua un pachet de aplicații și îl va converti în APK-uri semnate.

Citeste si  Android 101: cum să eliberați spațiu pe telefon

Procesul de semnare permite dispozitivelor Android să verifice dacă actualizările provin de la același editor ca și aplicația instalată în prezent. Este o parte critică a ecosistemului care împiedică actorii răi să producă aplicații rău intenționate care suprascriu în liniște descărcările autentice. Google promite că dezvoltatorii vor putea furniza propriile chei, dar vor trebui să fie păstrați în Play Store.

A avea încredere în Google pentru a stoca cheile de semnare oferă companiei și mai mult control asupra distribuției aplicațiilor Android. Oricine a compromis cu succes Magazinul Play ar putea începe să publice actualizări de aplicații în conturile de dezvoltator, deoarece toate cheile de semnare vor fi centralizate în infrastructura Google.

Mai mult, Google ar putea publica acum actualizări de aplicații, poate dacă un guvern ar impune acest lucru. Are deja capacitatea de a instala în liniște aplicații pe dispozitive Android. Acum deține cheile pentru regatele dezvoltatorilor, ar putea respecta cererile de instalare ascunsă a actualizărilor neaprobate ale aplicațiilor existente.

Ar putea o agenție guvernamentală să solicite Google să instaleze o aplicație de mesagerie criptată modificată pe dispozitivul unui utilizator țintă? O astfel de cerere ar putea permite agenției să intercepteze mesaje, fără ca ținta să fie mai înțeleaptă. Pachetele de aplicații și semnarea găzduită fac scenariul teoretic posibil.

Riscul este presupus atenuat de un sistem de „transparență a codului”. Aceasta este menită să ofere dezvoltatorilor și utilizatorilor finali o modalitate de a verifica dacă APK-urile descărcate se potrivesc cu pachetul trimis în Magazin Play, eliminând posibilitatea intruziunii.

Android nu verifică, de fapt, semnăturile de transparență a codului, așa că depinde de comunitate să construiască instrumente în jurul său. În plus, transparența codului este complet opțională și este activată numai atunci când APK-ul include un fișier de transparență. Deoarece Google deține deja cheile necesare pentru a genera APK-uri noi, ar putea elimina fișierul de transparență a codului ori de câte ori a dorit.

Citeste si  Cum să faceți o copie de rezervă a iPhone-ului dvs. în cloud sau pe Mac sau PC

Pachete de aplicații și magazine de aplicații terțe

Pachetele de aplicații reprezintă, de asemenea, o amenințare la adresa naturii deschise a ecosistemului Android. În ultimii ani, Google a afirmat un rol de administrare mai puternic. Pachetele de aplicații sunt o altă lovitură împotriva magazinelor de aplicații terțe, care oferă descărcări directe APK.

Deoarece dezvoltatorii vor trebui acum să compileze pachete de aplicații, versiunile APK sunt eliminate. Ar putea fi doar o chestiune de timp înainte ca Google să dezactiveze complet instalarea directă a APK-ului sau să elimine capabilitățile de compilare APK din versiunile oficiale Android Studio.

Deocamdată, dezvoltatorii vor putea descărca APK-uri autonome semnate din Magazin Play, după ce au trimis pachete de aplicații. Aceste fișiere APK vor fi gata de încărcare în magazinele de aplicații terțe, deci nu există niciun risc imediat pentru acest model de implementare. Totuși, este încă un inconvenient pentru dezvoltatori – trebuie fie să descărcați manual fișierele APK semnate, fie să le construiți separat pe computerul dvs. local.

Google a anunțat trecerea obligatorie la App Bundles la câteva zile după ce Microsoft a prezentat Windows 11 cu suport pentru aplicațiile Android din Amazon App Store. Deși trecerea la App Bundles a fost de câțiva ani în devenire, decizia Google de a face această mutare ar putea fi menită să limiteze impactul parteneriatului Microsoft / Amazon, care va sprijini doar APK-urile obișnuite.

Concluzie

Android App Bundles sunt un nou format de compilare a aplicațiilor cu o eficiență mult mai mare decât un APK obișnuit. Deși dispozitivele vor primi în cele din urmă un APK, fiecare va fi adaptat în mod specific versiunii sistemului de operare, factorului de formă al dispozitivului și setărilor locale active.

În timp ce pachetele de aplicații ar trebui să fie binevenite de majoritatea utilizatorilor de Android, acestea nu reprezintă o soluție perfectă pentru dezvoltatori și pentru ecosistemul Android mai larg. Modelul App Bundle conferă Google mai mult control asupra distribuției aplicațiilor, necesitând dezvăluirea cheilor de semnare care ar putea face actualizările forțate ale aplicațiilor o realitate, amenințând în același timp vitrinele terților.

Articole Similare

Lasă un răspuns

Adresa ta de email nu va fi publicată.

Back to top button