Privacy Policy

Last updated: August 2026

Hidden Cam Detect (the "App") is a hidden-device awareness and triage tool that helps you look for hidden cameras, covert recorders, and eavesdropping devices. This Privacy Policy explains what data the App does and does not handle, and how your privacy is protected. Hidden Cam Detect is provided by NTVTech ("we", "us", or "our").

Hidden Cam Detect is offline-first and privacy-first. Your scan results are processed entirely on your device. The App has no scan backend, and your scan data is never uploaded to us or to anyone else.

Data We Do Not Collect

We do not collect, transmit, or store any of the following on any server. It stays on your device, and the only thing that can ever take any of it off your device is a report you choose to export (see "Evidence Photos"):

Because this data is never sent to us, we cannot see it, access it, or share it.

Permissions We Use and Why

The App requests device permissions only in context and for a specific detection purpose. You can grant or deny each one, and revoke them later in your device settings.

Diagnostics and Analytics

The App uses two separate Firebase services. They have different switches and different defaults, so each one is described on its own below.

Two switches, two different defaults. Crash reports and basic app data are on by default; you can turn them off at any time in Settings → "Share anonymous diagnostics". App usage analytics are off by default and stay off until you switch them on yourself — either on the consent screen shown the first time you open the App, or later in Settings → "Share app usage analytics". Turning either switch off does not disable any detection feature. Neither service is used for cross-app tracking or advertising (no IDFA).

We call the first switch "anonymous" because the data carries no name, email address, account or advertising identifier, and we never try to work out who you are from it. Even so, we would rather be precise than reassuring: Firebase assigns an identifier to your installation of the App, and it always sees your IP address and the time of each event. If you switch app usage analytics on, the risk level and the number of suspicious devices found in a scan are sent alongside that identifier. That is a real trade-off, and you should know about it before you decide.

Your scan results are never reported to us. Your list of discovered devices, your evidence photos, and your camera, audio and sensor data are never uploaded by either service — not in any form, and not under any setting. This is a core commitment that does not change.

App usage analytics: guaranteed by the code, not by a promise. The analytics layer physically cannot carry a network name (SSID), BSSID or MAC address, IP address, hostname, device name, room or network label, file path, or detection detail, because it accepts only numbers, true/false flags and choices from a closed list — never free text, so there is no field such a value could travel in. Screen names come from a fixed list of static screens that never contain an identifier, and any value that still resembles an address or identifier causes the whole event to be discarded. The only scan-related values that can ever leave your device this way are the overall risk level and the count of suspicious devices, and only while app usage analytics are switched on.

Crash reports: one honest exception. A crash report is not a tidy list of fields like an analytics event — to be worth anything it has to carry the technical error message and the stack trace exactly as the App produced them, and we do not rewrite or filter them. So if the App crashes during a network scan, the error text can contain a technical fragment of that moment — most often a local address from a failed connection, such as a 192.168.x.x number belonging to your own network. We would rather tell you this than claim an absolute we cannot guarantee. To be clear about what this is not: it is never your scan results, never a photo, and never a list of what was found; it is a private-network address that means nothing outside your own network; and it only occurs if the App actually crashes at that moment. If you would prefer not to take that chance at all, turn Settings → "Share anonymous diagnostics" off — every detection feature keeps working exactly the same.

Detection Data Updates

The App may download public reference data over a secure HTTPS connection — for example, hardware vendor (OUI) lists and known suspicious port lists — to improve detection accuracy. These files come from our website hosting and from Firebase Remote Config. This is a download only: no scan data is ever sent as part of these updates. As with any download, the server sees the request itself (your IP address, and for Remote Config the app installation identifier described above), which is how a file reaches your device at all.

In-App Purchases

The App offers an optional paid subscription ("Pro"). Payments are processed entirely by the Apple App Store or Google Play. We do not receive or store your payment card details. Purchase and subscription status is validated through the store's receipt mechanism. Please refer to the applicable store's privacy policy for how your payment information is handled.

We use Qonversion to manage and validate subscriptions. Qonversion receives your purchase and subscription status together with an anonymous installation identifier, which contains no name, email address or advertising identifier. It does not receive your payment card details. See Qonversion's privacy policy at https://qonversion.io/privacy.

That identifier has to survive reinstalling the App — otherwise a purchase you already paid for could not be restored — so it is produced differently on each platform:

Evidence Photos

When the lens-glint view confirms a detection, the App saves a small photo of the camera frame that produced it. The point is practical: a scan tells you something is there, and the photo is how you find the same spot again afterwards.

Notifications

If you allow notifications, the App registers with Firebase Cloud Messaging so that we can send occasional product messages, such as a scanning reminder or news about an update. Registering creates a notification token for this installation of the App, held by Google's messaging service; it is not tied to your name or email address. Notification content is written by us and never contains anything from your scans. You can turn notifications off at any time in the App's settings or in your device settings.

Local Storage

The App stores your scan history, baselines, evidence photos, and settings (such as theme, language, and enabled modules) locally on your device using an on-device database, private file storage, and preferences. This information is not synced to any server.

Children's Privacy

The App is not directed to children under the age of 13 (or the minimum age required in your jurisdiction, such as 16 in parts of the EU). We do not knowingly collect personal information from children.

Your Rights

Depending on where you live, you may have rights under laws such as the GDPR or CCPA, including the right to access or delete your personal data. Because the App does not collect or store your scan data or personal data on any server, all of your data lives on your device. Deleting the App removes this data, including your scan history, your evidence photos, and your settings. You can also delete your scan history and your saved evidence photos from within the App at any time. You can turn crash reports and basic app data off, and turn app usage analytics on or off, at any time in Settings.

For any privacy question or request, contact us using the details below.

Changes to This Policy

We may update this Privacy Policy from time to time. When we make material changes, we will update the "Last updated" date above and, where appropriate, notify you within the App. Your continued use of the App after changes take effect means you accept the updated policy.

Contact Us

If you have questions about this Privacy Policy or your data, contact us at:

Hidden Cam Detect
Email: nhanntv113@gmail.com