Mobile Software Engineering I - Unit 3 Flashcards

(24 cards)

1
Q

Before installing Android Studio, what points need to be considered?

A
  • hardware requirements
  • operating system requirements
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What hardware requirements exist for Android Studio?

A
  • > = 4GB RAM
  • > = 2 GB storage
  • 1280x800 minimum
  • CPU not older than 2 years
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What tool can be used to speed up the experience of Android emulation on Windows? How does it acheive that?

A

The Hardware Accelerated Execution Manager (HAXM) uses Intel virtualization technology.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What tool can be used to speed up the experience of Android emulation on Linux?

A

Kernal-Based Virtual Machine (KVM)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are the main configuration options that need to be specified during the creation of an android project in Android Studio?

A
  • application and package name
  • language
  • minimum SDK
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is every display in an android application made up of? What languages are these written in?

A

A source file in Java/Kotlin and a layout file in XML.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What main components exist in the design mode of android layout XML files?

A
  • palette: components that can be dragged and dropped into the design surface
  • design/blueprint surfaces: preview of the view/blueprint information of the layout
  • attributes: used to change properties of graphical components
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What main groups of files comprise an Android project?

A
  • manifests
  • Java files
  • resource files
  • Gradle scripts
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What folder are resources in an Android project stored in? What subfolders exist, and what are their purposes?

A
  • res
    drawable: images, diagrams, svgs, etc.
    layout: XML layout files
    MipMap: icon files
    values: strings, integers, styles, etc.
    XML: XML files that can be accessed at runtime
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are the main files in the Gradle scripts folder in an Android project? Which of these contains the parameter versionCode?

A
  • build.gradle contains versionCode
  • gradle.properties
  • setting.gradle
  • local.properties
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is the purpose of the following attributes on a TextView in Android:

  • android:text
  • android:textAlignment
  • android:textSize
  • android:textStyle
A
  • android:text: the text
  • android:textAlignment: the alignment
  • android:textSize: the font size
  • android:textStyle: the font style (bold, italics, etc.)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are the most common errors a developer will face in regard to debugging?

A
  • syntax
  • runtime
  • logical
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What testing folders are created when a new Android project is initiated?

A
  • one for unit testing
  • one for instrumental testing
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What testing framework is integrated in Android Studio?

A

JUnit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

In JUnit, how is a method denoted to be a unit test?

A

With the @Test decorator.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What method can be used in JUnit to assert that two double values are equal (or within a threshold)?

A

assertEquals(expected, actual, delta)

17
Q

What framework can be used in Android Studio to conduct instrumented testing?

18
Q

How does unit testing and intstrumented testing differ?

A

Unit testing tests individual methods whereas instrumented testing extends unit tests to better test interaction with the Android API.

19
Q

What is a ViewMatcher in regard to the Espresso testing framework?

A

A visual representation of the application which can be asserted against.

20
Q

What other Matcher classes exist besides ViewMatcher in the Espresso testing framework?

A
  • LayoutMatcher
  • CursorMatcher
  • PreferenceMatcher
21
Q

What must be considered before releasing an app?

A
  • icon
  • package name
  • security measures
  • application permissions
  • generate APK
  • create a key store path
  • provide integrity checks
  • remove sensitive information
22
Q

How is debugging disabled in Android apps?

A

android:debuggable="false"

23
Q

How is the source code obfuscated in Android apps?

A

minifyEnabled

24
Q

Which library can be used to encrypt local data storage in Android?