0% found this document useful (0 votes)
85 views4 pages

Mobile Programming Exam Guide

The document is a revision guide for a mobile programming exam focused on computer software engineering, specifically system analysis and design. It includes multiple-choice questions, short answer questions, and application scenarios related to mobile programming concepts, Android development, and the Android architecture. The guide aims to prepare students for their HND exam in mobile programming.

Uploaded by

Lynn Fotso
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
85 views4 pages

Mobile Programming Exam Guide

The document is a revision guide for a mobile programming exam focused on computer software engineering, specifically system analysis and design. It includes multiple-choice questions, short answer questions, and application scenarios related to mobile programming concepts, Android development, and the Android architecture. The guide aims to prepare students for their HND exam in mobile programming.

Uploaded by

Lynn Fotso
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

HND PATHFINDER’S APP REVISION FOR COMPUTER SOFTWARE

ENGINEERING
(SYSTEM ANALYSIS AND DESIGNS)
#Chia Desiere

Mobile Programming Exam Questions

Instructions: Answer all questions to the best of your ability.

Section A: Multiple Choice (Choose the best answer)

1. Which of the following best defines mobile programming?

a) Developing websites for mobile browsers.

b) Creating software applications that run on desktop computers.

c) Designing and developing software applications for mobile devices.

d) Managing mobile network infrastructure.

2. A smartphone is an example of a:

a) Mobile terminal only.

b) Mobile device only.

c) Both a mobile device and a mobile terminal.

d) Neither a mobile device nor a mobile terminal.

3. Developing an iOS application using Swift is an example of:

a) Cross-platform development.

b) Native development.

c) Hybrid development.

d) Progressive Web App development.

4. Which of the following is a primary advantage of cross-platform development?

a) Optimal performance and full access to device APIs.


b) Lower development cost and faster time-to-market for multiple platforms.

c) Platform-specific user interface and user experience.

d) Utilizing platform-specific programming languages.

5. Which programming language was historically the primary language for Android
development?

a) Swift

b) Kotlin

c) Java

d) Objective-C

6. The Android operating system is based on a modified version of the:

a) macOS kernel.

b) Windows kernel.

c) Linux kernel.

d) UNIX kernel.

7. Which of the following Android versions introduced Material Design?

a) Jelly Bean

b) KitKat

c) Lollipop

d) Marshmallow

8. Which layer of the Android architecture provides a standard interface for the Android
framework to interact with device hardware?

a) Applications

b) Android Framework

c) Android Runtime and Libraries


d) Hardware Abstraction Layer (HAL)

9. Which of the following methods is the first callback invoked when an Android Activity is
created?

a) onStart()

b) onResume()

c) onCreate()

d) onPause()

10. In Android, an explicit intent is used to:

a) Perform a general action that can be handled by multiple apps.

b) Specify the exact component that should handle the intent.

c) Broadcast a message to all interested components.

d) Request permissions from the user.

11. Which component of the Android SDK is the official Integrated Development
Environment (IDE) for Android development?

a) SDK Tools

b) Platform Tools

c) Android Studio

d) Emulator Images

12. An Android Virtual Device (AVD) is:

a) A physical Android phone used for development.

b) A tool for managing the Android SDK.

c) An emulator that simulates an Android device on your computer.

d) A library used for UI development in Android.


Section B: Short Answer (Answer briefly and concisely)

1. Differentiate between a mobile device and a mobile terminal, providing one example of
each (different from a smartphone or tablet for the terminal).
2. Explain one key advantage and one key disadvantage of native mobile development.
3. Name two popular cross-platform mobile development frameworks and the primary
programming language(s) used with each.
4. Briefly describe the role of the Android Runtime (ART) in the Android architecture.
5. List the four key components that make up the Android architecture.
6. Explain the purpose of the onPause() method in the Android Activity lifecycle and why
it is important for saving application state.
7. What is an implicit intent in Android, and what is the significance of using
resolveActivity() with implicit intents?
8. What is the Android SDK, and what are two essential components it includes besides
Android Studio?
9. Outline the steps to enable USB debugging on a physical Android device.
10. What is the purpose of the Android Device Manager (or AVD Manager), and what is the
first step in creating a new Android Virtual Device?

