Explain the role of the plugin in an app that uses cordova

Assignment Help Programming Languages
Reference no: EM132800572

CSC73010 Programming Mobile Systems - Southern Cross University

Part A - Short answer question

Answer these questions in the provided space after each question. You should be able to answer these in a few lines.

1. Explain the difference between accelerometer and GPS sensors in mobile devices. Give two examples of apps that could use the accelerometer and two example that could use the GPS sensors. With your examples, explain how they would use these sensors.

2. What are the disadvantages of developing an app in theionic development environment over Java (Android) or Objective-C/Swift (iOS)?

3. The following is a JavaScript function header:

function saveDetails(name, ID, member) {
... return true; ....
}

If the name is a string, the ID an integer, member is a Boolean value and thereis no returned value. How would this be declared in Typescript to fully specify the types in the function header. (Note that we have not always fully specified function types in the unit).

Also, how would be specify a variable or parameter that could be assigned functions of this type.

4. The following is a TypeScript interface definition:

interface Person {name: string; ID: number; member?:boolean};

Which of the following objects is not a correct type? Why?

{name:"Peter"}
{name:"Peter", ID:1234}
{name:"Peter", ID:1234, member:true}
{name:"Peter", ID:1234, phone:12234567}

5. What are the coded parts of an Angular component? What does a component represent in a running app. Just explain the main parts.

6. Dependency injection is a concept in Angular (and Ionic) that allows computation to be packaged as a service to many components. Explain how it works.

In your explanation, explain how multiple components can interface with the same dependency injection service.

7. Angular has the concept of a two-way assignment. An example is the following template code:

<input type="text" [(ngModel)]="userID"/>

Explain why this is called "two-way".

8. Suppose we have an array declared in an Angular component as follows:

colours: string[];

Using the *ngFor attribute, how would we code a set of paragraphs in the template (using <p> tags) of the form:

Colour 1 is red
Colour 2 is yellow
Colour 3 is pink

This assumes the array is initialised with the strings "red", "yellow", "pink", etc.

9. Suppose we implement a checkbox in an Angular template as follows:

<label for="Check1">Are you happy?</label>
<input type="checkbox" id="Check1"
[(ngModel)]="happy" value="happy" name="areYouHappy"/>

What needs to be declared in the component class? Write down the declaration.

How would you display whether the checkbox was checked elsewhere in the same template?

10. What is the difference between the POST and PUT message types in the HTTP protocol? In a REST system, describe two different ways these message types can be interpreted.

11. What is the difference between Promises and Observables in JavaScript/Typescript environments? Explain why you would choose one over the other in implementing parallel processing.

12. What is Content Security Policy (CSP). How does it improve security for ionic apps and other web-based apps?

13. Explain the role of the plugin in an app that uses Cordova (e.g. an ionic native app) and how does ionic use these plugins. In your answer explain why these are necessary in most ionic apps.

14. Why do mobile apps usually require many pages? How does ionic provide support for multi-page apps?In your answer explain the creation of pages by the developer, how page navigation works, and the files/components used in defining a page (as we saw in the learning materials and you programmed). Don't worry if you forget the name of components or other ionic syntactic details.

15. The following is the template code for an Ionic header.

<ion-header>

<ion-navbar>
<ion-title>My app title</ion-title>
<ion-buttons end>
<button ion-button icon-only (click)="goOptions()">
<ion-icon name="options"></ion-icon>
</button>
</ion-buttons>
</ion-navbar>

</ion-header>

What does this header look like?
How would you add another icon to the header that displayed a help message without changing pages?

16. A basic Ionic list can be defined as follows:

<ion-list no-lines>
<button ion-item *ngFor="let item of items"
(click)="itemSelected(item)">
{{ item }}
</button>
</ion-list>

Where is this code placed?
What other code needs to be implemented? State what needs to be defined and where it should appear.

17. Cordova implements the W3C Web Storage interface which is also implemented by most browsers (it has an interface very similar to the ionic storage interface). How does this work? What are the security implications?

18. The following is ionic code to read a file.

filesystem.readAsText(this.filesystem.datadirectory,"mydata.dat")
.then(
(txt) => { process(txt); },
(err) => { error(err); }
);

What does the readAsText() function return? What happens if the file does not exist?

Part B - Longer answer question

Read carefully the specification below. The remainder of this part of the exam refers to this mobile application.

An app is developed to allow people to exchange money. The app has the following features:

