I know I'm bumping this, but do you know how to remove the am and pm from the notifications bar?
7. HOW-TO hide the clock
First of all, all credit goes to pardonmyfreedom for this method! He posted this MOD for the Droid Incredible, I tested it on the EVO. Thanks buddy!
This reference assumes that you already know how to recompile a framework file using smali/baksmali.
This method will not take up space on in your status bar (This means the other icons will shift to the right and not leave a blank spot).
This guide is a reference for the smali code changes that must be made inside of services.jar to hide the CLOCK.
You need to edit StatusBarPolicy.smali, which is located within services.jar under com/android/server/status.
Search and find the following code:
Code:.line 574 invoke-direct {p0}, Lcom/android/server/status/StatusBarPolicy;->updateClock()V
and replace it with:
Code:.line 574 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
_______________________________________________________________________
8. HOW-TO Hide the Battery
First of all, all credit goes to pardonmyfreedom for this method! He posted this MOD for the Droid Incredible, I tested it on the EVO. Thanks buddy!
This reference assumes that you already know how to recompile a framework file using smali/baksmali.
This method will not take up space on in your status bar (This means the other icons will shift to the right and not leave a blank spot).
This guide is a reference for the smali code changes that must be made inside of services.jar to hide the battery icon.
You need to edit StatusBarPolicy.smali, which is located within services.jar under com/android/server/status.
Search and find the following code:
Code:iput-object v3, p0, Lcom/android/server/status/StatusBarPolicy;->mBatteryIcon:Landroid/os/IBinder;
ADD the following below the above code:
Code:invoke-virtual {p2, v3, v6}, Lcom/android/server/status/StatusBarService;->setIconVisibility(Landroid/os/IBinder;Z)V
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.
.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/NotificationDataLandroid/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...
invoke-direct {p0}, Lcom/android/server/status/StatusBarPolicy;->updateClock()V
Search for :
Code: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.
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?
invoke-virtual {p2, v3, v6}, Lcom/android/server/status/StatusBarService;->setIconVisibility(Landroid/os/IBinder;Z)V
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.
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.
adb shell
mount /dev/block/mtdblock4 /system
exit
adb shell
cd /system/framework
mv services.jar services.jar.original
exit
It's like trying to swap the engine of a car while it's running...
searched with root explorer and could not fined services.jar /confused
7. HOW-TO hide the clock
First of all, all credit goes to pardonmyfreedom for this method! He posted this MOD for the Droid Incredible, I tested it on the EVO. Thanks buddy!
This reference assumes that you already know how to recompile a framework file using smali/baksmali.
This method will not take up space on in your status bar (This means the other icons will shift to the right and not leave a blank spot).
This guide is a reference for the smali code changes that must be made inside of services.jar to hide the CLOCK.
You need to edit StatusBarPolicy.smali, which is located within services.jar under com/android/server/status.
Search and find the following code:
Code:.line 574 invoke-direct {p0}, Lcom/android/server/status/StatusBarPolicy;->updateClock()V
and replace it with:
Code:.line 574 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
UPDATE: In v3.70, its .line 575 instead of .line 574
___________________________________________________________________
Question, Under "replace it with", what should it look like once replaced?
^^like this^^Code:.line 574 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
^^or this^^Code:.line 574 invoke-virtual {p2, v3, v6}, Lcom/android/server/status/StatusBarService;->setIconVisibility(Landroid/os/IBinder;Z)V
Does anyone know where the notification smali file is located in Gingerbread?
com/android/server/status no longer exists in the classes.dex. There are only folders for "am", "connectivity", and "location".
I am running Droid X with the leaked gingerbread.
iget-object v6, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v7, "battery"
invoke-virtual {v6, v7, v2, v3}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;II)V
iget-object v6, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v7, "battery"
invoke-virtual {v6, v7, v9}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V
.line 106
const v1, -0x414142
invoke-virtual {p0, v1}, Lcom/android/systemui/statusbar/Clock;->setTextColor(I)V
const v1, 0x8
invoke-virtual {p0, v1}, Lcom/android/systemui/statusbar/Clock;->setVisibility(I)V
.method private final updateClock()V
.locals 6
.prologue
.line 940
iget-object v0, p0, Lcom/android/server/status/StatusBarPolicy;->mCalendar:Ljava/util/Calendar;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v1
invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->setTimeInMillis(J)V
.line 941
iget-object v0, p0, Lcom/android/server/status/StatusBarPolicy;->mClockData:Lcom/android/server/status/IconData;
iget-object v1, p0, Lcom/android/server/status/StatusBarPolicy;->mContext:Landroid/content/Context;
invoke-static {v1}, Landroid/text/format/DateFormat;->getTimeFormat(Landroid/content/Context;)Ljava/text/DateFormat;
move-result-object v1
iget-object v2, p0, Lcom/android/server/status/StatusBarPolicy;->mCalendar:Ljava/util/Calendar;
invoke-virtual {v2}, Ljava/util/Calendar;->getTime()Ljava/util/Date;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
move-result-object v1
const-string v4, " PM"
const-string v5, ""
invoke-virtual {v1, v4, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object v1
const-string v4, " AM"
const-string v5, ""
invoke-virtual {v1, v4, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object v1
iput-object v1, v0, Lcom/android/server/status/IconData;->text:Ljava/lang/CharSequence;
.line 942
iget-object v0, p0, Lcom/android/server/status/StatusBarPolicy;->mService:Lcom/android/server/status/StatusBarService;
iget-object v1, p0, Lcom/android/server/status/StatusBarPolicy;->mClockIcon:Landroid/os/IBinder;
iget-object v2, p0, Lcom/android/server/status/StatusBarPolicy;->mClockData:Lcom/android/server/status/IconData;
const/4 v3, 0x0
invoke-virtual {v0, v1, v2, v3}, Lcom/android/server/status/StatusBarService;->updateIcon(Landroid/os/IBinder;Lcom/android/server/status/IconData;Lcom/android/server/status/NotificationData;)V
.line 943
return-void
.end method