Android Media App Dev

IGME-590

Project 1 - Utility App

Overview

Here's a list of the most popular Utility apps on the iOS App Store. The Google Play store doesn't have a Utility category, but they do have Tools and Widgets, which is close.

For our purposes, we'll define a Utility App very broadly as in "not a game", and "not a content driven app" (i.e. Facebook, Zillow, Yelp, ...).

You have a lot of freedom here in what you can create for this project - use this opportunity well!

The assignment is worth 20% of your final grade, is graded out of 100 points, and no late submissions will be accepted, so post what you have before the due date to receive partial credit. An A grade will be awarded only for meeting the requirements below, and going sufficiently "above and beyond" what we have done in class.

If you publish this app on Google Play prior to the beginning of finals week, your project grade will be raised by 10%.

Requirements and Rubric

1. Usability and overall UX (40%)

2. Required Features (30%)

  1. Set your Minimum SDK to Android 4.1
  2. Your app has three or more Activities. One of the Activities must be an "About this App" activity displaying the name of the app and team member names.
  3. At least 1 of these activities is a "child" activity that passes data back to a "parent" activity.
  4. Locally stored data - probably using SharedPreferences.
  5. Your project has at least 1 Model Class (a DataStore class does not count towards this requirement)
  6. The app maintains its state even when rotated or quit.
  7. Custom app icons for all of the available screen densities.

3. Visual Design (20%)

  1. Attractive and Functional UI.
  2. Make sure the app UI presents well on a variety of screen sizes. You must support at least 2 different screen sizes with an additional layout XML file. Here are 3 handy links about how to do this: http://developer.android.com/training/multiscreen/screensizes.html and http://developer.android.com/training/basics/supporting-devices/screens.html and http://developer.android.com/guide/practices/screens_support.html
  3. Support Landscape orientation, or make the app portrait only.
  4. Consider using Material Design elements. Here is a tutorial: http://www.raywenderlich.com/103367/material-design and a list of resources: http://www.sitepoint.com/10-essential-material-design-resources-and-tutorials/

4. Code (10%)

5. Penalties (There are no set values for penalties. The more penalties you make, the more points you will lose.)

Deliverables

See dropboxes for due dates:

Documentation (-10% off of final grade if not completely done)

Both team members will submit docs. It's a good idea to document things as you are working on the project. Consider setting up a google doc right away so that you can posts links and other information there as you are working.