Hỗ trợ đào tạo

Multiplatform Mobile App Development - Phát triển ứng dụng di động đa nền tảng

7Chủ đề
130Câu hỏi

Ôn luyện MMA301 – Phát triển ứng dụng di động đa nền tảng với React Native: ngân hàng câu hỏi trắc nghiệm có đáp án và giải thích chi tiết, luyện thi cuối kỳ hiệu quả. Nội dung bao quát React Native, Expo, component & navigation, styling Flexbox, quản lý state bằng hooks/Redux/Context API, FlatList/SectionList, thông báo đẩy, lưu trữ AsyncStorage/SQLite/Firebase, tích hợp Gemini AI và xuất bản ứng dụng iOS/Android. Môn 3 tín chỉ tại FPT University, tiên quyết FER202.

Chủ đề học tập

Phát triển ứng dụng di động đa nền tảng

MMA301 - Chương 1: Giới thiệu React Native, kiến trúc Bridge và Native Module

Trắc nghiệm MMA301 chương 1 - Nền tảng React Native: React Native là gì, tech stack xây dựng ứng dụng đa nền tảng, JSX thay cho HTML và CSS, ưu điểm và rủi ro khi chọn React Native, khác biệt so với React.js khi render; kiến trúc Bridge với các luồng JavaScript Thread, Native Thread và Shadow Thread, thư viện JavaScriptCore, quy trình truyền tin qua cầu nối; Native Module trên Android với ReactMethod và trên iOS với RCTBridge; Expo CLI, Hot Module Replacement và công cụ dựng bản Android.

0Bộ đềbộ đề
25+Câu hỏicâu hỏi
đăng ngày
Phát triển ứng dụng di động đa nền tảng

MMA301 - Chương 2: Component cơ bản và vòng đời

Trắc nghiệm MMA301 chương 2 - Các component dựng sẵn của React Native: View là nền tảng của mọi component và cách lồng View, Text hiển thị nội dung, TextInput với onChangeText, Button với title và onPress, Switch với value và onValueChange, ScrollView và SafeAreaView, TouchableHighlight cùng nhóm Touchable, các component riêng của iOS và Android; vòng đời component qua các pha mount, update, unmount, phương thức render, giai đoạn Pre-Commit và Commit, hạn chế của function component.

0Bộ đềbộ đề
34+Câu hỏicâu hỏi
đăng ngày
Phát triển ứng dụng di động đa nền tảng

MMA301 - Chương 3: Danh sách với FlatList và SectionList

Trắc nghiệm MMA301 chương 3 - Hiển thị danh sách hiệu quả trong React Native: FlatList với các prop data, renderItem, keyExtractor, horizontal và ItemSeparatorComponent, hành vi khi data bằng null hoặc undefined, lý do FlatList tiết kiệm bộ nhớ hơn ScrollView khi danh sách dài; SectionList với sections, renderItem và renderSectionHeader, cách render từng phần tử trong mỗi nhóm và khi nào nên chọn SectionList thay cho FlatList.

0Bộ đềbộ đề
12+Câu hỏicâu hỏi
đăng ngày
Phát triển ứng dụng di động đa nền tảng

MMA301 - Chương 4: Bố cục Flexbox và Style

Trắc nghiệm MMA301 chương 4 - Bố cục và tạo kiểu trong React Native: StyleSheet.create và cách tổ chức style cho dễ bảo trì, dùng đối tượng JavaScript thuần để định nghĩa style, thuộc tính giống CSS như backgroundColor; hệ Flexbox với flexDirection row, column, row-reverse và column-reverse, justifyContent theo trục chính, alignItems theo trục phụ, flexWrap và flexShrink; kích thước cố định với width và height so với kích thước co giãn bằng flex; hướng bố cục và bố cục nhất quán trên nhiều kích thước màn hình.

0Bộ đềbộ đề
22+Câu hỏicâu hỏi
đăng ngày
Phát triển ứng dụng di động đa nền tảng

MMA301 - Chương 5: Điều hướng với React Navigation

Trắc nghiệm MMA301 chương 5 - Điều hướng nhiều màn hình bằng React Navigation: các navigator dựng sẵn Stack, Tab và Drawer, DrawerLayoutAndroid với prop renderNavigationView; các hook useNavigation để lấy đối tượng điều hướng, useRoute để đọc tham số truyền sang màn hình, useNavigationState để tra tên route hiện tại, useIsFocused và useFocusEffect để chạy tác vụ theo trạng thái màn hình đang hiển thị; điều kiện bắt buộc khi gọi hook điều hướng trong function component.

0Bộ đềbộ đề
13+Câu hỏicâu hỏi
đăng ngày
Phát triển ứng dụng di động đa nền tảng

MMA301 - Chương 6: Quản lý trạng thái, Hook và Redux

Trắc nghiệm MMA301 chương 6 - Quản lý dữ liệu trong ứng dụng React Native: state là gì và khác props ra sao, hook useState để khởi tạo và cập nhật trạng thái, useReducer cho logic trạng thái phức tạp và khác biệt so với useState, useEffect để chạy tác vụ khi component mount; Redux với reducer, action và store, giá trị state sau khi dispatch; các phương án quản lý dữ liệu xuyên suốt ứng dụng và tiêu chí chọn giữa chúng.

