[Q] Learn Android/Jave Development - Vibrant General

I am looking for some direction. I would like to learn Java/android and every thing I have found seems to assume that you have previous programming experience. I have been moving along slowly with some video tutorials. I am looking for any one that can give some pointers on the best place to start or and books/videos that are good. The other question is should I start with Java or go straight to Android? I really have no previous programming experience and very little understanding at the moment.

learn java first then move on to android
sent u some links for learning java hope it helps
sorry can't post links here yet.

I am currently learning Java myself. I am reading two books that I have found to be great starting points for someone like myself who has no previous programming experience. Of course there is quite the learning curve, but if you are resourceful and good at problem solving you'll be fine.
I also did some video tutorials before I began reading the books which really helped me get a good idea of the very basics. I really think the video tutorials are a great place to start. By themselves you'd probably never be able to learn java, but they get you familiar with using an IDE and give you a good visual understanding of what your going to be reading in the books, if that makes sense.
Here are some links to the tutorial and books I am reading.
Tutorial:
http://www.javavideotutes.com/
Books:
Head First Java, 2nd Edition
(The price listed here is a great deal. I paid much more for my copy. I would definitely order this now before that deal is gone. Also, if you are only going to get one book to start, this is the one I would suggest.)
Teach Yourself Java
(Also a great price)
Hope this helps you out. Good luck, man.
EDIT: You don't need to do the entire tutorial before you began reading by any means. I think I started off doing the first five or six. I probably did each one at least twice though.

Related

want to learn how to do stuff

