Wie finde ich heraus, wer der ROM-Anbieter ist?

8

Ich habe eine automatische Fehlerberichtsfunktion in meiner App, die nützliche Informationen zum Debuggen enthält.

Eine Sache, die ich gerne einbeziehen würde, ist der ROM-Provider. Insbesondere würde ich gerne wissen, ob der Benutzer ein benutzerdefiniertes ROM ausführt und welches, vorzugsweise sogar mit der Versionsnummer.

Haben Sie eine Idee, wie Sie diese Informationen programmgesteuert abrufen können?

--- Aus dem Quintin übernommen (siehe unten)

Ссылка :

%Vor%

Wobei die Konstante das ist:

%Vor%

Und hier ist die getSystemProperty ();

%Vor%

Könnte jemand mit einem CM-ROM das für mich ausführen?

Übrigens. Vorsicht, das ist GPL-Code. Ich für meinen Teil kann es nicht benutzen. Irgendein einfacher oder nicht-GPL Weg?

    
Mariano Kamp 10.10.2009, 06:48
quelle

3 Antworten

4

Es gibt Code im Cyanogen-Updater -Projekt, das diese Funktionalität hat, obwohl ich die rom-Informationen denke wird von einer Prop-Datei zur Verfügung gestellt, die von der ROM-Entwickler zur Verfügung gestellt wird, so dass ich nicht sicher bin, ob es universell funktioniert. Ich habe das nicht gründlich untersucht, aber Sie können einen Blick auf die Quelle werfen und es herausfinden.

    
Quintin Robinson 10.10.2009, 06:58
quelle
5

Ich weiß nicht, ob es einen eindeutigen Indikator für den Anbieter gibt, aber Sie könnten den Inhalt von /proc/version überprüfen. Hier ist die Ausgabe für CyanogenMod 4.0.4:

  

Linux-Version 2.6.29.6-cm4 (Schatten @ toxygen) (gcc-Version 4.4.0 (GCC)) # 8 PREEMPT Fr 28. Aug. 20:30:25 EDT 2009

Der Hinweis hier ist das Suffix "cm4", welches ( ich glaube ) für CyanogenMod 4 steht (plus das unverwechselbare Benutzer @ Host-Bit, wenn auch weniger klar). Zum Vergleich, hier ist die Version für den Emulator mit 1.6:

  

Linux-Version 2.6.27-00110-g132305e ([email protected]) (gcc-Version 4.2.1) # 6 Montag, 2. Februar 12:47:38 PST 2009

Sie können auch die Werte für android.os.Build überprüfen. Es gibt nicht viele Informationen zu Build.TYPE , aber ich gehe davon aus, dass "eng" für offizielle Builds steht und "user" für selbst erstellte Builds steht, also könnte das auch nützlich sein.

    
mernen 10.10.2009 08:41
quelle
3

Benutzerdefinierte ROMs überschreiben Build.DISPLAY. Ich habe gerade CheckRom REVOHD V6 überprüft und es hat funktioniert.

    
Stephan Tual 02.04.2012 21:20
quelle

Tags und Links