Báo Cáo Thẩm Định Giấy Phép Mã Nguồn Mở
Ứng Dụng Di Động EV Power (evp-app)
Tài liệu kiểm toán kỹ thuật và bản quyền phần mềm độc lập, rà soát 100% thư viện runtime và công cụ biên dịch trong hệ sinh thái ứng dụng EV Power. Đánh giá chuyên sâu 7 nhóm rủi ro đặc thù (Bản đồ, Font chữ, Camera, Cổng thanh toán, Mã hóa, Copyleft Taint, Dịch vụ Đám mây) phục vụ hồ sơ nghiệm thu hợp đồng và xuất bản lên Apple App Store & Google Play Store.
PHẦN A: Bảng Danh Mục Thư Viện & Framework Mã Nguồn Mở 58 Packages
| Thư viện / Thành phần (Library / Component) |
Phiên bản (Version) |
Giấy phép (License) |
Phạm vi sử dụng (Scope) |
Ghi chú & Chi phí (Notes & Cost) |
|---|---|---|---|---|
| 1. Nền tảng & Khung chạy Cốt lõi (Runtime Core & Base Platform Framework) | ||||
expo |
~57.0.22 |
MIT | Base Platform Framework (Expo SDK 57) | Bộ SDK lõi quản lý vòng đời ứng dụng, cơ chế tự động liên kết native modules (autolinking), quản lý cấu hình biên dịch qua app.json và app.config.ts trên kiến trúc Fabric Bridgeless. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
react |
19.2.3 |
MIT | Mobile UI Core Runtime | Cung cấp Virtual DOM, reconciliation engine, và hệ thống hooks (useState, useEffect, useContext, useCallback, useMemo) nền tảng trên kiến trúc React 19. Bản quyền Meta Platforms, Inc. Chi phí bản quyền: 0 USD. Tự do thương mại hóa. |
react-dom |
19.2.3 |
MIT | Core Engine (Mandatory Peer) | Thư viện peer dependency bắt buộc cho Expo SDK 57 và Expo Router để hỗ trợ dựng hình DOM và web primitives khi chạy trên môi trường web. Bản quyền Meta Platforms, Inc. Chi phí: 0 USD. |
react-native |
0.86.3 |
MIT | Cross-Platform Mobile Runtime (Fabric) | Cầu nối runtime JavaScript với native iOS/Android qua kiến trúc thuần Fabric & TurboModules (loại bỏ Paper & Bridge); tối ưu hóa Hermes v1 và hỗ trợ Android 15 Edge-to-Edge. Bản quyền Meta Platforms, Inc. Chi phí: 0 USD. Tự do thương mại. |
@expo/metro-runtime |
~57.0.15 |
MIT | Development & Web Metro Runtime | Thư viện runtime cho Metro bundler hỗ trợ Fast Refresh, thông báo lỗi (Error Overlay) và môi trường runtime phát triển, tương thích web. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-constants |
~57.0.18 |
MIT | System & App Constants | Truy xuất metadata hệ thống bất biến, app ownership, release channel và cấu hình extra (API URL, API Keys) từ app.config.ts vào configs/env.ts. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
| 2. Điều hướng & Quản lý Luồng Màn hình (Navigation, Routing & App State Flow) | ||||
expo-router |
~57.0.21 |
MIT | File-Based Routing Engine | Điều hướng tệp tin hiện đại (app/(tabs), app/(auth), app/stations), quản lý Stack, Bottom Tabs và modal screens; phiên bản SDK 57 tách độc lập khỏi phụ thuộc trực tiếp @react-navigation/*. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
react-native-screens |
~4.26.0 |
MIT | Native Navigation Containers | Ánh xạ trực tiếp màn hình React Native sang container gốc (UIViewController trên iOS, Fragment trên Android), tối ưu bộ nhớ RAM và hiệu năng render trên Fabric C++. Bản quyền Software Mansion. Chi phí: 0 USD. |
react-native-gesture-handler |
~2.32.0 |
MIT | Touch & Gesture System | Xử lý cảm ứng chạm vuốt (Pan, Pinch, Tap, Swipe) trực tiếp trên UI thread gốc, loại bỏ độ trễ cầu nối JavaScript khi thao tác trên bản đồ trạm sạc. Bản quyền Software Mansion. Chi phí: 0 USD. |
expo-linking |
~57.0.10 |
MIT | Universal Deep Linking | Xử lý và phân giải URL Scheme tùy chỉnh (evpower://), tiếp nhận tham số callback thanh toán VNPay và chuyển hướng ứng dụng ngoài (Zalo, Facebook, TikTok). Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
| 3. Quản lý Trạng thái & Bộ nhớ đệm Dữ liệu (State Management & Async Data Cache) | ||||
zustand |
^5.0.15 |
MIT | Client Global State Store | Quản lý trạng thái client nhẹ, bất biến, không boilerplate (stores/auth-store.ts, stores/charging-store.ts, stores/theme-store.ts), tương thích hoàn toàn React 19 concurrent features. Bản quyền Zustand Contributors. Chi phí: 0 USD. |
@tanstack/react-query |
^5.102.8 |
MIT | Async Server State & Cache | Đồng bộ dữ liệu máy chủ, tự động revalidate, stale-while-revalidate, quản lý cache phân trang và polling phiên sạc thời gian thực (queries/useChargingSessionQuery.ts). Bản quyền TanStack. Chi phí: 0 USD. |
dayjs |
^1.11.20 |
MIT | Date & Time Utility Engine | Thư viện xử lý ngày giờ siêu nhẹ (~2KB) thay thế Moment.js: định dạng mốc thời gian sạc, tính thời lượng sạc theo giây/phút/giờ và hiển thị lịch sử giao dịch (utils/date-time.ts). Bản quyền Day.js Contributors. Chi phí: 0 USD. |
| 4. Giao tiếp Mạng & Trình duyệt Nhúng (Networking, Connectivity & Web Container) | ||||
axios |
^1.7.7 |
MIT | HTTP Client & Interceptor | Khách hàng HTTP gửi nhận API RESTful (api/client.ts), hỗ trợ request/response interceptors tự động đính kèm Bearer JWT và cơ chế hàng đợi Mutex xử lý 401 Unauthorized tự động refresh token (NFR-SEC-02). Bản quyền Matt Zabriskie. Chi phí: 0 USD. |
@react-native-community/netinfo |
12.0.1 |
MIT | Network Connectivity Monitor | Theo dõi trạng thái kết nối Internet (Wifi, Cellular, Offline), cảnh báo người dùng khi mất mạng và tự động kết nối lại luồng telemetry trạm sạc (NFR-QLT-02). Bản quyền React Native Community. Chi phí: 0 USD. |
expo-web-browser |
~57.0.3 |
MIT | In-App System Browser | Mở trình duyệt nhúng an toàn theo chuẩn hệ thống (SFSafariViewController trên iOS, Chrome Custom Tabs trên Android) phục vụ điều khoản sử dụng, chính sách quyền riêng tư và liên kết ngoài. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
react-native-webview |
13.16.1 |
MIT | Sandboxed Payment Web Container | Container WebView độc lập nhúng cổng thanh toán VNPay (screens/wallet/TopupPaymentWebView.tsx), chặn URL callback evpower://payment-callback, đạt chuẩn miễn trừ PCI-DSS SAQ A. Bản quyền React Native Community. Chi phí: 0 USD. |
| 5. Giao diện Người dùng, Tạo kiểu & Thành phần Tương tác (UI Presentation & Styling) | ||||
nativewind |
^4.2.7 |
MIT | Tailwind CSS Styling Engine | Trình biên dịch tiện ích Tailwind CSS sang StyleSheet React Native native, chuẩn hóa thiết kế Dark/Light mode và bảng màu trạm sạc EV Power. Bản quyền Mark Lawlor. Chi phí: 0 USD. |
react-native-css-interop |
^0.2.7 |
MIT | CSS-to-Fabric Compiler | Cầu nối thuộc tính CSS cho các component React Native trên kiến trúc Fabric 0.86.3, hỗ trợ class động và pseudo-class. Bản quyền Mark Lawlor. Chi phí: 0 USD. |
react-native-safe-area-context |
~5.7.0 |
MIT | Safe Area Insets Engine | Xử lý vùng an toàn phần cứng (Dynamic Island, Tai thỏ, Home Indicator trên iOS và Thanh điều hướng cử chỉ viền cạnh Android 15 Edge-to-Edge). Bản quyền Th3Group. Chi phí: 0 USD. |
@callstack/liquid-glass |
^0.8.1 |
MIT | Modern Dynamic Glassmorphism | Thành phần hiệu ứng kính mờ động (Dynamic Liquid Glass / iOS Blur Backdrop) phục vụ thẻ ảo VirtualEvCard và StoppingChargeOverlay trên Fabric. Bản quyền Callstack. Chi phí: 0 USD. |
expo-linear-gradient |
~57.0.2 |
MIT | Native Gradient Renderer | Dựng gradient màu native mượt mà cho thẻ nạp tiền, thẻ định danh VirtualEvCard, nút hành động sạc nhanh và thanh tiến trình sạc. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-blur |
~57.0.3 |
MIT | Native Blur Effect View | Hiệu ứng làm mờ nền native (BlurView) cho Bottom Tab Bar nổi, Header trạm sạc và hộp thoại StoppingChargeOverlay cảnh báo dừng sạc. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
@react-native-community/slider |
5.2.0 |
MIT | Touch Slider Control | Thanh trượt tinh chỉnh thông số công suất sạc và tỷ lệ phần trăm SoC pin mục tiêu (20% – 100%) tại màn hình thiết lập sạc (screens/charging/SetupScreen.tsx). Bản quyền React Native Community. Chi phí: 0 USD. |
react-native-toast-message |
^2.5.2 |
MIT | Animated Toast Alert System | Hiển thị thông báo đẩy nổi (Toast notification) không chặn luồng thao tác: cảnh báo lỗi sạc, cắm súng thành công, sao chép mã trạm sạc, thông báo nạp ví thành công. Bản quyền Calin Tamas. Chi phí: 0 USD. |
| 6. Đồ họa, Hoạt họa, Font chữ & Quản lý Phương tiện (Graphics, Animations, Typography & Media) | ||||
react-native-reanimated |
4.5.1 |
MIT | 60/120 FPS Animation Engine | Thư viện hoạt họa hiệu năng cao thuần Fabric, thực thi logic animation trực tiếp trên UI thread qua worklet C++, điều khiển chuyển động vòng tròn tiến trình sạc và bottom sheet trạm sạc mượt mà. Bản quyền Software Mansion. Chi phí: 0 USD. |
react-native-worklets |
0.10.1 |
MIT | High-Performance UI Worklet Engine | Cơ chế thực thi luồng C++ worklet độc lập (Standalone C++ Worklets Runtime), điều khiển hoạt họa đồng hồ sạc và telemetry trên luồng giao diện người dùng. Bản quyền Software Mansion. Chi phí: 0 USD. |
lottie-react-native |
~7.3.8 |
Apache-2.0 | Vector Animation Player | Trình phát hoạt họa vector JSON Lottie cao cấp cho màn hình Splash mở đầu, hoạt họa súng sạc đang truyền điện, và biểu tượng thành công (screens/charging/SuccessScreen.tsx). Bản quyền Airbnb. Giấy phép Apache-2.0 kèm điều khoản cấp quyền sáng chế chéo. Chi phí: 0 USD. |
react-native-svg |
15.15.4 |
MIT | Hardware-Accelerated SVG Engine | Dựng hình vector SVG tăng tốc phần cứng: biểu đồ đo dòng điện/điện áp sạc, icon đầu cúng sạc (CCS2, Type 2, GB/T, CHAdeMO) và sơ đồ trực quan trạm sạc. Bản quyền Horcrux. Chi phí: 0 USD. |
@expo/vector-icons |
^15.1.1 |
MIT | Vector Icon Glyph Bundler | Bộ sưu tập glyph icon chuẩn hóa (Ionicons, MaterialCommunityIcons, Feather) cho hệ thống icon thanh điều hướng, tiện ích trạm sạc và bộ lọc cổng sạc. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-font |
~57.0.4 |
MIT | Custom Font Loader | Tải font chữ tùy chỉnh Space Grotesk (giấy phép SIL Open Font License 1.1) bất đồng bộ tại giai đoạn khởi động ứng dụng, đảm bảo tính đồng nhất nhận diện thương hiệu EV Power. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-asset |
~57.0.17 |
MIT | Static Asset Preloader | Quản lý và tiền tải (preload) các tài sản tĩnh (ảnh nền trạm sạc, sticker xe điện, logo thương hiệu) vào bộ nhớ đệm trước khi hiển thị màn hình chính. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-splash-screen |
~57.0.9 |
MIT | Native Splash Controller | Giữ màn hình khởi động native hiển thị đồng bộ trong khi nạp font, kiểm tra token xác thực và cấu hình trạm sạc, đóng màn hình mượt mà không chớp trắng. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
| 7. Xử lý Hình ảnh, Cảm biến Phần cứng & Tích hợp Hệ điều hành (Image Processing, Hardware Sensors & Device OS) | ||||
expo-image |
~57.0.5 |
MIT | High-Performance Image Component | Thành phần hiển thị hình ảnh tối ưu cao: hỗ trợ định dạng hiện đại (WebP, AVIF), bộ nhớ cache đĩa/RAM đa tầng và chuyển tiếp mờ (blurhash placeholder) cho ảnh trạm sạc. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-image-manipulator |
~57.0.17 |
MIT | Client-Side Image Resizer | Cắt gọt, xoay và nén giảm dung lượng ảnh đại diện và ảnh chụp xe điện trước khi tải lên máy chủ API (screens/profile/EditProfileScreen.tsx). Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-image-picker |
~57.0.17 |
MIT | Photo Gallery & Camera Picker | Cung cấp giao diện chọn ảnh từ thư viện thiết bị hoặc chụp ảnh mới cập nhật avatar hồ sơ và ảnh chứng từ hóa đơn GTGT. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-camera |
~57.0.5 |
MIT | Hardware Camera & MLKit QR Scanner | Điều khiển cảm biến máy ảnh phần cứng quét mã QR dán trên trụ sạc (screens/qr-scan/QRScanScreen.tsx), tích hợp Google MLKit phân tích mã vạch tốc độ dưới 100ms; không yêu cầu quyền ghi âm microphone. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-location |
~57.0.17 |
MIT | GPS Geolocation Service | Truy vấn tọa độ GPS thời gian thực của xe/người dùng, tính toán khoảng cách bán kính đến trạm sạc gần nhất và kích hoạt tính năng tìm đường. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-haptics |
~57.0.3 |
MIT | Taptic & Vibration Feedback | Phản hồi rung xúc giác khi quét mã QR thành công, bấm nút bắt đầu/dừng sạc hoặc thao tác thanh trượt công suất, tăng trải nghiệm vật lý người dùng. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-notifications |
~57.0.18 |
MIT | Push & Local Notification Handler | Đăng ký Expo Push Token gửi về backend, tiếp nhận thông báo đẩy nền về tiến độ sạc (ORDER_CREATED, CHARGING_STOPPED, TOPUP_SUCCESS) và kích hoạt chuyển màn hình chi tiết đơn sạc. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-clipboard |
~57.0.2 |
MIT | System Clipboard Manager | Sao chép nhanh mã số trụ sạc, số tài khoản nạp tiền, mã hóa đơn điện tử hoặc chuỗi địa chỉ trạm sạc vào bộ nhớ tạm hệ thống. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-application |
~57.0.3 |
MIT | App Metadata & Version Provider | Đọc phiên bản ứng dụng (versionCode, buildVersion, nativeApplicationVersion) hiển thị trong màn hình Cài đặt và gửi kèm header kiểm tra phiên bản bắt buộc cập nhật. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
| 8. Bản đồ Địa lý, Lưu trữ Bảo mật & Hệ thống Tập tin Sandbox (Geospatial Mapping, Secure Storage & File System) | ||||
react-native-maps |
1.27.2 |
MIT | Mobile Map View Component | Thành phần bản đồ số tương tác: hiển thị danh sách trạm sạc, trạng thái trụ sạc theo màu sắc (Xanh: Rảnh, Vàng: Bận, Đỏ: Lỗi), ghim Marker tùy biến và cụm trạm sạc (Cluster) trên Fabric Codegen. Bản quyền Airbnb / React Native Maps Contributors. Chi phí: 0 USD. |
react-native-maps-directions |
^1.9.0 |
MIT | Route Polyline Calculator | Kết nối Google Directions API tính toán lộ trình di chuyển tối ưu và vẽ đường gấp khúc (Polyline) dẫn đường từ xe đến vị trí trạm sạc xe điện đã chọn. Bản quyền Maarten Hus. Chi phí: 0 USD. |
expo-secure-store |
~57.0.4 |
MIT | Hardware Cryptographic Storage | Lưu trữ dữ liệu nhạy cảm cực hạn: khóa JWT Bearer Token, Refresh Token, cấu hình sinh trắc học vào vùng bảo mật phần cứng (iOS Keychain / Android KeyStore mã hóa AES-256 GCM) (storage/auth-storage.ts). Đạt chuẩn NFR-SEC-01. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
@react-native-async-storage/async-storage |
2.2.0 |
MIT | Local Key-Value Storage | Lưu trữ cấu hình người dùng không nhạy cảm (ngôn ngữ hiển thị VI/EN, chế độ màu Dark/Light, lịch sử tìm kiếm trạm sạc gần đây, cờ đã xem hướng dẫn). Bản quyền React Native Community. Chi phí: 0 USD. |
expo-file-system |
~57.0.7 |
MIT | Sandboxed File System Storage | Quản lý hệ thống tập tin trong vùng sandbox bảo mật: lưu trữ hóa đơn sạc điện dạng PDF, xuất chứng từ giao dịch và quản lý cache tệp tải về (utils/file.ts). Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
| 9. Dịch vụ Ứng dụng, Phân phối & Công cụ Phát triển / Biên dịch (App Services, Distribution & Dev Tooling) | ||||
expo-updates |
~57.0.22 |
MIT | Over-The-Air (OTA) Updates | Kiểm tra, tải về và áp dụng bản vá nóng JS bundle từ xa không cần qua cửa hàng. Mã nguồn MIT (0 USD). Dịch vụ đám mây EAS Update áp dụng biểu phí theo lượng MAU hoạt động. Bản quyền 650 Industries, Inc. |
expo-sharing |
~57.0.19 |
MIT | Native OS Share Sheet | Mở hộp thoại chia sẻ hệ thống cho phép người dùng chia sẻ hóa đơn tiền điện sạc pin, vị trí trạm sạc xe qua Zalo, Mail, Tin nhắn (utils/file.ts). Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-build-properties |
~57.0.17 |
MIT | Native Build Configuration | Config Plugin tùy biến tham số biên dịch native (minSdkVersion, targetSdkVersion Android; deploymentTarget iOS) từ app.json. Chạy lúc build, không tốn tài nguyên runtime. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
expo-dev-client |
~57.0.19 |
MIT | Custom Development Runtime | Môi trường runtime tùy biến phục vụ phát triển ứng dụng chứa native code, hỗ trợ reload Metro server trên thiết bị thật. Tự động đóng băng trong bản phát hành Store. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
dotenv |
^17.3.1 |
BSD-2-Clause | Environment Variable Loader | Nạp cấu hình từ .env vào biến môi trường process.env tại thời điểm khởi động biên dịch (app.config.ts), phân tách môi trường staging/production. Bản quyền Scott Motte. Giấy phép đơn giản, tự do thương mại. Chi phí: 0 USD. |
tailwindcss |
^3.4.19 |
MIT | Styling Build Tool (devDep) | Công cụ tạo utility CSS token làm đầu vào cho NativeWind. Chỉ chạy trong quá trình biên dịch, không phân phối mã độc lập vào binary ứng dụng. Bản quyền Tailwind Labs. Chi phí: 0 USD. |
@expo/ngrok |
^4.1.3 |
BSD-2-Clause | Tunneling Utility (devDep) | Tạo đường hầm HTTPS phục vụ kiểm thử ứng dụng trên thiết bị thật ngoài mạng LAN trong giai đoạn phát triển. Không đóng gói vào bản phát hành cho người dùng cuối. Bản quyền Expo. Chi phí: 0 USD. |
@types/react |
~19.2.0 |
MIT | Type Definitions (devDep) | Định nghĩa kiểu tĩnh TypeScript cho React 19. Tự động loại bỏ hoàn toàn sau khi biên dịch ra mã JavaScript. Bản quyền Microsoft / DefinitelyTyped. Chi phí: 0 USD. |
eslint |
^9.39.4 |
MIT | Static Analysis Engine (devDep) | Phân tích cú pháp tĩnh và kiểm tra tuân thủ quy tắc chất lượng mã nguồn trong giai đoạn CI/CD. Bản quyền OpenJS Foundation. Chi phí: 0 USD. |
eslint-config-expo |
~57.0.2 |
MIT | Linter Configuration (devDep) | Bộ quy chuẩn cấu hình linter chính thức của hệ sinh thái Expo SDK 57. Bản quyền 650 Industries, Inc. Chi phí: 0 USD. |
typescript |
~6.0.3 |
Apache-2.0 | Static Type Checker (devDep) | Trình biên dịch ngôn ngữ và kiểm tra an toàn kiểu tĩnh (Type Safety). devDependency thuần túy, không đóng gói trong binary phát hành. Bản quyền Microsoft Corporation. Chi phí: 0 USD. |
PHẦN B: Bảng Rà Soát Riêng Các Nhóm Cần Lưu Ý 6 Nhóm Trọng Yếu
| Nhóm cần rà soát | Có sử dụng? | Thành phần cụ thể trong app | Điều kiện license & Rủi ro | Ghi chú & Chi phí |
|---|---|---|---|---|
|
1. GPL / AGPL / LGPL (Mã nguồn mở lây nhiễm Copyleft) |
☐ Có ☑ Không |
• 0 / 58 thư viện. • 100% các gói dependencies đều sử dụng giấy phép thông thoáng (54 MIT, 2 Apache-2.0, 2 BSD-2-Clause). |
• Không chứa bất kỳ mã nguồn mang tính chất Copyleft (GPL, AGPL, LGPL). • Không có rủi ro lây nhiễm mã nguồn đóng của Bên A. |
• 0 VNĐ chi phí bản quyền. • Quyền sở hữu trí tuệ của Bên A được bảo vệ độc quyền 100%, không bắt buộc mở mã nguồn. |
|
2. Commercial SDK / Thư viện trả phí (Closed-source Commercial SDK) |
☐ Có ☑ Không | • Không sử dụng bất kỳ thư viện nhị phân thương mại trả phí nào nhúng trong app (không dùng Scandit, PDFTron, Mapbox Commercial SDK...). |
• 100% thư viện là mã nguồn mở miễn phí. • Không chịu ràng buộc hợp đồng license phần mềm với bất kỳ nhà cung cấp SDK bên thứ 3 nào. |
• 0 VNĐ chi phí bản quyền mã nguồn app. • (Lưu ý: Dịch vụ đám mây Expo EAS là hạ tầng build/OTA tùy chọn do Bên A tự đăng ký theo nhu cầu vận hành). |
|
3. Paid API (Bản đồ, SMS, eKYC…) (Dịch vụ API Đám mây tính phí) |
☑ Có ☐ Không |
• Google Directions API: Vẽ lộ trình chỉ đường từ vị trí xe đến trạm sạc (`maps.googleapis.com`). • SMS OTP: Xử lý tại Backend, app không nhúng SDK. • eKYC: Không sử dụng. |
• Tuân thủ điều khoản dịch vụ Google Maps Platform Terms of Service. • Bắt buộc hiển thị logo Google/copyright theo quy định. |
• Google Cloud miễn phí $200 USD/tháng tín dụng dùng thử. • Vượt hạn ngạch tính $5.00 USD / 1.000 lượt yêu cầu Directions API do Bên A thanh toán qua tài khoản Google Cloud của Bên A. |
|
4. Font chữ / Bộ icon / Hình ảnh (Typography & Media Assets) |
☑ Có ☐ Không |
• Font chữ: Bộ phông Space Grotesk (assets/fonts/).• Bộ icon: @expo/vector-icons (Ionicons, MaterialIcons, Feather...).• Hình ảnh / Minh họa: Bộ sticker trạm sạc, xe điện, icon PNG/SVG nội bộ. |
• Phông Space Grotesk: Giấy phép SIL Open Font License (OFL-1.1) – Cho phép nhúng thương mại tự do cùng app (chỉ cấm bán riêng lẻ file font).• Bộ icon: Giấy phép MIT / Apache-2.0 – Miễn phí thương mại 100%. |
• 0 VNĐ (Miễn phí hoàn toàn). • Toàn bộ hình ảnh đồ họa, logo trạm sạc và sticker thuộc quyền sở hữu độc quyền của Bên A. |
|
5. Map SDK (SDK Bản đồ Di động) |
☑ Có ☐ Không |
• react-native-maps (v1.27.2)• expo-location (v~57.0.17)
|
• Thư viện mã nguồn mở giấy phép MIT (0 VNĐ). • iOS: Sử dụng Apple Maps mặc định của hệ điều hành iOS. • Android: Sử dụng Google Maps SDK for Android. |
• iOS (Apple Maps): Hoàn toàn Miễn phí 100%, không giới hạn quota và không phát sinh chi phí cho Apple. • Android (Google Maps SDK): Miễn phí hiển thị bản đồ trên mobile (Bên A kích hoạt Google Maps API Key trong Google Cloud Console). |
|
6. Payment SDK (VNPay…) (Cổng Thanh toán Trực tuyến) |
☐ Có ☑ Không |
• Không nhúng Payment SDK trên app. • Ứng dụng không cài đặt bất kỳ SDK thanh toán bên thứ ba nào (không nhúng SDK VNPay native). • Backend tạo URL thanh toán VNPay ( payUrl); app chỉ mở URL bằng thư viện mã nguồn mở react-native-webview (v13.16.1).
|
• Thư viện WebView: Giấy phép MIT (0 VNĐ). • 0% rủi ro phụ thuộc bản quyền SDK thanh toán đóng gói trên mobile. • An toàn bảo mật: Đạt chuẩn miễn trừ PCI-DSS SAQ A (App không lưu trữ/tiếp xúc số thẻ hay mã CVV). |
• 0 VNĐ chi phí bản quyền SDK app. • Bên A ký hợp đồng thanh toán trực tiếp với Công ty VNPAY; phí chiết khấu giao dịch nạp ví xử lý tại tầng Backend theo hợp đồng Bên A - VNPAY. |
PHẦN C: Khuyến Nghị Kỹ Thuật & Lộ Trình Tuân Thủ Trước Phát Hành Actionable Items
Kiểm tra thực tế trong app.json và AndroidManifest.xml cho thấy trường android.config.googleMaps.apiKey hiện chưa được cấu hình, và biến môi trường GOOGLE_MAPS_API_KEY trong configs/env.ts vẫn đang giữ chuỗi giữ chỗ "YOUR_GOOGLE_MAPS_API_KEY".
- Hành động bắt buộc: Bên A cần đăng ký một Google Maps API Key trên Google Cloud Console, kích hoạt Maps SDK for Android và Directions API, sau đó cấu hình vào
app.jsontrước khi build file cài đặt Android Release (APK/AAB) để tránh lỗi màn hình ô lưới xám trên Android. - Khóa bảo mật: Thiết lập giới hạn API Key theo Android Package Name
com.evpower.chargingapp+ mã băm SHA-1 của chứng chỉ ký phát hành.
Kiểm toán an ninh xác nhận toàn bộ luồng thanh toán VNPay chạy trong trình duyệt nhúng an toàn TopupPaymentWebView.tsx. Mã nguồn ứng dụng di động hoàn toàn không chứa secret key (vnp_HashSecret) và không tiếp nhận dữ liệu thẻ ngân hàng (số thẻ PAN, ngày hết hạn, mã bảo mật CVV). Toàn bộ thao tác thanh toán diễn ra trực tiếp trên hạ tầng đạt chuẩn PCI-DSS Level 1 của VNPay, giúp EV Power đạt chuẩn tự kê khai miễn trừ PCI-DSS SAQ A.
Cấu hình app.json đã thiết lập chính xác usesNonExemptEncryption: false. Căn cứ theo Quy định Quản lý Xuất khẩu Hoa Kỳ (EAR Mục 740.17(b)(2)), việc ứng dụng chỉ sử dụng mã hóa tiêu chuẩn (HTTPS/TLS và iOS Keychain/Android KeyStore AES-256) nhằm bảo vệ phiên làm việc và tài khoản cá nhân thuộc diện Miễn trừ khai báo. Ứng dụng sẽ được Apple phê duyệt TestFlight và Store tức thì mà không bị tạm giữ để kiểm tra giấy phép mật mã học.