Smali – tai asemblerio tipo kalba, naudojama Android programoms. Ji yra tarpinė kalba tarp Java baitinio kodo („.class“ failų) ir DEX formato, kurį vykdo Android sistema.
Trumpai:
- Tai žmogui skaitoma Android programų asemblerio kalba.
- Naudojama analizuoti ir modifikuoti Android programas.
- Sukuriama kompiliuojant Java kodą, o po to konvertuojama į DEX.
Pavyzdys (paprasta Smali kodo dalis, atitinkanti `int a = 5;`):
smali
const/4 v0, 0x5
Čia `v0` yra registras, o `0x5` – reikšmė 5 šešioliktainėje sistemoje.
Naudojimas: Dažniausiai susiduriama atliekant Android programų atvirkštinį inžineriją, saugumo analizę ar modifikavimą (pvz., žaidimų modifikacijos).
Jūsų pataisymai bus išsiųsti moderatorių peržiūrai, jei informacija tikslesnė/taisyklingesnė
ji bus patalpinta vietoj esamos.