0Bộ đềbộ đề
7+Câu hỏicâu hỏi
đăng ngày
Phát triển ứng dụng di động đa nền tảng

MMA301 - Chương 7: Lưu trữ cục bộ và API thiết bị

Trắc nghiệm MMA301 chương 7 - Lưu trữ và truy cập phần cứng: AsyncStorage với setItem, getItem, removeItem và multiSet, cơ chế lưu bất đồng bộ theo cặp khoá và giá trị dạng chuỗi; Geolocation API với getCurrentPosition và watchPosition, các nguồn xác định vị trí, hiển thị bản đồ bằng MapView và các prop của nó; React Native Image Picker để chụp ảnh hoặc chọn ảnh từ thư viện; module Platform để nhận diện nền tảng và render theo từng hệ điều hành.

0Bộ đềbộ đề
17+Câu hỏicâu hỏi
đăng ngày
Học từ ngân hàng câu hỏi

Bắt đầu một phiên học theo môn

Tiến độ của bạn sẽ luôn được tính toán và đồng bộ trực tiếp theo tổng số lượng câu hỏi mới nhất của môn học này.

130Ngân hàng hiện tại
--Tiến độ môn
Số câu hỏi
Độ khó
Phiên sắp tạo
130 câu Chế độ học Không giới hạn Trộn

Bạn cần đăng nhập để bắt đầu học từ ngân hàng câu hỏi và lưu tiến độ theo môn.

0Dễ · --
0Trung bình · --
0Khó · --
--Đã học
--Đang nắm chắc
Đăng nhập để xemLần hoàn tất gần nhất

Đang tải phân bố độ khó.

Đăng nhập để bắt đầu học từ ngân hàng câu hỏi, lưu tiến độ theo môn, resume phiên đang dở và cập nhật thống kê dài hạn.

Ngân hàng câu hỏi

Xem trước · Cuộn vô hạn
Xem tất cả
Đang hiển thị 8 / 130 câu hỏi
Bấm vào từng câu để xem đáp án
#001
86%
ĐỘ CHÍNH XÁC
7
LƯỢT LÀM
4 LỰA CHỌN
AAn API platform is a software system with integrated tools and processes that allow teams to effectively build, manage, publish, and consume APIs
BAn API platform helps API producers manage the entire API lifecycle - from design to production - while engaging directly with API consumers
CAPI platforms complement and enhance existing workflows through integrations with source code management tools, CI/CD pipelines, cloud infrastructure, and APM solutions
API platforms are primarily used for managing user authentication and authorization tasksĐÚNG
Giải thích

Một nền tảng API là một hệ thống phần mềm tích hợp các công cụ và quy trình cho phép các nhóm xây dựng, quản lý, xuất bản và tiêu thụ API một cách hiệu quả. Nó giúp các nhà sản xuất API quản lý toàn bộ vòng đời của API - từ thiết kế đến sản xuất - trong khi tương tác trực tiếp với người tiêu thụ API. Các nền tảng API bổ sung và nâng cao các quy trình hiện có thông qua tích hợp với các công cụ quản lý mã nguồn, các dòng luồng CI/CD, cơ sở hạ tầng đám mây và giải pháp theo dõi hiệu suất APM. Tuy nhiên, các nền tảng API không chỉ được sử dụng để quản lý các tác vụ xác thực và ủy quyền người dùng.

#002
40%
ĐỘ CHÍNH XÁC
5
LƯỢT LÀM
4 LỰA CHỌN
Platform.selectĐÚNG
BPlatform.OS
CPlatform.Version
DPlatform.isIOS
Giải thích

Để thực hiện việc render điều kiện dựa trên nền tảng, chúng ta có thể sử dụng phương thức Platform.select. Phương thức này cho phép chúng ta chọn một trong nhiều mã nguồn dựa trên nền tảng mà ứng dụng đang chạy. Ví dụ, nếu chúng ta muốn hiển thị một biểu tượng khác nhau trên Android và iOS, chúng ta có thể sử dụng Platform.select để chọn biểu tượng phù hợp cho nền tảng hiện tại. Ngoài ra, chúng ta cũng có thể sử dụng Platform.select để điều chỉnh giao diện ứng dụng dựa trên nền tảng, chẳng hạn như thay đổi màu sắc hoặc font chữ.

#003
75%
ĐỘ CHÍNH XÁC
4
LƯỢT LÀM
4 LỰA CHỌN
AUse Image
BUse ViewMap
Install react-native-maps and use MapView componentĐÚNG
DInstall library react-native-maps and use Map component
Giải thích

