Printed Course Overview TeenCoder: Android Programming Course Title: TeenCoder: Android Programming Printed Course Syllabus and Planner Updated October, 2015 Textbook ISBN: 978-0-9830749-8-4, published 2013 by Homeschool Programming, Inc. Length: 1 semester Student Pre-Requisites: Basic computer literacy skills, 9 th 12 th grade status. TeenCoder: Java Programming is a pre-requisite before starting this second-semester material. Students will use the same Java language and Eclipse IDE skills learned in TeenCoder: Java Programming to complete their Android programming projects. Description: The TeenCoder: Android Programming curriculum is a one-semester course teaching students how to create their own Android apps using the Java language. Materials: Student Textbook Oracle JDK, Eclipse IDE, Android SDK, Android ADT Windows or Mac OS personal computer Course activities (hands-on programming assignments) Course supplemental documentation Course instructional videos (optional) All Android apps are developed within a software emulator that runs on Windows or Mac OS. No Android hardware or service plans are required.
Labs and Grading Every chapter contains one or more hands-on programming labs where students will design or implement programs to demonstrate understanding of the lesson topics. These labs, combined with end-of-chapter tests, are used to determine the student grade. Course Planner A typical school semester consists of approximately 18 calendar weeks or 90 days of school. This course plan covers 18 school weeks of core material, assuming students are working 3-5 hours per week to stay on pace. Some students may move faster or slower than the suggested pace. Students may choose to implement a relaxed two-semester course by devoting less time per week or moving at a slower pace. The Week column in the planner below reflects a one-semester plan, and those on a two-semester plan can simply scale accordingly. 1 Chapter One: Introduction to Android Devices Install Android SDK, Android Development Tools Activity Android Operating System The student will add the SDK and Overview of Devices ADT to their Eclipse IDE. Android Development Environment Course overview 2 Chapter Two: Using Eclipse with Android Tools Creating Android Programs in Eclipse Examining Android Project Files Using the Android Virtual Device Hello, Android! The student will create their first Android program and run it in the software emulator.
3 Chapter Three: XML Resources XML Overview XML Rules and Special Characters Android XML Creating Your Own XML Document The student will practice creating a structured XML document in a text editor and verifying the results. 4-5 Chapter Four: Android Activities Activity Screens Creating Activities Switching Between Activities Handling Explicit Intents 6 Chapter Five: Screen Layouts and Views Android Units of Measure The Graphical Layout Editor Exploring Common Layouts Views and TextViews 7-8 Chapter Six: Android User Input Controls Text Input and Option Controls List Controls Spinners and Seek Bars Handling Different Devices and Languages Hello, Again The student will create a multi-screen application that can send data between screens. Simple Whack-A-Mole The student will create a simple whack-a-mole game using layouts and buttons. Whack-A-Mole Options The student will add an options screen to gather user game configuration choices from a variety of input controls.
9 Chapter Seven: Android File System Storing Preferences on a Device Using Internal File Storage Accessing the SD Card Whack-A-Mole Options as Preferences The student will save the game configuration settings into the app preferences. Whack-A-Mole High Scores The student will keep track of the game scores in an internal file. 10 Chapter Eight: Debugging and DDMS Debugging Android Dalvik Debug Server (DDMS) Emulator Limitations 11 Chapter Nine: Displaying Images Adding Image Resources The ImageView Control Horizontally Scrolling Images 12-13 Chapter Ten: Dialogs Launcher Icons, Button Images, Activity Backgrounds Anonymous Inner Classes Alert Dialogs AlertDialog Lists Date and Time Dialogs Whack-A-Mole SD Scores Load and save data to a SD card. Note-able Bugs The student will use the debugger to identify and resolve bugs in on existing project. Photo Album The student will create a photo album app that scrolls multiple images. Reminder Alarm The student will create a simple alarm app that accepts the user s date/time inputs and alerts when time has been reached.
14 Chapter Eleven: Menus and Notifications Implicit Intents User Notifications The Action Bar Context Menus Reminder Alarm Notification The student will enhance their alarm app to add a notification to the system menu that allows the user to snooze the alarm. Reminder Alarm Menu The student will add the ability to add multiple alarms in a list. 15 Chapter Twelve: Messaging and Networking SMS Messages Sending SMS Message from an App Using HTTP Networking 16 Chapter Thirteen: Creating Home App Widgets Creating App Widgets Interacting with App Widgets Widget Configuration Activity Reminder Alarm Context Menu The student will add the ability to long-click on an alarm in the list to get a context menu, and then delete the alarm. Weather App The student will create a simple weather application that gets and displays live data from an online weather services. Weather App Widget Create a widget for the weather app that can be placed on the home screen. Weather App Widget Configuration The student will add a configuration screen to uniquely configure an instance of a weather app widget.
17-18 Chapter Fourteen: Final Project Building the Activity Starter For the final project, students will create a matching game over a series of guided activities. Introducing Maelstrom Starting the Game Handling Player Clicks Swapping Sea Creatures Adding a Timer The Action Bar Saving and Loading Preferences