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

Probleme APKTOOL Decompile/Compile HELP :(

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von kleenaMax, 15.04.2012.

  1. kleenaMax, 15.04.2012 #1
    kleenaMax

    kleenaMax Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    01.01.2012
    Moin Leute,

    ich hab ein Problem und komm einfach nicht mehr weiter :blushing:

    Ich möchte Modifikationen an der Email.apk und Gmail.apk durchführen.
    Möchte den WIDGET der APP einfach nur Transparent machen und die Schriftfarbe anpassen.

    Habe ICS 4.0.4 (AOSP Android Open Kang Projekt) und eine Galaxy Nexus.
    Arbeiten bzw. versuchen tu ich das ganze mit dem APKTOOL 1.4.3

    Die Apps befindensich auf meinem Rechner,
    Java JDK und Android SDK ist alles soweit funktionsfähig und läuft auch.

    Ich mach das genau gleich nach dieser Anleitung hier: How to decompile/compile using apktools

    Leider immer wieder ohne Erfolg.
    Das decmopilen der Email APK funktioniert auch noch soweit ohne Probleme :)
    Wenn ich jetzt aber ändereungen in einer XML vornehme und dann wieder Compilen will, kommt andauernd dieser beschissene Fehler:

    Code:
    C:\Users\Mbrut.androlib.AndrolibException: brut.common.BrutException: could not
    exec command: [aapt, p, -F, C:\Users\MAXIMI~1\AppData\Local\Temp\APKTOOL12890883
    93909371449.tmp, -I, C:\Users\Maximilian\apktool\framework\1.apk, -S, C:\Users\M
    aximilian\Desktop\ICS\Email\res, -M, C:\Users\Maximilian\Desktop\ICS\Email\Andro
    idManifest.xml]
            at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
    a:193)
            at brut.androlib.Androlib.buildResourcesFull(Androlib.java:301)
            at brut.androlib.Androlib.buildResources(Androlib.java:248)
            at brut.androlib.Androlib.build(Androlib.java:171)
            at brut.androlib.Androlib.build(Androlib.java:154)
            at brut.apktool.Main.cmdBuild(Main.java:182)
            at brut.apktool.Main.main(Main.java:67)
    Caused by: brut.common.BrutException: could not exec command: [aapt, p, -F, C:\U
    sers\MAXIMI~1\AppData\Local\Temp\APKTOOL1289088393909371449.tmp, -I, C:\Users\Ma
    ximilian\apktool\framework\1.apk, -S, C:\Users\Maximilian\Desktop\ICS\Email\res,
     -M, C:\Users\Maximilian\Desktop\ICS\Email\AndroidManifest.xml]
            at brut.util.OS.exec(OS.java:83)
            at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
    a:191)
            ... 6 more
    ich hab mich schon ewigkeiten durch google geschlagen und verschiedene Lösungsansätze probiert doch es scheint keiner wirklich zu funktionieren :confused2:

    Hat irgendjemand von euch die passende Lösung ? Mache jetzt schon ewig dran rum -.-
    Habe auch schon versucht, die APP zu decompilen und keine Modifikation vor zu nehmen und dann direkt wieder zu compilen, leider auch ohne Erfolg.

    Weiß mir langsam keinen Rat mehr und geb es wohl bald auf wenn ich nicht bald hinter die Lösung komme -.-

    Vielleicht könnt ihr mir ja weiterhelfen :)
    Danke
     
    Zuletzt bearbeitet: 15.04.2012
  2. N2k1, 16.04.2012 #2
    N2k1

    N2k1 Moderator Team-Mitglied

    Beiträge:
    7,903
    Erhaltene Danke:
    1,705
    Registriert seit:
    17.02.2011
    Schau mal ca 1 Zeile oberhalb des kopierten Textes.
    Sicherlich hast Du einen Syntax-Error in der XML-Datei.
    Kopier mal bitte ab der Zeile, wo Du "java -jar apktool.jar b Email" eingegeben hast.
     
  3. kleenaMax, 16.04.2012 #3
    kleenaMax

    kleenaMax Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    01.01.2012
    der spuckt mir nen haufen fehler aus: hier mal der komplette code:
    hab in der XML colors im ordner values jeweils die farbcodes auf ffffffff umgestellt und gespeichert.




     
    Zuletzt bearbeitet: 16.04.2012
  4. kleinerkathe, 16.04.2012 #4
    kleinerkathe

    kleinerkathe Android-Lexikon

    Beiträge:
    1,365
    Erhaltene Danke:
    219
    Registriert seit:
    23.01.2010
  5. kleenaMax, 16.04.2012 #5
    kleenaMax

    kleenaMax Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    01.01.2012
    Und dann ? ich hab ja Probleme beim Compilieren und nicht beim Bearbeiten... Versteh glaub gerade nicht wie sich mein Problem dadurch beseitigen lässt :)
    Kannst mir deine Aussage bisschen genauer erklären ?

    Einzige was ich machen will ist die Email.apk folgendermaßen zu bearbeiten: der Widget soll transparent werden, dass ist auch soweit kein Problem, die einzelnen Bilder zu bearbeiten.
    Jetzt will ich aber noch in der XML Colors.xml im Ordner Values die Schriftfarbe in weiß(ffffffff) ändern, damit ich den Text auch lesen kann...
    Beim Compilieren kommen dann die Fehler
     
  6. maniac103, 16.04.2012 #6
    maniac103

    maniac103 Android-Lexikon

    Beiträge:
    1,237
    Erhaltene Danke:
    1,157
    Registriert seit:
    24.01.2011
    Du brauchst <Android-Sdk>\platform-tools in deinem Datei-Suchpfad. Dann sollte erst auch aapt Funden können.

    Gesendet von meinem MB525 mit Tapatalk 2
     
  7. kleenaMax, 16.04.2012 #7
    kleenaMax

    kleenaMax Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    01.01.2012
    habe ich auch schon versucht, leider ohne erfolg, kommt beim compilieren der gleiche fehler
     
  8. Fr4gg0r, 16.04.2012 #8
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Beiträge:
    2,506
    Erhaltene Danke:
    447
    Registriert seit:
    21.12.2009
    der fehler steht doch da: der findet ids nicht...
     
  9. kleenaMax, 16.04.2012 #9
    kleenaMax

    kleenaMax Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    01.01.2012
    ist ganz egal wo ich die dateien weider compilieren will auch wenn z.B. alles in : "C:\Program Files (x86)\Android\android-sdk\platform-tools" oder sonst wo liegt, bringt er mir genau den gleichen Fehler nur mit eben dem entsprechenden Pfad.
    :thumbdn:
     
  10. Fr4gg0r, 16.04.2012 #10
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Beiträge:
    2,506
    Erhaltene Danke:
    447
    Registriert seit:
    21.12.2009
    .-.
    schau einfach noch ob die erste id über die er meckert in der public.xml und der ids.xml ist im values ordner.
     
  11. kleenaMax, 16.04.2012 #11
    kleenaMax

    kleenaMax Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    01.01.2012

    jopa, gerade überprüft. alle stehen dort drin.
     
  12. N2k1, 16.04.2012 #12
    N2k1

    N2k1 Moderator Team-Mitglied

    Beiträge:
    7,903
    Erhaltene Danke:
    1,705
    Registriert seit:
    17.02.2011
    Decompiliren und sofortiges Compilieren wchlägt bei dieser APK bei mir fehl. Aber es findet sich ein netter lateinischer Text als Test.html, der Absicht sein könnte..

    Gesendet von meinem Galaxy Nexus
     
  13. N2k1, 17.04.2012 #13
    N2k1

    N2k1 Moderator Team-Mitglied

    Beiträge:
    7,903
    Erhaltene Danke:
    1,705
    Registriert seit:
    17.02.2011
  14. MaoHD, 17.04.2012 #14
    MaoHD

    MaoHD Android-Experte

    Beiträge:
    466
    Erhaltene Danke:
    189
    Registriert seit:
    11.10.2011
    Jetzt melde ich mich hier auch mal.
    Habe ein deodexed System laufen und versuche die Rosie.apk zu bearbeiten. Die Classes.dex hab ich aus der APK entfernt und mit baksmali auseinander genommen.

    Das decompilieren klappt problemlos und auch die Modifikationen (.smali, .xml, etc.) gingen gut von der Hand.
    Allerdings wollte ich jetzt die App kompilieren und bekomme wiedermal einen Fehler:

    Code:
    C:\Android>apktool b rosie
    W: Could not find sources
    I: Checking whether resources has changed...
    I: Building resources...
        (skipping index file 'C:\Android\rosie\res\drawable\Thumbs.db')
        (skipping index file 'C:\Android\rosie\res\drawable-hdpi\Thumbs.db')
        (skipping index file 'C:\Android\rosie\res\drawable-land-hdpi\Thumbs.db')
        (skipping index file 'C:\Android\rosie\res\drawable-port-hdpi\Thumbs.db')
    invalid resource directory name: C:\Android\rosie\res/drawable-sw480dp-long-port
    -hdpi
    invalid resource directory name: C:\Android\rosie\res/values-sw320dp-long-port-h
    dpi
    invalid resource directory name: C:\Android\rosie\res/values-sw360dp-long-port-h
    dpi
    invalid resource directory name: C:\Android\rosie\res/values-sw480dp-long-port-h
    dpi
    Exception in thread "main" brut.androlib.AndrolibException: brut.common.BrutExce
    ption: could not exec command: [aapt, p, -F, C:\DOKUME~1\XPMUser\LOKALE~1\Temp\A
    PKTOOL435715783773269962.tmp, -I, C:\Dokumente und Einstellungen\XPMUser\apktool
    \framework\1.apk, -I, C:\Dokumente und Einstellungen\XPMUser\apktool\framework\2
    .apk, -S, C:\Android\rosie\res, -M, C:\Android\rosie\AndroidManifest.xml]
            at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
    a:193)
            at brut.androlib.Androlib.buildResourcesFull(Androlib.java:301)
            at brut.androlib.Androlib.buildResources(Androlib.java:248)
            at brut.androlib.Androlib.build(Androlib.java:171)
            at brut.androlib.Androlib.build(Androlib.java:154)
            at brut.apktool.Main.cmdBuild(Main.java:182)
            at brut.apktool.Main.main(Main.java:67)
    Caused by: brut.common.BrutException: could not exec command: [aapt, p, -F, C:\D
    OKUME~1\XPMUser\LOKALE~1\Temp\APKTOOL435715783773269962.tmp, -I, C:\Dokumente un
    d Einstellungen\XPMUser\apktool\framework\1.apk, -I, C:\Dokumente und Einstellun
    gen\XPMUser\apktool\framework\2.apk, -S, C:\Android\rosie\res, -M, C:\Android\ro
    sie\AndroidManifest.xml]
            at brut.util.OS.exec(OS.java:83)
            at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
    a:191)
            ... 6 more
    Nachdem dekompilieren der Rosie.apk befinden sich in dem Ordner folgende Ordner bzw. Dateien:

    - assets
    - res
    - AndroidManifest.xml
    - apktool.yml

    Wenn ich es mit apktool b rosie.apk versuche bekomme ich diese Meldung:

    Code:
    C:\Android>apktool b rosie.apk
    Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathN
    otExist: apktool.yml
            at brut.androlib.Androlib.readMetaFile(Androlib.java:142)
            at brut.androlib.Androlib.build(Androlib.java:159)
            at brut.androlib.Androlib.build(Androlib.java:154)
            at brut.apktool.Main.cmdBuild(Main.java:182)
            at brut.apktool.Main.main(Main.java:67)
    Caused by: brut.directory.PathNotExist: apktool.yml
            at brut.directory.AbstractDirectory.getFileInput(AbstractDirectory.java:
    103)
            at brut.androlib.Androlib.readMetaFile(Androlib.java:138)
            ... 4 more
    Auch wenn ich die App dekompiliere und dann direkt wieder kompiliere klappt es nicht...
    Warum geht das dekompilieren problemlos aber das kompilieren nicht?
     
  15. maniac103, 17.04.2012 #15
    maniac103

    maniac103 Android-Lexikon

    Beiträge:
    1,237
    Erhaltene Danke:
    1,157
    Registriert seit:
    24.01.2011
    Weil dir -wie dem OP auch und wie oben erwähnt - aapt im exe-Suchpfad fehlt. Wenn du das fixt, wird es funktionieren.

    Gesendet von meinem MB525 mit Tapatalk 2
     
  16. MaoHD, 18.04.2012 #16
    MaoHD

    MaoHD Android-Experte

    Beiträge:
    466
    Erhaltene Danke:
    189
    Registriert seit:
    11.10.2011
    Aktuellste aapt.exe, apktool.bat und apktool.jar liegen under C:\Windows.
    Wenn ich das jetzt richtig verstanden hab muss der Prompt auf C:\Windows aufgemacht werden?!

    Also anstatt:

    Code:
    C:\Android>apktool b rosie.apk
    Dann:

    Code:
    C:\Windows>apktool b C:\Android\rosie.apk
    Wenn ich flasch liege bitte ich um Aufklärung :D
    Oder gibt es bei Sense 3.6 Apk´s noch etwas zu beachten?
     
    Zuletzt bearbeitet: 18.04.2012
  17. he_stheone64, 18.04.2012 #17
    he_stheone64

    he_stheone64 Android-Ikone

    Beiträge:
    6,852
    Erhaltene Danke:
    4,437
    Registriert seit:
    04.02.2010
    Postet Eure Probleme am besten direkt in brut`s apktool Thread bzw. als issue. Bei beiden apk´s (ICS Rosie und ICS email) sind die compile errors bekannt und bereits im issue Tracker aufgenommen. Bei der ICS email kann man das umgehen, indem man direkt von Google oder Cyanogen source arbeitet, bei Sense ICS Rosie wird es schwierig.

    Ist die email aus einer stock ODEXED oder einer DEODEXED ROM? Im zweiten Falle mal versuchen, ob es klappt diese ohne die classes.dex zu dekompilieren und wieder zu kompilieren (ist oft ein funktionierender workaround, sofern nicht in den smalis gearbeitet werden muss).

    Alternativ mal mit dieser inoffiziellen apktool Version versuchen, allerdings wird es ev. bei diesen beiden speziellen Problem Bären trotzdem mühsam bleiben.

    Miscellaneous - Minus
     
  18. Fr4gg0r, 18.04.2012 #18
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Beiträge:
    2,506
    Erhaltene Danke:
    447
    Registriert seit:
    21.12.2009
    für ics rosie hab ich ne geodexte version von nem port genommen, läuft.
     
  19. he_stheone64, 19.04.2012 #19
    he_stheone64

    he_stheone64 Android-Ikone

    Beiträge:
    6,852
    Erhaltene Danke:
    4,437
    Registriert seit:
    04.02.2010
    Pack die aapt.exe in den gleichen Ordner, wie deine apktool.jar, aber bitte nicht in den Windows Ordner (z.B. in C:\apktool). Dann musst Du natürlich apktool im entsprechenden Ordner ansprechen ( C:\apktool>apktool b rosie.apk ) .
     
    Zuletzt bearbeitet: 19.04.2012
  20. cojo, 10.05.2012 #20
    cojo

    cojo Android-Hilfe.de Mitglied

    Beiträge:
    120
    Erhaltene Danke:
    25
    Registriert seit:
    22.09.2011
    hab auch nen problem beim komelieren:-(
    hab mir mal die mms.apk vorgenommen um die hintergrundfarbe zu ändern aber beim kompelieren kommt folgende fehlermeldung,hatte ich noch nie.

    C:\apktool>apktool b -f mms
    I: Smaling...
    I: Building resources...
    C:\apktool\mms\res\values\plurals.xml:9: error: Multiple substitutions specified
    in non-positional format; did you mean to add the formatted="false" attribute?
    C:\apktool\mms\res\values\plurals.xml:9: error: Found tag </item> where </plural
    s> is expected
    C:\apktool\mms\res\values\public.xml:41: error: Public symbol drawable/light_blu
    e_background declared here is not defined.
    Exception in thread "main" brut.androlib.AndrolibException: brut.common.BrutExce
    ption: could not exec command: [aapt, p, -F, C:\DOKUME~1\jos\LOKALE~1\Temp\APKTO
    OL6246489155558833997.tmp, -I, C:\Dokumente und Einstellungen\jos\apktool\framew
    ork\1.apk, -S, C:\apktool\mms\res, -M, C:\apktool\mms\AndroidManifest.xml]
    at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
    a:193)
    at brut.androlib.Androlib.buildResourcesFull(Androlib.java:301)
    at brut.androlib.Androlib.buildResources(Androlib.java:248)
    at brut.androlib.Androlib.build(Androlib.java:171)
    at brut.androlib.Androlib.build(Androlib.java:154)
    at brut.apktool.Main.cmdBuild(Main.java:182)
    at brut.apktool.Main.main(Main.java:67)
    Caused by: brut.common.BrutException: could not exec command: [aapt, p, -F, C:\D
    OKUME~1\jos\LOKALE~1\Temp\APKTOOL6246489155558833997.tmp, -I, C:\Dokumente und E
    instellungen\jos\apktool\framework\1.apk, -S, C:\apktool\mms\res, -M, C:\apktool
    \mms\AndroidManifest.xml]
    at brut.util.OS.exec(OS.java:83)
    at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
    a:191)
    ... 6 more

    C:\apktool>


    hoffe mir kann jemand helfen
     

Diese Seite empfehlen