Anything to help me get started? - General Questions and Answers

Hello,
I'm 2 days from my last day of High School (Ceremony is on Sunday!). I'm getting very interested in coding programs. I took an online course on Java programing since my school doesn't offer anything for something like that.
I've only had one semester of Java (also my teacher had a family death, so we had NO help from her the whole semester). We used the JGrasp program to code.
I thought, what better way to learn more things and have fun than messing around with my phone!
I came across this and I'm seeing all of these people creating applications, coding things, cooking rom (huh?), and other things. I want to teach myself more over the Summer before I head off to college for Software Engineering.
So what do I need to know?
What program do I need?
Where can I learn the things I need to learn?
Can you cover any other questions that I should be asking?
Remeber, I'm a complete newb when it comes to this, so try to avoid shortcut terms because I probably won't know what they mean.
Any help at all would be awsome! Doing this stuff look very fun to do. And Thankyou for your help!

I'm far from being a chef (person that cooks/creates roms which is the operating software that replaces the orginal operating software on your phone) but I can tell you that i've seen chefs that give away copies of their roms as well as their kitchens (tools that they've used to create their roms) so that people who are interested can create their own rom or modify the one that was created. Take a look at the threads that say custom roms or rom development and you will find them there along with the chefs who can further help you get started. Best of luck. Hopefully one day I will install a rom created by you.

Related

Learning to Develop on Android

So I've been palying around with the Android SDK. I've done a bit of developing before, but never in Java. The Android APIs are pretty well documented, but I'm missing the basics of Java programming (data types, declaring variables and constants, file operations, etc.).
Does anyone have any suggested references? I've been digging some myself but it's slow going.
If you haven't already, check out http://www.helloandroid.com , http://www.anddev.org , and look for O'Reilly books on Java or skip the first five chapters of "Java for Dummies."
Both of those are really focused on Android specifically. Anddev.org is really for developers while HelloAndroid.com is more of a blog and not much technical info.
Here's the best site I was able to find about the Java basics.
http://en.wikibooks.org/wiki/Java_Programming/Overview
After that it just learning the APIs, and I think Anddev is really going to be the site to watch on that.
I thought I'd share in case there are other aspirng developers watching.
Developing Thread
I didn't know where to add this, but if you need to move it to the right thread please do.
I want to start developing, but I don't know any Java. I'm sure that you guys probably know some books that I can pick up to start learning. Actually any advice or resources would be great since.
Ever since i got the G1 and seeing everybody speaking code it realy started to interest me. So any help would be greatly appreciated.
Thank you
I heard the dummy books aren't that good to start off with, but thanks I'll still look at it.
Bump,
Come on people i know you have some ideas, so i can learn java or anything to develop for Android.
Im also thinkin about starting or trying to develop for Android, like how would I start off makin a custom rom build?
Come on guys
See here
Christopher3712 said:
Come on guys
See here
Click to expand...
Click to collapse
that would have worked great if you spelled develop right LOL
The thing with programming textbooks is no one can ever agree on what book is "best". Some people like books that are basically just giant lists of functions and their syntaxes, some people like books with a lot of examples, some people like books that primarily explain the most basic functions in plain English. Some folks don't like to use books at all and learn programming purely from studying others' source code.
A lot of the Java-specific books written in the past decade are written without requiring pre-existing knowledge of C++, which would be good if you have never programmed in any language before. I think the "Headfirst Java" volume is supposed to be well-regarded, but I can't say that from personal experience.
Of course, you could always just find your local community college/adult school/vocational center and sign up for Java classes. Some community colleges might place Java far down in the CS track and make you take prerequisite courses. Depending on how the course is set up, what text it uses, and how much ground it intends to cover, it may or may not have prerequisites.
Good luck
neoobs said:
that would have worked great if you spelled develop right LOL
Click to expand...
Click to collapse
lol, i'm just all over the place today! no matter, i made my point
Christopher3712 said:
lol, i'm just all over the place today! no matter, i made my point
Click to expand...
Click to collapse
I wasnt referring to apps, but thanks?
Christopher3712 said:
Come on guys
See here
Click to expand...
Click to collapse
OMG hahahahaha i love it!
Learning to Develope on Android
I want to learn how to develop apks, use the SDK to its fall extent. I put Debian on my phone and windows x , made a couple of my own themes. However, i want to do more i just don't how the knowledge to do so. i tried to read on how to use java, c++, c.net, etc but I'm just not picking it up all to well. I just installed Ubuntu on my computer but my knowledge of Linux is very little. I'm welling to put the time and effort into learning how do these thing but I'm getting no where. Watching people like JK come out with roms just makes me want to do the same. i also just updated to the new SDK but for some reason it won't work (haven't gone around to find out why thou). Can anyone help me out, maybe point to toward some good sources, books, or whatever. i love messing with me G1 i just want to take it to the next level. i finish school on the 20th of this month and i have till July 15th of free time ( i leave for Basic Training). so i would like to get started between these times.
If a similar thread was already made i'm very sorry i searched like crazy to find one but had no luck, so please don't get made if there is one just point me to it.
THANK YOU
www.android.com
find source code to play with and read, read, read!
dead2hill said:
www.android.com
find source code to play with and read, read, read!
Click to expand...
Click to collapse
I have read so much my head could explode, but i think I'm reading from the wrong sources or just not getting it at all. I'm reading some books i got from friends with Master Degrees in this stuff and they are just confusing me.
The major problem is I'm a fantastic hands on learner but i have no one with the spare time to help on any of these. I've been taking the Cisco Academy Online and didn't get any of it until i had someone help with a hands on learning and it all just flowed right into me easily now i'm close to getting my CCNA.
But i'll keep reading till i get it, some day
fankly i would say if you wanna make apps then read a buch of tutorials, stare ata lot a source code. and create a few simple things first. i have not bothered with any of the sample's with the SDK because i just don't like them. i do however read lots of code daily and am currently trying to find the best way to get my app running. i am one of those people that if handeed source code i could tell you what it does and when, but if told to write a program that does something it will take ages for me to figure out. even with a year of both java and VB .net under the belt i still don't know much since those classes where a long time ago. read lots of code and you could probably benefit from having a java book around too
I found the sample code and tutorials shipped with the SDK very educational, and would recommend the soon-to-be Android developer to plow thru them. They give you (at least they gave me!) a basic understanding of how Android apps are supposed to work.
If you're not used to general Java development at all, I recommend starting out with a beginners book on Java development first.
/Mats
@hellsonlyangel - I have the same desire to learn how application development as you, particularly Android development. I've done the same as you over the years, reading tons of books and online tutorials on programming, but learning very little. I am taking a very general, but comprehensive, scripting course right now as a part of my Network Admin degree program, and I fell that I understand more after 2 weeks in this course than I did from all of my self study attempts. Sometimes, there's just no substitute to structured learning programs. The ISBN for the book that my course is using is 1418836338. It can be had on the cheap, used for around $8, just in case you want to check it out. Good luck.
hellsonlyangel said:
I want to learn how to develop apks, use the SDK to its fall extent. I put Debian on my phone and windows x , made a couple of my own themes. However, i want to do more i just don't how the knowledge to do so. i tried to read on how to use java, c++, c.net, etc but I'm just not picking it up all to well. I just installed Ubuntu on my computer but my knowledge of Linux is very little. I'm welling to put the time and effort into learning how do these thing but I'm getting no where. Watching people like JK come out with roms just makes me want to do the same. i also just updated to the new SDK but for some reason it won't work (haven't gone around to find out why thou). Can anyone help me out, maybe point to toward some good sources, books, or whatever. i love messing with me G1 i just want to take it to the next level. i finish school on the 20th of this month and i have till July 15th of free time ( i leave for Basic Training). so i would like to get started between these times.
If a similar thread was already made i'm very sorry i searched like crazy to find one but had no luck, so please don't get made if there is one just point me to it.
THANK YOU
Click to expand...
Click to collapse
So the best way I found to learn this is through trial and error. I will write code for a simple program, for instance a clock app. I will work on it until it does what I want it to then I will trash the code and build it again using what I just learned. It's just a lot of practice and don't get too deep until you have a full grasp of the concepts behind programming. You'll just get stuck and frustrated.

