[MOD][DIY] Get Working MMS + SMS Auto-Split for CM10.1 and AOSP ROMs - Sprint Samsung Galaxy S III

So I've made this mod for myself for a long time now, I've had numerous requests from people to add this to CM's source, I have no idea nor interest in doing that but if anyone out there wants to, go ahead.
Anyway this mod is for users of CM 10.1 nightly's and other AOSP based ROMs (PACMan, Slim ROM, AOKP, etc) . I haven't used it in a while so I'm not sure if this is even needed.
This mod will get MMS working properly and will also allow you to send multiple messages without having to stop at 160 characters per message.
You need apktool to decompile the apk, I use this version (apktool.jar and aapt.exe)
-First, get these two apk's from your current CM 10.1 build onto your computer
*/system/app/Mms.apk
*/system/framework/framework-res.apk
-Next, place those apk's in your apktool directory. Open up a command prompt, CD your apktool folder and issue the following commands
Code:
apktool if framework-res.apk
apktool d Mms.apk
-In your decompiled Mms.apk folder, navigate to /res/xml/ and replace the mms_config.xml with this one
-Once that xml is replaced recompile the Mms.apk. In case you're not too familiar with apktool you do so my issuing this command
Code:
apktool b Mms Mms-mod.apk
-In your apktool folder you should see the Mms-mod.apk. Drag and drop the META-INF folder and AndroidManifest.xml from the original Mms.apk into your Mms-mod.apk
-Lastly, rename your modified apk to just Mms.apk and make a flashable zip for yourself. Here is a DIY I wrote up a while back for that.
I'm not on XDA much anymore so I won't take requests to this for every nightly, however if someone wants to add this to CM's code feel free!
Happy Holidays

if the link for the modified mms_config.xml isn't working use this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<mms_config version="3">
<int name="maxMessageSize">307200</int>
<int name="maxImageHeight">480</int>
<int name="maxImageWidth">640</int>
<string name="userAgent">SAMSUNG-SPH-L710-Mms/2.0</string>
<bool name="enableMultipartSMS">true</bool>
<bool name="enableSplitSMS">true</bool>
<string name="uaProfUrl">http://device.sprintpcs.com/Samsung/</string>
</mms_config>

This doesn't seem to work for me. Got it all put together, pushed it to my device, and it runs but doesn't show the extra options.

bmxchampga said:
This doesn't seem to work for me. Got it all put together, pushed it to my device, and it runs but doesn't show the extra options.
Click to expand...
Click to collapse
It works, there's really no new options within the Settings menu besides the add a counter split, which folks should enable just to be safe.
Sent from my SPH-L710 using Tapatalk 2

nice work thank you

Anyway to get a zip for this so it's flashable? I'm not experience with code edits

interhawk1 said:
Anyway to get a zip for this so it's flashable? I'm not experience with code edits
Click to expand...
Click to collapse
Seconded, I'm currently at work and to be provided with a flashable zip would be awesome and I'd be eternally grateful.

This was the only thing I couldnt get working on this version of the rom but unfortunately the instructions are only for seasoned veterans and theres no way for anyone to learn anything here. Surely if nobodys going to teach people the full method then someone can make this a flashable zip and upload it.

xtool said:
This was the only thing I couldnt get working on this version of the rom but unfortunately the instructions are only for seasoned veterans and theres no way for anyone to learn anything here. Surely if nobodys going to teach people the full method then someone can make this a flashable zip and upload it.
Click to expand...
Click to collapse
Lol. What are you having trouble with? The only pre req is you have apktool set up. If you wanna get apktool set up, Google "How to Set up apktool Windows" (or Mac or whatever you have)
I gave a link to the apktool I use and I even typed out the commands needed. But don't say you can't learn anything here; when I was all into development I learned about 75% of easy mods on this site.
Sent from my SPH-L710 using Tapatalk 2

I've read it a bunch of times and haven't a clue where to start.

xtool said:
I've read it a bunch of times and haven't a clue where to start.
Click to expand...
Click to collapse
I edited my post above. The only pre req is you have apktool set up. Start there. I'll be @ my laptop later n can post a link to a tutorial for that. You only need to download JAVA, then use the link in my original post to get the latest apktool.jar and aapt.exe
Sent from my SPH-L710 using Tapatalk 2

Alright here is a guide on how to set up apktool (Windows)
Download JAVA found here. If you're not sure which version of Windows you have (x64 or x86) look under System Info, it'll be under System Type
After you install JAVA navigate to C:\Users\Owner (*Note: "Owner" can be your computer name. ex: C:\Users\Steve\)
Create a folder called apktool
Next, download this package I made for Windows users, it has the latest apktool files for Windows users
Extract it using 7-Zip
Open the extracted folder and copy/paste all of the contents into your C;\Users\Owner\apktool folder
Then follow the instructions in the OP
As soon as you open the command prompt type this
Code:
cd apktool
Then follow the rest as is. If you're having issues getting the framework-res.apk and Mms.apk from your phone to your computer you can email them to yourself or upload them to dropbox or some other file sharing site then download them to your computer

