Earlier this year during the summer we were contacted by Jack Stansbury, a Computer Science and Math teacher working at Poolesville High School in Maryland. He was in the process of getting a class on the subject of writing mobile applications approved by the school board and implemented in his and the surrounding districts and he wanted to know if he could print and use one of our infographics "How Mobile Apps Are Invading Your Privacy" as collateral for his classes. We thought Jack's idea was awesome and were happy to print the infographics and send them his way free of charge, in return he has generously written up the following on his new course! This course is designed for the high school student with a background in computer science. In this class, students will learn how to write Android applications that perform efficiently and work well for the user. A goal of the course is that our apps will be high quality and appealing to other users. Each student will write at least one complete app that could be sold on the Android app market. Students will use the Android SDK to write their apps, using the Eclipse programming environment to create, execute, debug, and test the app. The following are the “Enduring Understandings” for this course.
- Students enjoy writing apps for the electronic devices they use every day.
- Selling an app on Google Play is a motivator for writing useful and efficient apps.
- Having a good foundation in the Java programming language is essential to writing Android apps.
- Using the Android SDK objects and their methods is similar to using the Java Runtime Library objects and methods.
- Following a step-by-step guided tour of the Android programming environment will advance a student’s knowledge of writing apps for mobile devices.
- Much of an Android apps user interface can be written in XML.
- Layouts, ListViews, and Adapters are necessary for most Android apps.
- Building a knowledge-set of Android user interface and utility objects will enhance a student’s ability to write exciting apps for mobile Android devices.
This unit follows the online Android Training located at http://developer.android.com/training/index.html. A good alternative that is strongly recommended on Android programming sites is an online book called The Busy Coder’s Guide to Android Development. This online book is updated several times per year with new content based on changes to Android and its development tools. http://commonsware.com/. Students start out looking at the Notebook sample Android app that comes with the SDK. They then write a simple Chat-type app to understand the part that XML plays in Android app user interfaces. The next app they work on in groups is an Image Survey app. Since images play such a big role in many apps, students learn how to use alternative resources, handle different-sized devices, the properties of ImageView, and how to manipulate images. The last app they develop is a Layout Survey App, where they develop a simple app showing the uses of the different layouts in apps. The last app they write together is a more detailed look at manipulating parts of the Android app user interface. Finally, they write their own app following a conventional software engineering process. The students use Eclipse Helios, JDK 6, and the latest Android SDK and Eclipse Android plugin. Drivers are installed for various devices as needed. The school has a Motorola XOOM tablet, so testing is done on this device, as well as on any Android devices that the students own.