so i would like to learn how to do things for my phone and possibly help with the dev community. but i know practically nothing about linux or how to do anything useful. i am looking for links or other useful information to help me get started. i have lots of time on my hands and learn pretty quick. i assume i would start with the sdk (would i use the 1.5 one since thats what our phones are currently running on, or is the 2.0 out yet? and would i try from there), but other than that have no idea what else would be useful.
so.... yeah. helpful link to good info or any good e books, or anything like that that will get me going. thanks in advance
i would use the newest SDK, 2.0.1, and make sure that it will function on the emulators for both 1.5 and 2.0.1, frankly if you arent already proficient with linux or java, this wont be a easy thing to get into. However I WILL point out how threads like this are terribly pointless... you arent helping anyone out, and frankly you're asking for information that is quite available.
thanks for nothing. other than making me feel stupid.
Some help, maybe.
ix3u said:
thanks for nothing. other than making me feel stupid.
Click to expand...
Click to collapse
I've been spending quite a bit of time on the threads here, I too am in search of more information specific to the android. I don't know that I'll ever be able to contribute too much to the devs, but at least I can understand my phone better, and help out with answering questions on the forums.
I would think that starting with something like creating a theme would be a good place to start, and would get you a little more familiar with the ways of android. Then I would move up into other things, and before you know it you will be much more proficient. It's all about starting somewhere. (and having a good backup)
Here's some posts / links that I have collected that i thought might aid me when i create some time to start the same endeavor...
* Ratcom's guide to creating Theme's
http://forum.xda-developers.com/showthread.php?t=574167
* An Android Developers Guide (with tutorials, and tons of info)
http://developer.android.com/guide/index.html
* How-to's regarding android application development:
http://www.brighthub.com/mobile/google-android/topics/guides.aspx
* Tutorials and exercises
http://blogoscoped.com/archive/2007-11-19-n27.html
I haven't looked at most of those, but hopefully they will be a good start. I look forward to the day when I start looking at them too.
Hopefully that's helpful, it's all I can offer.
Good luck, and godspeed
-AndyS-
thanks., that is more like what i was looking for
jmhalder said:
i would use the newest SDK, 2.0.1, and make sure that it will function on the emulators for both 1.5 and 2.0.1, frankly if you arent already proficient with linux or java, this wont be a easy thing to get into. However I WILL point out how threads like this are terribly pointless... you arent helping anyone out, and frankly you're asking for information that is quite available.
Click to expand...
Click to collapse
Hmmm. So much for helping someone out who at least has the desire to learn and grow to be more. Communist much? or just a Liberal Democrat? I applaud him for trying. Who knows more about where to get the information other than XDA? Hell a google search on this stuff turns up mostly useless garbage anyways. Why spend hours digging it up when someone else may know a good resource.
Lets refrain from flames/rebuttals please.
I have a few FAQ's and tutorials on my site. Also checking things like my release notes and mind map (linked in v1.0 release) will help. There aren't any full on tutorials but it's just a good place for general info.
Check my sig.
As flipz stated, there's no good centralized place for organized information. The best advice is truly to search this site, and search with google. It's an uphill battle getting that base of knowledge built up to get you going. I know, I'm still working my way up the hill. I thought about putting a site together to organize and share information but that would take away too much from what little time I have to spend on rom developement.
I doub't that is really the answer you were hoping to get but unfortunately thats the grim reality of things. Perhaps someone with a lot more free time than I, will put together a site of their own and compile and organize all kinds of good information in a central place. It would truly be a boon to the android community.
obelisk79 said:
As flipz stated, there's no good centralized place for organized information. The best advice is truly to search this site, and search with google. It's an uphill battle getting that base of knowledge built up to get you going. I know, I'm still working my way up the hill. I thought about putting a site together to organize and share information but that would take away too much from what little time I have to spend on rom developement.
I doub't that is really the answer you were hoping to get but unfortunately thats the grim reality of things. Perhaps someone with a lot more free time than I, will put together a site of their own and compile and organize all kinds of good information in a central place. It would truly be a boon to the android community.
Click to expand...
Click to collapse
I'd be happy to bring some writers on to my site or to host some tutorials or anything that others have written. My job offers me a lot of flexibility and free time, however like you I am spending all of it developing right now. This kitchen is kicking my butt.
Edit: We'll see if I get any hits. http://geekfor.me/news/wanted-writers-for-faq-tutorial-help/
I may be able to help. My freetime seems to come and go, but I’ve always been pretty good at making How-To’s.
What format would be best?
html,pdf,etc…
ix3u said:
so i would like to learn how to do things for my phone and possibly help with the dev community. but i know practically nothing about linux or how to do anything useful. i am looking for links or other useful information to help me get started. i have lots of time on my hands and learn pretty quick. i assume i would start with the sdk (would i use the 1.5 one since thats what our phones are currently running on, or is the 2.0 out yet? and would i try from there), but other than that have no idea what else would be useful.
so.... yeah. helpful link to good info or any good e books, or anything like that that will get me going. thanks in advance
Click to expand...
Click to collapse
Good thread, thanks for starting it.
I'm in a pretty similar spot. 2 weeks ago I had zero exposure to or knowledge about Android or Linux. I'm proficient with Windows. In the last 2 weeks I've rooted, flashed RA 123, 151 & then 152. I backed up, ran an optimizer .zip file, restored, flashed fresh 1.0 and learned some very cool stuff. I'm comfortable in the terminal but I'm getting to where I'm not sure what I should or want to learn next. Also, although I've done these things easily half of it was just copying instructions from one of the fantastically helpful posts on this forum. Before I learn what to do next I'd like to understand the system better. I checked out wiki and ended up bookmarking a page that explains kernal computing, and a few others, lots of reading ahead
As a noob I have tried to learn without getting in the way too much. I'm glad you admitted your noobness and asked for some direction, you're not the only one who could use it!
obelisk79 said:
As flipz stated, there's no good centralized place for organized information. The best advice is truly to search this site, and search with google. It's an uphill battle getting that base of knowledge built up to get you going. I know, I'm still working my way up the hill. I thought about putting a site together to organize and share information but that would take away too much from what little time I have to spend on rom developement.
I doub't that is really the answer you were hoping to get but unfortunately thats the grim reality of things. Perhaps someone with a lot more free time than I, will put together a site of their own and compile and organize all kinds of good information in a central place. It would truly be a boon to the android community.
Click to expand...
Click to collapse
Sounds like what the original replyee said but said much more tact.
I'm hoping that was a compliment in a round about way.
THIS is an amazing resource. I've stopped in there before but wasn't ready to poke around too much.
I'll see you guys/gals in the spring!
I'd like to offer some insight, but there's really not much more I could add than what's already stated and linked above. Everything you need to know can be found (usually) easily on the android developer site, or in a google search. The hard part is putting those pieces together to know what needs to be done in order to accomplish what. That's not an easy task: check out cyanogen's github projects (http://github.com/cyanogen). He's made modifications to the kernel, Android applications, core frameworks, configurations, recovery images, packaged resources/images, and more. It's not just one piece that goes into these builds.
Most of what you see around here (and this is certainly not to take away from all the great work I'm referring to, because this is just as important as everything else), are people modifying what was already done somewhere else, and making it work for their own phone. And really that's all it takes to move progress forward.
You don't have to be a linux whiz or a Java programmer to be able to make progress with your phone- you just need to understand how each particular piece works in order to make progress on that piece. If you want to make a theme, you need to know what jar or apk files contain the resources, and how to replace those images and styles. If you want to add support for the camera you need to know what linux driver it should use, and how Android expects to interact with that driver. Same for supporting accelerometer sensors, etc.
There's no definitive checklist of things you have to know before you can help development, it just depends on what what you want to help with, and your willingness to research how that particular piece works and what it would take to make the necessary changes.
maejrep,
Informative and encouraging. Thanks!

[Q] Is there a full detail guide to rom building?

Hey guy's (please don't flame me to bad still a little new to the forums) I have looked over many guides but they don't really go over Samsung mostly HTC. I have the source from Samsung for the 2.1-update-1 and have been looking at it but not sure what i am really looking at. If anyone can maybe shed some light on it...of course i could be just confusing myself and its simpler then i think. I have been reading a paper on how to build linux from scratch to get that understanding considering Android is linux in all reality...
Thanks ahead of time guys.
Not to be mean, but unless you understand the code, all you'll be doing is copying/pasting into terminal to get a build. Which isn't very useful if you are trying to learn something.
If you are actually looking at building the OS and manipulating the underlying code, go ahead and grab a C book. It'll take even an intelligent person a good deal of time to understand it all.
As far as putting some APKs into a zip file and calling it a rom, well there's tons of stuff on that laying around, most of that is scripting. If you get into rebuiling the APKs with Smalli - there is code involved there - but you will need to know how java works for it to make sense to you there...might as well learn that while your at it.
Well i know C++/C# and java (took them in college and currently use them for my job) so it shouldn't take too long..i guess i just need to dig into the code and go from there. I don't want to copy past thats definitely out of the question. Have any pointers where i should start and see if i can grasp this or just stick with using other custom rom's which in the end if thats what i do that's fine by me just wanted to get into it myself.
PS: didn't take what you said as mean lol any criticism or help is always appreciated.
^
What he said.
There are a bunch of mini-guides to teach you to copy and paste some stuff, but little in terms of a clear concise guide. I've been working on learning to do a rom myself, but I learned to program in C and Java on unix and linux machines in college. You're going to have to spend a lot of time reading and learning things that you won't be sure you'll ever really need to in order to do any meaningful dev work with that source.
Start using linux on a home machine. Start learning C. And pick up a book called "Advanced Programming in the Unix Environment" to begin to understand how the low level parts of a linux operating system work. Then you will be much better prepared to see how it all works together.
edit: Looks like we both replied at the same time. I guess you can ignore the above post.
lol, i will look into that book for sure though. I have been slowly getting back into linux i use to use it all the time then somethings i was working on and a few apps i was using i had to switch to mostly Microsoft and lost a lot of my Linux knowledge (which sucks) but i will start there thanks again!
I think if you are familiar with the code you are ready for what you want to do. Seeing as how you are reading htc development guides tells me your searching cause that's all that you can really find online. You dont know the steps to take to actually build that source your looking at. First thing is you need your development machine set up to build. I hope youve done that already if not, source.android.com will get you through that. You need the sdk and all that. Next you hook the phone up usb debugging and from within your android folder (mydroid) run extract.sh that willful the samsung files into your environment. From here it will be similar to the htc guides for building but you have the files in front of you to edit you just need to research the structure of linux and those files. Also you need to get familiar with building a kernela well to see how they interact. Good luck
Sent from my SPH-D700 using Tapatalk

