[Android Software/Hacking General [Developers Only]] _FroX_:
Hi! I've a samsung (galaxy ace) and something fails, it is not. I think it's framework.jar but... see.

When I try to remove a notification, it returns and well...

--> Attachments pictures<--

It is so random, but not remove the notification!

Framework.jar src:

IStatusBarService$Stub.smali

.class public abstract Lcom/android/internal/statusbar/IStatusBarService$Stub;
.super Landroid/os/Binder;
.source "IStatusBarService.java"

# interfaces
.implements Lcom/android/internal/statusbar/IStatusBarService;

# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/android/internal/statusbar/IStatusBarService;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x409
name = "Stub"
.end annotation

.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/internal/statusbar/IStatusBarService$Stub$Proxy;
}
.end annotation

# static fields
.field private static final DESCRIPTOR:Ljava/lang/String; = "com.android.internal.statusbar.IStatusBarService"

.field static final TRANSACTION_collapse:I = 0x2

.field static final TRANSACTION_disable:I = 0x3

.field static final TRANSACTION_expand:I = 0x1

.field static final TRANSACTION_hideCallView:I = 0x8

.field static final TRANSACTION_onClearAllNotifications:I = 0xd

.field static final TRANSACTION_onNotificationClear:I = 0xe

.field static final TRANSACTION_onNotificationClick:I = 0xb

.field static final TRANSACTION_onNotificationError:I = 0xc

.field static final TRANSACTION_onPanelRevealed:I = 0xa

.field static final TRANSACTION_registerStatusBar:I = 0x9

.field static final TRANSACTION_removeIcon:I = 0x6

.field static final TRANSACTION_setIcon:I = 0x4

.field static final TRANSACTION_setIconVisibility:I = 0x5

.field static final TRANSACTION_showCallView:I = 0x7

# direct methods
.method public constructor <init>()V
.registers 2

.prologue
.line 15
invoke-direct {p0}, Landroid/os/Binder;-><init>()V

.line 16
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p0, p0, v0}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V

.line 17
return-void
.end method

.method public static asInterface(Landroid/os/IBinder;)Lcom/android/internal/statusbar/IStatusBarService;
.registers 3
.parameter "obj"

.prologue
.line 24
if-nez p0, :cond_4

.line 25
const/4 v1, 0x0

.line 31
:goto_3
return-object v1

.line 27
:cond_4
const-string v1, "com.android.internal.statusbar.IStatusBarService"

invoke-interface {p0, v1}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;

move-result-object v0

.line 28
.local v0, iin:Landroid/os/IInterface;
if-eqz v0, :cond_14

instance-of v1, v0, Lcom/android/internal/statusbar/IStatusBarService;

if-eqz v1, :cond_14

.line 29
check-cast v0, Lcom/android/internal/statusbar/IStatusBarService;

.end local v0 #iin:Landroid/os/IInterface;
move-object v1, v0

goto :goto_3

.line 31
.restart local v0 #iin:Landroid/os/IInterface;
:cond_14
new-instance v1, Lcom/android/internal/statusbar/IStatusBarService$Stub$Proxy;

invoke-direct {v1, p0}, Lcom/android/internal/statusbar/IStatusBarService$Stub$Proxy;-><init>(Landroid/os/IBinder;)V

goto :goto_3
.end method

# virtual methods
.method public asBinder()Landroid/os/IBinder;
.registers 1

.prologue
.line 35
return-object p0
.end method

.method public onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
.registers 14
.parameter "code"
.parameter "data"
.parameter "reply"
.parameter "flags"
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/os/RemoteException;
}
.end annotation

.prologue
.line 39
sparse-switch p1, :sswitch_data_15a

.line 193
invoke-super {p0, p1, p2, p3, p4}, Landroid/os/Binder;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z

move-result v0

:goto_7
return v0

.line 43
:sswitch_8
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p3, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V

.line 44
const/4 v0, 0x1

goto :goto_7

.line 48
:sswitch_f
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 49
invoke-virtual {p0}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->expand()V

.line 50
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 51
const/4 v0, 0x1

goto :goto_7

.line 55
:sswitch_1c
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 56
invoke-virtual {p0}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->collapse()V

.line 57
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 58
const/4 v0, 0x1

goto :goto_7

.line 62
:sswitch_29
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 64
invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I

move-result v1

.line 66
.local v1, _arg0:I
invoke-virtual {p2}, Landroid/os/Parcel;->readStrongBinder()Landroid/os/IBinder;

