Warum erhalte ich beim Flashen eines benutzerdefinierten ROMs einen Fehler bei getprop ("ro.product.device")?

7

Immer wenn ich versuche, ein ROM auf meinem ASUS Transformer Prime (tf201) zu flashen, wird folgende Fehlermeldung angezeigt:

assert failed: getprop("ro.product.device") == "tf201" || getprop("ro.build.product") == "tf201"

Ich habe es umgangen, indem ich die ZIP-Datei des ROM geöffnet, zu /META-INF/com/google/android/updater-scriptdieser Prüfung navigiert und sie einfach entfernt habe. Das ROM wird dann einwandfrei installiert.

Trotzdem bleibt mir die Frage: Warum wird mein Gerät nicht als tf201 erkannt, obwohl dies offensichtlich der Fall ist? Liegt es daran, dass ich die systemPartition in einem Formatrausch formatiert habe ?

Maarten
quelle
Ich hatte dasselbe auf einem Galaxy Tab4 10.1 der Marke Vodacom. Ich glaube, sie haben es entweder versehentlich getan, als sie das ROM eines anderen Modells geändert und vergessen haben, die Geräte-ID zu aktualisieren, oder absichtlich, um das Flashen oder die benutzerdefinierte ROM-Installation etwas zu erschweren.
David d C e Freitas
Ich hatte das gleiche Problem, da mein Gerät nach einem Zurücksetzen auf die Werkseinstellungen nicht gerootet wurde und TWRP keine Berechtigung zum Lesen von /system/build.prop hatte.
user173283

Antworten:

4

Stellen Sie sicher, dass Ihr build.propOrdner im Ordner / SYSTEM korrekt konfiguriert ist und die Variable ro.product.devicefestgelegt ist. In benutzerdefinierten ROMs ist die Datei build.prop häufig nicht vollständig konfiguriert, und einige dieser Variablen sind für bestimmte Funktionsprüfungen erforderlich. Sie können es in einem Texteditor öffnen und danach suchen und sicherstellen, dass es festgelegt ist und keine fehlerhaften Zeichen enthalten, die sich auf die ordnungsgemäße Analyse auswirken könnten.

Überprüfen Sie auch diese Variablen und stellen Sie sicher, dass sie ebenfalls festgelegt sind. Es ist gut, sie zu haben:

  • ro.product.model = XXX
  • ro.product.brand = XXX
  • ro.product.name = XXX
  • ro.product.device = XXX
  • ro.product.board = XXX
  • ro.product.manufacturer = XXX
GµårÐïåñ
quelle
3

Dies kann verschiedene Gründe haben. Der Hauptgrund ist eine inkompatible Wiederherstellung, bei der die entsprechenden Variablen nicht richtig eingestellt sind. Versuchen Sie es mit einer anderen Wiederherstellung (Beispiel: TWRP) und prüfen Sie, ob dieser Fehler auftritt.

Eine vorübergehende Lösung hierfür wäre:

Sie können einfach die Zip-Datei öffnen und die extrahieren

META-INF / com / google / android / updater-script

Datei und entfernen Sie die getprop-Zeilen, die wie folgt aussehen:

getprop (xyz) == "xyzyxz");

Zeilen davon. Diese Zeilen stehen normalerweise am Anfang der Updater-Skriptdatei.

Wenn Sie sagen, dass das ROM "für" Ihr Gerät ist, sollte dies keine Probleme verursachen.

Ziehen Sie dann einfach die Updater-Skript-Datei zurück in die Zip-Datei. Jetzt würde das Blinken keine Probleme verursachen.

Beachten Sie, dass:

Verwenden Sie Programme wie 7-zip oder WinRAR , während Sie die Updater-Skriptdatei extrahieren. Verwenden Sie den Texteditor Notepad ++ oder Alternativen wie Geany , die die Linux-EOL-Formate unterstützen.

thewisenerd
quelle
5
Achtung: Während das Entfernen dieser Prüfung in diesem speziellen Kontext in Ordnung ist, sollten Sie dies nicht unbeschwert tun. Der Scheck ist aus gutem Grund da. Wenn Sie dies tun, müssen Sie absolut sicher sein, dass das ROM mit Ihrem Gerät kompatibel ist. Wenn dies nicht der Fall ist, könnten Sie ernsthafte Probleme bekommen und Ihr Gerät sogar (weich) ziegeln. // @Vineeth: Keine Kritik, deine Antwort ist im Kontext vollkommen in Ordnung. Ich würde diese Warnung trotzdem für diese "Schnellleser" einschließen;)
Izzy
2
Um den Kommentar von @ Izzy zu ergänzen, sollten Sie das nicht nur aktualisieren updater-scriptund wieder in das Archiv packen, da diese Zip-Datei bei der Generierung der Initiale signiert wird update.zip. Und wegen der Änderung in der Zip - Datei als Ergebnis wird die SHA256 - Prüfsummen werden nicht überein, wird eine Katastrophe bedeuten. Die SHA256-Prüfsumme wird gemeldet und ist in der ZIP-Datei selbst enthalten. Wenn die Wiederherstellung überprüft werden soll, wird sie angezeigt, möglicherweise wird eine Fehlermeldung ausgegeben oder die Verarbeitung verweigert.
t0mm13b
Durch das Aktualisieren der Wiederherstellung auf die neueste Version wurde dieses Problem behoben. Ich denke, dies sollte die erste Vorgehensweise sein, bevor das Setup-Skript geändert wird.
Arthur.V
Dies löste das Problem für mich. Ich hatte definitiv ein "matisselte" Gerät (TAB4 10.1 SM-T535), aber ich denke, der Netzbetreiber (Vodacom), der es gebrandmarkt hat, hat einen Fehler gemacht und die Variable so eingestellt, dass matissewifisie definitiv nicht war. Ich habe die erste Zeile der /META-INF/com/google/android/updater-scriptDatei so erstellt, dass sie zu meinem Modell passt, und ich habe das richtige ROM (matisselte) installiert, und es hat funktioniert.
David d C e Freitas