Thank you for the tutorial and how to unpackage (decompress) apks.
I did this for the JellyBean [4.2.1] Beta 2 Rom, got the MMS.APK outta there.
APKTooled it, added the splitsms to true.
Repackaged
Did the zip tutorial and made the zip.
Flashed the zip
It still doesn't auto split.
Any suggestions?
My MMS config:
"<?xml version="1.0" encoding="utf-8"?>
<mms_config version="3">
<int name="maxMessageSize">307200</int>
<int name="maxImageHeight">480</int>
<int name="maxImageWidth">640</int>
<bool name="enableMultipartSMS">true</bool>
<bool name="enableSplitSMS">true</bool>
<string name="userAgent">SAMSUNG-GT-I9100-Mms</string>
<string name="uaProfUrl">http://wap.samsungmobile.com/uaprof/GT-I9100.xml</string>
</mms_config>"

MadDucker said:
Thank you for the tutorial and how to unpackage (decompress) apks.
I did this for the JellyBean [4.2.1] Beta 2 Rom, got the MMS.APK outta there.
APKTooled it, added the splitsms to true.
Repackaged
Did the zip tutorial and made the zip.
Flashed the zip
It still doesn't auto split.
Any suggestions?
My MMS config:
"<?xml version="1.0" encoding="utf-8"?>
<mms_config version="3">
<int name="maxMessageSize">307200</int>
<int name="maxImageHeight">480</int>
<int name="maxImageWidth">640</int>
<bool name="enableMultipartSMS">true</bool>
<bool name="enableSplitSMS">true</bool>
<string name="userAgent">SAMSUNG-GT-I9100-Mms</string>
<string name="uaProfUrl">http://wap.samsungmobile.com/uaprof/GT-I9100.xml</string>
</mms_config>"
Click to expand...
Click to collapse
The mms_config.xml is wrong, I have the correct one for Sprint in the second post
Sent from my SPH-L710 using Tapatalk 2

fergie716 said:
The mms_config.xml is wrong, I have the correct one for Sprint in the second post
Sent from my SPH-L710 using Tapatalk 2
Click to expand...
Click to collapse
Do the differences have to be in order?
Yours:
<string name="userAgent">SAMSUNG-SPH-L710-Mms/2.0</string>
<bool name="enableMultipartSMS">true</bool>
<bool name="enableSplitSMS">true</bool>
<string name="uaProfUrl">http://device.sprintpcs.com/Samsung/</string>
vs a recompiled one:
<bool name="enableMultipartSMS">true</bool>
<bool name="enableSplitSMS">true</bool>
<string name="userAgent">SAMSUNG-SPH-L710-Mms/2.0</string>
<string name="uaProfUrl">http://device.sprintpcs.com/Samsung/</string>
because I did it like the bottom one but it still didn't work.

MadDucker said:
Do the differences have to be in order?
Yours:
<string name="userAgent">SAMSUNG-SPH-L710-Mms/2.0</string>
<bool name="enableMultipartSMS">true</bool>
<bool name="enableSplitSMS">true</bool>
<string name="uaProfUrl">http://device.sprintpcs.com/Samsung/</string>
vs a recompiled one:
<bool name="enableMultipartSMS">true</bool>
<bool name="enableSplitSMS">true</bool>
<string name="userAgent">SAMSUNG-SPH-L710-Mms/2.0</string>
<string name="uaProfUrl">http://device.sprintpcs.com/Samsung/</string>
because I did it like the bottom one but it still didn't work.
Click to expand...
Click to collapse
I'm not sure, I did use CM 10.1 last night for a bit and this worked. I'm back on a TW thing right nw but you can try replacing the entire mms_config.xml with the one I have in the OP. Just d/l the xml and overwrite the one in /res/xml
If tht doesn't do it I'll check out the new CM 10.1 build tomorrow and see if anything changed
Sent from my SPH-L710 using Tapatalk 2

I just made this mod for the latest build 1-5-13 and it works fine. Just follow directions to a T, including using the mms_config.xml in the Op
Also, after you reboot open up the messaging app and go to its settings, select Split Counter and Strip Unicode. But yea I tested it a bunch of times and it works fine
Sent from my SPH-L710 using Tapatalk 2

Here is a flashable zip for this mod, includes a framework-res mod as well. Made for the CM 10.1 build only (1-5-13)
http://db.tt/FcgSsazo
Sent from my SPH-L710 using Tapatalk 2

fergie716 said:
Here is a flashable zip for this mod, includes a framework-res mod as well. Made for the CM 10.1 build only (1-5-13)
http://db.tt/FcgSsazo
Sent from my SPH-L710 using Tapatalk 2
Click to expand...
Click to collapse
Man, I feel stupid now.
In your zip, you added the framework APK. That was probably important in adding to the flashable zip right?
Edit*
OMG It was even worse than that. I was addding the APK under the data/app folder instead of system/app.
Thanks for the zip, thanks for the info. Gave you as much thanks as I could.

Anyway to fix MMS rotation?
Sent from my SPH-L710 using xda app-developers app

Related

[MOD/HOWTO] SMS + No contact limit + No MMS convert + Sent time [JVX/JVT/JVQ/JVP/JVH]

