1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

[How-To] Systemvariablen als Widget und Einträge in build.prop

Dieses Thema im Forum "Anleitungen für Motorola Milestone" wurde erstellt von payce, 08.09.2010.

  1. payce, 08.09.2010 #1
    payce

    payce Threadstarter Android-Lexikon

    Beiträge:
    1,133
    Erhaltene Danke:
    1,133
    Registriert seit:
    15.02.2010
    Hallo an Alle,

    Sinn und Zweck ist eine "Bibliothek" an Milestone-Systemvariablen zu erstellen, die Ihr A) direkt beeinflussen könnt und B) als Widget verwenden könnt. Und falls Ihr helfen könnt/wollt -> :thumbsup:

    Standard-Disclaimer: Ihr greift hier in das System-Management von Android DIREKT ein! Es können dadurch Schäden entstehen (vor Allem bei unsachgemäßem Setzen von Variablen) -> der Autor (ich...) übernimmt nicht die Verantwortung dafür. ;)



    Vorraussetzungen:
    - root
    - App "Gscript lite" installiert
    - Falls vorher getestet werden soll: Irgendein Terminal (Better Terminal Pro)

    Abfragen und Setzen von Systemvariablen per Terminal:
    - Zunächst immer per dem Befehl "su" als root anmelden.
    - Alle Systemvariablen können mit dem Befehl "cat" nach Ihrem aktuellen Wert befragt werden.
    - Mit "echo" können Systemvariablen gesetzt werden.

    Ummünzen als Widget:
    - Per GScript das gewünschte Script erstellen. (Immer den Haken bei "Needs SU?" setzen!) Hier ist nur der Befehl "su" nicht nötig! Nur die "cat" bzw. "echo" Befehle.
    - Auf dem Homescreen lange drücken -> Verknüpfungen -> GScript -> das jeweilige Script auswählen.

    Alternativ: Funktionen in Tasker/Locale nutzen
    - Tasker/Locale installieren, "Locale Execute" Plugin herunterladen (Market) und installieren
    - Den jeweiligen (einzeiligen!) Befehl mit dem Locale Execute ausführen, wobei man vor den Befehl ein "@!" setzen sollte (Sinn: Kein Popup über den Befehl und Befehl wird als root ausgeführt). Beispiel: "@! echo 10 > /sys/class/leds/lcd-backlight/brightness"
    - Hier eine ausführlichere Beschreibung: (Link)


    ________________________________________________________________________________________

    Übersicht Systemvariablen:

    Bildschirmhelligkeit + Tastatur-/Softkeybeleuchtung
    Code:
    Abfrage:
    cat /sys/class/leds/lcd-backlight/brightness
    
    Setzen:
    echo 100 > /sys/class/leds/lcd-backlight/brightness
    
    Bildschirmhintergrundbeleuchtung: /sys/class/leds/lcd-backlight/brightness
    Tastaturbeleuchtung: /sys/class/leds/keyboard-backlight/brightness
    Softkeys: /sys/class/leds/button-backlight/brightness
    Bildschirm-HG: Die Helligkeit kann von 0 bis 255 gesetzt werden. ACHTUNG! Die Werte 0 und 1 schalten die HG-Beleuchtung komplett ab! Es wird dann sehr schwer, etwas auf dem Screen zu erkennen!

    Die Bildschirmhelligkeit hier zu setzen macht sehr Sinn, denn: Normalerweise verhindert Motorola das Setzen einer Bildschirmhelligkeit kleiner als 20. Über "echo ..." kann man diese Grenze umgehen.

    Tastatur- und Softkeybeleuchtung: Alle Werte 1 und größer schalten die Beleuchtung ein (kein Dimmen, d.h. 1 ist genauso hell wie 255). Auf Null wird alles wieder abgeschaltet.

    Einziger Nachteil für alle Einträge: Die hier gesetzten Einstellungen funktionieren nur bis zum nächsten Screen Off! Dann wird wieder der alte Wert übernommen. Trotzdem recht praktisch, falls einem der Screen mitten in der Nacht einmal mehr blendet (bspw. bei Nutzung als Navi: Softkey Beleuchtung aus, Bildschirm-HG auf 10 und fertig).


    Torch (LED Blitz) ansteuern
    Code:
    Abfrage:
    cat /sys/class/leds/torch-flash/flash_light
    
    Setzen:
    echo 100 > /sys/class/leds/torch-flash/flash_light
    
    
    Wert 0 schaltet ab. Zwischen 1 und 255 kann man die Helligkeit einstellen (255 ist schon FIES hell). Das ist ein ganz cooler Vorteil zu den ganzen Torch-Widgets: Die Helligkeit kann beliebig eingestellt und bspw. auch maximiert werden.

    Wie bei allen Torches gilt auch hier: Achtung, die LED ist NICHT für längeren Gebrauch ausgelegt und kann Schaden nehmen!


    Notification LED RGB
    Code:
    Abfrage:
    cat /sys/class/leds/red/brightness
    
    Setzen:
    echo 100 > /sys/class/leds/red/brightness
    
    rot: /sys/class/leds/red/brightness
    blau: /sys/class/leds/blue/brightness
    grün: /sys/class/leds/green/brightness
    
    Wie bei allen Brightness Werten: 0 schaltet aus, alles größer 1 schaltet ein. Zwischen 1 und 255 kann man die Farben *etwas* in der Intensität steuern. Da muss man mal etwas rumprobieren, was am besten ausschaut. Bspw. blau (blue/brightness) ist auch bei 255 etwas schwach auf der Brust.

    Vibration einschalten
    Code:
    Vibration für 200 ms:
    echo 200 > /sys/class/timed_output/vibrator/enable
    
    Eigentlich ja sinnfrei, aber spaßig. ;) Ist vllt für ein paar Scripter unter Euch interessant.
     
    Zuletzt bearbeitet: 13.09.2010
    wartemal und VeluxRacer haben sich bedankt.
  2. payce, 08.09.2010 #2
    payce

    payce Threadstarter Android-Lexikon

    Beiträge:
    1,133
    Erhaltene Danke:
    1,133
    Registriert seit:
    15.02.2010
    Kurze Info Android Property System

    Das Android Property System speichert systemweite Variablen, die den korrekten Ablauf von Prozessen sicherstellen (WLAN, Digikamera, DPI-Auflösung usw. usf.). Dabei gibts ein kleines Problem:

    (Großes DANKE an pbininda, der auf dieses Problem gestoßen ist und auch gleich eine Lösung dafür bereit gestellt hat! Siehe hier.)

    Bei manchem macht der Stein nach einer gewissen Laufzeit Probleme. Bspw. läuft W-Lan nicht mehr gescheid oder VPN Netze werden nicht richtig initialisiert. Das *kann* daran liegen, dass das Android Property System überladen ist. Das Property System (welches unter Anderem durch default.prop und build.prop mit Werten gefüllt wird) hat Platz für 247 Einträge. Problem: Bei den meisten sind bereits direkt nach dem Boot schon > 240 Einträge belegt. Also nicht mehr genügend frei für weitere Einträge. Vielen Dank, Motorola, für diesen wirklich vermeidbaren und dummen Fehler...

    Wenn Ihr wissen wollt, wieviele Einträge bereits belegt sind: Shell aufrufen (bspw. Better Terminal Pro) und folgenden Befehl eintippen: "getprop | wc". Vorraussetzung: Funktionierendes busybox. Die erste Zahl zeigt die momentane Zahl an Einträgen im Android Property System. Zur Erinnerung: Ab 247 ist Schluss!

    Abhilfe schafft man, indem unnötige Variablen beim booten deaktiviert werden. Siehe nächster Absatz.

    Unnötige, deaktivierbare Einträge in
    /system/build.prop und /system/default.prop

    Die folgenden Infos sind direkt vom User pbininda übernommen:

    Es müssen nicht alle Deaktivierungen übernommen werden, sondern nur die, die einem unnötig erscheinen.

    Einträge in /system/build.prop
    und /system/default.prop

    Die Datei /system/build.prop beinhaltet einige Einträge, die das Benehmen des Steins beeinflussen und verändert werden können. Änderungen an der build.prop sind IMMER riskant und sollten daher von einem vorherigen Backup der build.prop UND einem nandroid-Backup begleitet werden.

    Ändern kann man die Einträge bspw. mit "Root Explorer". Nach einer Änderung ist zur Übernahme der neuen Einstellungen ein Reboot nötig!

    DPI-Auflösung

    Code:
    Originaleintrag:
    ro.sf.lcd_density=240
    Dieser Wert gibt an, wieviel DPI der Bildschirm darstellt / darstellen soll. Eine Änderung ist mit so mancher App auch möglich (LCD Density Changer), aber dafür muss man nu kein Geld ausgeben, richtig?

    ACHTUNG! Das Verändern hat schon bei so manchem zum Locken des Steins geführt! Hier eine Übersicht über "funktionierende Einstellungen:
    http://www.android-hilfe.de/root-ha...2820-dpi-wert-welcher-datei-3.html#post539370


    Proximity Sensor
    - bisher nicht getestet - Freiwillige vor - :smile:
    Code:
    Originaleinträge:
    mot.proximity.delay=450
    mot.proximity.distance=60
    Die beiden Einträge sind (anscheinend) für den Annäherungssensor zuständig, der beim telefonieren den Touchscreen abschaltet. Während der erste Eintrag den Delay dafür vorgibt (450 -> wahrscheinlich ms), ist der zweite Eintrag als Schwellwert zu sehen: Gibt der Proximity Sensor einen höheren Wert zurück, wird der Display abgeschaltet.

    Falls also jemand mit seinem Proximity Probleme hat (meistens, dass der Display NICHT abschaltet) -> rauf- bzw runtersetzen (im Beispiel: runter).


    Ring Delay
    Code:
    Originaleintrag:
    ro.telephony.call_ring.delay=1000
    Ganz recht, richtig gelesen: "Call Ring Delay" - der Stein wartet gemütlich eine Sekunde (= 1000 ms) ab, bevor er den entsprechenden Klingelton anspielt. Viele User haben den Wert bereits mit Erfolg runtergesetzt (ich persönlich auf 100 ms). Ein Minimum wurde bisher nicht gefunden (0 wurde aber noch nicht probiert meines Wissens).


    ro.media.enc. Einträge
    Unter ro.media.enc* gibt es eine ganze Menge Einträge, wie der Stein geschossene Bilder/Videos/Audiodateien abspeichert. Ändert man hier etwas, kann man seine gewünschten Formate vorab auswählen, ohne großartig konvertieren zu müssen. Was man hier alles ändern kann ist bspw. hier super beschrieben: http://www.android-hilfe.de/anleitu.../15777-how-aufloesung-der-cam-bearbeiten.html - Deswegen gehe ich hier auch gar nicht mehr darauf ein.


    Wieviel Steps in der Lautstärke von Anrufen
    - bisher nicht getestet - Freiwillige vor - :smile:
    Code:
    Orignaleintrag:
    ro.config.vc_call_vol_steps=7
    Gibt anscheinend vor, wieviele Steps beim Regeln der Anruflautstärke während des Telefonierens möglich sind. Falls das einem also zu viele / zu wenige sind: Ausprobieren. Ist aber eher nerdig, DAS auch noch zu ändern. ;)
     
    Zuletzt bearbeitet: 07.10.2010
    VeluxRacer bedankt sich.
  3. -FuFu-, 08.09.2010 #3
    -FuFu-

    -FuFu- Android-Urgestein

    Beiträge:
    8,406
    Erhaltene Danke:
    3,148
    Registriert seit:
    17.03.2010
    Phone:
    Motorola Moto E 2.Gen
    fein fein ;)
    werd ich mal beobachten :D und falls ich noch sinnvolle sachen finde sag ich bescheid ;)

    das abschalten der hw-tastaturbeleuchtung und der "softkeys" find ich sinnvoll, wenn man den stein im dock hat ;)

    mal schauen was man da noch schönes zusammen gebaut bekommt ^^
     
  4. payce, 08.09.2010 #4
    payce

    payce Threadstarter Android-Lexikon

    Beiträge:
    1,133
    Erhaltene Danke:
    1,133
    Registriert seit:
    15.02.2010
    Also wie gesagt: Wenn irgendwelche Systemvariablen bekannt sind, einfach posten, ich schmeiß die SEHR gerne mit rein! :) :) :)

    Kennst Du schon den hier:
    echo 0 > /sys/class/omap3430/bootloader/lock
     
  5. Nudelholz, 08.09.2010 #5
    Nudelholz

    Nudelholz Android-Experte

    Beiträge:
    768
    Erhaltene Danke:
    178
    Registriert seit:
    02.03.2010
    Find ich ne gute Sache und sehr interessant. :thumbup:

    Bin gespannt, was Du/Ihr noch so findet, bitte am Ball bleiben.
     
  6. payce, 08.09.2010 #6
    payce

    payce Threadstarter Android-Lexikon

    Beiträge:
    1,133
    Erhaltene Danke:
    1,133
    Registriert seit:
    15.02.2010
    Was ich mich ernsthaft frage und wo man mal etwas bohren könnte: Unter /sys/class/ gibts einige USB-Einträge.

    Ich frage mich, ob es *irgendeinen* Eintrag dort gibt, den man nutzen könnte um den USB-Slavemodus abzuschalten und in einen USB-Host oder USB-OTG Modus zu wechseln. Ich habe bereits ein wenig rumexperimentiert, aber die Ergebnisse waren eher ernüchternd: Entweder hieß es "permission denied" (ich denke mal, weil der USB Prozess im Hintergrund bereits aktiv läuft) oder es kam zum sofortigen Reboot des Steins. :p

    Vielleicht will hier sich mal wer autoben, der sich mit USB besser auskennt? :D
     
  7. -FuFu-, 08.09.2010 #7
    -FuFu-

    -FuFu- Android-Urgestein

    Beiträge:
    8,406
    Erhaltene Danke:
    3,148
    Registriert seit:
    17.03.2010
    Phone:
    Motorola Moto E 2.Gen
    wäre das schön wenn man den bootloader so leicht entsperren könnte :D
     
  8. VeluxRacer, 08.09.2010 #8
    VeluxRacer

    VeluxRacer Fortgeschrittenes Mitglied

    Beiträge:
    343
    Erhaltene Danke:
    37
    Registriert seit:
    20.05.2010
    Schau mal nach /sys/power. Dort hats viele werte welche man ändern könnte.
     
  9. payce, 10.09.2010 #9
    payce

    payce Threadstarter Android-Lexikon

    Beiträge:
    1,133
    Erhaltene Danke:
    1,133
    Registriert seit:
    15.02.2010
    @FuFu: Kannst Du mal den Titel kurz ändern? Folgendes kommt nämlich noch dazu:

    [How-To] Systemvariablen als Widget und Einträge in build.prop


    /edit: Danköö! :)
     
    Zuletzt bearbeitet: 10.09.2010
  10. payce, 12.09.2010 #10
    payce

    payce Threadstarter Android-Lexikon

    Beiträge:
    1,133
    Erhaltene Danke:
    1,133
    Registriert seit:
    15.02.2010
    Update: A paar mehr Variablen. Tasker als Alternative zu GScript. Grüße!
     
  11. VeluxRacer, 12.09.2010 #11
    VeluxRacer

    VeluxRacer Fortgeschrittenes Mitglied

    Beiträge:
    343
    Erhaltene Danke:
    37
    Registriert seit:
    20.05.2010
    Ich habs auf 0 oder 1 eingestellt, jedoch fängt es nicht gleich an zu klingeln. Wahrscheinlich ist das Handy zu "lahm".
     
  12. -FuFu-, 12.09.2010 #12
    -FuFu-

    -FuFu- Android-Urgestein

    Beiträge:
    8,406
    Erhaltene Danke:
    3,148
    Registriert seit:
    17.03.2010
    Phone:
    Motorola Moto E 2.Gen
    kann sein, man muß ja auch bedenken, das das system den Klingelton ja auch erstmal einlesen muß ;) und je nachdem wie groß der ist und wo (sdcard oder interner speicher) kann das etwas dauern...


    @payce
    das mit der Vibration hat was :D kann man Leute mit erschrecken, wenn man es einfach mal mit in die mot_boot_mode setzt und 5 sek anlässt :D und dazu noch die LED rot an ^^
     
  13. payce, 07.10.2010 #13
    payce

    payce Threadstarter Android-Lexikon

    Beiträge:
    1,133
    Erhaltene Danke:
    1,133
    Registriert seit:
    15.02.2010
    Update: Android Property System und deaktivierbare Einträge.
     
  14. -FuFu-, 19.08.2011 #14
    -FuFu-

    -FuFu- Android-Urgestein

    Beiträge:
    8,406
    Erhaltene Danke:
    3,148
    Registriert seit:
    17.03.2010
    Phone:
    Motorola Moto E 2.Gen
    Ich hab da nochmal was für Euch gefunden :D

    wem die Helligkeit des Displays zu "dunkel" ist, der hat die möglichkeit sie noch ein kleines bisschen zu erhöhen...

    nutz dazu einfach die Konsole und gibt dort folgendes ein:
    su
    echo 1 > /sys/class/leds/lcd-backlight/als

    und ihr werdet sehen, das wenn Ihr enter gedrückt habt, die helligkeit etwas hör ist...
    was nun aber genau das bewirkt, kann ich euch nicht sagen ;) ich bin nur durch zufall über die Variable gestolpert, in sogut wie allen Roms ist der wert von Haus auf auf "0" gesetzt (bei CM7 auf jeden fall) und ein setzten auf "1" macht die Display beleuchtung etwas heller... und auf einigen Stufen ist dies angenehmer, aber das kann ja jeder für sich dann entscheiden...

    ob der Wert nach dem standby noch vorhanden ist kann ich nicht sagen, nie getestet ;) und ob er nach nem reboot noch da ist kann ich auch nicht sagen...
    wer es unbedingt ab dem reboot haben will, kann sich die 1 Zeile ja in ein bootscript einbauen, oder wer Tasker nutzt, wird auch wissen, wie man das damit sinnvoll nutzen kann ;)
     
  15. timelock, 13.03.2013 #15
    timelock

    timelock Junior Mitglied

    Beiträge:
    28
    Erhaltene Danke:
    1
    Registriert seit:
    09.03.2013
    Phone:
    Motorola Milestone
    Ist zwar schon ein ziemlich alter Thread, aber die enthaltene Infos, wo der File für die Backlights liegen, helfen bei der App ButtonLED.
    ButtonLED - Android App - Download - CHIP Handy Welt
    Mit der kann man die 4 Buttons des Steins als Signal-LED für entgangene Telefonate/Nachrichten nutzen. Die App fand bei mir aber den entsprechenden Brightness-File nicht automatisch, man kann ihn aber bei den Settings auch manuel eingeben.
    Danke an payce für die Info Softkeys: /sys/class/leds/button-backlight/brightness

    TL
     
    Zuletzt bearbeitet: 13.03.2013
    -FuFu- bedankt sich.
  16. wartemal, 23.05.2013 #16
    wartemal

    wartemal Android-Hilfe.de Mitglied

    Beiträge:
    64
    Erhaltene Danke:
    9
    Registriert seit:
    15.10.2012
    Hey an euch Scripter Profis ....

    Welche Zeile kann ich in die Build.prop einfügen, um beim Booten meines Razr die Data und cache beim Bluetooth zu löschen?

    Ich habe CM10.1 und manchmal will das Bluetooth nicht mitbooten, es geht auch so nicht zu starten.

    Die Lösung: Einstellungen->Apps->ALLE->Bluetooth-Freigabe -> (Daten und Cache Löschen ) -> Es startet sofort :thumbsup:

    Währe mehr als dankbar für eine Zeile zur Lösung meines Problems ....
     

Diese Seite empfehlen

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. Build prop eintrag Anleitung