Section C: Application and Understanding

1. Imagine you need to develop a mobile application that requires very high performance
and direct access to specific hardware features of both Android and iOS devices. Would
you choose native or cross-platform development? Justify your answer.
2. Describe a scenario where you would use an explicit intent in an Android application you
are developing. Also, describe a scenario where you would use an implicit intent. Provide
a brief example of the action you would want to perform in each case.
3. A user navigates away from your Android Activity to another app. Describe the sequence
of Activity lifecycle methods that are likely to be called. What should your Activity do in
the onPause() method during this transition?

This set of questions should provide a good basis for your HND exam.. Good luck with the
exam!

Common questions

Powered by AI

Developing an application that requires very high performance and direct access to specific hardware features is better served by native development because native development provides optimal performance and full access to device-specific APIs. Native development allows the application to be closely integrated with the operating system, enabling more efficient use of device resources and access to specific functionalities that cross-platform solutions might not fully support .

The Android Runtime (ART) is a key component of the Android architecture that executes applications on Android devices. ART compiles bytecode into native machine code at the time of installation, significantly improving the performance of applications compared to the previous Dalvik runtime, which relied on just-in-time compilation. This ahead-of-time compilation process reduces the execution time of applications, leading to faster runtime performance and better battery efficiency .

A mobile device refers to any portable computing device that can perform tasks such as communication, access to internet, and running applications, such as a smartwatch. A mobile terminal typically refers to a device used to interface with and perform tasks related to specific functions, often lacking the broader capabilities of a general computing device, such as a GPS unit .

The purpose of enabling USB debugging on a physical Android device is to allow the device to communicate with a computer so that Android applications can be developed and tested directly on the device. To enable USB debugging, navigate to the device's 'Settings,' select 'About phone,' tap 'Build number' several times to unlock Developer Options, go back to settings, open 'Developer Options,' and then toggle 'USB debugging' to enable it .

To create a new Android Virtual Device (AVD) using the AVD Manager, first open the AVD Manager from Android Studio. Click on 'Create Virtual Device,' select a hardware profile that matches your intended use, choose a system image for the Android version you want to emulate, and configure hardware properties before finishing the setup. The primary purpose of an AVD is to simulate a physical Android device on your computer, allowing for application testing and development without needing actual device hardware .

The use of resolveActivity() with implicit intents in Android is significant because it checks whether there is an application that can handle the intent before launching it. This helps prevent the application from crashing due to the absence of an appropriate application for performing the requested action, thus ensuring a more robust and user-friendly experience .

The 'onPause()' method in the Android Activity lifecycle is called when the system is preparing to enter a new activity, which means the current activity is partially obscured. It's important for saving any changes to persistent data and stopping animations or other visual changes that may consume CPU. The 'onStop()' method is called when the activity is no longer visible to the user, which is a signal to perform heavier shutdown operations, such as releasing resources that are not needed while the activity is not visible .

The Hardware Abstraction Layer (HAL) in Android architecture provides a standard interface for the Android framework to interact with device hardware. It acts as a bridge between the hardware-specific software and the rest of the operating system, ensuring that the Android system can use the hardware features of a device consistently across different device models .

An explicit intent is used when you want to start a specific component or service and you know exactly which class to target, such as starting a particular Activity within your own app. For instance, navigating from a main menu Activity to a settings Activity in the same application would use an explicit intent. An implicit intent is used when the action is more general and can be handled by multiple applications. An example would be sharing text via any available app that supports text sharing. Implicit intents rely on the system to determine the best handler for the request, unlike explicit intents that specify the exact target .

Two popular cross-platform mobile development frameworks are Flutter and React Native. Flutter primarily utilizes the Dart programming language, while React Native uses JavaScript as its primary language .

You might also like