Despre baie - Tavan. Băi. Ţiglă. Echipamente. Repara. Instalatii sanitare

Descărcați fișierul img de boot. Android personalizat: ne facem propriul firmware din stoc, fără să ne adâncim în surse. Comanda „vede” computerul tău Android

Interpolare, interpolare- în matematica computațională, o metodă de găsire a valorilor intermediare ale unei mărimi dintr-un set discret existent de valori cunoscute.

Mulți dintre cei care se ocupă de calcule științifice și de inginerie trebuie adesea să opereze cu seturi de valori obținute empiric sau prin eșantionare aleatorie. De regulă, pe baza acestor seturi, este necesar să se construiască o funcție în care alte valori obținute să poată cădea cu mare precizie. Această sarcină se numește apropiere. Interpolarea este un tip de aproximare în care curba funcției construite trece exact prin punctele de date disponibile.

Există multe metode de interpolare cu diferențe finite. Cele mai multe
Metoda lui Newton pentru interpolarea directă (metoda Newton-Gregory) este comună. Polinomul de interpolare în acest caz are forma:

Găsim coeficienții C folosind formula:

Implementarea programului în C#:
folosind System; Interpolarea spațiului de nume (clasa Program...

Programul este împărțit în două fire în care unul se realizează sortarea, iar în celălalt este redesenată interfața grafică. După ce faceți clic pe butonul „Sort”, programul apelează metoda „RunSorting”, în care se definește algoritmul de sortare și se creează un fir nou cu procesul de sortare care rulează în el.
vid privat RunSo...

Partajarea resurselor între domenii (CORS) este o specificație W3C care permite comunicarea între domenii în browser. Construind pe deasupra obiectului XMLHttpRequest, CORS permite dezvoltatorilor să lucreze cu aceleași expresii ca și cererile cu același domeniu. Cazul de utilizare pentru CORS este simplu. Imaginați-vă că alice.com are niște date pe care bob.com dorește să le obțină. În mod tradițional, acest tip de solicitare nu este permis în cadrul aceleiași politici de origine a browserului. Cu toate acestea, prin sprijinirea cererilor CORS, alice.com poate adăuga mai multe antete speciale de răspuns care permit lui bob.com să acceseze datele. După cum puteți vedea din acest exemplu, suportul CORS necesită coordonare între server și client. Din fericire, dacă ești un dezvoltator pe partea clientului, ești protejat de majoritatea acestor detalii. Restul acestui articol arată cum clienții pot face cereri de origine încrucișată și cum se pot configura serverele pentru a accepta CORS. Continuare…

Salutare tuturor, astăzi vreau să vă arăt codul unui alt proiect care este absolut inutil și scris doar pentru distracție. Într-o zi nu am avut profesor la lecție și, ca să ne distram cumva, am început să scriem în Pascal. Totul a început cu o simplă sirenă, care a făcut ca unitățile de sistem din audiență să emită sunete similare cu sirenele vehiculelor de urgență. Totul s-a încheiat acasă, scriind un fragment din cântecul Linkin Park - Numb.

Iată codul real al programului:
UTILIZA CRT; VAR i, temp, nota, nota2, nota4, nota8: Integer; PROCEDURA PlayNote(f, p: Integer); BEGIN Sound(f);

Întârziere (p);

NoSound;

Întârziere (20); SFÂRŞIT; PROCEDURĂ Pauză (p: Întregul); BEGIN Delay(p); SFÂRŞIT; PROCEDURA Numb(temp, nota, nota2, nota4, nota8: Integer); BEGIN FOR i:=0 TO 1 DO BEGIN PlayNote(880, nota4);

PlayNote(1047, nota4);

PlayNote(880, nota4);

Este construit pentru utilizare pe linia de comandă bazată pe instrumentul RKwinTools, conceput pentru a funcționa cu dispozitive pe cipuri RK29xx-RK31xx și unele programe distribuite gratuit.

Funcționează numai sub Windows 7 și versiuni ulterioare, fără a instala CYGWIN și, de asemenea, nu necesită intrări suplimentare de căi în variabilele de mediu OS.

Instrumentul vă permite să:

  • despachetează și împachetează imaginea Boot.img;
  • despachetați și împachetați imaginea Recovery.img;
  • despachetați și împachetați imaginea Kernel.img;
  • despachetați și împachetați imaginea System.img, atât tipul yaffs, cât și ext2-ext4;
  • converti un fișier rar de tip sparse într-o imagine de tip ext4;
  • calculați suma de control a unui fișier în format md5;
  • inițiază SuperUser.

1.2. Instalarea MTwinTools.
Instalarea instrumentului se realizează prin despachetarea arhivei în orice loc convenabil pentru dvs. Aceasta va crea un folder MTwinTools care conține:

  • folderele _In/, App/ și Cygwin/;
  • precum și fișierele Readme.txt și menu.bat.

Dosarul _In este gol și este destinat să conțină imagini sursă pentru procesare. Dosarul App/ conține un set de fișiere de comandă care procesează imagini. Dosarul Cygwin/ conține biblioteci și fișiere de utilitate redistribuibile liber. Fișierul Readme.txt conține instrucțiuni pentru utilizator, adică. textul pe care îl citiți în prezent. Fișierul menu.bat este utilizat pentru a crea meniul pentru instrumentul MTwinTools.

ATENŢIE. NU ESTE NECESARĂ pentru specificarea căilor de acces la fișierele de service în variabilele de mediu ale sistemului de operare Windows.

Pe măsură ce lucrați, vor apărea și alte foldere necesare:

  • Pachet, care va conține fișierele Boot, Recovery și System după
    pachete, un folder md5 care conține fișiere cu o sumă de verificare, precum și un folder
    Firmware, în subdosarul Imagine al cărui fișiere Boot asamblate vor fi localizate,
    Recuperare și sistem;
  • Dezambalați, în care fișierele Boot, Recovery și System sunt COMPLET dezambalate
    va fi localizat în folderul Firmware, în subdosarul Imagine.

1.3. Dezinstalarea MTwinTools.

Instrumentul este dezinstalat prin ștergerea folderului rădăcină al instrumentului, adică. folderele MTwinTools.

2. Reguli de bază de lucru.

2.1.Pentru a începe, trebuie să rulați fișierul menu.bat, care va lansa meniul instrumentului.

2.2.Imaginile destinate despachetarii trebuie plasate in folderul _In al instrumentului. Numele fișierelor de intrare TREBUIE să conțină cuvinte cheie și pot avea nume precum următoarele:

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

2.3. Când porniți pentru prima dată, inițializați instrumentul. Când instrumentul este inițializat, TOATE fișierele aflate în folderul _In vor fi copiate în folderul de intrare de lucru Unpack/Firmware/Image. Acest lucru se face pentru a păstra fișierele originale.

2.4.După dezasamblarea imaginii, conținutul acesteia va fi plasat în folderul Unpack, în care va fi creată următoarea structură de foldere:

Boot (Recuperare)/cfg/
nucleu/
ramdisk/

Folderul cfg/ va conține setările de imagine, în folderul kernel veți găsi kernel-ul, adică. zImage fișier binar și folderul ramdisk va conține orice altceva. Pentru a asambla imaginea, părțile sale componente, de ex. Plasați discul ram, nucleul și eventual setările în folderele corespunzătoare din Unpack. Imaginea creată va fi localizată în folderul de ieșire a pachetului.

3. Descrierea produsului.

3.1. Meniul principal de comandă.

Meniul principal al comenzilor instrumentului arată astfel:

**************************
* MTwinTools_V_0.6 *
**************************
*Comenzi imagine:*
* ————— *
*1-Boot*
*2-Recuperare*
*3-kernel*
*4-Sisteme*
*5-Alte comenzi*
* *
**************************
* Comenzi instrumente: *
* ————— *
*Instrumente 6-Init*
*7-curat*
* *
**************************
*8-Ieșire*
**************************
Vă rugăm să alegeți comanda:

O comandă este selectată prin introducerea numărului indicat în fața acesteia. În versiunea actuală puteți face următoarele:

— accesați meniul de procesare a imaginii de pornire tastând numărul „1”;
— accesați meniul de procesare a imaginii de recuperare — „2”;
— accesați meniul de procesare a imaginii Kernel — „3”;
— accesați meniul de procesare a imaginii de sistem — „4”;
— accesați meniul altor comenzi — „5”;
— inițializați zona de lucru a instrumentului — „6”;
— curățați zona de lucru a produsului — „7”;
— finalizați lucrarea, de ex. ieși din unitate - „8”.

3.2. Meniul de pornire.

Pentru a continua la procesarea imaginii de pornire, executați comanda „1-Boot”. Aceasta vă va duce la meniul „Comenzi de pornire”.

Meniul de procesare a imaginii de pornire arată astfel:

**************************
* Comenzi de pornire: *
* ————— *
*1-Boot despachetat*
*Pachet de 2 cizme*
* *
**************************
*3-Retur*
**************************
Vă rugăm să alegeți comanda:

Comanda „1” despachetează imaginile de pornire, comanda „2” ambalează imaginile de pornire. Comanda „3” revine la meniul principal al instrumentului.

2.2.1. Demontarea imaginii boot.img.

2.2.2. Construiți imaginea boot.img.

La construirea imaginii de boot, va apărea un meniu pentru selectarea unei surse de date.

**************************
* Imagine sursă aleasă: *
* 1. Despachetează director *
* 2. Director pachet *
*3.Întoarcere*
**************************
Vă rugăm să alegeți sursa:

Aveți posibilitatea de a construi o imagine dintr-o imagine dezambalată aflată în folderul Dezambalare/Boot, selectați elementul de meniu „1. Despachetează director." Dacă selectați elementul de meniu „2. Pack dir”, apoi imaginea va fi creată din datele aflate în folderul Pack/boot. Pentru a anula operația, selectați elementul de meniu „3. Reveni". În același timp, tu
reveniți la meniul „Comenzi de pornire”.

3.3. Meniul de recuperare.

Pentru a continua la procesarea imaginii de recuperare, executați comanda „2-Recovery”. Aceasta vă va duce la meniul „Comenzi de recuperare”. Meniul de procesare a imaginii de recuperare arată astfel:

**************************
* Comenzi de recuperare: *
* —————— *
* 1-despachetare de recuperare *
* 2-Pachet de recuperare *
* *
**************************
*3-Retur*
**************************
Vă rugăm să alegeți comanda:

Comanda „1” despachetează imaginile de recuperare, comanda „2” ambalează imaginile de recuperare. Comanda „3” revine la meniul principal al instrumentului.
2.3.1. Demontarea imaginii recovery.img.

Toate acțiunile sunt efectuate automat, adică Fără participarea dumneavoastră nu există nimic de descris aici.

2.3.2. Construiți imaginea recovery.img.

La construirea imaginii de recuperare, va apărea un meniu pentru selectarea unei surse de date.

**************************
* Imagine sursă aleasă: *
* 1. Despachetează director *
* 2. Director pachet *
*3.Întoarcere*
**************************
Vă rugăm să alegeți sursa:

Aveți posibilitatea de a construi o imagine dintr-o imagine dezambalată aflată în folderul Dezambalare/recuperare, selectați elementul de meniu „1. Despachetează dir.” Dacă selectați elementul de meniu „2. Pack dir”, apoi imaginea va fi creată din datele aflate în folderul Pack/recovery.

Pentru a anula operația, selectați elementul de meniu „3. Reveni". Acest lucru vă va întoarce la meniul „Comenzi de recuperare”.

3.4. Meniul Kernel.

Pentru a continua la procesarea imaginii Kernel, rulați comanda „3-Kernel”. Aceasta vă va duce la meniul „Comenzi kernel”.

Meniul de procesare a imaginii Kernel arată astfel:

**************************
* Comenzi kernel: *
* —————— *
* 1-kernel despachetat *
*Pachet cu 2 nuclee*
* *
**************************
*3-Retur*
**************************
Vă rugăm să alegeți comanda:

Comanda „1” despachetează imaginile Kernel, comanda „2” ambalează imaginile Kernel. Comanda „3” revine la meniul principal al instrumentului.

3.4.1. Dezasamblarea imaginii kernel.img.

Toate acțiunile sunt efectuate automat, adică Fără participarea dumneavoastră nu există nimic de descris aici.

3.4.2. Construirea imaginii kernel.img.

La construirea imaginii nucleului, va apărea un meniu pentru selectarea unei surse de date.

**************************
* Imagine sursă aleasă: *
* 1. Despachetează director *
* 2. Director pachet *
*3.Întoarcere*
**************************
Vă rugăm să alegeți sursa:

Aveți posibilitatea de a construi o imagine dintr-o imagine dezambalată situată în folderul Unpack/Kernel pentru a face acest lucru, selectați elementul de meniu „1. Despachetează dir.” Dacă selectați elementul de meniu „2. Pack dir”, apoi imaginea va fi creată din datele aflate în folderul Pack/Kernel.

Pentru a anula operația, selectați elementul de meniu „3. Reveni". Acest lucru vă va întoarce la meniul „Comenzi kernel”.

3.5. Sistem de meniu.

Pentru a continua la procesarea imaginii de sistem, executați comanda „3-System”. Aceasta vă va duce la meniul „Comenzi de sistem”.

Meniul de procesare a imaginii de sistem arată astfel:


* Comenzi de sistem: *
* ——————————————— *
* 1 pachet iafa * 2 pachete de iac *
* 3-unpack ext3 * 4-pachet ext3 *
* 5-unpack ext4 * 6-pachet ext4 *
* 7-sparse la ext4 * *
* * *
***************************************************
*8-Retur*
***************************************************
Vă rugăm să alegeți comanda:

3.5.1. Dezasamblarea unei imagini de sistem, cum ar fi yaffs.

Comanda „1” despachetează imaginile de sistem ale tipului yaffs în folderul Unpack/System.

3.5.2. Construirea unei imagini de sistem precum iafa.

Comanda „2” împachetează imagini de sistem de tip iaf. Va apărea un meniu pentru selectarea unei surse de date.

**************************
* Imagine sursă aleasă: *
* 1. Despachetează director *
* 2. Director pachet *
*3.Întoarcere*
**************************
Vă rugăm să alegeți sursa:

Aveți posibilitatea de a construi o imagine dintr-o imagine dezambalată situată în folderul Dezambalare/sistem, selectați elementul de meniu „1. Despachetează dir." Dacă selectați elementul de meniu „2. Pack dir”, apoi imaginea va fi creată din datele aflate în folderul Pack/system.

Pentru a anula operația, selectați elementul de meniu „3. Return” și veți reveni la meniul anterior „Comenzi de sistem”.

3.5.3. Dezasamblarea imaginii sistemului de tip ext3.

Comanda „3” despachetează imaginile de sistem de tip ext2-ext3 în folderul Unpack/System.

3.5.4. Construirea unei imagini de sistem de tip ext3.

Comanda „4” construiește imaginea de sistem de tip ext2-ext3. Ambalarea se realizează în mod similar cu clauza 3.5.2. doar imaginea de ieșire va fi de tip ext3.

3.5.5. Dezasamblarea imaginii sistemului de tip ext4.

Comanda „5” despachetează imaginile ext4 System în folderul Unpack/System.

3.5.6. Construirea unei imagini de sistem de tip ext4.

Comanda „6” construiește imaginea de sistem de tip ext4. Ambalarea se realizează în mod similar cu clauza 3.5.2. doar imaginea de ieșire va fi de tip ext4.

3.5.7. Convertiți imaginea comprimată rară în ext4.

Comanda „7” convertește (conversează sau transcodează) imaginile comprimate de tip rar în imagini de tip ext4 (analog cu operația simg2img).

3.5.8.Reveniți la meniul principal.

Comanda „8” revine la meniul principal al instrumentului.

3.6. Meniul altor comenzi.

Pentru a trece la executarea altor comenzi, executați comanda „5-Alte comenzi”. Aceasta vă va duce la meniul „Alte comenzi”. Meniul pentru executarea altor comenzi arată astfel:

**************************
*Alte comenzi:*
* —————- *
*1-Superutilizator inițial*
* 2-Calculați md5 *
* *
**************************
*3-Retur*
**************************
Vă rugăm să alegeți comanda:

Comanda „1” inițializează SuperUser în imaginea de sistem, comanda „2” calculează suma de verificare a fișierului. Comanda „3” revine la meniul principal al instrumentului.

3.6.1. Inițializare SuperUser.

La inițializarea SuperUser, va apărea un meniu de selecție a sursei:

**************************
* Sursa de alegere init: *
* 1. Despachetează director *
* 2. Director pachet *
*3.Întoarcere*
**************************
Vă rugăm să alegeți sursa:

Aveți posibilitatea de a inițializa imaginea dezambalată aflată în folderul Dezambalare/sistem, selectați elementul de meniu „1. Despachetează dir.” Dacă selectați elementul de meniu „2. Pack dir”, atunci imaginea aflată în folderul Pack/system va fi inițializată. Pentru a anula operația, selectați elementul de meniu „3. Reveni".
Inițializarea se face prin copiere fisierele necesare(su și SuperSU.apk) în imaginea dezasamblată System.img. Pentru a obține accesul rădăcină aveți nevoie de:

— despachetați imaginea sistemului utilizând comanda „3” din meniul principal
instrumente sau plasați imaginea dezambalată în folderul Unpack (sau Pack)/System/;
— executați comanda „1-init SuperUser” din meniul „Alte comenzi”.

După afișarea intermitentă a imaginii System.img, veți avea acces Root pe dispozitiv. Dacă sunt utilizate fișiere cu o versiune diferită pentru a obține accesul Root pe dispozitivul dvs., atunci trebuie doar să actualizați (înlocuiți) fișierele su și SuperSU.apk din folderul App/.

3.6.2. Calculul sumei de control.

Pentru a calcula suma de control a unui fișier sau fișiere, plasați-le în folderul Pack/md5/. După executarea comenzii „2-Calculate md5”, o sumă de control calculată folosind algoritmul md5 va fi adăugată la toate fișierele aflate în folderul Pack/md5. Sunt procesate numai fișierele fără extensie sau cu extensia .img, .tar, .zip.

3.7. Inițializare.

Pentru a efectua inițializarea, executați comanda „6-init Tools”. Acest lucru va crea toate structurile de foldere necesare pentru ca MTwinTools să funcționeze și va copia imaginile de intrare în folderul de lucru Unpack/Firmware/Image.

3.8. Curățarea produsului.

Pentru a goli zona de lucru, tastați „7-CLEAN”. În acest caz, TOATE folderele suplimentare împreună cu conținutul lor vor fi șterse, MTwinTools își va finaliza munca și va lua forma pe care a avut-o imediat după instalare.

3.9. Ieșire.

Pentru a ieși, formați „8-Exit”. În acest caz, DOAR produsul va ieși fără nicio curățare.

Trebuie să flashezi Android folosind FastBoot, dar nu știi cum? Acest articol oferă instrucțiuni detaliate despre utilizarea utilitarului FastBoot, cum să îl utilizați, de unde să îl descărcați și cum să flashați un dispozitiv Android.

Acest manual va explica pe deplin cum să utilizați FastBoot! Cum să utilizați Fastboot pentru a curăța partițiile, a flash fișiere IMG, a reporni și multe altele.

Dacă nu știți cum să instalați actualizările arhivate, atunci aveți nevoie de articolul - cum se instalează firmware în format zip pe Android cu poze.

Descărcarea și instalarea FastBoot

Înainte de a flashiza Android folosind FastBoot, trebuie să descărcați acest utilitar și să îl instalați pe computerul dorit:

  1. Puteți descărca FastBoot de pe pagina pentru dezvoltatori Android inclusă platforme-instrumente .
  2. Sau folosește programul Adb Run, mai precis mai bine, în care este inclus totul și, de asemenea, știe cum să deblocheze modelul Android.

De ce este ADB RUN mai bun?

Lansarea utilitarului Fastboot

În funcție de ceea ce ați ales, ați descărcat separat utilitarul fastboot sau ați selectat rularea adb, lansarea poate diferi!

Dacă ați descărcat separat Fastboot

Extrageți fișierele:

  1. adb.exe
  2. AdbWinApi.dll
  3. AdbWinUsbApi.dll
  4. fastboot.exe
  5. libwinpthread-1.dll

Mutați-le în unitatea C:\, folderul Windows. Ați instalat cu succes ADB și Fastboot pe computer!

După ce ați descărcat și instalat FastBoot, deschideți „ linie de comandă".

Exemplu de linie de comandă Windows

Exemplu de instalare ADB și Fastboot.

Dacă ați descărcat ADB RUN

Dacă alegerea ta a căzut pe un program proprietar ADB RUN, apoi rulați-l, tastați A și apăsați Enter.

Fișiere care trebuie să fie flash preferabil plasați în același folder cu utilitarul Fastboot.

Instrucțiuni despre cum să flashezi Android
folosind FastBoot

Firmware-ul Android în Fastboot înseamnă intermiterea fișierelor separate pentru diferite blocuri de memorie a dispozitivului (sistem, date, boot).

Este foarte important să scrieți comenzile și fișierele firmware așa cum sunt specificate!

Daca ai comanda:

fastboot flash cache NazvaniAFiLe.img

atunci trebuie să scrii exact așa, și nu altfel. Cu alte cuvinte cazul este important altfel veți obține - nu există un astfel de fișier.

Comenzi de repornire
Pornire rapidă în modul firmware (bootloader)

  • Pentru a începe să lucrați cu un dispozitiv Android folosind Fastboot, mai întâi trebuie să vă puneți smartphone-ul sau tableta în modul bootloader folosind adb:

adb reboot bootloader

  • Reporniți Android din modul firmware (bootloader) în același mod:

fastboot reboot-bootloader

  • Reporniți Android din modul firmware bootloader în modul bootloader:

fastboot reboot-bootloader

  • Reporniți Android în modul normal din modul firmware bootloader:

repornire fastboot

Comanda „vede” computerul tău Android

Fă-ți un obicei înainte de a face ceva în Fastboot pentru a verifica dacă există o conexiune între computer și Android:

  • Verificați dacă computerul vă „vede” Androidul:

dispozitive fastboot

Această comandă trebuie executată atunci când dispozitivul este deja în modul firmware (bootloader)

Comenzile de deblocare și blocare ale bootloaderului
Google Pixel, Nexus în Fastboot

  • Deblocați încărcătorul de pornire pentru Pixel, Nexus:

deblocare OEM fastboot sau deblocare intermitent fastboot

  • Blocați încărcătorul de pornire pentru Pixel, Nexus:

blocare OEM fastboot

Comanda pentru a afla versiunea bootloader-ului

Afișează numărul versiunii bootloader-ului instalat pe Android:

fastboot getvar versiune-bootloader

Comenzi de formatare a partițiilor
în Fastboot (Fastboot Erase)

Înainte de a flashiza orice partiție în Android, trebuie mai întâi să o formatați, astfel încât să nu existe probleme în continuarea lucrărilor:

  • Șterge partiția Cache din Fastboot:

fastboot șterge memoria cache

  • Șterge secțiunea Data (Date/UserData) din Fastboot:

fastboot șterge datele utilizatorului sau fastbot -w

  • Șterge partiția de sistem din Fastboot:

sistem de ștergere fastboot

  • Șterge partiția de recuperare din Fastboot:

recuperare fastboot erase

Comenzi pentru intermiterea partițiilor Android în Fastboot
(Fastboot Flash)

După ce ați formatat partiția sau partițiile Android, puteți trece la pasul următor, afișând firmware-ul:

  • Flash pentru partiția de sistem:

sistem flash fastboot imya.img

  • Flashează partiția cache:

fastboot flash cache imya.img

  • Flashează secțiunea Date:

fastboot flash userdata imya.img

  • Flashează partiția de recuperare:

recuperare rapidă flash imya.img

În loc de imya.img Trebuie să introduceți numele fișierului care urmează să fie flashat!

  • Flashează toate partițiile (pornire, recuperare și sistem):

fastboot flashall

Comanda pentru a instala update.zip

Afișează o arhivă de actualizare pe Android în formatul update.zip - o arhivă ZIP cu imagini IMG din diferite secțiuni:

actualizare fastboot filename.zip

Pentru dispozitivele Sony

Verificarea conexiunii dispozitivului Sony, dacă răspunsul este dispozitivul 0.3, atunci acesta este conectat:

fastboot.exe -i 0x0fce versiunea getvar

Deblocați bootloader-ul Sony

fastboot.exe -i 0x0fce deblocare OEM 0xReceived_Key

Informații mai detaliate despre deblocarea Bootloader Sony - Cum se deblochează Bootloader Sony.

Se așteaptă eroarea dispozitivului

Dacă aveți următorul mesaj activat în fereastra de comandă de mult timp: în așteptarea dispozitivului- Mijloace:

  • Driverul nu este instalat sau instalat incorect - reinstalați sau instalați
  • Dispozitivul Android nu este în modul Bootloader - traduceți
  • Conexiune incorectă la portul USB - utilizați porturile USB 2.0 din spate ale computerului, nu folosiți hub-uri USB

Exemplu video de lucru cu utilitarul Fastboot

Pentru cei care nu inteleg nimic!

Pentru cei care nu înțeleg nimic, atunci folosește aplicația proprietară ADB RUN, acest program conține aproape toate comenzile necesare pentru FASTBOOT!

Mai jos este un exemplu despre cum funcționează ADB RUN - cum să flash rapid un fișier de recuperare folosind ADB RUN în mai puțin de 5 secunde (doar nu uitați să comutați mai întâi la modul bootloader)!

Asta este! Citiți mai multe articole și instrucțiuni în secțiune Articole și Hack-uri Android. Rămâneți cu site-ul, va fi și mai interesant!

Firmware Android, de ex. scrierea anumitor imagini de fișiere în secțiunile corespunzătoare ale memoriei dispozitivului folosind un software special Windows care automatizează aproape complet procesul nu este astăzi cea mai dificilă procedură din punctul de vedere al utilizatorului. Dacă utilizarea unor astfel de instrumente este imposibilă sau nu dă rezultatul dorit, Fastboot salvează situația.

Pentru a flashiza un dispozitiv Android prin Fastboot, veți avea nevoie de cunoștințe despre comenzile consolei din modul de operare al dispozitivului cu același nume, precum și de o anumită pregătire a smartphone-ului sau tabletei și a PC-ului utilizat pentru operațiuni.

Datorită faptului că, în modul de pornire rapidă, manipulările cu secțiunile de memorie ale dispozitivului sunt efectuate practic direct, atunci când utilizați metoda firmware descrisă mai jos, este necesară o anumită prudență și atenție. În plus, următorii pași ar trebui probabil recomandați numai dacă nu reușiți să flashizați firmware-ul folosind alte metode.

Utilizatorul efectuează fiecare acțiune cu propriile sale dispozitive Android pe riscul și riscul său. Administrația site-ului nu este responsabilă pentru posibilele consecințe negative ale utilizării metodelor descrise în această resursă!

Implementarea strictă a procedurilor pregătitoare determină succesul întregului proces de intermitere a dispozitivului, astfel încât implementarea pașilor descriși mai jos poate fi considerată o condiție prealabilă înainte de a efectua operațiuni.

Instalarea driverelor

Puteți afla cum să instalați un driver special pentru modul fastboot din articol:

Backup de sistem

Dacă există cea mai mică posibilitate, înainte de a flashiza firmware-ul, trebuie creată o copie de rezervă completă a partițiilor existente ale memoriei dispozitivului. Pașii necesari pentru a crea o copie de rezervă sunt descriși în articol:

Descărcarea și pregătirea fișierelor necesare

Fastboot și ADB sunt instrumente complementare ale SDK-ului Android. Descărcăm întregul set de instrumente sau descarcăm un pachet separat care conține numai ADB și Fastboot. Apoi despachetați arhiva rezultată într-un folder separat de pe unitatea C.

Prin Fastboot este posibil să înregistrați atât secțiuni individuale ale memoriei unui dispozitiv Android, cât și actualizări de firmware ca un pachet întreg. În primul caz, veți avea nevoie de fișiere imagine în format *.img, în al doilea – pachet(e) *.zip. Toate fișierele care sunt planificate pentru utilizare trebuie copiate în folderul care conține Fastboot și ADB dezambalați.

Pachete *.zip nu despachetați, trebuie doar să redenumiți fișierele descărcate. În principiu, numele poate fi orice, dar nu trebuie să conțină spații sau litere rusești. Pentru comoditate, ar trebui să utilizați nume scurte, de exemplu update.zip. Printre altele, este necesar să se țină cont de faptul că Fastboot este sensibil la cazul literelor din comenzile trimise și numele fișierelor. Aceste. „Update.zip” și „update.zip” pentru fastboot sunt fișiere diferite.

Se lansează Fastboot

Deoarece Fastboot este o aplicație de consolă, lucrul cu instrumentul se face prin introducerea unor comenzi cu o anumită sintaxă în linia de comandă Windows (cmd). Pentru a lansa Fastboot, cel mai simplu mod este să utilizați următoarea metodă.


Acest add-on vă permite să efectuați toate operațiunile din exemplele descrise mai jos într-un mod semi-automat și fără a fi nevoie să recurgeți la introducerea manuală a comenzilor în consolă.


Deblocarea bootloader-ului

Producătorii unui anumit număr de dispozitive Android blochează capacitatea de a gestiona secțiunile de memorie a dispozitivului prin blocarea bootloader-ului. Dacă un dispozitiv are un bootloader blocat, în cele mai multe cazuri nu este posibilă flash-ul firmware-ului său prin fastboot.

Pentru a verifica starea bootloader-ului, puteți trimite următoarea comandă către dispozitiv, care este în modul fastboot și conectat la computer:

info-dispozitiv OEM fastboot

Dar din nou trebuie să admitem că această metodă de determinare a stării de blocare nu este universală și diferă pentru dispozitive diferiți producători. Această declarație se aplică și pentru deblocarea bootloaderului - metodologia procedurii este diferită pentru diferite dispozitive si chiar pentru diverse modele o singură marcă.

Scrierea fișierelor în secțiunile de memorie ale dispozitivului

După finalizarea procedurilor pregătitoare, puteți trece la procedura de scriere a datelor în secțiunile de memorie ale dispozitivului. Încă o dată, verificăm corectitudinea descărcării fișierelor de imagine și/sau pachetelor zip și conformitatea acestora cu dispozitivul flash.

Atenţie! Afișarea intermitentă a imaginilor de fișiere incorecte și deteriorate, precum și a imaginilor de pe alt dispozitiv în dispozitiv duce în cele mai multe cazuri la incapacitatea de a încărca Android și/sau alte consecințe negative pentru dispozitiv!

Instalarea pachetelor zip

Pentru a scrie pe dispozitiv, de exemplu, actualizări OTA sau set complet componente software distribuite în format *.zip, se folosește comanda fastboot update.


Scrierea imaginilor img pe partițiile de memorie

În multe cazuri, căutarea firmware-ului în format *.zip poate fi dificil de descărcat. Producătorii de dispozitive sunt reticenți în a-și posta soluțiile pe Internet. În plus, fișierele zip pot fi flashate prin recuperare, astfel încât recomandarea utilizării metodei de scriere a fișierelor zip prin fastboot este discutabilă.

Dar capacitatea de a flash imagini individuale în secțiunile corespunzătoare, în special "boot", "sistem", "date utilizator", "recuperare" etc. prin Fastboot la restaurarea dispozitivului după probleme grave de software, poate salva situația în multe cazuri.

Pentru a flash o imagine separată de imagine, utilizați comanda:

fastboot flash partition_name nume_fișier.img




În acest fel, firmware-ul este flash cu ajutorul comenzilor trimise prin consolă. După cum puteți vedea, procedurile pregătitoare necesită mai mult timp și efort, dar dacă sunt efectuate corect, scrierea secțiunilor din memoria dispozitivului are loc foarte rapid și aproape întotdeauna fără probleme.

Să începem cu faptul că aveți nevoie de Linux. În Windows, puteți doar dezasambla firmware-ul, dar nu îl veți putea pune la loc din motive pur tehnice. Acum despre firmware. Ele sunt de obicei distribuite sub formă de arhive ZIP flash prin recuperare personalizată. Este unul dintre ele de care vom avea nevoie pentru experimente. Recomand să începeți călătoria Romodel cu un firmware personalizat cât mai aproape de AOSP, pentru că de multe ori este mai ușor de înțeles decât cel de stoc.

  1. Despachetați arhiva cu firmware-ul în orice folder.
  2. Descărcați scriptul de pe link și dezarhivați-l în orice folder.
  3. Lansăm fișierul ext (dacă se plânge de lipsa Java, doar săriți apăsând pe y; Java este necesar doar pentru ambalare).
  4. Acum selectați despachetarea apăsând butonul 1 și apoi Enter.
  5. Un folder nou numit extract_* va apărea lângă fișierul ext și folderul instrumente. Copiați fișierele system.new.dat și system.transfer.list în ele.
  6. După ce ați copiat fișierele, apăsați Enter și așteptați. După un timp, va trebui să apăsați din nou pe Enter, să introduceți parola de administrator și să apăsați din nou pe Enter.
  7. Gata. Conținutul sistemului se află în folderul extract_*/output.

Metoda manuala

Despachetați arhiva cu firmware-ul în orice folder (de exemplu, rom):

$ mkdir ~/rom $ dezarhivare calea_la_arhivă -d ~/rom/

Descărcați instrumentele de care avem nevoie în acest folder:

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

Să rulăm scriptul:

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

Acesta convertește fișierul system.new.dat într-o imagine brută numită system.img . Montați imaginea în subfolderul mnt:

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

Structura directorului Android

După dezambalarea sistemului, va apărea următoarea structură de directoare:

  • aplicația- aplicații preinstalate cu privilegii standard;
  • priv-app- aplicații preinstalate cu privilegii ridicate, inclusiv unele componente ale sistemului;
  • coșul de gunoi- fișiere binare în format ELF, un analog al directoarelor /bin și /usr/bin din Linux. Conține diverse componente ale sistemului utilizate de componentele de sistem de nivel superior;
  • etc- fișiere de setări. Un analog complet al /etc în Linux, folosit, totuși, numai de aceleași componente ale sistemului. Aplicațiile Android stochează setările individuale în directoarele /data/data/;
  • fonturi- fonturi. În mod implicit, conține doar fonturi marca Roboto;
  • cadru- biblioteci de clase Java utilizate de sistem și aplicații. Există, de asemenea, un fișier framework-res.apk care conține o descriere completă a interfeței sistemului de operare, inclusiv toate fișierele grafice;
  • libŞi lib64- Biblioteci Linux utilizate de componentele sistemului de nivel scăzut. Un analog al directoarelor /lib și /usr/lib din Linux, inclusiv biblioteci standard precum libc, libz, libssl. Pe dispozitivele cu arhitectură ARMv7 și mai mici, directorul lib64 va lipsi;
  • mass-media- fișiere media: tonuri de apel, sunete de notificare, sunete de interfață și animație de încărcare a sistemului de operare;
  • tts- fișiere necesare sintetizatorului de vorbire;
  • usr- un director care conține de obicei fișiere necesare rulării aplicațiilor din directorul bin. În esență, un analog al /usr/share ;
  • vânzător- fișiere furnizate de producătorul dispozitivului. De obicei, conține firmware binar pentru diferite componente hardware, de exemplu un modul Wi-Fi;
  • xbin- directorul optional; firmware-urile personalizate îl folosesc pentru a stoca lucruri precum interpretul bash, SSH, PowerTOP, BusyBox și alte instrumente utile;
  • construi.prop- un fișier care conține informații despre ansamblu, precum și diverse setări de nivel scăzut;
  • addon.d- conține scripturi care sunt lansate după instalarea firmware-ului. GApps își scriu și aici propriul script, datorită căruia sunt reînviați după reinstalarea firmware-ului.

Acum că suntem familiarizați cu structura de bază a Androidului, să începem să facem modificări.

Eliminarea și adăugarea aplicațiilor

Toate programele preinstalate pot fi găsite în două foldere:

  • /sistem/aplicație/;
  • /system/priv-app/.

Ele diferă unele de altele prin privilegiile de acces. Dacă programele din aplicație au aceleași permisiuni ca și programele terță parte (de exemplu, instalate din Magazinul Play), atunci aplicațiile din aplicația priv pot folosi API-uri privilegiate (drepturi privilegiate). Puteți afla mai multe despre asta de la.

Pentru a preinstala o aplicație în firmware, pur și simplu introduceți fișierul APK în /system/app/ . Puteți, desigur, să creați un folder separat, dar în cazul nostru acest lucru nu are sens, deoarece folderul este folosit pentru a stoca biblioteci și fișiere Odex, pe care pur și simplu nu le avem. Pentru a-l elimina, pur și simplu ștergeți folderul cu el.

Puteți merge mai departe și puteți înlocui aplicațiile stoc cu analogi. De exemplu, pentru a înlocui calendarul, ștergeți folderul Calendaristicși copiați com.rpagyc.simplecalendar.apk-ul nostru preferat în /system/app. Și nu trebuie să-l copiați. Apoi firmware-ul va fi fără calendar.

Principalul lucru de reținut este că programele de stoc pot fi legate între ele. Prin urmare, ștergerea unui program poate duce la inoperabilitatea completă a altuia (de exemplu, CalendarProvider și Calendar: prin ștergerea primului, veți face nu numai calendarul stoc inoperabil, ci și orice alt calendar). Din fericire, în firmware-ul AOSP pur nu există multe interconexiuni.

Modificarea animației de încărcare

Animația este stocată ca imagini PNG, ambalate în arhiva /system/media/bootanimation.zip fără compresie. În interiorul arhivei se află:

  • desc.txt- un fișier care descrie animația;
  • partea 0- un folder cu fișiere de animație care sunt redate primele;
  • partea 1- un folder cu fișiere de animație care sunt redate secunde;
  • parte?- ultimul folder, imaginile din care sunt redate la final.

Fișierul desc.txt poate conține ceva de genul

1920 1080 60 p 1 0 part0 p 0 0 part1

Scopul acestor linii este intuitiv: 1920 × 1080 este rezoluția imaginii, 60 este numărul de cadre pe secundă. Part0 și part1 indică folderele din care va fi redată animația și secvența de redare. În general, pot exista fie o parte, fie mai multe (trei sau mai multe).

Imaginile aflate în folderele piese sunt numerotate cu cinci numere în ordinea redării: 00000.png, 00001.png, 00002.png ... Aceste imagini pot fi înlocuite cu propriile imagini, creând astfel o animație originală. Sau puteți șterge pur și simplu fișierul bootanimation.zip. Apoi, dispozitivul va afișa animație de la Android standard. Sau folosiți o colecție gata făcută de animații pe w3bsit3-dns.com.

Schimbarea designului sunetului

De fapt, toate sunetele pe care sistemul le redă sunt stocate în folderul /system/media/audio. În interiorul acestuia veți găsi următoarele foldere:

  • alarme- melodii de ceas deşteptător;
  • notificări- sunete de notificare;
  • tonuri de apel- tonuri de apel;
  • ui- sunete de sistem, cum ar fi bateria descărcată, focalizarea camerei, selecția elementelor de interfață.

În alarme, notificări, tonuri de apel puteți adăuga câte melodii doriți. Le puteți lua, de exemplu, aici:

  • tonuri de apel standard de la diferite telefoane și smartphone-uri Nokia;

Și un mic truc de viață: ștergerea fișierelor din folderul ui nu va duce la blocări și erori, ci la dispariția sunetelor de sistem. Prin urmare, puteți dezactiva cu ușurință sunetul fotografierii de pe cameră, luând o captură de ecran, pur și simplu ștergând fișierele care conțin aceste sunete (numele lor sunt intuitive).

Adăugarea fonturilor

Fonturile sunt stocate în fonturi. Puteți găsi arhive cu fișiere de font pe w3bsit3-dns.com și XDA. Pentru a instala, trebuie doar să copiați și să înlocuiți fișierele ttf din arhivă în folderul cu fonturi.

Modificarea setărilor sistemului (build.prop)

Imaginea sistemului are un fișier build.prop interesant care conține multe informatii utile despre hardware-ul dispozitivului și setările implicite pentru diverse aplicații stoc. Pentru a fi corect, observ că nu este întotdeauna cazul. De exemplu, în Gigaset ME și ME Pro build.prop este împărțit în două părți. O parte conține setări pentru Gigaset ME, iar pentru ME Pro unele linii sunt duplicate, dar tastele (numele smartphone-ului etc.) sunt diferite. Acest lucru a fost făcut pentru a asigura funcționarea mai mult sau mai puțin corectă a aceluiași firmware pe dispozitive diferite.


Build.prop conține (sau poate conține) un număr mare de setări. Unele dintre ele nu schimbă nimic, altele îmbunătățesc un lucru în detrimentul altuia, dar există cele care sunt cu adevărat utile:

  • ro.produs.modelŞi ro.produs.producător- modelul smartphone-ului și numele producătorului. Prin înlocuirea acestor linii, puteți face Magazinul Play să creadă că aveți un alt smartphone, care va deschide accesul la mai multe software. Pentru orice smartphone chinezesc puțin cunoscut, aceste linii pot salva vieți;
  • hw.qemu.mainkeys- ia doar două valori: 0 - afișați tastele de navigare pe ecran, 1 - nu afișați butoanele. Absența unei linii corespunde cu 0;
  • debug.sf.nobootanimation- valoarea 1 dezactivează încărcarea animației, ceea ce îi crește ușor viteza. Setarea lui la 0 sau ștergerea liniei readuce animația la locul ei;
  • ro.telefonie.default_network- spune sistemului în ce mod ar trebui să fie comutată rețeaua mobilă la încărcare;
  • ro.sf.lcd_density- Afișează DPI, majoritatea valoarea exacta pentru afișare poate fi calculat printr-un site convenabil. Dar nimeni nu vă interzice să setați o valoare mai mare sau mai mică după bunul plac: valorile mai mari măresc elementele de interfață, valorile mai mici fac elementele de interfață mai mici;
  • ro.config.vc_call_vol_steps- numărul de pași de volum în timpul unui apel (implicit 8);
  • ro.config.media_vol_steps- numărul de pași de volum media (implicit 15).

Implementăm Google Apps în firmware

Aproape întotdeauna firmware-ul personalizat vine fără servicii Googleși magazin de aplicații. Dezvoltatorii sugerează să le instalăm separat folosind pachetul GApps. Cu toate acestea, poate fi integrat direct în firmware.

Mai întâi trebuie să descărcați pachetul GApps. Recomand să luați arhivele Open GApps. Alegeți versiunea Android, arhitectura procesorului și opțiunea de configurare (Pico, Nano, Stock...), care determină câte aplicații Google diferite conține arhiva. Recomand să descărcați versiunea Pico. Conține doar Magazinul Play și un set de biblioteci necesare funcționării sale.

Integrarea GApps în firmware se face astfel:

  1. Despachetați arhiva ZIP GApps folosind orice arhivator.
  2. Accesați folderul Core.
  3. Vedem multe arhive cu extensia .tar.lz. Extrageți folosind lzip.
  4. După despachetare, copiați fișierele din foldere în folderele corespunzătoare din sistem. Este ușor să ghiciți ce să aruncați din structura directorului din arhivă. De exemplu, configuratorul (din captura de ecran) trebuie să fie plasat în folderul priv-app.
  5. Accesați folderul GApps (situat lângă Core) și urmați pașii 3 și 4 pentru fișierele din acesta.
  6. Gata, am integrat GApps în firmware-ul nostru!

Spațiu liber

Este necesar să înțelegeți că spațiul pentru instalarea firmware-ului este limitat. Nu puteți instala firmware a cărui dimensiune depășește dimensiunea partiției de sistem a dispozitivului. Puteți vedea valoarea acestuia folosind:

$ adb shell df /system

A doua opțiune: puneți un terminal pe dispozitiv și introduceți comanda

$df/sistem

Puteți afla dimensiunea partiției în octeți instalând BusyBox pe smartphone și rulând comanda în terminal

$ busybox df -B 1 /sistem

Sau la fel cu ADB:

$ adb shell busybox df -B 1 /sistem

Spațiul ocupat de firmware va fi aproximativ egal cu dimensiunea sistemului atunci când este despachetat. În general, la crearea firmware-ului, este necesar să se țină cont de faptul că utilizatorul poate, de asemenea, să flash diverse modificări deasupra acestuia (SuperSU, Xposed) sau să transfere aplicații în secțiunea de sistem. De exemplu, pachetul minim de aplicații Google (Pico) necesită un spațiu de instalare suplimentar de minim 150 MB.

Dacă este necesar, dimensiunea fișierului firmware poate fi redusă prin eliminarea nu numai a programelor inutile din /system/app (/system/priv-app) și a sunetelor de apel din system/media/audio și bootanimation.zip, dar și:

  • /system/tts/lang_pico- limbile motorului vocal primitiv Pico TTS, motorul vocal Google nu va fi afectat;
  • /system/usr/srec/config/- limbi offline. Îl puteți descărca online mai târziu, dacă este necesar.

Asamblare

După ce faceți modificări, trebuie să puneți totul la loc. Mai întâi, să împachetăm secțiunea de sistem în system.new.dat . Descărcați instrumentele de care avem nevoie:

$ 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

Să ne convertim folderul înapoi într-o imagine RAW. Să-i spunem system_new.img:

$ sudo make_ext4fs -T 0 -S file_contexts -l 1073741824 -a system system_new.img output/

1073741824 este modificat la dimensiunea partiției de sistem în octeți. Ar fi indicat să-l faceți chiar puțin mai mic. Facem o imagine rară din imaginea RAW:

$ img2simg system_new.img system_snew.img

Să ne convertim imaginea în system.transfer.list și system.new.dat, care ar trebui să fie aruncate în arhiva cu firmware-ul, dar mai întâi vom șterge fișierele vechi:

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

Să separăm fișierele de firmware de excesul de husk (fișiere pe care le-am descărcat pentru lucru. Pentru aceasta este convenabil să folosiți arhiva cu firmware-ul). Șters? Acum trebuie să împachetați firmware-ul într-o arhivă ZIP (cu orice arhivator).

Mai rămâne doar să semnezi arhiva. Acest lucru se poate face atât pe Android însuși folosind ZipSigner, cât și pe un computer (veți avea nevoie de Java instalat):

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

Capcane

În timpul construirii system.new.dat, este posibil să întâmpinați mai multe probleme cauzate de schimbările constante ale mecanismelor de generare a firmware-ului Android. Metoda descrisă mai sus ar trebui să funcționeze bine în cazul firmware-ului bazat pe Android 5.1, cele mai noi pot avea dificultăți, așa că va trebui să utilizați alte versiuni ale instrumentelor de compilare. Din păcate, nu putem descrie toate nuanțele ansamblului, așa că poate fi necesar să îl căutați pe Google.

Instalare

Pentru a instala firmware personalizat, aveți nevoie de o recuperare TWRP personalizată, care vă permite să instalați firmware nesemnat sau semnat cu o cheie de testare (aceasta este exact ceea ce am creat). În revistă, am descris în mod repetat procesul de instalare a acestuia, iar în firele de forum dedicate dispozitivului dvs., există de obicei suficiente informații pentru a face acest lucru.

TWRP

Concluzii

Acest articol descrie doar vârful unui aisberg imens numit „modificare firmware”. Firmware-ul „serios” nu numai că completează nucleul și firmware-ul în sine cu aplicații stoc cu multe funcții (care sunt adesea preluate din alte nuclee și firmware), organizând sau chiar schimbând principiile interacțiunii lor, dar poate schimba radical și principiile de funcționare ale sistemul de operare. Adevărat, un astfel de hack nu mai este Android, ci un sistem de operare separat, chiar dacă acolo pot fi instalate serviciile Play (apropo, astfel de acțiuni, ca să spunem ușor, nu sunt încurajate de Google). Ei bine, nu uitați: toate shell-urile de la producători - TouchWiz, ZenUI, HTC Sense și așa mai departe - sunt doar unele personalizate obișnuite, legate maxim de hardware-ul dispozitivului și unele de altele.



Ți-a plăcut articolul? Distribuie prietenilor tăi!
A fost util acest articol?
Da
Nu
Vă mulțumim pentru feedback!
Ceva a mers prost și votul tău nu a fost numărat.
Multumesc. Mesajul dvs. a fost trimis
Ați găsit o eroare în text?
Selectați-l, faceți clic Ctrl + Enter si vom repara totul!