move-result-object v2

.line 68
.local v2, _arg1:Landroid/os/IBinder;
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v3

.line 69
.local v3, _arg2:Ljava/lang/String;
invoke-virtual {p0, v1, v2, v3}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->disable(ILandroid/os/IBinder;Ljava/lang/String;)V

.line 70
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 71
const/4 v0, 0x1

goto :goto_7

.line 75
.end local v1 #_arg0:I
.end local v2 #_arg1:Landroid/os/IBinder;
.end local v3 #_arg2:Ljava/lang/String;
:sswitch_42
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 77
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v1

.line 79
.local v1, _arg0:Ljava/lang/String;
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v2

.line 81
.local v2, _arg1:Ljava/lang/String;
invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I

move-result v3

.line 83
.local v3, _arg2:I
invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I

move-result v4

.line 84
.local v4, _arg3:I
invoke-virtual {p0, v1, v2, v3, v4}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->setIcon(Ljava/lang/String;Ljava/lang/String;II)V

.line 85
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 86
const/4 v0, 0x1

goto :goto_7

.line 90
.end local v1 #_arg0:Ljava/lang/String;
.end local v2 #_arg1:Ljava/lang/String;
.end local v3 #_arg2:I
.end local v4 #_arg3:I
:sswitch_5f
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 92
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v1

.line 94
.restart local v1 #_arg0:Ljava/lang/String;
invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I

move-result v0

if-eqz v0, :cond_78

const/4 v0, 0x1

move v2, v0

.line 95
.local v2, _arg1:Z
:goto_70
invoke-virtual {p0, v1, v2}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->setIconVisibility(Ljava/lang/String;Z)V

.line 96
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 97
const/4 v0, 0x1

goto :goto_7

.line 94
.end local v2 #_arg1:Z
:cond_78
const/4 v0, 0x0

move v2, v0

goto :goto_70

.line 101
.end local v1 #_arg0:Ljava/lang/String;
:sswitch_7b
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 103
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v1

.line 104
.restart local v1 #_arg0:Ljava/lang/String;
invoke-virtual {p0, v1}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->removeIcon(Ljava/lang/String;)V

.line 105
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 106
const/4 v0, 0x1

goto/16 :goto_7

.line 110
.end local v1 #_arg0:Ljava/lang/String;
:sswitch_8d
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 111
invoke-virtual {p0}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->showCallView()V

.line 112
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 113
const/4 v0, 0x1

goto/16 :goto_7

.line 117
:sswitch_9b
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 118
invoke-virtual {p0}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->hideCallView()V

.line 119
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 120
const/4 v0, 0x1

goto/16 :goto_7

.line 124
:sswitch_a9
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 126
invoke-virtual {p2}, Landroid/os/Parcel;->readStrongBinder()Landroid/os/IBinder;

move-result-object v0

invoke-static {v0}, Lcom/android/internal/statusbar/IStatusBar$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/statusbar/IStatusBar;

move-result-object v1

.line 128
.local v1, _arg0:Lcom/android/internal/statusbar/IStatusBar;
new-instance v2, Lcom/android/internal/statusbar/StatusBarIconList;

invoke-direct {v2}, Lcom/android/internal/statusbar/StatusBarIconList;-><init>()V

.line 130
.local v2, _arg1:Lcom/android/internal/statusbar/StatusBarIconList;
new-instance v7, Ljava/util/ArrayList;

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

.line 132
.local v7, _arg2:Ljava/util/List;,"Ljava/util/List<Landroid/os/IBinder;>;"
new-instance v8, Ljava/util/ArrayList;

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

.line 133
.local v8, _arg3:Ljava/util/List;,"Ljava/util/List<Lcom/android/internal/statusbar/StatusBarNotification;>;"
invoke-virtual {p0, v1, v2, v7, v8}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->registerStatusBar(Lcom/android/internal/statusbar/IStatusBar;Lcom/android/internal/statusbar/StatusBarIconList;Ljava/util/List;Ljava/util/List;)V

.line 134
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 135
if-eqz v2, :cond_de

.line 136
const/4 v0, 0x1

invoke-virtual {p3, v0}, Landroid/os/Parcel;->writeInt(I)V

.line 137
const/4 v0, 0x1

invoke-virtual {v2, p3, v0}, Lcom/android/internal/statusbar/StatusBarIconList;->writeToParcel(Landroid/os/Parcel;I)V

