500+ câu Trắc nghiệm Phát triển game trên Android cơ bản có đáp án - Phần 14
Đề thi

500+ câu Trắc nghiệm Phát triển game trên Android cơ bản có đáp án - Phần 14

A
Admin
Đại họcTrắc nghiệm tổng hợp27 lượt thi
29 câu hỏi
1. Trắc nghiệm
1 điểm

Khi sử dụng ‘Location Services’ (Dịch vụ vị trí) trong ứng dụng di động, những cân nhắc về quyền riêng tư nào là quan trọng nhất?

Cần xin phép rõ ràng từ người dùng trước khi truy cập vị trí của họ, chỉ thu thập dữ liệu vị trí cần thiết cho chức năng của ứng dụng và thông báo rõ ràng cách dữ liệu được sử dụng. Kết luận Lý giải

Luôn truy cập vị trí của người dùng mà không cần hỏi. Kết luận Lý giải

Thu thập dữ liệu vị trí của tất cả người dùng để phân tích hành vi. Kết luận Lý giải

Chia sẻ dữ liệu vị trí của người dùng với các bên thứ ba mà không có sự đồng ý. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

2. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘Unit Testing’ (Kiểm thử đơn vị) tập trung vào việc kiểm tra gì?

Kiểm tra các đơn vị mã nhỏ nhất, độc lập nhất (ví dụ: hàm, phương thức, lớp) để đảm bảo chúng hoạt động đúng như mong đợi trong các tình huống khác nhau. Kết luận Lý giải

Kiểm tra toàn bộ luồng người dùng từ đầu đến cuối. Kết luận Lý giải

Kiểm tra giao diện người dùng và khả năng tương tác của nó. Kết luận Lý giải

Kiểm tra hiệu năng của ứng dụng trên các thiết bị khác nhau. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

3. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘Continuous Integration’ (CI) có vai trò gì?

Tự động hóa quá trình tích hợp các thay đổi mã nguồn từ nhiều nhà phát triển vào một kho lưu trữ chung, thường xuyên chạy các bài kiểm thử tự động để phát hiện sớm các lỗi tích hợp. Kết luận Lý giải

Tự động hóa quá trình triển khai ứng dụng lên cửa hàng ứng dụng. Kết luận Lý giải

Tự động hóa việc viết tài liệu kỹ thuật cho ứng dụng. Kết luận Lý giải

Tự động hóa quá trình kiểm thử giao diện người dùng thủ công. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

4. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘Background Processing’ (Xử lý nền) là gì và tại sao nó cần được quản lý cẩn thận?

Là các tác vụ chạy khi ứng dụng không hoạt động ở foreground, cần quản lý cẩn thận để tránh tiêu hao pin quá mức, chiếm dụng tài nguyên hệ thống và ảnh hưởng đến trải nghiệm người dùng. Kết luận Lý giải

Là các tác vụ chỉ chạy khi người dùng đang mở ứng dụng. Kết luận Lý giải

Là các tác vụ chỉ liên quan đến giao diện người dùng. Kết luận Lý giải

Là các tác vụ chỉ có thể thực hiện khi thiết bị đang sạc pin. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

5. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘Caching’ (Lưu trữ tạm) được sử dụng với mục đích chính nào?

Lưu trữ dữ liệu thường xuyên truy cập hoặc dữ liệu từ các yêu cầu mạng chậm, giúp tăng tốc độ tải và giảm tải cho máy chủ, đồng thời cải thiện trải nghiệm người dùng. Kết luận Lý giải

Tăng cường bảo mật cho toàn bộ ứng dụng. Kết luận Lý giải

Giảm dung lượng bộ nhớ cần thiết cho ứng dụng. Kết luận Lý giải

Tự động cập nhật dữ liệu ứng dụng theo thời gian thực. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

6. Trắc nghiệm
1 điểm

Khi lựa chọn giữa phát triển ứng dụng gốc (Native) và ứng dụng lai (Hybrid/Cross-platform), yếu tố nào thường là quyết định quan trọng nhất đối với một dự án?

Yêu cầu về hiệu năng, trải nghiệm người dùng, khả năng truy cập sâu vào các tính năng của thiết bị, ngân sách và thời gian phát triển. Kết luận Lý giải

Sự phổ biến của ngôn ngữ lập trình. Kết luận Lý giải

Khả năng tùy chỉnh màu sắc và font chữ. Kết luận Lý giải

Số lượng quảng cáo có thể hiển thị trong ứng dụng. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

7. Trắc nghiệm
1 điểm

Khi tối ưu hóa hiệu suất ứng dụng di động, tại sao việc quản lý bộ nhớ (memory management) lại quan trọng?

Quản lý bộ nhớ hiệu quả giúp tránh tình trạng ứng dụng bị treo (crash) do hết bộ nhớ, giảm tiêu thụ pin và cải thiện tốc độ phản hồi. Kết luận Lý giải

