Want to become a developer - Android Q&A, Help & Troubleshooting

What do i need to learn to start developing apps, roms, kernels, etc..? I obviously know Java is a 1st but Linux OS? Should i just start reading a book on Linux?
Sent from my E4GT on Calks re-cooked 2.1 using xda premium app

NitrisOX said:
What do i need to learn to start developing apps, roms, kernels, etc..? I obviously know Java is a 1st but Linux OS? Should i just start reading a book on Linux?
Sent from my E4GT on Calks re-cooked 2.1 using xda premium app
Click to expand...
Click to collapse
Well java is your first stop. Linux will help but it is a very different linux system in android. I suggest start by developing an app or two to understand how the system works
Sent from my HTC One X with Beats Audio using Tapatalk 2

Linux does help, alot. I dont know even one bit of c or java but because i'm an avid linux user i can compile android kernel just fine, and i believe i can compile rom from source too if i read those many tutorials available.
Linux is the way to go.
Start by booting linux in vmware, preferably ubuntu
Me myself running arch tho

Related

[Help] Dev help/tutorial needed for a kernel

I am currently trying to learn how to modify a kernel. Unfortunately, I cannot find ANYTHING that explains any of the files in the kernel source. I would greatly appreciate if someone would fill me in or show me where I can find any information on the subject.
Thank you in advance!
Sent from my PG86100 using XDA App
lyon21 said:
I am currently trying to learn how to modify a kernel. Unfortunately, I cannot find ANYTHING that explains any of the files in the kernel source. I would greatly appreciate if someone would fill me in or show me where I can find any information on the subject.
Thank you in advance!
Sent from my PG86100 using XDA App
Click to expand...
Click to collapse
Google search is your best friend.
Compiling kernels from source isn't the hardest thing to do but cooking your own is a whole diff story. Heres a few suggestions!
You need to run a linux distro or run in a virtual box (if in windows or mac); I run ubuntu and Fedora.
Get familiar with github dude.
Learn linux basic commands.
Gbhil wrote this guide a while back so it will show outdated software but its pretty damn accurate. (just to give some insight)
http://forums.androidcentral.com/ht...how-build-your-own-kernel-package-source.html
I suggest following this guide:
Its for the EVO 4G so dont download the tar its telling you to DL, you need to get the EVO 3D kernel source.
http://htcevohacks.com/htc-evo-hacks/how-to-build-your-own-htc-evo-4g-android-kernel/
With a few variations
First clone the repository you want to build off of (Also, all of this needs to be done on a linux box or in a virtual machine running linux) You need to fork a repo from github of your fav kernel.
For example, to clone:
git clone git://github.com/insertkernelhere.git
cd insertkernelhere
Then you need a cross compiler for ARM, which is explained in the guide.
And the guide also explains menuconfig and building the kernel.
Kernels explained.
http://androidforums.com/evo-4g-all-things-root/278898-android-partitions-kernels-explained.html
You need to visit square one.
http://developer.android.com/guide/basics/what-is-android.html
For learning purposes: The anatomy of the linux kernel.
http://www.ibm.com/developerworks/linux/library/l-linux-kernel/
And last, Kernel Newbies!!! Great place for aspiring linux kernel devs
http://kernelnewbies.org/
Thats about all I got man, its alot but every question you have should be hanging around one of these links. You will have to dig around, read around, and browse around. Good luck
dirkyd3rk said:
Google search is your best friend.
Compiling kernels from source isn't the hardest thing to do but cooking your own is a whole diff story. Heres a few suggestions!
You need to run a linux distro or run in a virtual box (if in windows or mac); I run ubuntu and Fedora.
Get familiar with github dude.
Learn linux basic commands.
Gbhil wrote this guide a while back so it will show outdated software but its pretty damn accurate. (just to give some insight)
http://forums.androidcentral.com/ht...how-build-your-own-kernel-package-source.html
I suggest following this guide:
Its for the EVO 4G so dont download the tar its telling you to DL, you need to get the EVO 3D kernel source.
http://htcevohacks.com/htc-evo-hacks/how-to-build-your-own-htc-evo-4g-android-kernel/
With a few variations
First clone the repository you want to build off of (Also, all of this needs to be done on a linux box or in a virtual machine running linux) You need to fork a repo from github of your fav kernel.
For example, to clone:
git clone git://github.com/insertkernelhere.git
cd insertkernelhere
Then you need a cross compiler for ARM, which is explained in the guide.
And the guide also explains menuconfig and building the kernel.
Kernels explained.
http://androidforums.com/evo-4g-all-things-root/278898-android-partitions-kernels-explained.html
You need to visit square one.
http://developer.android.com/guide/basics/what-is-android.html
For learning purposes: The anatomy of the linux kernel.
http://www.ibm.com/developerworks/linux/library/l-linux-kernel/
And last, Kernel Newbies!!! Great place for aspiring linux kernel devs
http://kernelnewbies.org/
Thats about all I got man, its alot but every question you have should be hanging around one of these links. You will have to dig around, read around, and browse around. Good luck
Click to expand...
Click to collapse
Thank you very much! I would push the thanks button but I'm on my phone. Will do it when I get on the computer next time.
Sent from my PG86100 using XDA App

