Sistem novih podataka za raspakivanje i pakovanje prozora. Kako izdvojiti APK fajlove iz IMG-a (Parsing Android firmware)

Interpolacija, interpolacija- u računarskoj matematici, metoda pronalaženja međuvrijednosti veličine iz postojećeg diskretnog skupa poznatih vrijednosti.

Mnogi od onih koji se bave naučnim i inženjerskim proračunima često moraju da rade sa skupovima vrednosti dobijenim empirijski ili slučajnim uzorkovanjem. Po pravilu, na osnovu ovih skupova potrebno je konstruisati funkciju u koju bi ostale dobijene vrednosti mogle da padaju sa velikom preciznošću. Ovaj zadatak se zove aproksimacija. Interpolacija je vrsta aproksimacije u kojoj kriva konstruisane funkcije prolazi tačno kroz dostupne tačke podataka.

Postoji mnogo metoda interpolacije konačnih razlika. Većina
Newtonova metoda za naprijed interpolaciju (Newton-Gregory metoda) je uobičajena. Interpolacijski polinom u ovom slučaju ima oblik:

Koeficijente C nalazimo koristeći formulu:

Implementacija programa u C#:
korištenje sistema; Interpolacija imenskog prostora ( klasa Program…

Vizualizacija algoritama sortiranja

Program je podijeljen u dvije niti u jednoj od kojih se vrši sortiranje, au drugoj se ponovo iscrtava grafički interfejs. Nakon klika na dugme “Sort”, program poziva metodu “RunSorting” u kojoj se definiše algoritam sortiranja i kreira nova nit u kojoj se pokreće proces sortiranja.
privatni void RunSo…

Kacher Brovina na KT819G

Danas želim da pokažem svoj Kacher, koji sam napravio prošlih zimskih praznika. Neću opisivati ​​cijeli proizvodni proces, jer postoji mnogo članaka na internetu. Pisaću samo o njegovim glavnim parametrima.

Ispod je nekoliko fotografija snimljenih tokom sklapanja uređaja.

Zavojnica je namotana sa približno 2000 zavoja žice od 0,08 mm na PVC cijevi promjera 50 mm i visine 200 mm.

Ploča napravljena od old teugh disk. Sve ostalo je sastavljeno prema dijagramu koji se nalazi na samom dnu stranice.

Prva opcija se napajala iz napajanja starog kompjutera, napona 12 V. Zatim je napravljeno zasebno napajanje, napona 30 V i sa ugrađenim hlađenjem.

Dijagram uređaja:

Šta je CORS i kako ga koristiti

Dijeljenje resursa na više domena (CORS) je W3C specifikacija koja omogućava komunikaciju između domena u pretraživaču. Izgradnjom na vrhu XMLHttpRequest objekta, CORS dozvoljava programerima da rade sa istim idiomima kao i zahtevi sa istom domenom. Slučaj upotrebe za CORS je jednostavan. Zamislite da alice.com ima neke podatke koje bob.com želi dobiti. Ova vrsta zahtjeva tradicionalno nije dozvoljena u okviru iste politike porijekla pretraživača. Međutim, podržavajući CORS zahtjeve, alice.com može dodati neka posebna zaglavlja odgovora koja omogućavaju bob.com pristup podacima. Kao što možete vidjeti iz ovog primjera, CORS podrška zahtijeva koordinaciju između servera i klijenta. Srećom, ako ste programer na strani klijenta, zaštićeni ste od većine ovih detalja. Ostatak ovog članka pokazuje kako klijenti mogu postavljati zahtjeve s više izvora i kako se serveri mogu konfigurirati da podržavaju CORS. Nastavljeno…

Počnimo s činjenicom da vam je potreban Linux. U Windows-u možete samo rastaviti firmver, ali ga nećete moći ponovo sastaviti iz čisto tehničkih razloga. Sada o firmveru. Obično se distribuiraju u obliku ZIP arhiva koje se proširuju kroz prilagođeni oporavak. To je jedan od njih koji će nam trebati za eksperimente. Preporučujem da započnete Romodel putovanje sa nekim prilagođenim firmverom koji je što je moguće bliži AOSP-u, jer je često lakši za razumevanje od standardnog.

  1. Raspakujte arhivu sa firmverom u bilo koju fasciklu.
  2. Preuzmite skriptu sa veze i raspakujte je u bilo koju fasciklu.
  3. Pokrećemo ext fajl (ako se žali na nedostatak Jave, samo preskočite pritiskom na y; Java je potrebna samo za pakovanje).
  4. Sada odaberite raspakivanje pritiskom na dugme 1, a zatim Enter.
  5. Nova fascikla pod nazivom ekstrakt_* će se pojaviti pored ext datoteke i fascikle alata. U njega kopirajte datoteke system.new.dat i system.transfer.list.
  6. Nakon kopiranja datoteka, pritisnite Enter i pričekajte. Nakon nekog vremena, morat ćete ponovo pritisnuti Enter, unijeti administratorsku lozinku i ponovo pritisnuti Enter.
  7. Spreman. Sadržaj sistema je u folderu extract_*/output.

Ručna metoda

Raspakirajte arhivu sa firmverom u bilo koju mapu (na primjer, rom):

$ mkdir ~/rom $ raspakujte path_to_archive -d ~/rom/

Preuzmite alate koji su nam potrebni u ovu fasciklu:

$ cd ~/rom $ wget https://github.com/xpirt/sdat2img/raw/master/sdat2img.py

Pokrenimo skriptu:

$ chmod +x sdat2img.py $ ./sdat2img.py system.transfer.list system.new.dat system.img

Konvertuje datoteku system.new.dat u sirovu sliku pod nazivom system.img. Montirajte sliku u poddirektorijum mnt:

$ mkdir mnt $ sudo mount -t ext4 -o petlja system.img ~/rom/mnt

Struktura Android direktorija

Nakon raspakivanja sistema, pojavit će se sljedeća struktura direktorija:

  • aplikacija- unaprijed instalirane aplikacije sa standardnim privilegijama;
  • priv-app- unapred instalirane aplikacije sa povišenim privilegijama, uključujući neke sistemske komponente;
  • bin- binarne datoteke u ELF formatu, analogni direktoriji /bin i /usr/bin u Linuxu. Sadrži različite sistemske komponente koje koriste komponente sistema višeg nivoa;
  • itd- fajlovi postavki. Potpuni analog /etc u Linuxu, koji koriste, međutim, samo oni komponente sistema. Android aplikacije pohraniti pojedinačne postavke u /data/data/ direktorijume;
  • fontove- fontove. Podrazumevano, sadrži samo Roboto brendirane fontove;
  • okvir- biblioteke Java klasa koje koriste sistem i aplikacije. Tu je i datoteka framework-res.apk koja sadrži Puni opis interfejs operativni sistem, uključujući sve grafičke datoteke;
  • lib I lib64- Linux biblioteke koje koriste sistemske komponente niskog nivoa. Analog direktorija /lib i /usr/lib u Linuxu, uključujući sljedeće standardne biblioteke, kao libc, libz, libssl. Na uređajima sa ARMv7 arhitekturom i nižim, lib64 direktorijum će nedostajati;
  • medija- medijske datoteke: melodije zvona, zvukovi obavijesti, zvukovi interfejsa i animacija učitavanja OS;
  • tts- datoteke potrebne za sintisajzer govora;
  • usr- direktorij koji obično sadrži datoteke potrebne za pokretanje aplikacija iz bin direktorija. U suštini analog /usr/share ;
  • dobavljač- datoteke koje je isporučio proizvođač uređaja. Obično sadrži binarni firmver za različite hardverske komponente, na primjer Wi-Fi modul;
  • xbin- opcioni imenik; prilagođeni firmveri ga koriste za skladištenje stvari kao što su bash interpreter, SSH, PowerTOP, BusyBox i drugi korisni alati;
  • build.prop- datoteku koja sadrži informacije o sklopu, kao i različite postavke niskog nivoa;
  • addon.d- sadrži skripte koje se pokreću nakon instaliranja firmvera. GApp-ovi ovdje pišu i vlastitu skriptu, zahvaljujući kojoj se oživljavaju nakon ponovne instalacije firmvera.

Nakon što ste se upoznali sa osnovnim Android struktura, počnimo s promjenama.

Uklanjanje i dodavanje aplikacija

Sve unapred instalirani programi može se naći u dva foldera:

  • /sistem/aplikacija/;
  • /system/priv-app/.

One se međusobno razlikuju po privilegijama pristupa. Ako programi iz aplikacije imaju iste dozvole kao programi trećih strana(na primjer, instaliran iz Play Store), tada aplikacije iz priv-aplikacije mogu koristiti privilegirane API-je (privilegirana prava). Više o ovome možete saznati od.

Da biste unaprijed instalirali aplikaciju u firmver, jednostavno pustite njenu APK datoteku u /system/app/. Možete, naravno, kreirati zaseban folder, ali u našem slučaju to nema smisla, jer se u folderu čuvaju biblioteke i odex fajlovi, koje mi jednostavno nemamo. Da biste ga uklonili, jednostavno izbrišite fasciklu s njim.

Možete ići dalje i zamijeniti dioničke aplikacije analognim. Na primjer, da biste zamijenili kalendar, izbrišite folder Kalendar i kopirajte naš omiljeni com.rpagyc.simplecalendar.apk u /system/app. I ne morate ga kopirati. Tada će firmver biti bez kalendara.

Glavna stvar koju treba zapamtiti je da programi dionica mogu biti povezani jedni s drugima. Stoga, brisanje jednog programa može dovesti do potpune neoperabilnosti drugog (na primjer, CalendarProvider i Calendar: brisanjem prvog, učinit ćete neoperativnim ne samo osnovni kalendar, već i bilo koji drugi kalendar). Srećom, u čistom AOSP firmveru nema mnogo međupovezivanja.

Promjena animacije učitavanja

Animacija je pohranjena kao PNG slike, spakovana u arhivu /system/media/bootanimation.zip bez kompresije. Unutar arhive nalaze se:

  • desc.txt- fajl koji opisuje animaciju;
  • part0- folder sa animacijskim fajlovima koji se prvi reproduciraju;
  • part1- folder sa animacijskim fajlovima koji se reproduciraju drugi;
  • dio?- posljednji folder, slike iz koje se reproduciraju na kraju.

Desc.txt fajl može sadržavati nešto poput

1920 1080 60 p 1 0 dio 0 p 0 0 dio 1

Svrha ovih linija je intuitivna: 1920 × 1080 je rezolucija slike, 60 je broj kadrova u sekundi. Part0 i part1 označavaju foldere iz kojih će se animacija reproducirati i sekvencu reprodukcije. Općenito, može biti ili jedan dio ili nekoliko (tri ili više).

Slike koje se nalaze u fasciklima delova su numerisane sa pet brojeva u redosledu reprodukcije: 00000.png, 00001.png, 00002.png... Ove slike se mogu zameniti vašim, stvarajući tako originalnu animaciju. Ili možete jednostavno izbrisati datoteku bootanimation.zip. Tada će uređaj prikazati animaciju od standardni Android. Ili koristite gotovu kolekciju animacija na w3bsit3-dns.com.

Promjena dizajna zvuka

U stvari, svi zvuci koje sistem reprodukuje pohranjeni su u /system/media/audio folder. Unutar njega ćete pronaći sljedeće foldere:

  • alarmi- melodije budilnika;
  • obavještenja- zvukove obavijesti;
  • melodije zvona- melodije zvona;
  • ui- sistemski zvukovi, kao što su slaba baterija, fokusiranje kamere, izbor elemenata interfejsa.

U alarme, obavještenja, melodije zvona možete dodati koliko god želite melodija. Možete ih uzeti, na primjer, ovdje:

  • standardne melodije zvona sa različitih Nokia telefona i pametnih telefona;

I mali life hack: brisanje datoteka iz mape korisničkog interfejsa neće dovesti do kvarova i grešaka, već do nestanka sistemski zvuci. Stoga možete lako isključiti zvuk snimanja slike sa kamere, snimanja ekrana, jednostavnim brisanjem datoteka koje sadrže ove zvukove (njihova imena su intuitivna).

Dodavanje fontova

Fontovi su pohranjeni u fontovima. Možete pronaći arhive sa datotekama fontova na w3bsit3-dns.com i XDA. Da biste instalirali, samo kopirajte i zamijenite ttf datoteke iz arhive u mapu fontova.

Promjena sistemskih postavki (build.prop)

Slika sistema ima zanimljiv build.prop fajl koji sadrži mnoge korisne informacije o hardveru uređaja i zadanim postavkama za različite aplikacije. Iskreno rečeno, napominjem da to nije uvijek slučaj. Na primjer, u Gigaset ME i ME Pro build.prop je podijeljen na dva dijela. Jedan deo sadrži podešavanja za Gigaset ME, a za ME Pro neke linije su duplirane, ali su tasteri (naziv pametnog telefona itd.) drugačiji. To je učinjeno kako bi se osigurao manje-više ispravan rad istog firmvera na različitim uređajima.


Build.prop sadrži (ili može sadržavati) velika količina postavke. Neki od njih ne mijenjaju ništa, neki poboljšavaju jednu stvar na račun druge, ali postoje oni koji su zaista korisni:

  • ro.product.model I ro.proizvod.proizvođač- model pametnog telefona i naziv proizvođača. Zamjenom ovih linija možete natjerati Play Store da misli da imate drugačiji pametni telefon, kojem će biti otvoren pristup više softver Za sve one malo poznate Kineski pametni telefoni ove linije mogu postati spasonosne;
  • hw.qemu.mainkeys- uzima samo dvije vrijednosti: 0 - prikazuje navigacijske tipke na ekranu, 1 - ne prikazuje dugmad. Odsustvo linije odgovara 0;
  • debug.sf.nobootanimation- vrijednost 1 onemogućuje animaciju učitavanja, što neznatno povećava njenu brzinu. Postavljanjem na 0 ili brisanjem linije animacija se vraća na svoje mjesto;
  • ro.telephony.default_network- govori sistemu na koji režim treba da se prebaci mobilna mreža prilikom utovara;
  • ro.sf.lcd_density- DPI ekrana, najpreciznija vrijednost za prikaz može se izračunati putem pogodne web stranice. Ali nitko ne zabranjuje postavljanje veće ili niže vrijednosti po vašoj želji: veće vrijednosti čine elemente interfejsa većim, niže vrijednosti čine elemente interfejsa manjim;
  • ro.config.vc_call_vol_steps- broj koraka jačine zvuka tokom poziva (podrazumevano 8);
  • ro.config.media_vol_steps- broj koraka jačine medija (podrazumevano 15).

Mi implementiramo Google Apps u firmver

Gotovo uvijek prilagođeni firmver dolazi bez Google usluge i prodavnica aplikacija. Programeri predlažu da ih zasebno instaliramo koristeći GApps paket. Međutim, može se integrirati direktno u firmver.

Prvo morate preuzeti GApps paket. Preporučujem da uzmete Open GApps arhivu. Ti biraš Android verzija, arhitektura procesora i opcija konfiguracije (Pico, Nano, Stock...), koja određuje koliko različitih Google aplikacije sadrži arhivu. Preporučujem preuzimanje Pico verzije. Sadrži samo Play Store i skup biblioteka neophodnih za njegov rad.

Integracija GApp-a u firmver se radi ovako:

  1. Raspakujte GApps ZIP arhivu koristeći bilo koji arhivator.
  2. Idite u mapu Core.
  3. Vidimo mnoge arhive sa ekstenzijom .tar.lz. Izvucite koristeći lzip.
  4. Nakon raspakivanja, kopirajte datoteke iz foldera u odgovarajuće foldere u sistemu. Iz strukture direktorija u arhivi lako je pogoditi šta treba baciti. Na primjer, configupdater (sa snimka ekrana) treba staviti u priv-app folder.
  5. Idite u fasciklu GApps (koja se nalazi pored Core) i pratite korake 3 i 4 za datoteke u njoj.
  6. To je to, integrirali smo GApps u naš firmver!

Slobodno mjesto

Potrebno je shvatiti da je prostor za instaliranje firmvera ograničen. Ne možete instalirati firmver čija veličina premašuje veličinu sistemske particije uređaja. Možete pogledati njegovu vrijednost koristeći:

$ adb shell df /system

Druga opcija: stavite terminal na uređaj i upišite naredbu

$df/system

Veličinu particije u bajtovima možete saznati instaliranjem BusyBox na svoj pametni telefon i pokretanjem naredbe u terminalu

$ busybox df -B 1 /sistem

Ili isto sa ADB-om:

$ adb shell busybox df -B 1 /system

Prostor koji zauzima firmver će biti približno jednak veličini sistema kada se raspakuje. Općenito, prilikom kreiranja firmvera, potrebno je uzeti u obzir da korisnik može i na njega flešovati razne modifikacije (SuperSU, Xposed) ili prenijeti aplikacije u sistemski odjeljak. Na primjer, Googleov minimalni paket aplikacija (Pico) zahtijeva najmanje 150 MB dodatnog prostora za instalaciju.

Ako je potrebno, veličina datoteke firmvera može se smanjiti brisanjem ne samo nepotrebnih programa iz /system/app (/system/priv-app) i zvukove poziva sa system/media/audio i bootanimation.zip, ali i:

  • /system/tts/lang_pico- jezici primitivnog glasovnog motora Pico TTS, voice engine Ovo neće uticati na Google;
  • /system/usr/srec/config/- offline jezici. Možete ga preuzeti na mreži kasnije ako je potrebno.

Skupština

Nakon što izvršite promjene, morate sve ponovo sastaviti. Prvo, spakujmo sistemski odeljak u system.new.dat. Preuzmite alate koji su nam potrebni:

$ wget https://github.com/xpirt/img2sdat/raw/master/img2sdat.py $ wget https://github.com/xpirt/img2sdat/raw/master/blockimgdiff.py $ wget https://github. com/xpirt/img2sdat/raw/master/common.py $ wget https://github.com/xpirt/img2sdat/raw/master/rangelib.py $ wget https://github.com/xpirt/img2sdat/raw/ master/sparse_img.py $ sudo apt-get install android-tools-fsutils

Konvertujmo našu fasciklu nazad u RAW sliku. Nazovimo to system_new.img:

$ sudo make_ext4fs -T 0 -S file_contexts -l 1073741824 -a sistem system_new.img izlaz/

1073741824 se mijenja na veličinu sistemske particije u bajtovima. Bilo bi preporučljivo da ga čak i malo smanjite. Od RAW slike pravimo rijetku sliku:

$ img2simg system_new.img system_snew.img

Konvertujmo našu sliku u system.transfer.list i system.new.dat, koje treba baciti u arhivu sa firmverom, ali prvo ćemo izbrisati stare fajlove:

$ rm -rf system.transfer.list $ rm -rf system.new.dat $ rm -rf system.patch.dat $ chmod +x img2sdat.py $ ./img2sdat.py system_snew.img

Odvojimo datoteke firmvera od viška ljuske (datoteke koje smo preuzeli za rad. Za to je zgodno koristiti arhivu sa firmverom). Izbrisano? Sada trebate spakovati firmver u ZIP arhivu (sa bilo kojim arhivatorom).

Ostaje samo potpisati arhivu. Ovo se može uraditi i na samom Androidu koristeći ZipSigner, i na računaru (trebaće vam instalirana Java):

$ wget https://github.com/appium/sign/raw/master/dist/sign.jar $ java -jar file.zip

Podvodne stijene

Prilikom izrade system.new.dat možete naići na nekoliko problema uzrokovanih stalnim promjenama u mehanizmima za generiranje Android firmvera. Gore opisani metod bi trebao dobro funkcionirati u slučaju firmvera zasnovanog na Androidu 5.1, noviji mogu imati poteškoća, tako da ćete morati koristiti druge verzije alata za pravljenje. Nažalost, ne možemo opisati sve nijanse montaže, pa ćete možda morati guglati.

Instalacija

Za instaliranje prilagođenog firmvera potreban vam je prilagođeni firmver oporavak TWRP, koji vam omogućava da instalirate nepotpisan ili potpisan firmverom test ključa (to je upravo ono što smo kreirali). U časopisu smo više puta opisali proces njegove instalacije, a u temama na forumu posvećenim vašem uređaju obično ima dovoljno informacija da to učinite.

TWRP

zaključci

Ovaj članak opisuje samo vrh ogromnog ledenog brega zvanog „promjena firmvera“. “Ozbiljni” firmver ne samo da nadopunjuje kernel i sam firmware sa standardnim aplikacijama s mnogo funkcija (koje su često preuzete iz drugih kernela i firmvera), organizirajući ili čak mijenjajući principe njihove interakcije, već također može radikalno promijeniti principe rada OS. Istina, takav hak više nije Android, već zaseban OS, čak i ako se tamo mogu instalirati Play servisi (usput, takve radnje, blago rečeno, Google ne ohrabruje). Pa, ne zaboravite: sve školjke proizvođača - TouchWiz, ZenUI, HTC Sense i tako dalje - su obične prilagođene, maksimalno vezane za hardver uređaja i jedna za drugu.

U ovom vodiču ćemo vidjeti kako možemo pretvoriti i izdvojiti System.img i System.new.dat datoteke na Windows PC-u. System.img je dio Android OS-a. Datoteka slike sadrži sve zadane aplikacije, okvir, Dalvik VM (Virtual Machine), inicijalizacijske skripte i druge potrebne datoteke podrške koje su potrebne ili se sastoje od Android OS-a.

Datoteka system.new.dat je donekle slična datoteci system.img. Može se koristiti za izvođenje ili izdvajanje sistemskog dump-a bilo kojeg Android OS-a. Ovaj dump se uglavnom sastoji od osnovnih ili zadanih aplikacija, melodija zvona, pozadina, tema i nekoliko drugih potrebnih sistemskih datoteka.

I system.img i system.new.dat ne mogu se izdvojiti pomoću konvencionalnih alata za ekstrakciju datoteka kao što su WinZip ili 7-Zip. Za obavljanje ovog zadatka potrebni su posebni alati koji su posebno napravljeni za ovu svrhu.

Nažalost, izvođenje ovog zadatka na Windows računaru je teško. Postoji mnogo ograničenja kada koristite Windows platformu. Postoji nekoliko alata koji garantuju da ćete to učiniti. Međutim, nijedna mi nije obećavala osim jednog.

Auto Tool v3.0 funkcionira kako treba i najbolji je iz svoje gomile. Link za preuzimanje Auto Tool v3.0 je naveden ispod. Takođe sam naveo korake za ekstrahovanje fajlova system.img i system.new.dat. Ako je potrebno, možete se obratiti i na njega.

Preduvjeti

  • Java SE Development Kit – Preuzmite i instalirajte
  • Preuzmite i instalirajte i Python 3.6.x i Python 2.7.x
  • Auto Tool v3.0 – Preuzmi za x64 | Preuzmite za x86

Važne tačke na koje treba obratiti pažnju

  • Dok instalirate Python 3.6.x, pobrinite se da provjeriti kutija koja kaže Dodajte Python 3.6 u PATH.
  • Dok instalirate Python 2.7.x, kliknite na Napredne opcije i provjeriti kutija koja kaže Kompajlirajte .py datoteke u bajt kod nakon instalacije.

Kako izvući System.new.dat datoteku na Windows

  1. Uvjerite se da ste preuzeli Auto Tool v3.0 koji je povezan iznad u odjeljku preduslovi.
  2. Izvucite datoteku u novi folder.
  3. Fascikla Android-Tool će biti skrivena (možete je otkriti ako želite, nema razlike).
  4. Zatim otvorite Auto Tool v3.0.
  5. Zatim upišite 1 i pritisnite enter (pojaviće se novi folder).
  6. System.new.dat obično prate još dva fajla (system.transfer.list i file_contexts). Kopirajte sve tri datoteke u folderu koji se pojavio.
  7. Zatim, kako piše, pritisnite bilo koji taster da nastavite (datoteka će biti konvertovana u EXT4 format).
  8. Nakon što je proces završen, terminal će prikazati EXT4 informacije o superbloku koje navode uspješan završetak procesa.
  9. Zatim pritisnite bilo koji taster da nastavite (počeće raspakivanje EXT4 datoteke).
  10. Pričekajte, prikazat će se poruka u kojoj piše, Gotovo. Idite na fasciklu System_Unpack (pritisnite bilo koji taster da nastavite).

Kako izvući System.img datoteku na Windows-u


To je to, momci. Raspakirane datoteke možete pronaći u mapi System_Unpack koja se nalazi u istom direktoriju kao i Auto Tool v3.0.

Obavezno očistite fasciklu DAT i fasciklu IMG pre nego što ih ponovo upotrebite ili ćete možda na kraju pomešati neke druge komponente u trenutni firmver za ekstrakciju.

Čini se da postoji i 'readme' datoteka koja navodi sve funkcije i preduslove. Unesite 0 da biste ga otvorili. Koraci za konverziju DAT datoteka u IMG datoteke ili obrnuto su manje-više isti, stoga ih ne spominjem. Međutim, ako imate bilo kakvih pitanja ili pitanja vezanih za ovaj post, javite mi u komentarima ispod.

MTwinTools je uslužni program koji vam omogućava rad sa fajlovima firmvera i slikama boot.img, recovery.img i system.img. Autor uslužnog programa je vin2809 sa 4pda foruma. MTwinTool će biti koristan za vlasnike Huawei pametni telefoni baziran na MTK procesorima.

Korisnički vodič za rad sa MTwinTools

1. Uvod.

1.1. Svrha.

Alat MTwinTools je namijenjen za rastavljanje/sastavljanje slika uređaja baziranih na MT čipovima.

Napravljen je za upotrebu u komandna linija baziran na alatu RKwinTools, dizajniranom za rad sa uređajima na RK29xx-RK31xx čipovima, i nekim slobodno distribuiranim programima.

Radi samo pod Windows 7 i novijim bez CYGWIN instalacije, a također ne zahtijeva nikakve dodatne unose staza u varijablama OS okruženja.

Alat vam omogućava da:

  • raspakujte i spakujte sliku Boot.img;
  • raspakujte i spakujte sliku Recovery.img;
  • raspakujte i spakujte Kernel.img sliku;
  • raspakujte i spakujte sliku System.img, oba tipa yaffs i ext2-ext4;
  • pretvoriti rijetku datoteku tipa sparse u sliku tipa ext4;
  • izračunati kontrolnu sumu datoteke u md5 formatu;
  • pokrenuti SuperUser.

1.2. Instaliranje MTwinTools.
Instalacija alata se vrši raspakiranjem arhive na bilo kojem mjestu koje vam odgovara. Ovo će kreirati fasciklu MTwinTools koja sadrži:

  • fascikle _In/, App/ i Cygwin/;
  • kao i datoteke Readme.txt i menu.bat.

_In folder je prazan i namijenjen je da sadrži izvorne slike za obradu. Fascikla App/ sadrži skup batch fajlove, obrada slika. Cygwin/ folder sadrži uslužne biblioteke i datoteke koje se mogu slobodno distribuirati. Readme.txt datoteka sadrži korisnička uputstva, tj. tekst koji trenutno čitate. Datoteka menu.bat se koristi za kreiranje menija za MTwinTools alat.

PAŽNJA. NIJE POTREBNO za specificiranje pristupnih staza do servisnih datoteka u varijablama okruženja Windows OS-a.

Dok radite, pojavit će se i drugi potrebni folderi:

  • Pack, koji će sadržavati datoteke za pokretanje, oporavak i sistemske datoteke nakon toga
    paketi, md5 folder koji sadrži datoteke sa kontrolnim zbrojem, kao i folder
    Firmware, u čijoj podfolderu slike će se nalaziti sastavljeni Boot fajlovi,
    Oporavak i sistem;
  • Raspakujte, u kojem su POTPUNO raspakovani Boot, Recovery i System fajlovi
    će se nalaziti u folderu Firmware, u podfolderu Slika.

1.3. Deinstaliranje MTwinTools.

Alat se deinstalira brisanjem korijenskog foldera alata, tj. MTwinTools folderi.

2. Osnovna pravila rada.

2.1.Da biste započeli, trebate pokrenuti datoteku menu.bat, koja će pokrenuti meni alata.

2.2.Slike namijenjene za raspakivanje moraju se staviti u _In folder alata. Nazivi ulaznih datoteka MORAJU sadržavati ključne riječi i mogu imati ovakva imena:

  • *boot*.img;
  • *oporavak*.img;
  • *kernel*.img;
  • *sistem*.img.

2.3. Prilikom prvog pokretanja, inicijalizirajte alat. Kada se alat inicijalizira, SVE datoteke koje se nalaze u folderu _In bit će kopirane u radni ulazni folder Unpack/Firmware/Image. Ovo se radi kako bi se sačuvali originalni fajlovi.

2.4.Nakon rastavljanja slike, njen sadržaj će biti smješten u folder Unpack, u kojem će se kreirati sljedeća struktura foldera:

Boot (oporavak)/cfg/
kernel/
ramdisk/

Cfg/ folder će sadržavati postavke slike, u kernel folderu ćete pronaći kernel, tj. zImage binarnu datoteku, a ramdisk folder će sadržavati sve ostalo. Za sastavljanje slike, njenih sastavnih dijelova, tj. Postavite ramdisk, kernel i eventualno postavke u odgovarajuće foldere u raspakiranju. Kreirana slika će se nalaziti u izlaznoj fascikli Pack.

3. Opis proizvoda.

3.1. Glavni komandni meni.

Glavni meni komandi alata izgleda ovako:

**************************
* MTwinTools_V_0.6 *
**************************
*Komande za sliku:*
* ————— *
*1-Boot*
*2-Oporavak*
*3-Kernel*
*4-sistem*
*5-Druge komande*
* *
**************************
* Komande alata: *
* ————— *
*6-init alati*
*7-Clean*
* *
**************************
*8-Izlaz*
**************************
Molimo odaberite komandu:

Komanda se bira unošenjem broja naznačenog ispred nje. IN trenutna verzija Možete učiniti sljedeće:

— idite na meni za obradu slike za pokretanje tako što ćete upisati broj „1“;
— idite na meni za obradu slike za oporavak — “2”;
— idite na meni za obradu slike kernela — “3”;
— idite na meni za obradu slike sistema — “4”;
— idite na meni ostalih komandi — “5”;
— inicijalizirajte radnu površinu alata — „6“;
— očistiti radnu površinu proizvoda — „7“;
— završiti posao, tj. izlaz iz objekta - “8”.

3.2. Boot meni.

Da biste nastavili s obradom slike za pokretanje, pokrenite naredbu “1-Boot”. Ovo će vas odvesti do menija “Boot commands”.

Meni za obradu slike za pokretanje izgleda ovako:

**************************
* Naredbe pokretanja: *
* ————— *
*1-Boot raspakirajte*
*Paket s 2 boot-a*
* *
**************************
*3-Povratak*
**************************
Molimo odaberite komandu:

Komanda “1” raspakuje slike za pokretanje, komanda “2” pakuje slike za pokretanje. Komanda “3” vraća se u glavni meni alata.

2.2.1. Rastavljanje boot.img slike.

2.2.2. Napravite sliku boot.img.

Prilikom izrade slike za pokretanje, pojavit će se meni za odabir izvora podataka.

**************************
* Izbor izvorne slike: *
* 1. Raspakujte dir *
* 2. Pack dir *
*3.Povratak*
**************************
Molimo odaberite izvor:

Imate priliku da napravite sliku iz raspakovane slike koja se nalazi u fascikli Unpack/Boot da biste to uradili, izaberite stavku menija „1. Raspakujte dir.” Ako odaberete stavku menija „2. Pack dir", tada će slika biti kreirana od podataka koji se nalaze u folderu Pack/boot. Da biste otkazali operaciju, izaberite stavku menija „3. Povratak". U isto vreme ti
vratite se na meni “Boot commands”.

3.3. Meni za oporavak.

Da biste nastavili s obradom slike za oporavak, pokrenite naredbu “2-Recovery”. Ovo će vas odvesti do menija „Komande za oporavak“. Meni za obradu slike za oporavak izgleda ovako:

**************************
* Naredbe za oporavak: *
* —————— *
* 1-Oporavak raspakujte *
* 2-Paket za oporavak *
* *
**************************
*3-Povratak*
**************************
Molimo odaberite komandu:

Komanda “1” raspakuje slike za oporavak, komanda “2” pakuje slike za oporavak. Komanda “3” vraća se u glavni meni alata.
2.3.1. Rastavljanje slike recovery.img.

Sve radnje se izvode automatski, tj. Bez vašeg učešća nema šta da se opisuje.

2.3.2. Napravite recovery.img sliku.

Prilikom izrade slike za oporavak, pojavit će se meni za odabir izvora podataka.

**************************
* Izbor izvorne slike: *
* 1. Raspakujte dir *
* 2. Pack dir *
*3.Povratak*
**************************
Molimo odaberite izvor:

Imate priliku da napravite sliku od raspakovane slike koja se nalazi u fascikli Unpack/recovery da biste to uradili, izaberite stavku menija „1. Raspakujte dir.” Ako odaberete stavku menija „2. Pack dir", tada će slika biti kreirana od podataka koji se nalaze u folderu Pack/recovery.

Da biste otkazali operaciju, izaberite stavku menija „3. Povratak". Ovo će vas vratiti na meni „Komande za oporavak“.

3.4. Kernel meni.

Da biste nastavili s obradom slike kernela, pokrenite naredbu “3-Kernel”. Ovo će vas odvesti do menija "Komande kernela".

Meni za obradu slike kernela izgleda ovako:

**************************
* Naredbe kernela: *
* —————— *
* Raspakivanje 1 kernela *
*2-kernel paket*
* *
**************************
*3-Povratak*
**************************
Molimo odaberite komandu:

Komanda “1” otpakuje slike kernela, komanda “2” pakuje slike kernela. Komanda “3” vraća se u glavni meni alata.

3.4.1. Rastavljanje kernel.img slike.

Sve radnje se izvode automatski, tj. Bez vašeg učešća nema šta da se opisuje.

3.4.2. Izrada kernel.img slike.

Prilikom izrade slike kernela pojavit će se meni za odabir izvora podataka.

**************************
* Izbor izvorne slike: *
* 1. Raspakujte dir *
* 2. Pack dir *
*3.Povratak*
**************************
Molimo odaberite izvor:

Imate priliku da napravite sliku iz raspakovane slike koja se nalazi u fascikli Unpack/Kernel da biste to uradili, izaberite stavku menija „1. Raspakujte dir.” Ako odaberete stavku menija „2. Pack dir", tada će slika biti kreirana od podataka koji se nalaze u folderu Pack/Kernel.

Da biste otkazali operaciju, izaberite stavku menija „3. Povratak". Ovo će vas vratiti na meni „Komande kernela“.

3.5. Sistem menija.

Da biste nastavili s obradom slike sistema, pokrenite naredbu “3-System”. Ovo će vas odvesti do menija “Sistemske komande”.

Meni za obradu slike sistema izgleda ovako:


* Sistemske komande: *
* ——————————————— *
* 1-pak yaffs * 2-pack yaffs *
* 3 paketa ext3 * 4 paketa ext3 *
* 5 paketa ext4 * 6 paketa ext4 *
* 7-sparse to ext4 * *
* * *
***************************************************
*8-Povratak*
***************************************************
Molimo odaberite komandu:

3.5.1. Rastavljanje slike sistema poput yaffs.

Komanda “1” otpakuje sistemske slike tipa yaffs u folder Unpack/System.

3.5.2. Izgradnja imidža sistema poput yaffs.

Komanda “2” pakuje sistemske slike tipa yaffs. Pojavit će se meni za odabir izvora podataka.

**************************
* Izbor izvorne slike: *
* 1. Raspakujte dir *
* 2. Pack dir *
*3.Povratak*
**************************
Molimo odaberite izvor:

Imate priliku da napravite sliku iz raspakovane slike koja se nalazi u folderu Unpack/system da biste to uradili, izaberite stavku menija „1. Raspakujte dir." Ako odaberete stavku menija „2. Pack dir", tada će slika biti kreirana od podataka koji se nalaze u folderu Pack/system.

Da biste otkazali operaciju, izaberite stavku menija „3. Povratak” i vratit ćete se na prethodni meni “Sistemske komande”.

3.5.3. Rastavljanje slike sistema tipa ext3.

Komanda “3” raspakuje sistemske slike tipa ext2-ext3 u folder Unpack/System.

3.5.4. Izrada slike sistema tipa ext3.

Komanda “4” gradi sliku sistema tipa ext2-ext3. Pakovanje se vrši slično kao u tački 3.5.2. samo će izlazna slika biti tipa ext3.

3.5.5. Rastavljanje slike sistema tipa ext4.

Komanda “5” raspakuje ext4 sistemske slike u folder Unpack/System.

3.5.6. Izgradnja slike sistema tipa ext4.

Komanda “6” gradi sliku sistema tipa ext4. Pakovanje se vrši slično kao u tački 3.5.2. samo će izlazna slika biti tipa ext4.

3.5.7. Pretvorite rijetku komprimiranu sliku u ext4.

Komanda “7” konvertuje (konvertuje ili transkodira) komprimovane slike tipa sparse u slike tipa ext4 (analogno operaciji simg2img).

3.5.8.Povratak na glavni meni.

Komanda “8” vraća se u glavni meni alata.

3.6. Meni ostalih komandi.

Da biste prešli na izvršavanje drugih naredbi, izvršite naredbu “5-Ostale komande”. Ovo će vas odvesti do menija “Druge komande”. Meni za izvršavanje ostalih komandi izgleda ovako:

**************************
* Ostale komande: *
* —————- *
*1-Init SuperUser*
* 2-Izračunaj md5 *
* *
**************************
*3-Povratak*
**************************
Molimo odaberite komandu:

Komanda “1” inicijalizuje SuperUser u sistemskoj slici, komanda “2” izračunava kontrolni zbir datoteke. Komanda “3” vraća se u glavni meni alata.

3.6.1. Inicijalizacija superkorisnika.

Prilikom inicijalizacije SuperUser-a, pojavit će se izbornik za odabir izvora:

**************************
* Izbor izvora init: *
* 1. Raspakujte dir *
* 2. Pack dir *
*3.Povratak*
**************************
Molimo odaberite izvor:

Imate priliku da inicijalizirate raspakovanu sliku koja se nalazi u folderu Unpack/system da biste to učinili, odaberite stavku menija „1. Raspakujte dir." Ako odaberete stavku menija „2. Pack dir", tada će se inicijalizirati slika koja se nalazi u folderu Pack/system. Da biste otkazali operaciju, izaberite stavku menija „3. Povratak".
Inicijalizacija se vrši kopiranjem potrebnih datoteka (su i SuperSU.apk) u rastavljenu sliku System.img. Da biste dobili Root pristup potrebno vam je:

— raspakujte sliku sistema pomoću komande “3” glavnog menija
alate ili stavite raspakovanu sliku u fasciklu Unpack (ili Pack)/System/;
— izvršiti naredbu “1-init SuperUser” u meniju “Others commands”.

Nakon flešovanja System.img slike, imat ćete Root pristup na svom uređaju. Ako se fajlovi druge verzije koriste za dobijanje Root pristupa na vašem uređaju, tada samo trebate ažurirati (zamijeniti) su i SuperSU.apk datoteke u folderu App/.

3.6.2. Kalkulacija kontrolne sume.

Da biste izračunali kontrolnu sumu datoteke ili datoteka, stavite ih u folder Pack/md5/. Nakon izvršenja naredbe “2-Izračunaj md5”, sve datoteke koje se nalaze u Pack/md5 folderu će biti dodate ček suma, izračunato pomoću algoritma md5. Obrađuju se samo datoteke bez ekstenzije ili sa ekstenzijom .img, .tar, .zip.

3.7. Inicijalizacija.

Da izvršite inicijalizaciju, pokrenite naredbu “6-init Tools”. U tom slučaju će se kreirati sve strukture foldera potrebne za rad MTwinTools alata, a ulazne slike će se kopirati u radni folder Raspakujte/Firmware/Image.

3.8. Čišćenje proizvoda.

Da biste očistili radno područje, upišite “7-CLEAN”. Istovremeno SVE dodatne fascikle zajedno sa sadržajem će biti obrisan, MTwinTools alat će završiti svoj rad i vratiti se na oblik koji je imao odmah nakon instalacije.

3.9. Izlaz.

Za izlaz, birajte “8-Exit”. U tom slučaju SAMO će proizvod izaći bez ikakvog čišćenja.

Mega uslužni Android IMG Repack alati za sve početnike i napredne romodelere, programere, za uređivanje Android slika.

Android IMG Repack Tools šta je to i zašto?

Uslužni program Android IMG Repack Tools od korisnika pod nadimkom A.S._id(xda, w3bsit3-dns.com), dizajniran za uređivanje Android slika:

  • raspakujte Android sliku (img, ext4)
  • uređivanje fajlova (ručno)
  • prikupiti sliku

I također rad sa kernelima (boot.img) i oporavak (recovery). Uslužni program je dizajniran da radi i pod Linuxom i Windowsom (morate instalirati Cygwin).

Android IMG Repack Tools će biti korisni apsolutno svim Android Romodelima za kreiranje novih prilagođenih firmvera, kao i programerima softvera.

Gdje pronaći i preuzeti Android IMG Repack alate?

Preuzmite i najnoviju verziju Android uslužni programi IMG Repack Tools možete pronaći na službenoj stranici projekta na XDA.

Instaliranje Android IMG Repack alata na vaš računar

Pošto je Android OS baziran na Linux kernelu, ipak bi bilo ispravnije raditi sa uslužnim programom Android IMG Repack Tools iz operativnog sistema baziranog na Linuxu.

Predkonfiguracija OS za Android IMG Repack Tools

Ako imate Ubuntu verziju 14.04 i stariju (i Mint baziran na njemu), onda ćete morati da instalirate GCC 5 iz spremišta (otvorite terminal i unesite sljedeće komande):

sudo add-apt-repository ppa:ubuntu-toolchain-r/test

sudo apt-get update

sudo apt-get install gcc-5 g++-5

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 60 --slave /usr/bin/g++ g++ /usr/bin/g++-5

Za korisnike Ubuntu 16.04 (i Mint baziranog na njemu), prvo morate instalirati:

1. GNU Automake 1.14 (preuzmi i raspakiraj)

2. Idite u folder sa Gnu Automake, otvorite terminal i izvršite naredbe jednu po jednu: ./configure make sudo make install

3. Instalirajte pakete: sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev build-essential zip curl libncurses5-dev zlib1g-dev valgrind libreadline6-dev gcc-multilib g++-multilib x1c6 -dev libx11-dev libz-dev gawk texinfo automake libtool cvs libsdl-dev

Postavljanje Android IMG Repack alata

1. Nakon preuzimanja Android IMG Repack alata, raspakirajte, idite, otvorite terminal

2. Unesite naredbu za pokretanje uslužnog programa./main_menu

Ako imate instaliran Mint, kliknite na datoteku main_menu

3. Idite na odjeljak za pomoćne programe " 0 - Konfiguriraj i očisti meni alata»

4. Odaberite " 1 - Napravi android_img_repack_tools“, kako biste preuzeli i konfigurirali alate koji rade sa Android slikama.

Rad sa uslužnim programom Android IMG Repack Tools

Uskoro očekujte ažuriranje članka s uputama o tome kako koristiti uslužni program!

Dijeli