Android App Development Tutorial Beta


New to Android ? Start with Concept Lessons.
Learn to implement those concepts in a Twitter App Tutorial with step by step instructions & app evaluation.

Prerequisite

  1. Prior programming experience preferrably Java.
  2. Inclination towards learning by building an app (& not just sit & watch videos).

P.S. Never worked with Android before ? Dont worry, elaborate steps to download, install & setup are included in the tutorial.

What our users are saying

Zahar

Zahar Veigman

10+ years experience in C++, Android noob, works at HP, Tel Aviv, Israel

I decided to pay for Module 2 taking into account that the first module gave me the "feeling" of the course and also my friend (he is RUBY developer) recommended this tutorial when I asked him about android courses online.

I liked the balance between theory (and possibility to go deeper with the theory) and practice sessions.I want to note that I took some android course on some other website some time ago - and didn't finish it since it was too boring and basic.

Zuberot

Zuberot Viktor

Lead Android Dev, 4+ years experience, works at SEDC, Skojpe, Macedonia

I tried the virtual assistant and I find it very easy to use. The concept is great and I love it and the most important thing is that it works. I was working with students and teaching them to develop Java and Android applications and I know how hard it's to pay attention to every detail with every student. With this approach the students can repeat videos and steps until they are sure they understand.

I'm the founder of the local Android community called Android Macedonia https://www.facebook.com/AndroidMK https://twitter.com/AndroidMK and the course will be shared today to all members.

Angrave lawrence b

Prof Lawrence Angrave

Senior Lecturer, University of Illinois, taught androidapps101 at Coursera

I looked through the slides but did not install the plugin.

The tutorial looks very promising and easy to follow

At some point you will need to address fragments and larger display support.

You may also want to suggest the genymotion emulator to users as the native emulators are very slow.

Rhuan

Rhuan Teixeria

Undergrad student, Faculdade Pitagoras University, Brazil

Hello pal, I loved to complete that new Tutorial 2, I love the way you guys show us the steps to complete the task. It isn't that thing you just copy and paste, and it isn't very hard either, it's just the level of tips we need to try for ourselves and really learn (not memorize words and commands).

I believe you already know there isn't such Android tutorial like yours; I mean that communication between Eclipse and the Website to check our app, and the focus on showing the best way to do something. For example, when explaining about the Async functions on other tutorials I've read, they use to show us all the ways of performing async tasks, like using the Thread class or ThreadPool, etc, and when reading about all that, I was confused because I didn't know which and why to use any of those ways. And that's something you guys do very well, the best way of performing such tasks without making the user confused or tired. So I congrats you as well for such excellent tutorials.

Explore Tutorial

Android Concept Lessons
Ideal for beginners


1. Android Building Blocks & Components

Want to know how to make Apps ? Check this Android tutorial to know the basic building blocks of Android application (also known as Android Components) namely Activity, View, Intent, Service, Broadcast Receiver & Notification

2. Android Development Environment Setup

Check this Android tutorial to know how to setup Android SDK on your PC. It includes screencast for setting up the SDK. The SDK installation has pre-requisites like installing JDK. It is all being covered in the lesson.

3. How to run Hello World Android app

Done with installing the Android SDK but clueless on how to get started ? This Android tutorial tells you how to get started with a Hello World Android app. Creating your app for the first time can be daunting to newbies. Here, we explain what various input fields stand for during the app creation process. We have also explained the folder structure and different tools like Console, Logcat & DDMS which you will be needing during Android app development.

4. Layouts in Android

One of the important components of Android apps are View elements which are contained in a Viewgroup, also known as Layout. The Layout files are XML files. The User Interface design of your app starts with the Layout file & arranging View elements inside it. Follow this Android tutorial to know how to get started with Layouts & what are the most popular Layout types available in Android. Each Layout type has a separate project that you can download, import in Eclipse & see the Layout in action.

5. Android Activity Lifecycle

While creating Hello World app, you would have noticed that 'New Project' wizard asks you for an Activity name. Activity is the component of Android that you should be aware of. An Android app consists of multiple Activities. At a time,since, you are looking at only one Activity of an application, all other Activites (of the current app & the other apps) go to background. This is an Activity state. An Activity has many states & lifecycle, which you need to handle as an Android developer. Follow this Android Tutorial to dig deeper into an Activity, its state & lifecycle.

6. Intents in Android

