Grade "A+" Accredited by NAAC with a CGPA of 3.46
Grade "A+" Accredited by NAAC with a CGPA of 3.46

Android Programming

Course ID
BHCS 20A
Level
Undergraduate
Program
B.Sc. CS (Hons.)
Semester
Fourth
Credits
4.0
Paper Type
Skill Enhancement - 2
Method
Lecture & Practical

Unique Paper Code: Update Awaited

The paper provides an introduction to development of mobile application on android platform. The topics include the Android development environment, activities, fragments, user interfaces, intents, broadcast sender/receivers, services, notifications, SQLite database handling.

Learning Outcomes:

At the end of the course, students should be able to:

  • Describe characteristics of Android operating system.
  • Describe components of an android applications.
  • Design user interfaces using various widgets, dialog boxes, menus.
  • Define interaction among various activities/applications using intents, broadcasting, services.
  • Develop Android applications that require database handling.

Course Contents

Unit 1
Unit 2
Unit 3
Unit 4
Unit 5

Unit 1

Introduction: Review to JAVA & OOPS Concepts, History of Android, Introduction to Android Operating Systems, Android Development Tools, Android Architecture, Android components including activities, view and view group, services, content providers, broadcast receivers, intents, parcels, instance state.

Unit 2

User Interface Architecture: Application context, intents: explicit intents, returning results from activities, implicit intents, intent filter and intent resolution, and applications of implicit intents, activity life cycle, activity stack, application’s priority and its process’ states, fragments and its life cycle.

Unit 3

User Interface Design: Layouts, optimizing layout hierarchies, form widgets, text fields, button control, toggle buttons, spinners, images, menu, dialog.

Unit 4

Broadcast receivers, notifications and services: Broadcast sender, receiver, broadcasting events with intents, listening for broadcasts with broadcast receivers, broadcasting ordered intents, broadcasting sticky intents, pending intents, creating notifications, setting and customizing the notification tray UI. Create, start, and stop services, binding services to activities, using asynctasks to manage background processing, handler, looper and runnable.

Unit 5

Database and Content provider:  SQLite, Content Values and Cursors, creating SQLite databases, querying a database, adding, updating, and removing rows, Creating Content Providers, implement content provider’s queries and its usage.

Practicals

Lab List 1

  1. Create “Hello World” application. That will display “Hello World” in the middle of the screen in the emulator. Also display “Hello World” in the middle of the screen in the Android Phone.
  2. Create an application with three buttons (increment, decrement and reset) and a textView aligned vertically. On clicking, increment/decrement button, the value of the textview should increment/decrement by 1while selecting reset button, the value of textview should become zero.
  3. Create an application with login module. (Check username and password).
  4. Create spinner with strings taken from resource folder (res >> value folder) and on changing the spinner value, Image will change.
  5. Create a menu with 5 options and selected option should appear in text box.
  6. Create a list of all courses in your college and on selecting a particular course teacher-in- charge of that course should appear at the bottom of the screen.
  7. Create an application with three option buttons, on selecting a button colour of the screen will change.
  8. Create an application to display various activity life cycle and fragment life cycle methods.
  9. Create an application with 2 fragments, one to set the background and other to set the fore-color of the text.
  10. Create an application with an activity having EditText and a button (with name “Send”). On clicking Send button, make use of implicit intent that uses a Send Action and let user select app from app chooser and navigate to that application.

Lab List 2

  1. Create a Login application. On successful login, use explicit intent to second activity displaying welcome message (Welcome Username) to the user and a logout button. When user presses logout button, a dialog box with a message (“Are you sure you want to exit?”) and two buttons (“Yes” and “No”) should appear to confirm logout. On “Yes” button click, go to login activity and on “No”, stay on the same activity.
  2. Create an application for Broadcast sender and receivers.
  3. Create an application to create notification having icon, text and title.
  4. Create an application to create services.
  5. Create an application to Create, Insert, update, Delete and retrieve operation on the database.

Additional Information

Text Books


Griffiths, D., & Griffiths, D., (2015). Head First Android Development, O’reilly Media.
Meier, R.,(2012). Professional Android™ 4 Application Development. John Wiley & Sons, Inc.

Additional Resources


Murphy, M. L. (2018). The Busy Coder’s Guide to Android Development, CommonsWare
Phillips, B., Stewart, C., Hardy, B. & Marsicano, K. (2015). Android Programming: The Big Nerd Ranch Guide.Big Nerd Ranch. Guides.
Sheusi, J. C. (2013). Android Application Development for Java Programmers. Cengage Learning.

Teaching Learning Process


Use of ICT tools in conjunction with traditional class room teaching methods
Interactive sessions
Class discussions

Assessment Methods

Written tests, assignments, quizzes, presentations as announced by the instructor in the class

Keywords

Android App Development, Activities, Fragments, User interfaces, Intents, Broadcast sender/receivers, Services, Notifications, SQLite Database.

Disclaimer: Details on this page are subject to change as per University of Delhi guidelines. For latest update in this regard please refer to the University of Delhi website here.