Hi XZ owners!
I made this for XU / XSOLA JB port actually and currently they uses this method but later I discovered other JB Xperia's have this problem too.
Thanks to XperienceD for improving guide.
Workaround:
Firstly decompile your framework.jar, framework-res.apk and SemcGenericUxpRes.apk files, then download and extract this: framework-fix.zip
1- Copy the ColorizableDrawable.smali to "framework.jar/android/graphics/drawable".
2- Remove these lines from "framework.jar/android/graphics/drawable/Drawable.smali":
Code:
const-string v3, "com.sonymobile"
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_109
3- In the drawable folder of your framework-res you need to find and change a number of xmls and the easiest way to do this is with Notepad++. Download and open it first, then in the drawable folder highlight all 150 xmls prefixed with semc_, and drop them into Notepad++ (You may want to do so many at a time depending on your Computers specs). Using the search and replace feature, replace...
Code:
somc:colorizable
for...
Code:
colorizable
...using the Replace All in All Opened Documents button...
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
...then you need to Replace this whole line...
Code:
android:color="@com.sonyericsson.uxp:color/semc_theme_accent_color" xmlns:somc="com.sonymobile"
...using the same method with...
Code:
android:color="#00000000"
I moved theme color part to smali, so "#00000000" is just a placholder in here and won't affect anything.
4- Open styles.xml in the values folder with Notepad++ and search for...
Code:
@com.sonyericsson.uxp:drawable/semc_bg
...there should be two, that one and then one with _bright, replace that line with...
Code:
@drawable/semc_bg
...and replace the other with...
Code:
@drawable/semc_bg_bright
Then copy from your drawable-hdpi and drawable-xhdpi folders in your decompiled SemcGenericUxpRes folder, semc_bg_bright.xml, semc_bg.xml, semc_bg_bright_tile.png and semc_bg_tile.png into the same folders in your decompiled framework folders.
Normally app backgrounds doesn't change with 2013 xperia themes in anyway but theme system still has this ability, if you want to keep this I fixed it too, search for "@com.sonyericsson.uxp:drawable/semc_bg" and change with "@drawable/semc_bg_new" then put semc_bg_new.xml to drawable folder from downloaded file and don't forget adding semc_bg_new to public.xml.
5- In your decompiled framework folder open apktool.yml with Notepad++ and remove the "-2" from the "usedFrameworks" code...
...then recompile your framework.jar and framework-res.apk, add the signatures in the usual manner, copy both files to the Phone, change permissions, reboot, and you should finally have a success boot.
This method is currently working on all JB Xperia's.
Enjoy!
Going to test in a bit, thanks!
@XperienceD
There is no drawable folder in framework.jar? And yeah you have to look each file which has semc_ prefix (I forgot to write that) on drawable folder unfortunately.
erorcun said:
@XperienceD
There is no drawable folder in framework.jar?
Click to expand...
Click to collapse
Schoolboy error there.
erorcun said:
And yeah you have to look each file which has semc_ prefix (I forgot to write that) on drawable folder unfortunately.
Click to expand...
Click to collapse
A search in Virtuous found 59 files in total, so what I've done is open all 150 SEMC files in Notepad++ and searched and replaced somc:colorizable for colorizable, and the same again for the android:color.
XperienceD said:
Schoolboy error there.
A search in Virtuous found 59 files in total, so what I've done is open all 150 SEMC files in Notepad++ and searched and replaced somc:colorizable for colorizable, and the same again for the android:color.
Click to expand...
Click to collapse
Yep but don't forget xmlns:somc tag at the end, you must delete it. And don't forget to put old signatures back.
erorcun said:
Yep but don't forget xmlns:somc tag at the end, you must delete it.
Click to expand...
Click to collapse
Perhaps you could put a bit more effort into writing the OP, as the image names are incorrect too.
@XperienceD
OP is okay and there's nothing wrong. You're doing something wrong. xmlns:somc part is already on OP.
Going to test it on XT, when I will have some time.
erorcun said:
You're doing something wrong. xmlns:somc part is already on OP.
Click to expand...
Click to collapse
I got that part in the end, but it's still bootlooping. Perhaps you could take a look please? - Xperia_Z_307_fw.zip
@XperienceD
Could you send your edited files?
erorcun said:
Could you send your edited files?
Click to expand...
Click to collapse
Sure - Recomp_Z_fw.zip
@XperienceD
I don't have time to fix it but I can't even decompile your framework-res file.
Also I noticed preloaded-classes and META-INF are missing in framework.jar.
erorcun said:
@XperienceD
I don't have time to fix it but I can't even decompile your framework-res file.
Also I noticed preloaded-classes and META-INF are missing in framework.jar.
Click to expand...
Click to collapse
Thanks for looking, I'll have another bash tonight, could be just the jar then I've not done right.
From me to you.
@XperienceD
I think there is something wrong about framework-res too. Did you try removing 'used frameworks' part in apktool.yml? It seems I forgot to say that, sorry.
erorcun said:
Did you try removing 'used frameworks' part in apktool.yml? It seems I forgot to say that, sorry.
Click to expand...
Click to collapse
I didn't no although I've seen that in another thread too so may have tried it eventually, at least we're heading in the right direction.
From me to you.
I'm sure it will work with XZ. I will wait feedback from you tonight, thanks in advance.
erorcun said:
I'm sure it will work with XZ.
Click to expand...
Click to collapse
It does! Thank You very much!! Will get a link added to my guide at the weekend, I do it now but I've got some playing to do. The OP needs re-writing though I will say just to clear things up a bit.
But once again, Thank You.
Thanks. =) Which things needs rewriting?
erorcun said:
Thanks. =) Which things needs rewriting?
Click to expand...
Click to collapse
Like this ...
Workaround:
Firstly decompile your framework.jar, framework-res.apk and SemcGenericUxpRes.apk files, then download and extract this: framework-fix.zip
1- Copy the ColorizableDrawable.smali to "framework.jar/android/graphics/drawable".
2- Remove these lines from "framework.jar/android/graphics/drawable/Drawable.smali":
Code:
const-string v3, "com.sonymobile"
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_109
3- In the drawable folder of your framework-res you need to find and change a number of xmls and the easiest way to do this is with Notepad++. Download and open it first, then in the drawable folder highlight all 150 xmls prefixed with semc_, and drop them into Notepad++ (You may want to do so many at a time depending on your Computers specs). Using the search and replace feature, replace...
Code:
somc:colorizable
for...
Code:
colorizable
...using the Replace All in All Opened Documents button...
...then you need to Replace this whole line...
Code:
android:color="@com.sonyericsson.uxp:color/semc_theme_accent_color" xmlns:somc="com.sonymobile"
...using the same method with...
Code:
android:color="#00000000"
I moved theme color part to smali, so "#00000000" is just a placholder in here and won't affect anything.
4- Open styles.xml in the values folder with Notepad++ and search for...
Code:
@com.sonyericsson.uxp:drawable/semc_bg
...there should be two, that one and then one with _bright, replace that line with...
Code:
@drawable/semc_bg
...and replace the other with...
Code:
@drawable/semc_bg_bright
Then copy from your drawable-hdpi and drawable-xhdpi folders in your decompiled SemcGenericUxpRes folder, semc_bg_bright.xml, semc_bg.xml, semc_bg_bright_tile.png and semc_bg_tile.png into the same folders in your decompiled framework folders.
Normally app backgrounds doesn't change with 2013 xperia themes in anyway but theme system still has this ability, if you want to keep this I fixed it too, search for "@com.sonyericsson.uxp:drawable/semc_bg" and change with "@drawable/semc_bg_new" then put semc_bg_new.xml to drawable folder from downloaded file and don't forget adding semc_bg_new to public.xml.)[/COLOR][/I]
5- In your decompiled framework folder open apktool.yml with Notepad++ and remove the "-2" from the "usedFrameworks" code...
...then recompile your framework.jar and framework-res.apk, add the signatures in the usual manner, copy both files to the Phone, change permissions, reboot, and you should finally have a success boot.
This is tested on SP (Not S, P), U and Sola and works on the Z too.
Enjoy!
@XperienceD
Thanks, I'm adding it to OP. I can't write guide that detailed my english isn't very good.
But I will be happy if you give link to this topic on other topic.
Related
Tools needed :
Apk manager 4.9 (using options for each step )
Notepad++( Hexadecimal editor for *.xml )
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
1. pull /system/framework/framework-res.apk (option 0)
2. Decompile apk (option 9)
3. add your pic to drawable-hdpi (must be a .png) and resize it as 480x800 ( if not, the picture will be stretched to fit in the resolution ) _ you can rename the file lockscreen_background.png for example
4. open the file res\layout\keyguard_screen_tab_unlock.xml with notepad++, and find the line
Code:
<RelativeLayout android:gravity="center_horizontal" android:id="@id/root" android:background="#70000000" android:layout_width="fill_parent" android:layout_height="fill_parent"
change to
Code:
<RelativeLayout android:gravity="center_horizontal" android:id="@id/root" android:background="@drawable/lockscreen_background" android:layout_width="fill_parent" android:layout_height="fill_parent"
5. compile the apk (option 11)
(when recompile do)
5.1. Hit yes to "system app".
5.2. Hit yes to restoring the files:
6. -Open the "keep" folder and delete resources.arsc and res\layout\keyguard_screen_tab_unlock.xml
7. when it is done, rename unsignedframework-res.apk to framework-res.apk and put it back to /system/framework/ again (you can just drag it to the zip file with 7zip)
Code:
[COLOR="DarkOrange"]=============Lockscreen Note==================
Once you have my theme, no needs to follow my Tuto as i already coded the xml for the lockscreen
You only need a picture 480 x 800
Open my zip file theme with 7zip and drag the picture in :
Framework > framework-res.apk > res > drawable
Then go back and 7zip will ask you to apply the changes on the apk.
All done, enjoy it!
===========================================[/COLOR]
Enjoy it
Thank you
I was wanted to know this tip.
I'll be make my theme apply this tip.
tried to change picture on LeeDroid 3.0.2 and stuck on splash screen
This is cool, but will it have to be changed every time you change your wallpaper? And on a completely unrelated note, do you have a Lion cub as a pet? (looking at the lock screen and one of your home screens)
Ignore.z said:
tried to change picture on LeeDroid 3.0.2 and stuck on splash screen
Click to expand...
Click to collapse
If you are stuck on splash screen, must be something wrong during the compilation of the apk _ did you tried to modify *.png9 files as well ?
Matty Matt said:
This is cool, but will it have to be changed every time you change your wallpaper? And on a completely unrelated note, do you have a Lion cub as a pet? (looking at the lock screen and one of your home screens)
Click to expand...
Click to collapse
Unfortunately, until some dev with free time wants to launch an app' for that, yes, we will need to changed the background _ only the background as the setup @drawable/whatever you named your picture.png doesnt change.
Hope it helps
Something is wrong when i try to open the xml file with N++ ..i've upload my xml file,could you edit it just like u said in step 4??? ty
Yorzua said:
If you are stuck on splash screen, must be something wrong during the compilation of the apk _ did you tried to modify *.png9 files as well ?
Click to expand...
Click to collapse
I only changed picture
aca85 said:
Something is wrong when i try to open the xml file with N++ ..i've upload my xml file,could you edit it just like u said in step 4??? ty
Click to expand...
Click to collapse
Sorry my friend, wrong file
You must edit keyguard_screen_tab_unlock.xml
Try again with the correct file, follow the steps and everything should be fine as it working for me and many people more
Ignore.z said:
I only changed picture
Click to expand...
Click to collapse
I need more infos in order to help you :
did you start from a stock framework.apk ?
did you get any erros during decompile/compile ?
did you change only the picture or did you modify the required xml too ?
Yorzua said:
I need more infos in order to help you :
did you start from a stock framework.apk ?
did you get any erros during decompile/compile ?
did you change only the picture or did you modify the required xml too ?
Click to expand...
Click to collapse
yes, I started from stock apk
i had no errors
i put new picture (lockscreen_background.png) to drawable-hdpi and modify the xml like you write
lockscreen_background.png to drawable folder
Ignore.z said:
yes, I started from stock apk
i had no errors
i put new picture (lockscreen_background.png) to drawable-hdpi and modify the xml like you write
Click to expand...
Click to collapse
Second error :
lockscreen_background.png MUST be placed in drawable and not in drawable-hdpi
Read carefully my post
Please click on the thanks button for this one
Thanks a lot, it help me a lot
It's awesome! Thanks the information.
Sent from my HTC Desire using XDA App
Yorzua said:
Second error :
lockscreen_background.png MUST be placed in drawable and not in drawable-hdpi
Read carefully my post
Please click on the thanks button for this one
Click to expand...
Click to collapse
still not working
Ignore.z said:
still not working
Click to expand...
Click to collapse
i helped you three times on three posts and no one thanks from you...
it is working perfectly for everyone _ start to thanks people for their help and maybe i will help you modding directly your file for you
Thanks for the hint Do you know maybe some more (I am building a theme just like you)?
Do you know KBanause's threat http://forum.xda-developers.com/showthread.php?p=9978779#post9978779? Maybe he could add your howto to the collection.
affmalg said:
Thanks for the hint Do you know maybe some more (I am building a theme just like you)?
Do you know KBanause's threat http://forum.xda-developers.com/showthread.php?p=9978779#post9978779? Maybe he could add your howto to the collection.
Click to expand...
Click to collapse
I thanked you on your theme thread
i knew already and thaked too the great tuto of Kbanause which i recomend for those who want to start theming.
KBanause Guide for Android 2.3
I am preparing a new tuto which could be add to it :
[Tutorial]How to edit smali files
If you like my work, please hit the thanks button here
Apk manager 4.9 and Notepad++
Apk manager 4.9 and Notepad++ ==> links for download added on the first post
works great, good tutorial
thanxxxx cron999
Tools needed :
My KIT for SMALI files (using options for each step )
Notepad++( Hexadecimal editor for *.xml )
This is an example of a smali file changed (in this case, Global.Actions.smali located in android.policy.jar)
_______________ Power Menu modded (smali changed) ______________
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Open my zip kit ( recomended in a Theming Folder for example with apkmanager and all files you would like to mod )
What you get :
Baksmali
Baksmali ( executable Jar File )
Command.exe ( Shell file )
Notepad text with the two commands for decompile and compile already made for you ( just copy and paste into command.exe )
Smali
Smali ( executable Jar File )
1. So the only thing you need is to place your apk in the smali kit folder
2. To Decompile :
Code:
java -jar baksmali.jar -x yourfile -o classout
(classout folder can be renamed to whatever you want, doesnt matter until you dont forget to change the name too in the second command)
3. Make the modifications you want for smali files
4. To Compile again :
Code:
java -Xmx512M -jar smali.jar classout -o classes.dex
5. Copy and paste the file classes.dex into your apk _ you will overwrite the old one.
Thanks to Rafalense
Enjoy it
Thanks mate, it might be useful for some trick i'm gonna test.
Hi,
thanks for the guide and the advice.
But does the apk manager the smali decompile and compile too?
Could you give some hints where you can change what in smali?
Apk manager 4.9 and Smali/Baksmali
affmalg said:
Hi,
thanks for the guide and the advice.
But does the apk manager the smali decompile and compile too?
Could you give some hints where you can change what in smali?
Click to expand...
Click to collapse
Sorry for the late answer, have been busy with the last release of my theme
Apk manager decompile/compile xml files for apk
Smali/Baksmali decompile/compile smali files for apk
I am preparing a Tuto for both but a good start will be to check here and here
Yorzua said:
Apk manager decompile/compile xml files for apk
Smali/Baksmali decompile/compile smali files for apk
Click to expand...
Click to collapse
Okay now i got that
I am preparing a Tuto for both but a good start will be to check here and here
Click to expand...
Click to collapse
I know them both and they have been very helpful
But i would like to know more about things like that you deleted the powermenus headline.
I you have time could you look a that.
I just can't compile the apks any more, so my theme can't get an update
Apk manager 4.9 on xp windows
affmalg said:
Okay now i got that
I know them both and they have been very helpful
But i would like to know more about things like that you deleted the powermenus headline.
I you have time could you look a that.
I just can't compile the apks any more, so my theme can't get an update
Click to expand...
Click to collapse
affmalg said:
Hi guys,
I am using Apk manager 5.0 with the latest updates and apk tool 1.3.1
I want to decompile, edit and recompile my SystemUI.apk.
My Roms framework-res is set as 1.apk
Decompiling of SystemUI.apk works (no errors)
To check that compiling works, i edit nothing, just removed the "-v4" from the drawable-hpdi folder.
I assume that the must be something wrong with the resource, the framework-res.apk which i placed as 1.apk
"Resource is not public" is the error.
Does anyone no how to solve this?
The curious thing is that with the previous version of the rom it worked when i was making my theme a week ago.
Now it doesn't work any more
Click to expand...
Click to collapse
If you follow my Tuto, you should always use apk manager 4.9 editing framework as you want to mod xml __ even better with XP rather than any windows else.
Apk manager is not needed to decompile/recompile png's
you just forget zip and use instead 7zip which allow you to directly drag any file you want to another zip without decompiling/compiling.
Another rule is that you cant drag a xml from a zip to your hdd folder.
you must decompile the apk first. if the xml is already modded, then you can drag it everywhere and re-drag it where you want.
Never set framework-res as 1.apk
apk manager does everything for you, you just need to decompile,
set always level of compression to 0 in order to avoid issues during compilation work on the framework folder decompiled and just compile.
If you proceed step by step, you should be fine.
Note that systemUI.apk gives a lot of issues during decompilation
Smali files are included in systemUI so better use my tool for smali's files
Last one, i will prepare a tuto to take out the title in Power menu soon
If it helps you, please hit the thanks button
Sorry, a little OT, what's the name of the font?
font in my screenshots
grotesque02 said:
Sorry, a little OT, what's the name of the font?
Click to expand...
Click to collapse
The font in the screenshots is : Veggie burger
Hope it helps you
Thanks, and sorry for OT
Thread closed upon OP request.
There's certainly a lot of choice out there when it comes to firmware, however, I've found that a lot of custom ROMs on XDA include a lot of themes that I'm not really interested in.
Usually, when I find a modified file with the feature that I'm looking for, it also includes something else that I don't want. I've also seen a lot of posts in threads where people ask "Great! Can you make this mod for firmware version XXX?"
So I've decided to create this guide, it will show you how to look for changes to the files that developers post, so you can merge it with the file from your phone.
Prerequisites:
Latest Android-SDK downloaded and installed, with directories added to your PATH
Java runtime enviroment >= 1.6
Apktool, install instructions are on the page of this link
WinMerge installed
Your ROM is deodexed
In this example, I'm going to add Rawrat's green icons to my phone, but I don't want to add his modified transparant notification drop down. Rawrat at the time only provided files for XXKG6 but my personal ROM is based on XXKH3.
1. Create the following directory structure (this doesn't have to be named exactly as I have, it just keeps the files organised I find):
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
2. Download the developers modified files and place them in "Modded ROM files" - in my example, this is framework-res.apk and SystemUI.apk
3. Ensure USB debugging is enabled, connect phone via the USB cable. In windows command prompt, change directory to "Current ROM files" and pull the following files:
Code:
adb pull /system/framework/framework-res.apk
adb pull /system/framework/twframework-res.apk
adb pull /system/app/SystemUI.apk
You have to pull the framework-res.apk & twframework-res.apk if you're modifying most system applications. SystemUI.apk is the file I'm editing in this example. If you're modifying different ones to me or more, then pull those as well or instead of.
4. Whilst command prompt is in the same directory (Current ROM files), you'll need to install the framework files for Apktool to use:
apktool if framework-res.apk galaxy
apktool if twframework-res.apk galaxy
Click to expand...
Click to collapse
5. If the above worked correctly, you should have a message from apktool saying the framework was installed to 1-galaxy.apk and 2-galaxy.apk and your files should have been pulled into "Current ROM files":
6. Whilst command prompt is in the same directory (Current ROM files), we'll need to decompile the *.apks:
Code:
apktool d -t galaxy framework-res.apk framework-res
apktool d -t galaxy SystemUI.apk SystemUI
I'm not modifying twframework-res.apk, I just pulled that as it's a dependant file, so no need to decompile this unless it's one of the files the developer edited.
You shouldn't get any errors and it was successfully decompiled if it looks like so:
7. In command pompt, change to "Modded ROM Files" directory and decompile the developers files that we placed there earlier:
Code:
apktool d -t galaxy framework-res.apk framework-res
apktool d -t galaxy SystemUI.apk SystemUI
8. Now that we've decompiled both the current files on the phone and the modified ones, we're going to use WinMerge to compare the directories:
Open WinMerge and go to file -> open
For the left pane, click browse and browse to your "Current ROM files" folder, then framework-res, then click open
For the left pane, click browse and browse to your "Modded ROM files" folder, then framework-res, then click open
Check "Include subfolders" then click OK
8. Once WinMerge has compared the directories, go to view and make sure only the following is ticked in the top part of the view menu:
This basically shows all the files that are different between the two directories.
9. Now, we're going to look down the list of files that are different and copy them from right to left (Modified file to current file)
Exercise some caution here especially if you're applying the mod to a file that's from a different Samsung firmware. Usually when applying a mod to a different firmware version, you'll notice a lot of strings.xml differences listed. This is because Samsung have updated the translations for different languages. So don't copy these over.
Regarding other xml files, apktool inputs some entries into drawables.xml and public.xml so these files also show up as different. Again, don't copy these over.
Developers do make changes to xml files, either way, to ensure you're not over writing older xml documents with new ones, just right click the file and compare. As you can see, opening bools.xml, I can see there's a difference to:
Code:
<bool name="config_animateScreenLights">true</bool>
As Rawrat changed this to false to enable CRT-Off animation, I want this animation on my KH3 ROM. So I'm going to right click bools.xml and copy right to left.
Warning! Again, when dealing with two files from two different firmware bases, NEVER EVER copy any .smali files. This is because Samsung would have made changes most likely. Instead, compare the files as above and manually change the .smal file in the left pane with the changes the developer made. You can then save the file.
10. Repeat the WinMerge steps for the other decompiled application folders, in my example, I did the same for SystemUI.apk and to ensure I was only copying the green icrons for signal, WiFi and mobile data; I right clicked the different *.png files and chose open right with registered application. This opens the .png with your default image editor.
11. Go back to command prompt and change directory to your "Current ROM files" directory. Use apktool to compile:
Code:
apktool b framework-res
You should not receive any errors, apart from warnings about there not being any translation. Those errors are normal.
Obviously, compile all the other .apks too!
12. In Windows Explorer, navigate to the "Current ROM files"/framework-res/dist folder
This is the location of your newly compiled framework-res.apk with the changes you made. Open this apk with your archive editor (WinRar, 7zip, WinZip etc). Keep this open.
13. In Windows Explorer, navigate to the "Modded ROM files" folder
Open the original framework-res.apk with your archive editor, then drag the META-INF folder and AndroidManifest.xml file from the original .apk to the other archive editor window that has your modified .apk open.
Replace the files on your phone with the new ones!
wonderful guide for newbies like me. I am already off to start my first project.
Thanks once again.
This is AMAZING!
thank you very much! will be trying this very soon
Oh man, you are doing it the hard way!
APK Manager Ver 5.0 - Makes Modifying Ur Apk A Breeze (Windows/Linux)
designgears said:
Oh man, you are doing it the hard way!
APK Manager Ver 5.0 - Makes Modifying Ur Apk A Breeze (Windows/Linux)
Click to expand...
Click to collapse
That only serves the purpose of decompiling and building the application package in this example (obviously it can do more than just that), which replaces writing two commands per package. I wouldn't exactly call that the hard way around.
But yes, you can use APK Manager.
Mekrel said:
That only serves the purpose of decompiling and building the application package in this example (obviously it can do more than just that), which replaces writing two commands per package. I wouldn't exactly call that the hard way around.
But yes, you can use APK Manager.
Click to expand...
Click to collapse
Just wait until you do that 100 times a day when a new firmware hits
APK Manager is a time saver.
Advice on this for porting KG6 cam hack to KH3?
Thx for this guide and your time!! :-D
Hi all XDA members, today I am going to show you how to edit xml files in your framework-res.apk so you can edit auto - rotation on lockscreen or CRT - Animation. This does not apply to the Arc only, most Android phone's framework can be edited this way except maybe Samsung or HTC phones which have an extra resource file. This guide contains screenshots and is meant to be noob friendly so everything is self explanatory, you don't need a rocket scientist to explain everything.
What you need:
Framework-res.apk you want to edit
Apktool
Notepad++ is recommended for editing XMLs.
7-zip
So let's get started:
1. If you want to edit the framework file, naturally you should have extracted it from your phone. If you have not done so, the framework-res.apk can be found in system/framework/framework-res.apk(requires root access)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
2. Place the file into apktool directory
4. Press shift and right click the directory(don't select any file, just press shift right click in the empty space of your apktool directory, you should see "Open command window here")
5. You should see a command window like this:
6. Type this command: apktool if framework-res.apk. You should get a response like this:
7. Now type this command:apktool d framework-res.apk. This will decompile your framework-res.apk so you can access the xml files.
8. Go back to your apktool file. You should see a new folder called framework-res(Yes, please take a good look. I circled it for your sake.)
9. Open the folder. go to res/values/bools.xml
10. Right click on file, select edit with Notepad++
11. Now open in Notepad++, you can edit and choose the functions you want to add just by editing the boolean with "true" or "false"
That's it, you are now ready to choose if you want auto rotation lockscreen or enable CRT animation.
Stay tuned to this thread, I will make a second thread about recompiling your framework and signing it for use on your phone.
If you have found any errors in this tutorial, please send me a PM and I shall rectify it.
At the request of some users, I have updated the thread with the compiling and signing steps as well, so please continue reading.
12. Firstly we need some files to sign the apks, so go to your original framework-res.apk, right click -> 7 zip -> Open Archive
13. Extract the folder "META-INF" and the file "AndroidManifest.xml" from the framework-res.apk
13a. Alternatively, you can find the files in <your framework-res folder> -> Original // No "<>" symbols, please see attached screenshot
14. Before we compile the framework, please rename the folder to avoid any conflicts with the existing framework-res.apk
15. Type this command: apktool b <your framework-res folder> and press Enter // No "<>" symbols, please see attached screenshot
16. You should get a response like this:
17. Go to <your framework-res folder> -> dist -> framework-res.apk // No "<>" symbols, please see attached screenshot
WARNING! DO NOT PUSH THIS FILE INTO YOUR PHONE YET. IT HAS NOT BEEN SIGNED AND WILL CAUSE A BOOTLOOP IF YOU PUSH IT TO /SYSTEM. PLEASE CHECK THAT THESE FEW STEPS HAVE BEEN COMPLETED BEFORE PUSHING IT TO /SYSTEM
18. Right click the file, go to 7-zip -> Open Archive
19. Select the files you extracted or received from step 10 or 10a
20. Drag and drop into 7-zip. You will get a warning message. Press "Yes".
21. You should have both files copied into the apk. You have signed the framework-res.apk and the file is OK for use.
22. Push the framework-res.apk into /system/framework, set RW-R--R-- permissions and reboot.
That's it. Your phone should be functioning normally and the changes you did internally should take effect.
If you have found any errors in this tutorial, please send me a PM and I shall rectify it.
Also, please PM me or comment if you have questions.
If the question has been asked before, please read the previous posts if there are any.
Repeat questions will not be entertained.
popthosegaskets said:
Stay tuned to this thread, I will make a second thread about recompiling your framework and signing it for use on your phone.
Click to expand...
Click to collapse
Would be better keeping it all in one thread.
Sent from Myushi
XperienceD said:
Would be better keeping it all in one thread.
Sent from Myushi
Click to expand...
Click to collapse
Ok, thanks for the feedback
僕のLT18iから送られてきた
did you ever manage to get round to posting a recompiling guide??
Inside 4ndroid said:
did you ever manage to get round to posting a recompiling guide??
Click to expand...
Click to collapse
I'm busy with other stuff, although if you want me to redo the guide I can do so.
僕のLT18iから送られてきた
popthosegaskets said:
I'm busy with other stuff, although if you want me to redo the guide I can do so.
僕のLT18iから送られてきた
Click to expand...
Click to collapse
that would be awsome if you could write up the recompile guide.. but no rush only when you get the time... thanks
Inside 4ndroid said:
that would be awsome if you could write up the recompile guide.. but no rush only when you get the time... thanks
Click to expand...
Click to collapse
Ok... I shall redo this guide.
僕のLT18iから送られてきた
Thread content updated per user request.
Hello!
I wanted to make this little tutorial since many people wounder how to add certain apps to settings app
On XDA Portal
Things you will need
Apktool: http://forum.xda-developers.com/showthread.php?t=1755243
Notepad++: http://notepad-plus-plus.org/download/v6.3.2.html
Video tutorial http://www.youtube.com/watch?v=75ZzDs3seqw
Check out my YouTube channel for more videos
The procedure
1: Download and extract apktool into a folder
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
2: Extract Settings.apk and framework-res.apk from your ROM to the apktool folder
3: Open up cmd and go to the APKtool folder
4: Install the framework
5: Put the app you want to add in the apktool folder then decompile Settings and the app
6: Open the settings folder and navigate to /res/values and open Strings.xml with notepad++
7: Add the name of the app furthest down
8: Navigate to /res/xml and open settings_headers.xml
9: Add this
Code:
<header android:icon="@drawable/..." android:title="@string/...">
<intent android:targetPackage="..." android:action="android.intent.action.MAIN" android:targetClass="..." />
</header>
10: navigate to the decompile app you want to add and open androidmanifest.xml
11: Copy the name at the top
12: Then paste here
13: Hold on your screen and select shortcuts
14: Choose activities
15: Scrool to the app and then press it
16: Enter what you found there here
18: Choose a name for the icon you will be using
19: Go to the app you will be adding and navigate to /res/drawable-****
20: Copy the icon to Settings/res/drawable-**** and rename it to what you put in the XML file
21: And now lets build it
22: When the building is done navigate to Settings/dist/ and there is you new Settings app
I will add a zip in the attachments, just put the Settings app in /system/app/ folder in the zip then move it to your phone and flash it
EDIT Another way to install the app (with adb):
Code:
adb remount
adb push Settings.apk /system/app/
adb shell chmod 644 /system/app/Settings.apk
adb reboot
EDIT 2: If you get any FCs or errors (app not showing up) after installing try to open up the original Settings.apk and copy AndroidManifest.xml and META-INF folder to /apktool/Settings/build/apk/ then build again (repeat every time you build)
very nice tutorial, for which roms will this work? stock, cmXX
i have a LG L9, with stock jelly bean rom. will this work for me?
mcmaster81 said:
very nice tutorial, for which roms will this work? stock, cmXX
i have a LG L9, with stock jelly bean rom. will this work for me?
Click to expand...
Click to collapse
Any rom above 4.0
cool tutorial... thanks, I appreciate it...
I think i will add a video tutorial soon
Tks 4 tuts useful.
Nice tutorial thanks
but i have a error when i complied settings.apk
C:\apktool>apktool b Settings.apk
Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathN
otExist: apktool.yml
at brut.androlib.Androlib.readMetaFile(Androlib.java:164)
at brut.androlib.Androlib.build(Androlib.java:183)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
Caused by: brut.directory.PathNotExist: apktool.yml
at brut.directory.AbstractDirectory.getFileInput(AbstractDirectory.java:
103)
at brut.androlib.Androlib.readMetaFile(Androlib.java:160)
... 4 more
could you help me?
sorry for my english
thanks
hecvalve said:
Nice tutorial thanks
but i have a error when i complied settings.apk
C:\apktool>apktool b Settings.apk
Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathN
otExist: apktool.yml
at brut.androlib.Androlib.readMetaFile(Androlib.java:164)
at brut.androlib.Androlib.build(Androlib.java:183)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
Caused by: brut.directory.PathNotExist: apktool.yml
at brut.directory.AbstractDirectory.getFileInput(AbstractDirectory.java:
103)
at brut.androlib.Androlib.readMetaFile(Androlib.java:160)
... 4 more
could you help me?
sorry for my english
thanks
Click to expand...
Click to collapse
Dont have the .apk extension when building. Should look like this apktool b Settings
I will try this later thanks for the guide,
I'm trying to add a TTS setting to a rom which doesn't have a TTS options in the Settings -> language & input. can you tell me what activity should I choose? I cannot open TTS settings from my phone.
alexforsale said:
I will try this later thanks for the guide,
I'm trying to add a TTS setting to a rom which doesn't have a TTS options in the Settings -> language & input. can you tell me what activity should I choose? I cannot open TTS settings from my phone.
Click to expand...
Click to collapse
Actually, i have never used TTS so i dont really know :/
Hey, as said a very good tutorial! Thanks :good:
I compiled the settings apk now and everything worked fine, but when i´m opening it in the Settings.apk, I only see this:
(Yes, I know.. strange name of the app )
Flextrick said:
Hey, as said a very good tutorial! Thanks :good:
I compiled the settings apk now and everything worked fine, but when i open it in the Settings.apk, I only see this:
(Yes, I know.. strange name of the app )
Click to expand...
Click to collapse
As i said, that is probably because of appinventor :/
Skickat från min GT-P1000 via Tapatalk 2
RomWiz said:
Dont have the .apk extension when building. Should look like this apktool b Settings
Click to expand...
Click to collapse
Upps i´m noob sorry.
now i compiled but when i flash my settings.apk ,and reboot i can´t see in my device the settings
thanks
hecvalve said:
Upps i´m noob sorry.
now i compiled but when i flash my settings.apk ,and reboot i can´t see in my device the settings
thanks
Click to expand...
Click to collapse
Send me your apk and i will see if there is something faulty.
Skickat från min GT-P1000 via Tapatalk 2
Do you think that in the future you might be able to create a program or a batch file/script that can automate this? Possibly with a GUI? That would be awesome. But thanks to this wonderful guide of yours! I'm still studying it. I would try it once I find the time.
les02jen17 said:
Do you think that in the future you might be able to create a program or a batch file/script that can automate this? Possibly with a GUI? That would be awesome. But thanks to this wonderful guide of yours! I'm still studying it. I would try it once I find the time.
Click to expand...
Click to collapse
Maby, but i'm not sure if it'll work.
Video is up
i am having troubles with hiding the app from app drawer...could you help?
i removed the intent.launcher line from android manifest but it still isnt working...i mean the app just doesnt get installed ...and if i put it in system/app/ and set perms to rwrr even then it acts as if its not installed...
hsay said:
i am having troubles with hiding the app from app drawer...could you help?
i removed the intent.launcher line from android manifest but it still isnt working...i mean the app just doesnt get installed ...and if i put it in system/app/ and set perms to rwrr even then it acts as if its not installed...
Click to expand...
Click to collapse
Did you sign it?
Skickat från min GT-P1000 via Tapatalk 2
@RomWiz There shouldn't be android:id to add an app... I tried but it's not showing up there Any help?