iamatulkumar-QR Code Scanner With Timer Fore Ground Service
Description:
Scan Sample QR code will start a foreground timer service, Scan again to stop timer service
Component:
- MVVM architecture pattern
- Retrofit,
- kotlin Flow,
- Dagger hilt
- Mockk Kotlin
- Jetpack DataStore
- Notification manager
- Camera permission
HLD
Package Structure
→ BookingApplication → MainActivity
Scan QR code and start forground service
- Open Application → show booking fragment
- Fetch booking details from viewmodel
- ViewModel fetches booking details from the booking repository
- Return booking details if already booking available, return empty if no booking found
- Update booking fragment state and show no booking found state
- On clicking the scan button → open ScannerFragment
- After successfully scanning → update response in a view model
- ViewModel update state in booking fragment
- Booking fragment → ViewModel to save booking details
- start foreground service