[Ενημέρωση 2: Διορθώθηκε] Αυτή η ταπετσαρία ενεργοποιεί ένα σπάνιο σφάλμα που προκαλεί εκκίνηση των συσκευών Android

click fraud protection

Αυτή η ταπετσαρία ενεργοποιεί ένα σπάνιο σφάλμα που προκαλεί bootloop των συσκευών Android. Μην δοκιμάσετε την ταπετσαρία στη συσκευή σας διαφορετικά μπορεί να χάσετε όλα τα δεδομένα σας.

Ενημέρωση 2 (08/03/2020 @ 3:03 PM ET): Με τις ενημερώσεις κώδικα ασφαλείας Android του Αυγούστου 2020, η Google ενημέρωσε το Android για να διορθώσει αυτό το σφάλμα. Περισσότερες λεπτομέρειες μπορείτε να βρείτε στο κάτω μέρος.

Ενημέρωση 1 (06/04/2020 @ 03:12 AM ET): Έχουν προκύψει νεότερες εξηγήσεις σχετικά με το τι προκαλεί τη συντριβή της "καταραμένης ταπετσαρίας" στα τηλέφωνα, μαζί με μια απάντηση από την Google. Κάντε κύλιση προς τα κάτω για περισσότερες πληροφορίες. Το άρθρο όπως δημοσιεύτηκε την 1η Ιουνίου 2020, διατηρείται παρακάτω.

Φανταστείτε ότι ψάχνετε στο διαδίκτυο δροσερές ταπετσαρίες και συναντάς ένα γραφικό τοπίο. Έχει τα πάντα? ένα καταπράσινο δάσος, μια παρθένα λίμνη με ένα μικροσκοπικό νησί, χιονισμένα βουνά στο βάθος και ένα πυκνό σύννεφο με το φως του ήλιου να εισχωρεί μέσα από τα κενά. Κατεβάζετε αμέσως την εικόνα, την ορίζετε ως ταπετσαρία του τηλεφώνου σας και κάνετε boom! Το τηλέφωνό σας Android κολλάει σε ένα bootloop. Ακούγεται απίθανο, έτσι δεν είναι; Λοιπόν, ισχύει για τη συγκεκριμένη ταπετσαρία.

Η ταπετσαρία κοινοποιήθηκε πρόσφατα Κελάδημααπό γνωστούς Samsung Leakster Ice Universe, ο οποίος ισχυρίστηκε ότι η ταπετσαρία "θα κάνει το τηλέφωνό σας να κολλήσει!" Παρά την προειδοποίησή τους, αρκετοί Οι χρήστες κατέβασαν την ταπετσαρία για να ελέγξουν αν όντως έκανε κάτι στο τηλέφωνό τους και αντιμετώπισαν τα ακόλουθα Αποτελέσματα:

Σύμφωνα με τον Davide Bianco, επικεφαλής προγραμματιστή του AOSP-based προσαρμοσμένη ROM "POSP", αυτή η συγκεκριμένη ταπετσαρία προκαλεί πτώση σε ορισμένες συσκευές Android καθώς χρησιμοποιεί τον χρωματικό χώρο RGB, αντί του χρωματικού χώρου sRGB που υποστηρίζεται εγγενώς στο Android. Η Bianco έχει υπέβαλε ένα έμπλαστρο στο AOSP που φέρεται να επιδιορθώνει το πρόβλημα και η περιγραφή της ενημέρωσης κώδικα αναφέρει ότι "Το ζήτημα παρουσιάζεται όταν ο χρήστης προσπαθεί να ορίσει ως ταπετσαρία μια εικόνα που δεν είναι sRGB. Αυτό που συμβαίνει είναι ότι η τιμή της μεταβλητής y είναι υψηλότερη από τα όρια του ιστογράμματος, με αποτέλεσμα το SysUI να διακόπτεται. Μια πιθανή λύση είναι να περιορίσετε την τιμή y να είναι πάντα μικρότερη από 256." Μαζί με την Bianco, δύο προγραμματιστές, Ανώτερο μέλος του XDA BadDaemon και XDA Recognized Developer luca020400, από τη δημοφιλή ομάδα custom ROM του LineageOS έχουν επίσης βρει μια μοναδική λύση στο πρόβλημα. Μπορείτε να δείτε τις περιγραφές ενημερώσεων κώδικα στο LineageOS Gerrit ακολουθώντας αυτός ο σύνδεσμος και αυτός ο σύνδεσμος.

