• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Apps learning intern

hi everyone, i am a university student currently working as an intern at a startup company to develop some android apps. i have a backgroud in c++ and a little bit of ruby, and java is sort of unknown to me. i would like to ask that how should i start developing apps, should i spend some time in learning java first ( if yes then what all shoould i know before i get into developing my app, also should i look into J2ME or J2EE), or should i right away start playing with android?
 
Are you good with object-oriented C++ (such as using the OpenGL libraries or similar)? Java's syntax is near identical to that of C++. The main difference is the fact that java is 100% object oriented. It completely revolves around classes and data members/methods.

Although you might be able to pick up on java very quickly, I HIGHLY recommend buying and reading this book: Amazon.com: Sams Teach Yourself Java in 24 Hours (5th Edition)…

Although I RARELY recommend a Sam's Teach Yourself book, this one is very good. It covers all of the basics in enough detail for you to grasp it easily but still have a good understanding of it and it also covers some of the more advanced topics as well.

After you are comfortable with java (or just plain ready to start working with the Adnroid SDK), you have two options:
1) hit up the online documentation and start playing around
or
2) buy and read a book (or two) on the android SDK. Although it utilizes the java platform, there are things that are quite different when working with android software than if you were working with a J2SE PC app.

Whichver option you choose is up to you. I went the latter route and it sharpened the learning curve in the long run.

If you do choose the latter route, I HIGHLY recommend the following book:

Amazon.com: Android Wireless Application Development (9780321627094): Shane Conder, Lauren Darcey: Books

Happy coding!


EDIT: Btw, I came from a C++ background as well, so I know exactly how you feel. ;)

EDIT EDIT:
Oh yea, you might want to also check out the Android NDK (Native development kit). It uses C++ and allows you to do some lower-level stuff like launchers.
 
Upvote 0
hey guys, thanks for making me comfortable in this forum!
I apologize for may late expression of gratitude, but i though i would not get a quick response!

@cp1 - I looked at some java tutorials online and made an applet. the syntax is indeed very similar to C++.

@Jonbonazza - with C++ I have schoolish knowledge, haven't really used it in my internships before, so i haven't done any graphics in that!

I did some hello world and hello views tutorials today, they were very interesting!

I found this link - Connecting to MySQL database | Hello Android
and now I would try and connect to my database ( I use a WAMP server, so i have MySql database) . I plan to do that through http requests. is there any other alternative that works better?

thanks for helping me out :)
 
Upvote 0
hey guys, thanks for making me comfortable in this forum!
I apologize for may late expression of gratitude, but i though i would not get a quick response!

@cp1 - I looked at some java tutorials online and made an applet. the syntax is indeed very similar to C++.

@Jonbonazza - with C++ I have schoolish knowledge, haven't really used it in my internships before, so i haven't done any graphics in that!

I did some hello world and hello views tutorials today, they were very interesting!

I found this link - Connecting to MySQL database | Hello Android
and now I would try and connect to my database ( I use a WAMP server, so i have MySql database) . I plan to do that through http requests. is there any other alternative that works better?

thanks for helping me out :)

Glad to have ya.

As for SQL databases, the android SDK is sort of... lacking when it comes to this department. As you know, the Android SDK currently only has support for SQLite3. This is the only method for working with databases. With that said, it is only useful if the database is installed on the device itself (i.e. the sd card). If the database is installed on am HTTP server, then boy are you in for a ride!

In order to do something like this, you would have to have 2 "applications" (And I use this word VERY loosely here. You will see why shortly). The first of which is a server-side script (usually written in PHP.. see why I used "application" loosely now? lol). that handles the requests to the database and then sends the results to the phone. The second application is the actual android application. It will actually send a request to the PHP file (or w/e method you chose) you created previously and then once the result is returned, it will process the results. The results are usally formatted using JSON. Check this link out. It is a very helpful tutorial:
Connecting to MySQL database | Hello Android

If you need help with PHP, go here:
PHP Tutorial

I hope I have been of some help!

Also, just some personal advice, as a fellow Computer Science major, I HIGHLY recommend reading up on various languages and learning as much as you cna about them in your free time. being a computer scientist is like being a professional translator. The more knowledgeable you are about various languages and the more languages you are "fluent" in, the more valuable you are to prospective employers.

Good luck!
 
Upvote 0
hey guys, thanks for making me comfortable in this forum!
I apologize for may late expression of gratitude, but i though i would not get a quick response!

@cp1 - I looked at some java tutorials online and made an applet. the syntax is indeed very similar to C++.

@Jonbonazza - with C++ I have schoolish knowledge, haven't really used it in my internships before, so i haven't done any graphics in that!

I did some hello world and hello views tutorials today, they were very interesting!

I found this link - Connecting to MySQL database | Hello Android
and now I would try and connect to my database ( I use a WAMP server, so i have MySql database) . I plan to do that through http requests. is there any other alternative that works better?

thanks for helping me out :)
I would recommend smaller steps, if that is possible. A proper web service and data caching/syncing implementation is not a trivial thing to do. Most developers spin off threads that hit a web service and return data in memory to the Activity, but even that is not acceptable. You'll really need to understand the Activity lifecycle, application lifecycle and how Android reclaims memory to properly implement this and understand why simply spinning threads to hit web services and return data is not reliable.

A high level overview of possible routes to take for implementing web services and syncing can be found here. If you are up to all that at this point, go for it.

What I recommend is familiarizing yourself with ListViews. They're extremely common in mobile apps and not always trivial. You can find some very good information about the Android ListView here. You may benefit from finding a simple example online and making a small application to "learn" ListViews before watching the video. Many things will make much more sense if you do this.
 
Upvote 0
@jonbonazza- first of all, thanks a lot for explaining the process! i am working with a friend of mine who is taking care of the server side, and he provided me with a php script that will take my sent values and write them to a text file.

@andywhoa - hi, thanks for providing those 2 videos. i went through the first one completely and for the second one while i was about 10 minutes into it , i thought should do the ListView tutorial first, so i started doing that. But i guess i need to go through those videos again, as the do tell important stuff!

i have posted few problems that i am encountering right now, please help me in solving them!
they seem to be very simple, but i guess i am overlooking some stuff!

thanks!
 
Upvote 0

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones