Related
User To User Tips, Tricks ideas and issues thread.
XDA_UC is a silent User & Cook automation script.
It requires no user configuration (unless you count dripping stuff into a folder as configuring).
It differs opposed to the default Autorun & RunCC configuration that, as a user you do not need no make an SDConfig.txt file on your SD card.
And that you can start using your device immediately.
It will run in the background at the reboot the Cook has chosen to have it run.
But it adds a lot of extra tweaking functionality for hardcore Tweakers to.
What it basically does is install the beneath on the user side
My.tsk file from "\Storage Card\XDA_UC"
and if not present Cook.tsk from Windows Folder.
Copy Over User Files.
Check for "\Storage Card\XDA_UC\Copy2Root" if present, Disable Manila from Homescreen then Copy files from "\Storage Card\XDA_UC\Copy2Root" to the root of the device, Then checking for existence of wallpaper_TF3D.png or wallpaper_TF3D.jpg in "\Storage Card\XDA_UC\Copy2Root\Windows" and adding that to
[HKCU\Software\HTC\Manila]
"HomeBackgroundPath"="\\Windows\\wallpaper_TF3D.jpg"
Import registry files from "\Storage Card\XDA_UC\Copy2Root\Windows\manila.reg" If present
Re-enable Manila on Homescreen and redraw it. Now also works for the Sense 2.1 and up versions.
.xdas files in "\Storage Card\XDA_UC"
Silently run Legacy SDConfig.txt from Storage Card
(If your using RunCC.exe or Autorun you do not need to point to or use SDAutorun.exe or SDConfig.txt) Thanks to RoryB
Commands for SDConfig.txt can be found here....
.cab files in "\Storage Card\XDA_UC"
.cab files in "\Storage Card\XDA_UC\Storage", These cab files will be tempted to install to Storage Location.
.cab files in "\Storage Card\XDA_UC\Manual",These cab files will start with Full User interaction capabilities to choose where to install to.
.reg files in "\Storage Card\XDA_UC"
.xml files in "\Storage Card\XDA_UC"
.mscr files in "\Storage Card\XDA_UC"
.cer files in "\Storage Card\XDA_UC"
Create Shortcuts and more from Registry Keys
More information here....
Copy over welcomehead.192.01.png & welcomehead.192.02.png present in "\Storage Card\XDA_UC\Copy2Root\Windows" to the Windows folder.
Copy over welcomehead.96.01.png & welcomehead.96.02.png present in "\Storage Card\XDA_UC\Copy2Root\Windows" to the Windows folder.
Actually everything is copied over from Copy2Root folder to root, but the above Splashcreens get their file atributes removed before this happens.
Add native support for .mscr, .mortrun, .xda, xdai, xdas & .xdaz files
This thread is meant for user to user help and advice and sharing of tricks and tweaks.
Cooks should go to http://forum.xda-developers.com/showthread.php?p=3954547 for more information about the cooking side.
I have attached a Mort Script HTML Manual for those looking into learn about this type of scripting.
Before you consider buying me a beer. Please consider Donating to XDA to help out with the maintenance of the forum and get cool stars next to your Nickname showing your appreciation. Then there are always the people that without their apps this wouldn't have been possible at all that you can consider showing some love. Mort, DotFred & Sleuth255 All of whom made Apps Seemingly simple But oh so useful for the whole XDA and PocketPC community.
Hopefully A List of Cooked Roms with XDA_UC Pretty Soon.
Give me holler,
Or my main Homie Moderator Ameet.
Or you can ask your Favourite Cook to look into this and incorporate it into his or her rom
A Lot of Energy Rom's
www.energyrom.com
ELF/IN
AHEN E6f
ETEN Glofiish M700
ahmedfikry wm6.5 23089 light rom
Kaiser
jjblaster3
Raphael
Noonski's Secret Nightly Rom, Simpel Pro Classic (deuh)
Rhodium / Touch Pro 2
Juicy R0 @ PPCGeeks
Bikeandestroy Rom
DavidMMorley's v1.5.3 @ PPCGeeks
Bhar'S 21891_V2/23540_V2
*7ppc* for TP2
Rhodium / Touch Pro 2 CDMA
xpressyourcell's XpressDusk @PPCGeeks
xpressyourcell's XYC GTX @PPCGeeks
Samsung Omnia
Rock and Republic WM6.5 ROM @ XDA
Rock and Republic WM6.5 ROM @ PPCGeeks
Storm's ROM [CF03] @ Modaco
MrCapcom's i910 6.5 Custom Rom CF03 Edition
TechMaster7545 WM 6.5 CF03 Rom Build 23009 For I910
FloTanium ROM
Sony Xperia X1
WM6.5 для X1 Rumanian
Topaz
EPS Creme RC2 DE
RTT Topaz Peak, RTT Topaz Peak @ XDA,
Touch Dual
DJ Series
Touch Cruise 2 / Iolite
Serfer222's Iolite WM6.1 (build 21055)
Serfer222's Iolite, WM65, Russian, XDA_UC (Official Russian Mega ROM ported to Iolite)
Serfer222's Kitchen + Iolite WM6.1 (build 21055) WWE
HD / Blackstone
BiCh0n's ROM (french)
Touch HD2/Leo
Merlion NG Leo v1.30's Merlion NG Leo v1.30
RTT Shock Star RTM GER
BiCh0n's ROM (french)
Trinity/P3600
nAr & Icke WM6.5[WWE][FRA][DEU]
NoseDive's n083 P3600+i
Common Good Practices
Do Not Reboot untill The XDA UC Message tells you it's finished.
You do not need to make your .cab files read only. But out of safety of loosing them it is recommended.
Save your .reg files as Unicode, always start your .reg file with
Windows Registry Editor Version 5.00
In the first line. And leave one blank empty line at the end of the .reg file.
Test your tweaks and files instead of reflashing to many times. A self initiated script will be uploaded soon, so you can test on a device.
Save your .xml files as Unicode and check if they are correctly formatted by opening them for instance in Internet Explorer.
If it doesn't show you the content then it will tell you where to look for mistakes.
More XML tips
Commands for SDConfig.txt for Version 2.0
AutoShortcut Registry Tricks
AutoShortcut Registry Tricks
HTC Autoshortcut replacment and enhancements through registry keys:
Directory Copy
Copy over files from one folder to another, overwriting the present files.
This will also copy over any subfolders inside the folder being copied over.
The entry on the left is the destination folder, the entry on the right is the source folder.
See the example code below:
Code:
[HKEY_LOCAL_MACHINE\Software\XDA\DirCopy]
"\\My Documents\\Test"="\\Storage Card\\My Documents\\Test"
You can also use this registry entry if you just want to make an empty folder.
See the example code below:
Code:
[HKEY_LOCAL_MACHINE\Software\XDA\DirCopy]
"\\My Documents\\Test"="MakeDir"
FileCopy
Copy just one file over from one folder to another.
The entry on the left is the destination File, the entry on the right is the source file.
See the example code below:
Code:
[HKEY_LOCAL_MACHINE\Software\XDA\FileCopy]
"\\My Documents\\MakeDir.reg"="\\Storage Card\\XDA_UC\\MakeDir.reg"
Delete
Delete a file. This will not delete Files in cooked in Rom/Windows folder.
But it will for instance delete Read Only Pictures in My Documents
See the example code below:
Code:
[HKEY_LOCAL_MACHINE\Software\XDA\Write]
"\\Documents And Settings\\Somefile.xml"=""
Deleting of a whole directory has not been added as mistakes can be made to easily, resulting in a complete Device and SD card whipe.
If you understand the risks I reccomend to learn writing your own mortscripts to do this.
Write
Write more explicit shortcuts or files
The left entry is the destination file, the right entry is the text you want written into the destination file.
See the example codes below:
Code:
[HKEY_LOCAL_MACHINE\Software\XDA\Write]
"\\Windows\\Start Menu\\Programs\\Tools\\TF Detacher\\icon.lnk"="50#MPI_ProgramIcons.dll,-115"
[HKEY_LOCAL_MACHINE\Software\XDA\Write]
"\\My Documents\\Somefile.txt"="Hello World"
Auto Shortcut Creation
To create shortcuts to files or applications.
The left entry is the target link name, the right entry is the source file the link should be pointing to.
See the example code below:
Code:
[HKEY_LOCAL_MACHINE\Software\XDA\AutoShortCut]
"\\Windows\\Start Menu\\Programs\\SAP Settings.lnk"="\\Windows\\SAPSettings.exe"
If you want to be sure that the destination directory exists where you want the shortcut created you can add an extra Registry entry for Directory creation.
See the example code below:
Code:
[HKEY_LOCAL_MACHINE\Software\XDA\DirCopy]
"\\Windows\\Start Menu\\Programs\\Contacts"="MakeDir"
[HKEY_LOCAL_MACHINE\Software\XDA\AutoShortCut]
"\\Windows\\Start Menu\\Programs\\Contacts\\SAP Settings.lnk"="\\Windows\\SAPSettings.exe"
Run First Boot
Run a file or application at the first boot.
The left entry if for the file or application, the right entry is for paramaters you want passed to an application.
See the example code below:
Code:
[HKEY_LOCAL_MACHINE\Software\XDA\RunFirstBoot]
"\\Windows\\btdwake.exe"=""
SDConfig.txt Commands
Commands that will work in SDConfig.txt
Be aware that for commands with only three letters there needs to be a space between the : & \
XML: \Storage Card\Cabs\Personal.xml
XML: \Storage Card\Cabs\Personal.provxml
(To parse provisioning .xml or .provxml files Saved to ANSI)
REG: \Storage Card\Cabs\G-Alarm.reg
(To parse registry files in Windows Registry Editor Version 5.00 format)
CPY1:\Storage Card\Cabs\pim.vol
CPY2:\pim.vol
(To copy over one file, and if pim.vol is found in Cabs folder, Cprog.exe will be shut down first)
MOV1:\Storage Card\Folder
MOV2:\Windows\Folder
(Aplied to latest Beta's, but this will copy over folders and it's subfolders overwriting any existing files)
SC1: \Storage Card\Program Files\GoogleMaps\GoogleMaps.exe
SC2: \Windows\Start Menu\Programs\Google Maps.lnk
(Simple Shortcut creation)
WR1: \A File.txt
WR2: The Text That Goes Into the File
WR1: \Windows\Start Menu\Programs\Tools\Another App.lnk
WR2: 99#"\Windows\SuperApplication.exe"?AnotherAppWithIcons.exe,-IDI_APPICON
Yes for the Advanced Users. It removes Files Attributes from possible target file then deletes it before writing a new one.
Note that there needs to be a space before the written text starts! (Special NoPrize for the one that knows which file was originally under "AnotherAppWithIcons.exe")
CER: \Storage Card\Cabs\Work.cer
(Install certificates)
CAB: \Storage Card\Cabs\098MSN.CAB
(Cabs that can be installed silently without user intervention)
SCAB:\Storage Card\Cabs\098MSN.CAB
(Cabs that you want installed to Storage Card)
MCAB:\Storage Card\Cabs\098MSN.CAB
(Cabs that you want installed with full user interaction)
EXEC:\Storage Card\Cabs\something.exe
EXEC:\Storage Card\Cabs\mortscript.mscr
EXEC:\Storage Card\Cabs\Or A Link.lnk
EXEC:\Storage Card\Cabs\Or A Even a document.doc (consider this to be a regular Open or Run file as long as the file is known by system but that can be set be doing a .reg first with the file open registry settings)
KILL:AutoVer.exe
(to close running open apps, be aware there is no Slash needed)
DEL: \My Documents\Picture\leaf.jpg
(Remove read write permissions then try to remove the file, will of course not work on ROM/Windows files)
TSK: \My Cool Theme.tsk
Apply Theme
RESET
Will set the Reset flag to force reset at the end of XDA_UC
Questions & Answers
Question:: I am a new user of Windows Mobile and I don't understand many of the terms here, can you tell me in a simple language what exactly XDA_UC is doing for me or for my device?
Answer: XDA_UC aplies and installs installation files and user tweak files in a simple and straight forward manner that does not lock up your screen as the regular Autorun method's would with out the need to know how to configure a pre setup SDConfig.txt file. It runs in the background and you can start using the device after flash (thought you will be a little slower at start uas stuff is happening in the background)
Or if above is still not easy to understand, let's say like this: After you flashed a new ROM, or did a hard reset (or you run 'Clear Storage' from system settings page, it's same as so-called 'hard reset' here), all your programs and your tweaks or adjustment to the Operation System is wiped out and you only have a clean OS from the firmware on your phone. At this time, XDA_UC will silently install all your programs and apply all your tweaks alltogether in a straight-forward way, and you don't need to install or apply them one by one. Provided onlyif you already placed the (cab installer & registry tweak) files in the designated folder.
Question::I noticed the advantage of XDA_UC. But as a newbie to this society, seems I can not take full advantage of it. Any simple guidelines about what shall I learn and where to start?
Answer: The best way is to start learning which Registry settings you want personally always to be aplied to any rom. Look for CeRegEditor 4.3 so you can study, dump and compare the regitry to find the specific Registry keys that you can then save as .reg files. Installing cabs is nice and takes away a lot of hassle put adding your own. It's also smart to just make a shortcut to a specific program you already have installed on your SD as most work fine onze they have been installed before. That should save time on installing some cabs.
Question:: I have some Greenware in my storage card, every time after flashing a new ROM or a hard-reset, I need to make shortcuts for them inside \Windows\Start Menu\, Can XDA-UC do that for me?
Answer: You can either add a registry String line to any .reg file you put into the XDA_UC Folder
[HKEY_LOCAL_MACHINE\\Software\\XDA\\AutoShortCut]
"\\Windows\\Start Menu\\Programs\\Synchro Time.lnk"="\\Storage Card\\Program Files\\Synchro Time\\Synchro Time.exe"
And XDAUC will at the end of process convert all these registry settings to real shortcuts.
Or make a mortscript with the line:
CreateShortcut(SystemPath("ProgramsMenu") \ "Synchro Time.lnk","\Windows\Synchro Time.exe")
Question: What if I want to run XDA-UC by myself? Is it possible? Since what time to run (on first boot. second boot, or which boot after hard-reset) is decided by the cook of my ROM.
Answer: A Script will be provided soon for this, but it won't install if files that have already been installed at the XDA_UC run at the first boot.
Almost everything that get's installed by XDA_UC is written to the registry so if someone has the time to develop a managing tool can read this values.
Coming soon...
Is this something that can be installed/added to an existing rom that I can use stand alone, or does it have to be cooked into a rom? Thanks.
In principle this is supposed to be a cooked in thing, but Once i have tested the V 1.0.02 fully, and tweaked the timing a bit i might make a trimmed down "Run Whenever you like version or add to a SDAutorun Only Rom"
But it the adding to SDConfig.txt will need some testing, that if no one else is doing i will need to test first someday.
Noonski said:
In principle this is supposed to be a cooked in thing, but Once i have tested the V 1.0.02 fully, and tweaked the timing a bit i might make a trimmed down "Run Whenever you like version or add to a SDAutorun Only Rom"
Click to expand...
Click to collapse
OK, thanks for the reply. I will keep monitoring this thread to see how you're doing. I'm thinking this is a good way to update after a flash, but I'm not sure if I want to change roms right now. Also, not too many roms have it cooked in just yet.
Is this to install to main memory only?
If not, how do we differentiate which cabs we want in main memory and which in storage card?
I'm testing the next version which will recognize the Cab's in an extra Folder "SD" inside of XDA_UC.
Cab's placed there will open with full user interaction, so you can choose the location of where to install.
And it already has a silent, and at least 40% more effective method then a cabfile, of installing whatever to where ever you want.
I will also in time, unless someone beats me to the punch, an example .xdas file, to which you can add, your own .xml, .reg, files & folders and an silent.mscr to.
You can add a lot to that, and do whatever you want, if your willing to say goodbey to cabs that is.
Noonski said:
I'm testing the next version which will recognize the Cab's in an extra Folder "SD" inside of XDA_UC.
Cab's placed there will open with full user interaction, so you can choose the location of where to install.
And it already has a silent, and at least 40% more effective method then a cabfile, of installing whatever to where ever you want.
Click to expand...
Click to collapse
What happens if your cab is NOT successfully installed? Is there an error trap of some sort or does the program just stop or crash?
Noonski said:
I'm testing the next version which will recognize the Cab's in an extra Folder "SD" inside of XDA_UC.
Cab's placed there will open with full user interaction, so you can choose the location of where to install.
And it already has a silent, and at least 40% more effective method then a cabfile, of installing whatever to where ever you want.
I will also in time, unless someone beats me to the punch, an example .xdas file, to which you can add, your own .xml, .reg, files & folders and an silent.mscr to.
You can add a lot to that, and do whatever you want, if your willing to say goodbey to cabs that is.
Click to expand...
Click to collapse
Yes we need a really functional, powerful and flexible XDA_UC. But it may be a challege to balance this:
For advanced users -> They can do whatever they want to do with the UC, and it's wonderful.
For common users -> They can use the basic functions of it without complex learning process, and later on they just will find more and more supprise out of it.
For this purppose maybe a readme file somewhere is also good additive.
dmcnado said:
What happens if your cab is NOT successfully installed? Is there an error trap of some sort or does the program just stop or crash?
Click to expand...
Click to collapse
Good Question, I'm going to fing a cab that doesn't want to install first
But it should not install and there is no error trap besides that the cab will not show up on the installed programs in the control panel.
After that it contiunues.
wg5566 said:
Yes we need a really functional, powerful and flexible XDA_UC. But it may be a challege to balance this:
For advanced users -> They can do whatever they want to do with the UC, and it's wonderful.
For common users -> They can use the basic functions of it without complex learning process, and later on they just will find more and more supprise out of it.
For this purppose maybe a readme file somewhere is also good additive.
Click to expand...
Click to collapse
That is the intention. With a growing amount of users not that into tweaking, i feel the urge to draw them in and start learning and then contributing.
Noonski said:
That is the intention. With a growing amount of users not that into tweaking, i feel the urge to draw them in and start learning and then contributing.
Click to expand...
Click to collapse
Vow, wondering what if M$ heard of this. Some big guy is inspirating everybody to hack their OS!
Joking. Thanks for everybody' efforts to push forward the development of WM system. I am one of those that inspired by this sociaty and just joined the team.
But basically I still keep the business way of thinking about some great apps or better methods. That is, some details and some promotion (marketing term) is always needed before it get reachable to every user and widely spreaded. I think I can contribute more on this aspect.
Edit: I added two more questions on post#4. Anybody can answer please answer.
Did my best to answer these.
And i updated the info in post 1 to reflect the updates in V 1.0.02
I added something to your answer, but still not feel satisfied. Please just keep editing it. What we need is just like an explanation you made on the Rapheal ROM thread.
Another thing is the title of these two thread (sorry I keep commenting on these off-topic issues):
[UC]XDA_UC V1.0.02, Automated & Silent User & Cook, Configuration Service[12/07/09]
&
[UC]XDA_UC Autoconfiguration User To User Thread[23-06-2009]
Maybe I'm a little slow, but I takes me more than 5 seconds to (not completely) figure it out what is this talking about after first glance at the title, and then decide to take a look inside.
And then look at another big guy Menneisyys's thread title:
Sticky: Another revolutionary utility by me: add "find in page" support to most web browsers!
It is completely different effect on grasp reader's notices. And that makes difference on spreading speed.
Just comment, no matter is you insist to keep Noonski style.
wg5566 said:
Another thing is the title of these two thread (sorry I keep commenting on these off-topic issues):
[UC]XDA_UC V1.0.02, Automated & Silent User & Cook, Configuration Service[12/07/09]
&
[UC]XDA_UC Autoconfiguration User To User Thread[23-06-2009]
Maybe I'm a little slow, but I takes me more than 5 seconds to (not completely) figure it out what is this talking about after first glance at the title, and then decide to take a look inside.
And then look at another big guy Menneisyys's thread title:
Sticky: Another revolutionary utility by me: add "find in page" support to most web browsers!
It is completely different effect on grasp reader's notices. And that makes difference on spreading speed.
Just comment, no matter is you insist to keep Noonski style.
Click to expand...
Click to collapse
Is that really important? In my opinion the answer is no.
Noonski! Thank you for your Great work on this, i have included this in my rom and with Blazing Wolfs help got it up and running with no issues, except one.
Whenever i set XDA_UC to start of first initial flash it kills my modem i have to manuly pick the network the my phone uses to connect to the internet. IF i make XDA_UC start after a reboot it works perfect, I have tried to look at all The MSRC files and cant see to put my finger on the issue!!! Thanks in advance!!!
Hi,
I try to rename Games&APPs to Games in AT&T official ROM. What I did is:
1. Edit \oem\operatorPKG\menu_operation.xml, changed all "Games&Apps" to "Games".
2. Edit GAMES_APPS_FODER.lnk in my Fuze, change its content from "Windows\FolderView.EXE #\Windows\Start Menu\Programs\Games & APPs\?\Windows\ATT_Link.dll,-158" to "Windows\FolderView.EXE #\Windows\Start Menu\Programs\Games\?\Windows\ATT_Link.dll,-158". and then I copy this file from device into \oem\operatorpkg\ to replace th old one and rename it to "GAMES_FODER.lnk".
3. Build new ROM and flash. No Games folder is created at all! I know I can change the folder name after flashing, but I would like to change in the ROM.
Can anyone figure out what is missing or wrong? Many thanks
The start directory is set in initflashfiles.dat, which is found in "OEM\Raphael\0409\OEM_Lang_0409". You need to edit it however you want it. There also may be provxml's that create the directory; the best place to look is in the "\SYS\28008\SHARED\COMMON\Entertainment" folder, or similar folders (0409 and others) where bubblebreaker and solitair are stored.
Thanks, Ted:
After carefully studied, finally it works. The problem is at file "menu_operation.xml". Directory "Games" created by initflashfiles.data, but then there is "delete" command in menu_operation.xml which deletes "Games" and creates "Games & Apps". I deleted those sentence and now everything came as desired. Thanks for you reply
How to change icon for *.exe and link? Can I use "ResourceHacker" to change icon? Please tell me in detail. Thank you in advance!
vagrantman, if you are asking about some standalone executable, containing icon - than yes - you can change built-in icon by means of resource editor. Not sure how RezHacker works (never used it - I use restorator) but it's possible. Just extract ico, edit it in any image editor and paste back to the place. Or paste any wanted ready image in correspondent format.
If you are talking about changing icon in StartMenu of 6.5-6.5.x - resource icons are normally not used for standard applications. All icons in rom are png files (usually names as Start_Icon_Bla-Bla-Bla.png)....
They are fixed in
[HKEY_LOCAL_MACHINE\Security\Shell\StartInfo\Start]
Find the exact name of the icon you want to change in the registry, make your custom png with the same name and just replace original one
More info 'bout the matter: http://forum.xda-developers.com/showthread.php?t=1115201
Thanks a lot! I will try as you teach me. First of all, I will try to find "resource editor".
thank you once more!!!
[Advice/Reference/Guide] The Definitive APK Modding & Theming Thread... [12/08/13]
{
"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"
}
XperienceD said:
This is why I love Virtuous Ten, as you can install multiple resources.
Click to expand...
Click to collapse
jacknb1ack said:
wow, i didnt know there is tools like that
Click to expand...
Click to collapse
After reading jacknb1ack's comment I felt compelled to re-write this whole thread to accommodate for the various PC Programs that you use to do all of your apk modding which can and do make things a hell of a lot quicker. I've wrote this as something I would have liked to have come across when I first joined because I know there is a lot to take in, and hearing you need to decompile, edit this or that xml, recompile, sign etc etc etc can be off putting for some especially if you struggle to get a program or apktool setup to begin with.
Knowing how to use command prompts will be beneficial in the long run so I've wrote a detailed guide below which covers it from start to finish along with how to Sign and Zipalign your apks, pulling them from the computer and so on. I've also covered some Theming basics with links to everything you're ever going to need, which will be extra handy if you're just getting started.
Minimum Requirements:
A Rooted Phone.
Java SE Runtime Environment
Java SE Development Kit
Any of the apk modifying methods below.
7-Zip or WinRar
Theming Requirements:
Notepad++
Photoshop, GIMP or any other image editing software.
Patience. :silly:
To avoid any java not found issues you need to set up the PATH for it in Environment Variables, you can find a short Guide on how to HERE. This is how mine looks...
Code:
[B]C:\Program Files (x86)\Java\jre6\bin;[/B]
I would advise that you also install the Android SDK but if you don't want to you can download this APK_Mod.zip that you can extract to a folder and place it anywhere you want on your Computer (I recommend C:\APK_Mod) and run any adb, apktool, zipalign or signing command prompts from it. You can find a more detailed guide for this method below.
But first off all here are some of the most common Programs that you can use to modify and theme your apks, and I'll start with one of the best...
Virtuous Ten Studio (VTS)
Virtuous Ten Studio (VTS) is the ultimate solution for the modification of android applications.
This program allows you to manage entire Android projects within an easy to use and familiar environment.
The intended group of users covers anyone from a themer over ROM devs up to the smali gods known for their awesome mods of existing apks.
The modifcation of smali code is one of the biggest features in VTS. You can easily decompile, edit and recompile any apk or jar file.
However, the application is not limited to smali files. You can edit almost any file found inside an apk or jar.
Virtuous Ten Studio is also the official successor to the highly important M10Tools released last year by the Virtuous Team.
You can easily edit any m10 file from Sense apps in order to resize or change them.
Additionally VTS brings support for un- and repacking of boot images (boot.img), a job that previously required a cygwin installation with the dsixda kitchen.
Since VTS' own implementation is a native windows solution, which means you don't need dsixda or cygwin anymore.
VTS has been designed to run on Windows, has been in development for nearly two years and has gone through many stages of testing.
Today VTS is a highly respected full blown Android IDE (Integrated Develoment Environment) suited for all your reverse engineering tasks.
Click to expand...
Click to collapse
- www.virtuous-ten-studio.com
AndroidSuite 2013
AndroidSuite 2013 what it does
Decodes and encodes Dex files
Decodes and encodes APK files (Previously bugged in APKManager)
Gives a console output
Flash boot.img (fastboot)
Flash update.zip (fastboot)
reboot/reboot fastboot mode
Sign unsigned apks
Click to expand...
Click to collapse
- (App) Androidsuite 2013 v117 (01/04/2013) Jelly Bean Support!
Tickle My Android 5.4
Tickle My Android, or TMA for short, is a command line tool for Windows that uses apktool to help you pull and decompile files from your Android phone or tablet.
But it can also:
change the battery icon,
change the WiFi icon,
change the signal icon,
change the emoticons,
change the notification toggles,
change the transparency of the statusbar (if the rom allows it),
add Ice-Cream Sandwich-style transitions
zipalign apk files,
sign new apk files,
sign recompiled apk files in the same way as the original,
deodex apk and jar files,
backup personal data and transfer to a brand new device,
resize and change boot animations,
change fonts,
add sounds from other devices,
create backup-generating flashable zip files
..and now comes in Portuguese and French!!
Click to expand...
Click to collapse
- [TOOL]Tickle My Android 5.4 - DE/RECOMPILE APPS, CHANGE ICONS...AND MORE!!!!
ApkManager V6.1
1. Based on ApkManager 4.9 by Daneshm90 (Big thanks to him)
2. Updated Apktool V1.5.2 by iBotPeaches & Brut.Alll
3. Updated Aapt v0.2
4. Default compression level set to “0?
5. 512Mo as default allowed heap size
6. 3 ready for use fake frameworks : “other\wanam1.apk”… (for Lidroid framework editing)
7. Add a “Decompile all files” feature (option 25)
Click to expand...
Click to collapse
- wanamlite.com
Command Prompt Editing
Basically this is just manually doing what all of the programs above need to do in order to decompile, recompile, sign and zipalign apks so it's worth knowing how to modify apks this way for occasions when the above programs for whatever reason gives you issues.
Use Linux or a Mac?
See the following threads for more information on using apktool on other Operating Systems...
APK Manager for Mac OS X
[Linux][UTILITY][TOOL] APK Multi-Tool
[tutorial] decompiling,recompiling and signing in linux (27-01-2013)
How to install and use Apktool with Ubuntu
Getting APKs To Your PC
You have two options here...
1. Use a file manager on your Phone to copy and paste files to your SD, then connect to your PC and use Windows Explorer to copy and paste to your desired location.
2. ADB. Open a command prompt window in the ADB folder (see below) and type/copy the following command...
Code:
adb pull /system/app/ Original_apps
...which will pull the whole app folder to your computer and create a new folder called Original_apps, which you can then simply copy apps to the main folder ready to be modified (keep the Original_apps folder as a backup). Then do the same for your framework folder...
Code:
adb pull /system/framework/ Original_framework
...want to pull your Phones whole system...
Code:
adb pull /system/ Xperia_Z_System
...you can rename "Xperia_Z_System" to whatever you want.
Further Information: [WINDOWS][TUT]ADB tutorial, setting up ADB, usefull commands, collecting debug info.
This is a zip of the apktool folder I currently use - APK_Mod.zip - which as said above also contains the ADB files needed to pull and push apps from your Phone, or you can check out the following links...
[Tool] ADB Fileexplorer
[TOOL][WINDOWS] Android Apktool
Installing Resources
For apktool to work you need to install the resources needed by your apks for de and recompiling, and those resources are other apks, the first apk regardless of your Phones manufacturer is going to be your framework-res.apk. The second apk you need is dependent on the manufacturer so you need to check your framework folder for another apk such as twframework.apk or SemcGenericUXpres.apk, in some cases it might even be the SystemUI.apk but you would need to check if you have issues with the other two. Put those two apks in the APK_Mod folder to begin with then open a command prompt window. The easiest way for me is holding the shift key then right clicking the mouse and selecting Open command window here, but if you're not able to do that then click your Start button and search for Command Prompt, then open it. You then need to point it to the relevant folder, so type cd then copy and paste the location of the folder (cd C:\APK_Mod) and hit enter.
The install commands are...
Code:
[B]apktool if[/B] framework-res.apk
...and for the second...
Code:
[B]apktool if[/B] SemcGenericUXpres.apk
Decompiling
The command for decompiling is...
Code:
[B]apktool d[/B] framework-res.apk
...and so on for each individual apk you want to modify. A new folder will be created that is named after the apk you are modding, then you can edit xmls, smali files and .9png images. You'll notice that there are a lot more folders when you decompile an apk, that's normal as those folders are from the resources.arsc and where you'll find the xml files you may need to edit to make the changes you want.
Recompiling
When you've done editing it's time to recompile, using the command...
Code:
[B]apktool b[/B] -insert folder name-
...and if you've edited your files correctly then it should compile with no errors and create a folder named dist in the decompiled folder along with a new apk.
Signing
Before using the new apk you will need to sign it, to do this you need to extract (open the apk and simply drag and drop them to the dist folder) from the original apk the resources.arsc (only if you haven't changed anything in the values folder, the AndroidManifest.xml and META-INF folder (if it exists), then copy them into the new apk. In WinRar it will give you the option to choose the compression method, and it's vital that you choose Store as the compression method because if you don't then you WILL BOOT LOOP after restarting your Phone!
NOTE: If you have edited anything in the values folder then extract the resources.arsc from the new apk and copy (drag and drop) it back in the same manner described above.
Alternatively you can use the following command...
Code:
[B]java -jar signapk.jar testkey.x509.pem testkey.pk8[/B] framework-res.apk.apk framework-resS.apk
...notice the extra "S", the output name has to differ from the input name otherwise it will give an error, if done right it will create a new apk called framework-resS.apk, just remember to rename it back to the original before using it on your Phone.
Signing For The Play Store
If you plan on Publishing a Theme or any other app/apk to the Play Store then using the above method to sign your apks just wont work because you need to give it an individual signature that is unique to you, thankfully @AndroidGraphix has written a great guide that will show you how, it's a bit more fidgety than the above method but simple enough to follow...
AndroidGraphix said:
Click to expand...
Click to collapse
- Noobs guide to signing an APK with a Private Key
Zipaligning
DISADVANTAGES OF UNALIGNED APKs
Quite understandably, situation would be reserved for unaligned application packages. Resource reading would be slow and memory usage would be on the higher end of the spectrum. It would also depend on how many unaligned applications are present. For example, if less number of applications with an unaligned home application, you’d see slower application launch times. This is the best case scenario. For a worst case scenario, having a number of unaligned applications will result in the system repeatedly starting and killing processes, struggling with lags and huge battery drain.
Click to expand...
Click to collapse
- SOURCE
The command for zipaligning is...
Code:
[B]zipalign -v 4[/B] framework-res.apk ZAframework-res.apk
...notice the "ZA", again that can be anything you want so long as it differs from the original name, I use ZA for an obvious reason, and again don't forget to rename it before using on your Phone.
Getting apks back to your Phone
It's just a reversal of how you got them off your Phone to begin with, use a file explorer and put your apk on your SD Card, then move it to the Phones System folder and change it's permissions to rw-rw-r, then move and replace it with the original. Most apps should continue to work but if you change your framework-res or SystemUI you will most likely need to reboot. Or you can use adb to push and install them. Check the previous link for the commands.
If all the above has worked correctly you should now have your modified apk installed with the changes you've made displayed on your Phone.
Theming & Modifying
This is where the fun begins, once you've got setup to decompile your apks then obviously you're going to want to mod them, so here's a few pointers to clear up what seems like a daunting process to new comers...
To start with you'll probably just want to start with replacing images, so if that's all you want to do for now then here's a quick tip, you DON'T need to decompile or sign your apks!, simply edit and rename your replacment images on you computer, preferably using the same or similar dimensions then drag and drop them back into the right folders in the apk, always using Store as the compression method, but PLEASE NOTE; .9 pngs can be replaced in the same way, but if you want to edit them in Photoshop for example then you need DO need to decompile them.
A few things to note...
Smali code is real Developer territory, it's Matrix code to me , thankfully there's usually a guide to follow so you can simply copy and paste code without having to fully understand how it works, so don't fret about this.
.9pngs are simply png images with a 1 pixel border. You can edit anything within that border but anything on or over will give errors when building. Unless you're creating an image from scratch then you can leave the border as it is, it's that simple! Sure there's a bit more to .9png editing but you can find a few links below that go into more detail about .9s and how they work.
xmls are relatively simple and edited with Notepad++, much simpler to understand than smali and again, there's usually a guide to be found for most mods you may want to make yourself, but if you're feeling brave you can experiment with it when you have a basic understanding of how it works.
Restoring modified files if you mess up is easier and quicker with a CWM.zip, especially if you're modifying any framework apks! Just because an apk might build with no errors doesn't mean it won't give you any when installed to the Phone.
.9png Editing
I hope after reading this explanation you're left wondering what all the fuss is about, as it really is quite simple. I'll use the following two images, btn_default_pressed_holo.9 & status_bar_close_off.9 to illustrate the basic point of the borders...
Decompiled .9pngs:
Recompiled .9pngs:
Those borders control which part of the image is stretched, and we'll use Draw 9-patch which is for editing the borders of decompiled .9pngs and lets you see how the image, when stretched, will be displayed on the Phone. Notice that the borders are different sizes, well that's because I only want/need a certain part of the image to stretch to get the desired look on the Phone.
...in the image below the left side shows the stretched image and desired effect should look on the Phone and the right side shows how it would look if I had edited the borders incorrectly or used none at all...
You can get away by not using a border but you would need to edit your image to specific dimensions to accommodate for the stretching, for example it might look fine for a simple OK button but it might not look right if you used the same .9png for a screen press which stretches the whole length of the screen, so you're better off just using them to begin with, plus you'll more than likely get errors down the line while decompiling or recompiling your apk.
The use of the border is made even more clear when you add text to an image. For my status_bar_close_off.9 I've filled all four sides of the image (except for an empty pixel in all four corners as that is the max amount of border you can use) as I need it to stretch the image just how I've edited it...
...but if I used the same sized left side border as the btn_default_pressed_holo.9 then this is how it would look on the Phone...
...which is obviously not the look I'm trying to achieve, as the left side border is causing the image to stretch incorrectly.
So that's basically it, depending on the image you're editing you can usually leave the borders alone but if you create one from scratch then you might need to play about with them if your images doesn't look quite right when used on the Phone. Here's a few links that will assist you further, especially the batch editing...
How to edit .9.pngs
[TUTO] Create your 9.png !
[UTILITY][TOOL] 9patchPngSuite [Windows&Linux]
How to draw NinePatch images with Photoshop - .9.PNG
[TOOL][Multi-Platform][.9.png][ALL DPIs] Android Resizer Tool
[Tutorial][Commentary] How To Batch Edit .9PNG/PNG Images
Xposed Framework
rovo89 said:
In this thread, I'm presenting a framework which gives you the possibility to modify your ROM - without modifying any APK (developers) or flashing (users)!
...
Advantages:
No need to modify any APKs. This means:
No need to decompile, change things in smali, compile, sign, ...
It will work for odexed and deodexed ROMs.
Your mod is not bound to a specific version of the ROM. Unless there is a major change in the methods called for a certain functionality, your mod will continue to work even when you upgrade your ROM. Hell, it will probably even work with different ROMs.
Multiple mods can be installed at the same time, even if they change the same package. So you can use these battery icons and those quick toggles. Even hooking the same method twice is possible. Of course, this only works properly if the mods are not trying to do incompatible things.
It does its magic at runtime. That means you can implement options to let the user decide if they prefer the bikeshed to be painted in red or blue. Or you can have some extra logic for certain ROMs without building different mod versions.
It can be disabled easily without having to reflash.
It's open source.
Click to expand...
Click to collapse
- [FRAMEWORK ONLY!] Xposed - ROM modding without modifying APKs
[Guide] Porting XTheme themes
[Guide] Xposed Framework/TabletUI (Noob-Friendly)
[INDEX][WiP] List of APPs & MODs that use XPOSED Module
[MOD][XPOSED][4.0+] XThemeEngine beta5 - Theme engine for any rooted phone
CyanogenMod Theme Chooser
Annex1 said:
CM10.1-THEME_BOOK
Theme book was created by Annex and Ebs512. I've been asked alot of questions from how to get started? what do I need to get started? to What Graphics program do I use? etc. We made a real simple theme guide to help get you started. This is in Layman Terms.. Nothing fancy.
ONLY THING FANCY IS MY FLASH BOOK
YOU MUST HAVE A FLASH PLAYER INSTALLED TO VIEW THIS!!!
Click to expand...
Click to collapse
- [GUIDE] HOW TO THEME CM10.1 - Animated Book
[Tool] [Theme Creator] [CM/Avatar] Theme creator tool
[Tool] nhnt11's XML Generator Revived V2+Extended UPDATED!
[DEV/GUIDE]Creating APKs for use with TMobile Theme engine
[GUIDE] T-mobile theme engine for the faint at heart (non-linux users)
[1/30/2013] Mega 4.2.1 BlackBean Theme Template [XXHDPI/XHDPI/HDPI/TVDPI]
-·=»‡«=·-[JB][CM10] Theme Engine Template Updated To V4 [8-7-12][XHDPI/HDPI]-·=»‡«=·-
See a few post below for more...
thnaks
thank you so much
very hepful guide
looking for dis
Thank you so much,
This should be sticky!
Make a noob, into a senior user.
Sent from my Anzu using xda premium
Flashable Clockwork Mod (CWM) zip
ClockworkMod Recovery zips are used for flashing individual files to whole ROMS and can be a life saver if you push a badly edited apk to your Phone that results in a bootloop. There's also a few programs that can assist you with that too, but if all you're doing is replacing a few files all you really need is a template, then it's just a matter of creating the Phones folder setup in the zip which is simply creating folders: system\app - system\media\audio etc then dragging and dropping your files into it. A basic understanding of the updater script is essential, a ROM.zip will more than likely wipe your Phone whereas a Theme.zip may just replace files but it might delete some also.
See below for a CWM.zip Template but first some helpful links...
ERRORS encountered in CWM Recovery
[Tool]easy flasher v4 (ur own update.zip)
[TUT] [for NOOB] editing updater-script for noobs!
[TUTORIAL] Making Flashable ZIPs, EDIFY Script, ZIP Signing & Key Creation
[Utility-Tool][DEVandThemers]CWMflashpack.zipCreatorV1{TheCollective}w/EdifyScripting
This is my Theme_CMW_Template.zip which is set up so you can add your own files to the framework and apps folders in the main system location, but you can easily add other folders to it if you want to add things like fonts, tones or anything else, just remember to add folders within folders if that's where the files you want to include are such as tones, media\audio\alarms for example.
If you navigate to META-INF\com\google\android you will find the updater-script which controls how the zip works and the text you see when you run it in CWM. As this zip is just for basically over writing files you don't need to edit anything except for a few lines...
...this is how I've edited it for my Ice Green ResMods theme...
...so just edit it using Notepad++ to your liking.
When adding files to your zip add them using Normal as the Compression Method...
...and that's pretty much it. Remember to remove the text files I've added otherwise they will be flashed to your folders too.
Deodexing
The first thing I do when installing the latest firmware is Deodex it, mainly because having a deodexed ROM is easier to modify and you'll find a lot of the modifications that are are in the Themes And Apps sections require you to have a deodexed ROM. I use the dsixda's Android Kitchen to deodex and @pankaj88 has written a great guide here - [GUIDE] How to DEODEX stock ODEXED ROM using dsixda's kitchen - so you can do it yourself, or you can give the following tools a try.
philos64 said:
The differences between Odex and Deodex Files...
In Android file system, applications come in packages with the extension .apk. These application packages, or APKs contain certain .odex files whose supposed function is to save space The odexed file structure works well as an optimization tool. Since these .odex files contain preliminary load information about each system app, the OS knows what to expect when it’s booting up, and consequently, loads all these apps faster.
On the other hand, it also makes hacking those applications difficult because a part of the coding has already been extracted to another location before execution.
For instance, on a non-rooted device you’ll find
system/app/Phone.apk ===> as well as ===> system/app/Phone.odex
Click to expand...
Click to collapse
- [GUIDE] - The differences between Odex and Deodex Files
[TOOL][WINDOWS]Universal Deodexer[ALL DEVICES!!]
abcdjdj said:
Hi everyone,
Alokbina and I have created a tool which allows users to very easily deodex apks from a rom. This tool is very useful for Rom developers too. For now only windows is supported but we will try our best to make the same tool for linux too and make the tool as user friendly as possible. And, please don't forget to thank alokbina too.
NOW EVEN ON XDA PORTAL - http://www.xda-developers.com/android/deodex-all-the-things-with-universal-deodexer/
Requirements:-
--->Java installed on your PC
--->system/framework folder from your rom
--->apks from that SAME ROM with the respective .odex file
--->Patience and a calm head (common sense included)
You can watch this video for setting up and using the tool -
Click to expand...
Click to collapse
[FIXED][UPDATE - V3][TOOL][WINDOWS]Universal Deodexer[ALL DEVICES!!]
adityaf said:
CARBONITE TOOL
Features
1)Deodex your stock ROM (android 2.x 3.x 4.x)
2)This tool automatically pull your apps from phone to PC
3)One click deodexer,
4)Just click Deodexer_from_phone
5)All apps and framework will be deodexed.
6)Automatically makes .zip file flash from CWM.
BUGS
Sometimes it does not deodex androidpolicy.jar just run script once again!
Click to expand...
Click to collapse
- [TOOL]CARBONITE TOOL [Dedeoxder tool][All devices]
And that's pretty much it, the only way you're really going to learn is by reading then putting into practice what you've read and picking stuff up along the way, fortunately this far into the history of Android there are numerous guides for numerous mods and tools to help with a variety of tasks and the following links are going to be a big help...
U.I Modding
Tutorial :- Changing App Icons
[TUTORIAL]How to Theme Your MMS
[How-to] Edit the "About Phone" display
How To Colorize Lock Screen Clock in Jellybean
[TUTORIAL] How to add various framework/Settings mods
[TUTORIAL] Where to find the colors for making a theme
[TUT][JB] HOW TO THEME SystemUI.apk for TOTALLY newbie!
[TUTORIAL][ICS][GB][JB]How to change Android's black background
Text...
Text Color Guide
[GUIDE][REF]Changing System Text Settings
Statusbar...
[MOD][TUT] Merge The WiFi And Signal Icons
[GUIDE][MOD][SYSTEMUI] How to add 0.0K/s meter on statusbar ICS/JB
[TUT] How To Center The Clock On The Statusbar..And Move Other Icons As Well!
[How-To]Removing Battery Percentage, Adding Toggles,Battery Circles to Statusbar
Misc...
Some Extra Theming and Moving the Power Widget Down
[HOWTO] Integrating/Adding applications to the settings menu
[GUIDE] How to get Transparent App Drawer [Launcher2.apk or Trebuchet.apk]
[GUIDE][Mods][All Devices]How to add/ Change Clocks to Analog/ Digital with Seconds
Various Tools...
[TOOL][BETA]Miui Theme Converter/Convert apk Themes!!!
[TOOL][JAVA]"The Rom Fumbler" aka "The Battery Icon Creator"[V29.0]
[TOOL]Boot Animation Factory-Create,Preview and Manage Boot Animations
Useful Links
findicons.com
colorschemer.com
[GUIDE] Tips for themers
Ultimate Online Theme Kitchen
[GUIDE] Want to learn how to theme?
[GUIDE] Smali coding guide for beginners
General Questions about Themes GO HERE!!!!!
[Guide] How to port themes to T-Mobile Theme Chooser
[Collection] ICON SETS | Over *750* different Icon Packs
[TOOL] Remote Theme Injector - theme your favorite paid apk
[TEMPLATE] Icon Packs/Themes for Apex, Nova, Holo, ADW, and more!!
[INFO] Custom framework-res.apk resources.arsc using vendor overlays
If you feel something more should be added to this thread please feel free to suggest it.
Credits & Thanks:
@_calum_
@Diamondback
@ebs512
@Rizal Lovins
@Ticklefish
@wanam
@rovo89
@Annex1
@ebs12
And not forgetting @iBotPeaches and @Brut.all for making it possible with - [UTIL][Feb 02 2013] Apktool v1.5.2 - a tool for reverse engineering apk files
one query
after i decompile the apk,i edit the my xmls in project folder....then what to do next?
EDIT:- I figured it out
abhisheak.bansal said:
one query
after i decompile the apk,i edit the my xmls in project folder....then what to do next?
Click to expand...
Click to collapse
Continue editing or recompile and test your changes.
Wow!! It should be sticky. Really usefull guide, it explain so much things... thanks again
Useful Guide, Thanks
soooo happy u came out with this
will u add how to make it a theme that someone else can flash?
keep up the good work
zainthesnipe said:
soooo happy u came out with this
will u add how to make it a theme that someone else can flash?
keep up the good work
Click to expand...
Click to collapse
Thanks, glad to see it's helping some People, and I will add that yes.
zainthesnipe said:
will u add how to make it a theme that someone else can flash?
Click to expand...
Click to collapse
Done.
Could you make a short guide to show
how to zipalign using dsixda's Android Kitchen
When I select zipalign all...
It says no working folder found...
what does it mean...?
Kajendran said:
When I select zipalign all...
It says no working folder found...
what does it mean...?
Click to expand...
Click to collapse
You haven't set up the folder. http://forum.xda-developers.com/showpost.php?p=5626300&postcount=3
Updated.
Thx For Guide:laugh:
when i try to install the resources i get this error:
Code:
'java' is not recognized as an internal or external command,
operable program or batch file.
i have java installed, what am i doing wrong?
Setup the path for it. See an "adb for noobs" guide for setting the path up.
Sent from my CM9'd Arc
XperienceD said:
Setup the path for it. See an "adb for noobs" guide for setting the path up.
Sent from my CM9'd Arc
Click to expand...
Click to collapse
i already did that, maybe i did it wrong, ill check again.
---------- Post added at 09:55 AM ---------- Previous post was at 09:51 AM ----------
ok i did it wrong, now i fixed it and it still doesn't work
any ideas?
i just need to sign a zip
OverLo4d said:
any ideas?
i just need to sign a zip
Click to expand...
Click to collapse
I'd remove Java then reinstall it, add your path then try again.
Hello everyone,
This app lets you select a folder and organise everything inside into sub-folders. You can make rules with existing file types or define new ones. You can use file size as a rule too. It's a little tool I designed. Please give it a try if you like to organise your messy downloads folder.
Playstore link
Thanks!