Done creating Activity & corresponding User Interface through Layout XML files ? It is time to learn how to navigate from one Activity to another. Intents in Android does exactly that. But there is more to it. You can pass data from one Activity to another. You can launch non-Activity components like Services, Notifications & even other Android apps.

7. Android View Elements

This Android tutorial introduces some of the standard View elements like Button, TextView, EditText, Radiobutton & Checkbox. It also talks about the View specific attributes that you can either set in the XML view file or set it through your Activity java code. Some views have Listeners to which you can attach your java code that gets activated on events. Example - a Button View getting clicked. The Listeners vary from element to element & have been covered in the specific elements. After the standard/simple Views, some complex View elements like ImageView, ListView (just an introduction), GridView & ScrollView are also introduced with their specific attributes.

8. Android ListView

Android ListView is one of the most ubiquitious but also one of the most difficult concept to understand. For the beginners, any list that you have seen on your Android phone (example list of phone numbers when you launch your contact) is implemented using Android ListView. Here we have tried making it as easier as possible for you by explaining the easiest way of implementing a basic Listview & then explaining what each line of code represent. We then follow the similar process with more complex ListView implementations.

9. How to Log in Android

Your favorite Java dump command 'System.out.println()' does not work in Android. Know how to use to use the Log class. An extensive Android tutorial on how to use LogCat to view & filter the log messages.

10. Android Dialogs / Popups / Toasts

...coming soon..

11. File Handling in Android

...coming soon..

12. Android Shared Preferences (Persistence)

...coming soon..

Twitter App Tutorial

Build an app inside Eclipse as you read instructions & we will evaluate it at every lesson


Module 1. Twitter App Tutorial Introduction

Why you should learn from our tutorial & why our tutorial is better than others out there.

Lesson 1 . Hello World

Module 2. Twitter Login Screen UI

Build a basic login screen User Interface for a Twitter app to get a feel of your first Android app. Learn about basic Layouts & most widely used XML attributes.

Lesson 2 . Hello World to Hello Twitter
Lesson 3 . Add Username Fields
Lesson 4 . Login - Add Password & Login Button
Lesson 5 . Styling Elements

Module 3. Login Button Click Listener

Learn to use Click Listener by implementing it on the Twitter login screen.

Lesson 6 . Login Button Listener

Module 4. Login to TweetList through Intent

Learn how Intent are used by creating a new TweetList Activity & moving to the Activity from Login Activity using Intent.

Lesson 7 . 'No Tweet Found' Activity

Module 5. TweetList screen using ListView

ListViews are hard. Learn to build & use ListView by creating TweetList Activity showing list of tweets, from basic ListView to custom ListView followed by how to implement List item click

Lesson 8 . Basic ListView
Lesson 9 . Creating Custom Layout
Lesson 10 . Hooking Custom Layout to ListView
Lesson 11 . Implementing ListView Item (tweet) click

Module 6. TweetList to Tweet Detail through Intent

Another use of Intent. On List item click, learn how to navigate to the Tweet detail screen using Intent

Lesson 12 . Creating & Loading TweetDetail Activity

Module 7. Storing Login Data in SharedPreference

Learn how to store & retrieve data from SharedPreference by implementing the same for handling login data in the Twitter app

Lesson 13 . Reading login data & logging it
Lesson 14 . Writing login data to SharedPreference
Lesson 15 . Reading login data from SharedPreference & modify app flow

Module 8. Dynamic data for Tweet List

Upgrade your ListView knowledge by showing up dynamic data on TweetList screen. Also, learn how to create PoJos for storing data, also called Models in Android development.

Lesson 16 . Create Tweet Model
Lesson 17 . Populate Tweet Model & use it in getView(..)

Module 9. Tweet List & Local Storage

Learn how to use local storage in Android app for a better user experience. Store tweets locally to a file & read from it to show it on the ListView.

Lesson 18 . Writing tweets to file
Lesson 19 . Reading tweets from file

Module 10. Managing tweets with AsyncTask

All time taking process should happen asynchronously in Android using AsyncTask. Simulate a network call using Asynctask to fetch tweets & show them up on the ListView on TweetList screen

Lesson 20 . AsyncTask Introduction. Simulate network call.
Lesson 21 . Show new tweets in AsyncTask
Lesson 22 . Move writing of tweets to new AsyncTask

Module 11. Data over Intent for Tweet Detail Activity

Learn how to send data over Intents by sending the tweet information from TweetList screen to Tweet Detail screen when a List item is clicked on TweetList screen.

Lesson 23 . Passing tweet data to TweetDetail Activity over Intent

Mobile Analytics