Mobile Computing (Programming) Syllabus - BCIS (PU)

Course Description

Course Objectives:

  • Understand the Android OS architecture.
  • Install and use appropriate tools for Android development, including IDE, device emulator, and profiling tools.
  • Understand the Android application architecture, including the roles of the task stack, activities, and services.
  • Build user interfaces with fragments, views, form widgets, text input, lists, tables, and more.
  • Use advanced UI widgets for scrolling, tabbing, and layout control.
  • Present menus via the Android action bar and handle menu selections.
  • Store application data on the mobile device, in internal or external storage locations.
  • Support user-specific preferences using the Android Preferences API.

Course Description:

This course introduces mobile application development for the Android platform. Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language. Students will learn skills for creating and deploying Android applications, with particular emphasis on software engineering topics including software architecture, software process, usability, and deployment.

Course Outcomes:

On successful completion of this module, a student should be able to develop Android applications.

In particular:

  • have a good working knowledge of the development framework and be able to use its various features, including UI, resources, storage, security, multimedia, location, etc.
  • have a good working knowledge of Android Studio, including debugging in emulator and real hardware.
  • use best design practices for mobile development, designing applications for performance and responsiveness.
  • be able to sign and publish developed applications.

Unit Contents

Course Details:

Unit 1: Review of Java Programming                                                         2 hours

Unit 2: Getting Started With Android Programming                              4 hours

Introduction to Android, Android Versions, Features of Android, Architecture of Android,  Dalvik Virtual Machine, Obtaining the Required Tools, Android SDK, Android Studio and Android Development Tools (ADT),  Creating Android Virtual Devices (AVDs) – Pros and Cons of Emulator, Working with Emulator using telnet Command (Network, Power and SMS), Interacting with Multiple Emulator, Steps to Create Android Application, Android App Resources, The Main Activity File, The Strings File, The R File, The Layout File, The Manifest File, The Gradle File

Unit  3: Activities, Fragments and Intents                                     10 hours

Understanding Activities, Introduction, Life Cycle of Activities, Creating an Activity, Declaring the Activity in the Manifest, Starting and Shutting Down the Activity, Android Task Backstack, Intents, Introduction, Types of Intents,  Intent Objects , Intent Fields - ACTION, DATA, CATEGORY, TYPE, COMPONENT, EXTRAS and FLAGS, Intent Filters, Linking Activities Using Intents, Resolving Intent Filter Collision, Returning Results from Intent, Passing Data Using an Intent Object, Fragments, Introduction,  Life Cycle of a Fragment, Adding Fragments Dynamically, Interactions between Fragments, Calling Built-In Applications Using Intents, Understanding Intent Object, Using Intent Filters, Adding Categories, Displaying Notifications, Understanding Permissions, Defining & Using Application Permissions, Component Permissions & Permissions Related APIs.

Unit 4: Android UI                                                                           5 hours

Understanding the Components of a Screen, Views and View Groups, Layouts (Linear, Absolute, Table, Relative, Frame and Scroll View), Adapting to Display Orientation, Anchoring Views, Resizing and Repositioning, Utilizing the Action Bar, Adding Action Items to the Action Bar, Customizing the Action Items and Application Icon

Unit 5: Designing UI with Views                                                     7 hours

Using Basic Views, Text View, Button, Image Button, Edit Text, Check Box, Toggle Button, Radio Button, Radio Groups, Progress Bar and Auto Complete Text View, Event Handling, Event Listeners and Handlers, Event Listeners Registration, Event Handling Examples, Event Listeners Registration Using an Anonymous Inner Class, Registration Using the Activity Implements Listener Interface, Registration Using Layout File, Using List View and Spinner View, Understanding Specialized Fragments, Using a List Fragment and Preference Fragment

Unit 6: Displaying Menus with Views                                             2 hours

Using Menus with Views, Creating the Helper Methods, Options Menu, Context Menu, Working with Web View

Unit 7: Data Persistence                                                                   5 hours

Saving and Loading User Preferences, Accessing Preferences Using an Activity, Persisting Data to Files, Saving to Internal and External Storage, Using Static Resources, Creating and Using Databases, Introduction to SQLite, Creating the Database Helper Class, CRUD Operation in SQLite

Unit  8: Messaging                                                                            2 hours

SMS Messaging, Sending SMS Messages Programmatically, Sending SMS Messages Using Intent, Sending E-Mail

Unit  9: Networking                                                                          3 hours

Consuming Web Services Using HTTP, XML Parsing, JSON Parsing

Unit 10: Developing Android Services                                            4 hours

Creating Your Own Services, Creating a Simple Service, Performing Tasks in a Service Asynchronously, Performing Repeated Tasks in a Service, Understanding Threading

Unit 11: Using Third Party Libraries                                             3 hours

Examples like Picasso, Volley, GSON, Develop sample app using third party APIs

Unit 12: Deploying Android Apps in Play Store                           1 hours

Text and Reference Books

Text Book:

  • Lee, W.M (2012). Beginning Android 4 Application Development. WROX Publication

Reference Book:

  • Simon, J. (2012). Head First Android Development. O’Reilly Media.
  • Meier, Reto (2012). Professional Android 4 Application Development. WROX Publication
Download Syllabus
  • Short Name Android
  • Course code CMP 268
  • Semester Eighth Semester
  • Full Marks 100
  • Pass Marks 45
  • Credit 3 hrs
  • Elective/Compulsary Elective