UPDATE!
07/12 JVX added
14/7: JVT version added
14/7: JVQ CWM flashable versions for odexed and deodexed! Massive props to to $omator for this, who obviously knows a lot more about creating CWM zips than I do. Go to his post to download, and thank him while you're at it!
30/6: New JVQ version, thanks again bigdyl69! Get it here.
13/6: JVP version now exists, get it here thanks to bigdyl69!
21/5: Added Froyo JSD and Ginger JVO versions.
10/5: Added JVH version
Ok, this does what it says on the tin. It's a mod of the JVX messaging app that adds 3 often requested features:
No autoconvert to MMS after 3 messages
Sending to unlimited contacts
Sent time instead of received time. If you turn off your phone, messages you get whilst it's off will have the right time!
To install:
Simply copy the included apk depending on your system version to /system/app/Mms.apk, and make a backup first just in case.
Notes:
Your ROM MUST be deodexed!
If it doesn't work, clear the cache, the Dalvik cache, and also clear data for Messaging under Settings->Applications->Manage Applications (it won't delete your messages).
If the times are off by several hours download SMS Time Fix and set it the the correct number of hours to fix the timestamps.
The JVB MMS apk is actually from Darky's 10 RC6, but I don't think it's different from the default.
If I get enough requests for:
Other versions (e.g. JVK, etc)
CWM flashable versions
I'll make them.
Hope this is useful to people!
Massive props to ykk_five for his original mod! I couldn't have made this without his help.
HOWTO
Do you theme your Mms app? Got a custom ROM going on and want to do this yourself? Well here's how!
Download Apk Manager from here.
Get your Mms.apk from /system/app/Mms.apk
Get your twframework-res.apk from /system/framework
Open up Apk Manager and choose option 22
Select Mms.apk as your project
Select option 10 (decompile with dependencies)
When it asks you for your dependency, drag and drop twframework-res.apk into the window and press enter
When that's done, go into apk_manager/projects/Mms.apk
Under /res/xml open up mms_config.xml
Go to: <int name="recipientLimit">10</int> change this to -1
Go to <int name="smsToMmsTextThreshold">4</int> Change this to 100
Now open up /smali/com/android/mms/transaction/SmsReceiverService.smali and open it in any text editor.
Search for 'time'. There will be one entry at approximately line 523
Replace this with: invoke-virtual {p1}, Landroid/telephony/SmsMessage;->getTimestampMillis()J
There will be another at approximately line 2270.
Replace this with: invoke-virtual {v0}, Landroid/telephony/gsm/CbMessage;->getTimestampMillis()J
Save and close them all and go back to apk manager, option 11 'compile'
When you're done, it'll tell you about a 'keep' folder. Go delete mms_config.xml, and in the keep folder also delete resources.arsc and classes.dex
Copy your new Mms.apk to your phone! Don't forget to back up your old one in case you make a mistake.
If you get errors, check the log for mentions of 9.png errors. If they are there, fix your 9 patch files! Use google for that, I'm not explaining how to do this.
If you can't be bothered to do this or don't know how, send me a PM! I've made more than 8 custom Mms.apks for people so far.
Did you know that this was the thing I look for?
Thank you!
I'll provide feedback in case of any problems.
I was wondering if I use handcent sms do I still need this if I wanted the "sent time" instead of receive time?
Cheers
NeoXTC said:
I was wondering if I use handcent sms do I still need this if I wanted the "sent time" instead of receive time?
Cheers
Click to expand...
Click to collapse
No, this is only a modification to the stock SMS app, sorry.
Hey mate,
What did you change in the apk to remove the mms convert?
I am trying to edit the TW4 mms.apk to be the same as what you've done.
Thanks!
Otherwise, Could you make the same changes to the attached mms.apk?
this is the TW4 one.
Ryyuu said:
Hey mate,
What did you change in the apk to remove the mms convert?
I am trying to edit the TW4 mms.apk to be the same as what you've done.
Thanks!
Otherwise, Could you make the same changes to the attached mms.apk?
this is the TW4 one.
Click to expand...
Click to collapse
Under res / xml / mms_preferences.xml change
<int name="smsToMmsTextThreshold">3</int>
To something like 100. I'd just make the edit for you but I'm not at home
Fantastic!!
Thanks mate.
What about the received time setting too?
Also, How are you decompiling and editing your apk's?
I'm on a mac so have been using Betterzip to extract them and KOD to edit them... but i'm afraid i'm still seeing all scrambled text...
Ryyuu said:
Fantastic!!
Thanks mate.
What about the received time setting too?
Also, How are you decompiling and editing your apk's?
I'm on a mac so have been using Betterzip to extract them and KOD to edit them... but i'm afraid i'm still seeing all scrambled text...
Click to expand...
Click to collapse
Ehhh, received time edit involves decompiling and editing the smali files, so it's a little more complex.
As for decompiling/editing, I use apk manager, which is Windows only as far as I know. I run it on my mac using Boot Camp. Also, it won't decompile properly without using the twframework-res.apk dependency file, so make sure you have the tw4 equivalent of that. PM me if you're game to try the smali editing.
Thank so much for your help mate.
I have successfully edited the TW4 mms.apk to remove the SmsToMms conversion.
I'll create a topic for it. But thank you very much for your help. I might have a look at converting the time too. I'll send you a PM.
icon missing
hello, after replaced and rebooted, Messaging icon dissappeared from bottom bar of twiz. Any idea how to bring it back...Sms works normally, sending time shown, as expected.
ruh01 said:
hello, after replaced and rebooted, Messaging icon dissappeared from bottom bar of twiz. Any idea how to bring it back...Sms works normally, sending time shown, as expected.
Click to expand...
Click to collapse
[Solved by Ryyuu, scroll down]
All you need to do to fix this is open the app drawer, press edit, find the messaging icon and drag it to the dock.
This can sometimes happen when playing around with apk's.
Fixed.
You don't imagine how much I am thankful to you. I was looking for this very mod. Thank you so much. It works like a charm on my SGS with Darky's v10.RC6
hi,good work.would you please tell me,which xml or smali files to edit or post it as sources files for developers?I would like to insert it into my transparent mms app.
pauldiddy said:
hi,good work.would you please tell me,which xml or smali files to edit or post it as sources files for developers?I would like to insert it into my transparent mms app.
Click to expand...
Click to collapse
For xml, go to res/xml/mms_preferences.xml, then edit recipientLimit and smsToMmsTextThreshold to something overly large, I used 100 as it seems no one will breach that limit.
As for the sent time, just decompile this and stock Mms.apk and do a windiff on the smali folders. There's 2 lines changed which will jump right out.
Hi.Thanks works perfect on deodexed JVB.
montymintypie said:
For xml, go to res/xml/mms_preferences.xml, then edit recipientLimit and smsToMmsTextThreshold to something overly large, I used 100 as it seems no one will breach that limit.
As for the sent time, just decompile this and stock Mms.apk and do a windiff on the smali folders. There's 2 lines changed which will jump right out.
Click to expand...
Click to collapse
thank you,got it.
I know this may be a little off topic but would this modification work on the JPY froyo MMS.apk? I have decompiled it and looked at the xml and there is a mms_config.xml file with the following code in it:
<?xml version="1.0" encoding="UTF-8"?>
<mms_config version="4">
<bool name="enabledMMS">true</bool>
<int name="maxMessageSize">307200</int>
<int name="mmsHeaderSize">5120</int>
<int name="maxImageHeight">480</int>
<int name="maxImageWidth">640</int>
<int name="defaultSMSMessagesPerThread">200</int>
<int name="defaultMMSMessagesPerThread">20</int>
<int name="minMessageCountPerThread">10</int>
<int name="maxMessageCountPerThread">5000</int>
<string name="uaProfUrl">http://wap.samsungmobile.com/uaprof/GT-i9000.xml</string>
<string name="userAgent">SAMSUNG-GT-I9000-Mms/2.0</string>
<string name="uaProfUrlS1">http://wap.samsungmobile.com/uaprof/GT-i9000.xml</string>
<string name="userAgentS1">SAMSUNG-GT-I9000-Mms/2.0</string>
<string name="uaProfUrlApollo">http://wap.samsungmobile.com/uaprof/GT-i5801.xml</string>
<string name="userAgentApollo">SAMSUNG-GT-I5801-Mms/2.0</string>
<int name="recipientLimit">100</int>
<int name="smsToMmsTextThreshold">100</int>
</mms_config>
Click to expand...
Click to collapse
As you can see I've edited the bottom two lines of code like what you have done to the JVB MMS.apk. Do you think this will work?
It should work just as well on the JPY version, compile it and give it a go!
montymintypie said:
It should work just as well on the JPY version, compile it and give it a go!
Click to expand...
Click to collapse
Well I tried it and it kind of works. I can send a message up to 7 messages long and it doesn't auto convert but if I try to make the message any longer it tells me 'Maximum number of characters reached' so it sort of works. Do you know of any way around this or is it best to just leave it? Probably won't ever need to send a sms longer than 7 messages long but just thought I'd ask

