1. Summary
Everything you type into this app stays on your device and is never sent to any server.
There is no account, no sign-in, no cloud sync, no analytics, and no tracking of what you do inside the app.
The app shows ads from Google AdMob, which is why it connects to the internet. The ad network uses your device’s advertising identifier. Your maintenance data — devices, tasks, expenses and notes — is never read by the ad system and never leaves your device.
That is not marketing language — it is a description of what the code actually does, and the appendix shows how each claim was verified.
2. What the app stores
The app saves only what you enter yourself, on your device:
| Type | Contents |
|---|---|
| Home devices | Name · category · brand · location · purchase date · warranty status |
| Maintenance tasks | Title · type · date and time · notes · reminder and its sound · linked device |
| Expenses | Item · category · amount · date · notes · linked device |
| Maintenance history | Titles, dates and notes attached to a device |
| Preferences | Interface language · colour theme (light/dark/system) |
Where: the app’s private storage on your device, through Android’s standard SharedPreferences mechanism. No external database.
Backups — only when you ask: when you tap “Save backup now”, the app writes a file with all your data to the Documents/Home Maintenance folder on your phone, or wherever you choose (such as Google Drive). The app never sends that file anywhere, and creates it only when you ask.
Reminders: scheduled on your phone through Android’s alarm system and shown by the system itself when due. No push server, no Firebase.
This data never leaves your device.
3. What the app does not do
| Collect personal data | ❌ No |
| Create an account or sign-in | ❌ No |
| Send your maintenance data to any server | ❌ No |
| Show ads | ✅ Yes — Google AdMob |
| Analytics or usage statistics | ❌ No |
| Advertising identifier | ✅ Yes — used by the ad network |
| Third-party crash reporting | ❌ No |
| Access location | ❌ No |
| Access contacts, camera, microphone or photos | ❌ No |
| Share your maintenance data with third parties | ❌ No |
| Share the advertising ID with Google | ✅ Yes — this is what makes ads work |
| Sell any data | ❌ No |
4. Permissions
The app requests no permission to access your personal data: no camera, no microphone, no location, no contacts, no photos, no SMS and no storage permission (the backup folder is written through MediaStore, which needs none).
Two permissions are asked for at your first reminder, and can be refused:
| Permission | Why |
|---|---|
POST_NOTIFICATIONS |
Showing the maintenance reminder (Android 13+). Refusing it breaks nothing — the reminder just doesn’t show |
SCHEDULE_EXACT_ALARM |
Ringing at the exact minute you picked (Android 14+). Refusing it makes the reminder approximate |
The other permissions its package holds — none of which is shown to the user or requires consent:
| Permission | Why |
|---|---|
INTERNET · ACCESS_NETWORK_STATE |
Fetching ads |
AD_ID · ACCESS_ADSERVICES_* |
Advertising ID and Privacy Sandbox APIs |
WAKE_LOCK · FOREGROUND_SERVICE |
Added by Google Play services |
…DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION |
AndroidX internal component protection |
RECEIVE_BOOT_COMPLETED |
Rescheduling reminders after the phone restarts |
VIBRATE |
Reminder vibration |
The internet permission is there for the ads only — not to send your data anywhere.
5. Libraries used
The libraries used. All are entirely local except the ad system, which is the only thing that reaches the network:
| Library | Purpose |
|---|---|
shared_preferences |
Saving data locally on the device |
provider |
In-app UI state management |
path_drawing |
Drawing the bottom navigation icons |
cupertino_icons |
Icon set |
flutter_local_notifications · timezone |
Scheduling maintenance reminders on the device — local, no network |
google_mobile_ads |
Showing Google AdMob ads — connects to the internet |
webview_flutter |
Component the ad system needs to render an ad |
There is no Firebase, no Google Analytics, no Crashlytics, no Sentry, and no external service other than AdMob.
6. Controlling and deleting your data
The data is yours, and the app gives you full control over it:
- Delete a device: from the edit-device screen. Its entire maintenance history is removed with it.
- Delete a task: long-press it on the schedule screen.
- Delete an expense: long-press it on the expenses screen, or from its edit screen.
Every deletion asks for confirmation first, then applies immediately and permanently.
To erase everything at once: clear the app’s data from Android settings (Settings → Apps → Home Maintenance → Storage → Clear data), or uninstall the app.
What can remain afterwards — both your own choice:
- Backup files you saved yourself stay in
Documents/Home Maintenanceor wherever you saved them. Delete them from your file manager. - Your phone’s Google backup: if Google backup is turned on in your phone’s settings, Android copies apps’ data — including this app’s — to your Google account, encrypted. That is a system feature, not the app’s, managed from Android Settings → Google → Backup.
7. Children
The app is a tool for organising home maintenance and is not directed at children. It collects no data you enter, regardless of age, but it does show ads governed by Google AdMob’s policies.
8. Data security
Your maintenance data lives in the app’s private storage, which Android isolates from other apps, and never travels over the network.
The ad system’s own connections to Google’s servers use encrypted HTTPS.
The security of the device itself — screen lock, device encryption — remains yours to manage, and it is what protects the locally stored data.
9. Changes to this policy
Any future update that adds a feature which collects data or uses the network will be accompanied by an update to this policy before that feature ships, along with a new “Last updated” date above.
10. Contact
For any question about privacy in this app:
Developer: Nagarix
Email: privacy@nagarix.app
Appendix: how the above was verified
Every statement above is based on inspecting the code, not on assumption:
| Claim | How it was verified |
|---|---|
| Maintenance data is never sent | lib/ads/ imports neither AppState nor AppRepository — zero coupling |
| The permissions listed are accurate | Read the AndroidManifest from inside the built release bundle with aapt2 |
| No external SDK other than AdMob | Audited pubspec.yaml, pubspec.lock, and every native library inside the bundle |
| Storage is local | Every save path goes through SharedPreferences alone |
| Deletion works | Covered by automated tests asserting the data and its linked records disappear |