yashsingh1/xdaforums huggingface dataset:
[EVO 4G Themes and Apps] SteelH:
The first one is headphones only, the second is for headphones+mic (not bluetooth, those have their own icons). Basically it's a wired headset with a mic.
[EVO 4G Themes and Apps] JsChiSurf:
Yes, that's what I was thinking. The small problem is I don't have a headphone with mic, so there is no way to test. No big deal.

Sent from my HTC Evo
[EVO 4G Themes and Apps] JsChiSurf:
Okay, this is a SUPER simple one. Wish they were all this easy. To prevent the headset icons from displaying, after decompiling services.jar, locate:

\com\android\server\status\StatusBarPolicy.smali

Search for the method:

.method protected updateHeadsetStatus(Landroid/content/Intent;)V

Just below this method you will see:

const/4 v10, 0x1

Change to:

const/4 v10, 0x0

Recompile, push / flash the newly compiled services.jar file to your phone, enjoy headset icon-less status bar, if you are so inclined.
[EVO 4G Themes and Apps] brandontowey:
You are the ****. I was looking for the way to 86 the headset icon. I figure I know when one's plugged in, no need to have the icon. When I get home, I'll implement the edit and post back.
[EVO 4G Themes and Apps] brandontowey:
Yea, I definitely enjoy tracking down a problem and fixings it. It scratches the OCD itch.
[EVO 4G Themes and Apps] SteelH:
Very nice work my friend, I'll add/update the OP for this!
[EVO 4G Themes and Apps] JsChiSurf:
Don't know if you want to, but a few posts up, there's another set of instructions for removing the USB Debugging icon, that if you want, may be good to add to the OP as well.

And, while I posted a flashable zip for hiding the reticle ONLY when GPS is off, I've yet to get around to posting instructions for this one, as it is a little more involved. If you think there is value / interests, I can do so though...
[EVO 4G Themes and Apps] SteelH:
Added them both to OP for easier finding. Now I want to find the 5 wide app drawer mod in Rosie.apk........Myn and Virus have it in their roms.
[EVO 4G Themes and Apps] JsChiSurf:
Thanks for that. In terms of the 5 wide, that's easy peasy :). Was that a subtle request for help? I'm not a fan of it personally, so I tend to only do mods I'm likely to use...
[EVO 4G Themes and Apps] brandontowey:
Removing the headset icon went great. Make sure to wipe dalvik/cache first, I forgot and it was giving me the force close again, had to restore then flash the .zip, which I inserted the services.jar I edited into..

As for the instructions for GPS On only, could you post them? Probably gonna switch from VaelPak 2.2 at some point(I like it, but he'll probably put out 2.3 soon or I might find something better) and I'd like to be able to duplicate that effect. Thanks again.
[EVO 4G Themes and Apps] egotek:
wow! can't believe all that just worked! removed usb debugging, clock and GPS. Thank you to all the thread contributors!
[EVO 4G Themes and Apps] JsChiSurf:
Forgot about this from yesterday. I know it's off topic, but if, for God knows why (:D), you want a 5 icon wide app drawer, drop the attached XML file (remove the .txt extension), into the '\res\layout' folder of your Rosie.apk.
[EVO 4G Themes and Apps] SteelH:
Thanks I'll give it a test run. Not sure if 5 wide makes icons too small for my liking, but now I can try it out.

Also, I'd bet others would like this MOD, so even if I end up not liking it people will benefit!!
[EVO 4G Themes and Apps] xak944:
I've got a new one: Remove carrier bar from notification pulldown. (I'm talking about when you pull down the notification bar, on the left is your carrier and on the right is the 'Clear' button.)

