Sobes.tech
Junior

Šta je ProGuard?

sobes.tech АИ

Одговор од АИ

ProGuard je besplatni alat otvorenog koda za smanjenje, optimizaciju i obfuskaciju Java bajt koda. U Android Studiju, podrazumevano se koristi u režimu release za poboljšanje bezbednosti i smanjenje veličine APK/App Bundle.

Glavne funkcije ProGuard-a:

  • Smanjenje: Uklanja neiskorišćene klase, polja, metode i atribute.
  • Optimizacija: Analizira i optimizuje bajt kod, čineći ga efikasnijim. Na primer, ugrađuje male metode.
  • Obfuskacija: Preimenuje klase, polja i metode u kratka, besmislena imena (npr. a, b, c), što otežava reverzno inženjerstvo (dekompilaciju) koda.
  • Preverifikacija: Dodaje informacije u bajt kod koje ubrzavaju učitavanje JVM klasa.

Konfiguracija ProGuard-a vrši se putem pravila (npr. proguard-rules.pro), gde se može navesti šta ostaviti netaknuto (npr. klase korišćene u Manifest fajlu, nativne metode, klase za Parcelable i Serializable). Bez ovih pravila, ProGuard može ukloniti ili preimenovati komponente potrebne za ispravan rad aplikacije.

Rezultat rada ProGuard-a je kompaktni, efikasniji i zaštićen bajt kod od reverznog inženjerstva.