# Getting Started This page covers installing TrackerDetector, granting permissions, and the first run. ## Install TrackerDetector is a standard Android app (minSdk 26 / Android 8.0; targetSdk 36). Build it from source: ```bash git clone https://github.com/AlsatianConsulting/TrackerDetector.git cd TrackerDetector ./gradlew :app:assembleDebug adb install -r app/build/outputs/apk/debug/app-debug.apk adb shell am start -n dev.alsatianconsulting.trackerdetector/.MainActivity ``` Or open the project in Android Studio and press **Run**. For a signed release build (APK + AAB), see the README section *"Build a signed release."* ## Permissions The app asks for the permissions it needs and explains each one on a dedicated page before the system prompt appears. Grant them all for full detection coverage: | Permission | Why it is needed | |---|---| | **Precise & approximate location** | GPS is used for movement checks, map correlation, and to attach location to alerts. Bluetooth/Wi-Fi scanning also requires location access on Android. | | **Background location** ("Allow all the time") | Lets scanning continue while the screen is off. On Android 11+ this is a *separate* grant made after precise location. | | **Nearby Wi-Fi devices** | Passive Wi-Fi access-point scanning (Android 13+ separates this from legacy Wi-Fi permissions). | | **Bluetooth scan & connect** | Passive BLE advertisement scanning for tracker detection. | | **Notifications** | The foreground-service notification and alert notifications. | The app also requests an **ignore-battery-optimization** exemption during setup so the OS does not suspend scanning in the background. This is optional but strongly recommended for continuous monitoring. If you skip a permission, the related detection simply will not run until you grant it in **Android Settings → Apps → TrackerDetector → Permissions**. ## First run 1. Install and open the app. 2. Work through the permission explanation pages and grant each permission when prompted. 3. Allow the battery-optimization exemption. 4. The app opens on the **Status** screen and scanning starts automatically. 5. Watch the severity tiles (Wi-Fi, Bluetooth, Cellular, GPS). Tap any tile to see active alerts for that domain. 6. (Optional) Open **Settings** to tune rules, add device lists, import an OpenCellID `.csv.gz` file for offline cellular reference, or enable boot-start. ## Build a baseline For the first several ordinary days, run the app in places you already know. This teaches you what is *normal* near your home, work, and routes. Once you have that baseline, unusual repeated alerts stand out clearly and low-severity alerts become meaningful. See [Use Cases](Use-Cases.md) for role-based routines. ## Next steps - Learn the interface: [Screens & Layouts](Screens-and-Layouts.md) - Understand what alerts mean: [Alerts Reference](Alerts-Reference.md) - Tune sensitivity: [Settings Reference](Settings-Reference.md) and [Rules & Severity](Rules-and-Severity.md)