powered by
Center for Curriculum and Transfer Articulation
Android Mobile Device Programming
Course: CIS165DA

First Term: 2018 Fall
Lec + Lab   3.0 Credit(s)   4.0 Period(s)   4.0 Load  
Subject Type: Occupational
Load Formula: T

Description: Beginning with an overview of Android features, this class explores the required software tools and programming techniques for developing Android device applications from creating the user interface, working with activities, intents and views, to using databases, providing data persistence, accessing device features and services, to debugging and publishing applications.

MCCCD Official Course Competencies
1. Identify features of the Android architecture and operating system. (I)
2. Install and configure Android development tools including the Software Development Kit (SDK) (II)
3. Configure an Android Virtual Device using the Android Emulator for testing an app (II)
4. Utilize multiple layouts in designing Activities (III)
5. Place and code various views in an Activity including Buttons, TextViews, ListViews and ImageViews (IV).
6. Link activities using Intents (V)
7. Create and use a simple database in an application (VI)
8. Persist data using internal and external storage (VII)
9. Add media to a project including audio, graphics, and frame-by-frame animation (VIII)
10. Access device sensors in an app such as the Global Positioning System (GPS) and accelerometer. (IX)
11. Access message and web services in an application (X)
12. Package an app for deployment (XI)
MCCCD Official Course Competencies must be coordinated with the content outline so that each major point in the outline serves one or more competencies. MCCCD faculty retains authority in determining the pedagogical approach, methodology, content sequencing, and assessment metrics for student work. Please see individual course syllabi for additional information, including specific course requirements.
MCCCD Official Course Outline
I. The World of Android
   A. Current Devices on the Market
   B. Device Features
   C. Android OS History
   D. Exploring the Android Store
II. Preparing for Development
   A. Installing and configuring Eclipse and Java
   B. The Android Software Development Kit (SDK) - Installing and Updating
   C. Android Development Tools
   D. Android Emulator and Android Virtual Devices (AVDs)
   E. Android Libraries
   F. Online Resources and Help
   G. Overview of Creating a Simple App
      1. New Android Project Dialog
      2. The Package Explorer Window
      3. The Visual Layout Editor
      4. Main.XML
      5. Java Source Files (SRC)
      6. Assets
      7. Resources
      8. AndroidManifest.XML
   H. Testing and Debugging with Eclipse and the Android Emulator
III. Activities
   A. Views and ViewGroups
   B. Layouts
      1. Absolute
      2. Frame
      3. Linear
      4. Relative
      5. Scroll
      6. Table
   C. Anchoring Views
   D. Device Orientations
   E. Displaying Dialogs
      1. Toasts
      2. Progress Dialog
      3. DatePicker
      4. TimePicker
   F. Handling Activity Lifecycle Events
IV. Coding User Interface Views
   A. TextViews
   B. Buttons
   C. RadioButtons and RadioGroups
   D. EditText Views
   E. ListViews
   F. Spinners
   G. ImageViews
   H. Menus
   I. WebViews
   J. GridViews
V. Intents
   A. Linking Activities Using Intents
   B. Getting a Uniform Resource Locator (URL)
   C. Using Intent Filters
   D. Broadcasting Events with Intents
   E. Handling Rotation
VI. Incorporating Databases
   A. SQLite Databases
      1. Adding Data
      2. Querying Data
      3. Updating Data
      4. Deleting Data
   B. Content Providers
      1. Creating
      2. Accessing
      3. Adding, Updating, Deleting
   C. Native Android Content Providers
      1. Browser
      2. CallLog
      3. ContactsContract
      4. Settings
VII. Persistance
   A. Creating, Saving, and Retrieving Preferences
   B. Saving Activity States
   C. Saving and Loading Files
VIII. Adding Media
   A. Playing Audio
   B. Recording Audio
   C. Displaying Bitmaps
   D. Capturing Images with the Camera
   E. Drawing
      1. Canvases
      2. Paints
      3. Drawable Shapes
   F. Frame-by-Frame Animations
IX. Accessing Device sensors and features
   A. Global Positioning System (GPS) Location Data
   B. Accelerometer
   C. Using Android Telephony Application Program Interfaces (APIs)
   D. Handling Multi-Touch Gestures
X. Messaging and Web Services
   A. Working with Notifications
   B. Short Message Service (SMS) Messaging
      1. Sending
      2. Listening for and Handling Incoming Messages
   C. Accessing Web Services
   D. Location-Based Services
      1. Maps
      2. Geocoding
      3. Configuring the Emulator to Test Location-Based Services
XI. Publishing Your App
   A. Digitally Signing Your App
   B. Versioning
   C. Packaging the APK File
   D. Publishing on the Google Play Store
   E. Other Deployment Avenues
   F. Monetizing Apps with In-App Advertising
   G. Marketing Strategies
MCCCD Governing Board Approval Date: June 25, 2013

All information published is subject to change without notice. Every effort has been made to ensure the accuracy of information presented, but based on the dynamic nature of the curricular process, course and program information is subject to change in order to reflect the most current information available.