Privacy Policy
Alarm Announcer Pro - Android
Last Updated: 3 July 2026
1. Introduction
Your privacy is important to us. Alarm Announcer Pro is published by bazzaztech (bazzaztech.com). This policy explains exactly what data the app collects, why, and how long we keep it.
2. Summary
| Data | Collected? | Sent off-device? | Stored on server? |
|---|---|---|---|
| Real name, email, phone | No | No | No |
| Advertising ID (GAID) | No (explicitly removed) | No | No |
| Anonymous install UUID | Yes | Yes | Yes |
| Device model + OS version | Yes (crash reports only) | Yes | 30 days |
| Approximate location | Yes (weather feature, optional) | Yes (sent directly to Open-Meteo) | No |
| Voice recording sample | Yes (Studio, with consent) | Yes | Not stored — discarded immediately after processing |
| Generated voice clone | Yes (Studio) | Yes | Not stored — streamed to your device |
| Purchase token | Yes (credit purchases) | Yes | Yes (audit log) |
| Google account subject ID (optional) | Yes (if you Sign in with Google) | Yes | Yes (anonymous opaque ID only) |
| Crash stack traces | Yes (opt-out available) | Yes | 30 days |
3. Data We Collect and Why
3.1 Anonymous Install Identifier
On first launch we generate a random UUID and store it in SharedPreferences on your device. This identifier is not your Google account, device serial, Google Advertising ID (GAID), or any value that could identify you personally.
Purpose: Authenticate API requests via JWT tokens, associate purchased credits with your installation, and enable server-side credit tracking as the source of truth.
3.2 Crash Reports
If the app crashes, the following is recorded locally and sent to https://bazzaztech.com/api/crash on the next launch:
- App version and build number
- Android OS version
- Device model and manufacturer (e.g., "Google Pixel 8")
- Device locale (e.g., "en-GB")
- Anonymous install UUID (see §3.1)
- Thread name where the crash occurred
- Full exception stack trace
- Last 20 in-app breadcrumbs (screen names and actions)
- Timestamp
What we do NOT include: Real name, email, Google account, Google Advertising ID (GAID), phone number, or any sensor data.
Opt-out: Go to Settings → Privacy → Send Crash Reports and disable the toggle. All pending crash reports are deleted immediately.
Retention: Crash reports are kept for 30 days and then automatically purged.
We use our own self-hosted crash reporting — no third-party SDK such as Firebase Crashlytics or Sentry is used.
3.3 Weather (Optional)
If you enable the "Announcements - Weather" setting, the app requests your approximate location (ACCESS_COARSE_LOCATION — typically accurate to within a few kilometres) and sends the latitude/longitude directly to the Open-Meteo API (https://api.open-meteo.com/v1/forecast). We do not receive or store your coordinates. Open-Meteo's own privacy policy applies. Location is fetched once per alarm fire and is not tracked continuously.
You can disable this feature at any time in Settings → Announcements - Weather.
3.4 Voice Cloning — Studio (Optional)
If you use the Studio feature to create a personalised announcement voice:
- Recording: You record a 15–25 second voice sample using the device microphone. The audio stays on your device until you tap Submit.
- Upload: The raw audio file (M4A/AAC, up to 10 MB), your chosen announcement text, and your anonymous install UUID are sent to
https://bazzaztech.com/api/alarmannouncerpro/clone, which forwards the audio directly to our AI provider (Cartesia). Your recording is never stored on our servers. - Processing: Cartesia clones the voice from your sample and synthesises the announcement audio. The voice profile exists only for the duration of the API call and is permanently deleted by Cartesia immediately after synthesis completes.
- Download: The finished audio is streamed back to your device (stored in the app's private files directory) and is not retained on our servers.
- Local storage: Generated clones are kept in the app's private storage, accessible only to this app.
- Sharing: If you share a clone via the Clone Share feature, you can export it as a
.aaclonefile and share via any system share target (WhatsApp, email, etc.). The export and transfer happen entirely on your device — we do not receive or log any share activity.
Microphone permission: RECORD_AUDIO is only used while you are actively recording in Studio. The app does not access the microphone in the background.
Before using Studio you must accept the in-app Studio Terms & Conditions, which are shown the first time you tap Record.
3.5 In-App Purchases (Credits)
Credit packs are purchased through Google Play. Google handles all payment processing. We receive only the purchase token (a random string) from Google Play to verify the purchase server-side before granting credits.
- Purchase tokens are stored solely as a replay-protection guard (to prevent the same token being used twice).
- We log the event type, product ID, platform, credit amount, and timestamp for accounting and fraud prevention.
- We do not receive or store your payment card number, Google account email, or billing address.
Google Play's Privacy Policy governs their processing.
3.6 Content Store
The app fetches a catalogue of announcement audio files and ringtones from our servers. Requests include only your anonymous install UUID and a JWT bearer token. No browsing history or usage patterns are recorded. Downloaded audio is stored in the app's private files directory.
3.7 Social Account Linking — Google Sign-In (Optional)
To protect your credits from being lost if you uninstall and reinstall the app, you can optionally sign in with your Google account. After a credit purchase, the app displays a "Protect your credits" prompt.
- What we receive: An opaque Google subject ID — a private, app-specific identifier provided by Google Identity Services. This is not your email address, name, or profile picture.
- What we store: Only this opaque subject ID, linked to your store account. We never store your Google email, name, or any other profile information.
- How it works: Your Google subject ID is sent to our server, which maps it to your credit balance. If you reinstall the app, signing in with the same Google account restores your credits — even on a different device.
- Revoking access: Email [email protected] or remove app access from your Google account's security settings. After revocation, credits revert to the current install's anonymous ID.
- This step is entirely optional. Credits function without signing in; signing in only ensures credits survive a reinstall.
Google Sign-In is handled by the Android Credential Manager. See Google Privacy Policy.
4. Data We Do NOT Collect
- Real names, email addresses, or phone numbers
- Google Advertising ID (GAID) — explicitly removed from the app manifest
- Device serial number or IMEI
- Contact lists or calendar data
- Continuous location tracking
- Usage analytics or behavioural tracking
5. Data Storage and Retention
All app settings and preferences are stored locally on your device in SharedPreferences. Server-side retention periods are as follows:
| Data | Retention |
|---|---|
| Install UUID + credit balance | Until you request deletion |
| Purchase audit log | 7 years (financial record requirement) |
| Voice recording sample (server) | Not stored — discarded immediately after processing |
| Generated voice clone (server) | Not stored — streamed directly to your device |
| Crash reports | 30 days |
| JWT tokens | 90 days per token; refreshed automatically |
| Google social account link (optional) | Until you request deletion |
6. Your Control and Rights
You can manage or revoke permissions at any time in your device's Settings app:
- Location: Revoking disables weather announcements.
- Microphone: Revoking disables voice recording in Studio.
- Crash reports: Disable in Settings → Privacy → Send Crash Reports.
To request deletion of your server-side data, email [email protected] with your anonymous install UUID (found in Settings → Support → Install ID). We will delete your credit balance and purchase history records. Purchase audit records required for legal or financial compliance cannot be deleted.
7. Third-Party Services
- Open-Meteo — weather data (your location is sent directly to them). See Open-Meteo Privacy Policy.
- Google Play — in-app billing. See Google Privacy Policy.
- Google Identity Services (Credential Manager) — optional social sign-in to protect credits across reinstalls. Only an opaque subject ID is shared with our server. See Google Privacy Policy.
- Cartesia — AI voice cloning and synthesis. See Cartesia Privacy Policy.
- Cloudflare — API gateway for all server requests. See Cloudflare Privacy Policy.
8. Security
All network communication uses HTTPS (TLS 1.2+). API requests are authenticated with per-install JWT tokens. Local backups are encrypted with AES-256-GCM (password-derived via PBKDF2, 65,536 iterations). We do not store passwords. Voice data is routed via our Cloudflare-gated API rather than directly to the AI provider.
9. Children
This app is not directed at children under 13. We do not knowingly collect any data from children.
10. Changes to This Policy
If we make changes, we will update the "Last Updated" date above. Continued use of the app after a change indicates acceptance of the updated policy. Significant changes will also be notified in-app.
11. Contact Us
Questions? Contact us here or email [email protected].