Tăng dung lượng bộ nhớ RAM có sẵn trên thiết bị di động. Kết luận Lý giải

Cho phép ứng dụng chạy các tác vụ nặng mà không cần quan tâm đến tài nguyên. Kết luận Lý giải

Giảm kích thước tệp tin cài đặt (APK/IPA) của ứng dụng. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

8. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, khái niệm ‘State Management’ (Quản lý trạng thái) đề cập đến điều gì?

Quá trình theo dõi, cập nhật và phản ánh các thay đổi về dữ liệu hoặc giao diện người dùng trong ứng dụng để đảm bảo tính nhất quán và hành vi dự đoán được. Kết luận Lý giải

Quản lý các tiến trình chạy ngầm của ứng dụng. Kết luận Lý giải

Kiểm soát quyền truy cập của người dùng vào các tính năng khác nhau. Kết luận Lý giải

Tự động lưu trữ toàn bộ lịch sử hoạt động của người dùng. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

9. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng iOS, ‘Delegate Pattern’ là một mẫu thiết kế quan trọng. Vai trò của nó là gì?

Cho phép một đối tượng (delegate) xử lý các sự kiện hoặc thông báo từ một đối tượng khác (owner), giúp tách biệt trách nhiệm và tăng tính linh hoạt. Kết luận Lý giải

Đảm bảo rằng mọi đối tượng trong ứng dụng đều có thể trực tiếp truy cập và sửa đổi dữ liệu của nhau. Kết luận Lý giải

Tự động hóa hoàn toàn quá trình tạo giao diện người dùng mà không cần mã hóa. Kết luận Lý giải

Quản lý kết nối mạng và truyền dữ liệu giữa các thành phần ứng dụng. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

10. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘Backend as a Service’ (BaaS) cung cấp những gì cho nhà phát triển?

Cung cấp sẵn các dịch vụ backend phổ biến như cơ sở dữ liệu, xác thực người dùng, lưu trữ tệp tin, thông báo đẩy, giúp nhà phát triển tập trung vào phần giao diện và logic phía client. Kết luận Lý giải

Cung cấp giao diện người dùng sẵn có. Kết luận Lý giải

Cung cấp công cụ để biên dịch mã nguồn. Kết luận Lý giải

Cung cấp nền tảng để triển khai ứng dụng lên cửa hàng. Kết luận Lý giải

Xem đáp án

Chọn đáp án A

11. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘UX (User Experience)’ là gì?

Chỉ tập trung vào giao diện đồ họa đẹp mắt của ứng dụng

Là cảm nhận tổng thể của người dùng khi tương tác với ứng dụng, bao gồm tính dễ sử dụng, hiệu quả, và sự hài lòng

Là quá trình mã hóa và biên dịch ứng dụng

Là việc đảm bảo ứng dụng hoạt động ổn định mà không bị lỗi

Xem đáp án

Chọn đáp án BB

12. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘Progress Bar’ (Thanh tiến trình) thường được sử dụng để làm gì?

Hiển thị số phiên bản của ứng dụng

Cho người dùng biết một tác vụ đang diễn ra và tiến trình hoàn thành của nó (ví dụ: tải xuống, cài đặt, xử lý dữ liệu)

Đánh dấu các mục đã hoàn thành trong danh sách

Hiển thị trạng thái kết nối mạng

Xem đáp án

Chọn đáp án B

13. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, khi nào nên ưu tiên sử dụng kiến trúc MVVM (Model-View-ViewModel) thay vì MVC (Model-View-Controller)?

Khi ứng dụng có ít tương tác người dùng và logic nghiệp vụ đơn giản

Khi cần tách biệt rõ ràng giữa logic hiển thị (UI) và logic nghiệp vụ, đồng thời tăng khả năng kiểm thử tự động (unit testing)

Khi đội ngũ phát triển chỉ có kinh nghiệm với MVC và không muốn thay đổi

Khi ứng dụng chỉ cần giao diện đơn giản và không yêu cầu cập nhật dữ liệu thường xuyên

Xem đáp án

Chọn đáp án B

14. Trắc nghiệm
1 điểm

Một ứng dụng di động cần hiển thị thông tin thời tiết được cập nhật liên tục từ một API. Khi người dùng mở ứng dụng, họ mong đợi thấy dữ liệu thời tiết mới nhất. Cách tiếp cận nào sau đây là hiệu quả để lấy dữ liệu từ API?

Chỉ tải dữ liệu khi người dùng thực hiện một hành động cụ thể, ví dụ như kéo để làm mới

Tải dữ liệu tự động khi ứng dụng được khởi chạy và có thể thiết lập một khoảng thời gian định kỳ để cập nhật dữ liệu nền

