Last updated: September 16, 2025
This policy explains what data our AI-based photo organization/optimization application (the “App”) processes, for what purposes, which third-party services it may use, required permissions, security measures, and your choices.
The App has no sign-up or login feature and does not collect or transmit directly identifying personal data such as your name, email address, or phone number to external servers.
Original photos (image data), EXIF location information, and facial feature data are not uploaded to any server.
The following data is generated/stored/used only on your device to provide photo classification and cleanup features.
| Category | Items | Description | External Transfer |
|---|---|---|---|
| Photo metadata | Internal ID, file size, captured (estimated) time, URI | From MediaStore queries | None |
| Hashes | Perceptual hash (pHash) | Duplicate detection (irreversible; cannot reconstruct originals) | None |
| Classification labels | DUPLICATE / BLUR / LARGE / DOCUMENT / UNKNOWN | On-device ML/rule results | None |
| App settings | Theme, scan options, ads/notifications toggles | User convenience | None |
| Scan progress | Processed count, progress | UI display / resume processing | None |
| (Optional) Usage events* | Feature usage patterns, screen views | Stability/quality improvement (when Firebase is enabled) | Pseudonymous to Firebase |
| (Optional) Advertising ID | Google Advertising ID | Personalized/non-personalized ads (AdMob) | Sent by AdMob SDK |
*If analytics collection is disabled in the App or OS settings, such data is not sent.
| Purpose | Details |
|---|---|
| Photo cleanup/optimization | Automatic grouping of duplicates, blurry shots, large files, and document candidates |
| Storage management | Help you identify items for deletion/cleanup |
| UX continuity | Store settings and latest scan state locally |
| (Optional) Quality improvement | Error/flow insights based on pseudonymous events |
| (Optional) Advertising | Show personalized or non-personalized ads based on your choice |
The App may use the services below. We do not provide directly identifying data.
| Service | Purpose | Possible Data Sent (examples) | Notes |
|---|---|---|---|
| Google AdMob | Advertising | Advertising ID, device/OS info, basic app usage stats | Personalized ads can be limited at device/App level |
| Google Play services / FCM (optional) | Notifications, stability | Push token (pseudonymous), basic device info | For important notices/feature updates |
| Firebase Analytics (optional) | Usage analytics | Event names and simple parameters (pseudonymous) | No name/email collection |
| Google ML Kit (on-device) | Blur/document etc. classification | None (on-device processing) | No external image upload |
Ad personalization: You can reset the Ad ID or limit ad personalization in device settings (e.g., Android), and an in-app “Disable personalized ads” toggle (if provided) takes precedence.
| Item | Where stored | Deletion timing |
|---|---|---|
| Hashes/labels/metadata | App local DB (e.g., Room) | Upon app uninstall or when you run “Delete scan data” |
| App settings | Local SharedPreferences/DB | On app uninstall or settings reset |
| Progress cache | Temporary memory/DB | Cleaned after scan completion or app restart |
| (Optional) Analytics events | Firebase | Subject to Firebase retention policies (pseudonymous) |
You may remove local data via in-app options such as “Reset data” or “Delete scan results” (if provided).
| Permission | Purpose | Notes |
|---|---|---|
| READ_MEDIA_IMAGES (or READ_EXTERNAL_STORAGE, per SDK) | Read photo list/metadata | Required to scan targets |
| POST_NOTIFICATIONS (optional) | Progress/completion notifications | Shows scan status |
| FOREGROUND_SERVICE / DATA_SYNC | Reliable background scanning | Complies with platform policies |
| INTERNET | Ads/SDK connectivity | No upload of original photos |
| VIBRATE (optional) | Notification vibration | User experience |
Permissions are not used for any purpose other than stated above.
| Item | Details |
|---|---|
| Data Protection Officer | Seyun Ahn |
| vibeforgesoft@gmail.com | |
| Support channel | In-app “Send feedback” |
| Control | Description |
|---|---|
| OS settings | Reset Advertising ID / limit ad personalization |
| In-app setting (if provided) | “Disable personalized ads” toggle |
| Network-level (advanced) | Use DNS/firewall according to your device policy |
| Opt-out effect | Personalized → contextual/general ads |
| Item | How to change |
|---|---|
| Delete scan data | Use “Delete scan results” in the App, or uninstall the App |
| Disable notifications | OS permission settings or in-app toggle |
| Limit ad personalization | Device settings and in-app toggle |
| Disable analytics | In-app setting (if provided) or OS-level limit |
The App has no server upload feature for original photos or EXIF/face data, so no such data is transferred abroad. Firebase/AdMob SDKs may process pseudonymous logs on Google infrastructure subject to Google policies (including standard contractual clauses where applicable).