CyanogenMod ROM has an option to remove the carrier string from the notification bar, but it still leaves a large gap that could be real estate for notifications. It's not that bad in portrait mode, but in landscape, it's about 1/3 the size of the area for notifications. So, anyone feel like taking a look to see if it can be removed? ;)
[EVO 4G Themes and Apps] JsChiSurf:
I think it's a moot point. While you can already remove the carrier text on either CM or Sense ROMs w/ options out there, you can't (shouldn't) remove the 'clear' button, which takes up the same amount of vertical space, regardless of the presence of the carrier text or not.
[EVO 4G Themes and Apps] xak944:
Personally, I'd give up the 'Clear' button for more space for notifications (you can dismiss notifications individually). On that same note, I wouldn't remove my clock or battery, but mods exist for those so that people have options. And options are good!

I was just suggesting that this might be an easy mod to figure out by those with the know-how, and some people might find it useful.
[EVO 4G Themes and Apps] JsChiSurf:
Wasn't trying to dismiss your idea, just wanted to be sure you thought about the fact that you would likely be removing the clear button as well, since, when there is nothing to clear, it's not an issue, since it's not present.

It is an easy mod to make happen, and I'm just one person, but I'm thinking demand would be pretty low...
[EVO 4G Themes and Apps] snovvman:
Very useful thread. Thank you for sharing, SteelH, xak944, ydnandy, and others.

Going to give this a try this weekend.

It would be great if someone can find a way to get the data connection to properly display 3G/EVDO vs. 1xRTT. (I know it is not the scope of this thread).

Cheers.
[EVO 4G Themes and Apps] xak944:
Indeed, I hadn't considered losing the 'Clear' button as thoroughly as I should have prior to reading your post. However, after thinking about it, I believe I could live without it. :)
[EVO 4G Themes and Apps] JsChiSurf:
Here's a proof of concept. I played with moving the 'clear' button to the bottom, in order to keep it present, but the space is always going to be there for the button (at least if doing simple XML edits, as opposed to smali hacking), even when the button is not displayed, which I think defeats the purpose you were looking for, i.e. to obtain more space for notifications, etc.

So, the screen capture below is an example of removing the 'clear' button all together, meaning to dismiss 'Notifications' you'd have to actually visit the specific notification to clear out the ultimate reason for its presence, i.e. delete / read the text message, email, etc.

Bottom line, there's a bunch of stuff you could do, based on personal preference. And, such edits are going to be ROM specific, especially Sense vs. CM.
[EVO 4G Themes and Apps] snovvman:
Feeling a bit dumb, and asking for help:

The services.jar file I pulled from the phone is 345 bytes. I confirmed the file size using Root Explorer on my phone.

When I open it with WinRAR (or the native Windows .zip extractor), all I see is a directory named META-INF. Under it it, a single file MANIFEST.MF, 71 bytes. Nothing else.

What am I doing wrong?

Thanks.
[EVO 4G Themes and Apps] JsChiSurf:
Sounds like you're running a stock, non-deodexed ROM, which means you are unable to utilize these mods.
[EVO 4G Themes and Apps] snovvman:
Oh..., and duh. Indeed I'm running the stock non-deodexed ROM. I just went and read about deodexing. Thanks you.
[EVO 4G Themes and Apps] nukedukem:
Has anyone else lost the sync icon after removing the GPS in the lastest services.jar from 3.30.651.2?
[EVO 4G Themes and Apps] xak944:
Great, I'd love to give it a shot. Would you mind sharing the XML edits you did to accomplish this? Thanks!
[EVO 4G Themes and Apps] pendo:
knock, knock...

Hi guys, hope you don't mind an N1 user popping in for a question.:)

I don't know if you could offer any help or not for what I'm trying to do. This thread consistently came up in my various searches and you're definitely making edits in the same area I'm trying to. I just checked, and it looks like miui has landed here, too so maybe you're familiar. I'm trying to hide % textView overlay for the battery. Just the text output, not the battery icon.

I'm not learned in smali (or java for that matter) so I'm starting off severely handicapped as it is...but I've been reading/searching, and I *think* this is the area where I need to edit. I'm not entirely sure, though, as their battery implementation is quite different. My thinking is to make the text transparent, that way I keep the slot it occupies as it. Do you think that's a valid approach?

As expected, the edit in the op works fine for hiding the battery, but as you know, I lose the slot. One thing I did notice was while the setIconVisibility edit hid the battery entirely, if you go into settings and switch battery types, it no longer has any effect and all battery versions return.

If you have some hints or other help, it's much appreciated. If not, that's OK and I understand. Don't know if it helps, but I've attached the StatusBarPolicy, and IconData files.

Thanks in advance.
[EVO 4G Themes and Apps] JsChiSurf:
The problem with providing any insight is that these types of edits are ROM / framework specific. For example, the stock EVO Sense ROM, that the majority of these mods are provided for doesn't include a % battery text overlay.

But, more importantly, to track down and try to apply a mod that does what you want, the attached files won't provide value outside of the context of the framework files they reference, in order to try and trace through and find the location that you are looking to impact / affect.

Also, depending on the ROM / implementation, sometimes this is pulled off in the XML, others via the Java code, it just depends. The super circle battery mod is a perfect example, where I've seen it done both ways, though when done via XML, the % is part of the graphic / image, rather than actual text.
[EVO 4G Themes and Apps] pendo:
Correct, I understood there was no text overlay in those. And I have checked the xml's it's not there. The charging animation is froyo style, but that's it. There are only 2 battery png's and their associated xml control file calls one at max level 4% and the the other image the rest of the time. It's just a hollow outline of a battery. The images is either filled with a solid rectangle of varying size or if the % display is selected, then it shows a textView. I even dug around in Settings.apk since that's where the option is to change it. But as I said, I'm inept with smali. And I understand that you really need more than those 2 files...to be thorough, you need more than services.jar. I was simply hoping that something would stand out to your trained eye, or by long shot you were familiar with the framework.

After much trial and error, as well as reading through this entire thread I thought it was worth a shot to ask, as you all definitely understand smali better than I. And although you're specific edits weren't what I was looking for, they are close....I keep wanting to think that if I can identify where in the code the text is called, then I was hoping that I could add an additional line defining it's color or transparency. That way, it's "still there" but not seen.

This is for super circle, as I'm sure you can guess. Presently, the only way I've been able to provide them (I worked with UOT to implement this edit as well) is to do some trickery with the actual png....erase the percent numbers and move the image within and tweak the canvas size. But it's not as nice of a solution as we're used to.

Thanks for the response, though. :)
[EVO 4G Themes and Apps] JsChiSurf:
You're definitely along the correct path with the StatusBarPolicy/IconData files. Personally, I'd focus on trying to find the location where the text prints and rather than making the text transparent (certainly feasible as well), simply breaking the call to write the text in the first place, though there is more than one way to skin a cat...