Συνιστούμε ανεπιφύλακτα να μην χρησιμοποιείτε αυτήν την εικόνα ως ταπετσαρία σας σε καμία περίπτωση. Σε περίπτωση που το έχετε ήδη χρησιμοποιήσει και η συσκευή σας έχει κολλήσει σε bootloop, ελέγξτε τις παρακάτω οδηγίες σχετικά με το πώς μπορείτε να ανακτήσετε τη συσκευή σας.

ΕΝΑ αναφορά από 9to5Google σχετικά με το θέμα αποκαλύπτει περαιτέρω ότι το ζήτημα περιορίζεται σε συσκευές με Android 10 ή παλαιότερες εκδόσεις και δεν επηρεάζει τις συσκευές που εκτελούν το Android 11 Προεπισκόπηση προγραμματιστή. Αυτό οφείλεται στο γεγονός ότι στο Android 11, το σύστημα μετατρέπει τον χρωματικό χώρο εάν δεν υποστηρίζεται, αλλά στο Android 10 δεν το κάνει. Πράγμα που σημαίνει ότι αυτό δεν είναι πρόβλημα με τη συγκεκριμένη εικόνα και μπορεί να προκληθεί από άλλες εικόνες που χρησιμοποιούν τον χρωματικό χώρο RGB.

Λάβετε υπόψη ότι ενώ το πρόβλημα δεν επηρεάζει όλες τις συσκευές Android, συνιστούμε ανεπιφύλακτα να μην δοκιμάσετε την ταπετσαρία στο τηλέφωνό σας. Σε περίπτωση που το δοκιμάσετε ούτως ή άλλως, ίσως μπορείτε να ανακτήσετε τη συσκευή σας είτε επαναφέροντάς την πλήρως είτε μπαίνοντας σε ασφαλή λειτουργία και αλλάζοντας την ταπετσαρία. Αλλά δεδομένου ότι ορισμένοι χρήστες πέρασαν Κελάδημα δεν ήταν σε θέση να ανακτήσουν τις συσκευές τους χρησιμοποιώντας τις προαναφερθείσες μεθόδους, θα ήταν καλύτερο να μην χρησιμοποιήσετε την ακριβή εικόνα ως ταπετσαρία σας. Εάν σας αρέσει πολύ η ταπετσαρία, απλώς τραβήξτε ένα στιγμιότυπο οθόνης της εικόνας και χρησιμοποιήστε την ως ταπετσαρία σας.


Ενημέρωση 1: Νέα Εξήγηση, Απάντηση από την Google

Επεκτείνοντας τα αίτια του σφάλματος όπως εξηγήθηκε από το Ανώτερο μέλος του XDA BadDaemon και XDA Recognized Developer luca020400, η "καταραμένη" ταπετσαρία είναι κωδικοποιημένη σε έναν ειδικό χρωματικό χώρο που ονομάζεται "Google/Skia/E3CADAB7BD3DE5E3436874D2A9DEE126" (αυτό είναι το πλήρες όνομα του χρωματικού χώρου και το Skia αναφέρεται στο Βιβλιοθήκη 2D γραφικών από την Google.) Αντίθετα, οι περισσότερες άλλες εικόνες ταπετσαρίας κωδικοποιούνται σε έναν χρωματικό χώρο που ονομάζεται "sRGB".

