wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Lesson 9-13

Total questions: 98

Worksheet time: 49mins

Name
Class
Date
1.

Which storage type is volatile and lost on reboot?

a)

Flash

b)

Disk

c)

SSD

d)

RAM

2.

Which API stores simple key-value pairs?

a)

SQLite

b)

Room

c)

File

d)

SharedPreferences

3.

Which storage option allows saving private files?

a)

Internal Storage

b)

External Storage

c)

Cloud

d)

Public Storage

4.

Which database engine is built into Android?

a)

MySQL

b)

MongoDB

c)

PostgreSQL

d)

SQLite

5.

Which Jetpack library provides an abstraction over SQLite?

a)

Room

b)

House

c)

Floor

d)

Realm

6.

What represents a table in Room?

a)

Class

b)

Entity

c)

Object

d)

Row

7.

Which annotation marks a class as a Room Entity?

a)

@Table

b)

@Entity

c)

@Database

d)

@Row

8.

What allows accessing the database?

a)

DTO

b)

DAO (Data Access Object)

c)

Service

d)

API

9.

Which annotation marks an interface as a DAO?

a)

@Interface

b)

@Access

c)

@Query

d)

@Dao

10.

Which annotation is used for raw SQL commands?

a)

@SQL

b)

@Raw

c)

@Query

d)

@Command

11.

Which annotations perform modification operations?

a)

@Insert, @Update, @Delete

b)

@Put, @Patch, @Cut

c)

@New, @Change, @Drop

d)

@Add, @Edit, @Remove

12.

Which component serves as the main access point to the DB?

a)

Database

b)

Controller

c)

Manager

d)

Gateway

13.

Which annotation defines the primary key of a table?

a)

@Key

b)

@Id

c)

@PrimaryKey

d)

@Unique

14.

Why should database operations run asynchronously?

a)

Android requires it

b)

To save battery

c)

They are fast

d)

To prevent blocking the main thread

15.

What feature provides lightweight threads for async code?

a)

Processes

b)

Coroutines

c)

Tasks

d)

Threads

16.

Which keyword marks a function that can be paused?

a)

suspend

b)

pause

c)

yield

d)

wait

17.

Which Dispatcher is optimized for disk/network IO?

a)

Dispatchers.Main

b)

Dispatchers.Default

c)

Dispatchers.IO

d)

Dispatchers.GPU

18.

Which Dispatcher is used for UI updates?

a)

Dispatchers.Background

b)

Dispatchers.IO

c)

Dispatchers.Job

d)

Dispatchers.Main

19.

Which scope launches coroutines tied to a ViewModel?

a)

mainScope

b)

globalScope

c)

lifecycleScope

d)

viewModelScope

20.

What does '@Volatile' ensure for a variable?

a)

Immutability

b)

Security

c)

Visibility changes to other threads

d)

Persistence

21.

Which adapter subclass computes list differences efficiently?

a)

SmartAdapter

b)

ListAdapter

c)

RecyclerAdapter

d)

FastAdapter

22.

Which utility class calculates the difference between two lists?

a)

ListDiff

b)

DiffCalc

c)

CompareUtil

d)

DiffUtil

23.

Which callback method checks if two items represent the same object?

a)

equals()

b)

isSame()

c)

compare()

d)

areItemsTheSame()

24.

Which callback method checks if item content matches?

a)

isContentEqual()

b)

match()

c)

check()

d)

areContentsTheSame()

25.

Which method submits a new list to the ListAdapter?

a)

updateList()

b)

push()

c)

submitList()

d)

setList()

26.

What allows creating custom XML attributes for binding?

a)

Custom Views

b)

Attr Setters

c)

XML Hooks

d)

Binding Adapters

27.

Which annotation declares a Binding Adapter?

a)

@Custom

b)

@Bind

c)

@Adapter

d)

@BindingAdapter

28.

Which method returns the view type for a position?

a)

getItemViewType()

b)

getClass()

c)

getView()

d)

getType()

29.

What class type is useful for defining a restricted set of view types?

a)

abstract class

b)

sealed class

c)

interface

d)

open class

30.

Which LayoutManager arranges items in a grid?

a)

MatrixLayout

b)

TableLayout

c)

BoxManager

d)

GridLayoutManager

31.

What parameter determines the number of columns in a grid?

a)

spanCount

b)

size

c)

width

d)

colCount

