Rom Development / Modding How to get started? - Samsung Galaxy Nexus

Hey everybody,
I recently bought the galaxy nexus because I wanted to start getting into Rom Development.
I can programm Java and also programmed some simple apps..
But what I really wanted to do is to modify a Rom.
Can anybody tell me where to start? I read guides on how to compile from source and so on, but I don't know if that's what I need.
I want to add things like Notification bar quick settings to the rom.. Are there tutorials on how to develop these things?
Every help is appreciated, maybe you've got some great links for me, thanks!

00hero00 said:
Hey everybody,
I recently bought the galaxy nexus because I wanted to start getting into Rom Development.
I can programm Java and also programmed some simple apps..
But what I really wanted to do is to modify a Rom.
Can anybody tell me where to start? I read guides on how to compile from source and so on, but I don't know if that's what I need.
I want to add things like Notification bar quick settings to the rom.. Are there tutorials on how to develop these things?
Every help is appreciated, maybe you've got some great links for me, thanks!
Click to expand...
Click to collapse
start with decompiling apks (SystemUI.apk and framework-res.apk for example) , if u've wrote android apps before (and u said u did), then it shouldn't be that hard to look into the .xml and .jar files. when u finish, compile the .apk back. if u've worked with Eclipse then u probably know the android structure.
Edit: Here is an example of a "ROM modification" - just posting it to give u an example..

Well first thing is first. You need to have the bare basics of Android thoroughly understood obviously. Often overlooked as a first step in this process, just learning about(different than knowing about)the Android Open Source Project first will give you a specific sense of direction, purpose, as well as an identity in the community..
So again- I don't just mean knowing about it- I mean knowing exactlyhow the whole project is structured. Read about all the different types of contributions you/anyone can make to the Android ecosystem. Are you an aesthetics kind of person who would excel at UI designs for apps or whatever; Are you a person who has a good eye for problem solving? Maybe you should be scouring source code, trying to fix little-noticed "bugs" that "bug" the hell out of you. Once you know what you want to do, make sure you find out exactly how much Google provides for you, and what your own roles/responsibilities would be in the whole scheme of things.) This should give you a good idea of where you might fit in (with your current skill-set)and hopefully, it gives you some inspiration about the direction you might want to take it in the future.
Once you do this and "find your calling", post back here, and I'm sure that others qualified in that field will be more than happy to share how they got started.
There is no substitute to just jumping in and trying things though. Everybody makes their own journey differently, so do what comes naturally, and you can't go wrong.

Here ya go
http://forum.xda-developers.com/showthread.php?t=1661770
and maybe this as well?
http://www.xda-developers.com/andro...rs/ShsH+(xda-developers)&utm_content=FaceBook

Wow thank you every body for these great comments! I think I'll compile a Rom from source first and look through all the files..
Decompiling apks looks interesting too.
Thanks for the fast responses & links, you're awesome!

Okay so I've got another question..
One thing I always liked on some custom roms was the lockscreen flashlight..
If I would hold power for 3 seconds, the flashlight would turn on until I let go the power button.
I decompiled the framework-res.apk but didn't find anything there, just .xml files.
Where are the files where I can actually code / programm something for the lockscreen?

Try android.policy.jar
Usually the jar files contain the code, xml are for visual stuff.
But my question is, are u sure it is a lockscreen feature? (I mean the torch option) . Tbh this is the first time i hear of such a mod and i've been using android devices for over 2 yrs
Sent from my Galaxy Nexus using xda premium

Related

Why havent we just made an app that is a copycat of AOSP dialer/contacts?

In another attempt of having a stable phone, with the AOSP dialer/contacts/messaging...
I know we have a few [stable, but sorta not stable] roms that are AOSP related,
I understand so much code can/cant be transfered from Sense into making an AOSP Rom, and I understand that. im an older C+ / VB programmer, and understand trying to make something out of decompiled code is a *****, so ...
instead of trying to make a rom that is all converted over,
why hasn't anyone, in the time of Hero/Sense, all the way till now,
hasent anyone just made an app that is coded/looks just like the regular
AOSP Dialer/contact/messaging stuff?
Not to completely replace our phones dialer and what not, but still id end up clicking this "made up" app before I would click my regular dialer icon..
I mean, there are plenty of apps that read our call logs, contacts list
stock dialer/contacts dont look too complicated, is it the layout that would be hard?
Are there any developers that read this? Can anyone lead me in the right direction? Like, list of APIs/whatever type of stuff that is called from in Android coding? Im no stranger to code, but i know nothing about android coding / java.
But again, can anyone send me the right direction? I understand get the Android SDK emulator and what not, but i dont feel like following slow moving tutorials for hello world widgets.
Ill be more than happy to do this day and night, to get desired results.
I dont think im asking too much, and I could make this a way longer explanation.
Thanks again to anyone / everyone thats willing to help, or that is interested.
Really? No one?
Just shed some light for me, come onn
why not extract some .apk's from a working ROM that has the aosp elements and putting them into another ROM you want to transfer them from? i dunno thats where i would start before trying to copy whats already created basically.
Can't you just push the mms.apk and contacts.apk from aosp via adb? I coulda sworn it worked on my hero