Again, w/o context, meaning, for example, me downloading the full ROM, decompiling to follow the path, and testing through trial and error (by loading the specific ROM), it's just difficult to pull off, unfortunately.

EDIT: Also, FYI, you've attached StatusBarService in your zip, rather than Policy, which is likely the right file to "attack" / investigate further...
[EVO 4G Themes and Apps] pendo:
Oops, sorry about that. Yeah, that file has some tracks in it, too. I just thought I was seeing more reference of the text view in policy...which refers to IconData. The thinking with making it transparent was so that I didn't lose the slot, and that it would be likely less susceptible to cause other anomalies rather than editing it out.

Heres a different question then. I'm totally new to all of this, and pretty much green all around. (Well, I could perform the occasional red-eye edit before..) I've been soaking as much as I can in via self study, and that's worked well....except for smali. I understand it's similar in syntax to java....do you have a good recommendation as far as a crash course to start picking up on this? I have no problem chasing down all the little branches when looking at this code....I just don't know what it's saying.
[EVO 4G Themes and Apps] SteelH:
JsChiSurf: I have found another challenge for you...

In a different thread, a user asked how and/or could be disabled. I figured I'd ask in this thread since it seems the most appropriate place. Also, if you ever get around to posting instructions for the gps off off but gps on on (great choice of words eh?) that would be great also.

Thanks
[EVO 4G Themes and Apps] JsChiSurf:
Thought you said you had a challenge :D.

Another relatively easy one. Funny thing is, I tried a bit more eloquent of a method (less brute force), and ended up removing EVERY status bar icon on the right hand side. So, if anyone wants everything removed, lol, let me know. I'm still not sure how/why that happened...

When HTC gives us nice methods for controlling various status bar updates, it makes these kinds of mods pretty straight forward, so, to remove the mute/vibrate status icon, open:

'com\android\server\status\StatusBarPolicy.smali'

Search for the method:

.method private final updateVolume()V

And short circuit the method by adding:

return-void

Just below .locals 8, resulting in:

.method private final updateVolume()V
.locals 8

return-void
.prologue
const/4 v6, 0x1
...
...

That's it. Easy Peasy :).
[EVO 4G Themes and Apps] SteelH:
JsChiSurf, nice work as always, I've added your latest tricks to the OP so it's easy for people to find them.
[EVO 4G Themes and Apps] JsChiSurf:
Cool. I see the thread title received an update as well. Makes sense as it continues to expand.
[EVO 4G Themes and Apps] SteelH:
Yeah, since we've seemed to eliminate almost every damn icon for people. LOL. :D
[EVO 4G Themes and Apps] gadgetluva:
Exactly what I was looking for, thanks!
[EVO 4G Themes and Apps] Spacen:
Thank you both for this great thread. It is afforded me the opportunity to learn smali/baksmali. I have removed my gps icons and the silent/vibrate icons. It also took me some trial and error (and additional reading) to discover that copying the services.jar file via root explorer is not the same as pushing it with adb. I was encountering some force close errors with the copy method.

