Good Source Code - Java for Android App Development

Hello, this is my first post on xda.
I am learning how to program android apps by watching youtube videos and reading the android dev site. I was wondering what the best place for obtaining well written source code for me to read and see how well made apps are written. Is there any good sites that have this?
Brian

There are great tutorials written by Vogella (Google it).
If you are looking for complete code: github.com

And when you're programming, if you find yourself thinking "how to do this, now?", just search over StackOverflow with an [Android] tag; probably the question has already been asked; otherwise, just ask.
It's a HUGE source of code and inspiration.
Here are the FAQs.
Remember to use the code according to the License it's released on.
Be sure to check also this explanation.
Hope this helps,
bye.

Related

Trying to become a developer

Sorry if this has been posted but I couldn't find one and if posted in wrong section
Im trying to become a developer but I am stuck at hello android and don't know what to do from there if anyone can show me a way to develop apps easily please help out and this is my first post too =]
Sent from my overclocked Cyanogenmod htc evolution 4g sucka
cesarcerros31 said:
Sorry if this has been posted but I couldn't find one and if posted in wrong section
Im trying to become a developer but I am stuck at hello android and don't know what to do from there if anyone can show me a way to develop apps easily please help out and this is my first post too =]
Sent from my overclocked Cyanogenmod htc evolution 4g sucka
Click to expand...
Click to collapse
You're stuck getting Hello Android to work or whate to do after hello android? Do you know any development languages such as Java or C#? (you'll be writing android apps in java, but C# is really MS version of java with a few syntax differences) If not, are you familiar with object orientation? If not, it's gonna be tough dude but if you're smart and pick stuff up quickly you can learn by reading.
Pick up some books and look at youtube videos.
Sent while sitting on the toilet.
Alright thanks its just that helloandroid project wouldn't start right but I will look up massively on how to start a different way or just try to find the solution and youtube always helps and anyone knows how to make roms looking to make aosp
Sent from my overclocked Cyanogenmod htc evolution 4g sucka
There's a few free Eclipse and Java books out there that a beginner will understand especially if you already understand the concepts of object-oriented programming. Eclipse IDE itself will need a book as it's full of plugins and tools you need to understand to compile your project effectively.
It's going to be a very very long and slow road.
This may help, a series of YouTube videos for beginners.
http://eclipsetutorial.sourceforge.net/totalbeginner.html
I've been thinking the same thing, learning to develop for Android. Since I have near zero experience programming (save for a VB class in college) I decided I would be better off hiring someone to write what I want.
Just keep in mind though, Hello World is just where people start.
You may want to check out the android Appinventor. It's made by Google, and is in beta testing now, but it's a graphical way of programming for android. Though there isn't any code involved and won't be good/used outside of Android, it does a good job imparting the logic of programming.
I'll give you some tips that I've learned over the years as a developer.
First if you haven't done any development before I highly advise obtaining a book. True there are tons of web tutorials out there but personally I find a good author can do wonders in learning how to develop software. Anytime I want to learn a new platform I pick up a book on that platform. Of course you can find a ton of books used but another great source is a library. If you're in college with a computer science program chances are your library will have a couple of books on Android development. Your public library probably has some books on the subject as well. If all else fails see if you have a friend who will loan you a book.
Reading about development is only part one, part two is hands on. You can read an entire book on developing software and walk away with no knowledge. You can mindlessly follow the examples in the book but I find it best to use the examples in books as a guideline. In other words take the idea in the book and morph it so you're working on something original. Trust me here, you'll learn a lot more doing this instead of just mindlessly following the examples.
Next thing you'll need is a problem. Why? Because you need something to write. I find myself most motivated to write software when I either have a problem or something else has one and a checkbook. What do you want your phone to do? Are there applications out there that solve your problem but you think you can do better? Think small and easy since you're still new. Realistically you're not going to be able to make a web browser from scratch as your first project but you can certainly make a database of movies you own.
One thing that is debatable is whether you should learn to write something quickly or well. Frankly I'm in the school or writing something quickly and ignoring "correctness" when you're new. People new to programming spend too much time worrying about doing things "correctly" (very important when you're developing actual software) instead of learning how to do things in the first place.
Your code may not be readable, may not be optimized, and may crash every time an invalid input is entered into a field but you'll learn from those things. I think most people who end up hating programming do so because they spent too much time on worry about the little things and thus seeing no results for their work. Once you have the basics down you can concentrate of the details of optimizing code, validating inputs, and making your code readable.
Honestly not matter what you write you'll look back at it in embarrassment ten years from now anyways.
Ok thanks will look for a book
Sent from my overclocked Cyanogenmod htc evolution 4g sucka
cesarcerros31 said:
Ok thanks will look for a book
Sent from my overclocked Cyanogenmod htc evolution 4g sucka
Click to expand...
Click to collapse
Buy a Java book that also covers Object Orientation basics and principals. (you'll also need to understand some XML to do android programming) If you want to make kernels/ROMS, definitely look into Linux and shell scripting. (you can find most of this info online though)
By the way, I heard the "Java in 24 hours" book is pretty good.
Sirchuk said:
By the way, I heard the "Java in 24 hours" book is pretty good.
Click to expand...
Click to collapse
it might be good, but it wont teach him how to actually code. Most of those books are made for people that know other languages like javascript/php/c/etc.. and are wanting to move to java and learn the new syntax.
I have no idea as to what you know. So ftw.
Write what ever you decide in a pseudo code, first.
Two things will fall out of that, a design, and java methods of implementing the pseudo language ( as you decide what java syntax does your psuedo code) which invariably returns you to (1) the design. I think it's called iterational refinement, or some such other bs.
So don't get bogged down, now that you know hello, make it start "right"...
You all do realize that eclipse was a machine.. a sunny>dg joke.

Getting Started with Android Development

Hey Everyone!
I apologise if this is a thread or question that gets posted often, I had a search around but I couldn't see anything.
Essentially, I'm just looking for some good resources and tips for getting started with Android development. I have looked at a few books and tutorials (and the official SDK documentation, of course) but I was wondering if I'd missed any good one.
The main issue I'm having is that the things I've found so far seem to assume you know quite a bit about Java development. I come from a pretty experienced C++ background so although I'm very familiar with coding in general, I'm not all that hot with Java. Would you recommend sticking with Android and picking it up as you go along, or waiting and doing some pure-java stuff first? In either case, which are the best books/examples/tutorials you guys have found for an android beginner like me that does know a bit about programming (just not java)?
Thanks in advance!
I think the best way to learn is to get an android book and work through the tutorials in order.
Don't just skim read it though, you need to actually type out the code yourself and think about what each line is doing.
jgittins said:
I think the best way to learn is to get an android book and work through the tutorials in order.
Don't just skim read it though, you need to actually type out the code yourself and think about what each line is doing.
Click to expand...
Click to collapse
Oh absolutely, I'm looking for suggestions for good books, too =)
I found Lars Vogel's introductory tutorials very good when getting started in Android. If you're already familiar with other programming languages, you'll pick up the java needed pretty easily as you go...
- jc
neoKushan said:
Oh absolutely, I'm looking for suggestions for good books, too =)
Click to expand...
Click to collapse
I used Reto Meier's professional android 2 book and thought it was pretty good. The most important stuff to learn at the start is how activities and intents work. The other stuff you can kind of pick up from google as you go.
I haven't developed any application for Android (yet). If you want to develop native code applications, you will need the Android SDK and the Android NDK (gcc rules!). This seems to be the installation order. Check the installation instructions for both of them. The NDK contains some examples. As far as I could see, a native application has a java part and a native dynamic linked library (which is called/loaded by the java part). The NDK also comes with documentation. I guess the Android developer gurus may give you more hints about documentation links.
I am interested in getting started with Android Development as well. I have a background with Java, but that was a year or so ago. I'm sure I could pick back up with it pretty quickly.
What books do you recommend?

[Q] Mindstorms Intergration

Hello all,
During my studies I am designing a project involving a LEGO Mindstorms "Robot" and an accompanying Android app. I would like to send commands to the Mindstorms unit using Bluetooth. I know this is possible as while trialing some ideas in the MIT App Inventor I discovered Mindstorms command blocks.
I apologize if this is posted in the wrong place. I did do some searching around Google for a way to do this, yet I found nothing as of yet. I do not need a full script, just a link to the API/API Commands.
Many Thanks,
-James
You could have a look at the Catroid project. It's an open-source Scratch port for Android which allows you to enable NXT support in the settings.
Maybe you can find some useful information in its code.
Github: https://github.com/catrobat/catroid
Especially this part of the repo might be interesting: https://github.com/Catrobat/Catroid/tree/master/catroid/src/org/catrobat/catroid/legonxt
nikwen said:
You could have a look at the Catroid project. It's an open-source Scratch port for Android which allows you to enable NXT support in the settings.
Maybe you can find some useful information in its code.
Github: https://github.com/catrobat/catroid
Especially this part of the repo might be interesting: https://github.com/Catrobat/Catroid/tree/master/catroid/src/org/catrobat/catroid/legonxt
Click to expand...
Click to collapse
Thanks for the info. Currently reading through the source code now. Does show how much of java I have forgotten though.
Off topic but you have another supporter for your petition
-James
deadwarrior63 said:
Thanks for the info. Currently reading through the source code now. Does show how much of java I have forgotten though.
Off topic but you have another supporter for your petition
-James
Click to expand...
Click to collapse
Welcome and thanks.

Best Way To Learn Java?

So I'm just beginning to try getting into development and saw from several users on here that the first step would be to learn Java, so my obvious question is what's the best way to do that? I have little programming experience. I believe I correctly installed JDK and also have Eclipse and AndroidSDK. A brief but clear explanation pointing me in the right direction would be appreciated. Thank you for anyone who can help.
Imnice777 said:
So I'm just beginning to try getting into development and saw from several users on here that the first step would be to learn Java, so my obvious question is what's the best way to do that? I have little programming experience. I believe I correctly installed JDK and also have Eclipse and AndroidSDK. A brief but clear explanation pointing me in the right direction would be appreciated. Thank you for anyone who can help.
Click to expand...
Click to collapse
The first thing you should do is ignore the AndroidSDK for a while !
It's not worth touching a phone before you can at the very least write a few simple Java programs.
Start with a single class that prints some stuff out to the screen and go from there.
Once you are comfortable with the syntax, I'd say you'd need to be able to write a standalone Java program that has, say, 10 classes in it as a first step.
PicomatStudios said:
The first thing you should do is ignore the AndroidSDK for a while !
It's not worth touching a phone before you can at the very least write a few simple Java programs.
Start with a single class that prints some stuff out to the screen and go from there.
Once you are comfortable with the syntax, I'd say you'd need to be able to write a standalone Java program that has, say, 10 classes in it as a first step.
Click to expand...
Click to collapse
Thanks for the advice! I'd definitely agree that I should be able to read and write at least basic code before putting anything to use, however where should I learn how to write the classes? I downloaded the Headfirst Java textbook because I saw people talking about it and seemed pretty legit. Do you know anything about it or how to go about using it? I can't seem to open the .class or .java files even though I believe I correctly installed JDK. Is there a better place to learn? Thanks for any help you give, clearly I'm new to this, however very interested.
Imnice777 said:
Thanks for the advice! I'd definitely agree that I should be able to read and write at least basic code before putting anything to use, however where should I learn how to write the classes? I downloaded the Headfirst Java textbook because I saw people talking about it and seemed pretty legit. Do you know anything about it or how to go about using it? I can't seem to open the .class or .java files even though I believe I correctly installed JDK. Is there a better place to learn? Thanks for any help you give, clearly I'm new to this, however very interested.
Click to expand...
Click to collapse
I liked the official tutorials much and I'm sure you would like it too.
Just focus on the concept for a while before proceeding any farther.
Good luck.
http://docs.oracle.com/javase/tutorial/java/index.html
Imnice777 said:
So I'm just beginning to try getting into development and saw from several users on here that the first step would be to learn Java, so my obvious question is what's the best way to do that? I have little programming experience. I believe I correctly installed JDK and also have Eclipse and AndroidSDK. A brief but clear explanation pointing me in the right direction would be appreciated. Thank you for anyone who can help.
Click to expand...
Click to collapse
If you want to learn java for android application development then i would refer you to thenewboston
They have 200 videos for Android Application Development starting from the basics.
Saurabh Shah
----------------------------------------------------------------
Hit Thanks :good:
Thanks both of you. I've been looking at the official tutorials on Oracle but some videos would definitely help too. I have a little programming experience so it's making sense to me, just trying to get all the terms right. Videos will help me out with the explanations. Thanks again!
Sent from my SAMSUNG-SGH-I337 using XDA Premium 4 mobile app
Many people like the New Boston videos:
Java (Beginner): http://www.youtube.com/playlist?list=PLFE2CE09D83EE3E28
Java (Intermediate): http://www.youtube.com/playlist?list=PL27BCE863B6A864E3
Android: http://www.youtube.com/playlist?list=PL2F07DBCDCC01493A
I haven't watched any of their videos as I'm one who learns best reading up on that topic.
EDIT: Sorry, didn't see a-ssassi-n's post.
nikwen said:
Many people like the New Boston videos:
Java (Beginner): http://www.youtube.com/playlist?list=PLFE2CE09D83EE3E28
Java (Intermediate): http://www.youtube.com/playlist?list=PL27BCE863B6A864E3
Android: http://www.youtube.com/playlist?list=PL2F07DBCDCC01493A
I haven't watched any of their videos as I'm one who learns best reading up on that topic.
EDIT: Sorry, didn't see a-ssassi-n's post.
Click to expand...
Click to collapse
It's all good, if anything this just confirms that they're good videos lol...if you have any suggestions that have yet to be mentioned, feel free to add them. Thanks.
Imnice777 said:
It's all good, if anything this just confirms that they're good videos lol...if you have any suggestions that have yet to be mentioned, feel free to add them. Thanks.
Click to expand...
Click to collapse
Yeah, if you want a book, I can recommend the Head First Java book. That's how I learned it.
You can also have a look at the Vogella tutorials, especially for Android specific things.
One tip: If you learn Java just to be able to develop for Android, skip the UI parts. They are completely different on Android.
nikwen said:
Yeah, if you want a book, I can recommend the Head First Java book. That's how I learned it.
You can also have a look at the Vogella tutorials, especially for Android specific things.
One tip: If you learn Java just to be able to develop for Android, skip the UI parts. They are completely different on Android.
Click to expand...
Click to collapse
Sounds good, I have already downloaded the Head First Java book, however I haven't been able to utilize it as of yet. Am I supposed to compile the lessons first? Run them with Eclipse?
Imnice777 said:
Sounds good, I have already downloaded the Head First Java book, however I haven't been able to utilize it as of yet. Am I supposed to compile the lessons first? Run them with Eclipse?
Click to expand...
Click to collapse
In my opinion that depends on how much knowledge of other programming languages you have.
If you already know how to use for/while/do-while-loops and if/switch-conditions, you might want to skip those examples. Do it just if you're sure you don't need them.
I didn't run any of the codes. (Wanted to start with Android as soon as possible. :laugh I learn very well just by reading on programming languages because they are basically all the same. So it's not difficult to learn another language if you already know another one.
However, I ran the examples in the books I used to learn my very first languages (Delphi and Python). I just skipped them for Java.
Decide whether it will be helpful for you. If you're in doubt, run them.
The textbook for JAVA in our college is 'Starting out with JAVA' by Tony Gaddis and its really very good for beginners. Just give it a try.
Just read the tutorials, create a new project and start tinkering around. If you have questions, ask them in appropriate java forums.
Tr-man said:
Just read the tutorials, create a new project and start tinkering around. If you have questions, ask them in appropriate java forums.
Click to expand...
Click to collapse
... like this one.
nikwen said:
Many people like the New Boston videos:
Java (Beginner): http://www.youtube.com/playlist?list=PLFE2CE09D83EE3E28
Java (Intermediate): http://www.youtube.com/playlist?list=PL27BCE863B6A864E3
Android: http://www.youtube.com/playlist?list=PL2F07DBCDCC01493A
I haven't watched any of their videos as I'm one who learns best reading up on that topic.
EDIT: Sorry, didn't see a-ssassi-n's post.
Click to expand...
Click to collapse
Now there is a TheNewBoston Android app as well https://play.google.com/store/apps/details?id=com.Thenewboston

Learn how to create android applications / modifications, any recommendations?

Hello,
A short time ago I bought tecnology android and I've realized that I love to make changes, delete, re-program, install Rom, etc..
I always liked this programming, the only limitation I had was my financial situation, but it does not allow a limitation, short steps going forward.
For this reason I come to ask those who already know how to program, where I can find good tutorials, PDF materials, sources serve me to learn programming this wonder?
I would also like you to tell me how hard it can be. I already I have some knowledge of codes, mainly web design, HTML, CSS and some PHP.
Since today I get to work .
Greetings all,
Diego
PD: Translated by Google
help you
Argdie said:
Hello,
A short time ago I bought tecnology android and I've realized that I love to make changes, delete, re-program, install Rom, etc..
I always liked this programming, the only limitation I had was my financial situation, but it does not allow a limitation, short steps going forward.
For this reason I come to ask those who already know how to program, where I can find good tutorials, PDF materials, sources serve me to learn programming this wonder?
I would also like you to tell me how hard it can be. I already I have some knowledge of codes, mainly web design, HTML, CSS and some PHP.
Since today I get to work .
Greetings all,
Diego
PD: Translated by Google
Click to expand...
Click to collapse
you can get some open source cede to learn, and also learn to develop some simple app demo. hope you have a good start
step by step, u can improve a lot
Argdie said:
Hello,
A short time ago I bought tecnology android and I've realized that I love to make changes, delete, re-program, install Rom, etc..
I always liked this programming, the only limitation I had was my financial situation, but it does not allow a limitation, short steps going forward.
For this reason I come to ask those who already know how to program, where I can find good tutorials, PDF materials, sources serve me to learn programming this wonder?
I would also like you to tell me how hard it can be. I already I have some knowledge of codes, mainly web design, HTML, CSS and some PHP.
Since today I get to work .
Greetings all,
Diego
PD: Translated by Google
Click to expand...
Click to collapse
---------- Post added at 11:23 PM ---------- Previous post was at 11:22 PM ----------
maybe i could teach u something.
Argdie said:
Hello,
A short time ago I bought tecnology android and I've realized that I love to make changes, delete, re-program, install Rom, etc..
I always liked this programming, the only limitation I had was my financial situation, but it does not allow a limitation, short steps going forward.
For this reason I come to ask those who already know how to program, where I can find good tutorials, PDF materials, sources serve me to learn programming this wonder?
I would also like you to tell me how hard it can be. I already I have some knowledge of codes, mainly web design, HTML, CSS and some PHP.
Since today I get to work .
Greetings all,
Diego
PD: Translated by Google
Click to expand...
Click to collapse
Have you tried looking at the official web site for Android developers from google? I would post a link, but I still don't have enough reputation to post links. You should be able to find it by just googling.
In any case, you could start with Coursera or Udacity. For Coursera, you may have to wait until a class starts. But for either of them, note that you don't need to pay any money to take their classes. On Coursera, click on the title of each course to avoid the paywall. On Udacity, click on the blue buttons to "get free access to the materials", and don't bother with the "nanodegree" or the "free trial", that's where they ask for your credit card number.
On Udacity, it goes from the extremely easy to the extremely hard. Their beginner materials may be too easy for you. And their intermediate materials usually starts getting too hard for most people at around week 4. If that happens to you, go to the Coursera web site.
A few steps to start:
1. Google: android development
2. Install Android Studio
3. Set up a GIT repository: hint: google GitStack
4. Create a new app using Android studio template: hello world.
5. Start adding features to it.
It's not as hard as it looks .

Categories

Resources