[Q] Tips on creating a ROM

well, i decided im going to try and make a rom, and since im a beginner, i need tips and advice on how to. is there anything important i need to know? where do i begin? any info from any developers are welcome, and please. no flaming
only one bump, i promise
yea i've wanted to im have asked a couple people and the best advice i got was to
1.)download the android sdk from google
2.)download some roms or themes and to look in them and see what files are in there basically learn the files that make a rom or a theme.
3.)download a image manipulation (Photoshop, Gimp) these are the best i recommend Gimp its free!!!!
4.) WinRAR this you will have to buy or get the trial verison some computers come with this installed.
that about it thats as far i got.
Download 7zip because its the easiest to use (on windows, ubuntu has it built in.
Know the basic drivers and functions
DONT GET UPSET IF YOUR BUILD FAILS (easier said then done..i know, i made some RoMs in my day)
Know what you want- you should always know what you want before thinking about touching a ROM. If you like DE-Sensed, then know what parts to de-sense.
Know what the apps do- some apps are nonsense (like city ID, footprints, etc) and some apps make the phone usable (like a launcher), so never delete a main app off the phone without replacing it with a similar app (if i deleted sense launcher and replaced with launcher pro).
Push yourself to do more- if you ge t bored with making DE-sensed roms, try to build from source. I can always help you with that, as i have written up a giude on it and have done it many times.
and the number 1 rule:
LOVE YOUR WORK!
thanks for the info guys, this is really gonna help!
TheWizKid95 said:
thanks for the info guys, this is really gonna help!
Click to expand...
Click to collapse
Your welcome...if you need any help, I'm always on xda or twitter
Sent from my Incredible using XDA App

[Q][DEV] What are you using to make the roms? [Software or whatnots]

I was curious to what you the Developers of the awesome stuff we have for the Epic are using? Are you using the SDK tools we get from Google to make new things? Or are you using some other stuff? I kind of want to make some stuff but I don't know how?
Can you tell me what you used or are using to get where you are now? How do you do it? Can you tell me where or something?
Anything would be helpful.
And please no random "I want to know this too" or arguing to whats better? That would be saved for another post/thread. I do apologize if this is a repeat thread. I didn't see it on the front. I think this should be though.
I'm not at my computer at home right now, I'll update it later all of the apk tools.
1) Version control - I use subversion
2) Diff tool - I use beyond compare
3) Zip tool - I use 7zip
4) Issue tracking - I use Google code
5) Text editor - gVIM
6) Graphics - Photoshop CS5
I am curious as well.
Plapczyn, do you know of any tutorials on developing ROMs for the Epic? Does it require a lot of coding?
Source.google.com
Read it follow instructions to get and compile code. That lets you build a rom from source code where you can alter the os. The only source code that is released for the Epic is 2.1 As of now. If you have specific problems with doing any thing in their directions pm me.
Sent from my SPH-D700 using Tapatalk
ryno502 said:
I am curious as well.
Plapczyn, do you know of any tutorials on developing ROMs for the Epic? Does it require a lot of coding?
Click to expand...
Click to collapse
There are lots and lots and lots of tutorials. Google is your friend.
It doesn't require much coding, but you can do plenty of coding if you want.
Will check it out, thanks.
I was just curious because I am not much of a programmer. XHTML, CSS, and Basic PHP is about my limit lol.
These might help...
http://forum.xda-developers.com/showthread.php?t=667298
ryno502 said:
I am curious as well.
Plapczyn, do you know of any tutorials on developing ROMs for the Epic? Does it require a lot of coding?
Click to expand...
Click to collapse
If you want to make roms, check out the Chef Central forum here on XDA. There are threads with a lot of info on how to do things. Also, you should check out what is going on the other Galaxy S forums. If you want to do dev stuff, you first need to figure out what you want to do, and then go from there. Making a rom (actually any development really, agnostic of device or system), is more about making and pulling in small incremental changes and testing them.
That's the best advice I can give you...is to always break things down into small incremental changes that can be tested in between. Use source control and CHECK IN your changes. This goes for simply swapping out pngs in apks, or doing kernel mods. That way, you always know where your latest working copy is and you what changes caused your system to break...which it inevitably will. Nobody codes things correctly the first time every time. We all have the urge to just make a whole bunch of changes at once and see if it works. The thought is that we don't have enough time to test everything in between. Trust me, you will spent 5 times more time fixing bugs by doing it this way, over just doing it right the first time.
thats good advice plapczyn, thank you. I will evaluate what I want to do and go from there. my #1 priority is app developement, to better my resume and help with my career, but I am interested is possibly experimenting in ROMs too.

