[Guide]How to add Lollipop Easter Egg in your Rom for updated to v2(For GingerBread - Xiaomi Redmi 1S

Hey Guys, I am back with another guide and this time i will show you how to add Lollipop Easter Egg in your ROM.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Disclaimer: I and XDA are not responsible for the damage of your phone. Take necessary backup if you are indoubt.
Requirements:
framework2.jar from your ROM (for kitkat roms)
framework.jar for gb+ Rom
Know how to decompile APK
Easter Egg app attached below
Let's start
1. Decompile framework2.jar
2. Go to smali/com/android/internal/app
and open PlatLogoActivity.smali
3. Select all and replace it with this code:
Code:
.class public Lcom/android/internal/app/PlatLogoActivity;
.super Landroid/app/Activity;
.source "PlatLogoActivity.java"
# direct methods
.method public constructor <init>()V
.registers 1
.prologue
.line 12
invoke-direct {p0}, Landroid/app/Activity;-><init>()V
return-void
.end method
# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
.registers 7
.parameter "savedInstanceState"
.prologue
.line 16
invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
.line 18
new-instance v1, Landroid/content/Intent;
const-string v2, "android.intent.action.MAIN"
invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
.line 19
.local v1, intent:Landroid/content/Intent;
new-instance v2, Landroid/content/ComponentName;
const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"
const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"
invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
.line 23
:try_start_16
invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
:try_end_19
.catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d
.line 39
:goto_19
invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V
.line 41
return-void
.line 31
:catch_1d
move-exception v0
.line 35
.local v0, e:Landroid/content/ActivityNotFoundException;
const-string v2, "First install that app Droidbuster told you to!"
const/4 v3, 0x0
invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;
move-result-object v2
invoke-virtual {v2}, Landroid/widget/Toast;->show()V
goto :goto_19
.end method
4. Recompile framework.jar
Push it into system/framework
Set correct permissions(rw-r--r--)
5. Install this app by me, it Contain important the Easter Egg code and that smali above redirects to it:
V1.2 Announced for GB
Change Log
Force close fixed while holding long on Platlogo:fingers-crossed:
size decreased
Some layout problem fixed
V2 Announced for GB
Change Log
Finally Fixed Color Issue fixed
Multiple Density Support no need to download Different apks For different density
More Crispy.
Size Decreased
​
Download For GingerBread Platform Device: Idpi , Mdpi , Hdpi , Xdpi​​Download For Ics+ Platform Device: Idpi , Mdpi , Hdpi , Xdpi
Download For GingerBread Platform Device V1.2: Idpi , Mdpi , Hdpi , Xdpi
Note = Random Color Change Feature not work on 2.3 platform But on ICs + device its working Like a charm
Download For GingerBread Platform Device V2 : Multiple Density Support
XDA:DevDB Information
Droidbuster lollipop Easter Egg, Theme for the All Devices
Download source code of Droidbuster_lollipop_platelogo_2.3+ :https://github.com/Droidbuster/Droidbuster_lollipop_Platelogo_2.3-Support
Download source code of Droidbuster_lollipop_Platelogo_3.0+ : https://github.com/Droidbuster/Droidbuster_lollipop_Platelogo_3.0-Support
Download source code of Droidbuster_lollipop_platelogo_2.3+ :https://github.com/Droidbuster/Droidbuster_lollipop_Platelogo_2.3-Support
Download source code of Droidbuster_lollipop_Platelogo_Finalversion 2.3+ : https://github.com/Droidbuster/Final-Version-Lollipop-Platelogo-GingerBread
Contributors
Droidbuster, m4rinko2, iamareebjamal, MuSaddiq
Version Information
Status: Stable
Current Stable Version: V2
Stable Release Date: 2015-05-16
Created 2015-01-25
Last Updated 2015-05-16

Wow! Thanks.
But as I and many don't know to decompile ROM, can you make this a flashable zip?

Decompile rom
surajdhanuki said:
Wow! Thanks.
But as I and many don't know to decompile ROM, can you make this a flashable zip?
Click to expand...
Click to collapse
Bro you want just empty flashable zip ?
or moded?

Thanks Bro @Droidbuster
I'll Surely Include Lollipop Easter Egg in The Next Edition of CrysTal ROM!

Droidbuster said:
Bro you want just empty flashable zip ?
or moded?
Click to expand...
Click to collapse
Hey bro I want the modded flashable zip so if I flash the file I'll get the easter egg.

surajdhanuki said:
Hey bro I want the modded flashable zip so if I flash the file I'll get the easter egg.
Click to expand...
Click to collapse
Bro tell me on which rom you because but i can only give only for single time rest you have to do by own

this does not seem to be rom dev related. plz move it in general or app section @zelendel

Droidbuster said:
Bro tell me on which rom you because but i can only give only for single time rest you have to do by own
Click to expand...
Click to collapse
Yeah..sure..Its only a matter of trying after all.
I'm at cm11 r16....with xcelerate kernel.

Success!
Droidbuster said:
Hey Guys, I am back with another guide and this time i will show you how to add Lollipop Easter Egg in your ROM.
Disclaimer: I and XDA are not responsible for the damage of your phone. Take necessary backup if you are indoubt.
Requirements:
framework.jar from your ROM
Know how to decompile APK
Easter Egg app attached below
Let's start
1. Decompile framework.jar
2. Go to smali/com/android/internal/app
and open PlatLogoActivity.smali
3. Select all and replace it with this code:
Code:
.class public Lcom/android/internal/app/PlatLogoActivity;
.super Landroid/app/Activity;
.source "PlatLogoActivity.java"
# direct methods
.method public constructor <init>()V
.registers 1
.prologue
.line 12
invoke-direct {p0}, Landroid/app/Activity;-><init>()V
return-void
.end method
# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
.registers 7
.parameter "savedInstanceState"
.prologue
.line 16
invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
.line 18
new-instance v1, Landroid/content/Intent;
const-string v2, "android.intent.action.MAIN"
invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
.line 19
.local v1, intent:Landroid/content/Intent;
new-instance v2, Landroid/content/ComponentName;
const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"
const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"
invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
.line 23
:try_start_16
invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
:try_end_19
.catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d
.line 39
:goto_19
invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V
.line 41
return-void
.line 31
:catch_1d
move-exception v0
.line 35
.local v0, e:Landroid/content/ActivityNotFoundException;
const-string v2, "First install that app Droidbuster told you to!"
const/4 v3, 0x0
invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;
move-result-object v2
invoke-virtual {v2}, Landroid/widget/Toast;->show()V
goto :goto_19
.end method
4. Recompile framework.jar
Push it into system/framework
Set correct permissions(rw-r--r--)
5. Install this app by me, it Contain important the Easter Egg code and that smali above redirects to it:
V1.2 Announced for GB
Change Log
Force close fixed while holding long on Platlogo:fingers-crossed:
size decreased
Some layout problem fixed
Download For GingerBread Platform Device: Idpi , Mdpi , Hdpi , Xdpi​​Download For Ics+ Platform Device: Idpi , Mdpi , Hdpi , Xdpi
Download For GingerBread Platform Device V1.2: Idpi , Mdpi , Hdpi , Xdpi
Note = Random Color Change Feature not work on 2.3 platform But on ICs + device its working Like a charm
XDA:DevDB Information
Droidbuster lollipop Easter Egg, Theme for the All Devices
Contributors
Droidbuster, m4rinko2, iamareebjamal, MuSaddiq
Version Information
Status: Stable
Current Stable Version: 1.0
Stable Release Date: 2015-01-25
Created 2015-01-25
Last Updated 2015-01-25
Click to expand...
Click to collapse
thanks bro

smali is not present inside framework.jar ? what can i do?
Rom : Cm11

[GUIDE][NOOBS] Adding Lollipop Easter Egg for 4.4+ ROM (CM11, PA, PAC-MAN, AOSP etc)
Hello all,
I rewrite this tutorial for Android 4.4+
Note you must have a deodexed ROM for this if you try on stock ROM.
I also have attached a flashable zip in the end that'll work for all users on any android version. GB, JB or KK
Let's begin
GUIDE
Tools we need for this are Notepad++, Jar editing tool (don't just use any apktool or you'll end up with smaling error) and your correct dpi resolution apk
Download the tool to decompile from here http://www.mediafire.com/download/h...l+-+baksmali+-+Signer+v3+Mixed+by+ibanez7.zip (thanks to @ibanez7) or this tool from here http://www.mediafire.com/download/yx8lswms7ocd4oh/Apk+Changer+forked+by+gamzekal+11.3.2014.exe (thanks to @gamzekal)
1) Pull out framework2.jar from your device. Make sure you have necessary adb files or minimal-sdk package (adb files). If you dont have then download from below adb.zip and extract them to C:/adb(Recommended for ease of use) or any folder.
Now connect your device with PC make sure USB Debugging is on and accept any RSA Fingerprint prompt on your device.
Now hold right Shift and press right click. From the menu choose "Open command window here" and copy or type the following code.
adb pull framework2.jar /system/framework
You'll see a file named framework2.jar in the adb folder. Congrats you got your file! Now moving on.
2) Decompile using any of the given tools, here I explain using ibanez7 tool. Download the tool and extract it to C:\Users\here don't keep spaces between any folder/file name. For more accurate tutorial how to setup the tool go to this thread here http://forum.xda-developers.com/showthread.php?t=2251719
- Copy framework2.jar file to apktool folder (make sure is the same folder).
- Open framework2.jar using Winrar or 7zip and extract classes.dex file (Recommended WinRAR)
- Drag & drop classes.dex to Quick-Baksmali.cmd (decompile process)
- Wait and you will see a folder with the name "classout"
- Now you can start editing smali file on classout folder (use Notepad++ only for editing it)
- Go to classout/smali/com/android/internal/app and search for PlatLogoActivity.smali, right click it and open it with Notepad++
- Easy just select all of the code and delete it and replace it with OP's code, Here
Code:
.class public Lcom/android/internal/app/PlatLogoActivity;
.super Landroid/app/Activity;
.source "PlatLogoActivity.java"
# direct methods
.method public constructor ()V
.registers 1
.prologue
.line 12
invoke-direct {p0}, Landroid/app/Activity;->()V
return-void
.end method
# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
.registers 7
.parameter "savedInstanceState"
.prologue
.line 16
invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
.line 18
new-instance v1, Landroid/content/Intent;
const-string v2, "android.intent.action.MAIN"
invoke-direct {v1, v2}, Landroid/content/Intent;->(Ljava/lang/String;)V
.line 19
.local v1, intent:Landroid/content/Intent;
new-instance v2, Landroid/content/ComponentName;
const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"
const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"
invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;->(Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
.line 23
:try_start_16
invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
:try_end_19
.catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d
.line 39
:goto_19
invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V
.line 41
return-void
.line 31
:catch_1d
move-exception v0
.line 35
.local v0, e:Landroid/content/ActivityNotFoundException;
const-string v2, "First install that app Droidbuster told you to!"
const/4 v3, 0x0
invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;
move-result-object v2
invoke-virtual {v2}, Landroid/widget/Toast;->show()V
goto :goto_19
.end method
After pasting make sure that every line that begins with # Blabla has two lines gap before it and after the .end method line when next # Blabla line start it should have two line gap. For eg
Code:
# direct methods
.method public constructor ()V
- Code here
.end method
1st line gap
2nd line gap
# virtual methods
.method (rest code here)
-Code here
.end method
Hope you got my point. If you still dont get it the check the existing smali's in the folder for example.
-After editing the file save it and close Notepad++.
- After editing is complete, Drag & drop classout folder to Quick-Smali.cmd (recompile process)
- After recompile is complete, there will be a file with a name "new-classes.dex"
- Open framework2.jar using WinRAR or 7zip (Recommended WinRAR)
- Rename new-classes.dex to classes.dex, and Drag & drop to framework2.jar with normal compression and your done.
For noobs who have trouble with framework2.jar flashing I have attached flashable zip in the post below just make necessary changes and then open the flashable zip package attached below and add framework2.jar[For 4.4.x]/framework.jar[For 2.3-4.3] to framework folder with normal compression and flash the zip through custom recovery. Remember to make a nandroid backup before you flash anything and make sure to Wipe Cache and Dalvik cache before flashing
Next install the apk as suggested by OP and enjoy
All credits to @Droidbuster for this awesome guide and congrats to be on portal

Eggster an Exposed Module
Already did it!!

Khizar Ali said:
smali is not present inside framework.jar ? what can i do?
Rom : Cm11
Click to expand...
Click to collapse
Check my post

Sir please check the download link for GingerBread Platform Device V1.2: Idpi and Xdpi are the same download link (d-h.st/IOXs)

surajdhanuki said:
Hey bro I want the modded flashable zip so if I flash the file I'll get the easter egg.
Click to expand...
Click to collapse
This guide will not work for KK. Here check my post I explained all in details. Don't be a noob! BTW Guide is noob friendly that I wrote

Tried your tutorial. returns this error, while recompiling :
Code:
framework.jar.out\smali\com\android\internal\app\PlatLogoActivity.smali[21,4] Er
ror for input '.parameter': Invalid directive
framework.jar.out\smali\com\android\internal\app\PlatLogoActivity.smali[21,15] m
ismatched input '"savedInstanceState"' expecting END_METHOD_DIRECTIVE
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file
: com/android/internal/app/PlatLogoActivity.smali
at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuilder.java:72)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:56)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:41)
at brut.androlib.Androlib.buildSourcesSmali(Androlib.java:338)
at brut.androlib.Androlib.buildSources(Androlib.java:299)
at brut.androlib.Androlib.build(Androlib.java:285)
at brut.androlib.Androlib.build(Androlib.java:258)
at brut.apktool.Main.cmdBuild(Main.java:236)
at brut.apktool.Main.main(Main.java:88)
Also, ICS + ldpi version is unavailable.
Hope you look in this, I am not expert in compiling/decompiling. I may be making some silly mistakes, because I get same error in other cases too.
EDIT : I tried initially with smali 2.0.3, after debugging issue, I tried smali 1.4.2, still same. Hope you help.
EDIT2 : Its for JB 4.1.2. Should I attach my framework.jar for your perusal and if you have time?
EDIT3 : Done! Used older apktool and got it working. Thanks a lot.

