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

First Term: 2013 Summer II
Lec + Lab   3.0 Credit(s)   4.0 Period(s)   3.7 Load  
Course Type: Occupational
Load Formula: S- Standard


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 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.