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...)
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
Deadline
- M1 IFI: May, 29th 2017, 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