.line 142
:goto_d5
invoke-virtual {p3, v7}, Landroid/os/Parcel;->writeBinderList(Ljava/util/List;)V

.line 143
invoke-virtual {p3, v8}, Landroid/os/Parcel;->writeTypedList(Ljava/util/List;)V

.line 144
const/4 v0, 0x1

goto/16 :goto_7

.line 140
:cond_de
const/4 v0, 0x0

invoke-virtual {p3, v0}, Landroid/os/Parcel;->writeInt(I)V

goto :goto_d5

.line 148
.end local v1 #_arg0:Lcom/android/internal/statusbar/IStatusBar;
.end local v2 #_arg1:Lcom/android/internal/statusbar/StatusBarIconList;
.end local v7 #_arg2:Ljava/util/List;,"Ljava/util/List<Landroid/os/IBinder;>;"
.end local v8 #_arg3:Ljava/util/List;,"Ljava/util/List<Lcom/android/internal/statusbar/StatusBarNotification;>;"
:sswitch_e3
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 149
invoke-virtual {p0}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->onPanelRevealed()V

.line 150
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 151
const/4 v0, 0x1

goto/16 :goto_7

.line 155
:sswitch_f1
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 157
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v1

.line 159
.local v1, _arg0:Ljava/lang/String;
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v2

.line 161
.local v2, _arg1:Ljava/lang/String;
invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I

move-result v3

.line 162
.restart local v3 #_arg2:I
invoke-virtual {p0, v1, v2, v3}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->onNotificationClick(Ljava/lang/String;Ljava/lang/String;I)V

.line 163
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 164
const/4 v0, 0x1

goto/16 :goto_7

.line 168
.end local v1 #_arg0:Ljava/lang/String;
.end local v2 #_arg1:Ljava/lang/String;
.end local v3 #_arg2:I
:sswitch_10b
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 170
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v1

.line 172
.restart local v1 #_arg0:Ljava/lang/String;
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v2

.line 174
.restart local v2 #_arg1:Ljava/lang/String;
invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I

move-result v3

.line 176
.restart local v3 #_arg2:I
invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I

move-result v4

.line 178
.restart local v4 #_arg3:I
invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I

move-result v5

.line 180
.local v5, _arg4:I
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v6

.local v6, _arg5:Ljava/lang/String;
move-object v0, p0

.line 181
invoke-virtual/range {v0 .. v6}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->onNotificationError(Ljava/lang/String;Ljava/lang/String;IIILjava/lang/String;)V

.line 182
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 183
const/4 v0, 0x1

goto/16 :goto_7

.line 187
.end local v1 #_arg0:Ljava/lang/String;
.end local v2 #_arg1:Ljava/lang/String;
.end local v3 #_arg2:I
.end local v4 #_arg3:I
.end local v5 #_arg4:I
.end local v6 #_arg5:Ljava/lang/String;
:sswitch_132
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 188
invoke-virtual {p0}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->onClearAllNotifications()V

.line 189
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 190
const/4 v0, 0x1

goto/16 :goto_7

.end local v1 #_arg0:Ljava/lang/String;
.end local v2 #_arg1:Ljava/lang/String;
.end local v3 #_arg2:I
:sswitch_140
const-string v0, "com.android.internal.statusbar.IStatusBarService"

invoke-virtual {p2, v0}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V

.line 177
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v1

.line 178
.restart local v1 #_arg0:Ljava/lang/String;
invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;

move-result-object v2

.line 179
.restart local v2 #_arg1:Ljava/lang/String;
invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I

move-result v3

.line 180
.restart local v3 #_arg2:I
invoke-virtual {p0, v1, v2, v3}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->onNotificationClear(Ljava/lang/String;Ljava/lang/String;I)V

.line 181
invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V

.line 182
const/4 v0, 0x1

goto/16 :goto_7

.line 39
:sswitch_data_15a
.sparse-switch
0x1 -> :sswitch_f
0x2 -> :sswitch_1c
0x3 -> :sswitch_29
0x4 -> :sswitch_42
0x5 -> :sswitch_5f
0x6 -> :sswitch_7b
0x7 -> :sswitch_8d
0x8 -> :sswitch_9b
0x9 -> :sswitch_a9
0xa -> :sswitch_e3
0xb -> :sswitch_f1
0xc -> :sswitch_10b
0xd -> :sswitch_132
0xe -> :sswitch_140
0x5f4e5446 -> :sswitch_8
.end sparse-switch
.end method

IStatusBarService.smali is only add one function.

Thanks! :)