Need help with developing, eager beginner

I am a total beginner, don't know coding or anything. I would love to learn how to write code and any other android related development. I own an HTC thunderbolt and an HTC Droid Eris. I could use either phone for developing, just to learn. I have ambitions to make awesome thunderbolt roms, but I don't know how...
Please do not ignore this if you can help, I would love to become a part of this community and learn something new. If anyone could kindly please point me in the right direction, I would greatly appreciate it.
Sent from my ThunderBolt using Tapatalk
It's a must that you have to learn java first
http://download.oracle.com/javase/tutorial/
Then read everything here;
http://developer.android.com/guide/publishing/licensing.html
Work thru all the links on the left side of the screen.
________________________________
http://ron-droid.blogspot.com
rigman said:
It's a must that you have to learn java first
http://download.oracle.com/javase/tutorial/
Then read everything here;
http://developer.android.com/guide/publishing/licensing.html
Work thru all the links on the left side of the screen.
________________________________
http://ron-droid.blogspot.com
Click to expand...
Click to collapse
I appreciate this! Sorry for the late reply, i kinda forgot i posted this , i wouldnt need any C or C++ backgrounds before java? I knew c++ once, but that was a long time ago
icanhazdroid said:
I appreciate this! Sorry for the late reply, i kinda forgot i posted this , i wouldnt need any C or C++ backgrounds before java? I knew c++ once, but that was a long time ago
Click to expand...
Click to collapse
No, there's no need to learn C or C++ before Java.
icanhazdroid said:
I appreciate this! Sorry for the late reply, i kinda forgot i posted this , i wouldnt need any C or C++ backgrounds before java? I knew c++ once, but that was a long time ago
Click to expand...
Click to collapse
You don't need any C or C++. You can use either, though, if you use the Android NDK, which lets you use either Java, C, or C++. However, it's complicated and you probably shouldn't use it unless you know what you're doing.
You said you wanted to write roms. If it's true you will need c too for the kernel development. If you only want to write apps for Android java is enough.
I might learn C later on down the road, but Java sounds like all i need for now as far as kernels go, whenever i get around to being good enough to writing roms Ill probably just use kernels from other devs (with permission of course).
Guys tell me learning to code and finally developing mods and apps(no roms) generally take how much time?
If u want to know my technological skill level i ld say i am not from computer engg background but I am in India's best technology institute which is also 3rd best in d world after mit and berkley.please help
Sent from my GT-I9100 using XDA App
abhiwltya said:
Guys tell me learning to code and finally developing mods and apps(no roms) generally take how much time?
Click to expand...
Click to collapse
It clearly depends on the app complexity.
I started from scratch (I'm basically a C developer, I didn't know anything about Java) and published my first game in 5 months, working nights and weekends.
The second one, will be hopefully published next september, so after 4 months of dev (nights and we).
Zappescu said:
It clearly depends on the app complexity.
I started from scratch (I'm basically a C developer, I didn't know anything about Java) and published my first game in 5 months, working nights and weekends.
The second one, will be hopefully published next september, so after 4 months of dev (nights and we).
Click to expand...
Click to collapse
I too am trying to learn how to makes apps and games for android, been a goal of mine for ages.
How did you learn? what did you use/read? any help/advice/guides/tutorials would be very welcome! I am very determined!
FK1983 said:
I too am trying to learn how to makes apps and games for android, been a goal of mine for ages.
How did you learn? what did you use/read? any help/advice/guides/tutorials would be very welcome! I am very determined!
Click to expand...
Click to collapse
I've also started as good as from scratch (i've got a VHDL background with little C/C++ experience during my study).
I've started with the book Beginning Android. I didn't read it from A to Z but just started to fool around with the examples given in the book.
Besides that i've searched a lot on the internet for examples to try to understand how they work.
A website which I still use a lot to find my answers is Stackoverflow were you can see my the questions which i've asked.
First search on the internet. There is really a lot information out there. If you really can't find the answer, just ask. There are a lot of people willing to help you with your questions.
After about half a year fooling around with examples, in weekends and evenings after my daytime job, I've released my first App on the market. I'm currently working on my second app.
Tricky-Design said:
I've also started as good as from scratch (i've got a VHDL background with little C/C++ experience during my study).
I've started with the book Beginning Android. I didn't read it from A to Z but just started to fool around with the examples given in the book.
Besides that i've searched a lot on the internet for examples to try to understand how they work.
A website which I still use a lot to find my answers is Stackoverflow were you can see my the questions which i've asked.
First search on the internet. There is really a lot information out there. If you really can't find the answer, just ask. There are a lot of people willing to help you with your questions.
After about half a year fooling around with examples, in weekends and evenings after my daytime job, I've released my first App on the market. I'm currently working on my second app.
Click to expand...
Click to collapse
Thank you for all the advice! been having a look and will make a start shortly!
If anyone else has advice to add it would be welcome as I have a feeling I will need all the help I can get!
Learn basic Java first. It's easy to play with Android developing when you have some knowledge in Java.
Android have Java and XML, so if you know Java all you need to learn is the XML which is easier because there's no logic in it.
Sent from my SGH-T959 using XDA App
You could also start by theming ROM's. That's where I have started and it's a lot of fun. I've put together a comprehensive "how to" page to get anyone started.
http://forum.xda-developers.com/showthread.php?t=1140034
Just an update, I just started learning Java today because I've been busy with other things, and I'm actually liking it so far After that I'll probably do C++ again, I forgot all of it, but knew it once upon a time...
As far as theming goes, I wouldn't mind doing that because it's generally fun, but I would rather spend my time learning how to develop first

