wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Bộ câu hỏi trắc nghiệm Android (Worksheet)

Total questions: 50

Worksheet time: 25mins

Name
Class
Date
1.

Android Runtime (ART) thay thế cho thành phần nào trong Android? (2 Points)

a)

Dalvik

b)

JVM

c)

Linux Kernel

d)

ContentProvider

2.

Trong RecyclerView.Adapter, cần override các phương thức sau (chọn nhiều đáp án): (2 Points)

a)

onCreateViewHolder()

b)

getItemId()

c)

onBindViewHolder()

d)

createView()

3.

Để vẽ một tuyến đường giữa hai điểm trên bản đồ, bạn sử dụng lớp nào? (2 Points)

a)

Polyline

b)

Polygon

c)

PolylineOptions

d)

DirectionsRenderer

4.

Để tính khoảng cách giữa hai điểm trên bản đồ, bạn sử dụng lớp nào? (2 Points)

a)

LatLng

b)

Location

c)

DistanceCalculator

d)

GeoDistance

5.

Để hiển thị bản đồ trong Android, bạn sử dụng lớp nào? (2 Points)

a)

MapView

b)

MapFragment

c)

GoogleMap

d)

SupportMapFragment

6.

Từ Android 10, ứng dụng có thể đọc tất cả SMS không? (2 Points)

a)

Không, trừ khi là ứng dụng SMS mặc định

b)

Có, nếu có quyền READ_SMS

c)

Chỉ đọc được SMS do chính ứng dụng gửi

d)

Luôn luôn được phép

7.

Để ẩn một view mà vẫn giữ không gian layout, dùng thuộc tính nào? (2 Points)

a)

android:visibility="invisible"

b)

android:visibility="gone"

c)

android:alpha="0"

d)

android:enabled="false"

8.

Hai API dùng để kết nối HTTP gồm (chọn nhiều đáp án): (2 Points)

a)

Retrofit

b)

HttpURLConnection

c)

Glide

d)

WorkManager

9.

Thành phần nào chịu trách nhiệm quản lý layout của các item trong RecyclerView? (2 Points)

a)

Adapter

b)

LayoutManager

c)

ViewHolder

d)

ItemAnimator

10.

Để tạo khoảng cách giữa các view trong LinearLayout, dùng thuộc tính nào? (2 Points)

a)

android:layout_margin

b)

android:padding

c)

android:spacing

d)

android:divider

11.

ConstraintLayout khác LinearLayout ở điểm nào? (2 Points)

a)

Cho phép ràng buộc view linh hoạt với các view khác hoặc parent

b)

Chỉ hỗ trợ sắp xếp view theo một chiều

c)

Không thể sử dụng trong Android Studio

d)

Yêu cầu API Level 30 trở lên

12.

Để thêm sự kiện click vào một Button, dùng phương thức nào? (2 Points)

a)

button.setOnClickListener { /* Xử lý click */ }

b)

button.setClickAction()

c)

button.addEvent(ClickEvent)

d)

button.bindOnClick()

13.

Để kiểm tra kết nối mạng trước khi tải dữ liệu, dùng lớp nào? (2 Points)

a)

ConnectivityManager

b)

NetworkInfo (deprecated từ API 29)

c)

WifiManager

d)

TelephonyManager

14.

FrameLayout thường dùng để làm gì? (2 Points)

a)

Chồng các view lên nhau (ví dụ: fragment, overlay)

b)

Sắp xếp view theo bảng

c)

Cố định view ở góc màn hình

d)

Tạo layout dạng lưới

15.

Để lấy vị trí hiện tại của người dùng, bạn sử dụng phương thức nào? (2 Points)

a)

getLastKnownLocation()

b)

getCurrentLocation()

c)

getLocation()

d)

getUserLocation()

16.

View là gì trong Android? (2 Points)

a)

Là lớp cơ sở cho tất cả các thành phần giao diện người dùng (UI) như Button, TextView.

b)

Là một loại layout dùng để nhóm các view khác,

c)

Là thành phần chỉ dùng để hiển thị văn bản,