Android Development for Newbies

Where do I start when I want to learn android development?
... not in this sub-forum!
JoshuaLintag said:
Where do I start when I want to learn android development?
Click to expand...
Click to collapse
There is an entire forum section for Android Development on XDA.
Sent from my DROID X2 using XDA
I need to learn the very very basic.
Like on math: 1+1.
I need to learn the basic of android development.
Research my friend. Lots and lots of it. I'm no dev, I just flash things, so "1+1" to me like 2746÷√9×-π. (Yes that is negative Pi, get at me.) But I do know there is information out there and you have to do a lot of self study.
Good luck!
Sent from my Kindle Fire using XDA
Start by setting up a build machine. Linux base with Java Sdk6 (not sdk7). If you are running windows you can use a program galled wubi to set a dual boot on your Pc to have ubuntu run, or you can use vmware to set up a virtually Linux emulator over top windows.
Then it will be up to you on what source you want to build from. And just google "build cm7 from source kindle fire" and there will be all kinds of links with instructions from there
Sent from my GT-P1000 using Tapatalk
http://forum.xda-developers.com/showthread.php?t=1667551
Sent from my Optimus Me using xda premium
pbailey212 said:
Start by setting up a build machine. Linux base with Java Sdk6 (not sdk7). If you are running windows you can use a program galled wubi to set a dual boot on your Pc to have ubuntu run, or you can use vmware to set up a virtually Linux emulator over top windows.
Then it will be up to you on what source you want to build from. And just google "build cm7 from source kindle fire" and there will be all kinds of links with instructions from there
Sent from my GT-P1000 using Tapatalk
Click to expand...
Click to collapse
Actually, Eclipse and adb work on Windows just fine (although it might be a bit more difficult, like adding adb to PATH).
JoshuaLintag said:
Where do I start when I want to learn android development?
Click to expand...
Click to collapse
First of all, you need to setup Eclipse, Android SDK and ADT Plugin (try to run a "hello world" sample, to ensure that all is Ok). Windows or Linux... it doesn't mater, the result will be the same
Then, search for Android Development tutorials (there are many, just find them). If you have a specific doubt, try to search before post. Many of times the doubt is already solved at specialized sites, like stackoverflow
Nutomic said:
... like adding adb to PATH
Click to expand...
Click to collapse
Actually, Eclipse and Android SDK work fine without modify the PATH
Bohnsta said:
2746÷√9×-π.
Click to expand...
Click to collapse
The answer is −2875.60447558586 lol. Freakin Pi!
Sent from my GT-S5570 using XDA

[Q]Windows vs Linux