Yêu cầu người dùng nhập thủ công dữ liệu thời tiết

Sử dụng GPS để dự đoán thời tiết

Xem đáp án

Chọn đáp án B

15. Trắc nghiệm
1 điểm

Một ứng dụng yêu cầu người dùng nhập thông tin cá nhân và lưu trữ thông tin đó trên máy chủ. Để đảm bảo tính bảo mật của dữ liệu nhạy cảm trong quá trình truyền tải, biện pháp nào là quan trọng nhất?

Sử dụng HTTP thay vì HTTPS

Mã hóa dữ liệu trên thiết bị trước khi gửi đi và sử dụng HTTPS cho kênh truyền tải

Chỉ lưu trữ thông tin cá nhân trên thiết bị

Yêu cầu người dùng nhập lại thông tin mỗi lần gửi

Xem đáp án

Chọn đáp án B

16. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động sử dụng Flutter, khái niệm ‘Widget Tree’ đề cập đến điều gì?

Cấu trúc dữ liệu được sử dụng để lưu trữ trạng thái của ứng dụng

Cây cấu trúc phân cấp của tất cả các widget được sử dụng để xây dựng giao diện người dùng của ứng dụng

Cách dữ liệu được truyền từ cha xuống con trong ứng dụng

Cơ chế xử lý sự kiện trong ứng dụng Flutter

Xem đáp án

Chọn đáp án B

17. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘Push Notification’ là gì và mục đích chính của nó là gì?

Là một loại tin nhắn SMS mà ứng dụng gửi đi

Là một thông báo được gửi từ máy chủ đến thiết bị di động của người dùng, ngay cả khi ứng dụng không chạy

Là một tính năng cho phép người dùng gọi điện thoại trực tiếp từ ứng dụng

Là một cơ chế để ứng dụng tự động cập nhật

Xem đáp án

Chọn đáp án B

18. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘UI Thread’ (hoặc Main Thread) có vai trò gì?

Chỉ chịu trách nhiệm xử lý các tác vụ tính toán phức tạp

Xử lý tất cả các hoạt động liên quan đến giao diện người dùng (UI), bao gồm vẽ giao diện, xử lý sự kiện chạm, cập nhật dữ liệu hiển thị

Quản lý kết nối mạng của ứng dụng

Thực hiện các tác vụ lưu trữ dữ liệu

Xem đáp án

Chọn đáp án B

19. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, bạn cần xử lý một tác vụ tốn nhiều thời gian và không nên thực hiện trên Main/UI thread để tránh làm đóng băng giao diện. Bạn nên sử dụng cơ chế nào trên Android?

Tạo một `Thread` mới và thực hiện tác vụ bên trong đó

Sử dụng `ViewModel` để quản lý logic nghiệp vụ

Sử dụng `WorkManager` cho các tác vụ có thể trì hoãn, đảm bảo hoạt động ngay cả khi ứng dụng bị đóng

Sử dụng `Looper` và `MessageQueue` trực tiếp

Xem đáp án

Chọn đáp án C

20. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘Dependency Injection’ (DI) là một kỹ thuật nhằm mục đích gì?

Tăng cường bảo mật bằng cách mã hóa các phụ thuộc của ứng dụng

Giúp quản lý các phụ thuộc của một lớp (class) bằng cách cung cấp chúng từ bên ngoài thay vì để lớp tự tạo ra

Tự động hóa quá trình biên dịch ứng dụng

Giảm dung lượng file cài đặt của ứng dụng

Xem đáp án

Chọn đáp án B

21. Trắc nghiệm
1 điểm

Một nhà phát triển đang làm việc trên một ứng dụng thương mại điện tử và nhận thấy hiệu suất tải hình ảnh sản phẩm rất chậm. Họ muốn tối ưu hóa việc này. Biện pháp nào sau đây KHÔNG phải là một chiến lược tối ưu hóa tải hình ảnh hiệu quả?

Sử dụng các thư viện tải ảnh hỗ trợ lazy loading và caching

Nén hình ảnh về kích thước và độ phân giải phù hợp với màn hình thiết bị

Tải tất cả hình ảnh sản phẩm với độ phân giải cao nhất ngay khi màn hình sản phẩm được hiển thị

Sử dụng định dạng hình ảnh hiện đại như WebP (nếu được hỗ trợ) để giảm dung lượng file

Xem đáp án

Chọn đáp án C

22. Trắc nghiệm
1 điểm

Một ứng dụng cần lưu trữ các tệp phương tiện lớn như hình ảnh, video. Phương pháp lưu trữ nào sau đây là phù hợp nhất trên Android?

Lưu trữ tất cả các tệp media vào SharedPreferences

Lưu trữ các tệp media vào bộ nhớ trong của ứng dụng (internal storage) hoặc bộ nhớ ngoài (external storage) tùy thuộc vào quyền truy cập và mục đích sử dụng

