Mobile Flashcards

1
Q

Why a smartphone is a game changer?

A

Because it changed completely how we handle our daily lifes. It’s a general-purpose computing device that can always be with the user, like having the features of a PC in a pocket. It has sensors and actuators to help observe and impact on the environment.

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

What are the differences between feature phones and smartphones? Both in programming and in usage

A

Feature phones:
- limited set of functions
- innovation trying to reduce size and costs
- devs cannot build extensions, they would have to modify the firmware with low-level programming

Smartphones:
- follow the user
- ships with an OS that developers can build apps for
- app development is high-level programming similarly to developing for PC.

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

What are the main smartphone and wearable OSes?

A

Mobile:
- iOS (Apple) - main language is Swift
- Android (Google etc.) - main language is Java/Kotlin

Wearable:
- wearOS (Google)
- watchOS (Apple)
- TizenOS (Linux based, samsung)

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

Why Android? Why Java?

A

Android provides several advantages to developers:
- Based on well known linux kernel
- Code is mostly open-source (each manufacturer can customize it based on its hardware and needs)
- Programmable with Java (2nd most used language)

Java is one of the most well-known languages, runs on a VM

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

What is the Open Handset Alliance?

A

In 2005 Google bought Android Inc. from Andy Rubin, and created the Open Handset Alliance (OHA) which is a non-profit alliance that comprehends signatures from 84 firms between manufacturers, operators and companies. The OHA mission is to accelerate innovation in mobile and offer to consumers a richer, less expensive and better experience.

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

What is the API level and how is it specified?

A

The API level is an integer number that denotes the version of the API being used by a particular app.

Each Android version supports one API level, but implicitly supports all previous levels.

It can be specified in the build.gradle file, having a property for the mininum sdk version and one for the target sdk version

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

Describe the Android Architecture in all its layers

A
  • System Applications
  • Java API
  • Native C/C++ libraries - ART
  • Hardware Abstraction Layer
  • Linux Kernel
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Android - The Principle of Least Privilege

A

Each app has
- It’s own ART instance and sandbox
- It’s own linux user and UID
- By default, no permission. They must be granted either at install time or at install and runtime (dangerous permissions)

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

What is Dalvik? How is Dalvik code compiled?

A

Prior to Android 5, Dalvik was the JVM version developed specifically for android. It allowed apps to run consuming less resources than the standard JVM and with many optimizations specifically studied for mobile devices.

.java -> javac -> .class -> Delvik compiler -> .dex -> Delvik optimizer -> .odex

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

What is ART? How is ART code compiled?

A

After Android 5, Dalvik VM was substituted with ART.
ART is not a Java VM. In fact, it allows to run code compiled to native code, requiring longer install but giving more performances.

.java -> javac -> .class -> Delvik compiler -> .dex -> DEX2OAT -> .oat

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

What are the main building blocks for android apps?

A

Activities, Services, Broadcast Receivers, Content Providers

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

What are the states of an Activity?

A

Starting, Running, Paused, Stopped, Destroyed

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

What are Intents? How many types exists in Android?

A

Intents are a medium for the developer to request the start of an activity to the system.

Intents can be sent to broadcast receivers (Broadcast intent), or they can be used to start an Activity. They are also used to pass parameters between activities.

Intents can be either implicit or explicit.

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

What is material design?

A

Material Design has been created by google to help build consistent user interfaces and experiences in applications and consists of a set of guidelines, components and tools that support the best practices of UI design.

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

What are the Material Studies?

A

Matierial Studies is a set of real-world use case scenario of material design.

Each Material Study illustrates how different brands can express their style and experience in different product and service categories.

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

What is Context Awareness?

A

Context Awareness is a paradigm of mobile programming where the device can recognize environmental situations (e.g. if the user is running/walking/standing, the vehicle being used or type of excercise). Accelerometers are used a lot to build Context Awareness.

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

What are accelerometers? What is their unit of measure?

A

The accelerometer is a sensor built in most of smartphones that emits data regarding the current acceleration of the device (m/s^2)

18
Q

What is the formula for sensitivity of (e.g.) an Accelerometer?

A

S = ∆Vout / ∆g

∆Vout are the number of possible outputs

19
Q

Name at least 5 parameters that can be used in Physiological Sensing

A

