首页 » APP代写 » App代写 | KIT305 KIT607 Mobile Application Development

App代写 | KIT305 KIT607 Mobile Application Development

这个作业是分别完成安卓跟ios应用
KIT305 KIT607 Mobile Application Development
SECTION A – ANDROID APPLICATION DEVELOPMENT
Attempt ALL questions from Section A. There are FIVE (5) questions in this section. This
section is worth 40 marks, or 33.3% of the examination.
Question 1 (Addresses ILO 2)
Android GUIs are constructed using XML layout resources. Figure 1 shows an image of
such an XML layout resource file called activity_character_select.xml.
Figure 1: activity_character_select.xml file.
a. Provide the XML code required for activity_character_select.xml to display the
GUI shown in Figure 1. For this task, you only need to declare the XML
elements (e.g. Views and ViewGroups) and not any attribute-value pairs (e.g.
android:orientation=”vertical”).
[10 marks]
b. Explain the purpose of the following lines of code, and describe what would
happen if you included this code in an onCreate() function in an Activity and
ran it.
super.onCreate(savedInstanceState);
Button btnStartGame = findViewById(R.id.start);
btnStartGame.setText(“Select A Character First”);
btnStartGame.setEnabled(false);
setContentView(R.layout.activity_character_select);
[3 marks]
3 KIT305 KIT607 Mobile Application Development
Continued…
c. When using a ConstraintLayout, what happens to a View at run-time if you
don’t define a vertical constraint on it?
[3 marks]
d. List TWO (2) purposes of the strings.xml resource file.
[2 marks]
Question 2 (Addresses ILO 2)
a. Describe TWO (2) differences between internal and external storage.
[4 marks]
b. Describe TWO (2) advantages and ONE (1) disadvantage of using
SharedPreferences on Android.
[4 marks]
Question 3 (Addresses ILO 2)
a. In this unit, we have seen multiple uses of key-value pairs in Android.
Describe TWO (2) of these uses.
[2 marks]
b. Why is it considered good practice to use static Strings for keys in Android
like in the sample code below? Use an example in your answer.
public static String USERNAME_KEY = “USERNAME”;
[2 marks]
Question 4 (Addresses ILO 2)
Intents allow us to open other Activities and send and retrieve data.
a. An intent filter lets us determine which activity to open when our application
is launched in different ways. Other than the usual way of launching an
application by clicking on its icon on the home screen or app screen, describe
TWO (2) other ways an application might be launched on Android.
[2 marks]
b. In the code snippet below, explain the purpose of the requestCode,
resultCode, and data parameters in the onActivityResult callback.
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{

}
[4 marks]
Question 5 (Addresses ILO 2)
Describe TWO (2) differences between local notifications and push notifications.
[4 marks]
4 KIT305 KIT607 Mobile Application Development
Continued…
SECTION B – iOS APPLICATION DEVELOPMENT
Attempt ALL questions from Section B. There are FIVE (5) questions in this section. This
section is worth 40 marks, or 33.3% of the examination.
Question 6 (Addresses ILO 2)
Consider the iOS Swift application in Figure 6.
Figure 6: An iOS application for a Tic-Tac-Toe game.
(i) (ii)
a. Describe the purpose of IBOutlets and IBActions. List TWO (2) instances
where IBOutlets would be used in the application above. List ONE (1)
instance where an IBAction would be used in the application above.
[4 marks]
b. Explain the difference between a Storyboard and a .XIB file.
[2 marks]
5 KIT305 KIT607 Mobile Application Development
Continued…
c. The application in Figure 6 has a button for saving the user’s nickname.
Complete the code below, so that it saves the user’s nickname (passed in to
the function as a parameter) to the standard UserDefaults object,
immediately reads the nickname back, and finally prints the name out to the
console.
func save(nickname nameStr : String)
{
// get a handle to the defaults system:
let defaults = UserDefaults.standard

// writing defaults:

// reading defaults:

// print to console:
}
[6 marks]
d. Explain the purpose of a Navigation Controller. How would you change the
text of the back button on screen (ii) in Figure 6?
[2 marks]
Question 7 (Addresses ILO 2)
a. What are segues in iOS?
[2 marks]
b. Consider the following Swift code snippet from a subclass of
UIViewController.
override func prepare(for segue: UIStoryboardSegue, sender: Any?)
{
if segue.identifier == “OpenSettingsScreen”
{
// do stuff
}
}
What is the purpose of the identifier in the code above and how would you
specify an identifier for a segue in the Interface Builder?
[4 marks]
6 KIT305 KIT607 Mobile Application Development
Continued…
Question 8 (Addresses ILO 2)
Swift is the standard programming language for developing iOS applications.
a. What would be the console output of the follow Swift program?
var things = [String : String]()
things[“Yellow”] = “Pineapple”
things[“Blue”] = “Blueberry”
things.updateValue(“Pen”, forKey: “Blue”)
var song = “I have a ”
for i in 0…2
{
song.append(“\(things[“Yellow”]!), “)
}
song.append(“I have a “)
for i in 0..<2 { song.append("\(things["Blue"]!), ") } song.append("\(things["Yellow"]!) \(things["Blue"]!)!") var str = """ I love to sing, watch: "\(song)" Hope you enjoyed my song! """ print(str) [4 marks] b. What is an Optional type? Provide a code example that illustrates how you would use the ! operator as part of your answer. [4 marks] c. Consider the following Swift function declaration. Give an example of how you would call this function in your code. func rateTeacher(_ name:String, score rating:Int) [2 marks] 7 KIT305 KIT607 Mobile Application Development Continued… Question 9 (Addresses ILO 2) Sketch the output of the following Swift code: //Create 3 rectangular structures: let r1 = CGRect(x:50.0, y:50.0, width:100.0, height:100.0); let r2 = CGRect(x:0, y:0, width:50.0, height:50.0); let r3 = CGRect(x:50, y:0, width:50.0, height:50.0); //Instantiate the 3 views: let v1 = UIView() let v2 = UIView() let v3 = UIView() //Set the view frames to the rectangles: v1.frame = r1; v2.frame = r2; v3.frame = r3; //Set the background colours: v1.backgroundColor = .red v2.backgroundColor = .blue v3.backgroundColor = .green //Set a transform: v1.transform = CGAffineTransform(rotationAngle: CGFloat(45 * Double.pi/180.0)) v1.transform = v1.transform.scaledBy(x: 1, y: 2) //Attach the views: view.addSubview(v1) v1.addSubview(v2) v1.addSubview(v3) [6 marks] Question 10 (Addresses ILO 2) Table Views are a way of listing data in iOS applications. a. Table Views can have either dynamic prototypes or static cells. When might you use static cells? [1 mark] b. Describe the purpose of the following override functions in a UITableViewController: (i) func numberOfSections(in tableView:) -> Int
(ii) func tableView(numberOfRowsInSection section: Int) -> Int
(iii) func tableView(cellForRowAt indexPath: IndexPath) -> UITableViewCell
[3 marks]
8 KIT305 KIT607 Mobile Application Development
Continued…
SECTION C – DESIGN AND USABILITY
Attempt ALL questions from Section C. There are TWO (2) questions in this section. This
section is worth 20 marks, or 16.7% of the examination.
Question 11 (Addresses ILOs 3, 4, and 5)
Consider the lo-fi prototype for teachers to mark students during class in Figure 11.
Figure 11: A lo-fi prototype of a tutorial marking application with (i) a class selection
screen, (ii) a screen for marking students, (iii) a screen for adding and deleting (iv) new
grade items.
9 KIT305 KIT607 Mobile Application Development
Continued…
a. Write a well-designed think-aloud task for testing the “Add Grade Item”
feature of the prototype in Figure 11.
[2 marks]
b. Explain how the test task you created in part (a) is concrete and does not
lead the user.
[4 marks]
c. Does the prototype in Figure 11 show an example of meeting the usability
goal forgiving or does it show an example of being failure-resistant? Justify
your answer.
[2 marks]
d. Does the prototype in Figure 11 make good use of Don Norman’s Usability
Principles of consistency? Justify your answer.
[2 marks]
e. Of the six usability goals/key aspects described in the week 2 lectures, which
one do you think is the most important for an application such as the one
shown in Figure 11? Justify your answer.
[2 marks]
Question 12 (Addresses ILOs 3, 4, and 5)
a. List TWO (2) advantages and TWO (2) disadvantages of lo-fi prototypes.
[4 marks]
b. Explain the difference between formative and summative think-aloud study
designs. Include in your answer the advantages and disadvantages of each
approach.
[4 marks]
10 KIT305 KIT607 Mobile Application Development
Continued…
SECTION D – SHORT ANSWER QUESTIONS TO THE SEMESTER READINGS
Attempt ALL questions from Section D. There are TWO (2) questions in this section. This
section is worth 10 marks, or 8.3% of the examination.
Question 13 (Addresses ILOs 1 and 5)
Consider the resource you read during semester titled Guerrilla HCI by Jakob Nielsen
(1994).
a. According to Nielsen, why do some developers not conduct usability testing?
[2 marks]
b. What is the difference between a horizontal and vertical prototype? Give a simple
example of what a horizontal and a vertical prototype might contain when
designing an application for watching movie trailers/previews.
[4 marks]
Question 14 (Addresses ILOs 1 and 5)
Consider the paper you read during semester titled Getting the Right Design and the
Design Right: Testing Many is Better Than One. Describe TWO (2) advantages to testing
multiple prototypes that the authors identified.
[4 marks]
11 KIT305 KIT607 Mobile Application Development
SECTION E – CROSS-PLATFORM DEVELOPMENT
Attempt ALL questions from Section E. There are TWO (2) questions in this section. This
section is worth 10 marks, or 8.3% of the examination.
Question 15 (Addresses ILOs 1 and 5)
a. Explain the difference between the web-based cross-platform and mobile-web
methods of development.
[4 marks]
b. What is responsive design and how does it relate to Tim Berners-Lee’s vision of the
one-web?
[2 marks]
Question 16 (Addresses ILOs 1 and 5)
c. Why are native applications generally faster than applications developed using
Cordova?
[2 marks]
d. We can make Cordova applications look like native applications. What is one major
problem that can happen when using this approach?
[2 marks]


程序辅导定制C/C++/JAVA/安卓/PYTHON/留学生/PHP/APP开发/MATLAB


本网站支持 Alipay WeChatPay PayPal等支付方式

E-mail: vipdue@outlook.com  微信号:vipnxx


如果您使用手机请先保存二维码,微信识别。如果用电脑,直接掏出手机果断扫描。

发表评论

电子邮件地址不会被公开。 必填项已用*标注