Change carrier name?

Does anyone know how to change the carrier name in the notification drop down?
Sent from my SPH-L710 using xda premium
Humzaman said:
Does anyone know how to change the carrier name in the notification drop down?
Sent from my SPH-L710 using xda premium
Click to expand...
Click to collapse
Check in the framework - res.apk file...
Sent from my SPH-L710 using xda premium
Humzaman said:
Does anyone know how to change the carrier name in the notification drop down?
Sent from my SPH-L710 using xda premium
Click to expand...
Click to collapse
Here's how (should work on any TW ROM)
-Decompile SystemUI.apk (make sure you install resources from framework-res.apk and twframework-res.apk before decompiling)
-Navigate to your decompiled SystemUI folder and go to /res/layout/tw_status_bar_expanded.xml
-Look for
Code:
<com.android.systemui.statusbar.phone.CarrierLabel>
-Delete that text and replace it with
Code:
<TextView
-Now in that same line, right after this
Code:
android:layout_alignParentLeft="true"
Add this
Code:
android:text="@string/custom_carrier"
-Save and close that xml
-Next go to /res/values/strings.xml
-Go to the very bottom of the xml and add this right above </resources>
Code:
<string name="custom_carrier">ADD_YOUR_CUSTOM_TEXT_HERE</string>
-Save and close that xml
-apktool doesn't add the META-INF folder so you can click and drag the original META-INF into the apk, I'd also add back that original AndroidManifest.xml from the original SystemUI.apk
-Next you can make a flashable zip for your new apk and flash in recovery
Alternatively you can try this:
-decompile your framework-res.apk
-navigate to /res/xml/eri.xml
-search for "Sprint" and replace any instances with your custom text
-save the xml, recompile and make a flashable zip
fergie716 said:
Here's how (should work on any TW ROM)
-Decompile SystemUI.apk (make sure you install resources from framework-res.apk and twframework-res.apk before decompiling)
-Navigate to your decompiled SystemUI folder and go to /res/layout/tw_status_bar_expanded.xml
-Look for
Code:
<com.android.systemui.statusbar.phone.CarrierLabel>
-Delete that text and replace it with
Code:
<TextView
-Now in that same line, right after this
Code:
android:layout_alignParentLeft="true"
Add this
Code:
android:text="@string/custom_carrier"
-Save and close that xml
-Next go to /res/values/strings.xml
-Go to the very bottom of the xml and add this right above </resources>
Code:
<string name="custom_carrier">ADD_YOUR_CUSTOM_TEXT_HERE</string>
-Save and close that xml
-apktool doesn't add the META-INF folder so you can click and drag the original META-INF into the apk, I'd also add back that original AndroidManifest.xml from the original SystemUI.apk
-Next you can make a flashable zip for your new apk and flash in recovery
Alternatively you can try this:
-decompile your framework-res.apk
-navigate to /res/xml/eri.xml
-search for "Sprint" and replace any instances with your custom text
-save the xml, recompile and make a flashable zip
Click to expand...
Click to collapse
Dude youre a huge help. Thanks. But when I tried decompiling the apk on my PC with apk tool it just says the apk location was not found or could not be read. Btw I'm a noob, still learning my way around Android.
Sent from my SPH-L710 using xda premium
Humzaman said:
Dude youre a huge help. Thanks. But when I tried decompiling the apk on my PC with apk tool it just says the apk location was not found or could not be read. Btw I'm a noob, still learning my way around Android.
Sent from my SPH-L710 using xda premium
Click to expand...
Click to collapse
I'll shoot you a PM tomorrow after school
Sent from my SPH-L710 using Tapatalk 2
fergie716 said:
I'll shoot you a PM tomorrow after school
Sent from my SPH-L710 using Tapatalk 2
Click to expand...
Click to collapse
Thanks man!
Sent from my SPH-L710 using xda premium

[HOW-TO] Add Another Thread in Settings | About Device

No as such device or specific fw requirements for this guide/How-to to work.
Ok, so this would be my first ever tutorial on XDA so bear with me. I would try to explain as much as possible.
This How-to focuses on adding another info section in settings.apk. This guide is intended to be used by ROM Devs and Themers. I did a thorough research if their is any guide similar to this in this forum section but couldnt find any so here it goes.
Prequistes:
Be able to Decompile/Compile apks
Notepad++
Patience
Firstly you have to decompile SecSettings.apk (If you are using JB fw) or Settings.apk (If you are using ICS fw) it doesn't matter which fw you are using the rest of the guide will be the same.
After you have decompiled the SecSettings.apk or Settings.apk, go into the folder you decompiled to then res/values/strings. Open strings with any code editor such as Notepad++ after that add these two lines before the end line:
<string name="mod_version">XenonMOD version</string>
<string name="mod_version_info">Xenon-v2.00.00</string>
Click to expand...
Click to collapse
NOTE: You can change XenonMOD version to anything you like and also Xenon-v2.00.00. I am using these as a example.
Next go to res/xml/device_info_settings.xml and add these lines before the ending line:
<Preference android:key="mod_version" style="?androidreferenceInformationStyle" android:title="@string/mod_version android:summary="@string/mod_version_info" />
Click to expand...
Click to collapse
Now recompile everything. If you have done everything as stated you should end up with a perfectly good SecSettings.apk or Settings.apk that has a another info/thread added to it. Congratulations!
NOTE: You can use this guide to add whatever info you want to the Settings section.
Follow me on twitter @TaimurAkmal. I would be able to solve any problem that you may have quicker, if you reach me with a tweet.
Don't forget to leave a Thanks by pressing the Thanks button which is placed bottom-left of this post!
Nyc Work
Leave a Thanks and it would make my day.
ahh sorry i forgot to
now done
Nice, unfortunately this didn't work on my Nexus, when I copy paste then it's not normal if I follow the other lines in that file I put the texts the correct sequence then I can successfully compile settings.apk and when I replace settings.apk it is not shown and not working, I have also tried by signing apk via Dsixda's android kitchen but still the same issue, btw: I use latest Android version on my Nexus and I don't think that is the issue...
Maybe something to do with SettingsProvider.apk or does smali files need editing?
Thanks
manumanfred said:
Nice, unfortunately this didn't work on my Nexus, when I copy paste then it's not normal if I follow the other lines in that file I put the texts the correct sequence then I can successfully compile settings.apk and when I replace settings.apk it is not shown and not working, I have also tried by signing apk via Dsixda's android kitchen but still the same issue, btw: I use latest Android version on my Nexus and I don't think that is the issue...
Maybe something to do with SettingsProvider.apk or does smali files need editing?
Thanks
Click to expand...
Click to collapse
the problem is the parsing, he forgot to add another " after
this is the correct code
Code:
<Preference android:key="mod_version" style="?android:preferenceInformationStyle" android:title="@string/mod_version" android:summary="@string/mod_version_info" />
nice guide, this is what i searching for. Thanks :good:

[GUIDE][MOD] Enable navigation bar 4.2.2

