You'll work with the partner from this list.
Choose one partner to host your project. Store your Android Studio project for this
assignment in a subdirectory called "assignment2" in that partner's cs342 bitbucket repository.
To hand in this project, email your
repository link to Jeff. Make sure your
repository is public so the grader can get
it, too.
The goal of this project is simple: get you a first experience using the Android tools
to write an app. You'll use this experience to help you decide between iOS and Android for your big
project in the course, and of course if you choose Android, this experience will give you a
foundation to work from.
To that end, we're going to keep it simple and flexible:
- Upon launch, your app should present the user with a list view, as in the ListDemo
sample from my android_samples
repository.
- The main screen should have an Action Bar containing at least an About item that
takes the user to an About screen.
- When the user taps on a list item, the app should navigate to a
new Activity whose content is described in the list item itself. (For example,
if the list item says "Cow", the new Activity might show an image of a cow,
which moos when you tap on it.)
- Each Activity visited in this way should have a standard back arrow in the upper left
corner of the Action Bar. Tapping on the back arrow, of course, should return the
user to the original list Activity.
- Your list should have at least three items, and the associated Activity screens
should explore different Android tools or techniques. Your separate screens could, for
example, include a tappable image view screen (like the cow described above), a web view (i.e.
a mini web browser in your app), a bunch of standard controls like checkboxes and radio buttons and
text fields, a map view, a scroll view, an experiment with sound, a video, etc. etc. Keep each
screen focused on one basic Android tool or technique.
- In general, your Activities should slide in from the right and slide back out to the right
when the user taps the back arrow. On the other hand, if you want to experiment with other
animations, that's a good use of some list items.
- Make sure you include enough text labels to help a user understand what tools and
techniques each Activity is exploring. That is, other members of this class should be
able to figure out what's going on in your app just by playing with it.
Try stuff and share
This is your chance not just to struggle with getting your bearings in Android, but also
to try all sorts of Android crap without needing to worry about an end user's needs. Are you
curious about how to make an app do X or Y? Then give X and Y a shot yourself.
Did you figure out how to do something neat? Then share it on slack, with the
URL of your bitbucket cs342 repository.
When these apps get submitted, we'll have a little show-off session to see some of the
most interesting things teams have done.
Have fun!
Get started early, and post questions on slack.