Related
Do you dislike the leading zero from the digital clock widget or dual clock widget? If so, you can now remove them with the following guide.
A) DigitalClock.apk
1. Decompile DigitalClock.odex with baksmali
2. Edit the file com/sec/android/widgetapp/digitalclock/DigitalClockWidgetProvider.smali
3. Search for the method drawHour()
Code:
.method private static drawHour(Landroid/content/Context;Landroid/widget/RemoteViews;Ljava/util/Date;Z)V
...
.end method
4. Add the following lines in red to the drawHour() method.
Code:
...
const v3, 0x7f070007
const/4 v4, 0x4
invoke-virtual {p1, v3, v4}, Landroid/widget/RemoteViews;->setViewVisibility(II)V
.line 202
:goto_13
const v3, 0x7f070002
invoke-static {v0}, Lcom/sec/android/widgetapp/digitalclock/DigitalClockWidgetProvider;->getClockNumberResourceId(I)I
move-result v4
[COLOR="Red"][b]#if hour1 is zero then draw transparent image (0x106000d)
if-nez v0, :cond_1f
const v4, 0x106000d
:cond_1f[/b][/COLOR]
invoke-virtual {p1, v3, v4}, Landroid/widget/RemoteViews;->setImageViewResource(II)V
.line 203
const v3, 0x7f070003
invoke-static {v1}, Lcom/sec/android/widgetapp/digitalclock/DigitalClockWidgetProvider;->getClockNumberResourceId(I)I
move-result v4
invoke-virtual {p1, v3, v4}, Landroid/widget/RemoteViews;->setImageViewResource(II)V
...
5. Recompile and push to /system/app
6. Restart phone.
B) DualClock.apk
1. Decompile DualClock.odex with baksmali
2. Edit the file com/sec/android/widgetapp/dualclock/DigitalDualClockView$DigitalClockView.smali
3. Search for the method update()
Code:
.method public update(Z)V
...
.end method
4. Add the following lines in red to the update() method.
Code:
...
iget-object v11, p0, Lcom/sec/android/widgetapp/dualclock/DigitalDualClockView$DigitalClockView;->iv_hour01:Landroid/widget/ImageView;
iget-object v12, p0, Lcom/sec/android/widgetapp/dualclock/DigitalDualClockView$DigitalClockView;->numbers:[I
aget v12, v12, v2
[COLOR="Red"][b]#if hour1 is zero then draw transparent image (0x106000d)
if-nez v2, :cond_b4
const v12, 0x106000d
:cond_b4[/b][/COLOR]
invoke-virtual {v11, v12}, Landroid/widget/ImageView;->setImageResource(I)V
.line 932
iget-object v11, p0, Lcom/sec/android/widgetapp/dualclock/DigitalDualClockView$DigitalClockView;->iv_hour02:Landroid/widget/ImageView;
iget-object v12, p0, Lcom/sec/android/widgetapp/dualclock/DigitalDualClockView$DigitalClockView;->numbers:[I
aget v12, v12, v3
...
5. Recompile and push to /system/app
6. Restart phone.
C) Lock screen
1. Decompile android.policy.odex with baksmali
2. Edit the file com/android/internal/policy/impl/UnlockClockGB.smali
3. Search for the method transformHourData()
Code:
.method private transformHourData(I)Ljava/lang/String;
...
.end method
4. In the transformHourData() method:
Find the line: (x2)
Code:
invoke-direct {p0, p1}, Lcom/android/internal/policy/impl/UnlockClockGB;->checkTimeValue(I)Ljava/lang/String;
Replace with this line: (x2)
Code:
[COLOR="Red"][b]#don't check time value (add zero prefix), convert to string directly
invoke-static {p1}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;[/b][/COLOR]
5. Recompile and push to /system/framework
(if using dexopt-wrapper to convert back to odex, remember to add the last argument $BOOTCLASSPATH to the wrapper call)
6. Restart phone.
Enjoy!
++++++++++++++++++++++++++++++++++
UPDATED July 10, 2013: This GUIDE was written back for ICS firmware, although it might still work for JB - I couldn't confirm that due to the fact I had stopped developing/modding. Keep in mind you need to use the latest APKtool - From Here - for JB system. Also don't forget to copy from original apk "AndroidManifest.xml" file and "META-INF" folder for the New "modded" SystemUI.apk to work.
++++++++++++++++++++++++++++++++++
I was helping a member learn how to add the brightness bar slider to his/her status bar. Since I spend a good amount of time typing it up. So I might as well post it here for everyone
General Knowledge
LEARN how to decompile/Compile APK
APK Tool I used APK 1.5.0
Click to expand...
Click to collapse
PART I: Download resource file here: SystemX.zip
Decompile your SystemUI
Copy from the file/folder in SystemX to same location on your SystemUI:
icon: /res/drawable-hdpi/quickpanel_brightness_icon.png
(could be different folder based on your device, where ever your toggle icons put it there)
file: res/layout/quickpanel_brightness_settings.xml
folder: /smali/com/android/systemui/statusbar/quickpanel folder
PART II: Now you need to declare all added variants:
Ids - Open /res/values/ids.xml - Add these three lines at the end. Close & save.
Code:
<item type="id" name="title">false</item>
<item type="id" name="brightness_slider">false</item>
<item type="id" name="automatic">false</item>
Strings - Open /res/values/strings.xml - Add these two lines at the end. Close & save.
Code:
<string name="brightness_settings_title">Brightness</string>
<string name="brightness_settings_automatic">Fixed</string>
Public - Open /res/values/public.xml - Add to end of each section - Continue with the last id called out.
Code:
....
<public type="drawable" name="quickpanel_brightness_icon" id=[color=red]"0x7f020166"[/color] />
....
<public type="layout" name="quickpanel_brightness_settings" id=[color=red]"0x7f03001e"[/color] />
...
<public type="string" name="brightness_settings_title" id=[color=red]"0x7f08009e"[/color] />
<public type="string" name="brightness_settings_automatic" id=[color=red]"0x7f08009f"[/color] />
...
<public type="id" name="title" id=[color=red]"0x7f0e009d"[/color] />
<public type="id" name="brightness_slider" id=[color=red]"0x7f0e009e"[/color] />
<public type="id" name="automatic" id=[color=red]"0x7f0e009f"[/color] />
*Change those in red per your ids - best open public.xml in Excel, sort by id - you will see the last number was used in each section.
PART III: Now we need to edit the Smali associated with your Public.xml Id's:
Open /smali/com/android/systemui/statusbar/quickpanel/BrightnessSettingsView.smali in Notepad++ (or similar) - Change if needed:
@ line 201
Code:
const v1, [color=red]0x7f08009e[/color]
ID associated with public.xml string section name="brightness_setting_title"
@ line 207
Code:
const v1, [color=red]0x7f08009f[/color]
ID associated with public.xml string section name="brightness_settings_automatic"
@ line 257
Code:
const v1, [color=red]0x7f0e009d[/color]
ID associated with public.xml id section name="title"
@ line 267
Code:
const v1, [color=red]0x7f0e009e[/color]
ID associated with public.xml id section name="brightness_slider"
@ line 308
Code:
const v1, [color=red]0x7f0e009f[/color]
ID associated with public.xml id section name="automatic"
Save & Close.
Open /smali/com/android/systemui/statusbar/phone/PhoneStatusBar.smali in Notepad++ (or similar)
Find this Section:
Code:
....
.method protected makeStatusBarView()Landroid/view/View;
.locals 13
.prologue
const/16 v12, 0x8
.....
[i](very long find the last line in this section)[/i]
.....
[color=blue].line 382
return-object v4[/color]
.line 311
.end local v2 #filter:Landroid/content/IntentFilter;
.end local v6 #signalCluster:Lcom/android/systemui/statusbar/SignalClusterView;
.end local v7 #statSysNoSim:Landroid/widget/ImageView;
.end local v8 #tickerView:Lcom/android/systemui/statusbar/phone/TickerView;
:catch_0
move-exception v9
goto/16 :goto_0
.end method
.method onBarViewAttached()V
......
In between .line 382 (this line number is not important - ignore whatever it is, only make sure it's the last line in this section) and return-object v4 - Add:
Code:
[color=indigo][color=blue].line 382[/color]
const v6, [color=red]0x7f03001e[/color]
invoke-static {v0, v6, v11}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View;
move-result-object v5
check-cast v5, Lcom/android/systemui/statusbar/quickpanel/BrightnessSettingsView;
invoke-virtual {v5}, Lcom/android/systemui/statusbar/quickpanel/BrightnessSettingsView;->init()V
iget-object v6, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedView:Lcom/android/systemui/statusbar/phone/ExpandedView;
const/4 p0, 0x1
invoke-virtual {v6, v5, p0}, Lcom/android/systemui/statusbar/phone/ExpandedView;->addView(Landroid/view/View;I)V
[color=blue]return-object v4[/color][/color]
ID associated with public.xml layout section name="quickpanel_brightness_settings"
Note: If you already had Toggle Mod - It should look like this:
Code:
[color=blue].line 382[/color]
iget-object v9, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mBroadcastReceiver:Landroid/content/BroadcastReceiver;
invoke-virtual {v0, v9, v2}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
const v6, 0x7f03001c
invoke-static {v0, v6, v11}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View;
move-result-object v5
check-cast v5, Lcom/lidroid/systemui/quickpanel/PowerWidget;
invoke-virtual {v5}, Lcom/lidroid/systemui/quickpanel/PowerWidget;->setupWidget()V
iget-object v6, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedView:Lcom/android/systemui/statusbar/phone/ExpandedView;
invoke-virtual {v6, v5, v11}, Lcom/android/systemui/statusbar/phone/ExpandedView;->addView(Landroid/view/View;I)V
[color=indigo]const v6, [color=red]0x7f03001e[/color]
invoke-static {v0, v6, v11}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View;
move-result-object v5
check-cast v5, Lcom/android/systemui/statusbar/quickpanel/BrightnessSettingsView;
invoke-virtual {v5}, Lcom/android/systemui/statusbar/quickpanel/BrightnessSettingsView;->init()V
iget-object v6, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedView:Lcom/android/systemui/statusbar/phone/ExpandedView;
const/4 p0, 0x1
invoke-virtual {v6, v5, p0}, Lcom/android/systemui/statusbar/phone/ExpandedView;->addView(Landroid/view/View;I)V
[color=blue]return-object v4[/color][/color]
Save & Close
PART IV: Compile & push to your system, don't forget to set your permission to rw-r--r-- ! DONE.
The End: That's all - Wasn't that hard, wasn't it ? :silly: .... Good Luck !!! :highfive:
Disclaimer:
I didn't write up the code for quickpanel brightness settings, it has been pass on from forum to forum - I do not know the original author. If it's your please let me know so we all can give proper thanks.
Click to expand...
Click to collapse
+1
+thanks for you.
Yeeeah, I think we need more people like you
thanks for the tutorial.
How would you go about removing the brightness bar (manually)?
fcb13 said:
How would you go about removing the brightness bar (manually)?
Click to expand...
Click to collapse
The quickest way is take out the Added code in the PhoneStatusBar.smali. You can ignore the rest. But it would be more clean if you reverse the guide.
is it working on other phone such samsung or only xperia??
d3cka said:
is it working on other phone such samsung or only xperia??
Click to expand...
Click to collapse
NO, this guide is for Xperia - Samsung had a different layout in SystemUI
Ohh thanks for the answer
Sent from my GT-S5360 using xda premium
can someuone upload the edited SystemUI? I dont have a pc right now only phone
Awesome work.
Worked for me. Can't say anything changes in touchscreen sensitivity, it was fine before. But the capacitive buttons were always kind of a pain in the .ss, now they respond much better. Thanks a lot for this mod. Xperia Ion.
My phone doesn't have phonestatusbar.smali
Sent from my XT530 using xda app-developers app
I don' t know if this work.
I have a problem, decompile e recompile SystemUI.apk without an error, but when use SystemUI recompileted it's don't work.
Can Someone help me?
Where I should add line from part III? In file extracted from systemX.zip I have no one "line" with needed id.
Oh, it was my mistake - i searched for ".line"
Thank you for this guide!
great tutorial:good:
+1 thanks
Sent from my LT26i using xda app-developers app
I wanna add the slider in 2.3 but i could not find phonestatubar.smali
what can I do?
i think you can code a patch to help every body
Great tutorial! thanks!
on other manufacturers phones, it is /smali/com/android/systemui/statusbar/StatusBarService.smali
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
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.
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?