Android Studio 3.5 Canary adaugă „Aplicați modificări”, un înlocuitor de Instant Run

click fraud protection

Android Studio 3.5 introduce Apply Changes, succesorul funcției Instant Run a popularului instrument de dezvoltare a aplicațiilor.

Android Studio 3.5 (în prezent în canalele Canary și Dev) oferă acum o nouă modalitate de a introduce modificările codului în aplicația dvs. și de a vedea efectele acestora din mers, fără a fi nevoie să reporniți aplicația. Numit pur și simplu „Aplicați modificări”, este succesorul caracteristicii „Instant Run” din versiunile anterioare ale Android Studio.

de la Google Blogul dezvoltatorilor Android spune următoarele despre Aplicarea modificărilor:

Aplicarea modificărilor vă permite să introduceți modificări de cod și resurse în aplicația care rulează fără a reporni aplicația și, în unele cazuri, fără a reporni activitatea curentă. Aplicarea modificărilor înlocuiește Instant Run cu o abordare complet nouă pentru optimizarea construcției. În loc să rescrie codul octet al APK-ului tău în timpul construirii, Apply Changes redefinește clasele din mers, utilizând instrumentele de rulare acceptate în Android 8.0 (API nivel 26) sau o versiune ulterioară.

În plus, Android Studio vă solicită acum să decideți dacă vă reporniți aplicația sau activitatea atunci când detectează că modificările nu sunt compatibile cu Aplicarea modificărilor. Acest control suplimentar ar trebui să vă ofere o experiență mai consistentă și mai previzibilă în comparație cu comportamentul Instant Run.

Postarea de blog continuă să enumere câteva limitări ale noii funcționalități. De exemplu, dispozitivul pe care testați aplicația trebuie cel puțin să ruleze Android 8.0 Oreo (API Nivel 26) și există anumite modificări de cod care vor necesita în continuare repornirea aplicației. Ca și în cazul „Executare instantanee”, „Aplicați modificări” va forța aplicația să repornească dacă sunteți:

  • Adăugarea sau ștergerea unei clase, metode sau câmpuri
  • Schimbarea manifestului
  • Schimbarea semnăturilor metodei
  • Modificarea modificatorilor metodelor sau claselor
  • Redenumirea claselor
  • Schimbarea moștenirii de clasă
  • Adăugarea sau eliminarea unei resurse

Sub „Probleme cunoscute”, postarea de blog afirmă că, deoarece Google a prioritizat inițial stabilitatea față de performanță în această nouă funcție, „Aplicați modificări” va rula uneori. mai încet decât caracteristica anterioară „Instant Run”. De asemenea, imaginile emulatorului x86_x64 nu sunt acceptate și, în scopuri de depanare, numai Android Pie (Nivel API 28) este sprijinit. Puteți vedea lista completă a limitărilor și problemelor cunoscute la linkul sursă de mai jos.

Pentru o descriere mai detaliată a diferenței dintre „Aplicați modificări” și „Executare instantanee”, un angajat Google din echipa Android Studio a spus acest lucru pe Reddit:

Face ceva foarte, foarte diferit. Instant Run a avut un impact foarte specific asupra construcției, instrumentând fiecare dintre clasele dvs. în timpul compilării pentru a le pregăti pentru a fi înlocuite în timpul rulării cu o nouă versiune a clasei. De asemenea, v-a împărțit APK-ul în mai multe APK-uri pentru a vă reîncărca aplicația mai progresiv.

Aplicați modificări nu face nimic asemănător. APK-ul tău este aproape același, indiferent dacă folosești Apply Changes sau nu. În schimb, se bazează pe noile capacități de instrumentare în timp de execuție ale VM-ului ART pentru a reîncărca clasele dinamice și a le înlocui în timp ce aplicația rulează. Acesta este motivul pentru care necesită versiuni mult mai noi de Android.

Se așteaptă ca „Aplicați modificări” să înlocuiască „Instant Run” în canalele Beta și Stable, pe măsură ce Google aduce îmbunătățiri la performanța și stabilitatea acestuia.


Sursa: Blogul dezvoltatorilor Android