Tech N You said:
Hello all,
I rewrite this tutorial for Android 4.4+
Note you must have a deodexed ROM for this if you try on stock ROM.
I also have attached a flashable zip in the end that'll work for all users on any android version. GB, JB or KK
Let's begin
GUIDE
Tools we need for this are Notepad++, Jar editing tool (don't just use any apktool or you'll end up with smaling error) and your correct dpi resolution apk
Download the tool to decompile from here http://www.mediafire.com/download/h...l+-+baksmali+-+Signer+v3+Mixed+by+ibanez7.zip (thanks to @ibanez7) or this tool from here http://www.mediafire.com/download/yx8lswms7ocd4oh/Apk+Changer+forked+by+gamzekal+11.3.2014.exe (thanks to @gamzekal)
1) Pull out framework2.jar from your device. Make sure you have necessary adb files or minimal-sdk package (adb files). If you dont have then download from below adb.zip and extract them to C:/adb(Recommended for ease of use) or any folder.
Now connect your device with PC make sure USB Debugging is on and accept any RSA Fingerprint prompt on your device.
Now hold right Shift and press right click. From the menu choose "Open command window here" and copy or type the following code.
adb pull framework2.jar /system/framework
You'll see a file named framework2.jar in the adb folder. Congrats you got your file! Now moving on.
2) Decompile using any of the given tools, here I explain using ibanez7 tool. Download the tool and extract it to C:\Users\here don't keep spaces between any folder/file name. For more accurate tutorial how to setup the tool go to this thread here http://forum.xda-developers.com/showthread.php?t=2251719
- Copy framework2.jar file to apktool folder (make sure is the same folder).
- Open framework2.jar using Winrar or 7zip and extract classes.dex file (Recommended WinRAR)
- Drag & drop classes.dex to Quick-Baksmali.cmd (decompile process)
- Wait and you will see a folder with the name "classout"
- Now you can start editing smali file on classout folder (use Notepad++ only for editing it)
- Go to classout/smali/com/android/internal/app and search for PlatLogoActivity.smali, right click it and open it with Notepad++
- Easy just select all of the code and delete it and replace it with OP's code, Here
Code:
.class public Lcom/android/internal/app/PlatLogoActivity;
.super Landroid/app/Activity;
.source "PlatLogoActivity.java"
# direct methods
.method public constructor ()V
.registers 1
.prologue
.line 12
invoke-direct {p0}, Landroid/app/Activity;->()V
return-void
.end method
# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
.registers 7
.parameter "savedInstanceState"
.prologue
.line 16
invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
.line 18
new-instance v1, Landroid/content/Intent;
const-string v2, "android.intent.action.MAIN"
invoke-direct {v1, v2}, Landroid/content/Intent;->(Ljava/lang/String;)V
.line 19
.local v1, intent:Landroid/content/Intent;
new-instance v2, Landroid/content/ComponentName;
const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"
const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"
invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;->(Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
.line 23
:try_start_16
invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
:try_end_19
.catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d
.line 39
:goto_19
invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V
.line 41
return-void
.line 31
:catch_1d
move-exception v0
.line 35
.local v0, e:Landroid/content/ActivityNotFoundException;
const-string v2, "First install that app Droidbuster told you to!"
const/4 v3, 0x0
invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;
move-result-object v2
invoke-virtual {v2}, Landroid/widget/Toast;->show()V
goto :goto_19
.end method
After pasting make sure that every line that begins with # Blabla has two lines gap before it and after the .end method line when next # Blabla line start it should have two line gap. For eg
Code:
# direct methods
.method public constructor ()V
- Code here
.end method
1st line gap
2nd line gap
# virtual methods
.method (rest code here)
-Code here
.end method
Hope you got my point. If you still dont get it the check the existing smali's in the folder for example.
-After editing the file save it and close Notepad++.
- After editing is complete, Drag & drop classout folder to Quick-Smali.cmd (recompile process)
- After recompile is complete, there will be a file with a name "new-classes.dex"
- Open framework2.jar using WinRAR or 7zip (Recommended WinRAR)
- Rename new-classes.dex to classes.dex, and Drag & drop to framework2.jar with normal compression and your done.
For noobs who have trouble with framework2.jar flashing I have attached flashable zip in the post below just make necessary changes and then open the flashable zip package attached below and add framework2.jar[For 4.4.x]/framework.jar[For 2.3-4.3] to framework folder with normal compression and flash the zip through custom recovery. Remember to make a nandroid backup before you flash anything and make sure to Wipe Cache and Dalvik cache before flashing
Next install the apk as suggested by OP and enjoy
All credits to @Droidbuster for this awesome guide and congrats to be on portal
Click to expand...
Click to collapse
thanks bro .you made my work to easy . and thanks for wishes for xda portal post but i missed that portal post

Droidbuster said:
thanks bro .you made my work to easy . and thanks for wishes for xda portal post but i missed that portal post
Click to expand...
Click to collapse
Wow congrats bro :laugh:
now ur thread is on XDA portal

LuanTeles said:
Eggster an Exposed Module
Already did it!!
Click to expand...
Click to collapse
I know bro my platlogo based of xposed but i did not find any single guide to make it inbuilt in system and any working Lollipop easter egg for Gb too.
so i did
Dont for get press thanks button if you like my work​

missed portal
pritish sahoo said:
Wow congrats bro :laugh:
now ur thread is on XDA portal
Click to expand...
Click to collapse
thanks bro but i missed that portal news

Related

[MOD] AOSP lock screen custom wallpaper support

Want to have AOSP lock screen (Android stock) with opportunity to use your own wallpaper as it is with the Glass lockscreen (Settings/Display/Wallpapers/Lock screen wallpaper)? Not a problem This MOD is suitable to the JVS/JVT, you may try and tell me if it works with JVU and other GB versions.
1. Decompile android.policy.jar
2. Replace existing LockScreen.smali file (attached).
3. Edit LockPatternKeyguardView.smali
4. Replace whole section:
Code:
.method private getLockScreenMode()Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;
.locals 1
.prologue
.line 1338
invoke-direct {p0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->isMissedEventsArrived()Z
move-result v0
if-eqz v0, :cond_0
.line 1339
sget-object v0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;->PuzzleLock:Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;
.line 1342
:goto_0
return-object v0
:cond_0
sget-object v0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;->GlassLock:Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;
goto :goto_0
.end method
with
Code:
.method private getLockScreenMode()Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;
.locals 1
.prologue
.line 1338
invoke-direct {p0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->isMissedEventsArrived()Z
move-result v0
sget-object v0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;->TapLock:Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;
return-object v0
.end method
5. Decompile framework-res.apk
6. Replace existing keyguard_screen_tab_unlock.xml and keyguard_screen_tab_unlock_land.xml files (attached).
7. Compile both files, upload them to the device and be happy
hi
xxjvt
screen is black
LockScreen.smali not fixed
thank..
flonec said:
xxjvt
screen is black
LockScreen.smali not fixed
thank..
Click to expand...
Click to collapse
This has been tested on XXJVT so it is working on this release... Please do the whole procedure once again.
Does this work on lollipop?

[WIP] Need Help from all you experienced themer out there.

I happen to fall in love with Lewa OS.
Lewa os as this wonderfull app named PIM.apk which works as dialer cum messaging app.
The only flaw in this apk is it shows smiley key while composing message instead of enter key.
I am trying to modify the messaging app (PIM.apk) of Lewa os so that it displays “Enter key instead of smiley key when we compose messages
does anyone know how should i go about it.?
”
I've uploaded all the required files. if you could check the xml what should I edit in this xml so that smiley key changes to enter key.
I have searched the forum found this tutorial but this tutorial doesn’t seem to work on this apk.
mikko3024 said:
How to apply the Mms.apk next line mod.
Note: This guide assumes that you have knowledge of decompiling-recompiling apks, baksmali-ing and smali-ing.
The mod is a two part modification.
- First is to remove the smiley button when typing an sms/mms with the enter button by modifying layout xml res files. After changing the xml res files, the enter button would appear. But the enter button would function as in the enter-to-send behavior.
- Second is to modify a smali ui file to change the enter-to-send behavior and allow inserting next lines in the text editor.
Part I - Showing the enter button.
1. Decompile the Mms.apk. (apktool or any tool of your preference)
2. Open res/layout/compose_message_activity.xml
3. find |textShortMessage and delete it. (From my experience there is usually a single instance of that text in the file.)
4. Recompile the apk.
Note: You may need to perform apktool if framework-res.apk first to successfully decompile and recompile without errors.
Part II - Smali edit.
1. From the decompiled files under Part I, open smali/com/android/mms/ui/ComposeMessageActivity.smali.
2. Modify the method onEditorAction with the snippet below. (The line with .method public onEditorAction(Landroid/widget/TextView;ILandroid/view/KeyEventZ)
Modified .method snippet:
Code:
.method public onEditorAction(Landroid/widget/TextView;ILandroid/view/KeyEvent;)Z
.locals 4
.parameter "v"
.parameter "actionId"
.parameter "event"
.prologue
const/4 v3, 0x1
const/4 v2, 0x0
.line 3217
if-eqz p3, :cond_4
.line 3218
invoke-virtual {p3}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v0
const/16 v1, 0x17
if-eq v0, v1, :cond_0
invoke-virtual {p3}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v0
const/16 v1, 0x42
if-ne v0, v1, :cond_1
:cond_0
move v0, v2
.line 3232
:goto_0
return v0
.line 3221
:cond_1
invoke-virtual {p3}, Landroid/view/KeyEvent;->isShiftPressed()Z
move-result v0
if-nez v0, :cond_3
.line 3222
invoke-direct {p0}, Lcom/android/mms/ui/ComposeMessageActivity;->isPreparedForSending()Z
move-result v0
if-eqz v0, :cond_2
.line 3223
invoke-direct {p0}, Lcom/android/mms/ui/ComposeMessageActivity;->confirmSendMessageIfNeeded()V
:cond_2
move v0, v3
.line 3225
goto :goto_0
:cond_3
move v0, v2
.line 3227
goto :goto_0
.line 3229
:cond_4
invoke-direct {p0}, Lcom/android/mms/ui/ComposeMessageActivity;->isPreparedForSending()Z
move-result v0
if-eqz v0, :cond_5
.line 3230
invoke-direct {p0}, Lcom/android/mms/ui/ComposeMessageActivity;->confirmSendMessageIfNeeded()V
:cond_5
move v0, v3
.line 3232
goto :goto_0
.end method
3. Adjust the .line numbering to the numbering used by the previous method before patching. Not adjusting the .line numbering would/may cause errors.
Note that your .line numbering may be different from my .line numbering. For example your previous .method may occupy 3040 to 3055. Adjust the above code's .line numbering to fit that range.
4. After modifying the smali file, create a duplicate of the smali folder.
5. Smali the smali folder to obtain a new classes.dex file.
Code:
java -jar ./smali.jar -o ./classes.dex ./smali
6. Open the patched Mms.apk file earlier using WinZip or WinRAR and overwrite its classes.dex file with the new modified one.
If you're on Ubuntu you can type this command in terminal:
Code:
zip -m Mms.apk classes.dex
7. Copy the patched Mms.apk file to your phone's /system/app folder. Apply proper ownership and permissions.
Click to expand...
Click to collapse

[MOD][GUIDES] SecMms.apk TouchWiz Mods! [5.26.2013]

Hello to all Developers and XDA members! I have come here to give you a couple of guides on how to enable a bunch of the Stock Messaging App "SecMms" Mods and other good stuff so here is how you can do it!
What Is Required...
★ First you need to have experience and know how to decompile/recompile apks with Apktools, apkmanager, smali, and baksmali
★ Have 7-zip installed onto your computer/laptop
★ Make sure you have Notepad++ also installed!
★HOW TO ENABLE THE SCREEN ON/OFF TOGGLE AND ADD THE VIBRATION, SIGNATURE OPTIONS★
WHAT DOES THIS MOD DO: This mod will let you enable the Screen on/off toggle, vibration, and signature options in the messaging app.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or apkmanager and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
res/xml/mms_config.xml
Click to expand...
Click to collapse
Now open up "mms.config.xml" with Notepad++ then go and find:
Code:
<bool name="enable_screen_onoff_option">false</bool>
<bool name="enable_signature_settings">false</bool>
<bool name="enable_vibration_option">false</bool>
<bool name="enable_signature">false</bool>
Now what your going to do is where it says "false" your going to change it to "true" to enable it. Once done it will look something like this:
Code:
<bool name="enable_screen_onoff_option">true</bool>
<bool name="enable_signature_settings">true</bool>
<bool name="enable_vibration_option">true</bool>
<bool name="enable_signature">true</bool>
Now save this file with the new edits with Notepad++ and head to the next step!
STEP 2
Once your done enabling the bools, now you have to go into:
smali/com/android/mms/ui/MessagingPreferenceActivity.smali
Click to expand...
Click to collapse
Now open up "MessagingPreferenceActivity.smali" with your notepad++ for editing.
For this part of the guide what i have highlighted in "GREEN" text is what you have to find using Notepad++ which all should be almost towards the bottom of the file, So what you see in "RED" is the line you have to remove/delete completely which is the "invoke-direct" line which has "removePreference" in it:
FIND:
Code:
[COLOR="Green"]const-string v11, "pref_key_spam_settings"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 813
invoke-virtual {p0}, Lcom/android/mms/ui/MessagingPreferenceActivity;->getPreferenceScreen()Landroid/preference/PreferenceScreen;
move-result-object v10
[COLOR="Green"]const-string v11, "pref_key_spam_settings"[/COLOR]
invoke-virtual {p0, v11}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v11
[COLOR="Red"]invoke-direct {p0, v10, v11}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
.line 824
:cond_10
:goto_5
invoke-static {}, Lcom/android/mms/MmsConfig;->getDisableConvertingEffectBetweenSMSMMS()Z
move-result v10
if-eqz v10, :cond_11
FIND:
Code:
[COLOR="Green"]const-string v10, "pref_notification_settings"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 825
[COLOR="Green"]const-string v10, "pref_notification_settings"[/COLOR]
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v1
check-cast v1, Landroid/preference/PreferenceCategory;
.line 826
.local v1, MmsCategory:Landroid/preference/PreferenceCategory;
const-string v10, "pref_key_mms_change_over_alarm"
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v10
[COLOR="Red"]invoke-direct {p0, v1, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
FIND:
Code:
[COLOR="Green"]const-string v10, "pref_key_backlight"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 767
[COLOR="Green"]const-string v10, "pref_key_backlight"[/COLOR]
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v10
[COLOR="Red"]invoke-direct {p0, v2, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
Now once your done with modifying the "MessagingPreferenceActivity.smali", Recompile your SecMms.apk using apktool or smali commands and your DONE! You should now see the Screen On/Off Toggle in the Messaging app Settings! Also if you didn't have the vibration or signature options in your Messaging app settings this guide will also enable it! Enjoy!
★HOW TO ENABLE THE TOUCHWIZ GROUP MESSAGING, SAVE / RESTORE, AND SCHEDULED MESSAGING FEATURES★
WHAT DOES THIS MOD DO: This mod will let you enable some features in the messaging app such as group messaging, save / restore, and also the scheduled messaging.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or apkmanager and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, And what you see in "BLUE" is the line you have to make changes to:
TO ENABLE GROUP MESSAGING...
FIND:
Code:
[COLOR="Green"].method public static getEnableGroupMessage()Z[/COLOR]
.locals 1
.prologue
.line 766
const/4 v0, 0x0
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableGroupMessage()Z[/COLOR]
.locals 1
.prologue
.line 766
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
TO ENABLE THE SAVE / RESTORE FEATURE...
FIND:
Code:
[COLOR="Green"].method public static getEnableSaveRestoreSDCardMessage()Z[/COLOR]
.locals 1
.prologue
.line 774
const/4 v0, 0x0
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableSaveRestoreSDCardMessage()Z[/COLOR]
.locals 1
.prologue
.line 774
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
TO ENABLE SCHEDULED MESSAGING...
FIND:
Code:
[COLOR="Green"].method public static getEnableScheduledMessage()Z[/COLOR]
.locals 1
.prologue
.line 878
const/4 v0, 0x0
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableScheduledMessage()Z[/COLOR]
.locals 1
.prologue
.line 878
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
The only thing your doing is changing 0x0 to 0x1 which "0" means disabled and "1" means enabled. Once your done now recompile your SecMms.apk and that's it your DONE!
★SMS 1000/UNLIMITED RECIPIENT LIMIT★
WHAT DOES THIS MOD DO: This mod will let you send your message to more than 1000 people at the same time.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"].method public static getRecipientLimit()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getRecipientLimit()I[/COLOR]
.locals 1
.prologue
.line 630
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getRecipientLimit()I[/COLOR]
.locals 1
.prologue
.line 630
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
Now save the changes, recompile your SecMms.apk and your DONE!
★HOW TO CHANGE THE MESSAGING TIME STAMPS TO ITS ORIGINAL TIME★
WHAT DOES THIS MOD DO: This mod will show the exact sent time of received messages, not the moment when you actually received it on your phone.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/transactionSMSReceiverService.smali
Click to expand...
Click to collapse
Now open up "SMSReceiverService.smali" with your notepad++ for editing.
Now for this part of this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
LOOK FOR:
Code:
[COLOR="Green"]invoke-static {}, Ljava/lang/System;->currentTimeMillis()J[/COLOR]
THIS SAME LINE THAT YOU HAVE JUST LOOKED FOR, IS ALSO THE LINE YOUR GOING TO HAVE TO REMOVE WHICH SHOULD LOOK LIKE THIS:
Code:
.line 1395
:cond_7
const-string v3, "date"
[COLOR="Red"]invoke-static {}, Ljava/lang/System;->currentTimeMillis()J[/COLOR]
move-result-wide v4
invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v4
invoke-virtual {v1, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
goto/16 :goto_1
.end method
AND THEN CHANGE IT TO THIS:
Code:
.line 1395
:cond_7
const-string v3, "date"
[COLOR="Blue"]invoke-virtual {p1}, Landroid/telephony/SmsMessage;->getTimestampMillis()J[/COLOR]
move-result-wide v4
invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v4
invoke-virtual {v1, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
goto/16 :goto_1
.end method
Once finished... Save changes, recompile your SecMms.apk and that's it your DONE!
★HOW TO DISABLE THE SMS TO MMS AUTO-CONVERSION★
WHAT DOES THIS MOD DO: This mod will let you type very long text messages and it won't automatically convert it into MMS.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidthRestrictedMode:I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidthRestrictedMode:I[/COLOR]
.line 149
[COLOR="Red"]sput v7, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
.line 150
[COLOR="Red"]const/16 v0, 0xc8[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mDefaultSMSMessagesPerThread:I
AND CHANGE TO:
Code:
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidthRestrictedMode:I[/COLOR]
.line 149
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
.line 150
[COLOR="Blue"]sput v0, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mDefaultSMSMessagesPerThread:I
SEARCH FOR:
Code:
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mAllowAttachAudio:Z[/COLOR]
NOW REMOVE:
Code:
.line 157
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mAllowAttachAudio:Z[/COLOR]
.line 160
[COLOR="Red"]const/4 v0, 0x4[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I
AND CHANGE TO:
Code:
.line 157
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mAllowAttachAudio:Z[/COLOR]
.line 160
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I
SEARCH FOR:
Code:
[COLOR="Green"].method public static getMaxRecipientLength()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getMaxRecipientLength()I[/COLOR]
.locals 1
.prologue
.line 2146
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->mMaxRecipientLength:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getMaxRecipientLength()I[/COLOR]
.locals 1
.prologue
.line 2146
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
SEARCH FOR:
Code:
[COLOR="Green"].method public static getMmsMaxRecipient()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getMmsMaxRecipient()I[/COLOR]
.locals 1
.prologue
.line 2379
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->mMmsRecipientLimit:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getMmsMaxRecipient()I[/COLOR]
.locals 1
.prologue
.line 2379
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
SEARCH FOR:
Code:
[COLOR="Green"].method public static getSmsToMmsTextThreshold()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getSmsToMmsTextThreshold()I[/COLOR]
.locals 1
.prologue
.line 559
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getSmsToMmsTextThreshold()I[/COLOR]
.locals 1
.prologue
.line 559
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
SEARCH FOR:
Code:
[COLOR="Green"]sput v9, Lcom/android/mms/MmsConfig;->mMaxRecipientLength:I[/COLOR]
ABOVE THIS SAME LINE YOU HAVE TO ADD A NEW LINE WHICH IS IN BLUE:
Code:
.line 1553
const-string v9, "CscFeature_Message_MaxRecipientLengthAs"
invoke-virtual {v1, v9}, Lcom/sec/android/app/CscFeature;->getInteger(Ljava/lang/String;)I
move-result v9
[COLOR="Blue"]const/16 v9, 0x3e8[/COLOR]
[COLOR="Green"]sput v9, Lcom/android/mms/MmsConfig;->mMaxRecipientLength:I[/COLOR]
.line 1554
sget v9, Lcom/android/mms/MmsConfig;->mMinRecipientLength:I
SEARCH FOR:
Code:
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I[/COLOR]
ABOVE THIS SAME LINE YOU HAVE TO ADD A NEW LINE WHICH IS IN BLUE:
Code:
move-result v1
[COLOR="Blue"]const/16 v1, 0x3e8[/COLOR]
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I[/COLOR]
.line 1729
const-string v1, "Mms/MmsConfig"
SEARCH FOR:
Code:
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
ABOVE THIS SAME LINE YOU HAVE TO ADD A NEW LINE WHICH IS IN BLUE:
Code:
.line 1733
const-string v1, "pref_key_max_recipient"
invoke-interface {v0, v1, v4}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I
move-result v1
[COLOR="Blue"]const/16 v1, 0x3e8[/COLOR]
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
.line 1734
const-string v1, "Mms/MmsConfig"
Now save changes, Recompile your SecMms.apk and that's it you are now DONE!!!
★INCREASE THE SMS LIMIT PER HOUR★
WHAT DOES THIS MOD DO: This mod will increase the SMS hour limit to 1000.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/util/RateController.smali
Click to expand...
Click to collapse
Now open up "RateController.smali" with your notepad++ for editing.
Now for this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
LOOK FOR:
Code:
[COLOR="Green"].field private static final RATE_LIMIT:I = 0x64[/COLOR]
IN THIS SAME EXACT LINE REMOVE:
Code:
[COLOR="Green"].field private static final RATE_LIMIT:I =[/COLOR] [COLOR="Red"]0x64[/COLOR]
AND CHANGE IT TO:
Code:
[COLOR="Green"].field private static final RATE_LIMIT:I =[/COLOR] [COLOR="Blue"]0x3e8[/COLOR]
The value that you see is in hexadecimal format, so 0x64 = "100". So we changed it to 0x3e8 which in hexadecimal format means "1000". Now save your changes, recompile the SecMms.apk and you are now FINISHED!!!
★HOW TO ENABLE SPLIT-VIEW MODE ON/OFF TOGGLE★
WHAT DOES THIS MOD DO: This mod will let you enable split view on landscape screen so you can see the contacts lists of the people who messaged you while looking at your text at the same time.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/ui/MessagingPreferenceActivity.smali
Click to expand...
Click to collapse
Now open up "MessagingPreferenceActivity.smali" with your notepad++ for editing.
For this part of the guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely which is the "invoke-direct" line which has "removePreference" in it:
SEARCH FOR:
Code:
[COLOR="Green"]const-string v10, "pref_key_split_view"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 733
[COLOR="Green"]const-string v10, "pref_key_split_view"[/COLOR]
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v10
[COLOR="Red"]invoke-direct {p0, v5, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
.line 735
:cond_2
invoke-static {}, Lcom/android/mms/MmsConfig;->getEnableWapPush()Z
Once done save your changes, now go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"].method public static getEnableSplitMode()Z[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getEnableSplitMode()Z[/COLOR]
.locals 1
.prologue
.line 903
invoke-static {}, Lcom/android/mms/MmsConfig;->hasLargerThan5inchScreen()Z
move-result v0
if-eqz v0, :cond_0
.line 904
const/4 v0, 0x1
.line 906
:goto_0
return v0
:cond_0
[COLOR="Red"]sget-boolean v0, Lcom/android/mms/MmsConfig;->mEnableSplitMode:Z[/COLOR]
goto :goto_0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableSplitMode()Z[/COLOR]
.locals 1
.prologue
.line 903
invoke-static {}, Lcom/android/mms/MmsConfig;->hasLargerThan5inchScreen()Z
move-result v0
if-eqz v0, :cond_0
.line 904
const/4 v0, 0x1
.line 906
:goto_0
return v0
:cond_0
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
goto :goto_0
.end method
Now save changes, Recompile your SecMms.apk and that's it you are now DONE! Now you should see the "Split View" Toggle In Your Messaging App Settings!
★HOW TO INCREASE MMS MAX SIZE + INCREASE MMS IMAGE SIZE★
WHAT DOES THIS MOD DO: This mod will increase the MMS Max size to 2048000 bytes and also increase the MMS Image size to 4096x2048 [8.4MP].
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or apkmanager and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, And what you see in "BLUE" is the line you have to make changes to:
INCREASE MMS MAX SIZE TO 2048000 BYTES...
FIND:
Code:
.line 137
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mMmsWidgetEnabled:Z[/COLOR]
.line 138
const v0, 0x4b000
sput v0, Lcom/android/mms/MmsConfig;->mMaxMessageSize:I
NOW CHANGE TO:
Code:
.line 137
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mMmsWidgetEnabled:Z[/COLOR]
.line 138
[COLOR="Blue"]const v0, 0x1f4000[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mMaxMessageSize:I
INCREASE MMS IMAGE SIZE TO 4096x2048 [8.4MP]...
FIND:
Code:
.line 144
[COLOR="Green"]sput-object v4, Lcom/android/mms/MmsConfig;->mEmailGateway:Ljava/lang/String;[/COLOR]
.line 145
sget v0, Lcom/android/mms/MmsConfig;->MAX_IMAGE_HEIGHT:I
sput v0, Lcom/android/mms/MmsConfig;->mMaxImageHeight:I
.line 146
sget v0, Lcom/android/mms/MmsConfig;->MAX_IMAGE_WIDTH:I
sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidth:I
NOW CHANGE TO:
Code:
.line 144
[COLOR="Green"]sput-object v4, Lcom/android/mms/MmsConfig;->mEmailGateway:Ljava/lang/String;[/COLOR]
.line 145
[COLOR="Blue"]const/16 v0, 0x800[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mMaxImageHeight:I
.line 146
[COLOR="Blue"]const/16 v0, 0x1000[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidth:I
Once your done. Now recompile your SecMms.apk and that's it your DONE!
another one just in case! :good:
Thanks for doing this bro, ill have to check it out!
Re: [MOD][GUIDES] SecMms.apk TouchWiz Mods!
sbreen94 said:
Thanks for doing this bro, ill have to check it out!
Click to expand...
Click to collapse
Your welcome bro hopefully i get to update it later on tonight with more mods.
Sent from my SGH-T999 using Tapatalk 2
Updated it with even more mods!
Re: [MOD][GUIDES] SecMms.apk TouchWiz Mods! [3.3.2013]
jovy23 said:
Updated it with even more mods!
Click to expand...
Click to collapse
Awww yeah
Sent from my SCH-I605 using xda premium
Excellent guide mate, :highfive: :good::good:
awesome! it send it but the replies do not come back in the same thread.the people respond in another individual thread...is there anyway to enable the responses to be all in one thread?
EDIT: also, after sending the first group message, i can't send another one. i think it is because the thread is now labeled: "Anonymous" and the app doesn't know who to send it to..
can you possibly post your SecMMS.apk? i've decompiled it and made some edits successfully, but one of the smali files i have is missing some lines from this guide...
also, group text doesnt work still i get the same bug as above. we must be missing something. anyone have the latest OTA update and are rooted? lets compare files!
Everything is OK, but when I choose to send message from contact list: Still 10 recipient limit. How to solve this?
Would this work for the Note 2? And could someone upload the APK? If you need my Note 2 version I can send it to you but I think its the same as the S3.
I successfully was able to make the sms to mms conversion change along with the recipient limit change. But whenever I make a change to the xml files it breaks the array in values where the <3 doesn't link to the heart properly it only shows the <3 in the text message. this happened after I tried to add the screen on/off change. I have read it is something to do with a compression error. Do you know a workaround for this? Hope so, or maybe someone has a fix for this
Second question is how to change the default order of the smilies when you insert from the menu?
Thanks in advance...
Is this thread still active and up?
Re: [MOD][GUIDES] SecMms.apk TouchWiz Mods! [3.3.2013]
mgbotoe said:
Is this thread still active and up?
Click to expand...
Click to collapse
It still works if that's what you're asking
Sent from my SGH-T889 using Tapatalk 2
jovy23 said:
Updated it with even more mods!
Click to expand...
Click to collapse
I would love to have these on my t-999 but I'm having trouble understanding all this development jargon. I've spent the entire day trying to create my own mod, but with no success. My eyes now hurt from staring at my pc since 7 am Do you have a mod for the t-999 stock rom I could flash?
Thanks so much for this great how to! Very clear and easy to follow!
My smali folder does not get extracted...tried so many things to get it fix. anyone else experiencing this....
mgbotoe said:
My smali folder does not get extracted...tried so many things to get it fix. anyone else experiencing this....
Click to expand...
Click to collapse
What do you mean?
Did you decompile the secmms.apk using apktool or apk manager?
Smali folder will be there if you successfully decompiled it.
Sent from my GT-I9100 using Tapatalk 2
engloa said:
What do you mean?
Did you decompile the secmms.apk using apktool or apk manager?
Smali folder will be there if you successfully decompiled it.
Sent from my GT-I9100 using Tapatalk 2
Click to expand...
Click to collapse
Yes ive even setup the apk manager again same thing

[MOD][GUIDE] SecMms.apk TouchWiz Mods | For Galaxy Note 3 | December 19, 2013

Hello to all Developers and XDA members! I have come here to give you a couple of guides on how to enable a bunch of the Stock Messaging App "SecMms" Mods and other good stuff so here is how you can do it!
What Is Required...
★ First you need to have experience and know how to decompile/recompile apks with Apktools, apkmanager, smali, and baksmali
★ Have 7-zip installed onto your computer/laptop
★ Make sure you have Notepad++ also installed!
★HOW TO ENABLE GROUP MESSAGING★
WHAT DOES THIS MOD DO: This mod will let you enable group messaging in the stock messaging app.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
TO ENABLE GROUP MESSAGING...
SEARCH FOR:
Code:
[COLOR="Green"].method public static getEnableGroupMessage()Z[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getEnableGroupMessage()Z[/COLOR]
.registers 3
.prologue
[COLOR="Red"]const/4 v0, 0x0[/COLOR]
.line 3378
invoke-static {}, Lcom/android/mms/MmsConfig;->getCMASProvider()I
move-result v1
const/4 v2, 0x3
if-ne v1, v2, :cond_9
.line 3382
:cond_8
:goto_8
return v0
.line 3380
:cond_9
invoke-static {}, Lcom/android/mms/MmsConfig;->getEnableMmsTransactionCustomize4Korea()Z
move-result v1
if-nez v1, :cond_8
.line 3382
[COLOR="Red"]sget-boolean v0, Lcom/android/mms/MmsConfig;->sEnableGroupMms:Z[/COLOR]
goto :goto_8
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableGroupMessage()Z[/COLOR]
.registers 3
.prologue
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
.line 3378
invoke-static {}, Lcom/android/mms/MmsConfig;->getCMASProvider()I
move-result v1
const/4 v2, 0x3
if-ne v1, v2, :cond_9
.line 3382
:cond_8
:goto_8
return v0
.line 3380
:cond_9
invoke-static {}, Lcom/android/mms/MmsConfig;->getEnableMmsTransactionCustomize4Korea()Z
move-result v1
if-nez v1, :cond_8
.line 3382
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
goto :goto_8
.end method
Once done save your changes, now go to:
smali/com/android/mms/ui/MessagingPreferenceActivity.smali
Click to expand...
Click to collapse
Now open up "MessagingPreferenceActivity.smali" with your notepad++ for editing.
For this part of the guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely which is the "invoke-direct" line which has "removePreference" in it:
SEARCH FOR:
Code:
[COLOR="Green"]const-string v1, "pref_key_mms_group_mms"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 709
:cond_8b
[COLOR="Green"]const-string v1, "pref_key_mms_group_mms"[/COLOR]
invoke-virtual {p0, v1}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v1
[COLOR="Red"]invoke-direct {p0, v0, v1}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
Once done now save changes, Recompile your SecMms.apk and that's it your DONE!!!
★HOW TO ENABLE SAVE / RESTORE★
WHAT DOES THIS MOD DO: This mod will let you enable the save/restore feature so you can backup/restore any of your text/mms messages using the stock messaging app.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, And what you see in "BLUE" is the line you have to make changes to:
TO ENABLE THE SAVE / RESTORE FEATURE...
FIND:
Code:
[COLOR="Green"].method public static getEnableSaveRestoreSDCardMessage()Z[/COLOR]
.registers 1
.prologue
.line 923
const/4 v0, 0x0
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableSaveRestoreSDCardMessage()Z[/COLOR]
.registers 1
.prologue
.line 923
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
Once done save your changes, now go to:
smali/com/android/mms/ui/MessagingPreferenceActivity.smali
Click to expand...
Click to collapse
Now open up "MessagingPreferenceActivity.smali" with your notepad++ for editing.
For this part of the guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely which is the "invoke-direct" line which has "removePreference" in it:
SEARCH FOR:
Code:
[COLOR="Green"]const-string v11, "pref_key_sms_restore"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
[COLOR="Green"]const-string v11, "pref_key_sms_restore"[/COLOR]
invoke-virtual {p0, v11}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v11
[COLOR="Red"]invoke-direct {p0, v10, v11}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
Once done now save changes, Recompile your SecMms.apk and that's it your DONE!!!
★HOW TO ENABLE SCHEDULED MESSAGING★
WHAT DOES THIS MOD DO: This mod will let you enable the scheduled messaging feature so you can schedule a time for text messages so the message can be send at the time that you set it to using the stock messaging app.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, And what you see in "BLUE" is the line you have to make changes to:
TO ENABLE SCHEDULED MESSAGING...
FIND:
Code:
[COLOR="Green"].method public static getEnableScheduledMessage()Z[/COLOR]
.registers 1
.prologue
.line 1047
const/4 v0, 0x0
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableScheduledMessage()Z[/COLOR]
.registers 1
.prologue
.line 1047
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
Once done now save changes, Recompile your SecMms.apk and that's it your DONE!!!
★SMS 1000/UNLIMITED RECIPIENT LIMIT★
WHAT DOES THIS MOD DO: This mod will let you send your message to more than 1000 people at the same time.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"].method public static getRecipientLimit()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getRecipientLimit()I[/COLOR]
.registers 1
.prologue
.line 762
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->sRecipientLimit:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getRecipientLimit()I[/COLOR]
.registers 1
.prologue
.line 762
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
NOW SEARCH FOR:
Code:
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->sRecipientLimit:I[/COLOR]
NOW REMOVE:
Code:
.line 167
const/16 v0, 0x280
sput v0, Lcom/android/mms/MmsConfig;->sMaxImageWidthRestrictedMode:I
.line 168
[COLOR="Red"]const/16 v0, 0x14[/COLOR]
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->sRecipientLimit:I[/COLOR]
.line 169
const/16 v0, 0xc8
sput v0, Lcom/android/mms/MmsConfig;->sDefaultSMSMessagesPerThread:I
AND CHANGE TO:
Code:
.line 167
const/16 v0, 0x280
sput v0, Lcom/android/mms/MmsConfig;->sMaxImageWidthRestrictedMode:I
.line 168
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->sRecipientLimit:I[/COLOR]
.line 169
const/16 v0, 0xc8
sput v0, Lcom/android/mms/MmsConfig;->sDefaultSMSMessagesPerThread:I
NOW SEARCH FOR:
.
Code:
[COLOR="Green"]method public static getMaxRecipientLength()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getMaxRecipientLength()I[/COLOR]
.registers 1
.prologue
.line 2592
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->sMaxRecipientLength:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getMaxRecipientLength()I[/COLOR]
.registers 1
.prologue
.line 2592
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
NOW SEARCH FOR:
Code:
[COLOR="Green"].method public static getMmsMaxRecipient()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getMmsMaxRecipient()I[/COLOR]
.registers 1
.prologue
.line 2847
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->sMmsRecipientLimit:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getMmsMaxRecipient()I[/COLOR]
.registers 1
.prologue
.line 2847
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
NOW SEARCH FOR:
Code:
[COLOR="Green"]sput v12, Lcom/android/mms/MmsConfig;->sMaxRecipientLength:I[/COLOR]
ABOVE THIS SAME LINE YOU HAVE TO ADD A NEW LINE WHICH IS IN BLUE:
Code:
.line 1811
const-string v12, "CscFeature_Message_MaxRecipientLengthAs"
invoke-virtual {v1, v12}, Lcom/sec/android/app/CscFeature;->getInteger(Ljava/lang/String;)I
move-result v12
[COLOR="Blue"]const/16 v12, 0x3e8[/COLOR]
[COLOR="Green"]sput v12, Lcom/android/mms/MmsConfig;->sMaxRecipientLength:I[/COLOR]
.line 1812
sget v12, Lcom/android/mms/MmsConfig;->sMinRecipientLength:I
NOW SEARCH FOR:
Code:
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->sRecipientLimit:I[/COLOR]
ABOVE THIS SAME LINE YOU HAVE TO ADD A NEW LINE WHICH IS IN BLUE:
Code:
.line 2121
const-string v1, "pref_key_max_recipient"
invoke-interface {v0, v1, v4}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I
move-result v1
[COLOR="Blue"]const/16 v1, 0x3e8[/COLOR]
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->sRecipientLimit:I[/COLOR]
.line 2122
const-string v1, "Mms/MmsConfig"
Once done now save changes, Recompile your SecMms.apk and that's it your DONE!!!
★HOW TO DISABLE THE SMS TO MMS AUTO-CONVERSION★
WHAT DOES THIS MOD DO: This mod will let you type very long text messages and it won't automatically convert it into MMS.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->sSmsToMmsTextThreshold:I[/COLOR]
NOW REMOVE:
Code:
.line 176
sput-boolean v3, Lcom/android/mms/MmsConfig;->sAllowAttachAudio:Z
.line 179
[COLOR="Red"]const/4 v0, 0x4[/COLOR]
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->sSmsToMmsTextThreshold:I[/COLOR]
AND CHANGE TO:
Code:
.line 176
sput-boolean v3, Lcom/android/mms/MmsConfig;->sAllowAttachAudio:Z
.line 179
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->sSmsToMmsTextThreshold:I[/COLOR]
NOW SEARCH FOR:
Code:
[COLOR="Green"].method public static getSmsToMmsTextThreshold()I[/COLOR]
AND REMOVE:
Code:
[COLOR="Green"].method public static getSmsToMmsTextThreshold()I[/COLOR]
.registers 1
.prologue
.line 691
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->sSmsToMmsTextThreshold:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getSmsToMmsTextThreshold()I[/COLOR]
.registers 1
.prologue
.line 691
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
NOW SEARCH FOR:
Code:
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->sSmsToMmsTextThreshold:I[/COLOR]
ABOVE THIS SAME LINE YOU HAVE TO ADD A NEW LINE WHICH IS IN BLUE:
Code:
.line 2116
const-string v1, "pref_key_threshold"
const/4 v2, 0x4
invoke-interface {v0, v1, v2}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I
move-result v1
[COLOR="Blue"]const/16 v1, 0x3e8[/COLOR]
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->sSmsToMmsTextThreshold:I[/COLOR]
.line 2117
const-string v1, "Mms/MmsConfig"
Once done now save changes, Recompile your SecMms.apk and that's it you are now DONE!!!
★HOW TO CHANGE THE MESSAGING TIME STAMPS TO ITS ORIGINAL TIME★
WHAT DOES THIS MOD DO: This mod will show the exact sent time of received messages, not the moment when you actually received it on your phone.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/transaction/SmsReceiverService.smali
Click to expand...
Click to collapse
Now open up "SmsReceiverService.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"]invoke-static {}, Ljava/lang/System;->currentTimeMillis()J[/COLOR]
THIS SAME LINE THAT YOU HAVE JUST LOOKED FOR, IS ALSO THE LINE YOUR GOING TO HAVE TO REMOVE WHICH SHOULD LOOK LIKE THIS:
Code:
.line 1760
:cond_137
const-string v3, "date"
[COLOR="Red"]invoke-static {}, Ljava/lang/System;->currentTimeMillis()J[/COLOR]
move-result-wide v4
invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v4
invoke-virtual {v1, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
goto/16 :goto_56
.end method
AND THEN CHANGE IT TO THIS:
Code:
.line 1760
:cond_137
const-string v3, "date"
[COLOR="Blue"]invoke-virtual {p1}, Landroid/telephony/SmsMessage;->getTimestampMillis()J[/COLOR]
move-result-wide v4
invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v4
invoke-virtual {v1, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
goto/16 :goto_56
.end method
Once done now save changes, Recompile your SecMms.apk and that's it you are now DONE!!!
★INCREASE THE SMS LIMIT PER HOUR★
WHAT DOES THIS MOD DO: This mod will increase the SMS hour limit to 1000.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/util/RateController.smali
Click to expand...
Click to collapse
Now open up "RateController.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"].field private static final RATE_LIMIT:I = 0x64[/COLOR]
IN THIS SAME EXACT LINE REMOVE:
Code:
[COLOR="Green"].field private static final RATE_LIMIT:I =[/COLOR] [COLOR="Red"]0x64[/COLOR]
AND CHANGE IT TO:
Code:
[COLOR="Green"].field private static final RATE_LIMIT:I =[/COLOR] [COLOR="Blue"]0x3e8[/COLOR]
The value that you see is in hexadecimal format, so 0x64 = "100". So we changed it to 0x3e8 which in hexadecimal format means "1000". Now save your changes, recompile the SecMms.apk and DONE!!!
★HOW TO ENABLE SPLIT-VIEW MODE ON/OFF TOGGLE★
WHAT DOES THIS MOD DO: This mod will let you enable split view on landscape screen so you can see the contacts lists of the people who messaged you while looking at your text at the same time.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/ui/MessagingPreferenceActivity.smali
Click to expand...
Click to collapse
Now open up "MessagingPreferenceActivity.smali" with your notepad++ for editing.
For this part of the guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely which is the "invoke-direct" line which has "removePreference" in it:
SEARCH FOR:
Code:
[COLOR="Green"]const-string v10, "pref_key_split_view"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 805
[COLOR="Green"]const-string v10, "pref_key_split_view"[/COLOR]
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v10
[COLOR="Red"]invoke-direct {p0, v5, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
.line 807
:cond_76
invoke-static {}, Lcom/android/mms/MmsConfig;->getEnableWapPush()Z
Once done save your changes, now go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"].method public static getEnableSplitMode()Z[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getEnableSplitMode()Z[/COLOR]
.registers 1
.prologue
.line 1072
invoke-static {}, Lcom/android/mms/MmsConfig;->hasLargerThan5inchScreen()Z
move-result v0
if-eqz v0, :cond_8
.line 1073
const/4 v0, 0x1
.line 1075
:goto_7
return v0
:cond_8
[COLOR="Red"]sget-boolean v0, Lcom/android/mms/MmsConfig;->sEnableSplitMode:Z[/COLOR]
goto :goto_7
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableSplitMode()Z[/COLOR]
.registers 1
.prologue
.line 1072
invoke-static {}, Lcom/android/mms/MmsConfig;->hasLargerThan5inchScreen()Z
move-result v0
if-eqz v0, :cond_8
.line 1073
const/4 v0, 0x1
.line 1075
:goto_7
return v0
:cond_8
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
goto :goto_7
.end method
Now save changes, Recompile your SecMms.apk and that's it you are now DONE! Now you should see the "Split View" Toggle In Your Messaging App Settings!
★HOW TO INCREASE MMS MAX SIZE + INCREASE MMS IMAGE SIZE★
WHAT DOES THIS MOD DO: This mod will increase the MMS Max size to 2048000 bytes and also increase the MMS Image size to 4096x2048 [8.4MP].
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, And what you see in "BLUE" is the line you have to make changes to:
INCREASE MMS MAX SIZE TO 2048000 BYTES...
FIND:
Code:
.line 156
[COLOR="Green"]sput-boolean v3, Lcom/android/mms/MmsConfig;->sMmsWidgetEnabled:Z[/COLOR]
.line 157
const v0, 0x4b000
sput v0, Lcom/android/mms/MmsConfig;->sMaxMessageSize:I
NOW CHANGE TO:
Code:
.line 156
[COLOR="Green"]sput-boolean v3, Lcom/android/mms/MmsConfig;->sMmsWidgetEnabled:Z[/COLOR]
.line 157
[COLOR="Blue"]const v0, 0x1f4000[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->sMaxMessageSize:I
INCREASE MMS IMAGE SIZE TO 4096x2048 [8.4MP]...
FIND:
Code:
.line 163
[COLOR="Green"]sput-object v4, Lcom/android/mms/MmsConfig;->sEmailGateway:Ljava/lang/String;[/COLOR]
.line 164
sget v0, Lcom/android/mms/MmsConfig;->MAX_IMAGE_HEIGHT:I
sput v0, Lcom/android/mms/MmsConfig;->sMaxImageHeight:I
.line 165
sget v0, Lcom/android/mms/MmsConfig;->MAX_IMAGE_WIDTH:I
sput v0, Lcom/android/mms/MmsConfig;->sMaxImageWidth:I
NOW CHANGE TO:
Code:
.line 163
[COLOR="Green"]sput-object v4, Lcom/android/mms/MmsConfig;->sEmailGateway:Ljava/lang/String;[/COLOR]
.line 164
[COLOR="Blue"]const/16 v0, 0x800[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->sMaxImageHeight:I
.line 165
[COLOR="Blue"]const/16 v0, 0x1000[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->sMaxImageWidth:I
Once done now save your changes, Recompile your SecMms.apk and that's it you are now DONE!
★HOW TO DISABLE SMS, MMS, AND EMAIL LOG HISTORY IN CALL LOGS★
WHAT DOES THIS MOD DO: This mod will permanently disable sms, mms, and email log history from your call logs.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/transaction/MessagingNotification.smali
Click to expand...
Click to collapse
Now open up "MessagingNotification.smali" with your notepad++ for editing.
Now for this part of this guide what your going to need to do is search for and remove all of the "invoke-virtual" lines that have "Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValuesLandroid/net/Uri;" in them, there should be like 4 or 5 of these lines you have to remove/delete. What you see in "RED" is the line you have to search for and also remove/delete completely:
SEARCH FOR:
Code:
[COLOR="Red"]Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;[/COLOR]
Then remove all of the lines from that search command in "RED" it will begin with "invoke-virtual" and end with "Landroid/net/Uri;". Here is an example below and remember what you see in "RED" is the line you have to search for and also remove/delete completely:
EXAMPLE:
Code:
.line 3316
:try_start_14b
sget-object v24, Lcom/android/mms/transaction/MessagingNotification;->LOG_SMS_URI:Landroid/net/Uri;
move-object/from16 v0, p3
move-object/from16 v1, v24
move-object/from16 v2, v23
[COLOR="Red"]invoke-virtual {v0, v1, v2}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;[/COLOR]
:try_end_156
.catch Landroid/database/sqlite/SQLiteException; {:try_start_14b .. :try_end_156} :catch_1c2
Once you remove like 4 or 5 of those lines with "Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValuesLandroid/net/Uri;" in them and there is none left, save your changes, Recompile your SecMms.apk you are now DONE!
★HOW TO ENABLE THE SCREEN ON/OFF TOGGLE ★
WHAT DOES THIS MOD DO: This mod will let you enable the Screen on/off toggle so you will have a toggle to enable/disable the notification backlight when receiving text/mms messages using the stock messaging app.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, And what you see in "BLUE" is the line you have to make changes to:
TO ENABLE THE SCREEN ON/OFF TOGGLE FEATURE...
FIND:
Code:
[COLOR="Green"].method public static getEnableNotificationBacklight()Z[/COLOR]
.registers 1
.prologue
.line 1245
sget-boolean v0, Lcom/android/mms/MmsConfig;->sEnableNotificationBacklight:Z
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableNotificationBacklight()Z[/COLOR]
.registers 1
.prologue
.line 1245
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
Once done save your changes, now go to:
smali/com/android/mms/ui/MessagingPreferenceActivity.smali
Click to expand...
Click to collapse
Now open up "MessagingPreferenceActivity.smali" with your notepad++ for editing.
For this part of the guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely which is the "invoke-direct" line which has "removePreference" in it:
SEARCH FOR:
Code:
[COLOR="Green"]const-string v10, "pref_key_backlight"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 839
[COLOR="Green"]const-string v10, "pref_key_backlight"[/COLOR]
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v10
[COLOR="Red"]invoke-direct {p0, v2, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
Once done now save changes, Recompile your SecMms.apk and that's it your DONE!!!
★HOW TO DISABLE THE SMS TO MMS AUTO-CONVERSION FOR EMOJI★
WHAT DOES THIS MOD DO: This mod will let you type emoji and it won't automatically convert it into MMS.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/ui/ComposeMessageFragment.smali
Click to expand...
Click to collapse
Now open up "ComposeMessageFragment.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
invoke-virtual/range {v19 .. v20}, Lcom/android/mms/data/WorkingMessage;->setEmojiRequiresMms(Z)V
SEARCH FOR THIS TWICE SINCE THERE ARE TWO OF THESE SAME GREEN LINES AND MAKE THE SAME CHANGES THAT YOU SEE IN BLUE!
NOW REMOVE:
Code:
.line 1403
move-object/from16 v0, p0
iget-object v0, v0, Lcom/android/mms/ui/ComposeMessageFragment;->mWorkingMessage:Lcom/android/mms/data/WorkingMessage;
move-object/from16 v19, v0
const/16 v20, 0x1
[COLOR="Red"]invoke-virtual/range {v19 .. v20}, Lcom/android/mms/data/WorkingMessage;->setEmojiRequiresMms(Z)V[/COLOR]
AND CHANGE TO:
Code:
.line 1403
move-object/from16 v0, p0
iget-object v0, v0, Lcom/android/mms/ui/ComposeMessageFragment;->mWorkingMessage:Lcom/android/mms/data/WorkingMessage;
move-object/from16 v19, v0
const/16 v20, 0x1
[COLOR="Blue"]invoke-static {}, Lcom/android/mms/MmsConfig;->getEnableEmoji()Z[/COLOR]
Once done now save changes, Recompile your SecMms.apk and that's it you are now DONE!!!
★HOW TO ENABLE FOLDER VIEW MODE★
WHAT DOES THIS MOD DO: This mod will let you enable the folder view mode feature which will let you see messages in a different way with a inbox, sentbox, outbox, draftbox, and push message folder category.
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, And what you see in "BLUE" is the line you have to make changes to:
TO ENABLE FOLDER VIEW MODE...
FIND:
Code:
[COLOR="Green"].method public static getEnableFolderView()Z[/COLOR]
.registers 1
.prologue
.line 2605
sget-boolean v0, Lcom/android/mms/MmsConfig;->sEnableFolderView:Z
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableFolderView()Z[/COLOR]
.registers 1
.prologue
.line 2605
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
Once done now save changes, Recompile your SecMms.apk and that's it your DONE!!!
i'll be taking this spot also...
another spot just in case...
Dude!!! Awesome tutorial. :good::good:
Oh mehn nice find....
Sent from my SM-N900T using Tapatalk 4
great stuff!
Is there one for stopping the lockscreen from lighting up with each message received ?
Sent from my SM-N900T using xda app-developers app
Dude you're on fire, you own the note 3 forums!
brock1909 said:
great stuff!
Is there one for stopping the lockscreen from lighting up with each message received ?
Sent from my SM-N900T using xda app-developers app
Click to expand...
Click to collapse
Send yourself a text message the screen shouldnt light up i think its off now by default for the note 3.
Sent from my SM-N900T using Tapatalk 4
marcoxx626 said:
Dude you're on fire, you own the note 3 forums!
Click to expand...
Click to collapse
Heck yeah man and there is more!
Sent from my SM-N900T using Tapatalk 4
jovy23 said:
Send yourself a text message the screen shouldnt light up i think its off now by default for the note 3.
Sent from my SM-N900T using Tapatalk 4
Click to expand...
Click to collapse
Every text I get my screen lights up
Sent from my SM-N900T using xda app-developers app
brock1909 said:
Every text I get my screen lights up
Sent from my SM-N900T using xda app-developers app
Click to expand...
Click to collapse
I will check tonight and see.
Sent from my SM-N900T using Tapatalk 4
jovy23 said:
I will check tonight and see.
Sent from my SM-N900T using Tapatalk 4
Click to expand...
Click to collapse
appreciate it. May flash clean tonight again, getting the same text from people multiple times, extremely annoying
Thanks again for all your hard work
Sent from my SM-N900T using xda app-developers app
My god, I will need 2 or 3 extra lifetimes in order to perform this mods...
Sent from my SM-N900T using XDA Premium 4 mobile app
OP updated! New mod "HOW TO ENABLE THE SCREEN ON/OFF TOGGLE".
Sorry if this is a stupid question, but can someone just post the modded apk?
sbell7105 said:
Sorry if this is a stupid question, but can someone just post the modded apk?
Click to expand...
Click to collapse
I think the reason he didnt post it, is because there are so many variations of things people could want and couldnt want it would be a very high number of APKs
You think you could compile a secmms.apk for me that has
1.Group Messaging
2. Removed sms,mms,email from call logs
3. Screen On/Off Toggle
4.1000 Recipients
I wouldnt mind shooting you over a little donation
I couldnt, for the life of me, figure out the apk decompilers.
Can you write up a tutorial on how to invert the app? Mainly the first page with the list of people who texted you?
Sent from my SM-N900V using xda app-developers app
Brandon_schulze said:
You think you could compile a secmms.apk for me that has
1.Group Messaging
2. Removed sms,mms,email from call logs
3. Screen On/Off Toggle
4.1000 Recipients
I wouldnt mind shooting you over a little donation
I couldnt, for the life of me, figure out the apk decompilers.
Click to expand...
Click to collapse
ditto.

[GUIDE][PORT] [cm11] Dinamic statusbar

what is Dinamic statusbar??
can you see here
or here my original facebook post​
i comparing from another rom include this feature to pure CM11 base
big thanks to
Allah swt
my family
CyanogenMod
@ocoot
@bamzzz
@qoejohn
prabu siliwangi
anggi muhammad
syaeful anwar
deddy kitul
you
REQUIREMENT:
- BRAIN
- Patient
- experience
- Know how to decompile/recompiling Apk and JAR file
- notepad++
- Tool for decompiling, : apkmanager/apktool/Virtous/apkmultitools/ or else ( i use apktool 1.5.2 )
download file recources below
Settings.apk
Decompile Settings.apk
add string
Code:
<string name="dynamic_system_bars_title">Dynamic system bars</string>
<string name="dynamic_status_bar_title">Dynamic status bar</string>
<string name="dynamic_status_bar_summary">Automatically update the background of the status bar</string>
<string name="dynamic_navigation_bar_title">Dynamic navigation bar</string>
<string name="dynamic_navigation_bar_summary">Automatically update the background of the navigation bar</string>
<string name="dynamic_system_bars_gradient_title">System bar gradient</string>
<string name="dynamic_system_bars_gradient_summary">Overlay a gradient on the system bars</string>
<string name="dynamic_status_bar_filter_title">Darker status bar</string>
<string name="dynamic_status_bar_filter_summary">Overlay a darkening filter on the status bar</string>
open
res/xml/display_settings.xml
add wherever you want
Code:
<PreferenceScreen android:title="Dinamic Status Bar" android:fragment="com.android.settings.oplosandev.DSBSettings" />
place DSBSettings.smali into folder "smali" ,after recompile and decompile automatic place directories name smali
Recompile
Decompile
open
DSBSettings.smali
matched
const v0, 0x7f050071 #type="xml" name="dsb_settings"
Recompile
sign
push
SystemUI.apk
decompile SystemUI
open
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions.smali
find
Code:
# instance fields
add above
Code:
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$1;,
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$GradientObserver;,
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$PhoneStatusBarBackgroundDrawable;
}
.end annotation
findmethod
Code:
.method public constructor <init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;)V
replace with
Code:
.method public constructor <init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;)V
.locals 4
.parameter "view"
.prologue
const/4 v3, 0x1
.line 47
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$PhoneStatusBarBackgroundDrawable;
invoke-virtual {p1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->getContext()Landroid/content/Context;
move-result-object v2
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$PhoneStatusBarBackgroundDrawable;-><init>(Landroid/content/Context;)V
invoke-direct {p0, p1, v1}, Lcom/android/systemui/statusbar/phone/BarTransitions;-><init>(Landroid/view/View;Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;)V
.line 48
iput-object p1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions;->mView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
.line 49
iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions;->mView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
invoke-virtual {v1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->getContext()Landroid/content/Context;
move-result-object v1
invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
.line 50
.local v0, res:Landroid/content/res/Resources;
const v1, 0x7f0b002b [COLOR="Red"]#type="dimen" name="status_bar_icon_drawing_alpha"[/COLOR]
invoke-virtual {v0, v1, v3, v3}, Landroid/content/res/Resources;->getFraction(III)F
move-result v1
iput v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions;->mIconAlphaWhenOpaque:F
.line 51
return-void
.end method
skip this step if in your have it
add this
dimens.xml
Code:
<item type="dimen" name="status_bar_icon_drawing_alpha">75.0%</item>
colors.xml
Code:
<color name="status_bar_background_opaque">#ff000000</color>
<color name="status_bar_background_semi_transparent">#66000000</color>
intergers.xml
Code:
<integer name="dsb_transition_duration">500</integer>
push smali
recoompile
decompile
open public.xml
and matched all id
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$PhoneStatusBarBackgroundDrawable.smali
Code:
const v1, 0x7f07000a #type="color" name="status_bar_background_opaque"
const v3, 0x7f07000b #type="color" name="status_bar_background_semi_transparent"
const v4, 0x7f0201dd #type="drawable" name="status_background"
Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable.smali
Code:
const v1, 0x7f090015 #type="integer" name="dsb_transition_duration"
Navbar
open
Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;
find code
Code:
# instance fields
.field private final mBarService:Lcom/android/internal/statusbar/IStatusBarService;
add above
Code:
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$GradientObserver;,
Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$NavigationBarBackgroundDrawable;
}
.end annotation
find
Code:
.method public constructor
change like it
Code:
# direct methods
.method public constructor <init>(Lcom/android/systemui/statusbar/phone/NavigationBarView;)V
.locals 3
.parameter "view"
.prologue
.line 50
new-instance v0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$NavigationBarBackgroundDrawable;
invoke-virtual {p1}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getContext()Landroid/content/Context;
move-result-object v1
invoke-direct {v0, v1}, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$NavigationBarBackgroundDrawable;-><init>(Landroid/content/Context;)V
invoke-direct {p0, p1, v0}, Lcom/android/systemui/statusbar/phone/BarTransitions;-><init>(Landroid/view/View;Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;)V
.line 242
new-instance v0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$2;
invoke-direct {v0, p0}, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$2;-><init>(Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;)V
iput-object v0, p0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;->mLightsOutListener:Landroid/view/View$OnTouchListener;
.line 52
iput-object p1, p0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;->mView:Lcom/android/systemui/statusbar/phone/NavigationBarView;
.line 53
const-string v0, "statusbar"
invoke-static {v0}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
move-result-object v0
invoke-static {v0}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/statusbar/IStatusBarService;
move-result-object v0
iput-object v0, p0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;->mBarService:Lcom/android/internal/statusbar/IStatusBarService;
.line 55
return-void
.end method
save
open
Lcom/android/systemui/statusbar/phone/NavigationBarView$StatusBarBlockerTransitions;
find
Code:
.method public constructor
change to
Code:
# direct methods
.method public constructor <init>(Landroid/view/View;)V
.locals 5
.parameter "statusBarBlocker"
.prologue
.line 1268
new-instance v0, Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;
invoke-virtual {p1}, Landroid/view/View;->getContext()Landroid/content/Context;
move-result-object v1
const v2, 0x7f07000a #type="color" name="status_bar_background_opaque"
const v3, 0x7f07000b #type="color" name="status_bar_background_semi_transparent"
const v4, 0x7f0201dd #type="drawable" name="status_background"
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;-><init>(Landroid/content/Context;III)V
invoke-direct {p0, p1, v0}, Lcom/android/systemui/statusbar/phone/BarTransitions;-><init>(Landroid/view/View;Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;)V
.line 1273
return-void
.end method
and matched all id
Code:
const v2, 0x7f07000a #type="color" name="status_bar_background_opaque"
const v3, 0x7f07000b #type="color" name="status_bar_background_semi_transparent"
const v4, 0x7f0201dd #type="drawable" name="status_background"
do enabling navigation bar via build.prop
add this code at ADDITIONAL_BUILD_PROPERTIES
Code:
qemu.hw.mainkeys=0
push
Settings.apk /system/priv-app/here
SystemUI.apk /system/priv-app/here
systemui.so /system/lib/here
or other way, u can try methode flasahble.zip,adb,or other
Hi will it work in gingerbread phones? coz my systemui does not have phone folder under com/android/systemui/statusbar/
RESERVED !!!
nice share omm...
Jedz77 said:
Hi will it work in gingerbread phones? coz my systemui does not have phone folder under com/android/systemui/statusbar/
Click to expand...
Click to collapse
cm11 only.....
stock kk adjust
dugeriss said:
cm11 only.....
stock kk adjust
Click to expand...
Click to collapse
oh my bad. sorry. i really like it though. anyways thanks maan nice mod btw
dugeriss said:
what is Dinamic statusbar??
can you see here
or here my original facebook post​
i comparing from another rom include this feature to pure CM11 base
big thanks to
Allah swt
my family
CyanogenMod
@ocoot
@bamzzz
@qoejohn
prabu siliwangi
anggi muhammad
syaeful anwar
deddy kitul
you
REQUIREMENT:
- BRAIN
- Patient
- experience
- Know how to decompile/recompiling Apk and JAR file
- notepad++
- Tool for decompiling, : apkmanager/apktool/Virtous/apkmultitools/ or else ( i use apktool 1.5.2 )
download file recources below
Click to expand...
Click to collapse
Hey Great Guide!!Thank you for the willingness!Please could you make a guide on how to port Hover to cm11 ?Please it's so important for me and I've searched so many times on web but I haven't found nothing and I don't know how to do it,Please
ah..... great work sir :good: :fingers-crossed:
kitul..!!
Nice :good:
Ahmm .. Sir... I tried This one on cm11 ... but it doesnt force closes .. rather it gets black screen? i tried your guide twice .. but the same thing happens.. Please Help... BTw this guide is good
Thanks...
my Stock Kitkat 4.4.2 :good:
Can someone help me to upload cm 11 r26 statusbar without sim number indicator ??, my pc Hard disk got broken , lost all data, thanks
Thank you sir ,,
Micky99 said:
Hey Great Guide!!Thank you for the willingness!Please could you make a guide on how to port Hover to cm11 ?Please it's so important for me and I've searched so many times on web but I haven't found nothing and I don't know how to do it,Please
Click to expand...
Click to collapse
Hover is not easy because it gas so many commits with many additions and a lot of files changed
srisurya95 said:
Hover is not easy because it gas so many commits with many additions and a lot of files changed
Click to expand...
Click to collapse
Should I see your answer as a "no I won't help you",or do you mean you want to help me but it won't be easy?What's the problem?Do you think the hover related commits are too much for only two persons?
Micky99 said:
Should I see your answer as a "no I won't help you",or do you mean you want to help me but it won't be easy?What's the problem?Do you think the hover related commits are too much for only two persons?
Click to expand...
Click to collapse
I say its not possible/not so easy
srisurya95 said:
I say its not possible/not so easy
Click to expand...
Click to collapse
Dont you absolutely know some of the hover related commits?

Categories

Resources