[Q] Is the Android studio a good place to start for new developers?

Hey everyone.
I'm a new developer, and I'll start with the mandatory apologetic prelude to my question, which is, I hope I'm in the right forum. Also, I've searched through the forums for an answer to my query, admittedly not too much, but the information seemed to be scarce.
Anyway, I'm a new aspiring Android developer, and I'm making my baby steps into coding for my favorite mobile OS.
Since I'm just starting right after the latest I/O, my attention is leaning toward the welcoming Android studio. The problems that arise are:
A. No tutorials for this new environment.
B. It's surly buggy.
So my question really, is the Android studio the right place to start in? Or am I better off starting with the ADT Bundle, which includes (I assume) all the stuff I need to get started with.
Thanks a bunch!
p.s
I'm sorry for any typos etc, English is not my main language. :cyclops:
You should not
This is a 0.1 release and you'll loose more time trying to find why things don't work than learning android.
Depending on what you want to do with Android (little apps for you or bigger project later) I'd recommend either to go with eclipse since it will still be maintained and you'll have most tutorial on it.
If you want to think about future I'd go with real IntelliJ to learn using it and be ready for future Android studio and all the gradle things that will come.
Tolriq said:
You should not
This is a 0.1 release and you'll loose more time trying to find why things don't work than learning android.
Depending on what you want to do with Android (little apps for you or bigger project later) I'd recommend either to go with eclipse since it will still be maintained and you'll have most tutorial on it.
If you want to think about future I'd go with real IntelliJ to learn using it and be ready for future Android studio and all the gradle things that will come.
Click to expand...
Click to collapse
I agree. :good:
Tolriq said:
You should not
This is a 0.1 release and you'll loose more time trying to find why things don't work than learning android.
Depending on what you want to do with Android (little apps for you or bigger project later) I'd recommend either to go with eclipse since it will still be maintained and you'll have most tutorial on it.
If you want to think about future I'd go with real IntelliJ to learn using it and be ready for future Android studio and all the gradle things that will come.
Click to expand...
Click to collapse
Thanks for the reply.
IntelliJ it is.
Is there a specific course you might recommend?
Thanks again.
shermenz said:
Thanks for the reply.
IntelliJ it is.
Is there a specific course you might recommend?
Thanks again.
Click to expand...
Click to collapse
Go with eclipse, even IntelliJ is same as Android Studio... Rest is upto you.
Happy programming, Good luck!!
shermenz said:
Hey everyone.
I'm a new developer, and I'll start with the mandatory apologetic prelude to my question, which is, I hope I'm in the right forum. Also, I've searched through the forums for an answer to my query, admittedly not too much, but the information seemed to be scarce.
Anyway, I'm a new aspiring Android developer, and I'm making my baby steps into coding for my favorite mobile OS.
Since I'm just starting right after the latest I/O, my attention is leaning toward the welcoming Android studio. The problems that arise are:
A. No tutorials for this new environment.
B. It's surly buggy.
So my question really, is the Android studio the right place to start in? Or am I better off starting with the ADT Bundle, which includes (I assume) all the stuff I need to get started with.
Thanks a bunch!
p.s
I'm sorry for any typos etc, English is not my main language. :cyclops:
Click to expand...
Click to collapse
i think u must try develop on eclipse first.. because alot of tutorial android with eclipse IDE
I suppose i agree with the other people somewhat, but i've just started following tutorials and using android studio. I haven't really ran into any major issues, and i think going through and trying to find something myself really helps me learn. I guess it depends on how adventurous and patient you are. I haven't really found any bugs, but you could wait till an update that fixes major bugs if you want. Oh and it looks nicer, and is a bit more handy than eclipse. good luck
atishpatel2012 said:
I suppose i agree with the other people somewhat, but i've just started following tutorials and using android studio. I haven't really ran into any major issues, and i think going through and trying to find something myself really helps me learn. I guess it depends on how adventurous and patient you are. I haven't really found any bugs, but you could wait till an update that fixes major bugs if you want. Oh and it looks nicer, and is a bit more handy than eclipse. good luck
Click to expand...
Click to collapse
Yeah, I find it better for coding. However, I have already experienced some bugs. But they are just related to the layout preview thing. So nothing serious.
I still think that for new developers it is better to start with Eclipse due to the amount of tutorials for it, but I agree that it is a great learning experience. :good:
Hope I'm Not Too Late!
I Hope I'm not too late, I learned Java first. What I'd suggest you to do is go to Google, look up "Learn Java MyBringBack." Click on the first Youtube Video. The videos are made by Sir Travis Cornelius. I love that guy, he's awesome! He teaches Java to beginners in a way everybody will love.
After getting past the 5th or 6th tutorial. If you can, then buy a "Beginning Java for Dummies" book. There are a lot of things about Java which can't be explained in a video.
Please Do Check it Out
P. S: I'm not trying to gain views for that video, I'm just telling you this because of personal experience!