d)

Là một activity.

17.

Thành phần nào trong Android chịu trách nhiệm hiển thị giao diện người dùng? (2 Points)

a)

Service

b)

BroadcastReceiver

c)

Activity

d)

ContentProvider

18.

Để vẽ một vùng đa giác trên bản đồ, bạn sử dụng lớp nào? (2 Points)

a)

Polygon

b)

Polyline

c)

Circle

d)

Rectangle

19.

Thuộc tính android:layout_weight dùng để làm gì? (2 Points)

a)

Chia tỷ lệ không gian giữa các view trong LinearLayout

b)

Đặt kích thước cố định cho view

c)

Xác định thứ tự hiển thị của view

d)

Tạo hiệu ứng trong suốt

20.

Thuộc tính nào cho phép view co dãn tỷ lệ theo kích thước màn hình? (2 Points)

a)

android:layout_weight (trong LinearLayout)

b)

android:scaleType

c)

android:flexGrow

d)

android:stretchMode

21.

Để tải dữ liệu audio từ Internet, có thể dùng lớp nào? (2 Points)

a)

MediaPlayer (setDataSource với URL)

b)

SoundPool (chỉ dành cho file nhỏ trong APK)

c)

AudioTrack

d)

RingtoneManager

22.

ContentProvider dùng để: (2 Points)

a)

Lưu trữ dữ liệu tạm thời

b)

Chia sẻ dữ liệu giữa các app

c)

Chạy nền

d)

Quản lý UI

23.

Lớp nào dùng để kiểm tra kết nối Internet trong Android? (2 Points)

a)

ConnectivityManager

b)

TelephonyManager

c)

WifiManager

d)

LocationManager

24.

Hai callback của View để xử lý sự kiện người dùng (chọn nhiều đáp án): (2 Points)

a)

setOnClickListener()

b)

setOnLongClickListener()

c)

setAnimator()

d)

doOnUpdate()

25.

Thuộc tính nào dùng để căn giữa view trong RelativeLayout? (2 Points)

a)

android:layout_centerInParent="true"

b)

android:gravity="center"

c)

android:layout_gravity="center"

d)

android:alignParentCenter="true"

26.

Thư viện nào phổ biến nhất để tải hình ảnh từ Internet trong Android? (2 Points)

a)

Glide hoặc Picasso

b)

Retrofit

c)

Volley

d)

Firebase Storage

27.

Để xác thực quyền trong lúc chạy (runtime permission), cần phương thức nào? (2 Points)

a)

checkPerm()

b)

requestPermission()

c)

checkSelfPermission()

d)

accessPermission()

28.

Trong cấu trúc dự án Android, thư mục nào chứa các tệp XML định nghĩa chuỗi văn bản? (2 Points)

a)

assets

b)

drawable

c)

layout

d)

values

29.

Để lắng nghe sự thay đổi văn bản trong EditText, dùng interface nào?

a)

TextListener

b)

TextChangedListener

c)

TextWatcher

d)

EditListener

30.

Làm thế nào để gửi SMS bằng Java trong Android?

a)

Sử dụng SmsManager.sendTextMessage()

b)

Dùng Intent.ACTION_SENDTO

c)

Cả hai cách trên đều được

d)

Không thể gửi SMS từ ứng dụng

31.

Để thay đổi văn bản của TextView trong code, dùng phương thức nào?

a)

textView.text = "Nội dung mới" (Kotlin) hoặc textView.setText("Nội dung mới") (Java)

b)

textView.updateText()

c)

textView.setContent()

d)

textView.changeText()

32.

Đơn vị "dp" trong Android đại diện cho gì?

a)

Display Pixels

b)

Density-independent Pixels

c)

Device Pixels

d)

Dimension Pixels

33.

Để hiển thị thông tin chi tiết khi người dùng nhấn vào marker, bạn sử dụng lớp nào?

a)

InfoWindow

b)

PopupWindow

c)

Dialog

d)

Toast

34.

Tài nguyên string được lưu trong file nào?

a)

values.xml

b)

strings.xml

