联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Java编程Java编程

日期:2021-05-06 10:45

PROG2005 – Programming Mobile Systems

Assignment 2 (S1 2021)

This assignment is due on Friday, 21 May 2021, at 11:00 pm. You should submit your source code as a ZIP

archive for all parts of the assignment to the assignment 2 submission link on the unit website. If the file size is

too large to upload via the submission link, please submit only the SRC folder of the Ionic projects as a ZIP file,

then send the entire project folders via a method specified by your tutor. Note that marks will be deducted for

poorly structured or uncommented code. All submitted source code files must include title comments that at least

identify the author and the assignment part. The separate parts of the assignment are to be submitted in separate

subdirectories (e.g. Part1, Part2 etc.).

Please note that this assignment will be due after the weekly sessions have covered the last of the required

materials, and covers several laboratory sessions and topics. Do not leave this assignment to the last minute –

complete the relevant parts of the assignment while concepts are fresh in your mind. If you require an extension,

you must apply to your tutor before the due date to be considered. Unless an extension is approved, there is a

penalty (see Unit Information Guide). This assignment requires you to develop two applications to demonstrate

your knowledge of Cordova and Ionic framework. It will start with a Cordova application in part 1, and you will

implement a multipage application using the Ionic framework in part 2. You must use only the TabsIonic template

for your apps for Part 1 and Part 2.

To ensure every aspect of the implemented apps work properly, test your apps on a real device or in an emulator

before the submission. The browser platforms do not support some of the plugins and hardware sensors, so the

applications may not be tested thoroughly in a browser window.

Part 1 – Ionic app using Ionic Native APIs (13 marks)

In this section, you will develop an app to use Cordova and Ionic Native plugins which access some of your

device’s hardware sensors (1 mark for the correct use of Ionic native). It is unnecessary to test your app on a real

device, but you should if you have one available. The app should be working correctly on an emulator (it will be

tested).

You are requested to develop a multipage Ionic app. The pages required are:

1. A page to implement Text-To-Speech service. Add (3 marks)

? an input field to enter a string

? a range control to select the speed rate of the speech (0 ~ 1)

? a button to call and execute the speak function

? a button to stop the playback

Users will need to enter a text. When the speech button is tapped, the app starts generating the

synthesized audio output of the input text. You can also add a list for locale (a string like ‘enUS’,

‘zh-CN’, etc.) if you wish, but this is optional. You will need to research the ‘text to

speech’ plugin for this.

2. A page to display the following device information (2 marks):

? Cordova version running on the device

? device’s model

? device’s operating system name and version

? device’s hardware serial number

To display the above information, you will need to add ‘Device’ Ionic native plugin to your

application.

3. A page to display the current magnetic compass heading in degrees (2 marks). This uses the ‘Device

Orientation’ plugin. For full marks, have the page show the heading in symbols N, NW, SE,

SSE, etc. (to three levels) (2 marks). For instance, SSE means South-South-East, which is south of

South-East. If you want to impress (no extra marks), display a compass and needle pointing to the

correct points of the compass.

4. A page that has an audio player implemented to play audio files (3 marks). Your player needs

? a button that plays the audio when tapped

? a button to stop the play

? a range input to adjust the volume

To implement the above, you will need to use the ‘Native Audio’ Ionic native plugin. Add

the audio file to the ‘assets’ folder of the Ionic project.

Part 2 – Ionic app to manage a veterinary clinic’s animal database (12 marks)

The aim is to develop an Ionic multipage app for a veterinary clinic that uses Ionic components, to maintain a

small database of animal information while the app is running on a mobile device or in a browser window. The

app will access a remote website using RESTful operations (see below) to create, edit and delete records on the

website.

Your app will implement an injectable service to access the remote website using AJAX techniques. Each page

component will access this injectable service for remote HTTP operations.

The data records have the following format (1 mark):

? Animal name – string. This will be a unique key for the data.

? Animal species – string (must be “dog”, “cat”, “rabbit”, “guinea pig”, “bird” or “other”)

? Animal age – number (will be the whole number of years)

? Animal sex – string (must be “male” or “female”)

? Phone number (owner’s number) – string

The data has the following requirements (1 mark):

? Each record must have a value for all fields. No field can be blank.

? The animal ‘species’ and ‘sex’ must be one of the options shown.

? The animal name can only be entered and saved once (it must be unique for each animal).

Your app will have several pages:

? Home page with greetings and your name as app author (1 mark)

? A page for listing all animals (1.5 marks)

? A page for adding new animals (1.5 marks)

? A page for editing the existing animals (3 marks). This page will also allow searching for animals and

deleting an animal from the data.

Your app will have help information that appears over the current page when requested (each page require a help

widget). The delete operation will require a prompt to confirm the delete. This prompt should be an Ionic dialogue

(not a JavaScript alert!). You must have at least four pages on your app, and if you chose the tabs template, you

must change the icons to be appropriate (3 marks for all of these).

Use appropriate Ionic user interface components to implement the app. Several things are missing here from the

usual app. For example, there is no splash screen requested and no media or other native interfaces (e.g. pictures

of animals). You can add them if you wish, but these have not been added as requirements to simplify the app.

The sever is at URL http:spike.scu.edu.au:8080/PetServ/ and the RESTful operations are as follows:

GET PetServ/ - get all the animal data as a JSON response (an array)

GET PetServ/name - get data for an animal named “name”

PUT PetServ/ - updates the record on the database with the PUT body, which is a JSON format

animal record. If the animal name exists, the associated data is updated. Otherwise, a

new animal record is created.

DELETE PetServ/name - removes the record with the given name. Note that removal of the animal named

“terry” is forbidden (status 403 returned) so that students will find at least one record

on the server. Successful deletion of other records must return a proper message.


版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp