🎯 TỔNG QUAN
Ứng dụng chia bill Grab tự động, sử dụng OCR (Vision Framework) và AI (Gemini API) để nhận diện và phân tích hóa đơn, tự động tính toán và chia tiền cho nhiều người.
✨ TÍNH NĂNG CHÍNH
1. Nhận Diện Hóa Đơn Tự Động (OCR)
-
Sử dụng Vision Framework của Apple
-
Hỗ trợ nhiều ảnh (tối đa 10 ảnh cho items và summary)
-
Nhận diện tiếng Việt và tiếng Anh
-
Tự động trích xuất thông tin từ ảnh hóa đơn Grab
2. Phân Tích & Chia Bill Thông Minh (AI Gemini)
-
Tích hợp Gemini 2.0 Flash API
-
Tự động phân tích items, delivery fee, discount
-
Tính toán và chia bill công bằng cho từng người
-
Hỗ trợ chỉnh sửa kết quả sau khi tính toán
3. Quản Lý Member Configuration
-
Cấu hình member với alias name
-
Chia bill cho sub-members (theo % hoặc số tiền)
-
Tự động áp dụng config khi xử lý bill
-
Quản lý nhiều config cùng lúc
4. Lưu Trữ & Quản Lý Kết Quả
-
Lưu kết quả vào Core Data
-
Xem lại lịch sử đã lưu
-
Load kết quả cũ vào để chỉnh sửa
-
Xóa từng kết quả hoặc xóa tất cả
-
Export kết quả dưới dạng JSON
5. Giao Diện & Trải Nghiệm
-
Universal App: Chạy trên iPhone, iPad, macOS
-
Adaptive Layout: Tự động điều chỉnh theo màn hình
-
iPhone: TabView navigation
-
iPad: NavigationSplitView
-
macOS: HSplitView
-
Dark/Light Mode: Hỗ trợ 3 chế độ (Light, Dark, System)
-
Đa Ngôn Ngữ: Tiếng Việt và English
-
UI/UX: Giao diện hiện đại, dễ sử dụng
6. Cài Đặt & Tùy Chỉnh
-
Cấu hình Gemini API Key
-
Chọn ngôn ngữ OCR (Vietnamese/English)
-
Chọn ngôn ngữ giao diện (Vietnamese/English)
-
Chọn chế độ hiển thị (Light/Dark/System)
-
Quản lý member configurations
🛠 CÔNG NGHỆ SỬ DỤNG
-
SwiftUI: Giao diện người dùng
-
Vision Framework: OCR nhận diện text
-
Gemini API: AI phân tích và tính toán
-
Core Data: Lưu trữ dữ liệu
-
Combine: Reactive programming
-
Platform Abstraction: Cross-platform support
📱 PLATFORM SUPPORT
✅ iOS 17.0+
✅ iPadOS 17.0+
✅ macOS (Universal)
🎨 GIAO DIỆN
-
Material Design với SwiftUI
-
Animation mượt
-
Responsive design
-
Dark mode mặc định
-
Icon và màu sắc nhất quán
📦 CẤU TRÚC CODE
deteact-bill-grab/
├── Models/ # Data models
├── Services/ # OCR & Gemini services
├── ViewModels/ # Business logic
├── Utilities/ # Helpers & managers
└── ContentView.swift # Main UI
🔐 BẢO MẬT
API key được lưu an toàn trong UserDefaults
Không hardcode sensitive data
Kiểm tra API key trước khi sử dụng
XEM THÊM ==> Hướng dẫn cài đặt chi tiết
Nguồn: Sharecode.vn
HƯỚNG DẪN CÀI ĐẶT
YÊU CẦU HỆ THỐNG
-
Xcode 15.0+
-
iOS 17.0+ / macOS (Universal)
-
Swift 5.9+
-
Gemini API Key (miễn phí tại https://makersuite.google.com/app/apikey)
BƯỚC 1: Clone/Download Project
-
# Hoặc download file ZIP và giải nén
BƯỚC 2: Mở Project trong Xcode
-
cd deteact-bill-grabopen deteact-bill-grab.xcodeproj
BƯỚC 3: Cấu Hình API Key
-
Lấy Gemini API Key tại: https://makersuite.google.com/app/apikey
-
Chạy app
-
Vào Settings → API Key
-
Nhập API key và nhấn "Check & Save"
BƯỚC 4: Build & Run
-
Chọn target: deteact-bill-grab
-
Chọn device/simulator
-
Nhấn ⌘R để build và chạy
BƯỚC 5: Sử Dụng
-
Thêm bill mới
-
Upload ảnh items và summary
-
Nhấn "Process Bill"
-
Xem và chỉnh sửa kết quả
-
Lưu kết quả nếu cần
LƯU Ý
-
Cần internet để sử dụng Gemini API
-
Ảnh hóa đơn cần rõ nét để OCR chính xác
-
Có thể test với simulator, nhưng camera chỉ hoạt động trên device thật