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

Eigenes script

Dieses Thema im Forum "Root / Hacking / Modding für Motorola Milestone" wurde erstellt von Sakaschi, 02.07.2010.

  1. Sakaschi, 02.07.2010 #1
    Sakaschi

    Sakaschi Threadstarter Android-Ikone

    Beiträge:
    7,008
    Erhaltene Danke:
    4,098
    Registriert seit:
    24.04.2010
    Sorry ich wuste nicht genau wohin damit, notfals bitte verschieben ^.^
    So ich wollte mal das TimeTurn script für mich erweitern.
    Klappte auch alles auser das er mein script angeblick ausführt.
    Da steht auch alles geklappt.
    Aber er hat nix gemacht >.<

    vllt kann mir jemand ja helfen, wäre nett

    lg.

    Sakaschi


    Code:
    #!/sbin/sh
    
    if [ $1 == "restore" ]; then
        cp -f -v /sdcard/OpenRecovery/backup/system/app/*.apk /system/app/
        cp -f -v /sdcard/OpenRecovery/backup/system/etc/permissions/*.xml /system/etc/permissions/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/framework.jar /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/services.jar /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/twframework.jar /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/twframework-res.apk /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/framework-res.apk /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/lib/libmnglw-0.8.2.so /system/lib/
        cp -f -v /sdcard/OpenRecovery/backup/data/app/*.apk /data/app/
        echo "Standard-Theme wiederhergestellt";
    else
        if [ -f "/sdcard/OpenRecovery/fullport/$1/system/framework/services.jar" -a "/sdcard/OpenRecovery/theme/$1/framework.apk" ]; then
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/framework-res.apk /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/framework.jar /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/twframework.jar /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/twframework-res.apk /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/data/app/*.apk /data/app/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/lib/libmnglw-0.8.2.so /system/lib/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/app/*.apk /system/app/
    
    
    
            echo "Theme $1 installiert";
        else
            echo "Theme fehlerhaft! ($1)";
        fi;
    fi;
    
    chmod 644 /system/framework/services.jar
    chmod 644 /system/framework/framework-res.apk
    chmod 644 /system/framework/framework.jar
    chmod 644 /system/framework/twframework.jar
    chmod 644 /system/framework/twframework-res.apk
    chmod 644 /data/app/*.apk
    chmod 644 /system/etc/permissions/touchwiz.xml
    chmod 644 /system/lib/libmnglw-0.8.2.so
    chmod 644 /system/app/*.apk
     
  2. TimeTurn, 03.07.2010 #2
    TimeTurn

    TimeTurn Foren-Inventar

    Beiträge:
    15,103
    Erhaltene Danke:
    2,891
    Registriert seit:
    01.05.2010
    Phone:
    Huawei Nexus 6P
    Tablet:
    Sony Xperia Z2 Tablet
    Hättest Du auch in dem entsprechenden Thread ansprechen können :D

    Das Script sieht erstmal ganz gut aus - hast Du es auch im Unix-Format gespeichert? Sonst wird das nicht ausgeführt. Ggf. ein vorhandenes Script kopieren und dann den neuen Text im Notepad++ reinkopieren.

    Ich hatte sowas selbst eingebaut für das Galaxy S-Theme - nur werden die Backups bei mir woanders abgelegt und es liegt woanders. Ich habe mir speziell für das Galaxy-Theme ein Scipt abgelegt namens "theme-galaxy-s.sh", da sich dieses ja auch nicht für andere themes anderer Hersteller nutzen lässt und daher eh nicht korrekt funktionieren würde.

    "theme-galaxy-s.sh":
    Theme gespeichert in: /sdcard/OpenRecovery/etc/theme-galaxy-s

    Code:
    #!/sbin/sh
    
    case $1 in
        install)
            echo -n "Installiere Theme vom Samsung Galaxy S..."
    
            # Sicherung
            if [ ! -f "/sdcard/OpenRecovery/backup/theme/samsung-s" ]; then
            
                cp -f /system/framework/framework.jar /sdcard/OpenRecovery/backup/theme/framework.jar
                if [ -f "/system/lib/libmnglw-0.8.2.so" ]; then
                    cp -f /system/lib/libmnglw-0.8.2.so /sdcard/OpenRecovery/backup/libmnglw-0.8.2.so
                fi
                
                touch /sdcard/OpenRecovery/backup/theme/samsung-s
            fi
            
            # Kopieren
            cp -f /sdcard/OpenRecovery/etc/theme-galaxy-s/system/etc/permissions/touchwiz.xml /system/etc/permissions/touchwiz.xml
            chmod 644 /system/etc/permissions/touchwiz.xml
    
            cp -f /sdcard/OpenRecovery/etc/theme-galaxy-s/system/framework/*.apk /system/framework/
            cp -f /sdcard/OpenRecovery/etc/theme-galaxy-s/system/framework/*.jar /system/framework/
            chmod 644 /system/framework/*.apk
            chmod 644 /system/framework/*.jar
    
            cp -f /sdcard/OpenRecovery/etc/theme-galaxy-s/system/lib/libmnglw-0.8.2.so /system/lib/libmnglw-0.8.2.so
            chmod 644 /system/lib/libmnglw-0.8.2.so
    
            cp -f /sdcard/OpenRecovery/etc/theme-galaxy-s/data/app/*.apk /data/app/
            chmod 644 /data/app/*.apk
            
            echo "OK"
            ;;
        remove)
            if [ -f "/sdcard/OpenRecovery/backup/theme/samsung-s" ]; then
                echo -n "Entferne Theme vom Samsung Galaxy S..."
                
                for apk in "/sdcard/OpenRecovery/etc/theme-galaxy-s/system/app/"*.apk; do
                    apkfile="$(basename $apk)"
                    if [ -f /system/app/$apkfile ]; then
                        cp -f /sdcard/OpenRecovery/backup/app/$apkfile /system/app/$apkfile
                        chmod 644 /system/app/$apkfile
                    fi
                done
    
                rm -f /system/app/aldiko-standard*.apk
                rm -f /system/app/Layar-samsung.apk
                rm -f /system/app/thinkdroid.apk
                rm -f /system/app/TouchWiz*.apk
                rm -f /system/etc/permissions/touchwiz.xml
    
                cp -f /sdcard/OpenRecovery/backup/theme/*.apk /system/framework/
                cp -f /sdcard/OpenRecovery/backup/theme/*.jar /system/framework/
                chmod 644 /system/framework/*.apk
                chmod 644 /system/framework/*.jar
    
                if [ -f "/sdcard/OpenRecovery/backup/libmnglw-0.8.2.so" ]; then
                    cp -f /sdcard/OpenRecovery/backup/libmnglw-0.8.2.so /system/lib/libmnglw-0.8.2.so
                    chmod 644 /system/lib/libmnglw-0.8.2.so
                fi
                
                rm -f /data/app/TATLiveWallpapers*.apk
            
                echo "OK"
            else
                echo "Samsung S theme war nie installiert"
            fi
            ;;
     esac

    //EDIT: Hab Deinen Fehler gefunden:

    Code:
    if [ -f "/sdcard/OpenRecovery/fullport/$1/system/framework/services.jar" -a "/sdcard/OpenRecovery/theme/$1/framework.apk" ]; then
    /sdcard/OpenRecovery/theme/$1/framework.apk
    Müsste analog zum Anfang der Abfrage so heißen:
    /sdcard/OpenRecovery/fullport/$1/system/framework/framework-res.apk
    Da die Bedingungen Und-verknüpft sind [-a], müssen beide Dateien da sein, damit die Bedingung erfüllt ist - da bei einer der beiden Bedingungen der Pfad nicht stimmt, ist die Bedingung damit niemals erfüllt und das Theme wird nicht kopiert. Die Abfrage hat nur den einen Sinn: Abzufangen, wenn eine der beiden essentiellen Framework-Dateien nicht existiert und entsprechend abzubrechen wenn dem so ist. Wenn Du willst, kannste die If-Abfrage daher auch ganz rausnehmen, wenn das eh nur für den Eigenegebrauch ist.

    Hier mal die korrigierte Fassung:

    Code:
    #!/sbin/sh
    
    if [ $1 == "restore" ]; then
        cp -f -v /sdcard/OpenRecovery/backup/system/app/*.apk /system/app/
        cp -f -v /sdcard/OpenRecovery/backup/system/etc/permissions/*.xml /system/etc/permissions/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/framework.jar /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/services.jar /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/twframework.jar /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/twframework-res.apk /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/framework-res.apk /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/lib/libmnglw-0.8.2.so /system/lib/
        cp -f -v /sdcard/OpenRecovery/backup/data/app/*.apk /data/app/
        echo "Standard-Theme wiederhergestellt";
    else
        if [ -f "/sdcard/OpenRecovery/fullport/$1/system/framework/services.jar" -a "/sdcard/OpenRecovery/fullport/$1/system/framework/framework-res.apk" ]; then
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/framework-res.apk /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/framework.jar /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/twframework.jar /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/twframework-res.apk /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/data/app/*.apk /data/app/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/lib/libmnglw-0.8.2.so /system/lib/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/app/*.apk /system/app/
    
            echo "Theme $1 installiert";
        else
            echo "Theme fehlerhaft! ($1)";
        fi;
    fi;
     
    Zuletzt bearbeitet: 03.07.2010
  3. Sakaschi, 03.07.2010 #3
    Sakaschi

    Sakaschi Threadstarter Android-Ikone

    Beiträge:
    7,008
    Erhaltene Danke:
    4,098
    Registriert seit:
    24.04.2010
    Ok danke timeturn, ne soll nicht nur eigengebrauch sein darum ändere ich noch bisschen was.

    Das soll ein script sein wo man z.b dark edge später mal und samsung galaxy s themen wo vieles geändert ist, ganz leicht zu installieren.

    Danke das du mir geholfen hast bin leider noch ein noob in sachen scripts schreiben. <.<

    wenn sich noch was am script getan hat kann ich mich ja melden.

    vllt magste es in deinem timeturn op mit einbauen? :)

    weil das tt op von dir benutze ich die ganze zeit.
    Aber erst mache ich mein script richtig :)

    lg.
    Sakaschi

    EDIT:
    so
    Code:
    #!/sbin/sh
    
    if [ $1 == "restore" ]; then
        cp -f -v /sdcard/OpenRecovery/backup/system/app/*.apk /system/app/
        cp -f -v /sdcard/OpenRecovery/backup/system/etc/permissions/*.xml /system/etc/permissions/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/*.jar /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/framework/*.apk /system/framework/
        cp -f -v /sdcard/OpenRecovery/backup/system/lib/*.so /system/lib/
        cp -f -v /sdcard/OpenRecovery/backup/data/app/*.apk /data/app/
        echo "Standard-Theme wiederhergestellt";
    else
        if [ -f "/sdcard/OpenRecovery/fullport/$1/system/framework/services.jar" -a "/sdcard/OpenRecovery/fullport/$1/system/framework.apk" ]; then
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/*.apk /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/framework/*.jar /system/framework/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/data/app/*.apk /data/app/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/lib/*.so /system/lib/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/app/*.apk /system/app/
            cp -f -v /sdcard/OpenRecovery/fullport/$1/system/etc/permissions/*.xml /system/etc/permissions/
    
    
    
            echo "Theme $1 installiert";
        else
            echo "Theme fehlerhaft! ($1)";
        fi;
    fi;
    
    chmod 644 /system/framework/*.jar
    chmod 644 /system/framework/*.apk
    chmod 644 /data/app/*.apk
    chmod 644 /system/etc/permissions/*.xml
    chmod 644 /system/lib/*.so
    chmod 644 /system/app/*.apk
    
    so müsste er doch alles installieren egal von welchem theme oder?^^
    so würde es doch nicht nur das galaxy theme unterstützen.
    Man muss halt aufpassen das man nicht irrgendwas im fullport ordner reinkopiert. Da das script nun jeden scheiss mit installiert was man rein packt und die endung .jar, .apk, .xml, .so hat.
     
    Zuletzt bearbeitet: 03.07.2010
  4. -FuFu-, 03.07.2010 #4
    -FuFu-

    -FuFu- Android-Urgestein

    Beiträge:
    8,406
    Erhaltene Danke:
    3,148
    Registriert seit:
    17.03.2010
    Phone:
    Motorola Moto E 2.Gen
    fürs dark edge wird es dann bestimmt nen script geben ;) wenn nicht sogar ne update.zip ^^
    wenn mein traffic wieder da ist, werd ich auch vom samsung theme ne update.zip erstellen, für unsere "volln00bs" denn wer dann was falsch macht, dem gehört der Stein wieder abgenommen :D

    und scripttechnisch kommt ja eh mit meinem update vom LMF mod (unter neuem namen) genau das, was deins hier machen soll ^^ ist ja alles soweit fertig schon ;)

    aber naja, schauen wir mal ^^ 1 woche dauerts noch bis ich meine update hochlade :D
     
    mamibe bedankt sich.
  5. Sakaschi, 03.07.2010 #5
    Sakaschi

    Sakaschi Threadstarter Android-Ikone

    Beiträge:
    7,008
    Erhaltene Danke:
    4,098
    Registriert seit:
    24.04.2010
    hehe fufu ist den mein script so ok?^^ was ich neu gemacht habe habs eben getestet lief alles perfekt^^

    ohne reboot schleife usw.
    Die restore funktion geht noch nicht da bin ich aber jetzt dabei.
    Ich muss mich erst mal richtig rein arbeiten.
    Der eine fehler ist schon peinlich den ich gemacht habe. =S
    Dafür müsste es nun für alle themen gehen da der ja eig alles kopiert da wo es hin soll^^
    achja fufu mit mein script geht eig auch nix schief ich lade gleich die sachen hoch in der richtigen ordner struktur sogar.
    Man muss einfach das alles in den OpenRecovery einfügen und auf überschreiben klicken (momentan nur timeturn openrevorey)
    dann ist dort nen neuen eintrag das wars achja und in den ordner Fullport nen ordner mit nem themen namen erstellen und da alles rein packen.
    beispiel ordnerstrucktur hab ich sogar auch noch dabei drinne + erklärung wo was hin, wofür es ist und warum das so wichtig ist xP

    lg.
     
    Zuletzt bearbeitet: 03.07.2010
  6. -FuFu-, 03.07.2010 #6
    -FuFu-

    -FuFu- Android-Urgestein

    Beiträge:
    8,406
    Erhaltene Danke:
    3,148
    Registriert seit:
    17.03.2010
    Phone:
    Motorola Moto E 2.Gen
    naja, ich hab mir das nicht so angeschaut, bin auch zu faul dazu derzeit :D
    aber in meinem mod werden themes ja automatisch erkannt, und man muß nicht großartig viel machen ;)

    jedem das seine, und ich muß an meinem script noch nen bisschen was machen, aber mal schauen wie weit ich da noch komme ^^
     
  7. Sakaschi, 03.07.2010 #7
    Sakaschi

    Sakaschi Threadstarter Android-Ikone

    Beiträge:
    7,008
    Erhaltene Danke:
    4,098
    Registriert seit:
    24.04.2010
    cool wird in deinem script dann auch alle dateien erkannt die für das theme da ist .xml dateien .apk so wie .so und .jar?

    ich weiß das ich nicht mit dir mithalten kann :o
    Dafür macht es mir spaß und wer weiß was ich noch so alles lerne, ich als android newbee :/
    lg.
     
    Zuletzt bearbeitet: 03.07.2010

Diese Seite empfehlen