Related
I wonder how the proper way to cook a ROM is. I have fooled a little around with some ROMs by adding some files, removing some, editing a file here and there. Packed it, and signed it.
But is this the way to cook a ROM?
I really like to hear how its supposed do be done. Right down to the kernel..
Or maybe just point me in a direction.
I really wouldn't mind a couple pointers in the right direction as well.
I installed an Ubuntu VM today and I'm getting the Android SDK up and running.
At this point, I have no idea what to do next, but I'm stubborn so I'll keep trying.
Thanks for any help that any one can provide.
a few links realated to the issue:
http://source.android.com/download
http://www.cianer.com/androidg1/28-building-android-kernel-images
i'm starting to mess around with things, i think i'm close in creating ROM from the cupcake branch
I also need to read more on the issue from someone that already created one
Thx
Probably the thing I miss most about my Wizard is this. The guys making roms are doing a wonderful job, but not everyone has the same needs; sure there's a lot of different roms out there, but I just rather do these things myself. That said, I personally haven't really tried to hard to get info on the subject and I'm sure there's plenty of it around if I care to look. Maybe I'm just spoiled from my wizard days with the guides and the kitchens and stuff.
I'll do some reading courtesy of dmanbuhnik @ some point; not now though.... regretfully I gotta wake up early....on a saturday.... the single most hateful thing that can happen to me in a week.
I agree we need a HOW to guide on custom ROM's.
Little off topic but is there any way to optimize the 32B Kernel for a smaller footprint and speed. Possibly remove some features. With the small memory size on it we need to cut the fat where it matters.
you need to create the kernel from scratch in order to get an optimize one for your needs
i know that you can play around with the .config file to decide which features you want in or out
but as a said - i'm only at the begining of the process i rather hear it from someone with real experience on the issue
Why are there a lack of N1 themes. I thought there would be more. Can someone let me know where a good place to grab some themes. either metamorph or flashing. looks like the G1 still has the best themes can these be easily ported to N1? can other phone MM themes be used on the N1. help need more options.
Why don't you work on creating some? Better yet, you could mock the people that do work hard making them with threads like these.
The lower resolution themes can be ported, just would take resizing every image. Themes for the Droid can be easily ported over since the images are the same size.
david1171 said:
Why don't you work on creating some? Better yet, you could mock the people that do work hard making them with threads like these.
The lower resolution themes can be ported, just would take resizing every image. Themes for the Droid can be easily ported over since the images are the same size.
Click to expand...
Click to collapse
This. Period.
Don't say "I don't know how" because at one time, David1171, Jairomeo, Formel or myself didn't know how either. But we figured it out. (there are many more themers, those were just a few that came to mind quickly) There are many many posts throughout xda that give a ton of good information. Get that search button working and get busy.
To put it simply, **** or get off the pot.
Wow... you two should probably calm down. The guy wasn't being rude, obviously he was more or less surprised by the fact that there really aren't a ton of themes available for the N1, which is true. This is the problem with XDA, people are always ready to attack other members. How about you guys just worry about yourselves instead of others, and don't assume that just reading tips and how to's will automatically mean people will be able to do something. We need to encourage each other not be smart asses.
@ ced8525 The reason for the lack of themes in my opinion is the user base of the N1 is significantly smaller while the G1/MT3G/Droid. For that reason alone, there is going to be less themes and it also depends on which phones our wonderful themers have.
wicked_beav said:
Wow... you two should probably calm down. The guy wasn't being rude, obviously he was more or less surprised by the fact that there really aren't a ton of themes available for the N1, which is true. This is the problem with XDA, people are always ready to attack other members. How about you guys just worry about yourselves instead of others, and don't assume that just reading tips and how to's will automatically mean people will be able to do something. We need to encourage each other not be smart asses.
@ ced8525 The reason for the lack of themes in my opinion is the user base of the N1 is significantly smaller while the G1/MT3G/Droid. For that reason alone, there is going to be less themes and it also depends on which phones our wonderful themers have.
Click to expand...
Click to collapse
Good post!
Well, it is so:
Making a theme is not done in 5 Minutes. If you go to work, has an own home, two children and a wife you don't have too much time.
As hard as it sounds:
The day already has only 24 hours.
I did my "themes" at first for me. I want to have my phone so, as I like it.
Then I decide to share it. I like it, when I look into this Forum and somebody pat me on the back.
This is great and the factor, why I share that.
I have spent many hours in the www and got to know nice people.
The Nexus is new. In most countries you cant buy a nexus.
I think, if the nexus is buyable an all countries, there will be more people how can change some icons and graphics.
;-)
At second:
Load you a few themes, change the graphics and try a bit. We love to see more people, who can do this.
Sorry, this post wasn't easy to me, because my native language is not english.
No need to calm down. I'm not the one whining there are no themes for the Nexus. Which is wrong. I look at the first 5 pages of this forum and I count about 15 themes/morphs. And thats only the first 5 pages. This phone has been out for 2 months and there are already 15 themes on the first 5 pages of the forum. If that's not good enough for someone, they can make their own. It's attitudes like that that make people NOT want to do anything.
Know-Fear said:
No need to calm down. I'm not the one whining there are no themes for the Nexus. Which is wrong. I look at the first 5 pages of this forum and I count about 15 themes/morphs. And thats only the first 5 pages. This phone has been out for 2 months and there are already 15 themes on the first 5 pages of the forum. If that's not good enough for someone, they can make their own. It's attitudes like that that make people NOT want to do anything.
Click to expand...
Click to collapse
I think your right the rate at which the themes are coming out is great and while there may not be enough for that person now there sure should be in a few months lol, I mean ow many themes can you use at 1 given time
I being new to Android (Long time Sony Ericsson user) have been searching around on how to create themes and iv found a few places but its not all straight forward information.
I dont mean to be to direct but could you (or another great theme creator) make a quick How To thread on themes, from making the 9png files and editing them etc
While i was using my old SE phone i learned alot, i started porting firmware patches and became a regular source in the forums for porting but now i want to get my hands stuck into doing themes but dont really now where to start
lolittle said:
I think your right the rate at which the themes are coming out is great and while there may not be enough for that person now there sure should be in a few months lol, I mean ow many themes can you use at 1 given time
I being new to Android (Long time Sony Ericsson user) have been searching around on how to create themes and iv found a few places but its not all straight forward information.
I dont mean to be to direct but could you (or another great theme creator) make a quick How To thread on themes, from making the 9png files and editing them etc
While i was using my old SE phone i learned alot, i started porting firmware patches and became a regular source in the forums for porting but now i want to get my hands stuck into doing themes but dont really now where to start
Click to expand...
Click to collapse
Those threads have already been made and remade. Look around in the Android Themes forum and the G1 Theme forum.
If you want to make a morph, I have already written up a pretty nice tutorial for that, located here
There is also a copy of the .9.png tutorial located over on www.nexus-nation.com (figured since I left Manup out of the themer list earlier I would give a shout to his website since he is one of the biggest and best themers)
As I am working my way through the public transportation circuit back to my dev chair, I have a chance to ask for help if someone(s) are interested in helping the doubleshot development effort at large.
Development in the open source community is about two main points:
1. Being driven by your curiosity to learn something new or make something do whatever it does differently or better.
2. Distributing the workload of what we want or need between multiple people - many hands make light work and if everyone contributes something small collectively it turns into a whole lot of progress and success.
So here's something that would help us all out immensely even though it seems like a small issue on the surface:
.nb0 and .nbh files - how to break them down and an explanation of how exactly they work.
What they are is a proprietary format used to wrap up some of the installer files within OTA and software updates we get from HTC for this device. (Other HTC devices too)
We also need to have or have links to the software we need to break them down with.
This information and how to use it will make a tremendous difference in how quickly and effectively we can assimilate and process our official software updates and continue to deliver both S-OFF and Root solutions when they are stripped from us on OTA pushes.
I'm making too much progress on other fronts and with other issues to stop and take care of this, and the very limited searching I've been willing to spare on this front has lead to dead ends and dead (mostly megaupload) links to what we would need.
Honestly, I've got a lot of dev work I've gotten myself involved in with this device and the progress I make doing other stuff is greater then putting more time into this, based on the project files I have in process. If I was just starting with helping out on doubleshot development this would be what I would be spending time on - just where I'm at I lose momentum focusing on this.
I get PM's from people asking for advice or direction on how to help out in addition to a scattering of threads around here started by people with lot's of enthusiasm but no direction, and I definitely understand! I've been and (believe it or not) continue to be in that very same position!
Sometimes all people need is a nudge in a direction, a path pointed out to them that they can explore and learn about - this is just such a signpost on the way to becoming the developer some of you out there want to be.
Development basically = knowledge + implementation, and the more you know the more creatively you can leverage it to your advantage. We certainly have some creative people who have passed through or are here now surprising us every day.
From the impressively out of nowhere CM7 port kornyone gifted us with in the past to the jaw-dropping brute-force ICS work tbalden blazed a trail into ( and sucked a few people into along the way ) all the way down to the work XMC has been steadily chipping away at building tools for us to use and wrap it all together with - we really have some talent, passion and a lot of success in our small but effective corner of the XDA forums.
...and those are only a few of the people who have made a lot happen around here, there are and certainly have been others who have either left a mark on development for this device or continue to do so.
Excited? I am! There's so much cool stuff to do and who cares if we never get an 'official' ICS update? We (collectively) are producing software the manufacturers/carriers wish they could produce in a fraction of the time it would take them to do so.
What some may not realize, though, is that it isn't this person or that person making it happen, but the collective efforts of us all together that enhance and compliment the individual strengths we all bring to the table separately.
...and it's all built on us sharing what we know and helping each other out. Maybe some out there, especially the more casual viewers or unregistered lurkers don't realize just how much we work together - where the larger sub-forums are more scattered and individualized just because of their population.
As an aspiring dev, this should make our little corner even more appealing because that leaves a lot more new ground to cover and gives everyone who jumps in that much more of an impact on what we have available.
Maybe in other places you're the fiftieth person to make some lockring or point something out, but over here just about anything you get into is new ground for us - so we are definitely excited about everything anyone has to offer, no matter how trivial it may seem to you.
As many of you have gathered by now I'm a bit long winded at times, but it's all so exciting!
So back to the original point, which was that if someone or a handful of someone's wanted to do something to help out, and push development for the device forward but wasn't sure what to do, figuring out how those .nb0 and .nbh files work and finding some software to crack them open with would be a big help in gaining and maintaining S-OFF and Root for this device.
.nb0 files especially, because they are something within the OTA that is a single file that impacts multiple partitions, and we really haven't gotten a look inside of them at what exactly they are doing to our device and how.
The death of megaupload and sites like it cost the open source community a lot of tools that are in some cases still missing and in others maybe never to be replaced...at least not without someone taking the time to sit down and do so.
...could that be you?
gtmaster303 said:
Sorry blue, I got lost in your post. What exactly are you looking for?
A software that can do what with these files?
Click to expand...
Click to collapse
Cliff notes:
Blue6IX said:
The strength of XDA is the community itself and the knowledge it contains. If we want to truly leverage it here in the doubleshot forums, this is how it can be utilized the best.
Click to expand...
Click to collapse
Any and all info on the .nb0 or .nbh file format, anything people can gather.
How do we break them apart?
What is inside of them when we do?
What partitions does it flash it's pieces to, are the individual pieces signed or just the file itself?
Can we make these files?
...How?
.nb0 is inside the OTA packages, .nbh is a type of package like the PG59IMG.zip files, so the tools to work with them are different?
Here is an .nbh thread that could help get someone started...
NBHextract: Extract contents from NBH files with a tool but we don't have any of these files yet?
Here is the wiki page it links to which will help more:
NBH wiki page that it links to on that tool page which might help some more.
I bring up .nbh because that is one of the methods of insertion the auto-install tries to use when booting to hboot:
Blue6IX said:
When loading hboot, the files it automatically looks for on the sdcard are:
- PG59DIAG.zip
- PG59DIAG.nbh
- PG59IMG.zip
- PG59IMG.nbh
- PG59IMG.tar
- PG59IMG.aes
- PG59IMG.enc
Click to expand...
Click to collapse
...and the more people we have familiar with these files and spend time helping us to figure them out, the better equipped we will be to deal with new OTA packages and everything that goes with them.
What do we know? Collectively, here, not very much - if so, someone speak up and if not here's something people can help with.
How do we make .nbh files, or any of the other packages quoted there we don't have?
We've pretty thoroughly examined PG59IMG.zip files but the .nb0 files in them are still somewhat of a mystery - here are the ones from the 3 PG59IMG.zip files you can find links to here:
Restore to Stock
Files:
doubleshot_1-28-531-9_nb0.zip
Download Link
MD5: d5e8721090dbc048c711d7f42404286b
Size: 1.75 MB
doubleshot_1-55-531-3_nb0.zip
Download Link
MD5: dba1925982b4c5e0a41f3291942e09e0
Size: 1.75 MB
doubleshot_1-63-531-2_nb0.zip
Download Link
MD5: aaa9edc7b2c5ec91559ab01caebab8ac
Size: 1.75 MB
These zip files are in uncompressed form, simply zipped in store - small files but 2 each. Here you go, hope someone has fun with them!
Sent from a digital distance.
http://www.ubiquitense.com/technology/how-to-install-android-roms-with-nb0-file-extension/2800/
dont know if this is what you are looking for but maybe........
i think this is better?
http://android-dls.com/wiki/index.php?title=How_to_unpack_and_repack_NB0_file
tl;dr:
Blue is a noob with poor time management skills.
jk, I would love to see more people get involved with development. You can't really ***** about a lack of development and then not be willing to support it.
Sorry blue, I got lost in your post. What exactly are you looking for?
A software that can do what with these files?
Usually, all unknown file types I come across I run through winrar and see how it handles it.
Found this with a quick google:
http://filext.com/file-extension/NB0
I edited the first post, adding the second half to it starting with the quote below:
gtmaster303 said:
Sorry blue, I got lost in your post. What exactly are you looking for?
A software that can do what with these files?
Click to expand...
Click to collapse
As evidenced by my original posting, being concise is not my strong suit.
I posted that from the doubleshot while I was sitting somewhere waiting for people, and so it was a little all over the place even for me. Hope this post and the edits above clarify the intentions of this thread better?
Can someone explain how to break down the nb0 files and find tools to do it properly? See if you can sit down and crack one open and see what's inside.
See how many of the questions can be answered from above, and what other ones we don't know enough to ask are/their answer(s) are?
The doubleshot community benefits from it's developers having how-to references on the things we need to do, and pretty much everything we need to know is scattered all over XDA.
It takes time to funnel, qualify, and share that information here so we can use it.
Many more people will be able to dev for this device if they can come here and learn how to do it, and not have to resort to the XDA scavenger hunt that every other dev who started here had to go through.
If other people can see the value of and want to help out in searching out how to do things and get it here for us to use, the honest truth is that's a resource built by the developers here or not at all.
Learning how to do things and going through that experience and what the pitfalls are and finding where to get what you need to do it is basically development.
Sharing those experiences with XDA is what makes this community a resource.
Bringing it here gives people who want to dev and don't know where to start a learning project that can benefit everyone working here.
Something like this is a good trial for posing this question - there are a lot of things that we would benefit from having here and not just on XDA at large. If someone or people want to get together and solve this mystery because they were looking for a problem to solve, then here is the best way to turn that learning experience into a guide for the rest of us.
...and we can check that off our list of things we need to learn how to do.
I can make a post at some point with a concise listing of things we need to know about, with a link to a summary of what we know about each, and then we could use it as a checklist to start systematically solving our problems and making the device do what we need to do.
The strength of XDA is the community itself and the knowledge it contains. If we want to truly leverage it here in the doubleshot forums, this is how it can be utilized the best.
--------
So, when someone gets so energized by this as many of us have felt at some point - that overwhelming desire to help but complete confusion on where to start?
Go learn something we don't know and share how to do it or what it is here. We all benefit and people already here working on other things can just add how to do whatever that is to their methods.
Please don't think this is a case of me sitting here saying "i'm too lazy to learn how to do this, someone teach me" ...
...this is a case of "does anyone out there want to help explain what this is and how to use it? Here's a project if anyone wants it" ...
...i've written quite a few guides here as i've learned how to do things, and wouldn't pose this kind of question without having contributed first. So just offering a starting point to anyone else willing to do that too.
If there is interest in people taking the project on, I can make a checklist of what we need to know and we can have a point of reference on how to spend our time when looking for projects to do.
If no one's interested in learning this and sharing it here then I won't waste the time it would take to put such a list together and source everything. Eventually i'll figure this out and share it here if no one does, but we would grow as a community for others to do it. Just looking for ways to make everything work more smoothly here.
This place is whatever we make it to be, so do we want this?
You think it would help if we asked HTC dev what they're for?
I would love to help! But I don't know anything about being a Dev.
Hi Blue6IX,
I've read most of your post, but I don't quite understand to what purpose we need the contents of these files.
I mean, I got my Doubleshot, rooted/S-OFF'ed it with revolutionary/unrevoked and SIM unlocked it following this guide and installed an ICS ROM. Is there anything that prevents others from doing the same?
Also, I come from the Moto Milestone, which has a locked bootloader and no way to unlock, and still people managed to get ICS up and running (with 2.2 being the latest version Motorola wanted us to have on the device).
For the Doubleshot, you can just fire up a repo sync with CM9, get the preliminary msm8660 device tree(s) and create a doubleshot device tree. I know it will require some adaptations and coding, but IMHO this is nowhere near the problems other devices face.
Since I didn't really find any information on other hindrances, I would be glad to hear of them. Otherwise, I don't think analyzing HTC's/T-Mobile's original update files will be useful for anything?
Curiously yours,
Stefan
seidler2547 said:
...
I mean, I got my Doubleshot, rooted/S-OFF'ed it with revolutionary/unrevoked and SIM unlocked it following this guide and installed an ICS ROM. Is there anything that prevents others from doing the same?
...
Click to expand...
Click to collapse
Yea - for a while S-OFF was impossible for any device on the 1.55.531.3 software version ( or later ) with hboot 1.45.0013
There was also a time where they couldn't unlock the device and were basically stuck barely able to root.
For most people, S-ON and unlocked is the best it can get at the moment - making it pain to flash roms with custom kernels and completely unable to go back to the stock radio or hboot.
seidler2547 said:
Hi Blue6IX,
I've read most of your post, but I don't quite understand to what purpose we need the contents of these files.
...
Otherwise, I don't think analyzing HTC's/T-Mobile's original update files will be useful for anything?
Curiously yours,
Stefan
Click to expand...
Click to collapse
I cut out most of the post you made ... ( quoting a whole post unnecessarily is rather annoying ) ... But you really answered your own question here.
Do you know for certain they won't help now or in the future?
Have you checked to see?
How can you check if you can't break it open?
If you can, could you share directions how and working links to tools to do it with?
...the OTA and PG59IMG.zip packages are how the manufacturer updates the device and makes changes to things we can't - knowing how they do it can help lead to a way for us to do it.
Especially since we don't have a proper RUU and basically are left begging for scraps at the "official" software table for the device - knowing how the few legitimate software packages work we get becomes even more important.
Every time an OTA update comes out, the possibility exists to lose root, S-OFF or even a working device ( the next broken update will NOT be the first ).
As you mentioned being curious, well, you hit the nail on the head as to the entire purpose of the thread.
I'm curious, anyone serious about helping us keep root at the very least is too ( and if not, now know they should be and a bit about why ).
It's one of many, many pieces to the puzzle, but the more thoroughly we understand each puzzle piece itself, the better of a chance we have at actually putting it together.
Bottom line is we don't know, we should know, and the project of finding out and sharing it here is a great opportunity for someone who wants to learn how to be a dev and has no clue where to start.
This project is on my list, but I figured i'd post it here and create an opportunity for anyone interested in it...otherwise I'll get to it at some point.
For all the time I've put in the thread, I probably could have made progress on the answers to at least some of the questions I've posed. I'd rather see if investing that time in soliciting more participation is worthwhile. It's not something I need, but rather something WE need...
Anyone like a good mystery?
Sent from a digital distance.
I really want to learn how Android works. I want to be able to build Android from source, and compile Roms. The goodies. But anytime I try, it's end up horribly. I just want to know where to start! Should I make a stock based Rom, and learn how to tweak it out? Should I buy a certain book, or read some threads! I don't know Xo I really want to become a Dev. Android is my life, and I want to be able to do what Strapped, XMC, and Tbalden do. Any tips are good tips.
I sure do wish you all the luck in the world Agent. And you certainly want to fashion yourself after three mighty fine developers too. I've had some of those same desires myself after seeing what someone that knows their stuff can do. I had so much trouble with HS Spanish and a few AutoCad Lisp routines that I can't even imagine biting off C++ or some of the other programming languages!
My youngest son though.....now that's a completely different story. :good:
WeekendsR2Short said:
I sure do wish you all the luck in the world Agent. And you certainly want to fashion yourself after three mighty fine developers too. I've had some of those same desires myself after seeing what someone that knows their stuff can do. I had so much trouble with HS Spanish and a few AutoCad Lisp routines that I can't even imagine biting off C++ or some of the other programming languages!
My youngest son though.....now that's a completely different story. :good:
Click to expand...
Click to collapse
I wanna learn while I'm still young, I'm out of school for the time being. I really want to take advantage of these couple Months before life is all about business, and how to properly Manage/Own a T-Mobile.
Sent from my myTouch_4G_Slide using Tapatalk 2
NOW is the time my friend before life gets in the way of your youth and ambitions. It WILL distract you and before you know it spare time will seem like it never comes often enough. I admire ALL of you that persue what interests you and learn while that mind is still fresh. KWIM?
WeekendsR2Short said:
NOW is the time my friend before life gets in the way of your youth and ambitions. It WILL distract you and before you know it spare time will seem like it never comes often enough. I admire ALL of you that persue what interests you and learn while that mind is still fresh. KWIM?
Click to expand...
Click to collapse
Hell Yeah, I'm considering taking classes at the local community college for Java. Apparently it's useful for learning Android. I go to a strictly business college. So I can't learn anything related to Android.
Sent from my myTouch_4G_Slide using Tapatalk 2
OK, so I have an Idea. I want to do what CM said, and learn the basic. I'm going to use Undeads Sense 3.0 Port as a base, and theme it to Sense 4.0. Remove the Bulletproof settings, and push over another tweak app. I want to make it as fast as possible, and have great battery. I always felt Sense 3.0 was the smoothest Sense rom we ever got. Zero Hickups, and No Lag. I'm going to at least do it on a personal level. Try to get a hold of Undead (he's IP Banned on XDA & Rootz), but it may be hard. Maybe even try and get the Amaze Camera Mod working. Just simple, basic things. Once I get used to the waters, I'll try something bigger. Like Paranoid Android.
I just found an Interesting guide about porting any Sense rom, to any Sense Phone. Pssshh, could you image Sense 2.1 on our phone. That would be sweet. The guide is boosted to be made for the most simplest of minds. So I feel I can take extreme advantage of it.
Sent from my myTouch_4G_Slide using Tapatalk 2
Keep on plugging - I admire your determination. And please keep letting us know how you're getting on - the start of a journey.
Sent from my myTouch_4G_Slide using xda premium
Alright agent since I can't quote your last post, I was on the inc2 forums and they have a wifi issue that's solved by turning the always on data off
Sent from my HTC MyTouch 4G Slide running MikXE
Where is Blue when you need him?
::Respect::
Hey guys!
I would say that making a post or thread like this is really the first step - knowledge can be gained, but the passion, that drive to work through all the tedious testing, retesting, writing and re-writing is not something that can be taught.
So start small.
We all have grand designs, plans and ideas - heck there's so much this device is capable of that I want it to do, starting everything at once just leads to unfinished projects and fragmented learning.
If you bring that excitement, that hunger for knowledge, then the rest falls into place but it takes time.
"I never let school interfere with my education"
...is such a fantastic quote. It's up to you to choose to take the time to sit down and read a technical document, white-paper or tutorial while your friends are out wasting time.
Definitely make time to walk away and socialize with real people, but remember that learning how to do this stuff takes a lot of time, effort and tons of frustration and dead ends.
I've been playing with software code for near 20 years now, and I still consider myself not much past amatuer status.
...and status means literally nothing. The only two things that matter are what you know, and what you don't.
So don't lie to yourself. Don't pretend to know something just because you are afraid of what people will think if they find out you don't. It's okay to say "I don't know"
In fact, it's essential to be able to say that not only to yourself, but to be able to admit that to the community, your friends, whomever.
If you don't, then you have no place to start learning. Pretending to know something just prevents you from actually being able to start learning how to do it.
So, after you are comfortable with a truthful assessment of what you can and can't do, the next step is to figure out how to go about learning what you don't know.
The biggest mistake everyone makes is taking on a huge project because that's what the end goal is.
"A journey of a thousand miles begins with a single step"
...another good one!
I'm sure we've all heard it before, but haven't pondered it so deeply. Another way to say it might be:
"The making of an awesome ROM begins with changing a single icon"
Break down the project you want to do into the smallest possible steps.
Can you decompile an app?
If not, definitely learn how to do that.
Once you have it decompiled, browse all the code. Especially what you don't understand or makes no sense. Don't try to understand it all, just absorb it and get to know what it looks like.
Now do that with every app on your device (play with all the stock apps first - they all came from the same place and reflect a certain coding style)
Now that you've browsed through all the code of all your stock apps, do it again. ...and again ...and again ... and again.
Sick of it yet? It's been a few weeks now and you've learned nothing you can directly use.
This part always separates the people serious about doing it from the ones turned off by all the tedious work with nothing concrete to show for it.
I mean, you've spent a couple of weeks just looking at code with no idea what you are looking at.
What you don't immediately notice is that you start to get a sense of the pattern, the layout, and what things are the same, similar, and completely different.
Now you start looking at tutorials you've read in the past and go 'wow, I know kinda what that means, I saw something like that in the code here!'
Ah - now it begins!
When it gets to be too much, do something you can handle from start to finish.
Change an icon, tweak the color of a font, something simple, but that you can feel the pride of success and accomplishment in.
Can you compile an app?
Decompile a working app - change nothing - then recompile it. Install it on your device.
Does it still work? Probably not.
Why?
Ah - the question that drives us.
9 times out of 10 someone releasing something cool is not because they wanted to make it, but because they wanted to learn how to make it.
One thing people forget all the time is that the stock software on the device is built by teams of people with delegated tasks and diverse talents that TOGETHER contribute to the success of the final product.
You? You're alone. You have to do it all. Graphics, sound, coding, planning, research, testing - you are taking a project that requires untold hours of dedication from a team of people ... Maybe just on the graphics alone. A whole other team is working on sound, another team is working on code, there is management to structure goals and delegate tasks.
Managers who may have no technical ability but a good handle on how to keep everyone moving and workikng cohesively. Other management that is keeping the teams on point with each other.
...and it still takes them lots of time to get things done. Not because it's some bloated over-staffed group with too much red tape (though that does happen) - but more because there is simply so much to do.
The next time I spend 40+ hours behind the keyboard with maybe not even a bathroom break won't be the first nor the last. I've sat down to do something on Friday and had someone stop by on Sunday night and I'm still in my work clothes from my day shift Friday, didn't even realize Saturday came and gone.
Does it all require that level of dedication - no, but, you get lost in it and that can happen. Never force myself to do it, just get caught up in learning it all.
Don't expect too much from yourself. You absolutely have the community behind you and so much knowledge here, tons of people willing to help, but in the end it's up to you.
You to do graphics.
You to do sound.
You to write the code.
You to compile it all.
You to figure out why it doesn't work ( and it rarely does).
For every success, you have many, many failures to get there. Especially starting out. Expect to get it wrong. Expect it to be broke just because you touched it. If it isn't, honestly, you're doing it wrong.
We learn so much less from success then we do from failure. If you aren't failing you aren't learning. If it always works the first time, then you are just doing the same tired stuff you always have.
You wanna learn how to code for Android?
Read everything you can, absorb the forums, go download source and browse it. Decompile all your apps and browse them. Start looking up what you don't know.
For every one thing you do learn, you realize there are ten new things you never knew you didn't know.
Now go learn about them, because each one of them will lead you to something else, or many something elses that you didn't even realize you didn't know.
...and did I mention put lots of time into ignoring what you want to do, and learning how to do it one tiny little piece ata time?
Patience is most important.
The patience to only change one variable, recompile, test, test, and test some more. Then, when you are satisfied with the result of one minor little change, make one more tiny change and repeat the process.
Learn the scientific method, and follow it rigorously. If you don't, might as well not bother getting into this stuff because all you will do is get frustrated.
You have to work slowly, patiently, one small step at a time. Try to predict the result of the tiny change you made, and then see if it was what you thought or a surprise. Why was it a surprise?
The question of why is the only thing that matters. Every one of those you answer is one more weapon at your disposal for the battle, one more tool in your box, one more pencil on your desk.
If you have little to no coding experience and expect to sit down and whip out a ROM, you are only setting yourself up for failure. But one day you can, with hard work, lots and lots of time, uncountable failures and hours of frustration and coding something just to have it not even compile, let alone work.
Have you taken the time to map the device?
When you got it stock, you should have put a file browser on it ( root explorer - just buy it already, you need it) and browsed the entire device.
Take a notebook and write out a full device tree on paper, everything you can see. Every folder, every file or folder in them, sizes, permissions, any detail you can see.
Why? Because it already works. You are lookoing at how a working ROM is structured.
I mean, how can you make something if you don't know what it is, looks like, how it acts?
Learned ADB and fastboot yet? Why not? You wonNt be successful if you don't.
This is a pretty long list already - and we've barely scratched the surface. A ROM is not a Sunday afternoon project - a ROM is a dedicated months and months long never ending project that eats up more time then you have every day.
So I'll leave you with one last thing before I go make a thread that people aren't gonna want to see - but I'm not leaving you guys, far from it.
Learn algebra, learn it well, or don't bother attempting to write code. (Or work in any construction trades/build anything professionally.)
Algebra is the single most important learned skill one can pick up across just about anything you can ever do with your life, and absolutely vital in computing.
There really is no "go here, learn this" method - you need to aquire the skills necessary to succeed in your project.
So go break something (minor - don't brick your phone) and then learn how to fix it. ...and pay attention in math class.
Sent from a digital distance.
Blue6IX said:
Huge Epic Post.
Click to expand...
Click to collapse
It's like your a warlock and when I typed your name, POOF! :victory:
This post covers every aspect you could ask for, I'm sure Agent isn't the only one who will gain knowledge from this post, thanks Blue!:highfive:
CoNsPiRiSiZe said:
It's like your a warlock and when I typed your name, POOF! :victory:
This post covers every aspect you could ask for, I'm sure Agent isn't the only one who will gain knowledge from this post, thanks Blue!:highfive:
Click to expand...
Click to collapse
Hell. Yeah. I'm just going to start theming. I want to make the ICS messaging Icon blue, and a blacked out UI.
Sent from my HTC MyTouch 4G Slide using Tapatalk 2
I just got ubuntu on my computer, spent an hour trying to install java lol. Now to figure out why adb doesn't work the way it does in windows haha.
edit: finally got adb working. i have no idea what i did, but after installing a bunch of different libs, time to start exploring haha =D
ekoee said:
I just got ubuntu on my computer, spent an hour trying to install java lol. Now to figure out why adb doesn't work the way it does in windows haha.
edit: finally got adb working. i have no idea what i did, but after installing a bunch of different libs, time to start exploring haha =D
Click to expand...
Click to collapse
Java was a b***h when I installed an unsupported version for compiling. This is helpful though it will guide you through installing and it can even switch java versions if you don't like your current one
AgentCherryColla said:
Hell. Yeah. I'm just going to start theming. I want to make the ICS messaging Icon blue, and a blacked out UI.
Sent from my HTC MyTouch 4G Slide using Tapatalk 2
Click to expand...
Click to collapse
I saw this done on AOKP website as a mod, i think this plus built in messaging pop up like an MIUI thing would b beast
::Respect::
ekoee said:
I just got ubuntu on my computer, spent an hour trying to install java lol. Now to figure out why adb doesn't work the way it does in windows haha.
edit: finally got adb working. i have no idea what i did, but after installing a bunch of different libs, time to start exploring haha =D
Click to expand...
Click to collapse
Man, i'll tell ya - if you had to pick the one thing someone would do to take a step into learning to bend android to your will, installing linux is the best reply possible.
Windows is great to get your feet wet, and can manage some things more easily - frilly stuff, eye candy type details.
If you want to talk about experiencing the thrilling joys of success all that invested effort brings - doing so on a linux box is so much more rewarding then on a windows box.
Definitely see about getting a second monitor if you can swing it. Working with two display panels more then doubles your productivity. You can have a tutorial on one screen and be following along on the other.
That aside, one reason the linux box is so much more rewarding is because of the range of things you can mess with.
You can't work with a kernel in windows. Already right there the most important part of the ROM is off limits to you in a windows box. (as I sit here typing this on windows - mind you.)
Another reason linux is so sweet to work on for coding android is that they speak the same language. Writing code is quicker and easier, connecting the device happens more seamlessly and swiftly.
All these little things add up to save you time.
...and time is your greatest hindrance. It slips by all too quickly and then you are obligated to walk away and do something else. So being able to squeeze more work into less time is the consistent refinement of what you know.
Rarely do you learn how to do something the most efficient way on your own, and really that is the heart of open source. You can see how someone else did something, and learn from how they got there.
I've communicated with people I couldn't speak the language of through code, sending changes back and forth without any written correspondence.
To be able to explain the various joys and experiences learning computer coding has brought me would be impossible. There is so much intangible awesomeness that comes from investing time into learning all of this.
Especially since cell phones are so popular and mobile computing is so easy any more. Being able to bend the device in your hand precisely to your will is ever becoming a more important skill to have.
For those wanting to invest that time into what brings us all here collectively, the rewards really are beyond what you would think starting out.
As much as I wanna delv into this as ACC, I simply have no time haha. However, learning this now will probably help me in the future, so why not.
At the very least I'll finally know what you guys are talking about in the dev section lol.
Blue6IX said:
Another reason linux is so sweet to work on for coding android is that they speak the same language. Writing code is quicker and easier, connecting the device happens more seamlessly and swiftly.
Click to expand...
Click to collapse
This. Install Linux, learn to love it, and learn to customize it. A big part of setting linux up the way you want involves working in a command line, troubleshooting when errors come up, building, and compiling. The time you spend troubleshooting and customizing everything on your linux box will familiarize you with all the commands, shortcuts, quirks, and understanding of why this does that in a linux environment, and will help you to no end.
I'm going to get a new Laptop before school starts up again. Then I can finally get cracking
I'm probably not the only person here who would like a custom made Samsung theme. I really want to make my own and share it with people, themes based around video games. Halo and Undertale, to name a few. But Samsung, as dumb they are, refuses to let you develop themes unless you upload a portfolio of prior theme work. Now, I've never done that, but really now. How come we have to prove we want to make good themes when that's what we are trying to do? Does anyone know if there is a way around this roadblock?
Sent via my desktop
KSword007 said:
I'm probably not the only person here who would like a custom made Samsung theme. I really want to make my own and share it with people, themes based around video games. Halo and Undertale, to name a few. But Samsung, as dumb they are, refuses to let you develop themes unless you upload a portfolio of prior theme work. Now, I've never done that, but really now. How come we have to prove we want to make good themes when that's what we are trying to do? Does anyone know if there is a way around this roadblock?
Sent via my desktop
Click to expand...
Click to collapse
Lets try to gather team of themers and other enthusiasts and try to do something.
I worked on a Sony devices, few years ago and I should check my older themes to remember few things.
If I may suggest or ask - could you, or anyone else, post all infos we have and all problems we should work on and I'll be glad to help on a project.
Don't know what's the problem but I can guess - you, probably, have signing problems, right?
On Sony devices we hade similar problems so we did simplest think we could find - we took official theme from store, decompiled it and do reverse engeniring,
It's easy to add your own assets then and edit few xml files.
As I said, I'm not sure which problems are here on Sammy devices and I really don't have time to Google all that out.
I'll built Java environment today on my main PC, install compilers and notepad++ so I could help if someone wants to try.
Sent using Samsung Note 5 N920C
I'm a noob.
I'm actually a complete and utter noob at this. I'm a 14 year old who had come up with the idea of making some themes just yesterday. So I don't know the first thing about developing themes for anything. But if you could explain stuff or point me to someone who can teach me about everything, that would be great.
By the way, do you know if there are any other ways to root a Note 5 without using Odin? I've got the international unlocked version (SM-N920C), single SIM, and I don't want to have to flash the stock ROM back on when I need to get it serviced (prove I have warranty).
Sent via my Desktop
KSword007 said:
I'm actually a complete and utter noob at this. I'm a 14 year old who had come up with the idea of making some themes just yesterday. So I don't know the first thing about developing themes for anything. But if you could explain stuff or point me to someone who can teach me about everything, that would be great.
By the way, do you know if there are any other ways to root a Note 5 without using Odin? I've got the international unlocked version (SM-N920C), single SIM, and I don't want to have to flash the stock ROM back on when I need to get it serviced (prove I have warranty).
Sent via my Desktop
Click to expand...
Click to collapse
I'm quite sure you can't root 5+ Android using Kingo Root or similar not-so-friendly app.
The easiest way that I know of is chainsfire way.
One Tar, one Odin flash and that's it.
Sent using Samsung Note 5 N920C
Hi All.
So here is the long and short side of it.
"SAMSUNG IS DUMB" They have made a theme development service in witch user can go and make their own theme, they then use this as advertisement to the public. Then once users have their devices they want to theme them and what do you know. Samsung then wants you to sign up for development once done they then refuse your application to the theme store for no reason what so ever.
I have seen a few very good themes around here for the note 5, much better then the useless girly/gay themes on the theme store and those users have been denied over and over.
So no, samsung does not give a rats ass if you are a good themer or not this is basically company personnel only that can them.
What we need is a user who by the magic of all things magical have been excepted by samsung to share his user credentials or profile so we can log into the theme service and use it our selves.
How does that sound?
Or someone to crack the software if they can get their hands on it (sadeempc!). There is samsung theme software available but its older versions. Possibly make some on it and use it as past work.
droseofc said:
Or someone to crack the software if they can get their hands on it (sadeempc!). There is samsung theme software available but its older versions.
Click to expand...
Click to collapse
I have that software on my PC, but it's for developing for the possibly discontinued BADA OS. Now, I am not too keen on having someone crack software, bu the idea of a public theme dev account sounds great. Maybe some people should start making accounts and putting them out for us to use.
KSword007 said:
I have that software on my PC, but it's for developing for the possibly discontinued BADA OS. Now, I am not too keen on having someone crack software, bu the idea of a public theme dev account sounds great. Maybe some people should start making accounts and putting them out for us to use.
Click to expand...
Click to collapse
I am not one thats for cracking others work and time either, but when its impossible to get whether its priced with the same idea gas is priced or literally impossible due to whatever youd call it that samsung is pulling. What really is that, it really just hit me like, why are they being snobby little Bs with this theme software. Does it automatically go straight on the theme store when it is made? Let people make their own themes instead of being limited to the mostly awkward chinese or whatever they are themes. Everything is material or walk on Mars or LIVE with weird sayings and dudes with strange sporatic hair on their legs. We have this software to make themes that can only make us money and you none unless we approve it for store use. But you have to apply to get it, oh and submit some past theme creations (hehe). Just like those one kids everybody knows at sometime that nobody likes. Ud think theyd hand that for free and some wizard of themes would come from the midst and samsung could only bank. But nope. Like paying to feed the animals at the zoo or camels at a pumpkin patch. Dont people normally get paid to feed the animals. All @$$ backwards these days.
---------- Post added at 05:28 AM ---------- Previous post was at 05:01 AM ----------
After brainstorming for a few minutes I have a solid conclusion. Given samsungs history of effort(lack) in previous apps, programs, etc. (Samsung nation, plus, forget the others*pointmade*, it has GOT to be because they do not have the people, the interest or simply care enough to go through that many theme submissions. Im sure tons would be pestering for a approval replys etc. I think they are already slacking with the 5 theme makers they have now as im pretty sure i seen a weed leaf on a theme the other day, its the swag one plus all of the same repetitive weird ones. Weed aint bad in some states at least (weird) but just sayin, i dont see any bud light ones or nething sweet like that. Its apparent that theme making is not coming from the US. Im almost positive on the application it doesnt even have the US listed on country list for areas of interest to sell or something like that. Which makes sense when u look at the options available
This sums up both what you and I are thinking in one gigantic paragraph. I did not even know Samsung was incompetent.
On a side note (get it?), can themes be shipped with live wallpapers as default, or will users have to install them separately from the Play store?
It would be nice to see some wallpapers coupled with some badass "living" themes.