Android has disrupted the smartphone industry with almost 82.8% market share (source – IDC), and android app development with Android as a platform is something that a novice Android enthusiast is always ready to learn. But the number of resources over Internet is quite overwhelming. The myriad of resources available will leave you with even more number of questions. Barring the number of skills to be mastered, we also get baffled by the effort that has to be put in, just to initiate that android app development, and the process gets even more complicated as we move ahead. Thus, we end up leaving the thought of mobile app development altogether.
No doubt, it is not going to be a piece of cake. But hey, that shouldn’t ever stop us from at least giving it a shot. Let’s try to make things a little more clear, and we’ll go through all possible aspects needed. I made my first app a few days ago, and hence we’ll be sorting things out. From scratch.
This is the most important aspect we must consider before getting started. Android app development, requires knowledge of a hoard of things. Let’s list them out one by one.
- Java – Java as an object oriented programming language powers almost every device around us, and our Android device is one of them. All apps are natively written in Java, and hence it requires an intermediate level of understanding in the same. Java is not at all difficult to learn. However, it does need patience and constant efforts to get yourself acquainted with its environment. How do we go about it? There’s tonnes of online resources that will help you learn Java. However, we need to get it done as fast and as efficiently as possible. Below are the most reliable available resources that will help us out :1) Codecademy – Java
2) Tutorials Point – Java tutorial
3) Introduction to Java Program (MOOC) – Part 1 | Part 2
- XML – XML (Short form for Extensible Markup Language), is used as the markup language in designing Android apps. If you are familiar with HTML, you’ll feel at home. Android uses specific XML tags and hence, we can learn the same on the go. However, if you are curious enough to learn, these links will help you out:1) XML Tutorial – W3Schools
2) Tutorials point – XML
- Windows or Mac or Linux? Well, It doesn’t matter. Mobile app development is independent of the OS. However, we ‘may’ face a few driver issues with Windows. Thus Mac or Linux(any distro) if available, are appreciated.
- And a thirst for knowledge with patience. Immense patience. That’s it.
If you believe you are comfortable with basic Java, and you can implement the same, you’re good to go. We will have to set up our working environment, in order to be able to start developing . Following are the requirements you need to be ready with before taking the next step:
- Android Studio/Eclipse – This is the first and most important requirement, per se. An IDE is the program where we put up our code, and that builds our app for us. The two primary IDEs available for mobile app development on Android are Android Studio and Eclipse. Eclipse has been the personal favourite of developers all over. However, ever since the advent of Google’s own IDE – Android Studio, there has been a drastic shift. Also Google has officially stopped support for Eclipse, and hence, no more SDK updates for Eclipse users. So choose accordingly.
We can grab the IDEs from these links – Android Studio | Eclipse
Installation is, as usual, a breeze.
- SDK – SDK, or Software Development Kit, is the package that contains all our files and tools that are needed to build our apps. The link above for the IDE will grab you a bundle containing both the IDE as well as the SDK. We can also grab the stand-alone SDK from here.
- ADB – ADB, or Android Debug Bridge, is a tool that aids our development, by acting as the ‘bridge’ between our environment and the actual device. It comes included in the SDK as such, but you can always learn more about it in the ADB Documentaion, or head over to Vogella’s tutorial.
More on Android App development
That should be it. Once you have all these set up and running, you’re ready to rock! However, before we move ahead, let’s take a look at the guidelines set up by Google that every developer needs to keep in his mind when developing mobile apps.
- Android Developer Guidelines
- Google Play Services
- Material Design Guidelines (What is material design?)
Alright! Things may seem a little difficult at this stage. But hey, don’t get overwhelmed already. All of these will become a daily drill once we start learning more and dig deeper.
Where to learn?
The following online courses are the best when it comes to learning Android app development. These are self-paced courses, meaning you can learn at your own pace, with zero prior knowledge and free of cost.
- Getting Started | Android Developers
- Developing Android Apps – Udacity (No programming experience? NO problem!)
- Advanced App Development – Udacity
That’s it! You are good to go. You can learn more on android app ecosystem on the Android Developers webpage. You can always have a look at the sample code snippets to learn more, here. Join the official Android Development community on Google+ here, to keep yourself up to date with all the happenings that matter with respect to mobile app development, Android.
We hope this article proved useful. Let us know in the comments about your views. Got any more suggestion? Feel free to share the same below in comments. Keep following ReadMeNow for more such useful posts and tutorials!