[ONE General] CoinCoin88:
If anyone is interested, here is a way to fix the MMS size limit bug (in previous stock messaging app, it was >300ko, no it is reduced to 300ko). Symptoms: you receive a MMS and your messaging app says "Message is too big to download".

Requirements

Edit the maxMessageSize value in mms_config.xml that's embedded in Mms.apk. For that, you need:

- root

- working adb drivers on your computer

- a hex editor, because the XML file is not really XML but somehow compressed

I did that exact procedure yesterday, it worked at first try... But messing around with system APKs is always risky, so if you end up soft-bricked well.... your loss. Always be prepared and have a recent backup when messing around.

How-to fix ?

1) Plug your phone in a USB port, enable USB debugging, check that it is detected by ADB

adb devices

2) Prepare your working environment on your computer

Here, assuming Linux or OSX

cd ~/
mkdir res
mkdir res/xml

(or, on Windows, create a new directory "res" on your Desktop and another one named "xml" within the first one)

3) Pull the Mms.apk to your computer and rename it to .zip to easily deal with it

adb pull /system/priv-app/Mms/Mms.apk .
mv Mms.apk Mms.zip

4) Extract only the file to be edited

This way, you won't have to extract the whole APK and repack it, having to sign it again in the process

unzip -p Mms.zip res/xml/mms_config.xml >mms_config.xml
mv mms_config.xml res/xml/

5) Using your favorite hex editor, open the mms_config.xml file you just moved to res/xml/

Inside, you'll find some interesting values, notably one that reads

maxMessageSize 307200

The 307200 value is the max size (in bytes) of any incoming or outgoing message. Basically, you have to increase it so that it is higher than the size of the MMS you're trying to grab. Remember that the MMS size (in kilobytes) must be multiplied by 1024 to have its size in bytes. For example, 307200 bytes = 300 kilobytes.

Warning : the size you specify must comply with the standards of your carrier (and probably with all carriers in your country ?). If you set a value too high and for some reason you manage to generate a MMS too big and try to send it, it might never leave your phone. As a good practive, I've found the value 600 ko (614400) to be correct. If you live in France, it is the max value enforced by SFR in their apn, so it's fair to say it's compatible with all French carriers. But again, that's a guess. I've personnally used 350000 at first, and then I checked on a friend's iPhone (because you can see easily the value in a menu) and found the 614400 value, so I've upgraded to that afterwards.

Long story short, change the maxMessageSize value in your hex editor to

maxMessageSize 614400

Save and exit your hex editor...

6) Update the mms_config.xml in the zip with your newly edited filed and revert to the APK extension

Be sure that your prompt in terminal is still in your base working directory (the one where you pulled Mms.apk)

and not ./res/xml

because you need to update the zip with the whole /res/xml/mms_config.xml hierachy

zip Mms.zip /res/xml/mms_config.xml
mv Mms.zip Mms.apk

(you should see a "Updated....." line telling you that everything went well after the first command)

7) Push back your new APK to the phone

adb push Mms.apk /sdcard/

8) Using a root file explorer

Rename the original /system/priv-app/Mms/Mms.apk to Mms.apk.bak (just in case)

Then move your pushed Mms.apk (located in /sdcard/) to /system/priv-app/Mms/

9) Reboot, cross your fingers, enjoy.