React Native có hai lộ trình cài đặt phổ biến: bắt đầu nhanh với Expo hoặc chuẩn bị đầy đủ native toolchain để tự build Android/iOS. Chọn đúng lộ trình ngay từ đầu giúp tránh cài hàng chục GB công cụ không cần thiết.
Chọn Expo hay native toolchain?
| Lộ trình | Phù hợp | Cần cài |
|---|---|---|
| Expo | Học, MVP, ứng dụng phổ thông, phát triển đa nền tảng nhanh | Node.js LTS và thiết bị/Expo Go; native IDE có thể bổ sung sau |
| Native toolchain | Module native riêng, tích hợp SDK đặc thù, kiểm soát build local | Node.js, JDK, Android Studio; Xcode và CocoaPods cho iOS |
Cài Node.js LTS và công cụ cơ bản
Nên dùng trình quản lý phiên bản như nvm, fnm hoặc Volta để mỗi dự án có phiên bản Node phù hợp.
node --version
npm --version
git --versionKhông cài React Native CLI toàn cục; dùng npx để lấy CLI phù hợp với dự án.
Lộ trình Expo
npx create-expo-app@latest my-mobile-app
cd my-mobile-app
npx expo startQuét QR bằng thiết bị cùng mạng, hoặc nhấn a/i để mở Android Emulator/iOS Simulator. Khi mạng nội bộ chặn kết nối, thử npx expo start --tunnel.
Chuẩn bị Android native
- Cài Android Studio và Android SDK theo tài liệu React Native.
- Trong SDK Manager, cài platform, build-tools, platform-tools và emulator tương thích với dự án.
- Tạo Android Virtual Device trong Device Manager.
- Cấu hình
ANDROID_HOMEvà thêmplatform-toolsvào PATH. - Cài JDK theo phiên bản React Native đang dùng; không đoán phiên bản từ hướng dẫn cũ.
adb --version
adb devices
java -version
npx react-native doctor
Chuẩn bị iOS trên macOS
Build iOS local yêu cầu macOS và Xcode. Sau khi cài Xcode, mở một lần để chấp nhận license và tải component cần thiết. Cài CocoaPods nếu dự án yêu cầu, rồi cài pods:
xcode-select -p
sudo gem install cocoapods
cd ios && pod install && cd ..Với máy quản lý Ruby bằng Bundler, ưu tiên bundle exec pod install để đồng nhất phiên bản CocoaPods.
Tạo dự án không dùng Expo
npx @react-native-community/cli@latest init MyApp
cd MyApp
npm start
npm run android
npm run iosKiểm tra tài liệu phiên bản React Native của dự án vì yêu cầu Node, JDK, Gradle, Xcode và CocoaPods thay đổi theo thời gian.
Kết nối thiết bị thật
- Android: bật Developer options và USB debugging, xác nhận thiết bị bằng
adb devices. - iOS: chọn Development Team trong Xcode và tin cậy chứng chỉ trên thiết bị.
- Đảm bảo máy và thiết bị truy cập được Metro bundler; firewall/VPN có thể chặn cổng phát triển.
Biến môi trường và dữ liệu nhạy cảm
Expo tự nạp biến có tiền tố EXPO_PUBLIC_ vào mã client. Bất kỳ giá trị nào nằm trong bundle mobile đều có thể bị đọc, vì vậy không đặt private API key hoặc secret backend trong ứng dụng.
Lỗi thường gặp
- SDK location not found: kiểm tra
ANDROID_HOMEvàlocal.properties. - Không thấy thiết bị: kiểm tra cáp, quyền USB debugging và
adb kill-server/adb start-server. - Pod lỗi: xóa cache có chọn lọc, cập nhật repo khi cần và giữ phiên bản bằng Gemfile.
- Metro cache cũ: dùng
npx react-native start --reset-cachehoặc tùy chọn tương ứng của Expo.
Checklist hoàn tất
- Dự án cài dependency từ lock file thành công.
- Metro khởi động và ứng dụng mở trên ít nhất một emulator hoặc thiết bị thật.
react-native doctorkhông còn lỗi bắt buộc.- Phiên bản Node/JDK được ghi trong README hoặc file quản lý phiên bản.
- Không có secret trong mã client hay repository.




Chưa có bình luận. Hãy là người đầu tiên chia sẻ ý kiến.