[Q] Adding phone functionality to "inactive phone rom"

Hey everyone, I have a couple of questions. First off as you can see from my post count I'm a lurker. I can remove/install ROMs, the basics, but never have I tried to add/remove apps or functions to one. So I've found a ROM I love, but it was designed with inactive phones in mind, to make them into second life usable music/video players. It has no phone functionality because of this. The one I'm interested in is by frickinjerms - Ubersonic - I hope I can modify others work for my personal use. Guess that should be a question too.
Would it be ok to add in phone functionality or would it be easier to find one with that already and just remove the fluff I don't want and add what I do?
As I understand it, I can just add it back in, but I'm unsure what files go back in. Is there a resource that outlines that anywhere, or can anyone throw me a bone?
Is it ok to modify the work of others for your personal use without asking, or should you seek approval first out of proper etiquette?
I've been searching through XDA and other sites looking for some basic beginners stuff for cooking up ROMs, but have only come across limited collections. I'm toying with dsixda's Android Kitchen right now, but would love to find other resources. So any pointers to learning resources would be great too.
Thanks!
For the last one, I personally believe that its not necessary to ask before modifying a rom thats for your personal use because only you will know about it anyway, and people do it all the time
You only need to ask for permission if you're reposting your personal version of someone elses rom
Sent from my PG06100
CNexus said:
For the last one, I personally believe that its not necessary to ask before modifying a rom thats for your personal use because only you will know about it anyway, and people do it all the time
You only need to ask for permission if you're reposting your personal version of someone elses rom
Sent from my PG06100
Click to expand...
Click to collapse
I figured that was likely the case I just wanted to clarify it for myself. I know people put in a lot of work on some of their ROMs and don't want to step on toes.
Thanks for the response.
You know you could use a rom that does have phone functionality. Just throwing that out there.
PlatinumPenguin said:
You know you could use a rom that does have phone functionality. Just throwing that out there.
Click to expand...
Click to collapse
Whats the point of flavors if you're forced to pick the one you don't like? Just throwing that out there.
I don't think my questions were unreasonable either. I'm not asking for someone to build me something, I'm asking for the fishing pole, not the fish.

New to modifying files, so need some assistance and advice

I will start off saying I am new to this as the title , so I will probably ask a lot of redundant questions and noobie questions, I hope that's ok.
What I want to do (for now):
I am attempting to do is modify the systemui.apk file. I would think that would be a fairly easy task, but with my VERY limited knowlege of things I'm not sure.
The file has a lot of icons for customizability, but I want to add some of my own, or rather this phones icons(samung epic 4g) default icons. I have the icons I grabbed from a stock rom, and saved them.
I have the toggles, and battery icons, which are what I want to add into the systemui.apk. Iwill probably call it something like Samsung default, since default name is already taken.
So all that said, how easy would it be for me, someone who has never even attempted this before, but has a small amount of knowledge of what stuff is, ie: difference between odex and deodex, where the files are located at, etc?
Stuff like what file/files to edit, what to put in the xml files as in what line coding or whatever they call it. Stuff like that.
I'm very simple in nature, so if there is a way to do what I want to do, please direct me in the right direction, and please, keep it simple if possible.
I do realize there are tutorials about how to theme and how to make or edit a systemui file but I can't seem to find a more specific way/thread to do what I want to do, not that I have found anyways.
My guess is I will have to edit some xml files and add some lines, I just an not sure what exactly to put in those lines, or what files to edit.
First of all: wrong section - this belongs to Q&A.
About modifying APKs, I'm also not much familiar, but I believe that apktool and those GUI tools that includes it can be fairly helpful. I personally use APKChanger to do all my APK-related mods.
Sent from Google Nexus 4 @ CM11
AndyYan said:
First of all: wrong section - this belongs to Q&A.
About modifying APKs, I'm also not much familiar, but I believe that apktool and those GUI tools that includes it can be fairly helpful. I personally use APKChanger to do all my APK-related mods.
Sent from Google Nexus 4 @ CM11
Click to expand...
Click to collapse
Awesome it looks like a good start, I will give it a go, and report back.
Hope this works, as I am not really doing much to the systemUI file, all I am doing is adding in, what's not there, so the rest can stay in tact, just I want to add some preferred icons/png files I have on hand already. I'm not diescting to make a rom or anything, so I can't see this as being really hard thing to do.....for those that have done it could probably do this in about 5 mins work without breaking a sweat....me however it seems it's takeing awhile lol.
easyrider77 said:
Awesome it looks like a good start, I will give it a go, and report back.
Hope this works, as I am not really doing much to the systemUI file, all I am doing is adding in, what's not there, so the rest can stay in tact, just I want to add some preferred icons/png files I have on hand already. I'm not diescting to make a rom or anything, so I can't see this as being really hard thing to do.....for those that have done it could probably do this in about 5 mins work without breaking a sweat....me however it seems it's takeing awhile lol.
Click to expand...
Click to collapse
Very cool program, thanyou for the info. I kinda messed around with it a bit, and it's vvery nice for those not so smart at heart people like me.
I still have a snag though. I know where the icons are, I'm just not sure how to activate them via the like settings and such.
Take the battery mod within 3mini for example, you open 3minit, and under the battery part it you select it and it has a bunch of icons you can pick, but the stock ones aren't there. I am wanting to add stock icons, which are in the res/label-dhpi folder, (I think that's what it's called), but it's the folder that has the icons in it. Now, to access those icons, you have xml file you have to point to to tell it to actually see the icons in said folder, via a code line as I call it.
There is my problem, I am not sure really WHAT code line to put in said xml file/files, so I'm running into a wall.
So I can extract/decompile the apk file fine, and I have a folder/files with some more folders and files under that. I have looked at the stuff but since I'm not a programmer at all, and not to get off on another rabit trail here, but I cannot even do simple plain html....yes I know it's a text thing, but if you don't understand the if's and waits and the language of it all, well it might as well be german.
People always say "what's the problem, it's easy" well I suppose it is, if you are savvy to that stuff, but for those that have a hard time with one thing, it comes oh so simple for another, but it doesn't mean someone is stupid, it just means it's not their thing. Some atre meant to be some things, some are not. Not everyone is meant to be a doctor, yet some are because they understand those sorts of things better.
Anyways, I am sorry for trailing off, in short I am saying if you have a hard time with what I call coding, and yes it is a coding in some form, just as html is, even though it's still text, it's still a code that tells things what to do, IE: code
In short, I am nt sure what file/files to edit,. and even then I am not sure what lines to put in them.
Here http://forum.xda-developers.com/showthread.php?t=2032614 is a good example of what I mean. While I appreciate this persons hard work and efforts, people like me it may as well be written in a foreign language of sorts, because while I understand editing a certain file, and I get the concept of CODE: that's where I end up getting lost. I have opened the said xml file, and see the code, but when they say code, well I have to ask things like what line to I edit, where do I cut/paste the lines in that post to, do I delete another line and replace it with that code, etc..etc..
I in NO way am trying to trash people for their posts and efforts, so I hope it's not taken that way, I just sometimes have to be drawn a picture for things, like a child. As hard as I might try, I just am not grasping what to do after the point of opening the file and editing it.
I suppose I will just give up this quest I have for what I want to do, unless I fin somone kind enough, and patient enough to go a little further into explanation of what I need to do to further go on. it can be hard for some people, especially if you are a programmer to explain a little more in depth about what a person needs to do, I have friends that have that mind set, and they to get irritated at people like me .....I guess it is what it is.
Thanks again for the info, I appreciate all that xda and the people here do, and all thier time and effort towards the mods.
Well I can't provide further help then... My ability stops at making navigation bar mods which only involves modifying 5 lines of xml. Good luck with learning from scratch :beer:
Sent from Google Nexus 4 @ CM11

Categories

Resources