Acest tapet declanșează o eroare rară care provoacă bootloop-ul dispozitivelor Android. Nu încercați wallaper-ul de pe dispozitiv sau vă puteți pierde toate datele.
Actualizare 2 (08.03.2020 la 15:03 ET): Cu corecțiile de securitate Android din august 2020, Google a actualizat Android pentru a remedia această eroare. Mai multe detalii găsiți în partea de jos.
Actualizare 1 (06.04.2020 la 03:12 ET): Au apărut explicații mai noi despre ceea ce face ca „tapetul blestemat” să blocheze telefoanele, alături de un răspuns de la Google. Derulați în jos pentru mai multe informații. Articolul publicat pe 1 iunie 2020 este păstrat mai jos.
Imaginați-vă că căutați pe internet imagini de fundal cool si dai peste un peisaj pitoresc. Are de toate; o pădure verde luxuriantă, un lac curat, cu o insulă minusculă, munți acoperiți de zăpadă în fundal și o acoperire groasă de nori cu lumina soarelui care pătrunde prin goluri. Descărcați imediat imaginea, o setați ca imagine de fundal pentru telefonul dvs. și boom! Telefonul dvs. Android rămâne blocat într-o buclă de pornire. Sună puțin probabil, nu-i așa? Ei bine, este adevărat pentru acest tapet special.
Tapetul a fost distribuit recent pe Stare de nervozitatede renumiți Samsung leakster Ice Universe, care a susținut că imaginea de fundal „va provoca blocarea telefonului tău!” În ciuda avertismentului lor, mai mulți utilizatorii au descărcat imaginea de fundal pentru a verifica dacă a făcut ceva de fapt pe telefonul lor și au primit următoarele rezultate:
Potrivit lui Davide Bianco, dezvoltatorul principal al AOSP ROM personalizat „POSP”, acest tapet anume face ca unele dispozitive Android să se blocheze, deoarece utilizează spațiul de culoare RGB, în loc de spațiul de culoare sRGB, care este acceptat nativ pe Android. Bianco are a trimis un patch către AOSP, care se pare că remediază problema, iar descrierea patch-ului afirmă că „Problema apare atunci când utilizatorul încearcă să seteze ca tapet o imagine care nu este sRGB. Ceea ce se întâmplă este că valoarea variabilei y este mai mare decât limitele histogramei, ceea ce face ca SysUI să se blocheze. O soluție posibilă este limitarea valorii y să fie întotdeauna mai mică de 256." Alături de Bianco, doi dezvoltatori, membru senior XDA BadDaemon și XDA Recognized Developer luca020400, de la populara echipă ROM personalizată LineageOS au venit, de asemenea, cu o soluție unică la problemă. Puteți consulta descrierile patch-urilor pe LineageOS Gerrit urmând acest link și acest link.
Vă recomandăm insistent să nu utilizați această imagine ca tapet în orice circumstanțe. În cazul în care l-ați folosit deja și dispozitivul dvs. este blocat într-o buclă de pornire, vă rugăm să verificați instrucțiunile de mai jos despre cum puteți să vă recuperați dispozitivul.
A raport de la 9to5Google În acest sens, dezvăluie în continuare că problema este limitată la dispozitivele care rulează Android 10 sau mai vechi și nu afectează dispozitivele care rulează Android 11 Previzualizarea dezvoltatorului. Acest lucru se datorează faptului că pe Android 11, sistemul convertește spațiul de culoare dacă nu este acceptat, dar pe Android 10 nu. Ceea ce înseamnă că aceasta nu este o problemă cu această imagine specială și ar putea fi cauzată de alte imagini care utilizează spațiul de culoare RGB.
Rețineți că, deși problema nu afectează toate dispozitivele Android, vă recomandăm insistent să nu încercați imaginea de fundal de pe telefon. În cazul în care îl încercați oricum, s-ar putea să vă puteți recupera dispozitivul fie prin resetarea completă, fie prin intrarea în modul sigur și schimbarea imaginii de fundal. Dar din moment ce unii utilizatori mai departe Stare de nervozitate nu au putut să-și recupereze dispozitivele folosind metodele menționate mai sus, cel mai bine ar fi dacă nu utilizați imaginea exactă ca tapet. Dacă vă place cu adevărat tapetul, faceți o captură de ecran a imaginii și utilizați-o ca tapet.
Actualizare 1: explicație nouă, răspuns de la Google
Extinderea cauzelor erorii, așa cum a explicat membrul senior XDA BadDaemon și XDA Recognized Developer luca020400, tapetul „blestemat” este codificat într-un spațiu de culoare special care se numește „Google/Skia/E3CADAB7BD3DE5E3436874D2A9DEE126” (acesta este numele complet al spațiului de culoare, iar Skia se referă la Biblioteca de grafică 2D realizată de Google.) În schimb, majoritatea celorlalte imagini de fundal sunt codificate într-un spațiu de culoare numit „sRGB”.
În versiunile Android 10 și mai vechi, toate imaginile sunt convertite în sRGB, dacă nu se specifică altfel de către dezvoltatori. Există o eroare rară care poate apărea la conversia imaginii în sRGB, în care codul care calculează valoarea „luminanței” fiecărui pixel reușește să depășească limita maximă de 255.
Luminanța se calculează folosind următoarea formulă:
Luminanță = .2126f * r + .7152f * g + .0722f * b
Aici „r”, „g” și „b” sunt valori de culoare roșu, verde și albastru reprezentate într-o valoare de 8 biți de la 0 la 255.
Problema cu acest calcul este că fiecare parte este întotdeauna rotunjită înainte de însumarea finală. Unul dintre pixelii din tapetul „blestemat”, când se află în procesul de conversie a imaginii din sRGB și apoi în tonuri de gri, are următoarele valori RGB: 255, 255, 243, care, atunci când sunt conectate la ecuația de mai sus, arată ca:
r: .2126 * 255 = 54.213 => 55
g: .7152 * 255 = 182.376 => 183
b: .0722 * 255 = 18.411 => 19
Luminanță = r+ g + b = 257
Această valoare face ca SystemUI și, practic, întregul sistem de operare să se blocheze, deoarece depășește valoarea maximă. Este o eroare atât de incredibil de specifică, deoarece implică o combinație între o eroare de rotunjire și o eroare de conversie a spațiului de culoare.
Această eroare nu afectează Android 11, deoarece spațiul de culoare „Skia” al imaginii nu este convertit implicit la sRGB. Astfel, această eroare de conversie a spațiului de culoare și eroarea de rotunjire nu apare pe Android 11.
Cu toate acestea, Romain Guy de la echipa Android Toolkit de la Google consideră că cauza principală a acestei probleme este doar în modul în care este calculată luminanța și nu în orice problemă de conversie a spațiului de culoare. Google efectuează propriile teste interne, așa că probabil că vom vedea cu ce vor veni în curând.
Această explicație a fost actualizată pentru a clarifica faptul că unul dintre pixelii din imaginea de fundal „blestemat” este cauza acestei erori specifice de calcul de rotunjire a luminanței. De asemenea, am precizat că rotunjirea are loc în timpul fiecărei etape a calculului de luminanță și nu la sfârșit.
Actualizare 2: Remediat în corecțiile din august 2020
Patch-urile de securitate Android pentru luna august tocmai a intrat în directși dezvoltator recunoscut XDA luca020400 reperat a comite în AOSP care îmbină o remediere pentru această eroare de tapet.