This is a quick dev guide to enable navigation bar for S4.
Decompile SystemUI.apk go to res/values/drawables and add:
Code:
[COLOR=#8b008b]<item [COLOR=#ff0000]type[/COLOR][COLOR=#0000ff]="drawable"[/COLOR] [COLOR=#ff0000]name[/COLOR][COLOR=#0000ff]="tw_navigationbar_bg"[/COLOR]>[/COLOR]#ff000000[COLOR=#8b008b]</item>[/COLOR]
Now download attached files and copy files to corresponding folders in SystemUI.apk if folder does not exist(drawables-xhdpi) create it.
Compile SystemUI.apk and push to device (nothing will happen yet) Just to check device boots fine.
Now use any buil.prop editor and add line:
Code:
qemu.hw.mainkeys=0
You can also enable it now through framework-res method.
Reboot and your done.
Please hit thanks and give credits.
Hi OP,
This looks just what I've been waiting for - if only there was a way to disable the stock menu and back buttons; my only gripe with the S4 is that I'm always touching one of theses buttons accidentally
JibbaJoy said:
Hi OP,
This looks just what I've been waiting for - if only there was a way to disable the stock menu and back buttons; my only gripe with the S4 is that I'm always touching one of theses buttons accidentally
Click to expand...
Click to collapse
This can easily be done when I find time I will add how to.
Sent from my GT-I9505 using xda premium
works perfect but no text under buttons below could you add them
I can´t find the /values/drawables after extracted the SystemUI.apk ? And where to add the following code please.
<item type="drawable" name="tw_navigationbar_bg">#ff000000</item>
missing /values/drawables
https://dl.dropboxusercontent.com/u/41923164/Untitled.png
janjan said:
I can´t find the /values/drawables after extracted the SystemUI.apk ? And where to add the following code please.
<item type="drawable" name="tw_navigationbar_bg">#ff000000</item>
missing /values/drawables
https://dl.dropboxusercontent.com/u/41923164/Untitled.png
Click to expand...
Click to collapse
you have to put <item type="drawable" name="tw_navigationbar_bg">#ff000000</item> inside drawables.xml, you can find it under decompiled SystemUI.apk /res/values
edit: copy the files to SystemUI.apk/res and add the line qemu.hw.mainkeys=0 with root explorer (text editor mode) in build.prop
bruzski said:
you have to put <item type="drawable" name="tw_navigationbar_bg">#ff000000</item> inside drawables.xml, you can find it under decompiled SystemUI.apk /res/values
edit: copy the files to SystemUI.apk/res and add the line qemu.hw.mainkeys=0 with root explorer (text editor mode) in build.prop
Click to expand...
Click to collapse
But after decompiled SystemUI.apk. /res/values is missing. Se the picture which i post above. thanks
janjan said:
But after decompiled SystemUI.apk. /res/values is missing. Se the picture which i post above. thanks
Click to expand...
Click to collapse
decompiled SystemUI.apk doesn't seem complete !! do you get errors while decompiling ? what version of apktool do you use?
I am using APK-Multi-Tool-Stable-RELEASE which is the latest version. no error during decompiling.. Which version do you use? Iam going to decompile it once again.
Edit.. still missing https://dl.dropboxusercontent.com/u/41923164/missing.png
i use ApkManager V6.1, works great!
Deleted
it seems this method is not working for me. i followed the instructions on the OP
include framework-res.apk, twframework-res.apk with "apktool if"
decomplie systemui.apk
modify res/values/drawables.xml to include <item type="drawable" name="tw_navigationbar_bg">#ff000000</item>
copy and replace files from the Navigation.zip into the res folder
recompile systemui.apk
i get a lot of @Styles errors and no default warnings when i try to compile
I tried using both latest version of apktool v152 and aapt from feb 2013 method and apkmanager v6.1 method and the results are the same
after i cleared the @style warnings with the "+" solution I am able to compile systemui.apk but when I copy it onto my device I lost the status bar and I still cant enable the navigation bar.
anyone else getting the same results?
TIA
Decompile errors
I'm trying to decompile SystemUI.apk (copied it from my phone "system\app" to "\place-apk-here-for-modding" folder) using ApkManager V6.1.
I'm getting an error message. Can somebody help please ? Log is attached.
Thanks!
Ok. I was able to decompile SystemUI.apk using ApkManager V6.1. The problem was in missing framework-res.apk and twframework-res.apk in "apktool" folder.
Now I'm getting errors on apk compilation. Please take a look at the attached log file. What am I missing now ?
Thank you!
hocgwai said:
it seems this method is not working for me. i followed the instructions on the OP
include framework-res.apk, twframework-res.apk with "apktool if"
decomplie systemui.apk
modify res/values/drawables.xml to include <item type="drawable" name="tw_navigationbar_bg">#ff000000</item>
copy and replace files from the Navigation.zip into the res folder
recompile systemui.apk
i get a lot of @Styles errors and no default warnings when i try to compile
I tried using both latest version of apktool v152 and aapt from feb 2013 method and apkmanager v6.1 method and the results are the same
after i cleared the @style warnings with the "+" solution I am able to compile systemui.apk but when I copy it onto my device I lost the status bar and I still cant enable the navigation bar.
anyone else getting the same results?
TIA
Click to expand...
Click to collapse
I just noticed that I have exactly the same problem as you are. Were you able to get it working ?
Its is more difficult decompiling and recompiling S4 SystemUI and I don't have time to write a tut now so 2 options
Use this you can turn nav bar on off with settings app or
Use this SystemUI.apk I have done the work for you it will recompile as normal and the only mod is %battery apart from that it is stock.
gharrington said:
Its is more difficult decompiling and recompiling S4 SystemUI and I don't have time to write a tut now so 2 options
Use this you can turn nav bar on off with settings app or
Use this SystemUI.apk I have done the work for you it will recompile as normal and the only mod is %battery apart from that it is stock.
Click to expand...
Click to collapse
Thank you !
One question before I proceed with your advice. I have Canadian SGH-I337M version with rooted stock I337MUMUAMDJ rom.
Can I use your SystemUI.apk (%battery mode) with my ROM ?
fmark said:
Thank you !
One question before I proceed with your advice. I have Canadian SGH-I337M version with rooted stock I337MUMUAMDJ rom.
Can I use your SystemUI.apk (%battery mode) with my ROM ?
Click to expand...
Click to collapse
People have reported this working but just make a backup first nothing ventured nothing gained
All I do is have 2 zips on my sdcard the original and the modded one if the mod fails simply boot into recovery and reflash original it takes 1 min to be up and running again
fmark said:
Ok. I was able to decompile SystemUI.apk using ApkManager V6.1. The problem was in missing framework-res.apk and twframework-res.apk in "apktool" folder.
Now I'm getting errors on apk compilation. Please take a look at the attached log file. What am I missing now ?
Thank you!
Click to expand...
Click to collapse
If you get an error in decompiling the apk, remove the "system_bar_settings_view.xml" and "system_bar_notification_panel_title.xml" from the layout folder
(SystemUI.apk\res\layout\). Don't forget to put the files back after compiling the modded statusbar.
:fingers-crossed:
bruzski said:
If you get an error in decompiling the apk, remove the "system_bar_settings_view.xml" and "system_bar_notification_panel_title.xml" from the layout folder
(SystemUI.apk\res\layout\). Don't forget to put the files back after compiling the modded statusbar.
:fingers-crossed:
Click to expand...
Click to collapse
Decompiling is fine - no errors. I'm getting errors when compiling.
---------- Post added at 07:29 AM ---------- Previous post was at 07:26 AM ----------
gharrington said:
People have reported this working but just make a backup first nothing ventured nothing gained
All I do is have 2 zips on my sdcard the original and the modded one if the mod fails simply boot into recovery and reflash original it takes 1 min to be up and running again
Click to expand...
Click to collapse
No, unfortunately your systemui.apk is not compatible with my Rom.
I need to solve compilation errors. Any advice on that?
Thank you!

[Guide] Add OGBatteryMod to your ROM

I found this guide here and this is what I did differently from it to make this work for us. You can use the linked file to click an app to change the icon or you can add it into settings in your rom. For those that don't know what this does this probably isn't the thread for you. Just wait until you see it popping up in the roms you use. This should work universally for ND8 builds.
http://forum.xda-developers.com/showthread.php?t=2730108
Now instead of following all of his steps and not finding what you're searching for I will simplify this some to make it quicker. You will want to search for this and replace it throughout the smali file in your decompiled systemui.apk (\SystemUI\smali\com\android\systemui\statusbar\ph one\PhoneStatusBar.smali)
Find all instances of
Code:
Lcom/android/systemui/statusbar/policy/BatteryController;
and replace with
Code:
Lcom/ghareeb/BatteryMod/BatteryController;
Then open (\SystemUI\res\layout\status_bar.xml) and find [This may already be changed if you used tdunham's 1% battery mod]
Code:
<com.android.systemui.BatteryMeterView android:id="@id/battery" android:layout_width="12.0dip" android:layout_height="18.0dip" android:layout_marginBottom="0.33000004dip" android:layout_marginStart="5.0dip" />
and replace it with
Code:
<ImageView android:gravity="center" android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="0.0dip" android:layout_marginStart="2.0dip" />
Now most importantly you need to add these smali files to your systemui so they're in (systemui/smali/com/ghareeb/BatteryMod)
http://forum.xda-developers.com/attachment.php?attachmentid=2706746&stc=1&d=1398368939
Then add the OGBatterymod.apk of your choice to system/app. I didn't provide one in this guide sorry but maybe I will upload one eventually. You can easily look for one to add, all the old ones should work.
To add it to secsettings under display
Decompile secsettings.apk and open (\SecSettings\res\xml\display_settings.xml)
Find
Code:
<PreferenceScreen android:title="@string/notification_panel_title" android:key="notification_panel_edit" android:fragment="com.android.settings.NotificationPanelMenu" />
Add this under that line
Code:
<PreferenceScreen android:title="@string/battery_mod" android:summary="@string/battery_mod_desc">
<intent android:targetPackage="com.ghareeb.battery" android:action="android.intent.action.MAIN" android:targetClass="com.ghareeb.battery.Settings" />
</PreferenceScreen>
Now open (\SecSettings\res\values\string.xml) and add this
Code:
<string name="battery_mod">OGBattery Mod</string>
<string name="battery_mod_desc">Change battery icon and charging animation.</string>
For those who don't want to add this to settings for some reason you can find one with the icon so you can just open the app here: http://forum.xda-developers.com/showthread.php?t=2758088
Thanks to @OsamaGhareeb and @meawww also @axel06 for his that I linked with the icon instead of having to have it in settings if anyone would like to do it this way.
Dude you are awesome! I can't wait to get on this. Have to wait till the weekend though.
BTW this works great! Thanks again.
talkingmonkeys said:
I found this guide here and this is what I did differently from it to make this work for us. You can use the linked file to click an app to change the icon or you can add it into settings in your rom. For those that don't know what this does this probably isn't the thread for you. Just wait until you see it popping up in the roms you use. This should work universally for ND8 builds.
http://forum.xda-developers.com/showthread.php?t=2730108
Now instead of following all of his steps and not finding what you're searching for I will simplify this some to make it quicker. You will want to search for this and replace it throughout the smali file in your decompiled systemui.apk (\SystemUI\smali\com\android\systemui\statusbar\ph one\PhoneStatusBar.smali)
Find all instances of
Code:
Lcom/android/systemui/statusbar/policy/BatteryController;
and replace with
Code:
Lcom/ghareeb/BatteryMod/BatteryController;
Then open (\SystemUI\res\layout\status_bar.xml) and find [This may already be changed if you used tdunham's 1% battery mod]
Code:
<com.android.systemui.BatteryMeterView android:id="@id/battery" android:layout_width="12.0dip" android:layout_height="18.0dip" android:layout_marginBottom="0.33000004dip" android:layout_marginStart="5.0dip" />
and replace it with
Code:
<ImageView android:gravity="center" android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="0.0dip" android:layout_marginStart="2.0dip" />
Now most importantly you need to add these smali files to your systemui so they're in (systemui/smali/com/ghareeb/BatteryMod)
http://forum.xda-developers.com/attachment.php?attachmentid=2706746&stc=1&d=1398368939
Then add the OGBatterymod.apk of your choice to system/app. I didn't provide one in this guide sorry but maybe I will upload one eventually. You can easily look for one to add, all the old ones should work.
To add it to secsettings under display
Decompile secsettings.apk and open (\SecSettings\res\xml\display_settings.xml)
Find
Code:
<PreferenceScreen android:title="@string/notification_panel_title" android:key="notification_panel_edit" android:fragment="com.android.settings.NotificationPanelMenu" />
Add this under that line
Code:
<PreferenceScreen android:title="@string/battery_mod" android:summary="@string/battery_mod_desc">
<intent android:targetPackage="com.ghareeb.battery" android:action="android.intent.action.MAIN" android:targetClass="com.ghareeb.battery.Settings" />
</PreferenceScreen>
Now open (\SecSettings\res\values\string.xml) and add this
Code:
<string name="battery_mod">OGBattery Mod</string>
<string name="battery_mod_desc">Change battery icon and charging animation.</string>
For those who don't want to add this to settings for some reason you can find one with the icon so you can just open the app here: http://forum.xda-developers.com/showthread.php?t=2758088
Thanks to @OsamaGhareeb and @meawww also @axel06 for his that I linked with the icon instead of having to have it in settings if anyone would like to do it this way.
Click to expand...
Click to collapse
Great guide man. I've been trying to get this mod going using some of the other guides out there, but no luck. Glad I found this. A couple of questions; I don't see a \ph one\ folder in my statusbar smali. Is that typo? Should it be: \SystemUI\smali\com\android\systemui\statusbar\PhoneStatusBar.smali. If so, I followed all steps but I get the following error when trying to recompile. Is it a syntax error?
Edit: Sorry about the path question. Dummy me. As for the recompile error, I think it has something to do with one of the smali files in the Ghareeb zip?
nyfl2004 said:
Great guide man. I've been trying to get this mod going using some of the other guides out there, but no luck. Glad I found this. A couple of questions; I don't see a \ph one\ folder in my statusbar smali. Is that typo? Should it be: \SystemUI\smali\com\android\systemui\statusbar\PhoneStatusBar.smali. If so, I followed all steps but I get the following error when trying to recompile. Is it a syntax error?
Edit: Sorry about the path question. Dummy me. As for the recompile error, I think it has something to do with one of the smali files in the Ghareeb zip?
Click to expand...
Click to collapse
Try using a different apktool. I think I used 2 beta. The different apk tools use different parameters and I can't remember exactly what you need to change it to for it to recompile just this minute
talkingmonkeys said:
Try using a different apktool. I think I used 2 beta. The different apk tools use different parameters and I can't remember exactly what you need to change it to for it to recompile just this minute
Click to expand...
Click to collapse
Thanks man. I can recompile your edits with no problem. I can't recompile once I add the Ghareeb smali files. I'll keep trying. Thanks again..
nyfl2004 said:
Thanks man. I can recompile your edits with no problem. I can't recompile once I add the Ghareeb smali files. I'll keep trying. Thanks again..
Click to expand...
Click to collapse
Try tickle my android. Chad suggested it to me and it worked. You can send me the file too and I'll have a look. Might not have a chance until Thursday to look at it but I think I know whats wrong its just explaining it drunk isn't too easy
talkingmonkeys said:
Try tickle my android. Chad suggested it to me and it worked. You can send me the file too and I'll have a look. Might not have a chance until Thursday to look at it but I think I know whats wrong its just explaining it drunk isn't too easy
Click to expand...
Click to collapse
Thanks man. I'll give Trickle my Android a shot later after work. If I can't manage, I'll send you the file. I really appreciate your help!

Categories

Resources