- One app user may transfer money to another app user. This is not reversible. Both users must use the app and have established accounts.
- The app communicates with a server which has account details and transfers money between accounts.
- An app user may transfer money to the app account using credit card, paypal or bank transfer. This is handled by the app and a use just has to enter the account details on the app once.
- A user may transfer money from the app account to their own bank account. This is handled by the app and a use just has to enter the account details on the app once.
- Transfer communication between mobile devices is by Bluetooth (or other supported near wireless communication) or bar code (using screen on one device and camera on the other) or SMS message.
- The app will save "friends" account details which allow the app use to transfer money to other users (but not from other users) when users are not in proximity.
- Transfers may be scheduled for future dates.
- One or both of the apps involved in a transfer may have their communication with the server temporarily off-line. (this has significant impact on the security and design)

Consider all the privacy and security aspects of this system by explaining:

a. Who is responsible for the privacy and security of the app(which aspects are allocated to whom)?

b. How should transparency be applied (privacy policy, notice and consent)

c. Are there data management issues? How should they be handled?

d. How should the security of databe handled?

Attachment:- Programming Mobile Systems.rar

Reference no: EM132800572

Questions Cloud

Discuss each of the stages in the change model : Discuss each of the stages in the change model/framework. Describe how you would apply each stage in your proposed implementation.
Examine the first paragraph of bernie sanders essay : Examine the first paragraph of Bernie Sanders essay and describe Sanders approach to his argument.How does he use rhetorical appeals ? Assumptions? Definition?
What are key takeaways from the video : What are your key takeaways from the video? What did you find inspiring? What did you agree with? Has this video prompted you to think differently?
Discuss the epidemiology of allergies : A 35-year-old comes to the clinic. He states, "It's getting close to allergy season and I need something to keep me from getting sick. Last year the doc.
Explain the role of the plugin in an app that uses cordova : Explain the role of the plugin in an app that uses Cordova (e.g. an ionic native app) and how does ionic use these plugins. In your answer explain why these
What are the points of indecision in a decision tree model : What are the points of indecision in a decision tree model (examples)?
Complete the information about pepsico : Complete the following information about PepsiCo. You may need to do research to get answers to the questions below.
Identify and discuss ethical and other professional issues : BlackStone Ltd (BlackStone) is a large food retailer focusing on Melbourne market. Identify and discuss ethical and other professional issues
Which specific assignment for the course was your best work : Which specific assignment for this course was your best work? Name one. What makes it your best work? What did you learn by creating it?

Reviews

Write a Review

Programming Languages Questions & Answers

  Prepare menu driven program for arithmetic operations

Create algorithms, flowchart and write programs in c language for following: Prepare a menu driven program for different arithmetic operations.

  Describe function work for array-based stack

Return number of items in stack. Describe how this function would work for array-based stack and what would change for pointer-based stack.

  Describe how a stack buffer overflow attack is implemented

Describe how a stack buffer overflow attack is implemented. What restrictions are often found in shell code, and how can they be avoided?

  Do ides help or hinder newbies learning to code

Do IDEs help or hinder newbies learning to code? Should they first be exposed to a text editor without a lot of fancy features to learn how to set things up

  Write a main program to call a procedure

Write a main program to call a procedure that converts the Fahrenheit temperature value stored in the location labeled TdegF to its Celsius equivalent. The range of temperatures is 32°F to 212°F

  Program for vehicle registration department

Consulting firm has narrowed the choice of programming language to Java and C#. Which language do you believe would be more suitable for this application and why?

  Create a python file called passwordsaver

We will be extending the Caesar cypher we looked at earlier into a full-fledged password saver. Create a python file called PasswordSaver.py in PyCharm

  Create a structure diagram chart grouping processes

Create a structure diagram/hierarchy chart grouping processes from the defining diagram into modules (You need to do this, but you do not need to turn it in as part of the grade)

  Write a program that requests the number of bagels ordered

Write a program that requests the number of bagels ordered and displays the total cost. Test the program for orders of four bagels and a dozen bagels.

  Explain the loops in detail

Even should only be reading for the FOR Loop. I tried moving it around and it won't work so I don't know how to fix it to not show on the DO..WHILE Loop and the WHILE Loop

  Design an applet that generalizes the kochsnowflake program

Design and implement an applet that generalizes the KochSnowflake program. Allow the user to choose a fractal design from a menu item.

  Program that uses for loop prompt user to input two integers

Write a program that uses for loop to preform the following steps: Prompt the user to input two integers: firstnum and secondnum.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd