Screen Mirroring: Cast TV

Privacy

Screen Mirroring: Cast TV — Privacy Policy

What this app collects, why it collects it, and what you can ask us to delete.

Effective 9 September 2026 · Flutter 2.0 release

Screen Mirroring: Cast TV helps you play your media on a compatible receiver and control a TV you pair. This policy explains information used by the app and its setup-diagnosis service. Contact the app publisher at the support page about privacy, access or deletion requests.

Your media and connected TVs

Photos, videos, audio, imported files, saved links, favorites and your playback queue are kept in the app’s storage on your device. Selecting media copies the selected file into that storage so it can remain available later. Camera capture begins only when you choose it and permit access. The app does not automatically upload your Library to the diagnosis service.

When you cast, the selected receiver receives the content or its media link. Screen sharing sends visible screen content to the browser receiver you approve; that content can include notifications and other sensitive information on screen. Use the app or system Stop control to end sharing. Remote commands and pairing information are exchanged with the TV you select. Pairing credentials are stored using the device’s secure storage. Voice control, where the receiver supports it, sends microphone audio while you explicitly hold or start that control. The app does not save those microphone recordings.

Receiver security varies by protocol. Browser pairing verifies the matching code; supported paired TV transports verify their own identity or certificate. Some local-network media and older TV protocols use unencrypted HTTP. Use a trusted private network and do not share content you do not want the selected receiver or its operator to see. TV software, streaming services and websites you choose have their own privacy practices.

Optional AI setup diagnosis

Diagnosis runs only when you request it and give the displayed consent. It sends the TV description and problem you enter and, only if you separately select it, one TV error image. You can preview or remove that image before sending. The app bounds and re-encodes the image; the server removes metadata and limits its dimensions. Do not include passwords, payment information or personal material unrelated to the TV problem.

The app’s server sends this input through OpenRouter to a configured model provider: Google or OpenAI. OpenRouter’s routing policy explains the retention restriction used for these requests. Requests require a provider route designated for zero data retention and disallow data collection for model improvement. If the required route is unavailable, the request fails. The app’s diagnosis service does not store or log the submitted problem, image or generated reply. It returns a limited set of suggested checks; it does not execute commands or change TV settings.

Authentication, subscriptions and abuse prevention

The app uses Firebase Authentication and App Check to protect server requests. Setup diagnosis uses an app-specific authentication identity and device/app attestation. If you have a subscriber account, you can also sign in with its email and password to restore the access assigned to that account. Firebase Authentication manages that account and its sign-in information. Passwords and authentication tokens are not included in app logs or analytics. The server stores an ownership hash and bounded access dates rather than the account password. The app also creates a random installation identifier and signing key. The private key stays in device secure storage. The server retains the installation identifier, an ownership hash, public key, platform and registration time to verify requests and prevent replay.

Apple or Google handles payments. We do not receive your card number. The app reads your current store entitlement to enable subscription features. For paid diagnosis, it sends store transaction proof to the app server, which verifies current access with the applicable store. The database keeps purchase/proof hashes, ownership bindings and bounded verification dates and expiry. It does not retain the raw purchase token or signed transaction proof.

The service records pseudonymous installation/user/purchase references, request times and outcomes, and an IP-derived hash for rate limits and fraud prevention. Diagnosis admission records become eligible for cleanup after 48 hours; store-check admission records after 24 hours; replay nonces after 10 minutes. Cleanup runs as requests are admitted. Deleted installation identities retain a minimal retired-identity record to refuse replay and acknowledge deletion retries. Subscription ownership and verification metadata may remain for fraud prevention and purchase integrity. We do not retain diagnosis content in these records.

Usage, reliability and notifications

Firebase Analytics measures general app use and subscription-flow outcomes. App-authored events use fixed feature names and states. They do not contain your media filenames, TV names or addresses, URLs, diagnosis text or images, voice audio, pairing credentials or transaction proofs. Analytics and Crashlytics also process SDK installation identifiers and technical app/device information. Crashlytics collects crash reports and technical diagnostics; app-authored Flutter error reports exclude exception text and arbitrary URLs or file paths. Google describes its processing and retention in Firebase privacy information.

OneSignal supports app notifications. Its SDK uses a notification subscription identifier/token, permission status, app/device details, language, session information and network information such as an IP address. Device settings control notification permission. The app does not request precise location for notifications. See OneSignal’s SDK data information. Screen-sharing Stop notifications are a separate native system control.

These providers process information to operate, secure and improve the app services. Their infrastructure may process data in countries other than yours. We do not add advertising profiles, sell your media or send your Library to analytics. A receiver or external website you choose may collect information under its own terms.

Request account deletion

You can request deletion without buying or renewing a subscription. In the app, open Help → Account & data, choose the setup-help or subscriber account, and confirm Delete account. Account access stops while deletion is pending. If the service is unavailable, the app keeps the request and shows Retry deletion. It removes the local sign-in and setup identity only after the service confirms deletion; it may require you to verify the original account again.

To request deletion outside the app, email the support page with the subject Screen Mirroring Cast TV account deletion. Identify this app and the account or service data you want deleted. For a subscriber account, use its email address where possible. If you only used setup help or no longer have the app, explain that in your request so the publisher can establish which data belongs to you. Do not send a password, sign-in token, private key, payment card number or TV pairing code. The publisher may request additional non-secret information to verify ownership before deleting data.

Deletion removes the Firebase account and retires its service identities and account access. Local media and saved TVs remain on your device until you remove them. Minimal retired-identity, security, usage and transaction-verification records described above may remain to prevent replay, account recreation abuse and purchase-limit evasion. These records cannot restore the deleted account or its access. Account deletion does not cancel an App Store or Google Play subscription. Cancel that subscription in the store account where you purchased it.

Your choices and requests

You can stop casting, screen sharing or voice input; remove selected diagnosis images before submission; manage photos, microphone, camera, local-network and notification permissions in device settings; and remove saved media or TV pairings using their app controls. Uninstalling removes ordinary app storage, but device secure storage or OS-managed copies may have different retention. Subscription access is required for functional app features; browsing, legal information, support and purchase recovery remain available without it. Ending or uninstalling the app does not cancel a subscription: manage subscriptions in the store account where you purchased.

Privacy, terms, purchase recovery and Contact support remain accessible without subscribing. To request access, correction or deletion of information held by the publisher or its service providers, email the support page and identify this app and the request. We may need information sufficient to verify ownership without asking for passwords or payment card data. Some security, transaction and legal records may need to be retained; we will explain any applicable limitation. Depending on where you live, you may also have rights to object, restrict processing, receive a portable copy or complain to your local data-protection authority.

The app is not designed to collect children’s personal information knowingly. If you believe a child has submitted personal information, contact support. We may update this policy when the app or processing changes. The effective date and applicable release appear above.