Request for a Tutorial on comparing two ROM's - Verizon Droid Charge

Is there anyone out there who has the knowledge on how to tweak/make ROM's willing to do a quick (I don't know if that is realistic) tutorial on just how to compare to different ROM's? For instance a video or a step-by-step process on how to take one ROM (let's say the Stock ROM of the Droid Charge Gingerbread version) and compare this to a heavily modded ROM (let's say Infinity ROM or Humble)... I'm curious just how the devs do this; many have advised to start here to see how ROM's work, what's different and where the location of different parts are.... Please help thanks..
My initial thread

Hmm good question. Sure most will point you to several links to read different threads. Each Rom depending on what they change are usually an effort by several people. Thats were credit to certain people are given. Some start with a stock ROM and do some tweaks but alot of theme work. Guess thats why you are asking. Think there is so much going on in the back round with what we dont see it would be hard to compare, such as lines of code etc... Dont know if that is the correct answer but figured I would try.

I know, the reason I'm asking is because I've been given advice to start here and the names of programs needed, but I'm not learned enough to use the programs the correct way yet... Figured I'd ask-whats the harm?
Sent from my SCH-I510 using XDA App

Programs:
Linux if you want to extract files from factoryfs.rfs files
7zip or File-roller (or other archive utility)
apktool (or smali/baksmali)
diff (win-diff or kdiff3 also works, can also use git)
Notepad++ or gEdit
andriod-sdk with platform-tools (for adb)
Any dependencies of the above
After that, it's as "simple" as de-compiling various files (with apktool/baksmali) and comparing them. Then use a text editor to add/remove things that you want/don't want from the de-compiled files, or swap out images. After the changes are made, recompile and test. It is a very time consuming process, especially if you run into issues, as problems aren't always easy to track. Logcat will definitely become your friend.

andrewjt19 said:
I know, the reason I'm asking is because I've been given advice to start here and the names of programs needed, but I'm not learned enough to use the programs the correct way yet... Figured I'd ask-whats the harm?
Sent from my SCH-I510 using XDA App
Click to expand...
Click to collapse
You came to the game kind of late. There're so many roms/kernels etc..and the history of them. It will take you months to catch up. I suggest that we would provide you the most current one and it's new/just release you can read up on it. When you look at a rom, alway start on the first page, this is where developer will provide details/description about what has changed for the rom. I would recommend the most current, stable, fast and it's a new release. The TweakStock Rom. This rom when you're using with Go Launcher (Go launcher set to smooth and with some animation, will give you the fluid of Iphone 4S. Start from thread one and see what dev has taken a stock rom and upgraded/tweaked up until today. Good luck. If any question you can post here and we will try our best to help out.

Thanks fellas, I appreciate the advice and I will let you know how I do. One problem I kept running into was in this procedure:
1. Opened kdiff
2.file browse rom a (stock gb in this case) both files still in .tar.md5 format
3. File browse rom b (humble or infinity)
4. Open/compare
5.force close
Second attempt removed .md5, left
.tar, same problem.
Third attempt unpacked and zipped, repeated steps 1-5. Force close.
Fourth attempt, tried to open just the .rfs files and repeated steps 1-5. this time I got a bunch of symbols... laid it to rest...........
So based upon the replies so far, I can see that I was trying to oversimplify a whole; each file must be extracted and browsed individually.
Sent from my SCH-I510 using XDA App

Related

Decompile ROM to find out what's inside?

Some ROM chefs post a list of what they have cooked into their roms, some don't. But if I like a certain application/software cooked in and I don't know the name, like for example a battery meter that looks cool, how do I find out what it's called to get a cab of it on my own? This brings me to a point, is there a way to decompile a ROM and get a list of pre-installed/cooked applications, and then from there either find a cab for that particular application or make your own from the ROM you just decompiled? Just wondering, sorry if this has been posted already. Thanks.
Reverse engineering is what we do here in XDA LOL. Anyhow, if you like something, go to explorer and look for file name u think it might be! Its a WAG, but it works, and then go to the link in my sign and search! Good luck.
Yeah well I tried searching for it via explorer, no luck finding it lol. Thanks however. Plus I would want the version number on the app too. Is it possible to decompile a rom and get a list of installed apps? Like the chefs post when they release?
Short answer is yes, as a ROM contains a collection of various packages. Grab any one of the kitchens and give it whirl.
What happens if the rom I want to decompile doesn't have its kitchen released?
Use dumprom, however I think youre best shot is to use the ROM tread and ask there.
kickindrummerkid said:
What happens if the rom I want to decompile doesn't have its kitchen released?
Click to expand...
Click to collapse
No worries, most any kitchen can dump a ROM. ImgfsTools is actually what you seek, but the kitchens paint a bigger picture if you're not already familiar with the cooking process.
Ok so I dumped the rom however, how do I tell out of all the dll's and exe's in "dump_imgfs" folder which one is the battery icon OEM. Also, how do I make a cab out of it?
There isn't going to be a big, flashy "This is the battery monitory" sign.
Your first step would be to guess, based on the names of the files. Something that includes "Bat" and "Mon" is a great candidate. Put your guesses in google and see what you find.
If that doesn't work, you're gonna have to guess based on some other criteria. For example, MS will often set the operating system DLLs to the same date. If that date was preserved when the ROM was cooked, you can eliminate all the OS ones and google the rest.
Now, there's 2 methods that may be a lot easier and get you a faster response:
1. PM/email the author of the ROM and ask. Be polite and thankful, and let them know you appreciate their work.
2. Google "Windows CE Battery Monitor" and look through the results.
I found out by looking up an OEM package for another battery and found out the registry settings for it and went to my registry on my ROM and found out what DLL it pointed to. Then I created a CAB and flashed a new ROM and then installed the CAB and it worked . However, is there any way to edit the DLL and change how it looks? I tried hex editing but that's no luck for a picture.
kickindrummerkid said:
Ok so I dumped the rom however, how do I tell out of all the dll's and exe's in "dump_imgfs" folder which one is the battery icon OEM. Also, how do I make a cab out of it?
Click to expand...
Click to collapse
Now that you have figured out the details. Can you please write step-by-step procedure how new ones in this arena can accomplish this?

convert visual SYS files to work with old style

How do you use sys files that are designed for visual kitchens with the non visual buildos? I tried moving all the folders into one directory and buildos finishes but the rom doesn't boot... anyone? thanks!
I dunno, but you'll need all of the dsm's to begin with. If you don't have them, you might as well not even try. There's a folder in the visual kitchens with dependencies; maybe those are the dsm's that are removed from the original packages. It's just a guess.
Why not just use the newer kitchens? Or, wait until Da_G finishes with all of his kitchen tools. I bet he'll have everything figured out.
Edit: Or, check this post. It will probably help you out.
Thanks for the info! Perhaps I should have also asked what the differences were! I will check that post. About newer kitchens.. I guess I am old-fashioned. I will have to convert one day but it's like I am with cars, I require a standard transmission - one day I will have to give in a drive automatic ...
raidzero said:
Thanks for the info! Perhaps I should have also asked what the differences were! I will check that post. About newer kitchens.. I guess I am old-fashioned. I will have to convert one day but it's like I am with cars, I require a standard transmission - one day I will have to give in a drive automatic ...
Click to expand...
Click to collapse
Automatic sucks, don't go there, lol.
I started out with the older style kitchens and was reluctant to change, but it's really not that hard. You'll need to convert your packages, but there's a simple tool for doing it put together by Kraize. The kitchen itself works better; I used to have the older style one crash all the time. Just suck it up and do it.
more and more kitchens are showing up as visual. I have groove rom 5 kitchen but just could not figure it out, my rom would not boot. maybe I will swap my question around and learn to convert old style kitchens to new. I do kinda like the no duplicate file error... and the nbh's they produce do seem to be smaller. not sure though as I have never made a rom that will boot!

Release: Dissected OEM/EXT files

I have separated as many parts as I could figure out with TPC's OEM and EXT packages from his last kitchen (at the time of this posting), 23034.
If you cook using TPC's files, I highly recommend that you upgrade to these.
I deleted some things that were partially deleted, removed references in *.rgu and initflashfiles.dat to files that are missing. I corrected some rgu/reg files that were missing the trailing CRLF. I removed many *.provxml that did nothing. I cleaned up the *.rgu, *.reg so that they are easier to read and contain no delete entries ([-HKEY_...]).
Here is the link
BTW, I spoke with TPC about my findings and asked his permission before releasing this. He let me know that he doesn't personally use the files anymore since he uses a newer device and that he compiled these files when he was still learning to cook.
Downloading Now! Thanks selyb
Can't extract
Don't know where the problem is, but I can't extract files from your archives (tried winrar and 7zip), gets an error telling me its an "unsupported compression method". Anyone else with this problem?
Edit:
I'm stupid! Says in your post that I must use the newest 7zip BETA. Get it.
Good job! Stole some for use in my pure kitchen. Started out on TPC's kitchen and learned a lot by fixing the files as needed.
I'm just happy that someone else could get some use out of all the work I've done on them. If anyone finds anything wrong or has any advice/complaints please don't hesitate to post.
selyb said:
I'm just happy that someone else could get some use out of all the work I've done on them. If anyone finds anything wrong or has any advice/complaints please don't hesitate to post.
Click to expand...
Click to collapse
Nice one Sir. I noticed that most of the packages were incompatible with the newer builds. I have an idea for you tho:- Why dont you start your new thread like Ultimate packages- Collect Packages and fix em up and release them so that chef's dont waste time they just download and cook like users download and flash Nice eh think about it. LOL! - Nice once again I am downloading right now...
What I was really aiming for by releasing these files is to give people the same thing they had before but make it much easier to remove each element and to point out what had not been done or what had been done incompletely with these files in the first place.
I had thought about doing exactly what you suggested but tossed the idea because I believe there is no such thing as 'one size fits all' with these roms. Every use has different needs and no matter what you cook in or leave out, some users want more cooked in and others want more left out. I feel the same way about these base files.
I know very well that newer versions of many of these packages exist and one reason for this release was to make it easier for people to replace the packages with newer ones.
man, this is awesome! everything's organized just like when u dump a stock rom from the newer devices, no more apps hidden in the oemapps or oemdrivers etc...
Thank you sir
I have begun dissecting the OEM from the latest stock ATT rom and 21055 SYS/XIP. This takes all my spare time (something I don't have much of lately ) but when I release the entire kitchen I plan to update what packages I can. I will use TPC's files as a reference because people seem to like them. I am a minimalist and as such, I don't like most of the crap that people add to their public roms so I doubt it will be an Ultimate package collection. Anyway, it may take me days, maybe even weeks before I can release it.
The files I already released took me more than a month and I still am not satisfied with them. :-/

Launcher/Navbar, dock Whatever you call it

I've been rooted for about 3 months. I like flashing and changing what I can to try and get the most out of my phone. My issue is this. Many of the new roms have the updated launcher which is all good but the new navbar is so big and goofy looking compared to the old one (of course in my opinion) is there a way to make a flashable zip of the old 3 "button", grey navbar? Or do I just have to get used to the new one. Can post pics if I'm being unclear
Just wondering if I'm the only one who feels this way about the newer launchers?
Diesel321 said:
I've been rooted for about 3 months. I like flashing and changing what I can to try and get the most out of my phone. My issue is this. Many of the new roms have the updated launcher which is all good but the new navbar is so big and goofy looking compared to the old one (of course in my opinion) is there a way to make a flashable zip of the old 3 "button", grey navbar? Or do I just have to get used to the new one. Can post pics if I'm being unclear
Click to expand...
Click to collapse
The uot kitchen might have what you need?
thanks i just havent had time to go look and see if i can cook that myself... There wouldnt be some good books i could pick up to learn about doing my own dev work would there? Ive got ideas but not any know how on how to get them past the idea phase Thanks
No luck in the kitchen. i dont know why i dislie it so much but it really does keep me from using alot of roms
You would need to edit the 9.PNG files in framework-res.apk. this can be done with the kitchen and other tools running in the proper linux environment.
Please elaborate. Still somewhat of a noob. Thank you though
I looked all over the kitchens sight for a way to contact the people who run it to ask them but I couldn't find it. BUT I was playing Dead Island at the time so my attention was divided. Zombies with guns. What the hell?
Here is a method that may work with just using the kitchen. First you want to take an old 2.1 Rom and make a working folder in kitchen. Then take whatever Rom you are going to use and create a working folder for that one as well. It will ask if you want to back up your other working folder, select yes. You should end up with 2 working folders. What you could do is take the 9.PNG files out of the sense 2.1 rom. They are in system/framework/framework-res.apk. you will have to extract the folder then open the same folder in the Rom you want to use and extract that as well. See what the names of the matching files are and change the name of the 2.1 files to match the files in the Rom you want to use. Once you do that replace them with the 2.1 files. Compress the folder and rename the .zip to .apk. After that proceed with step 99 to build Rom and flash. If it does not work then you will have to use apk manager, which you will have to study up on because it requires a lot more dependancies than the kitchen does. I recommend installing ubuntu to do all this in. I have never swapped 9.PNG files so I am not sure if it will work. This does work with normal .PNG files though. So it is worth a shot.
WOW that sounds complicated. But being as curios and eager to learn as i am i will give it a shot. I assume you mean installijng ubuntu on my netbook so ill figure that out throug google or something, ill try to find some lit on this subject before trying so i can read up on it Thank you so much for your help. None of my friends that i personally know are into this so the only people that i can talk to about it is online friends. Its always easier having someone next to you versus trying to message and post back and forth, Thanks though your the ****
Just swapping .9 will work as long as the dementions are the same. If the themer changed them you will bootloop.
Here is some advice. Grab your favorite theme zip and unzip it with 7zip. Then unzip the apks and look around to get comfortable with the folder layout and image names. The hit up the apk multitool thread and read up on it. Except for the sdk and Java it is all in there. Everything a Modders needs short of the kitchen.
So by what Zelendel says, I don't need to use the kitchen and ubuntu??? It's really complicated to install and I've o.ly got Windows 7 starter on my netbook.
You guys are awesome though. I really appreciate all the help
http://theunlockr.com/2010/03/26/ho...om-for-android-part-1-setting-up-the-kitchen/
Hey buddie I might to late on this one but just in case lol
HTC Inspire
Thanks man I will use that video. I watched the beginning earlier to check out the ubuntu install. Thanks man
Ok I had to go to HTC.com before posting to double check but I just looked at all the new phones and they all have the navbar that I'm trying to keep around. So my question is where did the one that is in all the newer ROMs cone from? I had initially though HTC changed it AMD that's why we were seeing them on all the Roms we love to flash but if the new phones don't have it why does is end up even on a port from another phone that "completely stock, out of the box" have the smaller navbar that I seem to like so much.
Anywho I finally go ubuntu installed in my Virtual Box so I've got to wait till I get off work today to start playing with it. Hope it works. Thank you everyone for the advice and help. I will let you know how it works out. I'm sure it won't be that easy and ill have more questions though. THANKS
They are from unofficial releases that devs got their hands on.
I may be in over my head a nit but I'm still going to try. In ubuntu every time I shut the machine down instead of saving the current state when I open it again it tells me to upgrade the BIOS. I can't find any info on that particular problem. I'm also having issues with the java install. I install it and it seems to go just fine but when I try to verify it says command not found.

Development question

Hi,
I am slowly getting through the basics of apk decompiling, Editing, Debugging & recompiling.
Using tools like Apk Tool, Winrar, Notepad++ Winmerge, Adb .
First time I have touched an android or even done any kind of stuff like this was Early August 2012. So not long at all, Someone might even remember I asked what should I do with my phone after I root it,, haha previous Iphone user.Thank God I changed! I have definately seen the light! Anyways now i have a question to the more experienced Devs. Eg; Lets just say I dont want increasing ringtone How do you pin point where in the apk to start editing i mean there are heaps of files its like looking for a needle in a haystack. One way I came close and pin pointed it is using a previous made mod and then used Winmerge to compare the differences, Problem is the differences in these to Apks is not just the Increasing ringtone, so when I winmerged them it picked out out the other differences Now this deffinatley narrowed it down. I have a feeling it has something to do with the Callnotifier.xml is this the only Xml?
Also Lets just say you dont have another apk to compare it to , how to you find out this stuff..
Another thing is I want to cook up a rom, but the way I want to do it is modding my own rom untill I am happy with it and then creating something like a nandroid without my personal data. then making it flashable for people. What tools is best used for this? I was thinking editing my nandroid and adding it to a cwm flash. but I think there is an easier way.
PS: You can have a look at my signature for my current device i am using
Thanks for you help

Categories

Resources