PRM392Chưa đoKỳ 7Chuyên ngành Cập nhật 24/07/2026
Mobile Programming - Lập trình di động
271Câu hỏi
9Chủ đề
Câu hỏi của môn
64/271 câuCòn 207
AAndroid Real Time
BLibraries
CLinux kernel
DApplication Framework
Lời giải
Mở trang câu hỏi này →Trong kiến trúc Android, có một số thành phần quan trọng giúp tạo nên hệ thống. Tuy nhiên, trong các lựa chọn trên, có một thành phần không phải là lớp (layer) trong kiến trúc Android. Đó là 'Android Real Time'. 'Android Real Time' không phải là một lớp trong kiến trúc Android, mà nó chỉ là một tính năng giúp hệ thống phản hồi nhanh chóng và chính xác. Các lớp trong kiến trúc Android bao gồm Linux kernel, Application Framework, Libraries, và một số lớp khác. Vì vậy, 'Android Real Time' không phải là một lớp trong kiến trúc Android.
46Which component contains fragments?4 lựa chọn
AAn information
BA value
CAn activity
DA lifecycle
Lời giải
Mở trang câu hỏi này →Trong mô hình hoạt động của một ứng dụng, một hoạt động (activity) là một đơn vị thực hiện một chức năng cụ thể. Một hoạt động có thể bao gồm nhiều phần tử khác nhau như các thành phần UI, logic kinh doanh, giao tiếp mạng, v.v. Các phần tử này có thể được gọi là các mảnh (fragments) trong ngữ cảnh này. Do đó, hoạt động (activity) là thành phần chứa các mảnh (fragments).
A
LinearLayoutB
RelativeLayoutC
CoordinatorLayoutD
FrameLayoutLời giải
Mở trang câu hỏi này →Trong thiết kế giao diện Android, thuộc tính android:layout_alignParentTop được sử dụng để xác định vị trí của một view so với phần đầu của bố cục. Để sử dụng thuộc tính này, bạn cần sử dụng RelativeLayout. RelativeLayout cho phép bạn đặt vị trí của một view so với các view khác hoặc các cạnh của bố cục. Ví dụ, bạn có thể đặt một view ở trên cùng của bố cục bằng cách sử dụng android:layout_alignParentTop=true. Điều này giúp bạn có thể tạo ra các bố cục phức tạp và linh hoạt hơn.
AModel
BView
CView model
DPresenter
Lời giải
Mở trang câu hỏi này →MVVM (Model-View-ViewModel) là một mô hình kiến trúc phổ biến trong lập trình ứng dụng. Để trả lời câu hỏi này, chúng ta cần hiểu rõ về các thành phần trong mô hình kiến trúc này. Model là lớp đại diện cho dữ liệu, có thể là một lớp dữ liệu cơ sở dữ liệu, một lớp dữ liệu từ mạng, v.v. View là lớp đại diện cho giao diện người dùng, có thể là một giao diện đồ họa, một giao diện nhập liệu, v.v. ViewModel là lớp trung gian giữa Model và View, có nhiệm vụ lấy dữ liệu từ Model và cung cấp cho View. Nó cũng có nhiệm vụ xử lý các sự kiện từ View và cập nhật dữ liệu trong Model. Trong khi đó, Presenter là một thành phần khác trong một số mô hình kiến trúc khác, chẳng hạn như MVP (Model-View-Presenter), nhưng không phải là một thành phần trong MVVM.
AmyAlertBuilder.setMessage("Alert");
BmyAlertBuilder.setPositiveButton("Alert");
CmyAlertBuilder.setTitle("Alert");
DAlertDialog.Builder myAlertBuilder = new AlertDialog.Builder("Alert");
Lời giải
Mở trang câu hỏi này →Để đặt tiêu đề cho một đối thoại cảnh báo, bạn cần sử dụng phương thức setTitle() của lớp AlertDialog.Builder. Phương thức này nhận một chuỗi ký tự làm tham số, biểu thị nội dung của tiêu đề. Ví dụ, myAlertBuilder.setTitle("Alert"); sẽ đặt tiêu đề cho đối thoại cảnh báo là "Alert". Điều này giúp người dùng dễ dàng nhận biết nội dung của đối thoại và có thể thực hiện các hành động phù hợp.
AA fragment has its own layout and its own behaviour with its own life cycle callbacks.
BYou can add or remove fragments in an activity while the activity is running.
CYou can combine multiple fragments in a single activity to build a multi-pane UI.
DAll of the others.
Lời giải
Mở trang câu hỏi này →Câu hỏi này yêu cầu bạn chọn đúng thông tin về Room library và Fragments. Room library là một thư viện giúp lưu trữ dữ liệu một cách dễ dàng. Nó cung cấp một lớp trừu tượng để lưu trữ dữ liệu. Về Fragments, chúng là một phần của Android, giúp bạn xây dựng các ứng dụng phức tạp hơn. Fragments có thể có layout và hành vi riêng biệt, và chúng có vòng đời riêng biệt. Ngoài ra, bạn có thể thêm hoặc xóa Fragments trong một hoạt động trong khi hoạt động đang chạy. Cuối cùng, bạn có thể kết hợp nhiều Fragments trong một hoạt động để xây dựng giao diện người dùng đa màn hình.
AsetManagerLayout
BsetLayoutManager
CsetLinearManager
DNone of these
Lời giải
Mở trang câu hỏi này →Khi sử dụng RecyclerView, trước khi thiết lập adapter cho nó, bạn cần phải thiết lập layout manager. Layout manager là một phần quan trọng của RecyclerView, giúp nó biết cách sắp xếp và hiển thị các item trong danh sách. Có nhiều loại layout manager khác nhau, chẳng hạn như LinearLayoutManager, GridLayoutManager, StaggeredGridLayoutManager, ... Mỗi loại layout manager sẽ có cách sắp xếp và hiển thị khác nhau. Vì vậy, trước khi thiết lập adapter, bạn cần phải chọn và thiết lập layout manager phù hợp với nhu cầu của mình.
APermissions are not specified in AndroidManifest.xml
BThe AndroidManifest.xml is optional.
CThe AndroidManifest.xml must supply a unique Application package name for your App.
DAndroidManifest.xml file is a UI layout file
Lời giải
Mở trang câu hỏi này →AndroidManifest.xml là một tệp quan trọng trong dự án Android, nơi chứa thông tin về ứng dụng. Trong tệp này, bạn cần khai báo các quyền (permissions) mà ứng dụng của mình cần để hoạt động. Ví dụ, ứng dụng có thể yêu cầu quyền truy cập vào camera, microphone, hoặc lưu trữ. Nếu không khai báo các quyền này, ứng dụng có thể không thể hoạt động đúng cách. Ngoài ra, tệp AndroidManifest.xml cũng cần cung cấp một tên gói (package name) duy nhất cho ứng dụng của bạn. Tên gói này được sử dụng để xác định ứng dụng và phân biệt nó với các ứng dụng khác. Tệp AndroidManifest.xml không phải là một tệp thiết kế UI (User Interface), mà là một tệp cấu hình quan trọng cho ứng dụng Android.
ATheme Editor
BAndroid SDK Manager
CAVD Manager
DVirtual Editor
Lời giải
Mở trang câu hỏi này →Để tạo một emulater mô phỏng cấu hình của một loại thiết bị Android cụ thể, bạn cần sử dụng công cụ AVD Manager. AVD Manager là một phần của Android SDK, cho phép bạn tạo và quản lý các hình ảnh ảo (virtual images) của thiết bị Android. Với AVD Manager, bạn có thể tạo các hình ảnh ảo với các cấu hình khác nhau, chẳng hạn như màn hình, bộ nhớ, và hệ điều hành. Điều này giúp bạn thử nghiệm và kiểm tra ứng dụng của mình trên các thiết bị Android khác nhau mà không cần phải có các thiết bị thực tế. Ngoài ra, AVD Manager cũng cho phép bạn tạo và quản lý các hình ảnh ảo cho các thiết bị Android khác nhau, chẳng hạn như điện thoại, máy tính bảng, và máy tính xách tay.
54Which of the following function calls can be used to start a Service from your Android application?4 lựa chọn
A
bindServiceB
startServiceC
runServiceD
launchServiewLời giải
Mở trang câu hỏi này →Để bắt đầu một Service từ ứng dụng Android của bạn, bạn có thể sử dụng các hàm gọi sau. Service là một thành phần quan trọng trong Android, cho phép chạy các tác vụ nền mà không cần phải có sự tương tác trực tiếp với người dùng. Có hai phương thức chính để bắt đầu một Service:
- startService: Phương thức này cho phép Service chạy trong nền và không cần phải có sự tương tác với ứng dụng. Khi Service được bắt đầu bằng phương thức này, nó sẽ tiếp tục chạy cho đến khi ứng dụng hoặc Service được dừng lại.
- bindService: Phương thức này cho phép Service được liên kết với ứng dụng và có thể nhận được các lệnh hoặc thông tin từ ứng dụng. Khi Service được bắt đầu bằng phương thức này, nó sẽ chỉ chạy khi ứng dụng đang hoạt động và sẽ dừng lại khi ứng dụng bị dừng.
A
onMapReady(GoogleMap)B
onMapLoaded(GoogleMap)C
onMapCreate(GoogleMap)D
onMapInitialize(GoogleMap)Lời giải
Mở trang câu hỏi này →Khi bạn muốn sử dụng bản đồ trong ứng dụng, bạn cần gọi một phương thức đặc biệt để kiểm tra xem bản đồ đã sẵn sàng chưa. Phương thức này được gọi khi bản đồ được tải và sẵn sàng để sử dụng. Trong Google Maps, phương thức này được gọi là "onMapReady(GoogleMap)". Nó được sử dụng để xác định khi bản đồ đã được tải và sẵn sàng để sử dụng, giúp bạn có thể thêm các tính năng và chức năng vào bản đồ. Phương thức này được gọi một lần khi bản đồ được tải và sẵn sàng, giúp bạn có thể thực hiện các hành động cần thiết để sử dụng bản đồ.
56What are components in Room?4 lựa chọn
A
EntityB
DatabaseHelperC
DatabaseD
DAOLời giải
Mở trang câu hỏi này →Trong Room, các thành phần chính bao gồm Entity, Database và DAO. Entity đại diện cho các đối tượng dữ liệu trong cơ sở dữ liệu, Database là lớp quản lý cơ sở dữ liệu, còn DAO (Data Access Object) là lớp cung cấp giao diện truy cập dữ liệu. Entity được sử dụng để mô tả cấu trúc dữ liệu, Database được sử dụng để quản lý cơ sở dữ liệu và DAO được sử dụng để thực hiện các hoạt động truy cập dữ liệu. Việc sử dụng các thành phần này giúp chúng ta có thể dễ dàng quản lý và truy cập dữ liệu trong ứng dụng.
57Which tag is used to define themes?4 lựa chọn
A<style>
B<theme>
C<meta-tag>
D<styling>
Lời giải
Mở trang câu hỏi này →Để định nghĩa các chủ đề trong HTML, bạn cần sử dụng thẻ <style>. Thẻ này cho phép bạn định nghĩa các quy tắc về cách hiển thị các phần tử trên trang web, bao gồm cả màu sắc, font, kích thước và vị trí. Bạn có thể sử dụng thẻ <style> để tạo ra các chủ đề khác nhau cho trang web của mình, giúp người dùng có thể dễ dàng chuyển đổi giữa các chủ đề khác nhau.
A
stackoverflow.comB
officialandroid.blogspot.comC
github.comD
developer.android.comLời giải
Mở trang câu hỏi này →Nguồn tài liệu chính thức cho các nhà phát triển Android là nơi cung cấp thông tin chi tiết và chính xác về các tính năng, API và công cụ của hệ điều hành Android. Đây là nơi bạn có thể tìm thấy hướng dẫn sử dụng, tài liệu tham khảo và các ví dụ về cách sử dụng các tính năng và API của Android. Với sự hỗ trợ của cộng đồng phát triển Android, nguồn tài liệu này luôn được cập nhật và hoàn thiện để đáp ứng nhu cầu của các nhà phát triển.
AContent provider
BBroadcast receiver
CShared Preference
DCloud storage
Lời giải
Mở trang câu hỏi này →Trong các lựa chọn trên, thành phần không nằm dưới ứng dụng Android là "Cloud storage". Cloud storage là một dịch vụ lưu trữ dữ liệu trực tuyến, cho phép người dùng lưu trữ và truy cập dữ liệu từ bất kỳ thiết bị nào có kết nối internet. Vì vậy, nó không thuộc về ứng dụng Android mà là một dịch vụ độc lập. Ngược lại, Content provider, Broadcast receiver và Shared Preference đều là các thành phần quan trọng của ứng dụng Android, giúp ứng dụng tương tác với hệ điều hành và các ứng dụng khác.
AThe click handler method must include the event listener View.OnClickListener, which is an interface in the View class
BThe click handler method must be public, return void, and define a View as its only parameter.
CThe click handler must customize the View.OnClickListener class and override its click handler to perform some action.
DThe click handler method must be private and return a View.
Lời giải
Mở trang câu hỏi này →Để thực hiện một hành động khi người dùng nhấp vào một thành phần trong giao diện người dùng, chúng ta cần tạo một hàm xử lý sự kiện click. Hàm này phải được gọi từ thuộc tính trong layout. Trong Android, để tạo một hàm xử lý sự kiện click, chúng ta phải tạo một phương thức trong lớp Activity hoặc Fragment. Phương thức này phải đáp ứng một số yêu cầu nhất định. Trước hết, nó phải được khai báo công khai (public). Điều này cho phép chúng ta gọi phương thức này từ bên ngoài lớp. Thứ hai, phương thức này phải trả về giá trị void, điều này có nghĩa là nó không trả về bất kỳ giá trị nào. Cuối cùng, phương thức này phải có một tham số duy nhất là một đối tượng View. Đối tượng này đại diện cho thành phần mà người dùng đã nhấp vào. Khi chúng ta tạo một hàm xử lý sự kiện click, chúng ta có thể thực hiện bất kỳ hành động nào mà chúng ta muốn khi người dùng nhấp vào thành phần đó.
Acreate, read, update
Bread, update, delete
Ccreate, read, update, delete
Dread, delete
Lời giải
Mở trang câu hỏi này →Khi sử dụng một content provider, các ứng dụng Android có thể thực hiện các hoạt động sau với dữ liệu được lưu trữ trong content provider. Các hoạt động này bao gồm tạo (create), đọc (read), cập nhật (update) và xóa (delete) dữ liệu. Điều này cho phép các ứng dụng khác nhau chia sẻ và sử dụng dữ liệu một cách thống nhất. Ví dụ, một ứng dụng có thể tạo dữ liệu, sau đó một ứng dụng khác có thể đọc và cập nhật dữ liệu đó. Điều này giúp tăng cường tính linh hoạt và khả năng tương tác giữa các ứng dụng khác nhau.
AThe category must not be specified
BThe name must not be specified
CThe action must not be specified
DThe data must not be specified
Lời giải
Mở trang câu hỏi này →Một ý định 'kín đáo' (implicit) trong lập trình máy tính thường không yêu cầu thông tin cụ thể về các yếu tố như tên (name), hành động (action) hoặc dữ liệu (data). Tuy nhiên, điều quan trọng cần lưu ý là đối tượng (object) hoặc danh mục (category) không phải lúc nào cũng được yêu cầu. Trong một số trường hợp, chúng có thể được xác định tự động hoặc không được sử dụng. Vì vậy, câu trả lời đúng cho câu hỏi này là 'The name must not be specified' và có thể là 'The category must not be specified' tùy thuộc vào ngữ cảnh cụ thể.
63If you want to increase the whitespace between widgets, you will need to use the ____________ property.4 lựa chọn
Aandroid:distance
Bandroid:text-align
Candroid:margin
Dandroid:autoText
Lời giải
Mở trang câu hỏi này →Để tăng khoảng trắng giữa các widget, bạn sẽ cần sử dụng thuộc tính ____________. Trong thiết kế giao diện người dùng, khoảng trắng là một yếu tố quan trọng để tạo ra một bố cục đẹp mắt và dễ sử dụng. Nếu khoảng trắng quá nhỏ, các widget có thể bị chen lấn vào nhau, gây khó khăn cho người dùng. Ngược lại, nếu khoảng trắng quá lớn, giao diện có thể trở nên rối rắm và không chuyên nghiệp. Vì vậy, việc điều chỉnh khoảng trắng giữa các widget là rất quan trọng. Trong Android, thuộc tính mà bạn cần sử dụng để tăng khoảng trắng giữa các widget là android:margin. Đây là thuộc tính giúp bạn có thể điều chỉnh khoảng cách giữa các widget và tạo ra một bố cục đẹp mắt và dễ sử dụng.
64What Activity lifecycle methods are called when a device-configuration change (such as rotation) occurs?4 lựa chọn
AAndroid immediately shuts down your Activity by calling onStop(). Your code must restart the Activity
BAndroid shuts down your Activity by calling onPause(), onStop(), and onDestroy(). Your code must restart the Activity.
CAndroid shuts down your Activity by calling onPause(), onStop(), and onDestroy(), and then starts it over again, calling onCreate(), onStart(), and onResume().
DAndroid immediately calls onResume().
Lời giải
Mở trang câu hỏi này →Khi một thiết bị thay đổi cấu hình (như xoay màn hình), các phương thức vòng đời hoạt động của Android sẽ được gọi. Điều này bao gồm các phương thức onPause(), onStop(), và onDestroy(). Sau đó, Android sẽ khởi tạo lại hoạt động bằng cách gọi các phương thức onCreate(), onStart(), và onResume(). Điều này cho phép hoạt động cập nhật lại trạng thái và nội dung của mình khi thiết bị thay đổi cấu hình. Ví dụ, khi xoay màn hình, hoạt động sẽ được khởi tạo lại để hiển thị nội dung phù hợp với định dạng màn hình mới.