We're offering 20% off September Live Online classes! See which courses are applicable.   |   Details >

AccountIcon BigDataIcon BlogIcon default_resource_icon CartIcon checkmark_icon cloud_devops_icon computer_network_admin_icon cyber_security_icon gsa_schedule_icon human_resources_icon location_icon phone_icon plus_icon programming_software_icon project_management_icon redhat_linux_icon search_icon sonography_icon sql_database_icon webinar_icon

Search UMBC Training Centers


Advanced Programming for Android using Android Studio

+ View more dates & times
  • Overview
    This Android Programming course teaches more advanced programming topics for the Android platform. Students will learn to use database and network in their programs. This Android Programming course is ideal for developers who want to take their Android skills to the next level.


    Topics covered include:

    • Advanced GUI topics like ListView, WebView and tabbed layout.
    • Working with files and SQL database.
    • Content provider
    • Network programming.
    • Performing tasks in the background.
    • Play audio and video.
    • Automate Unit test applications.
    • Package and sell applications.
  • Who Should Take This Course


    Developers and architects who will be developing applications for Android devices.
    • The architecture of Android OS.
    • Using the Eclipse based development environment.
    • GUI development.
    • Supporting multiple languages.
    The main focus of this Android Programming course is to tech students how to develop the GUI for an Android based application. This Android Programming course is ideal for Java developers to get a quick entry into the Android platform.
    • The architecture of Android OS.
    • Using the Eclipse based development environment.
    • GUI development.
    • Supporting multiple languages.


    To succeed fully in this course, students should be able to program Java applications.  Introduction to Programming for Android Using Android Studio meets this requirement.

  • Schedule
  • Course Outline

    Chapter 1. The Development Environment

    • What Do We Need?
    • Setting Up the SDK
    • Setting Up the SDK – Bundle Install
    • Setting Up the SDK – Manual Install
    • Android Studio
    • Studio Welcome Dialog
    • Android Studio Projects
    • Android Studio Interface
    • Visual Designer
    • Gradle Build System
    • Modifying Android Project Settings
    • Virtualization and Android Studio
    • Create a Virtual Device
    • Creating a Project
    • Running Your Application
    • Run Configuration
    • Debugging an Application
    • Developing for Multiple Android Versions
    • Migrating to Android Studio from Eclipse
    • Summary

    Chapter 2. Application Menu

    • Introduction
    • Defining Menu Items
    • Menu XML File
    • Option Menu
    • Populating Menu Items from Resource
    • Manipulating Menu Items
    • Handling Menu Item Click Event
    • Context Menu
    • Showing a Context Menu
    • Handling Context Menu Item Click
    • Summary

    Chapter 3. Showing Notification Messages

    • Introduction
    • Toast
    • Popping a Toast
    • Controlling Toast Position With Gravity
    • Custom Toast View
    • Status Bar Notification
    • Normal Notification View
    • Advantages of Status Bar Notification
    • Steps to Create a Status Bar Notification
    • Posting the Notification
    • Using a Utility Method
    • Notification IDs
    • Notification Defaults and Flags
    • Notification.Builder Class
    • Using Dialogs
    • AlertDialog
    • Handling Button Click Events
    • ProgressDialog
    • Setting Progress Amount
    • Summary

    Chapter 4. Menus With Action Bar

    • Action Bar Overview
    • Enabling the Action Bar
    • Using an Existing Menu Definition
    • Adding Action Items
    • Handling Clicks on Action Items
    • Split Action Bar
    • Up Navigation
    • Using Action Views
    • Drop-down Navigation
    • Summary

    Chapter 5. Advanced GUI Development

    • Spinner View
    • Creating a Spinner
    • Handling Item Selection Event
    • The ListView
    • Creating a ListView
    • Handling ListView Events
    • The Adapter Model
    • Custom Adapter Class
    • Example Adapter
    • Using an Adapter
    • Using a Custom Row Layout
    • Tabbed UI Layout
    • Configuring Action Bar for Tabs
    • The ActionBar.TabListener Interface
    • ViewPager
    • ViewPager Layout
    • PagerAdapter
    • Linking ViewPager and PagerAdapter
    • Linking Tabs and ViewPager Pages
    • ViewFlipper
    • WebView
    • WebView Methods
    • Summary

    Chapter 6. Network Programming

    • Introduction
    • Communication Using HTTP Protocol
    • Creating a HttpClient Object
    • Making a GET Request
    • Making a POST Request
    • Setting Timeout
    • Using Basic Authentication
    • Using Custom Authentication
    • XML Parsing Options
    • Setting Up XML Pull Parser
    • The Main Loop
    • Example XML Document
    • Example Parsing Code
    • Checking Network Status
    • Summary

    Chapter 7. Background Task Processing

    • Introduction
    • The Handler Framework
    • The Basic Approach
    • Creating a Handler
    • Posting a Message
    • Doing Background Work
    • AsyncTask
    • Callback Methods of AsyncTask
    • Doing the Work
    • Starting Work
    • Getting Result from the Task
    • Updating GUI From the Task
    • Ending the Task
    • Loaders
    • Implementing a Loader
    • Use LoaderManager to Initialize Loader
    • Implement LoaderCallbacks
    • Summary

    Chapter 8. Data Storage

    • Data Storage Options
    • Data Privacy
    • Shared Preferences
    • Modifying Shared Preferences
    • Shared Preferences Example
    • Default Preferences
    • Editing Preferences
    • Example: Editing Preferences
    • Internal Storage
    • Example: Write to Internal Storage
    • Example: Read from Internal Storage
    • Private Directory
    • Cache Directory
    • Example: Writing to Cache File
    • External Storage
    • Checking State of External Storage
    • Working with Private External Storage
    • Example: Writing to External Storage
    • Shared External Storage
    • Shipping Files with the Application
    • Working with Raw Resource Files
    • Working with Asset Files
    • Summary

    Chapter 9. Content Provider

    • Introduction
    • Use of URL
    • The Structure of Data
    • MIME Type
    • Creating a Content Provider
    • Implement the query() Method
    • Example query() Method
    • Implement the insert() Method
    • Example insert() Method
    • The update() and delete() Methods
    • Implement getType()
    • Registering a Provider
    • Writing a Data Consumer
    • Performing a Query
    • Example Query by a Consumer
    • Example: Inserting Record
    • Summary

    Chapter 10. SQL Database Storage

    • Introduction
    • Opening a Database Connection
    • Transaction Management
    • A Pattern for Connection and Transaction Handling
    • Creating Schema
    • Compiled SQL Statement
    • Inserting Data
    • Updating Data
    • Deleting Data
    • Fetching Data
    • Example Queries
    • Iterating Over a Cursor
    • Reading Column Values from Cursor
    • A Complete Example
    • Cursor Management
    • Binding Cursor to ListView
    • Custom Data Binding
    • Handling Item Click Event
    • Refreshing the ListView
    • Schema Creation Issues
    • Example Helper Class
    • Using the Helper Class
    • Summary

    Chapter 11. Multimedia Programming

    • Introduction
    • Recording Audio
    • Start Recording Audio
    • Stop Recording
    • Playing Audio
    • Playing from Raw Resource
    • Playing from a File or Network Stream
    • Stopping and Cleanup
    • Video Playback
    • Playing Video
    • Summary

    Chapter 12. Background Services

    • What is a Service?
    • Creating a Service
    • Example Service Class
    • Starting and Stopping a Service
    • Starting Long Running Work
    • Sending Control Messages to a Service
    • Using IntentService
    • Usability Guidelines
    • Summary

    Chapter 13. Broadcast Receiver

    • Introduction
    • Developing a Broadcast Receiver Component
    • Registering a Receiver
    • Broadcasting a Custom Intent
    • Sticky Event Broadcasting
    • Summary

    Chapter 14. Location Based Services

    • Introduction
    • Guidelines for Obtaining Current Location
    • Obtaining Current Location from an Activity or Service
    • Reading Location Data
    • Other Considerations
    • Proximity Alert
    • Geocoding
    • Example Geocoding and Reverse Geocoding
    • Using MapView
    • Setting up the Project
    • Showing MapView from an Activity
    • Summary

    Chapter 15. Android Telephony API

    • Common Uses of Telephony API
    • Making a Phone Call
    • Sending SMS Message
    • Call and Service State
    • Monitoring Call and Service State
    • Register the Listener
    • Getting Detail Phone Information
    • Summary

    Chapter 16. Testing Applications

    • Introduction
    • New Sources of Defects
    • Special Testing Considerations
    • Android Testing Framework
    • The Architecture
    • Testing in Android Studio Projects
    • Test Results in Android Studio
    • Test Case Class for an Activity
    • Test Case Initialization
    • Writing a Test Case Method
    • Service Test Case Class
    • Useful Methods of an Activity Test Case Class
    • Additional Assertion Function
    • The TouchUtils Class
    • Developing and Testing on a Device
    • Stress Test Monkey
    • Third Party Testing Tools
    • Summary

    Chapter 17. Packaging and Distributing Applications

    • Introduction
    • Pricing Options
    • Getting the Application Ready
    • About Signing the Application
    • Exporting and Signing the Application
    • Going to Google Play
    • Doing Maintenance
    • Summary

    Lab Exercises
    Lab 1. Setting up the Development Environment
    Lab 2. Working With Application Menu
    Lab 3. Showing Notification Messages
    Lab 4. Convert Menu for Action Bar
    Lab 5. Custom ListView Adapter
    Lab 6. Using a Spinner
    Lab 7. Tabbed Interface
    Lab 8. Network Programming
    Lab 9. Performing Background Work
    Lab 10. Using Loaders for Background Work
    Lab 11. Working With File Storage
    Lab 12. Caching Network Data on Disk
    Lab 13. Content Provider and Consumer
    Lab 14. Development Using SQLite Database
    Lab 15. Play Audio Files
    Lab 16. Develop a Simple Service
    Lab 17. Developing Broadcast Receiver
    Lab 18. Location Based Application
    Lab 19. Using the Telephony API
    Lab 20. Unit Testing an Application
    Lab 21. Packaging and Installing Application

  • FAQs
    Is there a discount available for current students?

    UMBC students and alumni, as well as students who have previously taken a public training course with UMBC Training Centers are eligible for a 10% discount, capped at $250. Please provide a copy of your UMBC student ID or an unofficial transcript or the name of the UMBC Training Centers course you have completed. Online courses are excluded from this offer.

    What is the cancellation and refund policy?

    Student will receive a refund of paid registration fees only if UMBC Training Centers receives a notice of cancellation at least 10 business days prior to the class start date for classes or the exam date for exams.

Contact Us