I do have a new request/challenge that I have not been able to find the solution for in the forums. I would like to remove my bluetooth icon but only when it is not connected to a device. The fact that it shows an icon when the service is on is a waste of space and does me no good. However, it is useful for me to know at a glance when a device is connected.

I've been playing around trying to figure it out on my own but, as expected, I'm not quite that smart. I think it might be located somewhere in the StatusBarPolicy.smali file.
[EVO 4G Themes and Apps] PC-48:
Hi, I was wondering if you could tell me exactly what codes you changed in the HtcCdmaStatusBar.smali to let you have the GPS off icon gone but have the GPS on icon show up when GPS is being used. I wanted to do everything manually because when I flash services_reticle_off.zip file (which works like it should) it brings back some status bar icons that I went through the trouble of removing myself.
[EVO 4G Themes and Apps] JsChiSurf:
While I've been 100% focused on some other mods that are taking precedence for me right now, if you already self-modded to remove the other stuff, why not just decompile this one (the reticle zip) and redo those in the meantime?
[EVO 4G Themes and Apps] PC-48:
Wow that's an excellent idea, I don't know why I didn't think of that in the first place, Thank You.

EDIT: Well now I'm trying to follow step 3. Remove the USB Debugging icon:

So I unzipped services_reticle_off.zip and then opened services.jar and extracted classes.dex from it. I then decompiled classes.dex and navigated to com\android\server\NotificationManagerService.smali and opened it with Notepad. The code that that step tells you to find (iput v7, v6, Landroid/app/Notification;->icon:I) I can't find anywhere in that file... So I'm just confused if I missed something completely or what...

Anyone know where I can get help with this?
[EVO 4G Themes and Apps] MadDogMaddux:
OK, so I went to remove clock, alarm, and battery icons from myn's Warm TwoPointTwo RLS4beta. Used AvaBox's inherent smali/baksmali to decompile, edited services.jar as indicated in the relative posts in the first page, recompiled everything, reinserted into the .zip via 7zip, deposited on my SDcard, nand, wipe cache/davlik, and then flashed the modded .zip.

