I am one of those tech enthusiasts who wanted to build an android app as soon as they got hold of their first android smartphone. Yes, I am one of you.
My first smartphone was Samsung Galaxy Y and at that time, I had no idea what an app was or what Android actually meant. It seemed something cool, so I ‘Googled’ about it. I came across something called Eclipse IDE for Android. I downloaded the software package and started fidgeting with it. Though I couldn’t make anything with it, a spark was ignited in me and after several years, I successfully made my first Android App. So, I thought I’d write about how it all went, for all who can relate.
Getting To Know Stuff
Developing an app is not at all that difficult. Just Google, “how to make an android app” and you’ll get results like “Build an app in 10 steps” or “Make an app in just a day” and eventually you would have made a crappy app in a matter of hours. The real challenge is developing an app that actually does what it is made for.
I began building an app (without any idea of what it will do) in 11th grade. I had absolutely no clue about programming or the Android Studio. So, I kept playing with it for days after coming back from school by watching YouTube videos. Eventually, I understood a few things like Console, SDK, etc., and I ended up with an app that simply displayed the current time. I named the 62.48 KB app as Vaibhav’s App. It had the regular green Android icon. *Friends laughing in the background*
Fast forward to the 2nd year of B. Tech (Computer Science): I finally got the opportunity to make an actual working app. It was our summer assignment (so it had to work!). Now, came the complicated stuff. My bright mind (*wink wink*) told me that we’ll make an attendance monitor. By now, I had learned amateur programming in C, C++, and JAVA. I knew how to get my way around Android Studio.
Making of an App-ocalypse
“Hello World” is the honorable tri-syllable that every developer must learn to display on their very first project. It is a very simple program that just displays the phrase “hello world” on the screen. The real struggle begins after that; when you have to learn how to make things work in android.
You get on with the basic code writing in XML (eXtensible Markup Language) for designing the UI elements like seekbar, textview etc. Then you have JAVA, which helps you program the logics by which your pre-designed UI elements would be governed. If you take app development seriously, this phase is going to be fun!
Although it is fun, JAVA starts to suck soon. I recall that I had to enroll in an android app development institute to get my hands working properly on JAVA. I spent 6 weeks there, only after which I was able to develop something fruitful. After that, the internet became my teacher. You’ll find everything that you need on the internet; however, finding the right thing may become a little bothersome.
For example, I was stuck on something called ‘recycler view’ for two entire weeks until I stumbled upon a 50-minute video (on some other topic). I saw the whole video and bam! There it was, right in front of me! A part of 10 minutes in the video consisted of what I had been searching for weeks! So, that was when I realized that the internet probably has everything but it might be at a different place than expected.
Ready to Install
Those moments have an inexplicable kind of happiness in them, when you install your first app for the first time. Don’t get me wrong, a lot of things screw up when you first install it, but here you have the reward of your effort and patience.
As I mentioned earlier, I made an attendance monitor which would keep a track of your attendance for various lectures, so that you can pass the semester without being detained (or perhaps plan your “ditch-class” days well). I named it “Anti-Detention”.
You could register various subjects into it and tap a button to mark your attendance for the lectures of the same subject. It would show you the attendance percentage against it to give you a fair idea when to skip a class and when not to. You could also set alarms for lectures. You could even store your exam scores in the app.
So here it was, My First Android App, still crappy, but I was happy with it.
Some Vital Lessons
I started as an amateur and I am still an amateur but I have learned a handful of things that might benefit you when you start and eventually build an app. So, here a few first-hand experience lessons:
Rather than blindly wiggling with any development software, start with learning the languages. I would recommend you to join a good enough coding institute or take the guidance of (my favorite) online tutorials:
Learn JAVA before putting your hands on Android. Both the platforms have a number of things in common that can save your time and effort if you do so.
Whenever you’re stuck at a stage where you see no light at the end of the tunnel; stop, and search the internet. There’s a fine possibility that others were stuck at the same thing, so you’ll get a quick solution if you search carefully.
Having said that, searching and finding the exact thing will be a challenge in itself. Patience (and a lot of it) will be required here.
For resources that you’ll need, here are a few suggestions:
GitHub – The best place for finding open source sample codes.
Material Icons – The coolest icons ever.
F-Droid – A handy place for Free and Open Source Apps
When you are done and you show it to people, handle the criticism wisely. You’ll be up for a lot of roasting but make sure that your app does what it is made for. Once that’s taken care of, you may proceed with improving aesthetics to shut the mouths laughing at you.
Try your app on as many devices as you practically can. It is crucial.
Let the coding begin!
Update: Now you can download and try the app from Google Play Store. Support and feedback would be deeply appreciated!