want to learn to be a dev...

traumahawk

Well-known member
Jan 12, 2011
303
19
0
alright- i have the whole root/flash/rom thing down. i can take code and zips from other people and put them on my phone no problem. i can fix glitches when i screw up my phone from doing too much to it no problem. next logical step- learn to make those zips and roms TO flash.

how can i learn? where can i learn? i dont even know what language android is written in (java i think?). i know ZERO code language, well not zero... VERY BASIC html... other than that, ya. nothing. but i am willing to learn. i want to learn. i want to be a dev. please send me to the resources i need to learn to become a real contributing member of this site.
 
Its all trial and error my friend. That is how I have learned to this point, and I am thankful to Ragnarokx which showed me many of the tricks and things I know which he obtained by the same procedure.. Trial and error..

Best thing to do is grab a copy of the deodexed stock Froyo EB13 ROM and then a custom ROM of your choice and start comparing the differences in the files and learning what things are and what they do.

As far as coding, there are many different file types that they are written and used. Some are Java some are similar to HTML and then you have your basic Android SDK language.

BTW, thats quite a unique mix.. ACE ROM, TER's Mini Theme.. (I like that.. )

I would also suggest grabbing a copy of Root Explorer from the Market if your serious, its a ROM dev or addicted ROM flashers best friend for exploring and accessing root level files on your device.
 
how do i compare... just extract the zips and read everything in like notepad or something? i am very serious about learning. Between you and Rag i have become quite the addicted flasher... and would really love to be able to not only develop my own 100% custom ui... but to be able to maybe develop roms/addons/themes that i could share with the world.
 
And i kept the mini theme for 3 features- the black notification bar, the transparent notification window, and the cool looking dialer pad. i honestly dont know what else that theme changes. and i know youve made a flash that does 2 of those 3 things without TER. i like the dialer tho >.<
 
okay.. so ive spent like an hour trying to figure out how to open/compare those files... and i cant figure out what to do. i extract the zip. get the tar. extract that. get the .rfs. then i cant do anything with those. i have a week off college. only work 2 days a week. meaning i have a week to learn.. i wanna cram it in lol
 
You can actually do a lot without having coding knowledge. What operating system do you use? Windows, OSX, Linux?
 
  • Like
Reactions: traumahawk
My laptop is running vista. I have a desktop that windows is bugged on and would be wiling to install linux or something else on. And I can always set up a virtual machine (well, have my fiancees father do that part lol,but I could get one) running whatever OS I want on my laptop.

Sent from my Epic using Tapatalk
 
Yes Ragnarokx is correct on his comment. There has been many ROM devs that don't know much of the actual "coding" that takes place, its more the proper use of the proper mods. Placing the right mods and changes in the right combination can make you a successful ROM. My personal coding knowledge is limited, I'm learning and understanding more as I go. I taught myself with help from a few threads how to modify the framework-res.apk and other apks to doing some theme changes and some minor xml coding. Its something I do give alot of credit to those who fully understand the real meaning behind all the coding. After a while you do start to learn how to change things and follow the commands around and what they do.

For theming and modifiying of .apks you need "APK Manager 4.9" is the latest version. You can Google that and get the proper link from XDA. There are some threads around that will give you some brief instruction on some of the basic codes to change a few things here and there.

I do support you for wanting to learn. Its a good thing. I will make an example of myself, I started complete noob back in late November. It took me well over a month to understand what was going on to help others and provide solid advice without having to chase down answers. Now 2 or 3 months later I am comfortable enough after helping Ragnarokx on TER and learning much from that experience I decided to give my own ROM a try. I have been fortunate to this point my gamble has paid off. Also keep in mind part of being a good dev is also really understanding the "whole picture". ClockWorkMod, the ins and out of it. Odin, OneCickRoot. You really need to know these things well to provide solid user support when doing your own ROM because as you can see from the threads on any ROM that you will get asked from the simple to the strange out of this world questions about everything. I still end up running to Google every now and then for answers and some things I will admit I can't answer because I just don't know or haven't run the applications that people have trouble using.

Keep a positive attitude and plan on spending lots of hours researching and learning as much as you can because it will all come into play.
 
Last edited:
  • Like
Reactions: traumahawk
My laptop is running vista. I have a desktop that windows is bugged on and would be wiling to install linux or something else on. And I can always set up a virtual machine (well, have my fiancees father do that part lol,but I could get one) running whatever OS I want on my laptop.

Sent from my Epic using Tapatalk

Windows is fine for now - you only really need Linux if you get into making your own custom kernels, which is a whole different skill level.

I would start out by downloading a copy of your favorite custom ROM. Unzip it onto your desktop and poke around a little. I'll give you a quick tour of the important stuff.