c)

config.xml

d)

manifest.xml

35.

Thành phần nào trong Android được sử dụng để thực hiện các tác vụ nền không có giao diện người dùng?

a)

Activity

b)

Service

c)

BroadcastReceiver

d)

ContentProvider

36.

View nào KHÔNG phải là layout container?

a)

TextView

b)

ConstraintLayout

c)

RelativeLayout

d)

LinearLayout

37.

Để xử lý sự kiện khi người dùng nhấn vào bản đồ, bạn sử dụng phương thức nào?

a)

setOnMapClickListener()

b)

setOnMapLongClickListener()

c)

setOnMarkerClickListener()

d)

setOnMapReadyCallback()

38.

Để view A nằm bên phải view B trong ConstraintLayout, dùng thuộc tính nào?

a)

app:layout_constraintStart_toEndOf="@id/viewB"

b)

android:layout_toRightOf="@id/viewB"

c)

app:layout_constraintRight_toLeftOf="@id/viewB"

d)

android:layout_alignParentRight="true"

39.

Đâu là thư viện phổ biến trong Android để tải và lưu trữ hình ảnh?

a)

Retrofit

b)

Picasso

c)

Glide

d)

OkHttp

40.

GridLayout khác TableLayout ở điểm nào?

a)

GridLayout không cần dùng <TableRow> , hỗ trợ căn chỉnh linh hoạt hơn

b)

TableLayout chỉ dùng được cho dữ liệu dạng bảng

c)

GridLayout không thể chứa nhiều view trong một ô

d)

TableLayout yêu cầu API Level 21+

41.

Hai loại Context trong Android gồm (chọn nhiều đáp án).

a)

Activity Context

b)

Application Context

c)

Runtime Context

d)

Display Context

42.

Làm thế nào để nhận SMS trong Java?

a)

Tạo BroadcastReceiver và đăng ký action "android.provider.Telephony.SMS_RECEIVED"

b)

Dùng ContentObserver để theo dõi SMS database

c)

Cả hai cách trên

d)

Không thể nhận SMS từ ứng dụng

43.

Để sử dụng Google Maps trong Android Studio, bạn cần làm gì đầu tiên?

a)

Tạo một MapFragment trong layout XML

b)

Đăng ký API Key trên Google Cloud Console (b)

c)

Thêm thư viện Google Maps vào build.gradle (c)

d)

Cả (b) và (c) đều đúng

44.

Glide dùng để làm gì?

a)

Tải ảnh và cache

b)

Lưu cơ sở dữ liệu

c)

Gửi request HTTP

d)

Tạo hiệu ứng animation

45.

Làm thế nào để kiểm tra SMS đã được gửi thành công?

a)

Sử dụng PendingIntent trong sendTextMessage()

b)

Dùng BroadcastReceiver để lắng nghe trạng thái gửi

c)

Cả hai cách (a) và (b)

d)

Không thể kiểm tra

46.

Các phương thức liên quan đến lưu trạng thái Activity gồm (chọn nhiều đáp án).

a)

onSaveInstanceState()

b)

onRestoreInstanceState()

c)

onPause()

d)

onStart()

47.

Để phát video từ URL Internet, nên dùng component nào?

a)

VideoView hoặc ExoPlayer

b)

MediaPlayer (chỉ hỗ trợ local file)

c)

SurfaceView

d)

WebView

48.

Sự khác biệt giữa padding và margin là gì?

a)

padding là khoảng cách bên trong view, margin là khoảng cách bên ngoài view.

b)

padding dùng cho LinearLayout, margin dùng cho RelativeLayout.

c)

padding chỉ áp dụng cho văn bản.

d)

Không có sự khác biệt.

49.

ImageView dùng thuộc tính nào để căn chỉnh cách hiển thị ảnh?

a)

android:scaleType="centerCrop"

b)

android:adjustViewBounds

c)

android:imageAlignment

d)

android:fitType

50.

Để chuyển từ Activity A sang Activity B, dùng class nào?

a)

Intent

b)

Action

c)

Message

d)

Bundle