[PORT][CM12.1/AOSP 5.1/STOCK 5.1] Xperia Z5 SystemUI And Particle Effect Lockscreen

Search This thread

levone1

Senior Member
Dec 28, 2014
3,827
1,478
Thanks my friend :good: but before proceeding with your instructions i am running cm13 6.0.1 do you think this z5 ui will work ?

I haven't heard of anyone doing it on MM yet, (but I haven't followed the thread recently). Op says it's for LP. Make a backup and try it out. Either way, deodexing is a good idea.
 

gundam2k

Senior Member
Apr 12, 2015
58
2
Superuser MOD disables the signature verification for all apps. After using this MOD you can install apps with different signature!:D

Requirements:-
  • Services.jar from your device. It's located in system/framework/
  • Apktool or some similar software.
  • Decompiling-Recompiling Knowledge.
  • Notepad++ for Editing XMLs.
  • Working brain and patience!!:D
STEP 1- Decompile services.jar using apktool.
STEP 2- Go to \smali\com\android\server\pm\
STEP 3- Find the file named PackageManagerService.smali and open it using Notepad++
STEP 4- Now Find this method:-
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
    .locals 11
    .param p0, "s1"    # [Landroid/content/pm/Signature;
    .param p1, "s2"    # [Landroid/content/pm/Signature;

    .prologue
    const/4 v6, 0x1

    const/4 v8, -0x3

    const/4 v7, 0x0

    .line 2955
    if-nez p0, :cond_1

    .line 2956
    if-nez p1, :cond_0

    .line 2988
    :goto_0
    return v6

    .line 2956
    :cond_0
    const/4 v6, -0x1

    goto :goto_0

    .line 2961
    :cond_1
    if-nez p1, :cond_2

    .line 2962
    const/4 v6, -0x2

    goto :goto_0

    .line 2965
    :cond_2
    array-length v9, p0

    array-length v10, p1

    if-eq v9, v10, :cond_3

    move v6, v8

    .line 2966
    goto :goto_0

    .line 2970
    :cond_3
    array-length v9, p0

    if-ne v9, v6, :cond_5

    .line 2971
    aget-object v6, p0, v7

    aget-object v9, p1, v7

    invoke-virtual {v6, v9}, Landroid/content/pm/Signature;->equals(Ljava/lang/Object;)Z

    move-result v6

    if-eqz v6, :cond_4

    move v6, v7

    goto :goto_0

    :cond_4
    move v6, v8

    goto :goto_0

    .line 2976
    :cond_5
    new-instance v3, Ljava/util/HashSet;

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

    .line 2977
    .local v3, "set1":Ljava/util/HashSet;, "Ljava/util/HashSet<Landroid/content/pm/Signature;>;"
    move-object v0, p0

    .local v0, "arr$":[Landroid/content/pm/Signature;
    array-length v2, v0

    .local v2, "len$":I
    const/4 v1, 0x0

    .local v1, "i$":I
    :goto_1
    if-ge v1, v2, :cond_6

    aget-object v5, v0, v1

    .line 2978
    .local v5, "sig":Landroid/content/pm/Signature;
    invoke-virtual {v3, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z

    .line 2977
    add-int/lit8 v1, v1, 0x1

    goto :goto_1

    .line 2980
    .end local v5    # "sig":Landroid/content/pm/Signature;
    :cond_6
    new-instance v4, Ljava/util/HashSet;

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

    .line 2981
    .local v4, "set2":Ljava/util/HashSet;, "Ljava/util/HashSet<Landroid/content/pm/Signature;>;"
    move-object v0, p1

    array-length v2, v0

    const/4 v1, 0x0

    :goto_2
    if-ge v1, v2, :cond_7

    aget-object v5, v0, v1

    .line 2982
    .restart local v5    # "sig":Landroid/content/pm/Signature;
    invoke-virtual {v4, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z

    .line 2981
    add-int/lit8 v1, v1, 0x1

    goto :goto_2

    .line 2985
    .end local v5    # "sig":Landroid/content/pm/Signature;
    :cond_7
    invoke-virtual {v3, v4}, Ljava/util/HashSet;->equals(Ljava/lang/Object;)Z

    move-result v6

    if-eqz v6, :cond_8

    move v6, v7

    .line 2986
    goto :goto_0

    :cond_8
    move v6, v8

    .line 2988
    goto :goto_0
.end method
NOTE- It doesn't matter if some of your code in above method differs than this code. Just go to next step!
STEP 5- Shrink the above code to:-
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
    .locals 11
    .param p0, "s1"    # [Landroid/content/pm/Signature;
    .param p1, "s2"    # [Landroid/content/pm/Signature;

    .prologue
    const/4 v7, 0x0
	
    .line 2934
    return v7
.end method
STEP 6- Now Find the lines given below:-[Hint-In search box type Cannot to find faster!]
Code:
invoke-static {v4, v0}, Lcom/android/server/pm/PackageManagerService;->compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I

    move-result v4

    if-nez v4, :cond_c

    .line 5572
    new-instance v4, Lcom/android/server/pm/PackageManagerException;

    const/16 v5, -0x13

    const-string v11, "Cannot install platform packages to user storage!"

    invoke-direct {v4, v5, v11}, Lcom/android/server/pm/PackageManagerException;-><init>(ILjava/lang/String;)V

    throw v4

    .line 5578
    .end local v89    # "s1":[Landroid/content/pm/Signature;
    :cond_c
STEP 7- Make changes as per the Red line only:-
Code:
invoke-static {v4, v0}, Lcom/android/server/pm/PackageManagerService;->compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I

    move-result v4

    [B][COLOR="Red"]if-eqz[/COLOR][/B] v4, :cond_c

    .line 5572
    new-instance v4, Lcom/android/server/pm/PackageManagerException;

    const/16 v5, -0x13

    const-string v11, "Cannot install platform packages to user storage!"

    invoke-direct {v4, v5, v11}, Lcom/android/server/pm/PackageManagerException;-><init>(ILjava/lang/String;)V

    throw v4

    .line 5578
    .end local v89    # "s1":[Landroid/content/pm/Signature;
    :cond_c
STEP 8- Save and recompile your services.jar..Set the permissions to rw-r--r-- and push it to system/framework/
STEP 9- Done! Reboot your device.:D

DON'T FORGET TO HIT THANKS BUTTON!!:good::good::D

guys i am on cm12.1 why my code is different :

.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
.registers 13
.parameter "s1"
.parameter "s2"

.prologue

const/4 v7, 0x0

.line 2844
if-nez p0, :cond_a

.line 2845
if-nez p1, :cond_8

.line 2877
:goto_7
return v6

.line 2845
:cond_8
const/4 v6, -0x1

goto :goto_7

.line 2850
:cond_a
if-nez p1, :cond_e

.line 2851
const/4 v6, -0x2

goto :goto_7

.line 2854
:cond_e
array-length v9, p0

array-length v10, p1

if-eq v9, v10, :cond_14

move v6, v8

.line 2855
goto :goto_7

.line 2859
:cond_14
array-length v9, p0

if-ne v9, v6, :cond_25

.line 2860
aget-object v6, p0, v7

aget-object v9, p1, v7

invoke-virtual {v6, v9}, Landroid/content/pm/Signature;->equals(Ljava/lang/Object;)Z

move-result v6

if-eqz v6, :cond_23

move v6, v7

goto :goto_7

:cond_23
move v6, v8

goto :goto_7

.line 2865
:cond_25
new-instance v3, Ljava/util/HashSet;

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

.line 2866
.local v3, set1:Ljava/util/HashSet;,"Ljava/util/HashSet<Landroid/content/pm/Signature;>;"
move-object v0, p0

.local v0, arr$:[Landroid/content/pm/Signature;
array-length v2, v0

.local v2, len$:I
const/4 v1, 0x0

.local v1, i$:I
:goto_2d
if-ge v1, v2, :cond_37

aget-object v5, v0, v1

.line 2867
.local v5, sig:Landroid/content/pm/Signature;
invoke-virtual {v3, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z

.line 2866
add-int/lit8 v1, v1, 0x1

goto :goto_2d

.line 2869
.end local v5 #sig:Landroid/content/pm/Signature;
:cond_37
new-instance v4, Ljava/util/HashSet;

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

.line 2870
.local v4, set2:Ljava/util/HashSet;,"Ljava/util/HashSet<Landroid/content/pm/Signature;>;"
move-object v0, p1

array-length v2, v0

const/4 v1, 0x0

:goto_3f
if-ge v1, v2, :cond_49

aget-object v5, v0, v1

.line 2871
.restart local v5 #sig:Landroid/content/pm/Signature;
invoke-virtual {v4, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z

.line 2870
add-int/lit8 v1, v1, 0x1

goto :goto_3f

.line 2874
.end local v5 #sig:Landroid/content/pm/Signature;
:cond_49
invoke-virtual {v3, v4}, Ljava/util/HashSet;->equals(Ljava/lang/Object;)Z

move-result v6

if-eqz v6, :cond_51

move v6, v7

.line 2875
goto :goto_7

:cond_51
move v6, v8

.line 2877
goto :goto_7
.end method

---------- Post added at 09:07 AM ---------- Previous post was at 09:04 AM ----------

Superuser MOD disables the signature verification for all apps. After using this MOD you can install apps with different signature!:D

Requirements:-
  • Services.jar from your device. It's located in system/framework/
  • Apktool or some similar software.
  • Decompiling-Recompiling Knowledge.
  • Notepad++ for Editing XMLs.
  • Working brain and patience!!:D
STEP 1- Decompile services.jar using apktool.
STEP 2- Go to \smali\com\android\server\pm\
STEP 3- Find the file named PackageManagerService.smali and open it using Notepad++
STEP 4- Now Find this method:-
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
    .locals 11
    .param p0, "s1"    # [Landroid/content/pm/Signature;
    .param p1, "s2"    # [Landroid/content/pm/Signature;

    .prologue
    const/4 v6, 0x1

    const/4 v8, -0x3

    const/4 v7, 0x0

    .line 2955
    if-nez p0, :cond_1

    .line 2956
    if-nez p1, :cond_0

    .line 2988
    :goto_0
    return v6

    .line 2956
    :cond_0
    const/4 v6, -0x1

    goto :goto_0

    .line 2961
    :cond_1
    if-nez p1, :cond_2

    .line 2962
    const/4 v6, -0x2

    goto :goto_0

    .line 2965
    :cond_2
    array-length v9, p0

    array-length v10, p1

    if-eq v9, v10, :cond_3

    move v6, v8

    .line 2966
    goto :goto_0

    .line 2970
    :cond_3
    array-length v9, p0

    if-ne v9, v6, :cond_5

    .line 2971
    aget-object v6, p0, v7

    aget-object v9, p1, v7

    invoke-virtual {v6, v9}, Landroid/content/pm/Signature;->equals(Ljava/lang/Object;)Z

    move-result v6

    if-eqz v6, :cond_4

    move v6, v7

    goto :goto_0

    :cond_4
    move v6, v8

    goto :goto_0

    .line 2976
    :cond_5
    new-instance v3, Ljava/util/HashSet;

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

    .line 2977
    .local v3, "set1":Ljava/util/HashSet;, "Ljava/util/HashSet<Landroid/content/pm/Signature;>;"
    move-object v0, p0

    .local v0, "arr$":[Landroid/content/pm/Signature;
    array-length v2, v0

    .local v2, "len$":I
    const/4 v1, 0x0

    .local v1, "i$":I
    :goto_1
    if-ge v1, v2, :cond_6

    aget-object v5, v0, v1

    .line 2978
    .local v5, "sig":Landroid/content/pm/Signature;
    invoke-virtual {v3, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z

    .line 2977
    add-int/lit8 v1, v1, 0x1

    goto :goto_1

    .line 2980
    .end local v5    # "sig":Landroid/content/pm/Signature;
    :cond_6
    new-instance v4, Ljava/util/HashSet;

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

    .line 2981
    .local v4, "set2":Ljava/util/HashSet;, "Ljava/util/HashSet<Landroid/content/pm/Signature;>;"
    move-object v0, p1

    array-length v2, v0

    const/4 v1, 0x0

    :goto_2
    if-ge v1, v2, :cond_7

    aget-object v5, v0, v1

    .line 2982
    .restart local v5    # "sig":Landroid/content/pm/Signature;
    invoke-virtual {v4, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z

    .line 2981
    add-int/lit8 v1, v1, 0x1

    goto :goto_2

    .line 2985
    .end local v5    # "sig":Landroid/content/pm/Signature;
    :cond_7
    invoke-virtual {v3, v4}, Ljava/util/HashSet;->equals(Ljava/lang/Object;)Z

    move-result v6

    if-eqz v6, :cond_8

    move v6, v7

    .line 2986
    goto :goto_0

    :cond_8
    move v6, v8

    .line 2988
    goto :goto_0
.end method
NOTE- It doesn't matter if some of your code in above method differs than this code. Just go to next step!
STEP 5- Shrink the above code to:-
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
    .locals 11
    .param p0, "s1"    # [Landroid/content/pm/Signature;
    .param p1, "s2"    # [Landroid/content/pm/Signature;

    .prologue
    const/4 v7, 0x0
	
    .line 2934
    return v7
.end method
STEP 6- Now Find the lines given below:-[Hint-In search box type Cannot to find faster!]
Code:
invoke-static {v4, v0}, Lcom/android/server/pm/PackageManagerService;->compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I

    move-result v4

    if-nez v4, :cond_c

    .line 5572
    new-instance v4, Lcom/android/server/pm/PackageManagerException;

    const/16 v5, -0x13

    const-string v11, "Cannot install platform packages to user storage!"

    invoke-direct {v4, v5, v11}, Lcom/android/server/pm/PackageManagerException;-><init>(ILjava/lang/String;)V

    throw v4

    .line 5578
    .end local v89    # "s1":[Landroid/content/pm/Signature;
    :cond_c
STEP 7- Make changes as per the Red line only:-
Code:
invoke-static {v4, v0}, Lcom/android/server/pm/PackageManagerService;->compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I

    move-result v4

    [B][COLOR="Red"]if-eqz[/COLOR][/B] v4, :cond_c

    .line 5572
    new-instance v4, Lcom/android/server/pm/PackageManagerException;

    const/16 v5, -0x13

    const-string v11, "Cannot install platform packages to user storage!"

    invoke-direct {v4, v5, v11}, Lcom/android/server/pm/PackageManagerException;-><init>(ILjava/lang/String;)V

    throw v4

    .line 5578
    .end local v89    # "s1":[Landroid/content/pm/Signature;
    :cond_c
STEP 8- Save and recompile your services.jar..Set the permissions to rw-r--r-- and push it to system/framework/
STEP 9- Done! Reboot your device.:D

DON'T FORGET TO HIT THANKS BUTTON!!:good::good::D

and why .line 2934 ?

.locals 11
.param p0, "s1" # [Landroid/content/pm/Signature;
.param p1, "s2" # [Landroid/content/pm/Signature;

.prologue
const/4 v7, 0x0

.line 2934
return v7
.end method
 

levone1

Senior Member
Dec 28, 2014
3,827
1,478
Hey guys! Here's my new port of Official Xperia Z5 Lollipop SystemUI and Particle Effect Lockscreen for Xperia as well as Non-Xperia devices running on CM12.1,AOSP 5.1 as well as Sony Stock 5.1. Possibly working on CM and AOSP variants such as AICP, Resurrection Remix etc.
DON'T FORGET TO HIT THANKS BUTTON!!:good::good::D


Any chance of a guide for particle effect on MM AOSP? Flow wallpaper and home work fine, but obviously I can't flash this system ui. How can I get the lockscreen effect?
 

alivisa

Member
Mar 26, 2016
47
7
Malayer
Hi
I followed the instructions as you said, but when I flash it and reboot my device system ui stops working.
LG d690 CM 12.1
(i tried another mod "Z3" and it worked properly)
 

spikekav

Senior Member
Jan 17, 2015
65
18
Hope the nougats Xperia SystemUI can be ported to devices running Los and AOSP variants.It seems since MM was out there is no such kind of port.
 

Saelfos Emaka

Senior Member
Jan 29, 2015
184
114
Syria
On my Lollipop Xperia m2 it works but when unlocking the phone systemUi restarts and back again to lockscreen, the only way to unlock is with camera shortcut on lockscreen..
Any solution?
 

levone1

Senior Member
Dec 28, 2014
3,827
1,478
Don't know if anyone is interested, but particle effect lock screen working on my Xc, stock 7.1.1. Just download the zip in the op, and copy the 'experience flow wallpaper' folder to /system/app, (the whole folder - you'll have to delete the one that's there, so make a backup if you want). Reboot, and set the wallpaper as Xperia live wallpaper.
 

Attachments

  • Screenshot_20180126-081316.png
    Screenshot_20180126-081316.png
    149.6 KB · Views: 119

Top Liked Posts

  • There are no posts matching your filters.
  • 86
    Introduction:-
    Hey guys! Here's my new port of Official Xperia Z5 Lollipop SystemUI and Particle Effect Lockscreen for Xperia as well as Non-Xperia devices running on CM12.1,AOSP 5.1 as well as Sony Stock 5.1. Possibly working on CM and AOSP variants such as AICP, Resurrection Remix etc. [TESTING REQUIRED!] I have also added Xperia Z5 Home and Z5 Media Sounds in this MOD. :D Hope you guys like it!;)

    POST 1- Introduction And Features
    POST 2- Screenshots
    POST 3- Downloads And Instructions
    POST 4- Guide To Create Superuser MOD


    Disclaimer:-
    * Your warranty is now void.
    * I am not responsible for bricked devices, dead SD cards,thermonuclear war, or you getting fired because the alarm app failed!!
    *Please make nandroid backup before flashing this as a precaution!
    *Try this MOD at your own risk!
    Features:-
    • Drag And Drop To Add Or Remove Quick Settings
    • Added New Animations
    • Added New Expandable Sound Panel
    • Particle Effect Lockscreen With 3 Different Clocks On Lockscreen
    • Xperia Live Wallpaper
    • Xperia Z5 Home Launcher
    • Xperia Z5 Media Sounds

    NOTE- DO NOT USE OR SHARE ANY PART OF MY WORK IN ANY ROM OR ANY MOD WITHOUT MY PERMISSION!!

    Credits:-

    DON'T FORGET TO HIT THANKS BUTTON!!:good::good::D
    71
    Screenshots

    Screenshots:-
    • Xperia Z5 SystemUI
    attachment.php


    • Xperia Particle Effect Lockscreen
    attachment.php

    DON'T FORGET TO HIT THANKS BUTTON!!:good::good::D
    52
    Downloads And Instructions

    Instructions:-

    • Make sure you have Superuser MOD installed.
    • There are 2 ways of doing Superuser MOD.
      1. Using the guide given in next post. [Recommended for CM and AOSP!]
      2. If you have Xposed framework installed, then use Serajr Xperia Xposed LP module and in system option,click on Superuser MOD.
    • Download Xperia Z5 Lollipop System Apps Port Zip.
    • Go to Recovery.
    • Flash the downloaded zip.
    • Wipe Cache partition and ART/Dalvik-cache.
    • Reboot your phone.
    • Done!Enjoy The New Looks!!;)
    Download:-

    Bugs:-

    • Some of the Quick Settings tiles are not working.
    • PIN,Pattern and Password locks are not working. (3x3 pattern lock works fine.)
    NOTE:- To get Particle Effect Lockscreen, just set Xperia Live Wallpaper as your default wallpaper.:D

    DON'T FORGET TO HIT THANKS BUTTON!!:good::good::D
    43
    Guide to create Superuser MOD

    Superuser MOD disables the signature verification for all apps. After using this MOD you can install apps with different signature!:D

    Requirements:-
    • Services.jar from your device. It's located in system/framework/
    • Apktool or some similar software.
    • Decompiling-Recompiling Knowledge.
    • Notepad++ for Editing XMLs.
    • Working brain and patience!!:D
    STEP 1- Decompile services.jar using apktool.
    STEP 2- Go to \smali\com\android\server\pm\
    STEP 3- Find the file named PackageManagerService.smali and open it using Notepad++
    STEP 4- Now Find this method:-
    Code:
    .method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
        .locals 11
        .param p0, "s1"    # [Landroid/content/pm/Signature;
        .param p1, "s2"    # [Landroid/content/pm/Signature;
    
        .prologue
        const/4 v6, 0x1
    
        const/4 v8, -0x3
    
        const/4 v7, 0x0
    
        .line 2955
        if-nez p0, :cond_1
    
        .line 2956
        if-nez p1, :cond_0
    
        .line 2988
        :goto_0
        return v6
    
        .line 2956
        :cond_0
        const/4 v6, -0x1
    
        goto :goto_0
    
        .line 2961
        :cond_1
        if-nez p1, :cond_2
    
        .line 2962
        const/4 v6, -0x2
    
        goto :goto_0
    
        .line 2965
        :cond_2
        array-length v9, p0
    
        array-length v10, p1
    
        if-eq v9, v10, :cond_3
    
        move v6, v8
    
        .line 2966
        goto :goto_0
    
        .line 2970
        :cond_3
        array-length v9, p0
    
        if-ne v9, v6, :cond_5
    
        .line 2971
        aget-object v6, p0, v7
    
        aget-object v9, p1, v7
    
        invoke-virtual {v6, v9}, Landroid/content/pm/Signature;->equals(Ljava/lang/Object;)Z
    
        move-result v6
    
        if-eqz v6, :cond_4
    
        move v6, v7
    
        goto :goto_0
    
        :cond_4
        move v6, v8
    
        goto :goto_0
    
        .line 2976
        :cond_5
        new-instance v3, Ljava/util/HashSet;
    
        invoke-direct {v3}, Ljava/util/HashSet;-><init>()V
    
        .line 2977
        .local v3, "set1":Ljava/util/HashSet;, "Ljava/util/HashSet<Landroid/content/pm/Signature;>;"
        move-object v0, p0
    
        .local v0, "arr$":[Landroid/content/pm/Signature;
        array-length v2, v0
    
        .local v2, "len$":I
        const/4 v1, 0x0
    
        .local v1, "i$":I
        :goto_1
        if-ge v1, v2, :cond_6
    
        aget-object v5, v0, v1
    
        .line 2978
        .local v5, "sig":Landroid/content/pm/Signature;
        invoke-virtual {v3, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
    
        .line 2977
        add-int/lit8 v1, v1, 0x1
    
        goto :goto_1
    
        .line 2980
        .end local v5    # "sig":Landroid/content/pm/Signature;
        :cond_6
        new-instance v4, Ljava/util/HashSet;
    
        invoke-direct {v4}, Ljava/util/HashSet;-><init>()V
    
        .line 2981
        .local v4, "set2":Ljava/util/HashSet;, "Ljava/util/HashSet<Landroid/content/pm/Signature;>;"
        move-object v0, p1
    
        array-length v2, v0
    
        const/4 v1, 0x0
    
        :goto_2
        if-ge v1, v2, :cond_7
    
        aget-object v5, v0, v1
    
        .line 2982
        .restart local v5    # "sig":Landroid/content/pm/Signature;
        invoke-virtual {v4, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
    
        .line 2981
        add-int/lit8 v1, v1, 0x1
    
        goto :goto_2
    
        .line 2985
        .end local v5    # "sig":Landroid/content/pm/Signature;
        :cond_7
        invoke-virtual {v3, v4}, Ljava/util/HashSet;->equals(Ljava/lang/Object;)Z
    
        move-result v6
    
        if-eqz v6, :cond_8
    
        move v6, v7
    
        .line 2986
        goto :goto_0
    
        :cond_8
        move v6, v8
    
        .line 2988
        goto :goto_0
    .end method
    NOTE- It doesn't matter if some of your code in above method differs than this code. Just go to next step!
    STEP 5- Shrink the above code to:-
    Code:
    .method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
        .locals 11
        .param p0, "s1"    # [Landroid/content/pm/Signature;
        .param p1, "s2"    # [Landroid/content/pm/Signature;
    
        .prologue
        const/4 v7, 0x0
    	
        .line 2934
        return v7
    .end method
    STEP 6- Now Find the lines given below:-[Hint-In search box type Cannot to find faster!]
    Code:
    invoke-static {v4, v0}, Lcom/android/server/pm/PackageManagerService;->compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
    
        move-result v4
    
        if-nez v4, :cond_c
    
        .line 5572
        new-instance v4, Lcom/android/server/pm/PackageManagerException;
    
        const/16 v5, -0x13
    
        const-string v11, "Cannot install platform packages to user storage!"
    
        invoke-direct {v4, v5, v11}, Lcom/android/server/pm/PackageManagerException;-><init>(ILjava/lang/String;)V
    
        throw v4
    
        .line 5578
        .end local v89    # "s1":[Landroid/content/pm/Signature;
        :cond_c
    STEP 7- Make changes as per the Red line only:-
    Code:
    invoke-static {v4, v0}, Lcom/android/server/pm/PackageManagerService;->compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
    
        move-result v4
    
        [B][COLOR="Red"]if-eqz[/COLOR][/B] v4, :cond_c
    
        .line 5572
        new-instance v4, Lcom/android/server/pm/PackageManagerException;
    
        const/16 v5, -0x13
    
        const-string v11, "Cannot install platform packages to user storage!"
    
        invoke-direct {v4, v5, v11}, Lcom/android/server/pm/PackageManagerException;-><init>(ILjava/lang/String;)V
    
        throw v4
    
        .line 5578
        .end local v89    # "s1":[Landroid/content/pm/Signature;
        :cond_c
    STEP 8- Save and recompile your services.jar..Set the permissions to rw-r--r-- and push it to system/framework/
    STEP 9- Done! Reboot your device.:D

    DON'T FORGET TO HIT THANKS BUTTON!!:good::good::D
    4
    SystemUI without need of Superuser MOD

    well after installing manually the systemUi.apk you modified in the last post i still have UI fc here log once again :D

    LOGCAT

    @Kianush how did you get systemUI to work? I'm on Xperia sl with chroma 5.1.1
    Try this SystemUI- Manually push into system/priv-app/SystemUI..
    PD: I installed Ibanez7 Walkman port (3.5) and it bootloops with this SystemUI, with Stock CM12.1, don't :(
    It might be conflicting with the Superuser MOD..Try this SystemUI- Superuser MOD not needed for this-