1. Wartungsarbeiten: Aufgrund von Wartungsarbeiten wird Android-Hilfe.de morgen (26. Juli 2016) gegen 9 Uhr für ca. 15 Minuten nicht erreichbar sein. Anschließend lässt sich unserer Seite wieder wie gewohnt besuchen. Wir danken für euer Verständnis.
    Information ausblenden
  2. Nimm jetzt an unserem Bluboo Maya und X9 - Gewinnspiel teil - Alle Informationen findest Du hier!
    Information ausblenden

Tiefen Wissen für Themen/Modding gesucht!

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

  1. Hallo an euch,

    Nachdem wir ja nun alle schoen brav Bilder etc in den .apk tauschen koennen, und wir auch die services.jar auseinandergenommen haben, dachte ich mir mal, weiter gehts. Momentan arbeite ich daran das alles zu verstehen. Ich habe mir mal mit smali und baksmali die classes.dex der MotoCAL.apk herausgenommen und die uncompiled.
    Habe nun alles fein in ordnern, und suche nun nach den Farbdefinitionen.

    Gefunden habe ich auch was - naemlich die R$color.smali, und folgende Werte

    .field public static final appwidget_conflict:I = 0x7f070023
    .field public static final appwidget_date:I = 0x7f07001f
    .field public static final appwidget_date_shadow:I = 0x7f07001e
    .field public static final appwidget_no_events:I = 0x7f070024
    .field public static final appwidget_title:I = 0x7f070021
    .field public static final appwidget_when:I = 0x7f070020
    .field public static final appwidget_where:I = 0x7f070022

    dachte schon, cool, einfach nur die sachen in HEX und schon stimmt es wieder - aber pustekuchen. Fuer mich sieht das eher so aus, als wenn manche "events" eine ID bekommen und dann spaeter (irgendwo anders in xml) die farben bekommen.

    Also - ich brauche hilfe!!!! Und ich denke, wenn wir/ich DAS verstanden haben, so koennen wir alle apk decompilen und recompilen nach der anpassung :) Wir fangen mit TEXT an, und bald machen wir auch events anders :) (Thema services.jar - deep sleep aufwecken) :)
     

    Anhänge:

  2. #2 kniffo80, 13.04.2010
    Das sind Konstanten, die da definiert werden, aber wofür die nun stehen, dafür bräuchte man mehr als nur eben diese Konstanten.

    Beim decompilieren ... werden daraus wieder JAVA files?
     
  3. dass werden .smali files (die ich dann in einem text editor ansehen kann)
     
  4. #4 martin@droid, 13.04.2010
    Versuch auch schon einige Tage mich da reinzulesen. Das dekomplieren und kompilieren klappt ja super easy mit smali und baksmali. hatte eigentlich vor im CarDock die Verknüpfung zum Homescreen zu fixen (funktioniert nur mit originalem launcher).
     
  5. na also, sind ja schon einige :):)

    habe gerade versucht, ueber "hexdump" mir die classes.dex aus dem calvik cache zu ziehen (und zu recompilen) aber ich bekomme eine "dexdump: not found" meldung trotz SU
     
  6. #7 IrealiTY, 13.04.2010
    Zuletzt bearbeitet: 13.04.2010
    Ich saß auch schon an dem Teil,
    also das Widget XML scheint das hier zu sein: agenda_appwidget.xml
    Code:
      <RelativeLayout xmlns:android="[B][URL]http://schemas.android.com/apk/res/android[/URL][/B]" android:id="[B]@7F0E0001[/B]"  android:background="[B]@7F020005[/B]" android:focusable="[B]true[/B]"  android:clickable="[B]true[/B]" android:layout_width="[B]-1[/B]"  android:layout_height="[B]-2[/B]">
         <ImageView android:id="[B]@7F0E0002[/B]" android:background="[B]@7F020009[/B]"  android:visibility="[B]2[/B]" android:layout_width="[B]-1[/B]"  android:layout_height="[B]-2[/B]" android:layout_alignParentLeft="[B]true[/B]"  android:layout_alignParentTop="[B]true[/B]" /> 
    
        <TextView android:textSize="[B]14.0sp[/B]" android:textStyle="[B]0x00000001[/B]"  android:textColor="[B]@7F070024[/B]" android:gravity="[B]0x00000011[/B]"  android:id="[B]@7F0E0003[/B]" android:padding="[B]10.0dip[/B]"  android:layout_width="[B]-1[/B]" android:layout_height="[B]-1[/B]"  android:text="[B]@7F090088[/B]" /> 
    
        <TextView android:textSize="[B]30.0sp[/B]" android:textStyle="[B]0x00000001[/B]"  android:textColor="[B]@7F07001F[/B]" android:id="[B]@7F0E0004[/B]"  android:visibility="[B]2[/B]" android:layout_width="[B]-2[/B]"  android:layout_height="[B]-2[/B]" android:layout_marginTop="[B]8.0dip[/B]"  android:layout_marginRight="[B]10.0dip[/B]" android:singleLine="[B]true[/B]"  android:layout_alignParentTop="[B]true[/B]" android:layout_alignParentRight="[B]true[/B]" />  
    
        <TextView android:textSize="[B]17.0sp[/B]" android:textStyle="[B]0x00000001[/B]"  android:textColor="[B]@7F07001F[/B]" android:id="[B]@7F0E0005[/B]"  android:visibility="[B]2[/B]" android:layout_width="[B]-2[/B]"  android:layout_height="[B]-2[/B]" android:layout_marginLeft="[B]10.0dip[/B]"  android:singleLine="[B]true[/B]" android:layout_toLeftOf="[B]@7F0E0004[/B]"  android:layout_alignBaseline="[B]@7F0E0004[/B]" android:layout_alignBottom="[B]@7F0E0004[/B]"  android:layout_alignParentLeft="[B]true[/B]" /> 
    
        <TextView android:textSize="[B]14.0sp[/B]" android:textStyle="[B]0x00000001[/B]"  android:textColor="[B]@7F070020[/B]" android:id="[B]@7F0E0006[/B]"  android:visibility="[B]2[/B]" android:layout_width="[B]-2[/B]"  android:layout_height="[B]-2[/B]" android:layout_marginLeft="[B]10.0dip[/B]"  android:layout_marginTop="[B]6.0dip[/B]" android:layout_marginRight="[B]10.0dip[/B]"  android:singleLine="[B]true[/B]" android:layout_below="[B]@7F0E0002[/B]"  /> 
    
        <TextView android:textSize="[B]11.0sp[/B]" android:textColor="[B]@7F070022[/B]"  android:id="[B]@7F0E0007[/B]" android:paddingBottom="[B]6.0dip[/B]"  android:visibility="[B]2[/B]" android:layout_width="[B]-1[/B]"  android:layout_height="[B]-2[/B]" android:layout_marginLeft="[B]10.0dip[/B]"  android:layout_marginRight="[B]10.0dip[/B]" android:singleLine="[B]true[/B]"  android:layout_alignParentBottom="[B]true[/B]" /> 
    
        <TextView android:textSize="[B]11.0sp[/B]" android:textColor="[B]@7F070023[/B]"  android:gravity="[B]0x00000005[/B]" android:id="[B]@7F0E0008[/B]"  android:visibility="[B]2[/B]" android:layout_width="[B]-2[/B]"  android:layout_height="[B]-2[/B]" android:layout_marginLeft="[B]10.0dip[/B]"  android:layout_marginTop="[B]5.0dip[/B]" android:layout_marginRight="[B]10.0dip[/B]"  android:singleLine="[B]true[/B]" android:layout_toRightOf="[B]@7F0E0006[/B]"  android:layout_below="[B]@7F0E0002[/B]" android:layout_alignParentRight="[B]true[/B]" />  
    
        <TextView android:textSize="[B]14.0sp[/B]" android:textStyle="[B]0x00000001[/B]"  android:textColor="[B]@7F070021[/B]" android:id="[B]@7F0E0009[/B]"  android:visibility="[B]2[/B]" android:layout_width="[B]-1[/B]"  android:layout_height="[B]-2[/B]" android:layout_marginLeft="[B]10.0dip[/B]"  android:layout_marginTop="[B]3.0dip[/B]" android:layout_marginRight="[B]10.0dip[/B]"  android:singleLine="[B]true[/B]" android:layout_above="[B]@7F0E0007[/B]"  android:layout_below="[B]@7F0E0006[/B]"  android:layout_alignWithParentIfMissing="[B]true[/B]" />  
    
       </RelativeLayout>
    
     
  7. Das dachte ich mir schon aber wie decode ich die xml Datei?
     
  8. #9 martin@droid, 13.04.2010
  9. #10 IrealiTY, 13.04.2010
    ich hab aber in der xml keinen schwarzen hexcode gefunden :/
    (nicht wundern die 8 Zeichen, die ersten 2 sind für die Deckkraft)
     
  10. Ps Martin ich versuche auch die SchriftFarbe bei den htcime skins zu ändern :) also schauen wir mal :)
     
  11. #12 martin@droid, 14.04.2010
    Zuletzt bearbeitet: 14.04.2010
    Also ich denke Schriftfarben sind so gut wie immer in der classes.dex und dort dekompliert in irgendwelchen smali files hinterlegt.
    So ist es in der services.jar mit der uhrzeit & datum und auch bei der HTC Tastatur zum beispiel.

    Beispiel für die Uhrzeit:
    StatusBarIcon.smali aus classout/com/android/server/status dekompiliert aus classes.dex aus der services.jar

    unter 'line 46' steht z.b. const/high16 v6, -0x100
    das gibt die farbe der uhrzeit in der notification bar an

    Rot müsste das hier sein: const/high16 v6, -0x1
     
  12. #13 Compufreak, 16.04.2010
    Sorry wenn ich mich etwas kurz fasse, verwirrt rede oder Senf dazugebe der nicht passt, aber bin gerade müde und sollte langsam schlafen gehen ^^

    Die Werte im xml-file bei jeweils der "textColor" sehen für mich aus wie Zeiger auf Variablen/Konstanten (deswegen steht da auch kein z.B. konkretes Schwarz) - wenn man dort einfach das "@" wegnimmt und einen Farbwert eingibt (siehe Android-Programmierung) - sollte es doch klappen... Insofern man natürlich das xml-file irgendwie wieder da rein kriegt ;)

    Ist dann natürlich nicht mehr sonderlich sauber im programmiertechnischen Sinne, direkt im Layout die Farben anzugeben statt in Konfigurationswerten...
     

Diese Seite empfehlen