The basic concept of android is JFX(or JSP) like development of UI in java. You should know that android testing using emulator is very slow (unless you do it on an actual device eg droid incredible)- and unlike iphone you can freely deploy your apps on your phone. Android (like java permission file or vista/widows 7 model) like to warn before installing application - and applications have to indicate what kind of permission it needs.
Prerequisites:
Before starting Android development - you should know java first - by reading books like Core java (other programming back ground is useful) etc
Getting Started:
You should get started using :
http://www.vogella.de/articles/Android/article.html (or androids website).
Other links:
With android - you have to develop java program like in 90s(but at least its still java) :
http://developer.android.com/guide/practices/design/performance.html
You can access unix shell (eg adb shell) and analyze memory from this tutorial:
http://kohlerm.blogspot.com/2009/04/analyzing-memory-usage-off-your-android.html
Open GL ES
Android uses Open GL ES(subset of Open Gl for mobile ) for game development- just like Iphone.
Its however tough to find good books or a good tutorial on Open Gl Es for android.
Android Game video tutorial:
http://www.edu4java.com/androidgame.html
Android 3D game tutorial
http://www.droidnova.com/android-3d-game-tutorial-part-i,312.html
Making games on Android
http://www.brighthub.com/hubfolio/matthew-casperson/blog/archive/2010/01/04/making-games-on-android.aspx
Getting started Link -in games - http://www.brighthub.com/hubfolio/matthew-casperson/blog/archive/2010/01/04/making-games-on-android.aspx
OpenGlEs for Iphone(similar to OpenGl Es on Android)
http://iphonedevelopment.blogspot.com/2009/05/opengl-es-from-ground-up-table-of.html
Opengl(not openGles) redbook
http://fly.cc.fer.hr/~unreal/theredbook/
Android Books :
a) General Ones:
This a tough one(as they are moderate quality or will easily get outdated).
However top books seems to be :
Professional Android 2 application development (This one covers most topics- but does not explain in detail)
Pro Android 2 ( This one is similar to above book.. But I dont like reading on the cheap - yellow paperback pages provided by apress . This book was hard for me to get online - but i could preview it at barnes and nobles store - and it seemed verbose to me. )
The above two books covers the most topics - and may be your best bet now(yet- june 2010).. However there style is not good(verbose, making book huge with code/examples without clearly explaining them)
(The Unlocking Android seemed promising to me - but was outdated. The Hello, Android may be promising. I however liked the tutorial style(not content) of the heavily criticized book - Android Application Development: Programming with the Google SDK )
I have however chosen to download pdf books from http://www.commonsware.com/ which provided good content for the price - but its not a replacement for having physical book in your hand.(This site however did not post to https by default- and had no facility to change password)
b) Game Books:
There are insufficient material on developing games. But here you go:
Pro Android Games (its useful - only if you already know open gl and c++)
Beginning Android Games (not yet released)
You may need to buy books to brush your maths (but first try some games and see if you get around by googling)
3D Math Primer for Graphics and Game Development (Wordware Game Math Library)
Mathematics for 3D Game Programming & Computer Graphics (Game Development Series (Charles River Media).)
Running google Samples:
Once you have got your eclipse setup . The next step is to run google samples(that you downloaded with sdk).
If you are developing games - then googles snake example is a good one to start.
If you have a sample android project (new android project) in eclipse then - Copy googles sample
code for Snake into your project - and then remove main.xml from res/layout.
(or preferably use New Android Project ->Create project from existing sources)
You should now be able to run it on your device(like incredible) or emulator..
For me the emulator took to much time and I gave up. On incredible it ran OK on second
attempt(after doing force crash on first).
While running it - it displayed a confusing message that I need to press on some "up button".
to start playing. I quickly realized that they meant - that i need to move the track ball up.(I hardly use the
weird track ball in droid incredible)
NOTE: If your PC (or maybe phone) is sleeping then this device may go offline.
Hence you may get below error:
[2010-06-03 13:06:23 - Demo ] java.io.IOException: device (HT0DEVICE) request rejected: device offline
To fix this just kill adb.exe (From task manager) or try restarting eclipse.
MY FIRST SAMPLE CODE on Android(droid incredible):
I looked at googles sample code for Text To speech. It was too much details for a sample . Hence I used it to write my own sample. The full code of my Text to speech sample code is here:
http://android-java.blogspot.com/2010/05/tutorial-to-develop-text-to-speech-app.html
Deploying on HTC droid incredible :
The current google sdk(2.1 version 7) does not have incredible settings in its
USB configuration file. Hence when you connect your computer to charge it.
It may say that "ADB" could not be installed. Without it - you will not
be able to see - droid incredible - in target devices in eclipse(or adb devices will
not show anything).
I followed instructions on : http://www.flexjunk.com/2010/05/01/installing-htc-incredible-android-sd-drivers/
It did work on one of my xp machine(but strangely I could not make
it work on another XP machine.. maybe due to jdk or driver corruption).. Be careful
- in trying USB debugger to fix this(as my antivirus says that most of them have virus)
Running on droid incredible device :
After the ADB was installed- I just created default android project .
I then ran it - and it automatically chose my htc as target(as i did not set up any other emulator devices) . It also automatically installed in my device(with android market icon). I was pleasantly surprised that it ran immediately!(ie did not take forever to load/run - unlike when you run with emulator. It may make sense to directly
test on device.
Debugging Issue: However - i made some mistake when I tried to run TextToSpeech sample provided by google sdk(after I edited it).. It did not give any good error message . All it said on the device was that - I need to press button to forcibly close the application. Luckily - I knew the changes I made and i removed it.(it was perfectly compile application - but i had added some color stuff). Hence I would recommend that you do development in small steps - else you wont know - why your stuff is failing.
Other notes:
- There is no api to send automated email(you can just open email window).
and abused by virus) For sending email you may have to use (huge size) - ported version of javamail(as javamail is dependent on awt).
- There is facility in the api to "place phone call" . But I could not find anyway to hook - my text to speech sample into it.(ie can not leave automated telephony message)
- Similarly I could not find any easy equivalent of cron(though background services and alarms can be used)
- you can use alarms to set recurring alarms which works reliably - only when the phone is awake http://developer.android.com/reference/android/app/AlarmManager.html
- There is no developer api to put reminder in - phone users calendar - (for payment reminder etc) per http://jimblackler.net/blog/?p=151
- if you have mobile website - then you may use webview in your app.http://developer.android.com/resources/tutorials/views/hello-webview.html
- Once you install sdk - you can use ddms.bat from tools directory - > Choose a device -> and do device capture to do screen shots of stuff in your phone.
- If you want to develop cross mobile OS apps - and using HTML/JS then you may consider Titanium Appcelerator or PhoneGap
(initial impression is that Titanium is more focussed on IPhone/Android . But PhoneGap which provides little framework is truly more portable)
Other related Blog:
You may click on my blog - http://mobile-web-html.blogspot.com/ for steps/tips on creating mobile website for android,iphone. (as not many users will like
to download apps - as they can use alarms/services to impact battery life)
You can click this : choose android phone/usage/tips link to learn(or go back) more about deciding on how to choose best android phone. (developers should prefer phone that is easily rootable - to test
your app on different/upcoming android versions ). You may click here for droid incredible specific review/tips/usage.
Thanks for this info, It will be helpful to me.
ReplyDeleteAndroid Development
post some appinventor tutorials dear...and you can send us @ andsollution@gmail.com
ReplyDeleteWell said, I blog because I enjoy it. I try not to get caught up in the comparison game. It is a process and you really do have to call on your better angels at times, but the minute this stops being fun for me about iphone and application development. Thanks for this great post.
ReplyDeleteAndroid development are very famous for in the mobile era.
ReplyDeleteThe Team Android phenomenon is spreading like wildfire. Lots of people are turning to the openness and diversity of Android smartphones when choosing a mobile device. The iPhone boasts the most robust selection of apps, but many developers are now also creating software for the Android Market.
I wanted to make 3d games for indroid.
ReplyDeletebut was having so many issues.
but when i read your article in this the most is Tutorial of Indroid Game
so it was easy for me to work.
thanks for sharing this
get a facebook fan page
By read your post I got a good idea about Android application development.This is one of the valuable post.
ReplyDeleteAndroid app developers
You are address way to advance your business, peoples can calmly to accepted about your business or restaurant and to your business to be added
ReplyDeleteAndroid developers
That's a good piece of code you posted here. And it'll be great to see some appinventor tutorials here. Regards, Thomas from android programming
ReplyDeleteAwesome post, can you please give more details for android mobile app development, really very nice post.
ReplyDeletehire android app programmer | offshore software development company
Guys check this out..... If you have ideas on mobile apps for use on phones, submit ur apps a contest that gives you a chance to prove your mettle. Whether you are a professional developer or a student, every1 can submit their apps developed by using the Series 40 Web apps SDK and win.
ReplyDeleteRegister today to submit ur apps....
http://bit.ly/ICUrkh
I would like to thankx for the efforts you have put in writing this site. I’m hoping the same high-grade post from you in the upcoming as well.
ReplyDeleteandroid app development
DeleteI have seen your android coding.Your coding is very interesting.Appreciate you sharing, great post.Really thank you! Fantastic.
Interesting Article.
ReplyDeleteHoping that you will continue posting an article having a useful information.
Android Apps
your site is very informative & Gracefull.
ReplyDeleteThank you
iPhone application development
iPhone app development
iPhone game development
iPad application development
mobile application development
You have provided very good topic..
ReplyDeleteThanks,
Android App Development Books
Android Tutorial for Beginners learns android programming and how to develop android mobile phone and ipad applications starting from environment setup.
ReplyDeleteBureau à louer à casablanca
ReplyDeleteI surprise how much effort you put to create such a great informative website! Android Game Development
ReplyDeleteVery informative ..i suggest this blog to my friends..Thank you for sharing
ReplyDeleteAndroid training in chennai with placement | Android Training in chennai |Android Training in Velachery
This information is impressive; I am inspired with your post writing style & how continuously you describe this topic. After reading your post, thanks for taking the time to discuss this, I feel happy about it and I love learning more about this topic.
ReplyDeleteAndroid Training in chennai | Best Android Training in chennai|Android Training in chennai with placement
The Blog Content is very informative and helpful. Please share more content. Thanks.
ReplyDeleteAndroid Training
Android Institute
Android Course
Highly useful details imparted by you. These details are truly beneficial for both newbies as well as experienced ones. Thank you for sharing.
ReplyDeleteWeb Design Company | Web development Lucknow
I wondered upon your blog and wanted to say that I have really enjoyed reading your blog posts. Any way I’ll be subscribing to your feed and I hope you post again soon.
ReplyDeletebest android freelance jobs finding App
Very nice informative article about software and Service information, its very nice article. thanks for sharing such great article hope keep sharing such kind of article android app development
ReplyDeleteI appreciate your information in this article.
ReplyDeletecheap website designing company in delhi
Thanks for sharing information.
ReplyDeletetop mobile app development company Pune
Thanks a lot very much for the high quality and results-oriented help. I won’t think twice to endorse your blog post to anybody who wants and needs support about this area.
ReplyDeletedigital marketing training in tambaram
digital marketing training in annanagar
digital marketing training in marathahalli
digital marketing training in rajajinagar
Digital Marketing online training
full stack developer training in pune
Truly admirable information published by you. I admire your strategy of making such an appealing articles accessible here. Keep up with this tremendous work and continue updating. One can speak and practice English in an effective way, just by downloading English Learning App on your own smartphone, which you can use whenever and wherever you want to practice your communication skills with experts.
ReplyDeletePractice English app | English Speaking App
Thank you for sharing information. Wonderful blog & good post about android app Development. and at our website you can find the best Android App Development Company
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteExcellent blog posts informative
ReplyDeleteSanjary Academy provide pressure vessel design,quality management system course, piping design course, qa/qc course and document controller course.
Welding Inspector Course
Safety officer course
Quality Management Course
Quality Management Course in India
It’s really great information for becoming a better Blogger. Keep sharing, Thanks...
ReplyDeleteLearn Hadoop Training from the Industry Experts we bridge the gap between the need of the industry. Softgen Infotech provide the Best Hadoop Training in Bangalore with 100% Placement Assistance. Book a Free Demo Today.
Big Data Analytics Training in Bangalore
Tableau Training in Bangalore
Data Science Training in Bangalore
Workday Training in Bangalore
An informative post to start for the beginners.
ReplyDeleteBest Mobile App Development Company in Pune
This comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteLove to read this informative post, keep sharing more informative post on android development.
ReplyDeletesoftware development services York
Here is the site(bcomexamresult.in) where you get all Bcom Exam Results. This site helps to clear your all query.
ReplyDeleteJNV University BCOM 2nd Year Result 2020
BA 3rd year Result
BA Result 2020
Nice info for new learner!! AppConsultio Websolutions is the leading best mobile app development company in Pune, Mumbai. We have the right set of expert app developer teams for iOS, android app development Services in Pune, Mumbai. Please reach us if you are looking for any digital marketing, mobile app development and website design service in Pune, Mumbai
ReplyDeletePune Mumbai Delhi Patna
appconsultio websolutions
Wow finally I got good article about android development process from beginning. Thanks for sharing
ReplyDeleteAndroid App Development Company, New York USA
Custom Software Development Company, New York USA
Hi, Great Blog. The content is very interesting and amazing. Keep Sharing it. We are an experienced web development and website designing company in Gurgaon. Our teams are expert and ready to do any task. We use the latest technologies and always suggest the best technology to our clients according to their requirements.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteperde modelleri
ReplyDeletesms onay
mobil ödeme bozdurma
NFT NASIL ALINIR
ANKARA EVDEN EVE NAKLİYAT
TRAFİK SİGORTASİ
dedektör
web sitesi kurma
aşk kitapları
Great post and Thank you. Digital Marketing Course in Gurgaon Where you can learn digital Marketing.
ReplyDeleteWonderful Article! I appreciate the depth and clarity of your content.
ReplyDeleteMaven Technology's reputation as the provider of Best Mobile App Development Services is well-deserved.
Our innovative approach, user-centric UX/UI design, and seamless app navigation process set your app apart in the competitive market.
Partnering with us is easy now - get top mobile app solutions that drive success. Visit us at : maventechie.com.