The file "zImage" is the kernel, and can be found in a folder usually named "kernel_update" or simply "kernel". To switch kernels, simply change the "zImage" file.

If you follow the path "/system/app" you'll find all the stock and otherwise uninstallable apps.

In "/system/framework" you'll find the files that control the ROM's theme elements.

In "/META-INF/com/google/android" you'll find a file called "updater-script", which controls how the Clockwork .zip file is flashed. Note: if you want to edit this file (or any text file) DO NOT use regular Notepad as it will include formatting and other things that will give Clockwork errors. Use Notepad++ or a similar UNIX editor.

The best way to learn is by doing. Download some random mods, like ones from ACE ROM or XDA. Unzip them, look at what files they contain and the folders that those files are in. You can transplant files from mods like these into a full ROM to start customizing.

Once you make a few changes to the ROM, use an application like 7zip to re-zip the ROM with no compression. Place on SD card, go to Clockwork and flash away.

If you run into any problems or have further questions, post them here.
 
Last edited:
See why I learned so much from Ragnarokx ! He has a very simple but informative way of explaining things.. LOL.. First thing I noticed about him.
 
  • Like
Reactions: traumahawk
trying to view those .xml files in /framework. only problem is every xml viewer ive tried has failed to open it. latest one says "an invalid character was found in text content"... huh? (the only way i know to explore those jar files is to extract them. i dont know how to put them back together in a usable format but ill figure that out eventually. right now i just wanna learn what im looking at).
 
my goal- eventually make a rom with feel similar to TER or ACE... preferably on whatever best OS available that Epic (or whatever phone I'm on at that time) is capable of running well. Kernel like genocide included. no bloat ware. themed somewhere between TER minitheme and Emotionless Beast. some kinda autokill feature that shuts pretty much EVERYTHING off when screen is locked. no ciq. custom ani's. different default programs (like dolphin HD included instead of stock browser, etc etc).custom fonts (and ability to choose fonts without having to flash every time).

ive got a long ways to go. but someday.

right now i just want to figure out how to make sense of these .jar files and figure which /framework files i can open in np++ and which are xml and why my xml readers arent working. (ftr- roms i'm trying to open and work with- ACE, cyanogen. midNIGHT. cant get any to open xml properly)
 
so i figured that the xml is apparently encoded wrong (?)... i get what you see below when i open in np++ instead of xml viewer

 
I'm actually glad I came across this thread. I'm not one to ask for to much all the time. I usually just wait for the devs to come out with stuff. Often times I find myself asking, "hmm... it sure would be nice if this feature was included, or if the animation from theme x was the same as in theme y, even though I like theme y better."

Looks like I've got some reading to do. Thanks guys!

Sent from my Epic 4G
 
@ don... i found a lot of cool stuff on youtube too. showing how to mod themes and roms you download that you want little tweaks made to. no coding knowledge needed. between that and the stuff paul and rag linked/discussed its a great place to start (and a google search on "create custom android rom" or "theme" or similar search query yielded a lot of readable and helpful stuff)

but personally i want to get more involved in it than that... but its a great place to start. and i'm going to start with a copy of my new favorite rom (ACE, thanks Paul!...sorry Rag.. TER was amazing on dk28, but i couldnt resist going to eb13. ya'll are both awesome tho!) and try to make some little tweaks to it that I would like to see in a rom/theme and we'll see how it goes! if i brick my phone i'll be on here complaining about it while i use odin to make it right again haha.
 
and HOW can i open those xml files to read them properly? nothing i have used works yet. it all is gibberish that says theres bad text files. idk what to do! i want to read and compare.. whatever it is im supposd to be looking at. but thats what i get when i try to open stuff! lol
 
and that post on how to theme.... the template it shows to download is from di18. half the links in it to download stuff it says you need... dead. is there any more reliable/newer place to go? i have spent a loot of time on the web looking. stuff i thought i had really isnt any good. nothing more than i already knew.
 
so i figured that the xml is apparently encoded wrong (?)... i get what you see below when i open in np++ instead of xml viewer


The XML from this screen shot is from an APK that is compiled. You would have to use, APK Manager 4.9 to decompile the APK then you would be able to read/modify the XML's and other files in Notepad ++. Once finished you would have to re compile the APK again for it to be used/recognized by your device. .jar files and smali files are way out of my game at this point, I have no knowledge of them yet... I've viewed them and looked around but not done any changes/mods to jar or smali files.

Its a tricky part of the game your stepping into there, something I'm involved in and learning day by day...

Keep at it! You will get it...
 
  • Like
Reactions: traumahawk
hmm. well it'll be worth it. and interesting i think. i just gotta get that guy/gal who posted the theming guide to fix the links that are broken that go to supposedly required tools lol. >.<