Tiefen Wissen für Themen/Modding gesucht!

T

Thyrus

Gast
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

  • MotoCAL.apk
    2,2 MB · Aufrufe: 138
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?
 
dass werden .smali files (die ich dann in einem text editor ansehen kann)
 
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).
 
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
 
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>
 
Zuletzt bearbeitet:
Das dachte ich mir schon aber wie decode ich die xml Datei?
 
ich hab aber in der xml keinen schwarzen hexcode gefunden :/
(nicht wundern die 8 Zeichen, die ersten 2 sind für die Deckkraft)
 
Ps Martin ich versuche auch die SchriftFarbe bei den htcime skins zu ändern :) also schauen wir mal :)
 
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
 
Zuletzt bearbeitet:
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...
 

Ähnliche Themen

Thoxx
  • Thoxx
Antworten
4
Aufrufe
4.225
Thoxx
Thoxx
R
Antworten
2
Aufrufe
2.032
Ronald W
R
D
Antworten
3
Aufrufe
1.388
BelleÉpoque
BelleÉpoque
Zurück
Oben Unten