Let’s Learn how to design android apps in this post. Before we go any farther, I would like to warn you that I am not a designer by trade but I am learning these skills each day. In fact, I will admit that am terrible with colors (don’t expect over the top results from me as far as colors are concerned). Anyway, I like showing people what the final product looks like before I explain how to create it – this is because it helps those learning to have the picture in their memory and of course it is exciting that way. Let us get to it.
As you can see, am not a good designer at all. This of course is the login page of an android app that I would like to call GRATEful. The tagline implies that it is aimed at those who are interested in doing good things to others without bragging about it. It is called altruism. Next…
Now, this is just another page. As you can see, it displays snapshots of data in a gridview – these could be pictures taken by users from different locations. Let us move on to the next view of our awesome (careful here) app!
We are almost done with this part; one more page and we can see what this post is all about.
There you have it. If you had to make a judgment as to whether am worse in design than you thought or am doing better than a fifth grader, you can do so now. Let us figure out exactly how I did this;
How To Design Android Apps – Step by Step Description
This simple android application will allow users to do something good/be generous/helpful, take a picture of whatever they did – for example buy a homeless guy a meal, upload the photo to my servers and eventually keep track of how many good acts have been done around the world, location-specific information of the acts, and much more. People will be required to login at the beginning of the app. People will also have the option to upload and share photos anonymously.
The Login Page
As you can see, I decided to go with Google Login – which obviously saved me a ton of time. All I really need is a few hundred lines of code (augment a library for OAuth) and I will be done with signing in and clearing sessions in my android app. If you want to create your own user login/logout system, go for it. After users have logged themselves in, they will be taken directly to the gridview that displays acts of kindness from around the world.
Display Good Deeds (Count with Locations)
In android, you can easily display data in grids using the GridView component. You simply need to save the data in an array and use an adapter to update whenever there are changes. Over time, the number of deeds will increase and the counter will simply update itself. But how am I going to load these data? I mean, people will upload the images to my server hosted somewhere, and all I will have to do is make an API call to /v1/grateful/deeds/ endpoint and parse the json data and booooom!
Sharing The Good Deeds Online
Today, many apps will allow users to share stuff online. This is not an exception. People will be allowed to share their favorite deed (not necessarily what they did themselves – this will break the code of altruism) on Facebook, Google+, Twitter, Tumblr etc. I will streamline this action by attaching a click event to each item in the grid so that when you pick one deed, a dialog pops up for you to select which social network you want to share it on. All deeds will be shared on the app’s Facebook page for others to enjoy.
Upload New Deeds To My Server
This is the most important part of this app. The reason is obvious, if people don’t upload their images, other users will not be able to see the good deeds happening around the world. To make this easier, I will have an in-app camera which will enable users to take their photos, select their favorite, upload to server and even keep a record for their own viewing. That is it.
Knowing ahead of time what you want your android app to do can help you design a good app. The problem comes when you think that you can simply jump into writing code without writing down any guidelines, drawing up some mock-ups and from there, figuring out what activities, fragments and layouts to create once everything is set.
NOTE: I used Google Docs to create the mock-ups for this post. It is totally free. If you have any other cool tools I could use (free), please let me know.
In summary, you can already feel like you have a functional app even before you start your IDE. That is awesome. What is left now is to start writing code and following the rules/guidelines/mock-ups/etc and adding improvements.
You can also checkout some great documentation on Android Design here.
That is all for today!
Please share this post if you liked it and correct me where I am wrong through comments. See you! (I will be announcing the winner of the Android tablet this week).