Στις εκδόσεις Android 10 και παλαιότερες, όλες οι εικόνες μετατρέπονται σε sRGB, εκτός εάν ορίζεται διαφορετικά από τους προγραμματιστές. Υπάρχει ένα σπάνιο σφάλμα που μπορεί να παρουσιαστεί κατά τη μετατροπή της εικόνας σε sRGB, όπου ο κώδικας που υπολογίζει την τιμή "φωτεινότητας" κάθε pixel καταφέρνει να υπερβεί το μέγιστο όριο των 255.

Η φωτεινότητα υπολογίζεται χρησιμοποιώντας τον ακόλουθο τύπο:

Φωτεινότητα = .2126f * r + .7152f * g + .0722f * b

Εδώ τα "r", "g" και "b" είναι τιμές κόκκινου, πράσινου και μπλε χρώματος που αντιπροσωπεύονται σε μια τιμή 8-bit από 0 έως 255.

Το πρόβλημα με αυτόν τον υπολογισμό είναι ότι κάθε μέρος στρογγυλοποιείται πάντα πριν από την τελική άθροιση. Ένα από τα pixel στην «καταραμένη» ταπετσαρία, όταν βρίσκεται στη διαδικασία μετατροπής της εικόνας από sRGB και στη συνέχεια σε κλίμακα του γκρι, έχει τις ακόλουθες τιμές RGB: 255, 255, 243, οι οποίες όταν συνδέονται στην παραπάνω εξίσωση φαίνεται αρέσει:

r: 0,2126 * 255 = 54,213 => 55

g: .7152 * 255 = 182.376 => 183

β: 0,0722 * 255 = 18,411 => 19

Φωτεινότητα = r+ g + b = 257

Αυτή η τιμή προκαλεί το SystemUI, και βασικά ολόκληρο το λειτουργικό σύστημα, να διακοπεί επειδή υπερβαίνει τη μέγιστη τιμή. Είναι ένα σφάλμα που είναι τόσο απίστευτα συγκεκριμένο επειδή περιλαμβάνει έναν συνδυασμό σφάλματος στρογγυλοποίησης και σφάλματος μετατροπής χρωματικού χώρου.

Αυτό το σφάλμα δεν επηρεάζει το Android 11 επειδή ο χρωματικός χώρος "Skia" της εικόνας δεν μετατρέπεται σε sRGB από προεπιλογή. Έτσι, αυτό το σφάλμα μετατροπής χρωματικού χώρου και το σφάλμα στρογγυλοποίησης δεν παρουσιάζονται στο Android 11.

Ωστόσο, ο Romain Guy από την ομάδα Android Toolkit της Google πιστεύει ότι η βασική αιτία αυτού του ζητήματος είναι μόνο με τον τρόπο που υπολογίζεται η φωτεινότητα και όχι σε προβλήματα μετατροπής χρωματικού χώρου. Η Google πραγματοποιεί τις δικές της εσωτερικές δοκιμές, οπότε πιθανότατα θα δούμε τι θα βρουν σύντομα.

Αυτή η εξήγηση ενημερώθηκε για να διευκρινιστεί ότι ένα από τα pixel στην "καταραμένη" ταπετσαρία είναι η αιτία αυτού του συγκεκριμένου σφάλματος υπολογισμού στρογγυλοποίησης φωτεινότητας. Διευκρινίσαμε επίσης ότι η στρογγυλοποίηση γίνεται σε κάθε βήμα του υπολογισμού της φωτεινότητας και όχι στο τέλος.


Ενημέρωση 2: Διορθώθηκε στις ενημερώσεις κώδικα του Αυγούστου 2020

Οι ενημερώσεις κώδικα ασφαλείας Android για τον μήνα Αύγουστο μόλις βγήκε ζωντανά, και XDA Recognized Developer luca020400 στίγματα α δέσμευση στο AOSP που συγχωνεύει μια διόρθωση για αυτό το σφάλμα ταπετσαρίας.