How islambek996/gs1scanner works
GS1Scanner is an Android app for scanning Data Matrix codes, keeping a deduplicated scan history, exporting it as CSV, and submitting scans to a remote API. The principal flow runs from the app’s main screen through camera-based barcode recognition into the displayed and locally persisted history; users can then export that history or send scans to the service. The README provides no capability details, and the MainActivity excerpt omits some camera and network callback code, so uncertain wiring is not shown.
Main entry points: MainActivity.kt Main screen · SplashActivity.kt Splash screen · RetrofitClient.kt Retrofit client · ApiService.kt Scan API
Components 13
App flow
- Splash screen
app/src/main/java/kg/teksher/gs1scanner/SplashActivity.kt - Main screen
app/src/main/java/kg/teksher/gs1scanner/MainActivity.kt
Scanning
- CameraX
- ML Kit barcode scanner
History and export
- Code list adapter
app/src/main/java/CodeAdapter.kt - Scan preferences
- CSV export file
- Android share chooser
Remote submission
- Scan request
app/src/main/java/kg/teksher/gs1scanner/model/ScanRequest.kt - Retrofit client
app/src/main/java/kg/teksher/gs1scanner/network/RetrofitClient.kt - Scan API
app/src/main/java/kg/teksher/gs1scanner/api/ApiService.kt
Other components
- User
- Teksher API
Connections 16
- User → Splash screen: opens app
- Splash screen → Main screen: launches
- User → Main screen: uses controls
- Main screen → CameraX: starts preview
- CameraX → Main screen: provides frames
- Main screen → ML Kit barcode scanner: configures scanning
- ML Kit barcode scanner → Main screen: detects codes
- Main screen → Code list adapter: updates list
- Main screen → Scan preferences: reads and writes
- Main screen → CSV export file: writes CSV
- Main screen → Android share chooser: shares file
- Android share chooser → User: offers export
- Main screen → Scan request: builds request
- Main screen → Retrofit client: requests API
- Retrofit client → Scan API: creates service
- Scan API → Teksher API: posts scan