32.

What class allows dynamic sizing of grid items?

a)

GridHelper

b)

SizeCalc

c)

SpanSizeLookup

d)

SpanManager

33.

How are headers typically handled in a RecyclerView?

a)

Sticky view

b)

Overlay

c)

As a different ViewType

d)

Separate list

34.

Why is ListAdapter better than notifyDataSetChanged?

a)

Better performance with animations

b)

Typesafety

c)

Easier to write

d)

Less code

35.

What method executes generic pending bindings immediately?

a)

executePendingBindings()

b)

render()

c)

flush()

d)

draw()

36.

How can you cache the binding object in a ViewHolder?

a)

In onBind

b)

Static map

c)

Global variable

d)

In the constructor

37.

Where should item click listeners usually be set?

a)

In XML

b)

In onBind

c)

In MainActivity

d)

In the ViewHolder

38.

What allows multiple ViewHolders in one Adapter?

a)

Overloading

b)

Different view types

c)

Generic types

d)

Subclassing

39.

Can a RecyclerView display heterogeneous data?

a)

Yes

b)

Only images

c)

No

d)

Only strings

40.

Does ListAdapter run DiffUtil on the main thread?

a)

Yes

b)

Depends

c)

Only for small lists

d)

No, background thread

41.

Where must app permissions be declared?

a)

Gradle

b)

AndroidManifest.xml

c)

MainActivity

d)

Settings

42.

Which permission is required for network access?

a)

WIFI

b)

NETWORK

c)

ACCESS

d)

INTERNET

43.

Which HTTP method retrieves data?

a)

GET

b)

PULL

c)

FETCH

d)

READ

44.

Which HTTP method sends data to create a resource?

a)

SEND

b)

POST

c)

PUSH

d)

WRITE

45.

Which library is a type-safe HTTP client for Android?

a)

Volley

b)

OkHttp

c)

Retrofit

d)

HttpClient

46.

What is the root URL of a web API called?

a)

Root Path

b)

Base URL

c)

Core Link

d)

Home URL

47.

What component converts JSON responses to objects?

a)

Mapper

b)

Serializer

c)

Converter Factory

d)

JSON Parser

48.

Which library is often used for JSON parsing with Retrofit?

a)

Moshi

b)

Gson

c)

JsonUtil

d)

Jackson

49.

Which annotation adds a parameter to the URL query string?

a)

@Search

b)

@Arg

c)

@Query

d)

@Param

50.

Which annotation replaces a segment of the URL path?

a)

@Part

b)

@Segment

c)

@Path

d)

@Url

51.

Which annotation defines the request body?

a)

@Body

b)

@Payload

c)

@Content

d)

@Data

52.

What modern Kotlin feature handles async network calls?

a)

Threads

b)

Tasks

c)

Futures

d)

Coroutines

53.

Which block handles exceptions in coroutines?

a)

guard

b)

if-else

c)

try-catch

d)

error-prone

54.

How does Retrofit verify a successful response?

a)

status == OK

b)

check(200)

c)

response.isSuccessful

d)

valid()

55.

Which library is recommended for loading images?

a)

Glide

b)

Picasso

c)

Fresco

d)

Loader

56.

What handles image caching and resizing automatically?

a)

Canvas

b)

BitmapFactory

c)

ImageView

d)

Glide

57.

What identifies the location of an image resource?

a)

ID

b)

Tag

c)

Key

d)

URI / URL

58.

What image is shown while the actual image loads?

a)

Thumb

b)

Loading

c)

Spinner

d)

Placeholder

59.

What image is shown if loading fails?

a)

Default

b)

Error image

c)

Backup

d)

Icon

60.

Why should you not do network ops on the main thread?

a)

Not allowed

b)

Battery drain

c)

Freezes the UI (ANR)

d)

Too fast

61.

What pattern mediates between different data sources?

a)

Singleton

b)

Proxy

c)

Repository

d)

Factory

62.

What principle ensures data consistency?

a)

Data Duplication

b)

Mirroring

c)

Single Source of Truth

d)

Copying

63.

What is the typical data flow for caching?

a)

UI -> Network

b)

Network -> UI

c)

Network -> Database -> UI

d)

Database -> Network

64.

What enables offline app usage?

a)

Memory

b)

Cloud sync

c)

Files

d)

Local Database cache

65.

Which Jetpack library handles deferrable background work?

