[MOD][HOW-TO]No Clock in Notification Bar

Search This thread

SwiftJudgement

Senior Member
Oct 5, 2010
195
70
Guide is on post 3

Terms Explained

Clock Removed: The clock has been removed from the notification bar.
DateFormat-X: The date has been modified in the notification bar pulldown. Short (12.13.52) Medium (Dec 13, 1952) Long (December 13, 1952) Full (Monday, December 12, 1952)
TimeFormat-X: The time has been added to the notification bar pulldown. Short (3:30pm) Long (3:30:23pm) Full (3:30:23pm PST)
Alarm Clock Icon Removed: The alarm clock icon that appears when you have an upcoming alarm has been removed.
USB Debugging Icon Removed: When the usb is connected in debugging mode, the icon that usually appears will not.

DOWNLOADS
If you don't like the mod, or something when wrong when flashing another services.jar, use this.
1. Captivate (JPY or JS3)Stock Services.jar

2. i9000 JS3 Stock Services.jar
These are Vibrant KA9 based Roms. Source is taken from Trigger 1.2 on the vibrant forums. If you are a Vibrant user, running a KA9 based Rom, try this out or request your own Mod!

13. Clock Removed. DateFormat-Full. TimeFormat-Short. Alarm Icon Removed.

14.

INSTRUCTIONS
To install, just flash the zip through Clockwork Recovery, or extract the services.jar and push the services.jar to /system/framework. The first boot will take a few minutes (up to 10 mins) then after that it should be a normal boot. This is because this mod wipes Dalvik-Cache.

REQUESTS
If you would like me to create a modded services.jar for your rom, just upload the services.jar and I'll see what I can do.

Request Format:
Rom Name and Version: Ex. Serendipity 5.4
Remove Time: Yes, No, Only AM/PM
Date in Notification Bar: None, Short, Medium, Long, Full
Time in Notification Bar: None, Short, Long, Full
Remove Alarm Icon: Yes or No
Remove Usb Debugging: Yes or No


Standard Disclaimer: As always, you should make a nandroid backup before doing any modifications to your phone. I am not responsible if this causes any damage.


snap20110205_173516.png
 
Last edited:

Thnikk

Senior Member
Nov 15, 2010
571
237
Sorry, what does deodexed mean? I found something like this in the i9000 section and have been using it for a week or two, but I loved how serendipity's services.jar got rid of the usb debugging icon. Do you think you could make one without both the clock and usb debugging icon?
 

SwiftJudgement

Senior Member
Oct 5, 2010
195
70
Guide for Removing and Adding Various Items to the servics.jar.


Directions for decompiling and recompiling the services.jar

I'm going to assume that you both have adb installed and know how to use it.

