Introduction
You have to use the content of the lectures to design a small project that you should hand out at the end of the semester. By default, the subject is a digital business card but you can propose your own subject as long as it covers these three main constraints:
- Include a local Android SQLite database;
- Use an Android-specific inter-device mechanism (e.g. SMS);
- Make a clear separation between Pure Java code (Business Model) and Android-specific code.
Functional description
The 'default' project is to build an Android application to handle digital business cards. There are three main functions that must be fulfilled:
- Display/Edit Business cards: show as a business card and allow edit;
- Editing means: select which fields (from the full contact database) is displayed and where they are displayed
- Import/Share information with Android Contact database: Some of the information from the business card is shared with the standard Android Contacts database, additional information (e.g. QRCode) may be added in a specific database;
- The local database should store the choices from the editiing and NOT the same information as in the contact database (make a reference to it).
- Send/Receive Business card: when meeting someone, your app should allow either for you to send your business card or to receive a business card from another Android device.
- You have to image scenarios on how you meet people and share your digital business card (do you assume they have the app installed or not...)
Deadline
- M1 IFI: May, 29th midnight
- Make a zip with the Android Project
- Send to fmallet at unice.fr
- Object: [M1IFI] Android project - NAME1 NAME2 [NAME3]
- Body: Report from your project (pdf) + zip or link to a website
Report
The report should contain:
- a description of the three(4) scenarios, at least one for each function
- A scenario is a sequence of screens (Androidś activities) that you have to develop or you decide to reuse
- Between each activity, you must describe the events that trigger the change of screen
- You must decribe both sides: your side and the side of the person you meet
- a description on how you addressed each of the three constraints in the Introduction section
- including a description of the database
- which inter-device mechanism you have used
- how did you separate the Java code from the Android code (UML diagram for instance)
- the repartition of the work: who did what part