Anatomy of an Android App: Android Development – 7 Day course to creating your first apps
Android Development – “My First Apps” course.
I, as a geek, love statistics and graphs. I frequently look at search engine trends and data with Google Insights. Recently (because I am moving into Android Development) I have been checking out the Android and Android Dev related searches. What I noticed is, as you’d expect, there are a lot of searches for terms like “Android Development”, “Android Dev” “Programming for Android”, “Learn Android Development” (this term peaked back in July 2011) and other such terms. However I also see a lot of searches for people wanting customisation for their Phone and Tablets. Other keywords pop up quite frequently too: terms like “Android Tutorial”, “Android Lessons”, “Android Course”. People want to learn how to develop for the Android OS.
There are 2 primary reasons that I can see for the boom in the topic of Android Development. the first being that it’s a massively growing sector. Smartphones are becoming an integral part of life for many – I couldn’t go without mine any more! Google’s Android OS has gone in 4 years from being a start-up to being the second most common OS on phones today – in January 2010 the term “Android” had only 12% of the searches as it does today!. The growth has been exponential and it doesn’t look like it’s going to stop any time soon. Growth will likely slow down but I don’t expect the Android market to start dispersing in the near future.
The second reason (and for me, and many others, this is the deciding factor) is it’s entirely open source. With you having access to the source code of the OS it gives you a chance to look at it and see how things are done. This gives you an understanding of your app’s life cycle and allows you to code for certain eventualities that may occur with the minority of users – improving usability and expanding userbase. Looking at the OS source also allows you to see the accepted practices of coding for Android and, once you know what the core of the OS packs inside it, you can then make use of that code – improving your skills and making you a better Developer all round. It also allows you to reduce development times by making use of existing code from Android, stopping you having to write it yourself, plus this has the added benefit of ‘just working’ – It’s been tried and tested thousands of times if it’s in the Android Core, you can rest assured it will work like it’s supposed. This also further reduces dev time by reducing debugging time requirements. You can even over ride the code from Android to make use of that function your own way.
As a third added benefit to Android development for smartphone and tablets is: all the software required to make an app is FREE! Completely FREE! Android Development couldn’t be easier to get started with, it seems like a lot needs to be installed and configured before you do anything (and there will be a dedicated post for it) but it’s just a case of “next, next, next-ing” through everything mostly. It’s even easy (and very affordable at just $25 for entry) to get into the Android Marketplace or you could even sell through Amazon’s dedcated Android app store.
Enough with me trying to sell the Android OS to you. You have already bought into the idea of Android development otherwise you wouldn’t be reading this. Android development can be as simple or as complex as you want, all you have to do is get to grips with the basics. I know that at the end of this course you will know enough to wire up a basic app, customize it how you want and have it installed on your phone/tablet, you’ll probably even have developed a few short-cuts and techniques all by your self.
The point of this post is to make a 7 part course to help you develop your own set of first apps. The skills and code you learn from the course will be transferable to as many different projects and apps that you might think of. As we progress through the course there will be words that are auto tagged to other pages, these auto-tagged terms will link to pages that contain descriptions of some of the things I am taking about in the course (I don’t expect you to know very much when you come here, it is the “My First Android Apps” course after all, so I like to be as helpful and descriptive as I can. In previous posts this has caused the flow of the post to break and so I am now going to tag terms and link to the description externally to the main course [much like Android layouts! But we’ll cover that in the course]. The description pages will eventually fill up with tons of descriptions, terms and code samples so it might be worth bookmarking any you come across and checking back on them to see what has been added over time). I’m working on my Android Development 101 course after this so if you enjoy this one then come back for the full Android Development 101 course which I will be releasing on this website in stages and “My First Apps” will be part of that course when it gets released as an e-book in the near future.
The “My First Apps” course:
- Getting Started
- Hello World!
- Making a Splash!
- Do it on Time
- My Preference, Your Preference
- Counting – Double or Nothing
- The Part of Many Apps
- Descriptions Page