Sunday 31 July 2016

[Guide][tut] [MM] HeadsUp timeOut / enable / disable settings



Today i am presenting HeadsUp tut

For LP click here

This is For MM only Devices

All you need is Patience
deodexed SystemUI.apk


1. Decompile SystemUI.apk

2. Now Open smali/com/android/systemui/statusbar/policy/HeadsUpManager.smali

In this find this line:


Code:


# instance fields

Add the following lines below this:


Code:


.field private mDefaultHeadsUpNotificationDecay:I

3. Then find the below line and remove delete the part that says “final”:


Code:


.field private final mHeadsUpNotificationDecay:I

So it look like


Code:


.field private mHeadsUpNotificationDecay:I

4. Find this line:

Code:


# direct methods

5. Add these two entire methods below this:


Code:


.method static synthetic -get1(Lcom/android/systemui/statusbar/policy/HeadsUpManager;)Landroid/content/Context;
    .locals 1

    iget-object v0, p0, Lcom/android/systemui/statusbar/policy/HeadsUpManager;->mContext:Landroid/content/Context;

    return-object v0
.end method

.method static synthetic -set0(Lcom/android/systemui/statusbar/policy/HeadsUpManager;I)I
    .locals 0

    iput p1, p0, Lcom/android/systemui/statusbar/policy/HeadsUpManager;->mHeadsUpNotificationDecay:I

    return p1
.end method


6. Find this line:

Code:


    iput v1, p0, Lcom/android/systemui/statusbar/policy/HeadsUpManager;->mMinimumDisplayTime:I

Below this, you will see these two lines:


Code:


    const v1, 0x7f0d0012

    invoke-virtual {v0, v1}, Landroid/content/res/Resources;->getInteger(I)I


Delete these two lines and replace them with the following code:


Code:


    iget-object v1, p0, Lcom/android/systemui/statusbar/policy/HeadsUpManager;->mContext:Landroid/content/Context;

    invoke-virtual {v1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v1

    const-string/jumbo v2, "heads_up_timeout"

    iget-object v3, p0, Lcom/android/systemui/statusbar/policy/HeadsUpManager;->mContext:Landroid/content/Context;

    invoke-virtual {v3}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v3

    const v4, 0x7f0d0012 #<public type="integer" name="heads_up_notification_decay" id="0x7f0d0012" />

    invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getInteger(I)I

    move-result v3

    const/4 v4, -0x3

    invoke-static {v1, v2, v3, v4}, Landroid/provider/Settings$System;->getIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;II)I


7. Save it and close

8. Now open smali/com/android/systemui/statusbar/policy/HeadsUpManager$HeadsUpEntry.smali

9. Find the following line:


Code:


.method public updateEntry()V

Directly below this line you will find this line:

Code:


    .locals 10

10. Take that line and replace it with this entire block of code (make sure to replace the commented public ID):

Code:


    .locals 11

    iget-object v6, p0, Lcom/android/systemui/statusbar/policy/HeadsUpManager$HeadsUpEntry;->this:Lcom/android/systemui/statusbar/policy/HeadsUpManager;

    iget-object v7, p0, Lcom/android/systemui/statusbar/policy/HeadsUpManager$HeadsUpEntry;->this:Lcom/android/systemui/statusbar/policy/HeadsUpManager;

    invoke-static {v7}, Lcom/android/systemui/statusbar/policy/HeadsUpManager;->-get1(Lcom/android/systemui/statusbar/policy/HeadsUpManager;)Landroid/content/Context;

    move-result-object v7

    invoke-virtual {v7}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v7

    const-string/jumbo v8, "heads_up_timeout"

    iget-object v9, p0, Lcom/android/systemui/statusbar/policy/HeadsUpManager$HeadsUpEntry;->this:Lcom/android/systemui/statusbar/policy/HeadsUpManager;

    invoke-static {v9}, Lcom/android/systemui/statusbar/policy/HeadsUpManager;->-get1(Lcom/android/systemui/statusbar/policy/HeadsUpManager;)Landroid/content/Context;

    move-result-object v9

    invoke-virtual {v9}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v9

    const v10, 0x7f0d0012 #<public type="integer" name="heads_up_notification_decay" id="0x7f0d0012" />

    invoke-virtual {v9, v10}, Landroid/content/res/Resources;->getInteger(I)I

    move-result v9

    const/4 v10, -0x3

    invoke-static {v7, v8, v9, v10}, Landroid/provider/Settings$System;->getIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;II)I

    move-result v7

    invoke-static {v6, v7}, Lcom/android/systemui/statusbar/policy/HeadsUpManager;->-set0(Lcom/android/systemui/statusbar/policy/HeadsUpManager;I)I


11. Save, recompile, and replace

For setting Please go for Next post

Thanks to @Bloodlvst for this tut possible ;)
my respect to you ;)



No comments:

Post a Comment