a)

AlarmManager

b)

WorkManager

c)

Service

d)

JobScheduler

66.

WorkManager guarantees execution when?

a)

Constraints are met

b)

Immediately

c)

User clicks

d)

App is open

67.

Which class defines the actual background task?

a)

Runner

b)

Job

c)

Worker

d)

Task

68.

Which method is the entry point for a Worker?

a)

start()

b)

execute()

c)

doWork()

d)

run()

69.

Which WorkRequest runs only once?

a)

UniqueRequest

b)

OneTimeWorkRequest

c)

VerifyRequest

d)

SingleRequest

70.

Which WorkRequest runs at intervals?

a)

IntervalRequest

b)

PeriodicWorkRequest

c)

RepeatRequest

d)

LoopRequest

71.

What conditions like 'Requires Charging' called?

a)

Constraints

b)

Filters

c)

Rules

d)

Limits

72.

What does doWork() return to indicate status?

a)

Status

b)

Result

c)

Boolean

d)

Code

73.

How do you ensure tasks run in a specific order?

a)

Stacking

b)

Chaining

c)

Listing

d)

Ordering

74.

What data objects pass arguments to/from Workers?

a)

InputData / OutputData

b)

Intent

c)

Bundle

d)

Map

75.

Which Worker subclass supports coroutines?

a)

SuspendWorker

b)

CoroutineWorker

c)

AsyncWorker

d)

FutureWorker

76.

How do you identify a Unique Work request?

a)

Key

b)

Unique Name

c)

ID

d)

Tag

77.

What policy decides what to do if work already exists?

a)

ExistingWorkPolicy

b)

Mode

c)

Rule

d)

ConflictStrategy

78.

How can you observe the status of a work request?

a)

poll

b)

getWorkInfoByIdLiveData

c)

checkStatus

d)

observeWork

79.

What allows grouping multiple work requests?

a)

Tags

b)

Labels

c)

Groups

d)

Sets

80.

What system handles retry timing for failed work?

a)

Retry timer

b)

Delay loop

c)

Wait logic

d)

Backoff policy

81.

What system provides comprehensive UI design guidelines?

a)

Metro

b)

Flat Design

c)

Human Interface

d)

Material Design

82.

What defines global styling attributes for the app?

a)

Layout

b)

Theme

c)

Style

d)

Config

83.

What defines attributes for a specific view type?

a)

Props

b)

Skin

c)

Style

d)

Theme

84.

Which resource file usually holds color definitions?

a)

paint.xml

b)

themes.xml

c)

styles.xml

d)

colors.xml

85.

Which resource file holds dimension values?

a)

layout.xml

b)

dimens.xml

c)

measures.xml

d)

sizes.xml

86.

Which resource directory targets Spanish locale?

a)

values-esp

b)

values-es

c)

text-es

d)

values-span

87.

Which resource directory targets Night Mode?

a)

values-dark

b)

night-mode

c)

values-night

d)

values-black

88.

What is the primary action button on a screen called?

a)

Hero Button

b)

Main Button

c)

Big Button

d)

Floating Action Button (FAB)

89.

Which component shows a brief message at the bottom?

a)

Snackbar

b)

Alert

c)

Toast

d)

Popup

90.

Which layout manages complex interactions like crumbling headers?

a)

MasterLayout

b)

FrameLayout

c)

MotionLayout

d)

CoordinatorLayout

91.

What component allows text input with a hint?

a)

InputBox

b)

EditText

c)

TextInputLayout

d)

Form

92.

Which component holds content and actions effectively?

a)

Sheet

b)

Box

c)

Card

d)

Panel

93.

What UI element allows navigating 3-5 top destinations?

a)

On Primary

b)

Black

c)

Text Primary

d)

White

94.

Which typography category is for large headings?

a)

Title

b)

Headline

c)

Body

d)

Caption

95.

Which typography category is for standard reading text?

a)

Body

b)

Normal

c)

Para

d)

Content

96.

What allows users to override system text size?

a)

sp units

b)

Magnifier

c)

Zoom

d)

Settings

97.

What does RTL stand for in layout direction?

a)

Right-to-Left

b)

Read-Language

c)

Run-Time-Layout

d)

Return-to-Left

98.

Which theme attribute overrides the action bar color?

a)

colorPrimary

b)

windowBackground

c)

colorSecondary

d)

statusBar