The TraceIT mobile app has three main features:
- Close proximity contact tracing via Bluetooth
- Upload of close contact data
- Registration of access into public buildings
Note: The app currently only functions on Android devices from Lollipop (API level 21) and above.
Required permissions:
- Camera
- Bluetooth nearby scanning (API level 31+)
- Location (API level 21 - 30)
Note: Location is required on older devices for scanning functionality
-
Ensure you have the following installed:
- Flutter SDK
- Android Studio
-
Set up a physical Android device or an Android virtual device (emulator).
Bluetooth tracing feature can only be tested on physical devices.
-
Set up the required backend services (see backend service repositories)
-
Install dependencies:
flutter pub get
- Set the
serverUrl
inlib/const.dart
to the backend server URL:
// TraceIT server URL
const String serverUrl = 'https://localhost:8080';
- Run the app on a device:
# Debug mode
flutter run
# Release mode:
flutter run --release
Build output directory:
- Release builds:
build/app/outputs/apk/release/
- Debug builds:
build/app/outputs/apk/debug/
Note: The
flutter build
command builds a release version by default.
# Building a fat APK (works on all devices)
flutter build apk
# Building multiple abi-specific APKs (armeabi-v7a/arm64-v8a/x86_64)
flutter build apk --split-per-abi
# Debug build
flutter build apk --debug