Monday, 28 December 2015

Transparent Status Bar In 4.2+ , 4.4 ,4.4.2

Materials Required;

1) Apktool 1.5.2
2) Notepad ++
3) android.policy.jar
4) Mind.apk :D

Procedure;

1) Decompile android.policy.jar

2) Now goto smali/com/android/internal/policy/impl

3) Open PhoneWindowManager.smali using Notepad++

4) Search for this method

.method public getSystemDecorLayerLw()I
    .locals 1

    .prologue
    .line ????
    iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mStatusBar:Landroid/view/WindowManagerPolicy$WindowState;

    if-eqz v0, :cond_0

    iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mStatusBar:Landroid/view/WindowManagerPolicy$WindowState;

    invoke-interface {v0}, Landroid/view/WindowManagerPolicy$WindowState;->getSurfaceLayer()I

    move-result v0

    .line 3207
    :goto_0
    return v0

    .line 3206
    :cond_0
    iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mNavigationBar:Landroid/view/WindowManagerPolicy$WindowState;

    if-eqz v0, :cond_1

    iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mNavigationBar:Landroid/view/WindowManagerPolicy$WindowState;

    invoke-interface {v0}, Landroid/view/WindowManagerPolicy$WindowState;->getSurfaceLayer()I

    move-result v0

    goto :goto_0

    .line 3207
    :cond_1
    const/4 v0, 0x0

    goto :goto_0
.end method

5) Replace the whole method by this method

.method public getSystemDecorLayerLw()I
    .locals 1

    .prologue
    .line ????
const/4 v0, 0x0

    return v0
.end method

Note:- replace the word ???? in the above by the line number which appears in original method because line number is not same for every device.

6) Recompile , sign and push the file to system/framework folder and set its permission to rw--rr and reboot your device

The Guide is tested in Jb 4.2 and kitkat devices

No comments:

Post a Comment