How do I become a developer?

I've been a member of XDA Forums since about October (when I got my vibrant). And I wad wondering how to become a developer. I feel like I should help contribute to this community instead of just being someone downloading and flashing. Im planning on majoring in computer science in college and I know it will help me with this type of stuff but I cant wait another year (Junior in high school)... I would really appreciate it if you guys would point me in the right direction or take me under your wing so I could pursue this interest.
dcaples002 said:
I've been a member of XDA Forums since about October (when I got my vibrant). And I wad wondering how to become a developer. I feel like I should help contribute to this community instead of just being someone downloading and flashing. Im planning on majoring in computer science in college and I know it will help me with this type of stuff but I cant wait another year (Junior in high school)... I would really appreciate it if you guys would point me in the right direction or take me under your wing so I could pursue this interest.
Click to expand...
Click to collapse
I'm doing computer science also to become a dev, I'm a senior! I have no idea, but I would love to dev also, I know it takes a lot of work though.
Step 1 - cut a hole in the box
step 2 - put your junk in the box
step 3 - make her open the box
step 4 - and that's how you do it (its my d$#* in a box)
haha naw i'm jk, I would like a clear way on how to dev specifically for the vibrant, I've seen a bunch of different ideas and tutorials on how to do it, but their specific for that phone, and its hard to comprehend on how to put the knowledge to the vibrant
Yea I know its alot of hard work but it will all pay off in the end.
I think it would be nice if one of the vibrant developers put up a video of how to become a developer and a video of him/her cooking up a rom. Im sure alot of people would take intrest to that. It would also give us enough knowledge to maybe be able to develop other phones or programs.
Learn your way around a linux box as it's pretty much necessary to compile source and what not. If you're wanting to develop programs for Android, learn some Java...
there's a few good e-books on amazon for android developing if you can learn from books.
I think you should start out with themes....so you know exactly which apks control what...which XMLs control what...then get some Linux knowledge so you can know how to tweak for speed....then start to learn some Java and Smali code....and do a sh*t load of research....i tried to create my own ROM based from official Vibrant source....MAJOR FAIL ...i think my phone went into shock ....but find someone who is willing to teach you...but make sure you're patient enough to learn.
Due to the nature of vibrant roms anyone can be a developer! That's a good and bad thing. Anyways... best way to learn is to learn Java. Android is built on it. It may not loom like it on the surface but it helps (ask whitehawk). Mr apocalypse's advice is probably the best.
Also a video is a horrible idea(no offense). It will empower people who have no business making roms to make them. Do you want people who don't know how to make a flashable zip making roms for your phone? It could potentially lead to bad things...
I was where you were a couple years ago (not that I'm much further ahead). Learn you some Linux. Learn you some theming and try and make a simple app for android.
Sent from my SGH-T959 using Tapatalk

Making Roms....

This maybe premature but I figured I would throw it out there; is there any devs who could tell me about the skill level or difficulty level of making new roms or tweaking existing roms? I'm learning about java programming and using j creator and eclipse. I'm still new but I'm a fast learner. I want to help out the charge community by keeping an active dev. I'm still a time away from that but want more insight..... Please no sarcastic remarks.... Thanks.
Sent from my SCH-I510 using XDA App
I'm attempting to start teaching myself this as well. The advice I've gotten is to start ofs theming. That way you can break open the apks and see what's inside, get a feel for how to change things and reassemble packages without doing any major work, and then expand from there. I'm in the process of changing jobs and cities, but I'm going to start playing around with things after I get settled.
a lot depends on what you want to do
developing for oem skin (touchwiz roms in this case) is a lot different than aosp
aosp requires a lot of java knowledge, and depending on the phone can be somewhat easy (nexus phones source will boot without changes) to nearly impossible (this phone)
touchwiz roms require some basic tools (7zip, smali/backsmali, apktool, rom kitchens or terminal knowledge) as well as some smali knowledge and countless hours of just figuring stuff out
many of us got our start as themers, from which you (over time) gain knowledge on rom layouts, where things are located, xml/smali editing, making update.zips and updater-scripts, and the like
you dont *need* to necessarily use linux to work on tw roms, but it certainly helps imo...although most of the tools out there work in windows too
my suggestion?: download a stock rom and download a heavily modded one of the same build (infiniti/gummycharged) and compare them with kdiff and decompile the apks to get an idea of what was changed
its a good starting point
Sweet, thanks for the advice. I am learning java pretty quick but realistically it would probably be a year before I'm proficient. I also just added computer programming as a minor. I would like another phone, the nexus obviously, but I need to chill on buying phones. I love aosp- if that was possible that would be great, but getting started anywhere is good. Thanks for your help fellas.... I'll keep you all posted here on my progress...
I know that the java language will help-but comparing will help me get acquainted with android. So far I've learned everything from forums so this is a new direction...
Sent from my SCH-I510 using XDA App
For those following who may want this information. I had a response from imnuts in RootzWiki where I posted this same question. Here's what he said as well. He complemented the answers already given- I also followed up on a list of software to help get started.
http://rootzwiki.com/topic/11184-new-roms/
Thx for starting up this thread. I'm actually lookin into rom dev as well and this thread has some great starting blocks in it +1 for u dude

Looking to Develop Android Applications and Games

Yes, I've already searched the forums. I know there is a guide on here from a developer, but that doesn't leave as much open-endedness as I would like. I'm looking to learn to develop games and applications for the Android OS. I've spent the past week learning Java so that I could learn to develop for Android, but it seems to me that is only the tip of the ice berg. The question I have for you guys is how do I go about learning this stuff? I'm sure most of it is trial and error, but hell what can I try if I don't know where to start?
I know you guys probably get this type of question all the time, but I'm not wanting to take the easy "can you basically code it for me route?". I really want to make the game I have in mind and it's fleshed itself a bit more since I actually learned the backbone of the stuff as well. I've seen The New Boston stuff, but that guy doesn't seem to know what he's talking about. He calls > the less than sign and vice versa. :\
aquaars said:
Yes, I've already searched the forums. I know there is a guide on here from a developer, but that doesn't leave as much open-endedness as I would like. I'm looking to learn to develop games and applications for the Android OS. I've spent the past week learning Java so that I could learn to develop for Android, but it seems to me that is only the tip of the ice berg. The question I have for you guys is how do I go about learning this stuff? I'm sure most of it is trial and error, but hell what can I try if I don't know where to start?
I know you guys probably get this type of question all the time, but I'm not wanting to take the easy "can you basically code it for me route?". I really want to make the game I have in mind and it's fleshed itself a bit more since I actually learned the backbone of the stuff as well. I've seen The New Boston stuff, but that guy doesn't seem to know what he's talking about. He calls > the less than sign and vice versa. :\
Click to expand...
Click to collapse
if you are e developer , to learn java (at least the basics) is the step no 1 , and its not so hard
if you have no idea what programming means , then you sould spend time to have some general knowledge about programming.
then you sould try to understand android platform , read general info , read sdk documentation , read about the structure of an android app , and
play a litle with Eclipse. you can find everything on the net. tutorials , code , how to etc.
Start doing tutorials, that's what I'm doing.
Check YouTube for beginning Android programming and stuff like that. Eclipse has some good tutorials as well
Sent from my LG-E739 using xda app-developers app
aquaars said:
Yes, I've already searched the forums. I know there is a guide on here from a developer, but that doesn't leave as much open-endedness as I would like. I'm looking to learn to develop games and applications for the Android OS. I've spent the past week learning Java so that I could learn to develop for Android, but it seems to me that is only the tip of the ice berg. The question I have for you guys is how do I go about learning this stuff? I'm sure most of it is trial and error, but hell what can I try if I don't know where to start?
I know you guys probably get this type of question all the time, but I'm not wanting to take the easy "can you basically code it for me route?". I really want to make the game I have in mind and it's fleshed itself a bit more since I actually learned the backbone of the stuff as well. I've seen The New Boston stuff, but that guy doesn't seem to know what he's talking about. He calls > the less than sign and vice versa. :\
Click to expand...
Click to collapse
I think you are referring to my guide. You say it "doesn't leave as much open-endedness as [you] would like." What do you mean by that?
The guide is first and foremost written for beginners.. if you have suggestions on how I can improve it, let me know
And I wouldn't call learning "trial and error." It's more of practice and understanding.
You are right in saying "What could I possibly try if you don't know where to start?"
Following a structured series of tutorials at first will start you off on a strong foot.

Learning ROM Development - Where to even begin??

So I’ve been a member here since the Droid X days and I’ve learned a lot over the years with each device I’ve had but I never really looked into creating ROMs (I always wanted to learn but never got to it).
I know it’s going to be a learning process that takes some time but I’m looking for help on where I should start. Before anyone posts a whole bunch of random looks I’ll say right now that I am a complete beginner when it comes to this stuff. I’ve looked at a bunch on threads and it’s so overwhelming being completely new so I don’t know what’s relevant and what’s not.
From the research I’ve done today I learned about a program called Android Kitchen which from my understanding was used to create and compile ROMs. From what I found it looks like the original dev stopped updating it back in 2013. In the ChefCentral>Android forum it looks like someone else took over and maintains it for Linux. I also came across a variant there called “Assayyed_Kitchen”. Is this the same program just made by someone else? I don’t know you tell me? lol
I also plan to learn some Java in the coming months and Android App development. I don’t have a huge interest in making apps right now but who knows maybe I will down the road. I just figured learning Java can only help with learning to make ROMs? Do I even need to know any of it for this kind of stuff?
So basically I’m looking for some guidance on where to start as a complete beginner in learning ROM development. Even someone taking the time to type out a few basic steps explains what the whole process even involves from start to finish would help a lot. For example..
1. Download source
2. Open in this program and blah blah
3. Do your magic and customize this and that
4. Do some more magic and pack it back up and flash
Just understanding the steps would make a huge difference because then I know what to research and what to learn. Hoping this thread gets some good info in it and maybe at some point I can create a complete noob friendly guide in the OP to help others like me who don’t know where to begin. To anyone that takes the time to reply and help out.. THANK YOU!
You download the source, edit the code you want to edit, then you compile it.
If you have more questions then that it is because you don't know enough to be able to make a ROM. Where to start? Learn how to code and compile, start compiling other peoples Roms and look at their commits and source code to see what changes they made.
You can't really drag and drop then place your logo on it.
Sent from my Pixel using Tapatalk
scryan said:
You download the source, edit the code you want to edit, then you compile it.
If you have more questions then that it is because you don't know enough to be able to make a ROM. Where to start? Learn how to code and compile, start compiling other peoples Roms and look at their commits and source code to see what changes they made.
You can't really drag and drop then place your logo on it.
Click to expand...
Click to collapse
Not sure what the attitude is for I never implied that I could do simple things like drag and drop and use others people's stuff and do it with no programming experience.
Again it's all new to me so I was asking where to start with it all. I am starting to learn Java this week and I'm trying to figure out how it all works.. I'm not interested in making android apps so the android development tutorials all over the internet wouldn't help. Yes they would help with the Java stuff but not with the ROM stuff so that's what I was trying to understand. Imagine being a complete beginner with this stuff. All this talk of compiling and GitHub and commits is all jibberish at first. You gotta start somewhere so I'm trying to get a grasp on everything. My goal is to understand the steps needed to make my own ROM first. Because once I know Step 1: use this program to do this Step 2: do this, etc.. then I know the basic overview and can start the process of actually learning the details involved in doing step 1, 2, etc
If I was teaching someone how to change a tire on a car. They first would have to understand that it involves jacking the car up, loosening lug nuts, take tires off, put new tire on, tighten lug nuts, lower car off jack. Once they get the concept and process of what they are trying to do.. then they can start learning how to jack the car up. Then how to take the lug nuts off.. and so on
If they didn't first understand the general process they might start to learn how to take the lug nuts off first and do that right away
The best place to start is to google , "how to build Android from source." This will help set up your build environment and teach you the basics. The rest is pretty much trial and error.
I started back in 2013 with one of the guides and just started messing with code. I went from not knowing any coding to compiling my first ROM(slimroms) within 2 weeks of starting. I became an official member about 2 months after starting. Here is a link to one of the guides I used to start.
http://forum.xda-developers.com/showthread.php?t=2223690
arcardinal said:
The best place to start is to google , "how to build Android from source." This will help set up your build environment and teach you the basics. The rest is pretty much trial and error.
I started back in 2013 with one of the guides and just started messing with code. I went from not knowing any coding to compiling my first ROM(slimroms) within 2 weeks of starting. I became an official member about 2 months after starting. Here is a link to one of the guides I used to start.
http://forum.xda-developers.com/showthread.php?t=2223690
Click to expand...
Click to collapse
Thanks for the link! I've done some searching around also. So I would need Linux correct? Not an issue I can partition one of my PCs just want to make sure it's definitely needed.
I think my s5 is still running slim ROM haha so thank you! Did you have any programming (Java) experience when you started?
aholeinthewor1d said:
Thanks for the link! I've done some searching around also. So I would need Linux correct? Not an issue I can partition one of my PCs just want to make sure it's definitely needed.
I think my s5 is still running slim ROM haha so thank you! Did you have any programming (Java) experience when you started?
Click to expand...
Click to collapse
I had no coding experience at all before starting.
You need Linux. You will also want a decently speced computer. I have an 8-core processor and 24 gbs of RAM and it takes about 20-30 minutes to compile a build. The computer I started on took about 4 hours.
arcardinal said:
I had no coding experience at all before starting.
You need Linux. You will also want a decently speced computer. I have an 8-core processor and 24 gbs of RAM and it takes about 20-30 minutes to compile a build. The computer I started on took about 4 hours.
Click to expand...
Click to collapse
Yikes. I have a PC I built a few years back running Windows 7 currently
-Asus P8Z77 Pro motherboard
-Intel core i5 3570k
-8GB RAM
I know I could use some more RAM but I was considering getting an SSD first. I have an ancient HDD in there now. Not sure on the exact speed but it's slow
If I was you I'd start with kernel compiling before you get into rom developing. That's what I'm doing anyway, seems like getting a rom to compile is more involving.
You would need to read up on 'git' (it's a version control program) learn some C language and also read up on another program called 'make' what it does and how it does it.
Learn about 'toolchains' how they do and which one to use. I think you can get latest toolchains by downloading android-ndk (it should be one of the folders in the zip file).
With that said you need Linux and depending on the distro you use (Ubuntu,Fedora etc) you would need to download extra packages for development and that you would have to google it to find out which ones. Also you would need to know how to navigate within Linux, use that distro's programs or tools (although 95% are the same across all distros) and all of it using only the terminal.
Google is your friend. I know it is mine. Good luck.

Categories

Resources