Thinking of getting into the Mobile Phone programming scene? - General Questions and Answers

Hello All,
I am thinking of diving into the coding world for mobile phones and would greatly appreciate your thoughts.
As per experience I had a few programming classes in college and had no problems acing them.
Having said that I have had no further experience with programming. I am fairly comfortable with Visual Basic and C++.
With that which platform would you suggest is the easiest to get your foot at the door. From research I believe is Objective C for Apple, Java for Android, Silverlight for Windows 7 and Javascript for WebOS.
If it helps I did create my first "Hello World" app in WP7 following the eBook by Charles. ....I know nothing to brag about...hehe but atleast lets you guage my aptitude.
Fire away!

Anyone? Some wise words?

UNhooked said:
Anyone? Some wise words?
Click to expand...
Click to collapse
Just go for it, nothing to lose. I would start by programming for the device you have.
come up with an idea and get to work ... It's not so easy, so you really have to enjoy it to learn it.
Sent from my R800x using XDA App

Moved to Q&A

Related

Can someone point me in the right direction?

Before I get into details I will go ahead and say I am a noob so please take it easy on me. I just registered for school, for CIS computer programming. I am a techno junkie, mostly about cell phones in general. I'm going to school to help my wifes' grandfather implement his software on to the mobile platform. Not sure about all the details yet, but I feel developing is my purpose in life. My main love as of right now is the android OS. I'm not a big fan of apple but they do have a very unique thing going on. My main question is about programing languages, and what is the best place to start, I've definitely heard mixed things as I know theres no definitive" answer per say, but any developers input would be greatly appreciated. I'm a deer caught in headlights when it comes to this.
Sent from my SAMSUNG-SGH-I897 using XDA App
Anybody?
Sent from my SAMSUNG-SGH-I897 using XDA App
I first started with c++ which gave me a grasp of programming. Its retty easy to learn. It is also easily iplemented, I used things I learnt in that to help debug my actionscript coding
Vengeance
Sent my rooted X10i using XDA app
I don't think it matters much where you start with languages but rather when will you have completed the circle of several languages.
I firmly believe you need to learn assembly language, then a language that is essentially a pre-processor for assembly such as C, then C++, then Java and then higher level more abstract domain specific languages. Only after you understand where they each stand in terms of abstraction from hardware will you be good to go.
I also believe it is imperative that you understand linking, loading and all that is required to 'boot strap' code.
Just my 2 cents worth, I am sure many will disagree.
thanks so much, i really appreciate yalls advice. this is just what i was looking for. looks like a long road ahead of me...

[Q] Java for Android

