[Completed] Learning to build Android - XDA Assist

Well Hello XDA!
I'm going to keep things short and just dive into the question.
I want to learn how to build Android from source and modify the source code,
and learn more about toolchains, differences between toolchains, and how to use github properly,
compile a Kernel, and the different aspects of a Kernel.
What Linux distros are best suited for these, and how to set the distro properly (It has to be setup properly or else my OCD won't let me sleep)
I would be grateful to the person who points me in the right direction and tells me what to read and where to look for guides / tutorials / helps ,
if I want to learn all of these ..
Thanks in advance

XDA Visitor said:
Well Hello XDA!
I'm going to keep things short and just dive into the question.
I want to learn how to build Android from source and modify the source code,
and learn more about toolchains, differences between toolchains, and how to use github properly,
compile a Kernel, and the different aspects of a Kernel.
What Linux distros are best suited for these, and how to set the distro properly (It has to be setup properly or else my OCD won't let me sleep)
I would be grateful to the person who points me in the right direction and tells me what to read and where to look for guides / tutorials / helps ,
if I want to learn all of these ..
Thanks in advance
Click to expand...
Click to collapse
Hello, welcome to XDA. You will find a lot of information in the XDA University pages, especially this one: http://xda-university.com/as-a-developer/getting-started-building-android-from-source
There are lots of resources throughout the XDA forum, for instance this one: http://forum.xda-developers.com/showthread.php?t=2639611
Good luck and have fun!

Related

[Q] (Rom Cooking)Can someone point me to the right direction

HI i was wondering if any of the devs could point me in the right direction to learn , read, etc... about Rom cooking, im willing to learn but seriously i have no way on how to start i do know a couple of things but thats about it.
thanks for any info and Help.
I am not a ROM developer, but I have seen developer's responses to questions like this (as I'd like to dive into app development myself):
http://forum.xda-developers.com/showpost.php?p=18935780&postcount=12
Things you will need to look into first include the java programming language (which is easy enough if you are familiar with another OOP language) and the Android SDK. While you can develop for Android in Windows it looks like most of the useful tools for ROM development are mainly available in linux, so you may also want to give linux a shot as well if you aren't familiar with linux and that style of developing.
Once you get a working SDK set up and have some java experience then you can move on to actually decompiling apps and ROMs and examining the code (using the tools that Raver mentioned in the post I linked to). The Android Developers site has great resources available for learning about nearly everything you will need to know Android-wise.

[HELP]AOSP

Hello,
Here I have a small question since AOSP ROMs are most popular with Nexus phones.
I have worked around with custom ROMs..now if I want to try AOSP...
Can anyone just give me a brief explanation on how I can compile AOSP from source.. Lets take nexus s as an example...
Also is C++ or any other programming language necessary?
Thnks in advance for helping!
Sent from my GT-I9003 using XDA App
I am also interested in learning to compile AOSP from source. If there is a dev out there willing to help us out that would be awesome!
I have done work with Custom ROMs .. Just wanna learn aosp..
Sent from my GT-I9003 using XDA App
You'll want to know java.
And you'll want to read thru the stuff on source.android.com
As for setting up from source, start here: Initializing a Build Environment
As for guides, there's literally hundreds of them - excluding the one off of the Official google source site. Search xda, google, etc.
Here's just one example: [TUTORIAL] Setting up and Compiling ICS from AOSP (for the galaxy nexus) which follows the guide found on -> How to Compile ICS (Ubuntu)
Catch my drift the information is all out there. You just have to take the time to search and read.
One last thing, for setting up for dev environment. A lot of people seem to go for ubuntu (my recommendation so it might be the most user friendly.
Personally I use arch linux so the w/e flavor you choose shouldn't hinder you.
kyouko said:
You'll want to know java.
And you'll want to read thru the stuff on source.android.com
As for setting up from source, start here: Initializing a Build Environment
As for guides, there's literally hundreds of them - excluding the one off of the Official google source site. Search xda, google, etc.
Here's just one example: [TUTORIAL] Setting up and Compiling ICS from AOSP (for the galaxy nexus) which follows the guide found on -> How to Compile ICS (Ubuntu)
Catch my drift the information is all out there. You just have to take the time to search and read.
One last thing, for setting up for dev environment. A lot of people seem to go for ubuntu (my recommendation so it might be the most user friendly.
Personally I use arch linux so the w/e flavor you choose shouldn't hinder you.
Click to expand...
Click to collapse
Thanks man! I have my computer set up so it dual boots Windows and Ubuntu, so I'm going to try my hand at this!
Thanks man ! Will give it a try ..
Still learning Java Though
Sent from my GT-I9003 using XDA App

[Q] Noob trying to become a dev.

This thread may be pointless but I don't care. I can't find a straight general answer.
I am kind of new to Android modding but have ok skills with coding and decent skills with Linux (I know how to survive in a shell).
What are good code examples or what are the best methods(exploits) used to privilege escalate a shell?
Do I need to find a hole in the Linux kernel or try to hijack an active process running as root?
What is needed to crack the bootloader? I know I'm asking a lot and most of my terms used may be wrong but I find it hard to take that next step. Would I find answers by reading an Android developers book?
Please, where do I start???
There are many options in the development criteria, the two main consist of OS Development (Roms) and Application Development.
Judging by what you're stating, I think you're trying to work towards OS Development? Correct me if I'm wrong.
I know I'm being a bit cheap by not typing out everything needed, as I will have to put some time into that... But the official CyanogenMod wiki shows you how to set up a building environment on Mac, Windows and Linux.
From there they explain in detail on what shell commands you must use to run exploits and such. They also explain what specific components and files do and how you can modify and update them from what I have previously seen. The site also shows you how to build a ROM for your device itself, using the CyanogenMod source of course, the method applies to all source to be honest.
Here's a link to the website - http://wiki.cyanogenmod.org/w/Main_Page
If this wasn't what you were asking for let me know so I can explain furthermore.
Krish.
Sent from my Nexus 5 using Tapatalk

Android Development Direction

Hey, I'm beginning to (or, planning to) get started with Android Development (Not really Android App Dev, but Android itself. Things like, porting to devices, modifying and customising ROM's.), and I need some direction. I'll present what my skills are or, what I already know, and what I think I'll need to do to get started.
When it comes to code, my main expertise resides in web-development. HTML/CSS/Javascript/jQuery/PHP/MySQL/etc however, I've gotten pretty comfortable with Python and using that for computer programming, and a few years ago, I picked up C++ for a short while and learned some basic stuff there.
I am able to read code.. As in, if someone presents to me a problem with a snippet of code they have, I can read, understand, and usually provide a solution to their problem. However, I have noticed when looking through GitHub projects, I don't have a great time understanding the file structure or, where to start. Web programming usually starts with an index.html/php/etc or even C/C++ start with a main.c/main.cpp. Without documentation, which is usually not provided, I find it incredibly difficult to read through, understand, and thus, I can't really fork it.
I've also done some networking in Linux, modifying routing tables and iptables too.
My planning for getting started with Android Development is as follows:
Learn Java to a comfortable level,
Learn how Google's Repo/Gerrit tool(s) work,
(For porting) Find documentation on a device's components, learn how drivers are coded, and documentation on Android's layout/structure, figuring out how to modify it to work for a specific device,
(For modifying) Should be easy once I understand how the structure of Android's source works.
Other than the learning Java part, I need a lot of direction here. What have I left out, where are the best places for me to find things I need, etc.
If anyone can help me out here, I'll be in your debt. Thank you!

I'm New To Java Programming & Droid App Development - Seeking Advice/Thoughts Please!

I'm New To Java Programming & Droid App Development - Seeking Advice/Thoughts Please!
Hello!
So I was hoping to get the advice on a few things regarding android app development from those of you are app developers. I am just now learning Java, learning Android Studios/IntelliJIDEA and I have no teacher (I use Lynda.com, TeamTreeHouse, and other resources) so I'd like to get the opinions and thoughts of others who have already created an app, do so all the time, or are working on their first app. In general, I am looking to get some answers from those who already know what to do and have done it before. I want to be sure I am doing things the right way. Or at the very least I want to be doing things the best possible way I can. So my questions:
What IDE do you use? (Android Studios/IntelliJ IDEA, Unity, etc)
Did you learn Java before building your First App?
Did you learn XML before Building your first App?
Where did you learn about the languages and technologies required? (Lynda.com, TeamTreeHouse.com, NewBoston, etc)
Are there any resources you can recommend to me as a beginner who has not yet built his first app?
If there is a question you can think of that I did not ask that might help please let me know.
Thank you for answering these questions!
I really want to make sure that I approach this the right way and that if I am going to commit myself to it I do so in a way that works, is tried, tested, and true. I want to make quality applications and I want to know what I'm doing while doing it. = )
Anyway, answering any of these questions would be truly helpful and I would appreciate it very much. Thank you!
Regards,
DevelopDan

Categories

Resources