Oh damn, I'm sorry I forgot to tell you all that time that it's working perfectly on the GT-i9000 with the CM9 Builds & Nightlys 
Wish i would have read this before i spent all night with apktool trying to splice the smali lines in. No matter what, tampering with the apk gives us FC's upon selecting threads. I can compose and send texts, but it crashes upon switching to the thread view after sendingThis looks absolutely amazing and how the MMS app should look, unfortunately nobody can get it to work with the recent ICS leak for the Skyrocket, GS2 tmobile, or note. It opens, but force closes when you select a thread.
You can try this:Wish i would have read this before i spent all night with apktool trying to splice the smali lines in. No matter what, tampering with the apk gives us FC's upon selecting threads. I can compose and send texts, but it crashes upon switching to the thread view after sending
hhhmmn.. editor options?I tried this with an LG P500h. And the enter button appeared correctly, however, it is not working properly since every time I push it sends the sms.
I tried to disable the option you mentioned in Editor Options but not able to find it.
I am running CMod 7.2.0 RC1 with GGB 2.3.7
Thanks in advance..
Aldo
This was an issue with the old base Mms.apk file on V4.I have a problem with gestures...
I have the same problem. I have applied the mod on my mms.apk. Galaxy S on AOKP.Hi. I'm on a Galaxy S2 running Dynamic 1.4 ROM .. it's deodexed so it should work, but I too get FC when trying to open a thread.. starting a new one, sending an text is ok, but when I try to open an existing one the processes is terminated.. Any ideas (solution)??
How do I adjust the .line numbers? compared to my previous smali, the modded snipet has more .lines...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:
3. Adjust the .line numbering to the numbering used by the previous method before patching. Not adjusting the .line numbering would/may cause errors.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
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.
6. Open the patched Mms.apk file earlier using WinZip or WinRAR and overwrite its classes.dex file with the new modified one.Code:java -jar ./smali.jar -o ./classes.dex ./smali
If you're on Ubuntu you can type this command in terminal:
7. Copy the patched Mms.apk file to your phone's /system/app folder. Apply proper ownership and permissions.Code:zip -m Mms.apk classes.dex
Hi. I'm on a Galaxy S2 running Dynamic 1.4 ROM .. it's deodexed so it should work, but I too get FC when trying to open a thread.. starting a new one, sending an text is ok, but when I try to open an existing one the processes is terminated.. Any ideas (solution)??
Can you provide a logcat for the FC?I have the same problem. I have applied the mod on my mms.apk. Galaxy S on AOKP.
The modded snippet has 15 .lines (3232 - 3217), how many .lines does your previous smali have? You can try using some .line values from your previous smali's range not explicitly shown in the smali code.How do I adjust the .line numbers? compared to my previous smali, the modded snipet has more .lines...
Can I request the apocalypse [17.06.2012] mms.apk with enter key?
thanks before![]()
thanks dude for your helpfull tutorialHow 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:
3. Adjust the .line numbering to the numbering used by the previous method before patching. Not adjusting the .line numbering would/may cause errors.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
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.
6. Open the patched Mms.apk file earlier using WinZip or WinRAR and overwrite its classes.dex file with the new modified one.Code:java -jar ./smali.jar -o ./classes.dex ./smali
If you're on Ubuntu you can type this command in terminal:
7. Copy the patched Mms.apk file to your phone's /system/app folder. Apply proper ownership and permissions.Code:zip -m Mms.apk classes.dex
you don't have to change the line numbers, just adjust your line with this oneHow do I adjust the .line numbers? compared to my previous smali, the modded snipet has more .lines...
found the same on CM9 for HTC One S (Alpha 10)Don't know if this is helpful or not but the mms.apk in the rom I'm using has options for emoji, enter/next line & enter/send.
http://db.tt/HUT9J4IW
Have a go....
....memoirs of a flash addict.