Results? Stuck in the boot splash screen. Hand to pull battery and nand. :(

Anyone care to look at my services.jar and tell me what I did wrong?
[EVO 4G Themes and Apps] SteelH:
Why bother making a zip, you can just adb push it in recovery mode.
[EVO 4G Themes and Apps] MadDogMaddux:
Uh, cuz I know nothing about ADB. :P

Besides, I'd like to mot have to push it everytime I reflash.
[EVO 4G Themes and Apps] Nefariouss:
Error help

Can anyone help me out with this error? Able to make the edits I want but when I try and recompile the classes.dex file I get hung up. Pretty green on this stuff and I've read the threads and did some searching but think I'm at my wits end. Thanks for any help.
[EVO 4G Themes and Apps] SteelH:
Send me your services jar, tell me what you want modded, and I'll try to make one for you if you want.
[EVO 4G Themes and Apps] jkinnison90:
Is there a way to change the signal bars to 4 bars like the GSM versions normally use instead of the 6 bars for the Evo?
[EVO 4G Themes and Apps] JsChiSurf:
You can do that by simply swapping out the images for one another, no programmatical edits required (of course, you'd map the same image twice for two levels to go from 6 to 4).
[EVO 4G Themes and Apps] lllboredlll:
do you know the .line # and code changed needing to be made in the services.jar for cdma?
[EVO 4G Themes and Apps] lllboredlll:
are you running the cmd prompt in admin mode?
[EVO 4G Themes and Apps] Nefariouss:
Pretty sure I was, I've since just removed the theme that had the debugging icon. I'll try again and double check your suggestion as I would like to be able to do minor tweaks like this on my own.
[EVO 4G Themes and Apps] SteelH:
You don't need to edit services.jar for that, just swap out the PNGs like JsChiSurf mentioned.
[EVO 4G Themes and Apps] jkinnison90:
I know I'm bumping this, but do you know how to remove the am and pm from the notifications bar?
[EVO 4G Themes and Apps] fixxxer2008:
+1

id like to know as well.
[EVO 4G Themes and Apps] satur9ine:
Still would love instructions on how to mod code to have GPS reticule on when GPS is enabled and completely gone when GPS is disabled. Can anyone post this? Great post btw!!
[EVO 4G Themes and Apps] dantichrist:
Thank for your guide! It got me on the right track for a mod for the epic.

The HTC framework makes it different for the clock. I haven't tried the others though.
[EVO 4G Themes and Apps] Mich2Ga:
Great Tut.....
[EVO 4G Themes and Apps] xak944:
CyanogenMod has an option for this in CM Settings > User interface > Status Bar. Otherwise, I think the only way is to use the 24-hour (military) clock type.
[EVO 4G Themes and Apps] dlbaker1179:
is there a flashable zip for the newest ota im a newbie to this stuff...lol

\thanks
[EVO 4G Themes and Apps] thegregbradley:
Probably an obvious question with an obvious answer (sorry, new at this), but do you have to have a deodexed rom for the GPS off reticle removed zip to be properly flashed? I just did a nandroid backup and then tried to flash the zip, but it did nothing. Did not clear cache or anything.
[EVO 4G Themes and Apps] SteelH:
First of all, ALWAYS CLEAR CACHE AND DALVIK when flashing anything that changes your framework. Secondly, yes, you need to be deodexed.
[EVO 4G Themes and Apps] brock1909:
.line 574

iget-object v3, p0, Lcom/android/server/status/StatusBarPolicy;->mClockData:Lcom/android/server/status/IconData;

invoke-virtual {p2, v3, v6}, Lcom/android/server/status/StatusBarService;->addIcon(Lcom/android/server/status/IconData;Lcom/android/server/status/NotificationData;)Landroid/os/IBinder;

move-result-object v3

iput-object v3, p0, Lcom/android/server/status/StatusBarPolicy;->mClockIcon:Landroid/os/IBinder;

this is what i get in the new OTA services.jar when i try to remove the clock...
[EVO 4G Themes and Apps] SteelH:
Search for :

invoke-direct {p0}, Lcom/android/server/status/StatusBarPolicy;->updateClock()V

It's there, I've already done it to my phone. The '.line #' may be a few different but the MOD is the same.
[EVO 4G Themes and Apps] brock1909:
invoke-direct {p0}, Lcom/android/server/status/StatusBarPolicy;->updateClock()V

invoke-virtual {p2, v3, v6}, Lcom/android/server/status/StatusBarService;->setIconVisibility(Landroid/os/IBinder;Z)V

found it, but it didnt work.

i attached my file, if u could take a quick look and tell me what i did, id appreciate it.

also isnt the transparent notification background in services.jar as well?
[EVO 4G Themes and Apps] SteelH:
You did not save your changes!!

invoke-virtual {p2, v3, v6}, Lcom/android/server/status/StatusBarService;->setIconVisibility(Landroid/os/IBinder;Z)V

This line DOES NOT exist in your StatusBarPolicy.smali

And yes, the transparent notification background requires a services.jar edit as well as a PNG chnage.
[EVO 4G Themes and Apps] snovvman:
I went through the process and removed the reticle. The process went smoothly. I made a backup of services.jar prior. After updating the services.jar and rebooting, the phone took a long time to start.

After that, I got a com.android.phone FC on startup. The reticle is gone, but the phone FC happens each time on boot.

I copied my backup services.jar over the modified one, rebooted, but the reticle is still gone and phone still FCs on startup.

I am using MikFroYo v4.2 and wonder if that had some contributing factor.

I'm sure I didn't make a mistake in the edit and restoring the original services.jar.

Stpuidly, I did not make a nandroid...

What is happening here? Help?

Thanks.
[EVO 4G Themes and Apps] Spacen:
Sounds like a similar problem I had. Are you copying the new file with something like root explorer? You have to push it to the phone with adb. I was told to do it while in recovery but adb doesn't seem to work in recovery on my phone. Instead I went into root explorer, found the folder and mounted as r/w. You can do this step in adb but it was simpler for me this way since I don't do it often and didn't remember the command to mount as r/w. Then I went to my pc and pushed the file with adb. Then reboot. It will take a while to boot that first time but hopefully no more FCs.
[EVO 4G Themes and Apps] snovvman:
That's exactly what I did! I moved files with Root Explorer because it was more convenient. I will try with ADB and report back. Thanks a lot for helping!

Edit: That did it!! Boot is faster now. I used the HBoot driver, Clockwork, and ADB but it didn't work. Although ADB showed that the file was copied, it was not. I then installed the HTC driver, mounted as RW, pushed via ADB and voila! I would hit the "Thanks" button twice if I could. You saved me from having to rebuild my phone.