What do you think is the best Operating System for a Developer to use, Windows or Linux???(Please before answering use your brain)
If u want to build from scratch u need LINUX, But if u hav lil brain u can use windows and port ROMs...
Prashanthme said:
If u want to build from scratch u need LINUX, But if u hav lil brain u can use windows and port ROMs...
Click to expand...
Click to collapse
+1
definitely linux. nuff said. compiling from source need linux.
only wannabe uses windows to repack another rom with some cheap theme, gives full blown name, upload and claims its a new rom.
real dev uses linux to compile from scratch.
an0nym0us_ said:
definitely linux. nuff said. compiling from source need linux.
only wannabe uses windows to repack another rom with some cheap theme, gives full blown name, upload and claims its a new rom.
real dev uses linux to compile from scratch.
Click to expand...
Click to collapse
Thank you sir !
Ace-ing all tests.
an0nym0us_ said:
definitely linux. nuff said. compiling from source need linux.
only wannabe uses windows to repack another rom with some cheap theme, gives full blown name, upload and claims its a new rom.
real dev uses linux to compile from scratch.
Click to expand...
Click to collapse
absolutely correct !
an0nym0us_ said:
definitely linux. nuff said. compiling from source need linux.
only wannabe uses windows to repack another rom with some cheap theme, gives full blown name, upload and claims its a new rom.
real dev uses linux to compile from scratch.
Click to expand...
Click to collapse
well said
on linux from 4 years and hell it does everything i want to do offcourse except gaming
an0nym0us_ said:
definitely linux. nuff said. compiling from source need linux.
only wannabe uses windows to repack another rom with some cheap theme, gives full blown name, upload and claims its a new rom.
real dev uses linux to compile from scratch.
Click to expand...
Click to collapse
How about rom porting ?
Or a failing linux ?
Mine always fails
Kernel cant build
Always give errors
unwritten sentance
spacecaker said:
How about rom porting ?
Or a failing linux ?
Mine always fails
Kernel cant build
Always give errors
unwritten sentance
Click to expand...
Click to collapse
rom porting even if doesnt need compiling new kernel atleast need modified ramdisk.
afaik ramdisk can only be unpack and repack in linux. dont know if it works natively in windows or with cygwin. even so cygwin is hell trying to figure out its dependency properly.
u better of installing full linux distro then trying to configure cygwin
point is, for hardcore dev job only linux can satisfy the needs
So do you guys think I shall use Linux as my default OS?
AndroidGadgetCyprus said:
So do you guys think I shall use Linux as my default OS?
Click to expand...
Click to collapse
not as default. u can just dualboot. windows still needed for odin, games etc.
or maybe virtualisation with vmware or virtualbox if u got superpower high end specs pc.
btw go for ubuntu, most friendly linux distros of all. got buncload of tutorials scattered all over the net incase u had trouble
I use linux for school os
And android os
For gaming i used honeycomb on my pc
And for heavy games i use windows8
unwritten sentance
for daily purpose i use windows and for developing & customization i use linux
you can install both i mean dual boot............
xdaboy122 said:
for daily purpose i use windows and for developing & customization i use linux
you can install both i mean dual boot............
Click to expand...
Click to collapse
Can't dual boot i only have 1 drive.
Linux...I use it as my daily OS.It also gets everything done for me,except gaming Its the most suitable OS for android,no doubt..
AndroidGadgetCyprus said:
Can't dual boot i only have 1 drive.
Click to expand...
Click to collapse
This is not a problem, I have one hard drive too and have dual boot. Read about installing for example ubuntu behind windows and how does grub works.
ughh forgot about this.
ubuntu/linuxmint also got wubi. its installed them side by side with windows, within windows itself. to install it is just by clicking wubi installer like u always do with other windows apps
dragonnn said:
This is not a problem, I have one hard drive too and have dual boot. Read about installing for example ubuntu behind windows and how does grub works.
Click to expand...
Click to collapse
Any Links?
AndroidGadgetCyprus said:
Any Links?
Click to expand...
Click to collapse
Don't be lazy :/. Here you go https://help.ubuntu.com/community/WindowsDualBoot next first just look into google.
Partition your HDD.... Never install inside a windows partition...
Sent from my PG86100 using xda premium

Android Development

What are the languages/tools you need to build a rom for scratch and i dont mean just adding themes and someone else's stuff..?
Thanks
Android SDK, a good graphics editor (not ms paint), Google and xda forums.
Also, open source means building on the work of others. Its recommended to use a working rom as base, then remove what you don't want, and add what you need (this includes all system apps, files, kernel, etc)
You need Ubuntu and a whole lot of code knowledge
This was sent from a Galaxy Ace. Problem?
Ubuntu . Python
Jdk
Sdk
And more i thought
Sent from my GT-i9070 using xda premium

Developing a ROM

What languages are used to develop ROMs?
Kiyuubi said:
What languages are used to develop ROMs?
Click to expand...
Click to collapse
Java and C as far as I can tell.
Never actually did, but u can customize a ROM only editing XML files.
Kernel use a lot of C, apps use java targeting dalvik VM. O.S. use a bash to init scripts and other stuffs.
Good knowledge of linux /proc FS is good for optimizations.
Sent from my GT-I9100 using xda app-developers app

Categories

Resources