Hearth Rate
Hearth Rate Variability
Electro-Dermal Activity
Blood Pressure
Skin temperature
Breathing rate

20
Q

What is a communication network? and a mobile network?

A

A communication network is a system that connects two devices that want to communicate (endpoints).
A network is made of nodes and links.

Nodes can either be:
- endpoints
- hops/forwarders: devices that forward packets to and from other devices towards the target endpoint

Links can either be:
- unidirectional (communicate in only one direction - simplex)
- bidirectional
- half-duplex (one-at-a-time communication in two directions)
- full-duplex (allows contemporaneous bidirectional communication)

21
Q

What is the transmission delay?
How can it be calculated?

A

The physical link of the communication has a bitrate (bps that can travel the link). Every communication medium has a resistance that leads to a delay in transmission:

deltaT = L(bits)/R(b/s)

22
Q

What is the formula for BER?

A

BER = Nerr/Ntot

23
Q

What is the formula for Path Loss?

A

Prx = beta * Ptx * 1/(d^alpha)

24
Q

Which are the main techniques to perform mobile localization?

A

Either mobile based techniques or network based techniques.

Mobile based rely on the fact that the device knows the base stations position, also the device performs the calculation to determine its location.

Network based, instead, will use a network to provide the location to devices. This is done in 2 steps:
1) data collection - either the device or the network collects signal mesurements from near base stations (if device then sends info to the network
2) location estimation - the network calculates the approximate device position and sends this to the device.

25
Q

Which are the main mobile based localization techniques?

A

1 base station
1 base station + sectors
2 base stations
3 base stations

26
Q

Which are the main network based localization techniques?

A

ToA, 2 way ToA, TDoA

27
Q

What is the formula for TOA?

A

d = v * deltaT

28
Q

What is the formula for 2way TOA?

A

d = v* ((t2-t1)+(t4-t3))/2

29
Q

What is the WiFi Alliance?

A

It is a global non-profit organisation that has the goal of driving the best UX with a new wireless technology.
Its vision is to connect everyone to everything from everywhere.

30
Q

IEEE 802.11 - What it is and what are it’s operating modes?

A

It is a set of protocols that works at PHY and MAC layers in order to provide wireless connectivity.

It can operate in 2 modes:
- Infrastructure mode: requires at least a WiFi compatible device, an Access Point and a standard network. Allows a device to wirelessly connect to a standard LAN using ESS
- P2P mode: requires at least 2 devices, allows the creation of a peer-to-peer network where devices directly communicate one to another using BISS (Basic Independent Service Set)

31
Q

What are WiFi beacons used for? And probe requests?

A

WiFi APs keep signaling their presence to nearby WiFi devices at regular intervals by broadcasting messages called beacons. Beacons contain informations used to connect to a particular endpoint.
This is called passive scanning.

Clients can also send a probe request to APs, receiving a probe response. A probe response is similar to a beacon and contains information useful for the connection.

32
Q

How does WiFi based localization works?

A

Fingerprinting

33
Q

NFC, what it is and how it works?

A

Near Field Communication is a technology where 2 devices can communicate with each other using a small (10 cm range) electro-magnetic field that is created by the initiator.
The target device can either be passive or active.

34
Q

Describe the process behind satellites communications

A

1) Uplink communication
2) Amplification and repetition
3) Downlink communication

35
Q

What are the main components of a satellite? Where are they places?

A

Antenna, Power Source and Thrusters.
They also support critical temperatures and last for years without maintenance.

They can be placed on 3 different altitudes:
- LEO (Low Earth Orbit), where Starlink lies (thousands of satellites)
- MEO (Medium Earth Orbit)
- GEO (Geostationary Equatorial Orbit)

36
Q

GPS - What are its 3 segments?

A
37
Q

GPS - How does it work? What is its accuracy?

A
38
Q

What are the basic positioning techniques we studied?

A

Trilateration, Triangulation, Ranging, Proximity, Fingerprinting.

39
Q

What is the formula for RSSI?

A

RSSI = 10log_10 (Prx/1mW)

40
Q

What is the Code Of Information Practices (FIP)?

A

FIP, written in 1980, represent the core principles of modern privacy.
Its based on 8 principles:
- Opennes
- Individual Participation
- Purpose Specification
- Collection Limitation
- Use Limitation
- Data Quality
- Security Safeguards
- Accountability