1. Extract the services.jar from your ROM (make a copy in case you mess something up) and place it in the /tools folder of your sdk.
2. Download smali and baksmali from http://code.google.com/p/smali/ and place them in the tools folder. Rename the files to baksmali.jar and smali.jar
3. Open the services.jar file with an archiving program. (I use 7zip because it's free)
4. Copy out the classes.dex file to the /tools folder of the sdk
5. To decompile, run the following command from the command prompt (Directory set as the /tools folder of your sdk)
Code:
java -jar baksmali.jar -o classout/ classes.dex
6. Now you should have a "classout" folder inside "tools"
7. Apply various mods
8. To recompile, Run the following command from the command prompt
Code:
java -Xmx512M -jar smali.jar classout/ -o new-classes.dex
9. If you applied the changes correctly, you should have a "new-classes.dex" file in your /tools folder.
10. Rename your old "classes.dex" to something else (or just delete it)
11. Rename "new-classes.dex" to "classes.dex"
12. Open the services.jar archive and place the "classes.dex" we just created in its place.
13. Place the services.jar back in the /system/framework folder.
Applying Mods

Remove Clock - Open the StatusBarPolicy.smali located in classout/com/android/server/status. Find the line
Code:
invoke-direct {p0}, Lcom/android/server/status/StatusBarPolicy;->updateClock()V
and replace with
Code:
    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
Remove Alarm Icon Open the StatusBarPolicy.smali located in /classout/com/android/server/status. Find the line
Code:
    const-string v1, "alarmSet"

    const/4 v2, 0x0

    invoke-virtual {p1, v1, v2}, Landroid/content/Intent;->getBooleanExtra(Ljava/lang/String;Z)Z

    move-result v0
and replace with
Code:
    const/4 v0, 0x0

    const-string v1, "alarmSet"

    const/4 v2, 0x0
Removing the USB Debugging Icon Open the NotificationManagerService.smali located in /classout/com/android/server. Find the following line and just comment it out.

Code:
iput v7, v6, Landroid/app/Notification;->icon:I
Becomes
Code:
#iput v7, v6, Landroid/app/Notification;->icon:I
Removing the Battery Open the StatusBarPolicy.smali found in classout/com/android/server/status. Find
Code:
iput-object v3, p0, Lcom/android/server/status/StatusBarPolicy;->mBatteryIcon:Landroid/os/IBinder;
and ADD the following code below it
Code:
invoke-virtual {p2, v3, v6}, Lcom/android/server/status/StatusBarService;->setIconVisibility(Landroid/os/IBinder;Z)V
Adding the Time to the Notification Pulldown - Open the DateView.smali located in classout/com/android/server/status. Find the following lines, or something very similar to it. The best way is to search for "getDateFormat". I have replaced the line numbers in my example with .line # because it will be different for every services.jar
Code:
    .registers 3

    .prologue
    .line #
    new-instance v0, Ljava/util/Date;

    invoke-direct {v0}, Ljava/util/Date;-><init>()V

    .line #
    .local v0, now:Ljava/util/Date;
    iget-object v1, p0, Lcom/android/server/status/DateView;->mContext:Landroid/content/Context;

    invoke-static {v1}, Landroid/text/format/DateFormat;->getDateFormat(Landroid/content/Context;)Ljava/text/DateFormat;

    move-result-object v1

    invoke-virtual {v1, v0}, Ljava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V
and replace that with

Code:
    .registers 4

    .prologue
    .line #
    
    new-instance v0, Ljava/util/Date;

    invoke-direct {v0}, Ljava/util/Date;-><init>()V

    .line #
    .local v0, now:Ljava/util/Date;
    const/4 v1, 0x2
    const/4 v2, 0x3

    invoke-static {v1, v2}, Ljava/text/DateFormat;->getDateTimeInstance(II)Ljava/text/DateFormat;

    move-result-object v1

    invoke-virtual {v1, v0}, Ljava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

To control the length of the date and time edit
Code:
    const/4 v1, 0x2
    const/4 v2, 0x3
The first line is the date and the second line is the time. In My example, I am using a MEDIUM date (0x2) and a SHORT time (0x3)

FULL would be 0x0, LONG would be 0x1 etc., etc.

Adding Time and Removing Date from Pulldown - Open the DateView.smali located in classout/com/android/server/status. Find the following lines, or something very similar to it. The best way is to search for "getDateFormat". I have replaced the line numbers in my example with .line # because it will be different for every services.jar
Code:
    .registers 3

    .prologue
    .line #
    new-instance v0, Ljava/util/Date;

    invoke-direct {v0}, Ljava/util/Date;-><init>()V

    .line #
    .local v0, now:Ljava/util/Date;
    iget-object v1, p0, Lcom/android/server/status/DateView;->mContext:Landroid/content/Context;

    invoke-static {v1}, Landroid/text/format/DateFormat;->getDateFormat(Landroid/content/Context;)Ljava/text/DateFormat;

    move-result-object v1

    invoke-virtual {v1, v0}, Ljava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

And replace with

Code:
    .registers 3

    .prologue
    .line #
    
    new-instance v0, Ljava/util/Date;

    invoke-direct {v0}, Ljava/util/Date;-><init>()V

    .line #
    .local v0, now:Ljava/util/Date;
    const/4 v1, 0x3

    invoke-static {v1, v2}, Ljava/text/DateFormat;->getDateTimeInstance(II)Ljava/text/DateFormat;

    move-result-object v1

    invoke-static {v1}, Ljava/text/DateFormat;->getTimeInstance(I)Ljava/text/DateFormat;

    move-result-object v1

    invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

Removing Date from Pulldown - Open the DateView.smali located in classout/com/android/server/status. Find the following lines, or something very similar to it. The best way is to search for "getDateFormat". I have replaced the line numbers in my example with .line # because it will be different for every services.jar
Code:
    .registers 3

    .prologue
    .line #
    new-instance v0, Ljava/util/Date;

    invoke-direct {v0}, Ljava/util/Date;-><init>()V

    .line #
    .local v0, now:Ljava/util/Date;
    iget-object v1, p0, Lcom/android/server/status/DateView;->mContext:Landroid/content/Context;

    invoke-static {v1}, Landroid/text/format/DateFormat;->getDateFormat(Landroid/content/Context;)Ljava/text/DateFormat;

    move-result-object v1

    invoke-virtual {v1, v0}, Ljava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

And replace with

Code:
    .registers 3

    .prologue
    .line #
    
    new-instance v0, Ljava/util/Date;

    invoke-direct {v0}, Ljava/util/Date;-><init>()V

    .line #
    .local v0, now:Ljava/util/Date;
    const/4 v1, 0x3

    invoke-static {v1, v2}, Ljava/text/DateFormat;->getDateTimeInstance(II)Ljava/text/DateFormat;

    move-result-object v1

    invoke-static {v1}, Ljava/text/DateFormat;->getTimeInstance(I)Ljava/text/DateFormat;

    move-result-object v1

    const-string v1, ""

    invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

To only remove AM/PM from the Time- Open the StatusBarIcon.smali found in classout/com/android/server/status. Replace the following lines with their counterparts. TAKEN DIRECTLY FROM amosher13 IN THE EPIC FORUM NOTE: The .line numbers maybe be different from ROM to ROM.

At line 48 change:
Code:
.line 51
    iget v6, p2, Lcom/android/server/status/IconData;->type:I

    packed-switch v6, :pswitch_data_9a

TO:

Code:
.line 51
    iget v6, p2, Lcom/android/server/status/IconData;->type:I

    packed-switch v6, :pswitch_data_9c

---------------------------------

At line 93 change:
Code:
.line 63
    const/4 v6, 0x6

    invoke-virtual {v4, v6, v8, v8, v8}, Landroid/widget/TextView;->setPadding(IIII)V

    .line 64
    invoke-virtual {v4, v2}, Landroid/widget/TextView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V

    .line 65
    iget-object v6, p2, Lcom/android/server/status/IconData;->text:Ljava/lang/CharSequence;

    invoke-virtual {v4, v6}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V

    .line 66
    iput-object v4, p0, Lcom/android/server/status/StatusBarIcon;->view:Landroid/view/View;

    goto :goto_10

    .line 72
    .end local v2           #layoutParams:Landroid/widget/LinearLayout$LayoutParams;
    .end local v4           #t:Landroid/widget/TextView;
    :pswitch_3f
    const-string v6, "layout_inflater"

    invoke-virtual {p1, v6}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Landroid/view/LayoutInflater;

TO:

Code:
.line 63
    const/4 v6, 0x6

    const/16 v7, -0x26

    invoke-virtual {v4, v6, v8, v7, v8}, Landroid/widget/TextView;->setPadding(IIII)V

    .line 64
    invoke-virtual {v4, v2}, Landroid/widget/TextView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V

    .line 65
    iget-object v6, p2, Lcom/android/server/status/IconData;->text:Ljava/lang/CharSequence;

    invoke-virtual {v4, v6}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V

    .line 66
    iput-object v4, p0, Lcom/android/server/status/StatusBarIcon;->view:Landroid/view/View;

    goto :goto_10

    .line 72
    .end local v2           #layoutParams:Landroid/widget/LinearLayout$LayoutParams;
    .end local v4           #t:Landroid/widget/TextView;
    :pswitch_41
    const-string v6, "layout_inflater"

    invoke-virtual {p1, v6}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Landroid/view/LayoutInflater;

-----------------------------------

At line 175 change:
Code:
.line 86
    iget v6, p2, Lcom/android/server/status/IconData;->number:I

    if-lez v6, :cond_93

TO:

Code:
   .line 86
    iget v6, p2, Lcom/android/server/status/IconData;->number:I

    if-lez v6, :cond_95

------------------------------------

At line 208 change:
Code:
  .line 90
    :cond_93
    const/16 v6, 0x8

    invoke-virtual {v3, v6}, Landroid/widget/TextView;->setVisibility(I)V

    goto/16 :goto_10

    .line 51
    :pswitch_data_9a
    .packed-switch 0x1
        :pswitch_11
        :pswitch_3f
    .end packed-switch
.end method

.method static getIcon(Landroid/content/Context;Lcom/android/server/status/IconData;)Landroid/graphics/drawable/Drawable;
    .registers 9
    .parameter "context"
    .parameter "data"

    .prologue
    const/4 v5, 0x0

    const-string v6, "StatusBar"

TO:

Code:
   .line 90
    :cond_95
    const/16 v6, 0x8

    invoke-virtual {v3, v6}, Landroid/widget/TextView;->setVisibility(I)V

    goto/16 :goto_10

    .line 51
    :pswitch_data_9c
    .packed-switch 0x1
        :pswitch_11
        :pswitch_41
    .end packed-switch
.end method

.method static getIcon(Landroid/content/Context;Lcom/android/server/status/IconData;)Landroid/graphics/drawable/Drawable;
    .registers 9
    .parameter "context"
    .parameter "data"

    .prologue
    const/4 v5, 0x0

    const-string v6, "StatusBar"


And here are the links I used to create this Tutorial. I merely read what these guys did, and put it all together in one place. If you feel the need to donate, please donate to one of these guys.

[HOW-TO] Change status bar clock color
[HOW-TO] Hide various Icons from the Status Bar
Can the time be placed next to the date on status bar when clock is removed?
[MOD] Remove Clock and Date from Statusbar/Notification Clock and Remove Date
 
Last edited:

Thnikk

Senior Member
Nov 15, 2010
571
237
Do you think you could remove the clock from the latest services.jar from serendipity 5.4? File is attached
 

Attachments

  • serendipityservices.zip
    693.7 KB · Views: 4

bdpyo

Senior Member
Dec 3, 2010
1,823
100
Philadelphia
I went from 5.3 to 5.4 on Serendipity last night and the alarm never went off using this. I was an hour late to work and my cat exploded. :-(

Sent from my SAMSUNG-SGH-I897 using Tapatalk
 

SwiftJudgement

Senior Member
Oct 5, 2010
195
70
Debugging Removed!

Serendipity Mods Added!

For anyone that wants the usb debugging icon removed, use these.

2 More Mods added! They were built from Firefly (Rogers 2.2) but will work on JPY and JS3

No Clock No Debugging No Backlight: Doesn't have the backlight fix,

No Debugging No Backlight: Is just Clock is stock, but debugging is gone and no backlight fix.
 
Last edited:

x3ro

Member
Jul 22, 2007
11
0
I'd like a verion that removes the clock but keeps the alarm notification, I'm on Serendipity 5.4
 

SwiftJudgement

Senior Member
Oct 5, 2010
195
70
i would like the clock removed completely i use a widget for weather and clock on phoenix

Do you want it removed from the Notification Pulldown as well?

It doesn't really do too much harm to have the Date and Time listed there, and you can still access the time in 3rd Party apps just by checking your notifications.
 
  • Like
Reactions: mikehe

chrisz5z

Senior Member
Sep 16, 2010
458
158
Google Pixel 7 Pro
Rom Name and Version: Darky's 9.2
Remove Time: Yes
Date in Notification Bar: Short
Time in Notification Bar: Short
Remove Alarm Icon: Yes
Remove Usb Debugging: No

I know Darky's 9.2 is JS3, but i would assume its similar to JPY.....and i dont mind testing

Thanks :)
 

Attachments

  • services.zip
    703.8 KB · Views: 7

Top Liked Posts

  • There are no posts matching your filters.
  • 10
    Guide is on post 3

    Terms Explained

    Clock Removed: The clock has been removed from the notification bar.
    DateFormat-X: The date has been modified in the notification bar pulldown. Short (12.13.52) Medium (Dec 13, 1952) Long (December 13, 1952) Full (Monday, December 12, 1952)
    TimeFormat-X: The time has been added to the notification bar pulldown. Short (3:30pm) Long (3:30:23pm) Full (3:30:23pm PST)
    Alarm Clock Icon Removed: The alarm clock icon that appears when you have an upcoming alarm has been removed.
    USB Debugging Icon Removed: When the usb is connected in debugging mode, the icon that usually appears will not.

    DOWNLOADS
    If you don't like the mod, or something when wrong when flashing another services.jar, use this.
    1. Captivate (JPY or JS3)Stock Services.jar

    2. i9000 JS3 Stock Services.jar
    These are Vibrant KA9 based Roms. Source is taken from Trigger 1.2 on the vibrant forums. If you are a Vibrant user, running a KA9 based Rom, try this out or request your own Mod!

    13. Clock Removed. DateFormat-Full. TimeFormat-Short. Alarm Icon Removed.

    14.

    INSTRUCTIONS
    To install, just flash the zip through Clockwork Recovery, or extract the services.jar and push the services.jar to /system/framework. The first boot will take a few minutes (up to 10 mins) then after that it should be a normal boot. This is because this mod wipes Dalvik-Cache.

    REQUESTS
    If you would like me to create a modded services.jar for your rom, just upload the services.jar and I'll see what I can do.

    Request Format:
    Rom Name and Version: Ex. Serendipity 5.4
    Remove Time: Yes, No, Only AM/PM
    Date in Notification Bar: None, Short, Medium, Long, Full
    Time in Notification Bar: None, Short, Long, Full
    Remove Alarm Icon: Yes or No
    Remove Usb Debugging: Yes or No


    Standard Disclaimer: As always, you should make a nandroid backup before doing any modifications to your phone. I am not responsible if this causes any damage.


    snap20110205_173516.png
    9
    Guide for Removing and Adding Various Items to the servics.jar.


    Directions for decompiling and recompiling the services.jar

    I'm going to assume that you both have adb installed and know how to use it.

    1. Extract the services.jar from your ROM (make a copy in case you mess something up) and place it in the /tools folder of your sdk.
    2. Download smali and baksmali from http://code.google.com/p/smali/ and place them in the tools folder. Rename the files to baksmali.jar and smali.jar
    3. Open the services.jar file with an archiving program. (I use 7zip because it's free)
    4. Copy out the classes.dex file to the /tools folder of the sdk
    5. To decompile, run the following command from the command prompt (Directory set as the /tools folder of your sdk)
    Code:
    java -jar baksmali.jar -o classout/ classes.dex
    6. Now you should have a "classout" folder inside "tools"
    7. Apply various mods
    8. To recompile, Run the following command from the command prompt
    Code:
    java -Xmx512M -jar smali.jar classout/ -o new-classes.dex
    9. If you applied the changes correctly, you should have a "new-classes.dex" file in your /tools folder.
    10. Rename your old "classes.dex" to something else (or just delete it)
    11. Rename "new-classes.dex" to "classes.dex"
    12. Open the services.jar archive and place the "classes.dex" we just created in its place.
    13. Place the services.jar back in the /system/framework folder.
    Applying Mods

    Remove Clock - Open the StatusBarPolicy.smali located in classout/com/android/server/status. Find the line
    Code:
    invoke-direct {p0}, Lcom/android/server/status/StatusBarPolicy;->updateClock()V
    and replace with
    Code:
        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
    Remove Alarm Icon Open the StatusBarPolicy.smali located in /classout/com/android/server/status. Find the line
    Code:
        const-string v1, "alarmSet"
    
        const/4 v2, 0x0
    
        invoke-virtual {p1, v1, v2}, Landroid/content/Intent;->getBooleanExtra(Ljava/lang/String;Z)Z
    
        move-result v0
    and replace with
    Code:
        const/4 v0, 0x0
    
        const-string v1, "alarmSet"
    
        const/4 v2, 0x0
    Removing the USB Debugging Icon Open the NotificationManagerService.smali located in /classout/com/android/server. Find the following line and just comment it out.

    Code:
    iput v7, v6, Landroid/app/Notification;->icon:I
    Becomes
    Code:
    #iput v7, v6, Landroid/app/Notification;->icon:I
    Removing the Battery Open the StatusBarPolicy.smali found in classout/com/android/server/status. Find
    Code:
    iput-object v3, p0, Lcom/android/server/status/StatusBarPolicy;->mBatteryIcon:Landroid/os/IBinder;
    and ADD the following code below it
    Code:
    invoke-virtual {p2, v3, v6}, Lcom/android/server/status/StatusBarService;->setIconVisibility(Landroid/os/IBinder;Z)V
    Adding the Time to the Notification Pulldown - Open the DateView.smali located in classout/com/android/server/status. Find the following lines, or something very similar to it. The best way is to search for "getDateFormat". I have replaced the line numbers in my example with .line # because it will be different for every services.jar
    Code:
        .registers 3
    
        .prologue
        .line #
        new-instance v0, Ljava/util/Date;
    
        invoke-direct {v0}, Ljava/util/Date;-><init>()V
    
        .line #
        .local v0, now:Ljava/util/Date;
        iget-object v1, p0, Lcom/android/server/status/DateView;->mContext:Landroid/content/Context;
    
        invoke-static {v1}, Landroid/text/format/DateFormat;->getDateFormat(Landroid/content/Context;)Ljava/text/DateFormat;
    
        move-result-object v1
    
        invoke-virtual {v1, v0}, Ljava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    
        move-result-object v1
    
        invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V
    and replace that with

    Code:
        .registers 4
    
        .prologue
        .line #
        
        new-instance v0, Ljava/util/Date;
    
        invoke-direct {v0}, Ljava/util/Date;-><init>()V
    
        .line #
        .local v0, now:Ljava/util/Date;
        const/4 v1, 0x2
        const/4 v2, 0x3
    
        invoke-static {v1, v2}, Ljava/text/DateFormat;->getDateTimeInstance(II)Ljava/text/DateFormat;
    
        move-result-object v1
    
        invoke-virtual {v1, v0}, Ljava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    
        move-result-object v1
    
        invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

    To control the length of the date and time edit
    Code:
        const/4 v1, 0x2
        const/4 v2, 0x3
    The first line is the date and the second line is the time. In My example, I am using a MEDIUM date (0x2) and a SHORT time (0x3)

    FULL would be 0x0, LONG would be 0x1 etc., etc.

    Adding Time and Removing Date from Pulldown - Open the DateView.smali located in classout/com/android/server/status. Find the following lines, or something very similar to it. The best way is to search for "getDateFormat". I have replaced the line numbers in my example with .line # because it will be different for every services.jar
    Code:
        .registers 3
    
        .prologue
        .line #
        new-instance v0, Ljava/util/Date;
    
        invoke-direct {v0}, Ljava/util/Date;-><init>()V
    
        .line #
        .local v0, now:Ljava/util/Date;
        iget-object v1, p0, Lcom/android/server/status/DateView;->mContext:Landroid/content/Context;
    
        invoke-static {v1}, Landroid/text/format/DateFormat;->getDateFormat(Landroid/content/Context;)Ljava/text/DateFormat;
    
        move-result-object v1
    
        invoke-virtual {v1, v0}, Ljava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    
        move-result-object v1
    
        invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

    And replace with

    Code:
        .registers 3
    
        .prologue
        .line #
        
        new-instance v0, Ljava/util/Date;
    
        invoke-direct {v0}, Ljava/util/Date;-><init>()V
    
        .line #
        .local v0, now:Ljava/util/Date;
        const/4 v1, 0x3
    
        invoke-static {v1, v2}, Ljava/text/DateFormat;->getDateTimeInstance(II)Ljava/text/DateFormat;
    
        move-result-object v1
    
        invoke-static {v1}, Ljava/text/DateFormat;->getTimeInstance(I)Ljava/text/DateFormat;
    
        move-result-object v1
    
        invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

    Removing Date from Pulldown - Open the DateView.smali located in classout/com/android/server/status. Find the following lines, or something very similar to it. The best way is to search for "getDateFormat". I have replaced the line numbers in my example with .line # because it will be different for every services.jar
    Code:
        .registers 3
    
        .prologue
        .line #
        new-instance v0, Ljava/util/Date;
    
        invoke-direct {v0}, Ljava/util/Date;-><init>()V
    
        .line #
        .local v0, now:Ljava/util/Date;
        iget-object v1, p0, Lcom/android/server/status/DateView;->mContext:Landroid/content/Context;
    
        invoke-static {v1}, Landroid/text/format/DateFormat;->getDateFormat(Landroid/content/Context;)Ljava/text/DateFormat;
    
        move-result-object v1
    
        invoke-virtual {v1, v0}, Ljava/text/DateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    
        move-result-object v1
    
        invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

    And replace with

    Code:
        .registers 3
    
        .prologue
        .line #
        
        new-instance v0, Ljava/util/Date;
    
        invoke-direct {v0}, Ljava/util/Date;-><init>()V
    
        .line #
        .local v0, now:Ljava/util/Date;
        const/4 v1, 0x3
    
        invoke-static {v1, v2}, Ljava/text/DateFormat;->getDateTimeInstance(II)Ljava/text/DateFormat;
    
        move-result-object v1
    
        invoke-static {v1}, Ljava/text/DateFormat;->getTimeInstance(I)Ljava/text/DateFormat;
    
        move-result-object v1
    
        const-string v1, ""
    
        invoke-virtual {p0, v1}, Lcom/android/server/status/DateView;->setText(Ljava/lang/CharSequence;)V

    To only remove AM/PM from the Time- Open the StatusBarIcon.smali found in classout/com/android/server/status. Replace the following lines with their counterparts. TAKEN DIRECTLY FROM amosher13 IN THE EPIC FORUM NOTE: The .line numbers maybe be different from ROM to ROM.

    At line 48 change:
    Code:
    .line 51
        iget v6, p2, Lcom/android/server/status/IconData;->type:I
    
        packed-switch v6, :pswitch_data_9a

    TO:

    Code:
    .line 51
        iget v6, p2, Lcom/android/server/status/IconData;->type:I
    
        packed-switch v6, :pswitch_data_9c

    ---------------------------------

    At line 93 change:
    Code:
    .line 63
        const/4 v6, 0x6
    
        invoke-virtual {v4, v6, v8, v8, v8}, Landroid/widget/TextView;->setPadding(IIII)V
    
        .line 64
        invoke-virtual {v4, v2}, Landroid/widget/TextView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V
    
        .line 65
        iget-object v6, p2, Lcom/android/server/status/IconData;->text:Ljava/lang/CharSequence;
    
        invoke-virtual {v4, v6}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
    
        .line 66
        iput-object v4, p0, Lcom/android/server/status/StatusBarIcon;->view:Landroid/view/View;
    
        goto :goto_10
    
        .line 72
        .end local v2           #layoutParams:Landroid/widget/LinearLayout$LayoutParams;
        .end local v4           #t:Landroid/widget/TextView;
        :pswitch_3f
        const-string v6, "layout_inflater"
    
        invoke-virtual {p1, v6}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
    
        move-result-object v1
    
        check-cast v1, Landroid/view/LayoutInflater;

    TO:

    Code:
    .line 63
        const/4 v6, 0x6
    
        const/16 v7, -0x26
    
        invoke-virtual {v4, v6, v8, v7, v8}, Landroid/widget/TextView;->setPadding(IIII)V
    
        .line 64
        invoke-virtual {v4, v2}, Landroid/widget/TextView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V
    
        .line 65
        iget-object v6, p2, Lcom/android/server/status/IconData;->text:Ljava/lang/CharSequence;
    
        invoke-virtual {v4, v6}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
    
        .line 66
        iput-object v4, p0, Lcom/android/server/status/StatusBarIcon;->view:Landroid/view/View;
    
        goto :goto_10
    
        .line 72
        .end local v2           #layoutParams:Landroid/widget/LinearLayout$LayoutParams;
        .end local v4           #t:Landroid/widget/TextView;
        :pswitch_41
        const-string v6, "layout_inflater"
    
        invoke-virtual {p1, v6}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
    
        move-result-object v1
    
        check-cast v1, Landroid/view/LayoutInflater;

    -----------------------------------

    At line 175 change:
    Code:
    .line 86
        iget v6, p2, Lcom/android/server/status/IconData;->number:I
    
        if-lez v6, :cond_93

    TO:

    Code:
       .line 86
        iget v6, p2, Lcom/android/server/status/IconData;->number:I
    
        if-lez v6, :cond_95

    ------------------------------------

    At line 208 change:
    Code:
      .line 90
        :cond_93
        const/16 v6, 0x8
    
        invoke-virtual {v3, v6}, Landroid/widget/TextView;->setVisibility(I)V
    
        goto/16 :goto_10
    
        .line 51
        :pswitch_data_9a
        .packed-switch 0x1
            :pswitch_11
            :pswitch_3f
        .end packed-switch
    .end method
    
    .method static getIcon(Landroid/content/Context;Lcom/android/server/status/IconData;)Landroid/graphics/drawable/Drawable;
        .registers 9
        .parameter "context"
        .parameter "data"
    
        .prologue
        const/4 v5, 0x0
    
        const-string v6, "StatusBar"

    TO:

    Code:
       .line 90
        :cond_95
        const/16 v6, 0x8
    
        invoke-virtual {v3, v6}, Landroid/widget/TextView;->setVisibility(I)V
    
        goto/16 :goto_10
    
        .line 51
        :pswitch_data_9c
        .packed-switch 0x1
            :pswitch_11
            :pswitch_41
        .end packed-switch
    .end method
    
    .method static getIcon(Landroid/content/Context;Lcom/android/server/status/IconData;)Landroid/graphics/drawable/Drawable;
        .registers 9
        .parameter "context"
        .parameter "data"
    
        .prologue
        const/4 v5, 0x0
    
        const-string v6, "StatusBar"


    And here are the links I used to create this Tutorial. I merely read what these guys did, and put it all together in one place. If you feel the need to donate, please donate to one of these guys.

    [HOW-TO] Change status bar clock color
    [HOW-TO] Hide various Icons from the Status Bar
    Can the time be placed next to the date on status bar when clock is removed?
    [MOD] Remove Clock and Date from Statusbar/Notification Clock and Remove Date
    3
    Please and Thank you!


    Rom Name and Version: Fusion 1.8
    Remove Time: Yes
    Date in Notification Bar: Short
    Time in Notification Bar: Short
    Remove Alarm Icon: Yes
    Remove Usb Debugging: Yes

    Thanks for being patient!
    DOWNLOAD

    Rom Name and Version: Darky's rom 9.5 JS8
    Remove Time: Yes
    Date in Notification Bar: Medium
    Time in Notification Bar: Short
    Remove Alarm Icon: No
    Remove Usb Debugging: No

    Can u do that?

    Yep, here you go!
    DOWNLOAD

    Could you still do this one? I am on a MAC and don't know how to accomplish the tutorial.

    Sent from my Captivate.
    / Andromeda3 / stock /
    ATT
    Using Other's ingenuity.

    I went ahead and put the clock in the notification bar pulldown for you, let me know if that isn't what you wanted.
    DOWNLOAD
    2
    Name and Version: Generation X 2.0 blue
    Remove Time: no
    Remove AM/PM: no
    Date in Notification Bar: short
    Time in Notification Bar: none
    Remove Alarm Icon: yes
    Remove Usb Debugging: yes

    Download

    Rom Name and Version: RomKitchen XWJS5 9.6.6
    Remove Time: Yes
    Date in Notification Bar: Short
    Time in Notification Bar: Short
    Remove Alarm Icon: Yes
    Remove Usb Debugging: No

    Download

    Rom Name and Version: Serendipity 5.12
    Remove Time: Yes
    Date in Notification Bar: None
    Time in Notification Bar: None
    Remove Alarm Icon: No
    Remove Usb Debugging: Yes
    Remove Battery: Yes

    Download

    Let me know if you have any problems.
    2
    Name and Version: Serendipity 5.8
    Remove Time: No
    Remove AM/PM Yes
    Date in Notification Bar: Short
    Time in Notification Bar: don't want two clocks in the notification bar...so none
    Remove Alarm Icon: Yes
    Remove Usb Debugging: Yes

    Alright. Should be good to go.
    Rom Name and Version: Dorian JS5 Beta-1
    Remove Time: Yes
    Remove AM/PM Yes
    Date in Notification Bar: Medium
    Time in Notification Bar: Short
    Remove Alarm Icon: Yes
    Remove Usb Debugging: Yes

    This is a JS5. I tried the No Clock or Alarm Backlight Fix on Serendipity 5.8 and it work fine. Tried it on this new ROM and it says externel will not mount (even though it actually does) and then says 123456789abcdef..... xwz

    Hmm. I haven't seen either of those problems yet. Oh well, here's a JS5 version.