Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
1 Aims and Objectives
Ø To gain experience in mobile application UI and program design.
Ø To gain practical skill of Android application development.
Ø To understand the constraints and limitation of mobile application and the ways to overcome them.
Ø To obtain knowledge on connecting the mobile device to the internet services and building a multi-tier distributed system.
2 Introduction
In this assignment, you are required to develop an Android Application to play a Mathematic Game by generating ten mathematic questions and then requests player to solve them. This app will also record the result and corresponding time required to complete a game and players can use a list to show their history records.
3 Functional Requirements
Listed below are the basic requirements of your application. You need to refer to the Local Database section for the database schema.
|
a) A main activity which contains a main menu for players to choose. The four main functions are: Play, Game Ranking, Your Records and Close. |
b) Game Play
|
When a player touches the "Play" button on the main menu, they start to play the game. The game will show the first question and timer will start to count the player to spend how many seconds to play this game. Player should give his/her answer in the EditText widget and then touch the button "Done". The game will give the result to the player and show the button "Next" to let player touch it and then jump to next question.
|
|
When player finish to play ten questions, the final result will show on the screen and the button "Continue" will be shown on the bottom. Player can start to play a new game by touch this button. Note: You are encouraged to design and implement extra features. For example, use image buttons to replace numeric buttons. 20 marks will be allocated on such additional functions. Refer to section 7 Marking Guidelines for more details.
|
|
c) When players touch the "Game Ranking" button on the main menu, your app will download a JSON from a given api server. You MUST use a ListView to show all the records in the JSON string. |
|
d) When players touch the "Your Records" button on the main menu. Your app will load the records in the GamesLog table from your local database. You MUST use a ListView to show all these records.
|
e) Question Criteria
Components of a question should have two operands and one operator only.
Two operands and one operator are RANDOMLY generated by your programme.
Two operands must be integer.
The maximum value of operand must be 100.
The minimum value of operand must be 1.
Operators are limited to +, -, *, /.
For division calculation, the answer should be an integer. For example, 23 / 2 is not allowed.
For minus calculation, the answer must be greater than or equal to 0.
4 Local Database
The database scheme described here is an extremely simple one. Many fields are intended not to be included in order to reduce the complexity of this assignment. You are free to add columns and tables to the database to fit for your own needs.
GamesLog (gameID, playDate, playTime, duration, correctCount)
5 Ranking JSON Server
You can obtain a ranking list from following api server and the data returned is in JSON format:
https://ranking-mobileasignment-wlicpnigvf.cn-hongkong.fcapp.run
The JSON string returned is shown below:
[{"Name":"Peter Kwong","Correct":10,"Time":89},
{"Name":"John Chan","Correct":10,"Time":95},
{"Name":"Mary Lam","Correct":9,"Time":92},
{"Name":"David Wong","Correct":9,"Time":87},
{"Name":"Alan Po","Correct":8,"Time":72}]
6 Additional Constraints
Ø The UI of the mobile application must be produced with Android widgets such as TextView, CheckBox, and Spinner etc. Web-based UI is NOT allowed.
7 Marking Guidelines
You project will be assessed according to the items below.
Ø Database initialisation
Ø Level of completion
Ø Correctness
Ø UI design (no mark will be given if you are using the same design in this document).
Ø Program design and implementation
Ø Program style and comments
Ø Driving Question: How can a company get benefit from a purchase order management system by using a mobile app? Briefly discuss how the assignment or project in ITP4510, ITP4522 and ITP4915M modules help you to finish this assignment.
20 marks will be allocated to extra features not described in section 3. Each student can develop at most 3 additional functions such as animation effect, sound effect or using images to represent the numeric data and operators, or any other relevant and useful functions.
10 marks will be deducted if you do not submit your answer of last two questions in section 7:
Driving Question: How can a company get benefit from a purchase order management system by using a mobile app?
Briefly discuss how the assignment or project in ITP4510, ITP4522 and ITP4915M modules help you to finish this assignment.
40 marks will be deducted if demonstration is not done.