Starter Android Development Tutorials

Hello! I am a new comer into the world of Android Development, I do have a begginer to intermediate Java knowledge, but no Android Development knowledge.
I am asking you for some good tutorials I can use to help myself, preferably newer ones. I found a few, but all of them were 2-4 years old. And other thing I noticed at them is they all use Eclipse. Is it a big difference if I use IntelliJ, it's the IDE I'm most familiar with and I find going back to Eclipse very annoying.
I want to start developing Andoid application because I have a few cools ideas (or at least I think they're cool) for some applications, as well as games. But I don't want to rush right inot making the game or such, I have all the time in the world to learn how to properly develop Android applications.
Thanks for reading!
Hello RoPirate
You say you already find a few tutorials, could you share them please, I'm a beginner please thanks
Tutorial
The New Boston mainly, ando ther very bad and unclear ones.
Right now I found teamtreehouse.com it's paid, but they explain everything really nicely and good, and update the tutorials with new tools when they come out. They also have iOS developemnt, web development, web design, Python and lots of other nice tutorials.
If you decide to get a subscription there (had some doubts at first too, but I definitely do not regret buying the subscription) and want to help me out a bit you can sign up on my referal link (PM me if you want)
I want to chime in a recommend the Codepath Android Cliffnotes set of guides. It's well built, and very useful.

Categories

Resources