The Project is assigned to give you
experience in:
This is a group project for groups of 4
members (all in the same lab section). If you would like to be assigned a group,
send an email to your lab instructor. If
you have chosen partners yourself, then please email the names of the group to
your lab instructor. Once you have a
team for the final project, each of you should select one (and only one) of the
given topics. You should then fill out the Group Activity Worksheet together to
exchange contact information amongst your group (Algonquin student email
addresses at a minimum). You must then upload the Excel worksheet on
Brightspace, under the FinalProject assignment link on or before Nov 6th,
2020. This is worth 5% of your final project mark
Once you have
chosen your topic, you must implement this list of the requirements for the
final project:
1.
Each person’s
project must have a ListView somewhere to present items. Selecting an item from
the ListView must show detailed information about the item selected.
2. Each 1 at least 1 progress bar and at least 1 button.
3. Each activity must have at least 1 edit
text with appropriate text input method
and at least 1 Toast, Snackbar, and AlertDialog notification.
4. The software must have at least 1 or more activities
written by each person in your group. Your activity must be accessible by
selecting a graphical icon from a Toolbar, and NavigationDrawer. The top navigation layout should have the
Activity’s title, author, and version number.
5.
Each
Activity must use a fragment somewhere in its graphical interface.
6.
Each
activity must have a help menu item that displays an AlertDialog with instructions
for how to use the interface.
7. There must be at least 1 other language
supported by your Activity. If you are not bilingual, then you must support
both British and American English (words like colour, color, neighbour,
neighbor, etc). If you know a language other than English, then you can support
that language in your application and don’t need to support American English.
8. The items listed in the ListView must be
stored by the application so that appear the next time the application is
launched. The user must be able to add and delete items, which would then also
be stored in a database.
9.
Each
activity must use an AsyncTask to retrieve data from an http server.
10. Each activity must use SharedPreferences to
save something about the application for use the next time the application is
launched.
11. All activities must be integrated into a
single working application, on a single device or emulator.
12. The interfaces must look professional, with
GUI elements properly laid out and aligned.
13. The functions and variables you write must
be properly documented using JavaDoc comments.
Milestones:
Bonus marks will
be awarded for displaying correct functionality by the following dates:
Milestone # and
date |
Requirements
implemented # |
Bonus Marks
available |
#1 – Nov. 16 -
20 |
1, 2, 3, 11, 13 |
1 |
#2 – Nov. 23 -
27 |
10,7, 9, 11, 13 |
1 |
#3 – Nov. 30 – Dec.
4 |
5, 8, 11, 12, 13,4, 6 |
1 |
·
One
person should create a new project for the team and then upload it to github
using the menu option “VCS” -> “Import Into Version Control” -> “Share project
on GitHub”.
·
That
group member must then invite the other group members to contribute. This is
done by clicking on the “Settings” tab in Github, then click “Collaborators” on
the left side menu, and search the group member names to add them to the project.
Other team members should then clone that project to their computer and start
making branches for their work. From AndroidStudio, select “File” -> “New”
-> “Project from version control” ->
”Git” and then paste the git URL from the main github repository from
the previous step.
You will not be able to
integrate your work if you do not start by first cloning the project!
·
Then write
your own code on your own branch and then merge that branch on Github (after
each requirement is finished). Don’t try to merge the code only on the last
week.
·
Each
student is graded on his or her application separately. This counts for 85% of your project mark.
o
Week
of Nov. 16 - 20– demonstrate the Milestone 1 requirements for bonus
o
Week
of Nov. 23 - 27– demonstrate the Milestone 2 requirements for bonus
o
Week
of Nov. 30 – Dec. 4– demonstrate the Milestone 3 requirements for bonus
o
Week
of Dec. 7 - 11 Project demonstration during your scheduled lab demonstration
found on the demonstration schedule. You will show each of the 13 requirements
from the list. Arrange a single submission of the group deliverable by one of
the group members computer on behalf of the entire group. You must be in the
lab in person to answer questions about your work. Code submitted on
Brightspace will not be marked.
·
Before
your group demonstration, each member of the group must submit their final code
as a record of what was finished at the end of the project. From your github repository,
there is a link for “Clone or Download”. Select the Download option and save
your code as a zip file on your computer. Then upload that zip file to
Brightspace using the FinalProject link. This
is worth 10% of your final project mark.
Each of the applications (as they are
intended) requires similar programming techniques. Each application takes information from the
user and stores it in a database. They can then view the data saved to a list
of favourites and delete items from that list. Beyond that you are free to get
creative.
TicketMaster
event search
·
The
user can search for upcoming events near a given city. The user can enter the
city name, and a search radius for the events. The server will return a list of
events scheduled in that city. Your program should show the list of the names
of the events. Clicking on an event name should show the starting date, the
price range of tickets, the URL from ticketmaster, and the promotional image. The
user should also be able to save the event’s details in a database of saved
events.
·
The
SharedPreferences should save the name of the last city that was searched. It
should display that city name the next time the application is launched.
·
There
should be an option to view the list of saved events. Clicking on the name of
an event should show the same information as from the server. However this time
there should be a button to delete the city from the list of favourites.
·
You
should sign up for an API key from this website: https://developer-acct.ticketmaster.com/user/register.
The API looks like: https://app.ticketmaster.com/discovery/v2/events.json?apikey=XXXXXX&city=YYYYY&radius=100
·
You
would replace the XXXX with your API key that you signed up for, city is the city
where the events will be taking place, and the radius is how far from the city
the event is taking place to be included.
Recipe Search page
·
The user
can enter the name of a recipe to search. The server returns a list of recipes
that match the search terms. You should just show the Titles of the recipe in a
list. If the user selects one of the recipes, there should be a details page
which shows the Title, ingredients and URL to that recipe. Clicking on that URL
should launch a browser that loads that URL. There should also be a Save button
to save the recipe details on the device.
·
There
should be a “favourites” button that shows a list of saved recipes. Selecting a
title from the list of saved recipes should show the saved details. This saved
details page should have a delete button that removes it from the saved recipe
database.
Get Free Quote!
420 Experts Online