[HELP] [THEME] Need help with services.jar

Search This thread

FormelLMS

Retired Recognized Developer
Oct 28, 2009
2,647
376
Hi,
for cyanogen5Beta4 I have a services.jar with white text at notification bar.
Now I have the new MoDaCo release and there is the text black.

I want white text.

this text is in the services.jar

Could anybody help me and explain, how to configure this services.jar to get white text instead of black text.

Thank you!
 

Know-Fear

Senior Member
Jan 9, 2010
552
103
You need to run the colorchanger on it. Every rom is different pretty much. You need to do that every time you change the colors of the text.
 

david1171

Senior Member
Apr 29, 2009
3,202
166
This is how enomther (so all credit goes to him) explained to me on how to change it.

You can get smali/baksmali here.

I use PSPad to edit the files in windows. I right click and select open with PSPad.

Once you crack open services.jar/classes.dex with baksmali ....there are (2) files of concern, the first is com/android/server/status/StatusBarIcon.smali ... locate this file and open it up and search for ...

Code:
invoke-virtual {v4, v6}, Landroid/widget/TextView;->setTextColor(I)V

Above that line (2 lines up) ... you'll see ...

Code:
const/high16 v6, -0x100

That's black .. change to ...

Code:
const v6, -0x1

That's white ... this is a simply color change and easier since invoke-virtual is going to give us color out right ... we just have to change the color.

Then locate file ... com/android/server/status/com/android/server/status/StatusBarService.smali

There are (3) lines you need to search for here ... now they don't have inherent color change properties anymore ... which is why colorChange.jar is jacked up for you.

The threes lines to search for (and yes they are each in different places of the file) ... are ...

Code:
iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mDateView:Lcom/android/server/status/DateView;

iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mSpnLabel:Landroid/widget/TextView

iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mPlmnLabel:Landroid/widget/TextView;

Again, since these are iput-object calls ... there's no inherent color changing properties ....

You must add the (2) color change lines above each of these lines ... the first lines set a variable for the color value (which in the example) ... the second line forces the text to that color with a call to setTextColor(). So when you're done ... those three lines will be 9 lines (3 lines in 3 seperate places in the file) ... as such ...

Code:
    const v8, -0x1

    invoke-virtual {v7, v8}, Landroid/widget/TextView;->setTextColor(I)V

    iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mDateView:Lcom/android/server/status/DateView;

Code:
    const v8, -0x1

    invoke-virtual {v7, v8}, Landroid/widget/TextView;->setTextColor(I)V

    iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mSpnLabel:Landroid/widget/TextView;

Code:
    const v8, -0x1

    invoke-virtual {v7, v8}, Landroid/widget/TextView;->setTextColor(I)V

    iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mPlmnLabel:Landroid/widget/TextView;

See how we're now setting a color variable and calling invoke-virtual prior to iput-object? ... that's the magic. ;)

Save all that up and then run smali ... reinsert your classes.dex ... and you should be all set.

~enom~
 
  • Like
Reactions: ssojyeti2

FormelLMS

Retired Recognized Developer
Oct 28, 2009
2,647
376
Oh holy....

Wow, okay. Thank you both for reply.
Now I've been looking for an english teacher who can help me....

OK, it looks awesome. I wanna look to do what I can!

Thank you again!
 

FormelLMS

Retired Recognized Developer
Oct 28, 2009
2,647
376
Hah, I can't get it.
I've downloaded this three programms, but nothing works really.
Baksmali.jar doesn't start.

I've got an windows machine....
 

FormelLMS

Retired Recognized Developer
Oct 28, 2009
2,647
376
OK, some things I did now.
Thanks for your help.
But the clock on the upper right corner is black anymore.

If somebody could give me a tipp please.

I now have checked it twice, but can't find my failure.


The other things are quite white. They work, only the clock...
 

Know-Fear

Senior Member
Jan 9, 2010
552
103
This is how enomther (so all credit goes to him) explained to me on how to change it.

You can get smali/baksmali here.

I use PSPad to edit the files in windows. I right click and select open with PSPad.

Isn't that what the colorchanger does automatically? Not arguing or anything, but holy **** that looks complicated! I just use the colorchanger on my morphs...
 

Know-Fear

Senior Member
Jan 9, 2010
552
103
Colorchanger?
You make me smile... Any Link to this?

File available here

Rename the file to just colorchangev3.jar (or something shorter if you prefer. I use cc3.jar personally)

You will need the java jdk set up on your computer. I made a pretty in-depth thread on this subject over on AOD

If you have any questions on it, hit me up. Preferably over there since I check it more often than here.
 

FormelLMS

Retired Recognized Developer
Oct 28, 2009
2,647
376
Thank you for your reply. I'm coming over to you. Now, I've take my first look.
 

junkdruggler

Senior Member
Jun 27, 2009
1,073
10
Georgia
im trying to do this on a galaxy s... is there something I am doing wrong... I did the first change... changing anything with the other three lines throws a forceclose loop upon reboot
any thoughts?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    This is how enomther (so all credit goes to him) explained to me on how to change it.

    You can get smali/baksmali here.

    I use PSPad to edit the files in windows. I right click and select open with PSPad.

    Once you crack open services.jar/classes.dex with baksmali ....there are (2) files of concern, the first is com/android/server/status/StatusBarIcon.smali ... locate this file and open it up and search for ...

    Code:
    invoke-virtual {v4, v6}, Landroid/widget/TextView;->setTextColor(I)V

    Above that line (2 lines up) ... you'll see ...

    Code:
    const/high16 v6, -0x100

    That's black .. change to ...

    Code:
    const v6, -0x1

    That's white ... this is a simply color change and easier since invoke-virtual is going to give us color out right ... we just have to change the color.

    Then locate file ... com/android/server/status/com/android/server/status/StatusBarService.smali

    There are (3) lines you need to search for here ... now they don't have inherent color change properties anymore ... which is why colorChange.jar is jacked up for you.

    The threes lines to search for (and yes they are each in different places of the file) ... are ...

    Code:
    iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mDateView:Lcom/android/server/status/DateView;
    
    iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mSpnLabel:Landroid/widget/TextView
    
    iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mPlmnLabel:Landroid/widget/TextView;

    Again, since these are iput-object calls ... there's no inherent color changing properties ....

    You must add the (2) color change lines above each of these lines ... the first lines set a variable for the color value (which in the example) ... the second line forces the text to that color with a call to setTextColor(). So when you're done ... those three lines will be 9 lines (3 lines in 3 seperate places in the file) ... as such ...

    Code:
        const v8, -0x1
    
        invoke-virtual {v7, v8}, Landroid/widget/TextView;->setTextColor(I)V
    
        iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mDateView:Lcom/android/server/status/DateView;

    Code:
        const v8, -0x1
    
        invoke-virtual {v7, v8}, Landroid/widget/TextView;->setTextColor(I)V
    
        iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mSpnLabel:Landroid/widget/TextView;

    Code:
        const v8, -0x1
    
        invoke-virtual {v7, v8}, Landroid/widget/TextView;->setTextColor(I)V
    
        iput-object v7, p0, Lcom/android/server/status/StatusBarService;->mPlmnLabel:Landroid/widget/TextView;

    See how we're now setting a color variable and calling invoke-virtual prior to iput-object? ... that's the magic. ;)

    Save all that up and then run smali ... reinsert your classes.dex ... and you should be all set.

    ~enom~