Để sử dụng Geolocation API để hiển thị một bản đồ, bạn cần thực hiện các bước sau. Trước hết, bạn cần cài đặt thư viện react-native-maps bằng cách chạy lệnh npm install react-native-maps trong terminal. Sau đó, bạn cần thêm thư viện này vào dự án của mình bằng cách thêm import { MapView } từ thư viện react-native-maps. Tiếp theo, bạn cần tạo một component mới và sử dụng MapView để hiển thị bản đồ. Bạn có thể sử dụng các phương thức của MapView để tùy chỉnh bản đồ, chẳng hạn như thêm các marker, polyline, polygon, v.v. Ngoài ra, bạn cần sử dụng Geolocation API để lấy vị trí hiện tại của thiết bị và hiển thị bản đồ dựa trên vị trí đó. Điều này sẽ giúp bạn tạo ra một ứng dụng bản đồ động và chính xác.

#004
100%
ĐỘ CHÍNH XÁC
5
LƯỢT LÀM
4 LỰA CHỌN
AProviding real-time location updates
BEnhancing user experience with location-based services
Increasing battery consumption significantlyĐÚNG
DOffering turn-by-turn navigation
Giải thích

Khi đánh giá lợi ích của việc sử dụng địa điểm trong ứng dụng di động, chúng ta cần xem xét các lợi ích và hạn chế của nó. Địa điểm có thể cung cấp thông tin vị trí thực thời gian, giúp người dùng có trải nghiệm tốt hơn với các dịch vụ dựa trên vị trí. Ngoài ra, địa điểm cũng có thể cung cấp hướng dẫn đường đi chi tiết, giúp người dùng dễ dàng di chuyển. Tuy nhiên, một trong những hạn chế của địa điểm là nó có thể làm tăng tiêu thụ pin đáng kể, điều này có thể ảnh hưởng đến hiệu suất của thiết bị. Vì vậy, trong các lựa chọn trên, tăng tiêu thụ pin đáng kể là một hạn chế, không phải là một lợi ích.

#005
75%
ĐỘ CHÍNH XÁC
4
LƯỢT LÀM
4 LỰA CHỌN
Platform moduleĐÚNG
BDevice module
CPlatformDetect module
DOS module
Giải thích

Module phát hiện nền tảng mà ứng dụng hoạt động. Trong lập trình, nền tảng có thể là hệ điều hành, thiết bị di động, v.v. Để xác định nền tảng mà ứng dụng đang hoạt động, chúng ta cần sử dụng một module chuyên dụng. Trong các lựa chọn trên, module phát hiện nền tảng được gọi là "Platform module". Nó giúp ứng dụng xác định được nền tảng mà nó đang chạy trên, từ đó có thể thực hiện các hành động phù hợp.

#006
75%
ĐỘ CHÍNH XÁC
4
LƯỢT LÀM
4 LỰA CHỌN
APicker
BImage
ImagePickerĐÚNG
DView
Giải thích

Để chụp ảnh bằng camera trên thiết bị, bạn cần sử dụng một thành phần bản địa cụ thể. Trong các lựa chọn đã cho, thành phần "ImagePicker" là lựa chọn đúng. Thành phần này cho phép bạn truy cập vào camera của thiết bị và chụp ảnh. Nó cung cấp một giao diện đơn giản để chọn ảnh từ thư viện ảnh hoặc chụp ảnh mới bằng camera.

#007
100%
ĐỘ CHÍNH XÁC
3
LƯỢT LÀM
4 LỰA CHỌN
Media TypeĐÚNG
BFont Size
QualityĐÚNG
DBackground Color
Giải thích

Chọn đáp án đúng cho câu hỏi này bằng cách hiểu về các thuộc tính mà ImagePicker trong React Native cung cấp. ImagePicker là một thành phần quan trọng trong React Native, giúp người dùng chọn và tải ảnh lên ứng dụng. Để quản lý thành phần này, ImagePicker cung cấp một số thuộc tính quan trọng. Trong số các lựa chọn trên, "Media Type" và "Quality" là hai thuộc tính chính mà ImagePicker cung cấp. "Media Type" cho phép người dùng chọn loại phương tiện muốn chọn (ví dụ: ảnh, video,...), trong khi "Quality" cho phép người dùng chọn chất lượng ảnh muốn tải lên. Các thuộc tính khác như "Font Size", "Quality" không liên quan trực tiếp đến việc quản lý ImagePicker. Vì vậy, đáp án đúng cho câu hỏi này là "Media Type" và "Quality".

#008
80%
ĐỘ CHÍNH XÁC
5
LƯỢT LÀM
4 LỰA CHỌN
AThe code will display "Hello Android" only on iOS.
BThe code will display "Hello iOS" on both platforms.
The code will display "Hello Android" on Android and "Hello iOS" on iOS.ĐÚNG
DThe code will crash on Android devices.
Giải thích

Để điều kiện hiển thị một thành phần trên Android bằng cách sử dụng mô-đun Platform, chúng ta cần sử dụng toán tử điều kiện (ternary operator) trong mã JSX. Trong ví dụ này, chúng ta đang kiểm tra xem hệ điều hành hiện tại là Android hay không bằng cách sử dụng thuộc tính Platform.OS. Nếu hệ điều hành là Android, thì sẽ hiển thị 'Hello Android', ngược lại sẽ hiển thị 'Hello iOS'. Điều này cho phép chúng ta điều khiển việc hiển thị thành phần dựa trên hệ điều hành của thiết bị.

Cuộn để tải thêm…