This course is an introduction to programming Android devices such as smartphones and tablets. Students will learn the Android development environment and will create simple applications. Flexible user interfaces appropriate for various devices will be developed using XML layouts. The activity life cycle, fragments, and use of intents will be explored. Data driven applications using files, XML and SQLite will be developed. The social and ethical issues of creating and deploying mobile applications and devices are discussed.