Chỉ lưu trữ đường dẫn đến tệp media, không lưu trữ bản thân tệp

Sử dụng Content Provider để lưu trữ tệp media

Xem đáp án

Chọn đáp án B

23. Trắc nghiệm
1 điểm

Trong phát triển ứng dụng di động, ‘ViewModel’ là một thành phần trong kiến trúc MVVM và có vai trò gì?

Đại diện cho View và xử lý mọi tương tác người dùng

Chứa logic nghiệp vụ và cung cấp dữ liệu cho View, đồng thời sống sót qua các thay đổi cấu hình (như xoay màn hình)

Quản lý kết nối mạng và gọi API

Lưu trữ dữ liệu người dùng cục bộ trên thiết bị

Xem đáp án

Chọn đáp án B

24. Trắc nghiệm
1 điểm

Một nhà phát triển đang xây dựng một ứng dụng quản lý công việc. Họ cần một cơ sở dữ liệu cục bộ để lưu trữ danh sách công việc, trạng thái hoàn thành, ngày hết hạn và ghi chú. Cơ sở dữ liệu nào sau đây là lựa chọn tốt cho việc này trên Android và iOS?

Firebase Realtime Database

SQLite (hoặc Realm, được xây dựng trên SQLite)

Shared Preferences

Local Storage (trong trình duyệt, không áp dụng cho mobile app native)

Xem đáp án

Chọn đáp án B

25. Trắc nghiệm
1 điểm

Một ứng dụng di động cần thực hiện một yêu cầu mạng phức tạp, bao gồm nhiều bước và có thể có các điều kiện phụ thuộc giữa các bước đó. Bạn nên sử dụng thư viện nào trên Android để quản lý các tác vụ bất đồng bộ và chuỗi xử lý này một cách hiệu quả?

Kotlin Coroutines

Java Threads

AsyncTask

Handler

Xem đáp án

Chọn đáp án B

26. Trắc nghiệm
1 điểm

Một nhà phát triển muốn tích hợp tính năng nhận diện khuôn mặt để mở khóa ứng dụng. Tính năng này đòi hỏi quyền truy cập vào camera và có thể là các dữ liệu sinh trắc học. Quyền truy cập này nên được yêu cầu như thế nào để đảm bảo trải nghiệm người dùng tốt nhất?

Yêu cầu tất cả các quyền ngay khi ứng dụng được cài đặt

Yêu cầu quyền khi người dùng cố gắng sử dụng tính năng yêu cầu quyền đó lần đầu tiên và giải thích rõ lý do cần quyền

Không bao giờ yêu cầu quyền truy cập camera

Yêu cầu quyền truy cập camera thông qua một thông báo chung cho tất cả các tính năng

Xem đáp án

Chọn đáp án B

27. Trắc nghiệm
1 điểm

Khi phát triển ứng dụng đa nền tảng (cross-platform) bằng React Native, điều gì là quan trọng nhất để đảm bảo hiệu suất tốt trên cả iOS và Android?

Chỉ sử dụng các component gốc (native components) của React Native

Tối ưu hóa việc sử dụng Bridge (cầu nối giữa JavaScript và Native code), tránh truyền dữ liệu quá lớn qua Bridge và sử dụng các API gốc khi cần thiết cho các tác vụ nặng

Viết toàn bộ logic ứng dụng bằng ngôn ngữ Swift hoặc Kotlin và chỉ sử dụng React Native cho giao diện

Giảm thiểu số lượng component trên mỗi màn hình

Xem đáp án

Chọn đáp án B

28. Trắc nghiệm
1 điểm

Khi triển khai Dark Mode (Chế độ tối) cho ứng dụng di động, điều gì là quan trọng nhất cần xem xét?

Chỉ thay đổi màu nền thành đen

Đảm bảo tất cả các yếu tố UI (văn bản, nền, biểu tượng, hình ảnh) có độ tương phản phù hợp và dễ nhìn trên cả hai chế độ sáng và tối

Sử dụng màu xanh lam làm màu chủ đạo cho chế độ tối

Tự động tắt các hình ảnh động khi ở chế độ tối

Xem đáp án

Chọn đáp án B

29. Trắc nghiệm
1 điểm

Trong phát triển Android, cách nào sau đây là cách tốt nhất để truy cập và cập nhật dữ liệu người dùng trên giao diện người dùng (UI) từ một luồng nền (background thread)?

Truy cập trực tiếp `View` từ luồng nền

Sử dụng `runOnUiThread()` hoặc các cơ chế tương tự như `Handler` hoặc `ViewModel` với `LiveData`

Tạo một `Thread` mới cho mỗi lần cập nhật UI

Sử dụng `AsyncTask` để thực hiện mọi hoạt động trên luồng nền

Xem đáp án

Chọn đáp án B