Assignment 1: Hello Mobile Application Development (HelloMAD) on the App Store

 

Individual Assignment

 

The purpose of this assignment is to help you get started with the Android development tools. You will “publish” your first application on the Android Play Store (formerly known as "the Android Market", or "the Market"). This application will evolve over the course into your final project. When you have an update, you will send it to the Play Store. We will grade the apps right off the Play Store.

 

Using the Hello Android text and materials on the Android developer web site (http://developer.android.com/guide/developing/index.html), create a Hello Mobile Application Development (HelloMAD) application.

 

This is the program that you will update throughout the course.

 

Your app should have the following:

 

You must follow these instructions to ensure that your application will only run on specific phones that we authorize (in addition to the emulator). This is so that other people are not running your assignments as you develop them on phones that are entered into the course phone database. If someone runs your application on a non-authorized phone, it should display a message such as “This is a test application not intended for public use” for a few seconds and then close.

 

Your app should have the name NUMAD13-[YourFirstName][YourLastName] on the phone (e.g., NUMAD13-StephenIntille).  Use the package edu.neu.madcourse.yourname (e.g., edu.neu.madcourse.stephenintille) for your code (this means you must refactor the package for the Soduku example, as well).

 

When you post on the Play Store, you will be required to supply some icons and screenshots. Grab them from this file: MarketImages.zip. This includes the images you should use. You need to make your app look as unattractive as possible on the Play Store to discourage people from trying it. Any description should be entered as "This is a test application only." When people do try it (and they will), it should not run for them, as described above.

 

As you complete this assignment and have “aha!” moments where you figure out tricky things that might hold other people up, you should post those to the Piazza message group.

 

In addition to submitting your app on the Play Store, you will also need to setup an account on BitBucket where you will submit your project files using the source control program GIT. Follow these instructions on using Git and BitBucket. This will make it possible for the course staff to access your code for review. You need to learn to use Git properly so that you are incrementally committing your work to the BitBucket repository.

 

By the deadline, you must have your app on the Play Store and your code repository setup in BitBucket.

 

Decision time: To do this assignment you will need to make a decision about whether you want to use Android Studio (Google Android Tools + IntelliJ IDE) or Eclipse+ADT (Google Android Tools+ Eclipse). The Eclipse option is the more common one at the moment, and it is the option discussed in the textbook, but Google is moving towards making Android Studio the standard development platform. IntelliJ is a very good IDE that one gets to use when using Android Studio. There is no "right" path. At this point for someone starting from scratch, it might be easiest to start with Android Studio. It is still in beta, but Prof. Intille has found it to work perfectly fine, and in fact to be more stable than Eclipse, and IntelliJ has a great reputation. That said, if you're familiar with Eclipse, you'll have to relearn commands and may occasionally find yourself hunting for ways to do things. Prof. Intille's advice is to try Android Studio, but because it is still in beta, it is not the required tool for the course. We will be able to compile and run your code using either the Android Studio or Eclipse IDE. Remember in both cases that you don't want to include project specific files or build files in your Git repository.

 

You will be graded based on how well you follow the instructions above. Details matter!