Ok, been using these forums for quite awhile to mod my various devices. However I've never had to post, so you'll have to forgive that this is in the wrong board as it wont let me post in the right one due to lack of posts.
I want to get into actually developing Android apps, and then eventually get into developing ROMs and such. From what I've seen apps would be programed in Java, and I've seen links to a few web resources to learn Java. But none on them answer what I am really looking to find out. I need to know what "flavor" of Java is best to use. Java 1? 2? 6? Java++? Visual Java? Etc etc etc.
I don't want to waste my time learning Java 6, if Android is only compatible with Java 4, for example. And vise versa. Like-wise I don't want to learn a version of Sun Java, if Java++ or Visual would be be better/give better functionality.
In closing, I just need to know what flavor of Java would be best to learn. Thanks.
It's not really java, it's android.
Here you have everything to start:
http://developer.android.com/guide/index.html
And to set up the environment for developing:
http://developer.android.com/sdk/index.html
Sent from my GT-P1000 using XDA App
knowing java is a good start, think of android like an advanced java applet programming.
leblid said:
knowing java is a good start, think of android like an advanced java applet programming.
Click to expand...
Click to collapse
Yeah, exactly. And that's what I am looking for. Somehing to get my base knowledge started on. But their are allot of diffrent versions of Java and I don't really know which would be the best to use as a jumping off point.
I have also looked at the Android dev site, but it isn't really going to "teach" me from scrach.
Sent from my DROID2 using XDA App
Glgamesh said:
Yeah, exactly. And that's what I am looking for. Somehing to get my base knowledge started on. But their are allot of diffrent versions of Java and I don't really know which would be the best to use as a jumping off point.
I have also looked at the Android dev site, but it isn't really going to "teach" me from scrach.
Sent from my DROID2 using XDA App
Click to expand...
Click to collapse
Again, if you plan to develop for android, it's better to focus on android, and not learn first java.. It's like learning first to ride a motocycle, and then go for the car.... It has some common ground, but..
If you want to learn from the scratch, the links I posted are your point. You can also take a look to the tutorials:
http://developer.android.com/intl/es/resources/tutorials/hello-world.html
If you still want to go through Java.. I reccomend you take a look to this:
http://download.oracle.com/javase/tutorial/java/index.html
http://download.oracle.com/javase/tutorial/
and start from Java SE 6 (http://download.oracle.com/javase/6/docs/)
http://www.oracle.com/technetwork/java/index-jsp-135888.html
aitorTheRed said:
Again, if you plan to develop for android, it's better to focus on android, and not learn first java.. It's like learning first to ride a motocycle, and then go for the car.... It has some common ground, but..
If you want to learn from the scratch, the links I posted are your point. You can also take a look to the tutorials:
Click to expand...
Click to collapse
Oh ok, I get it now, thank you for breaking it down like that. I thought it was the exact opposite, I thought you needed Java to lead into Android. I'd looked at several books to learn Android, but all the reviews said that you should know Java before getting the books. (Hence where I got the idea) I actually read this post earlier, and I have given the Developer section of the Android site a LOT deeper look, and it looks like you were very much correct. Upon first glance I didn't think it was actually be what I needed. Thank you for your assistance and I am sorry for the missunderstanding.
Glgamesh said:
Oh ok, I get it now, thank you for breaking it down like that. I thought it was the exact opposite, I thought you needed Java to lead into Android. I'd looked at several books to learn Android, but all the reviews said that you should know Java before getting the books. (Hence where I got the idea) I actually read this post earlier, and I have given the Developer section of the Android site a LOT deeper look, and it looks like you were very much correct. Upon first glance I didn't think it was actually be what I needed. Thank you for your assistance and I am sorry for the missunderstanding.
Click to expand...
Click to collapse
No need to ask for sorry we all have to start sometimes from zero it's true that knowing java helps, but I think that if you have some notion on OOP (object-oriented programming) will be enought
Sent from my GT-P1000 using XDA App

What do i need to know

if i want to programm an app for Android.
Is it Java or C++ ? I read that with the new SDK you can use C++ is that right? Or can u only use it for some special parts?
Sry for this noob question:_/
I suggest you invest in this book,
http://www.amazon.com/Android-Application-Development-Dummies-Computer/dp/047077018X
The Kindle version's probably a little cheaper.
android development is done in java unless you want to use the ndk
generalamerica said:
I suggest you invest in this book,
http://www.amazon.com/Android-Application-Development-Dummies-Computer/dp/047077018X
The Kindle version's probably a little cheaper.
Click to expand...
Click to collapse
You don't need a book, just go to developer.android.com.
Sent from my SGH-T959 using XDA App
Hi,
thanks for your replies.
Do i need to learn Java seperately or can i start with the dummie book?
Why i dont need java for the NDK?
ok i saw that i can find there (developer.android.com.) some Tutorials and sample codes. But if i know nothing about Java - is this the right start? Or was i just in the wrong section (i was in resources)
eaglesuper said:
Hi,
thanks for your replies.
Do i need to learn Java seperately or can i start with the dummie book?
Why i dont need java for the NDK?
ok i saw that i can find there (developer.android.com.) some Tutorials and sample codes. But if i know nothing about Java - is this the right start? Or was i just in the wrong section (i was in resources)
Click to expand...
Click to collapse
If you're good with c++ then learning Java should be pretty easy. In fact extremely easy since you don't have to worry about memory management and the whole pointers/references/etc thing is straightforward in java.
Sent from my SGH-T959 using XDA App
So your response according to the question i throw in is, that i need to learn Java first, right ?
I'm not good in C++ I just started once, but didn't read more than the first 100 pages in the book xDD
If there's nobody you can talk to, about programming - it's kind of boring and isolating D
eaglesuper said:
So your response according to the question i throw in is, that i need to learn Java first, right ?
I'm not good in C++ I just started once, but didn't read more than the first 100 pages in the book xDD
If there's nobody you can talk to, about programming - it's kind of boring and isolating D
Click to expand...
Click to collapse
Yes definitely learn java first Don't worry about c++. There are many good, free online java "books" that are great for learning. Once you are comfortable with Java then you can go through the tutorials on developer.android.com
Good luck!
Sent from my SGH-T959 using XDA App
While I admire anyone wanting to learn how to write code, it's a little more complicated than that.
I'm a professional programmer...I know how to code in about 6 languages and picked-up Android about 3 months ago. While any programming is hard, developing for a smartphone is even harder in my opinion. I consider myself a complete beginner in Android irregardless of my background.
Programming is so much more than reading a book or some online tutorials. If that was the case, I would pick-up some books and become a plumber or electrician etc.
My advanced COBOL class started with 25 students; there were 10 left at the end
(and I would say that about 5 of the 10 were "pure" programmers)
That being said, it can be done...be prepared for a LOT of hard work, time and dedication. If you make it, it can be one of the most exciting things you do...creating something out of nothing!
Well sure, there's more to it than that, but where else is there to start? I started coding about 10 years ago, first with BASIC on my TI 83. I then picked up a few books on Java, C, Python and C++ and worked my way up from there. I haven't developed for Android yet, mostly out of lack of time, but I'm sure you're right in that it is probably more difficult. However, to say coding isn't more than reading a few tutorials is, to me, not correct. Unless you have the means to pursue CS classes, there's no other way to do it than to pick up a few books, read a few tutorials, watch a lecture here and there and just dive in.
It's easier now than every to learn how to code and you shouldn't try to discourage someone who is interested from diving in and seeing what they can write. Who's to say that you can't read a few books and become a decent plumber or electrician? I built up my car from books and wired houses from reading a few books and talking to electricians as well as learning how to design, build and solder circuit boards entirely from online resources.
I do agree with you though, in that learning how to code is a long and difficult journey that requires a lot of patience and hard work. You're going to have to invest a lot of free time if you want to learn properly, but trust me, it is completely worth it!
Sent from my ADR6300 using XDA App
I really tired to make my point that it's not impossible and to not discourage anyone. It's "easy" to create a smartphone app as they are fairly short...get into some 20k, 40k, 100,000 lines of code programs and you will soon learn about complexity
To be more helpful:
1. Start out with the basic "Hello World" app
2. Create a program that takes some user input and writes it back out to the screen
3. Keep expanding your coding experience with new topics and Android features
For books, I really like 'Professional Android 2 Application Development" by Reto Meier For JAVA and C++, I don't think you can beat the Deitel and Dietel books.
Look for them on Amazon and then check "Prices New and Used". I got a brand spanking new "Objective C for JAVA developers for $1.99 + S&H!...like $5.00 total
I've heard head first java is a good book and was going to pick it up. Any thoughts? Has anyone else bought this book?
StyrofoamTumor said:
Well sure, there's more to it than that, but where else is there to start? I started coding about 10 years ago, first with BASIC on my TI 83. I then picked up a few books on Java, C, Python and C++ and worked my way up from there. I haven't developed for Android yet, mostly out of lack of time, but I'm sure you're right in that it is probably more difficult. However, to say coding isn't more than reading a few tutorials is, to me, not correct. Unless you have the means to pursue CS classes, there's no other way to do it than to pick up a few books, read a few tutorials, watch a lecture here and there and just dive in.
It's easier now than every to learn how to code and you shouldn't try to discourage someone who is interested from diving in and seeing what they can write. Who's to say that you can't read a few books and become a decent plumber or electrician? I built up my car from books and wired houses from reading a few books and talking to electricians as well as learning how to design, build and solder circuit boards entirely from online resources.
I do agree with you though, in that learning how to code is a long and difficult journey that requires a lot of patience and hard work. You're going to have to invest a lot of free time if you want to learn properly, but trust me, it is completely worth it!
Sent from my ADR6300 using XDA App
Click to expand...
Click to collapse
LOL I started as kid with BASIC and TI83 applications, too.
IMO It's not learning the languages that's so difficult, it's learning how to apply what algorithms, data structures, etc to solve a problem. Then there's the really involved details such as how compilers, OS managed memory and synchronization, etc work.

YANPAT (Yet Another Noob Programming for Android Thread)

Good afternoon,
I want to start learning programming for Android, as I am sure many before me have said. And as the title very well expresses, I am completely virginal in relation to programming. OK, some years ago I punched some Delphi lines, but what I learned about it can be amounted to zero
In order to commence the task, I count with a netbook, running Ubuntu 11.04, an Android phone (Xperia Play) and an Android tablet (Advent Vega), two "starting in Android" books, HTTrack in order to save websites for offline reading, a vacant summer, and the enthusiasm to learn something new. I don't have a specific goal in mind (is that a problem? Should I aim for something concrete to do as well?) but I think that, if I win certain knowledge, I will be able to create a useful app to share here.
The reason why I've opened this thread is because it should serve as a log of what I am doing concerning this endeavor, and maybe spark some support, some naysaying, some interesting discussions and some natter. At any rate, I hope to be able to contribute something good!
I am interested also. I was going to program for the iOS but can't bring myself to buy a MAC.
I have a lot of VB 6, VB.NET and Java - JSP development experience. My 10 year old daughter is a big gamer and wants to make games when she is older. I want to get her to help me make a small game so she can see what is involved in programming.
I still need to search for resources but if anyone has any good starter tutorials that would be great.
Sorry not trying to hijack your thread Logseman. Just don’t want to make more threads on the same topic.
Thanks
It's cool, in fact it'd be great if other people "out themselves" as potential programmers. It'd be a bit like a blog then, with the whole commenters sharing experiences . From what I've read your Java experience should make programming in Android quite easy, as the OS itself seems to be. I'm going to fire up my netbook and start the whole deployment. It can take the whole night easily...
After a whole night of downloads, I have deployed the SDK and eclipse on my netbook. They should make it more amenable, IMO, not only in this case but in installations in general. Installations are boring, as are videogame loading screens, but many of the latter feature something to make it worth your while.
I recently started android developing too (im 14 ) but since i was teaching myself it was hard to find a good book, but hello android by ed burnette easily teaches you how to make anything from 2D graphics to web views and 3D games. Tell me if you need a link, hope this helps
is that possible learn android programing without know any programing language before ?
kancil168 said:
is that possible learn android programing without know any programing language before ?
Click to expand...
Click to collapse
Sure you can. At the end of the day you have to start somewhere. Why not Android ?
I have an EEPC netbook with Ubuntu Linux also. I think I will pull it out and see what I can do with it.
Does anyone think it would be good for this or should I use my HP windows laptop?
I hope we can get some feedback from some experienced Android Devs.
Well, I am happy to see people sparked by the same idea! I hope we all get to do something worthwhile!
Ncaissie, I'd recommend the Linux netbook. It's more portable, which is particularly important for your assistant if she wants to handle part of the process and I have to say, after instaling many Linux distros, I find Ubuntu 11.04 a perfectly stable, quick and efficient OS, much more than Windows or other Linux distros. I am in fact pleasantly surprised as I was unconvinced by Unity in 10.10. Aside of that, since you're programming in Android, which is a mixture of Java and Linux, it reduces the confusion if you work with a Linux host as well, in my opinion.
About the learning process, I've been reading a bit about Activities and Services and Android building blocks. I've decided on my first milestone: a "Hello XDA" app. If time allows, I will have it done before this weekend. If I can't post it after this weekend, I'll stall the project as it would be clear I am not focused enough.
14yrolddeveloper said:
I recently started android developing too (im 14 ) but since i was teaching myself it was hard to find a good book, but hello android by ed burnette easily teaches you how to make anything from 2D graphics to web views and 3D games. Tell me if you need a link, hope this helps
Click to expand...
Click to collapse
have read good reviews for this book but I decided that I would learn Java before android since I'm planning on taking computer science anyway.
Sent from my SGH-T959 using XDA App
I was set to buy a cheapo Android phone as a development device. Turns out I made the worst choice: the Huawei U8110 Selina I chose seems to have issues about being recognised by ADB. Had I known this, I'd have taken some other one...
Fate conspires to keep me away from development Now my Xperia Play is not mounting the SDCards I feed it. I need to reflash it with FlashTool, but since I only had Linux installed on my computer and Flashtool requires Windows, I'm having to set up a dual boot environment, which implies wiping Linux, installing Windows and setting up two partitions, and then installing Linux again. Seriously, it's crap.
I really like this post,good luck with it.
Only one thing- I think it's important that you'd come with an idea for an app,rather than learning Android in general.
It will keep you motivated to move on and progress.
I've recently started developing for android too. While they get mildly bashed sometimes I've found that the apress books are pretty good. "Learn java for android development" by jeff friesen is long and very technical, and also requires that you be paying attention, but gets a pretty decent amount of java floating around inside your head before you even have to open up eclipse.
Honestly though I found it easier to work on a project and when I needed something that I didnt know to search around and find code snippets or dig through my books until I find the right answer and then move on to the next problem.
Good Luck
Sent from my SCH-I500 using XDA Premium App
tofira said:
I really like this post,good luck with it.
Only one thing- I think it's important that you'd come with an idea for an app,rather than learning Android in general.
It will keep you motivated to move on and progress.
Click to expand...
Click to collapse
I do have an idea in mind, and it is related with the security pattern grid. Is that part of Android opensourced?
Enviado desde mi VegaComb usando Tapatalk
I wasn't able to pick up the pace this weekend But my goal is clear for now. I'm up for a Hello XDA app.
Well, here comes my very first apk... plus source (complying with XDA's rules ) I managed to screw some things because I typed the code incorrectly. Eclipse moaned in two lines until I discovered two syntax mistakes. Just therefore, because I saw them, I think I did the proper thing in typing this example code even if I had it in front of me. I will try not to copy-paste code if I can avoid it.
I've installed HelloXDA in my XPlay and it works as intended, and per the source you can see there's no malware in the app. And I know that I'm making a bit of a fuss about a stupid HelloWorld app, but hey, it's MY HelloWorld app, I coded it
I like this thread. I'm also going into android programmins as a noob still in highschool. I've got a question: I am looking into creating a home screen replacement app, so what do you reccomend me to do: Learn java first or just read through the sections of the android books I've purchased that talk about homescreens?
Sent from my DROID2 GLOBAL using Tapatalk
Start with something smaller than a homescreen. Mess around with some tutorials.
roblikeschocolatecake said:
I like this thread. I'm also going into android programmins as a noob still in highschool. I've got a question: I am looking into creating a home screen replacement app, so what do you reccomend me to do: Learn java first or just read through the sections of the android books I've purchased that talk about homescreens?
Sent from my DROID2 GLOBAL using Tapatalk
Click to expand...
Click to collapse
what book is that?
Sent from my SGH-T959 using XDA App

[Q] about knowledge and jobs

Ok so I'm really interested in android development and I'm gonna get some books to read about them. Books that I'm gonna get are C and Java for general OS knowledge and to develop apps. So I'm wondering what jobs can I get in future??Apart from these:
-Working in Google[i made this an exception at the moment since its not easy to be the top]
-Making apps and sitting at home
-Making mobile apps for companies
Hope to get some good replies, cause I don't wanna choose the wrong path and have my life ruined/jobless in future
PS: Is android OS/kernel 100% on C only?? no C++ or C#? also are the apps 100% Java??thanks!
Learning Java and C++ isn't going to ruin your life even if it turns out to not be what you wanted. It takes like, a semester to get the basics down - this isn't four years of your life. You can even teach yourself.
Writing code is like writing English - most people can learn to do it. It's the creativity and ability to problem solve that makes a difference.
Just learn C++ or Java (flip a coin) and see if you like it and if it's a kind of thinking and problem solving you're good at or even like. It's not going to take ages. It's like taking a cooking class to see if you like it - you're not going to be a master chef or even a good one at first - but you won't know unless you try. And even spending a year and not wanting to go on isn't the end of the world.
Sent from my SGH-T999 using xda app-developers app
wong93 said:
PS: Is android OS/kernel 100% on C only?? no C++ or C#? also are the apps 100% Java??thanks!
Click to expand...
Click to collapse
Yes, Android Kernel is actually a modified Linux Kernel which is 100% written in C. No C++ or C# is involved. Android OS is written in C, C++, Java.
And yes, all the android apps are written in Java and there are places where XML editing is performed.
Pennycake said:
Learning Java and C++ isn't going to ruin your life even if it turns out to not be what you wanted. It takes like, a semester to get the basics down - this isn't four years of your life. You can even teach yourself.
Writing code is like writing English - most people can learn to do it. It's the creativity and ability to problem solve that makes a difference.
Just learn C++ or Java (flip a coin) and see if you like it and if it's a kind of thinking and problem solving you're good at or even like. It's not going to take ages. It's like taking a cooking class to see if you like it - you're not going to be a master chef or even a good one at first - but you won't know unless you try. And even spending a year and not wanting to go on isn't the end of the world.
Sent from my SGH-T999 using xda app-developers app
Click to expand...
Click to collapse
Is there a lot of C++ in android?? i'm kind of confused lol, so its kernel is fully written in C , and the OS is C and C++ while apps are Java??btw what are some jobs I can get i Im really a pro in android one day?? and what if I do not take android?? what path can i go with these languages??
coolsandie said:
Yes, Android Kernel is actually a modified Linux Kernel which is 100% written in C. No C++ or C# is involved. Android OS is written in C, C++, Java.
And yes, all the android apps are written in Java and there are places where XML editing is performed.
Click to expand...
Click to collapse
thanks for the reply,btw any idea what jobs can I get??
wong93 said:
thanks for the reply,btw any idea what jobs can I get??
Click to expand...
Click to collapse
Jobs will be mainly based on your education and experience. Just do stuffs that proves your experience, add it to your Resume, and if employers are convinced you'll get the job. There are countless opportunities for Android development.
Also, you can read this similar article which was published in Portal:
http://www.xda-developers.com/andro...s-dont-work-on-the-internet-xda-developer-tv/

Categories

Resources