Dernière mise à jour : 20 mars 2026 — Version 2.0
En résumé : ZDIStream respecte votre vie privée. La quasi-totalité de vos données restent sur votre appareil, chiffrées localement. Nous ne vendons, ne partageons et ne monétisons aucune donnée personnelle. Aucune publicité, aucun tracking, aucun analytics comportemental.
Sommaire
ZDIStream est édité par ZDILab.
En tant que responsable du traitement au sens du Règlement Général sur la Protection des Données (RGPD — Règlement UE 2016/679) et de la loi française Informatique et Libertés du 6 janvier 1978 modifiée, nous nous engageons à protéger vos données personnelles.
La majorité des données de ZDIStream sont stockées exclusivement sur votre appareil. Elles ne transitent jamais par nos serveurs.
| Donnée | Finalité | Protection |
|---|---|---|
| Identifiants de connexion (URL, nom d'utilisateur, mot de passe des sources multimédia) | Accéder à vos sources multimédia | Chiffré AES-256 |
| Tokens d'authentification | Session active avec vos sources | Chiffré + XOR |
| Licence Premium (statut d'achat) | Vérification de l'abonnement | Signé HMAC-SHA256 |
Chiffrement natif. Sur Android, flutter_secure_storage utilise le Android Keystore (chiffrement matériel AES-256-CBC). Sur iOS, le Keychain est utilisé. Sur Windows, l'API DPAPI assure la protection. Les clés de chiffrement ne quittent jamais l'enclave sécurisée de l'appareil.
| Donnée | Finalité | Stockage |
|---|---|---|
| Historique de visionnage (titre, durée, position de reprise) | Continue Watching, statistiques, trophées | Local SQLite |
| Favoris et listes personnalisées | Accès rapide à vos contenus préférés | Local SQLite |
| Profils et sous-profils (nom, avatar, restrictions) | Personnalisation multi-utilisateurs | Local SQLite |
| Progression trophées, défis, XP, niveau | Système de gamification | Local SQLite |
| Cache des métadonnées (titres, descriptions, posters TMDB) | Affichage hors-ligne, réduction des appels API | Local SQLite |
| Guide des programmes (EPG) mis en cache | Consultation hors-ligne du guide TV | Local SQLite |
Note importante : la base de données locale ne contient aucun identifiant de connexion, aucune URL de serveur, aucun mot de passe. Les URLs de streaming sont reconstruites à la volée à partir des identifiants stockés dans l'espace chiffré.
| Donnée | Finalité |
|---|---|
| Thème (sombre/clair) | Personnalisation visuelle |
| Langue de l'interface | Localisation (12 langues supportées) |
| Dernier onglet visité | Reprise de navigation |
| Paramètres du lecteur (décodeur, taille du tampon, format de flux) | Optimisation de la lecture vidéo |
| Préférence autoplay (lecture automatique épisode suivant) | Enchaînement des épisodes |
| Volume, dernière piste audio/sous-titres | Confort de lecture |
| PIN parental (haché) | Contrôle parental |
SharedPreferences ne stocke que des préférences non sensibles. Le PIN parental est stocké sous forme de hash SHA-256 avec sel, rendant toute récupération du code original impossible.
Les données suivantes sont transmises à nos serveurs exclusivement pour la gestion des comptes et des abonnements :
| Donnée | Finalité | Base légale | Durée |
|---|---|---|---|
| Adresse email | Identification du compte, communication | Exécution du contrat | Durée du compte + 90 jours |
| Nom d'utilisateur | Identification dans l'application | Exécution du contrat | Durée du compte + 90 jours |
| Identifiant unique de l'appareil (anonymisé) | Gestion du nombre d'appareils autorisés | Exécution du contrat | Durée du compte |
| Statut d'abonnement (type, date d'expiration) | Vérification de la licence | Exécution du contrat | Durée de l'abonnement + 90 jours |
| Historique de paiement (références, montants, dates) | Facturation, comptabilité | Obligation légale | 10 ans (obligation comptable) |
| Données de synchronisation cloud (offre Family uniquement) | Synchronisation multi-appareils (favoris, historique, profils) | Exécution du contrat | Durée de l'abonnement + 90 jours |
Minimisation des données. Nous ne collectons que le strict nécessaire. Nous ne connaissons pas vos sources multimédia, nous ne savons pas ce que vous regardez, et nous ne stockons aucun contenu. Même pour la synchronisation cloud, seules les métadonnées de navigation sont synchronisées (titres, positions de reprise), jamais les URLs ni les identifiants de vos sources.
L'Application interagit avec les services tiers suivants :
| Service | Données transmises | Finalité | Politique de confidentialité |
|---|---|---|---|
| Google Play | Données transactionnelles | Distribution de l'application, paiements | Politique Google |
| RevenueCat | ID utilisateur anonyme, statut d'abonnement | Gestion des abonnements in-app | Politique RevenueCat |
| TMDB (The Movie Database) | Titres de films/séries (requêtes de recherche) | Récupérer les métadonnées : posters, descriptions, notes, bandes-annonces | Politique TMDB |
| Sources multimédia de l'Utilisateur | Identifiants de connexion fournis par l'Utilisateur | Accéder au contenu de l'Utilisateur | Variable selon le fournisseur |
Aucun autre service tiers n'est intégré à l'Application. Nous n'utilisons aucun SDK d'analytics (Google Analytics, Firebase Analytics, Mixpanel, Amplitude, etc.), aucun SDK publicitaire, aucun outil de tracking, aucun réseau social, aucun outil de crash reporting tiers.
Engagement de non-collecte. Nous ne collectons, ne stockons et ne transmettons jamais les données suivantes :
| Catégorie | Détail |
|---|---|
| Jamais Localisation | Adresse IP (non loguée), GPS, géolocalisation, Wi-Fi SSID |
| Jamais Identifiants publicitaires | GAID (Android), IDFA (iOS), identifiants de tracking |
| Jamais Contacts & communications | Carnet d'adresses, SMS, journal d'appels, emails |
| Jamais Données bancaires | Numéro de carte, CVV, IBAN (gérés exclusivement par le prestataire de paiement) |
| Jamais Contenu visionné | URLs de streaming, noms des chaînes, programmes regardés |
| Jamais Sources multimédia | URLs des serveurs, fichiers M3U, portails de l'Utilisateur |
| Jamais Données biométriques | Empreinte digitale, reconnaissance faciale |
| Jamais Analytics comportementaux | Parcours utilisateur, heatmaps, A/B testing, profiling |
| Jamais Cookies & trackers | Cookies tiers, pixels de tracking, fingerprinting navigateur |
| Jamais Données d'appareil sensibles | IMEI, numéro de série, liste des applications installées |
| Jamais Micro / Caméra | Aucun accès au microphone, à la caméra ou aux capteurs |
Conformément à l'article 6 du RGPD, chaque traitement de données repose sur une base légale précise :
| Base légale | Traitements concernés | Article RGPD |
|---|---|---|
| Exécution du contrat | Gestion du compte, vérification de licence, synchronisation cloud, stockage local des identifiants de sources | Art. 6.1.b |
| Obligation légale | Conservation des factures et pièces comptables (10 ans, article L.123-22 du Code de commerce) | Art. 6.1.c |
| Intérêt légitime | Statistiques de visionnage locales (amélioration de l'expérience), détection de fraude à la licence | Art. 6.1.f |
| Consentement | Fonctionnalités optionnelles (gamification, notifications de rappel EPG, partage de profil) | Art. 6.1.a |
Les données locales sont conservées tant que l'Application est installée. L'Utilisateur peut à tout moment :
L'historique de visionnage est automatiquement purgé après 12 mois d'inactivité sur le profil concerné. Cette purge automatique libère de l'espace et minimise les données conservées.
| Donnée | Conservation active | Après suppression du compte |
|---|---|---|
| Email, nom d'utilisateur, profil du compte | Durée du compte | 90 jours puis suppression définitive |
| Statut d'abonnement | Durée de l'abonnement | 90 jours |
| Données de synchronisation cloud | Durée de l'abonnement Family | 90 jours |
| Factures et données comptables | 10 ans | 10 ans (obligation légale) |
Nous mettons en œuvre les mesures techniques et organisationnelles suivantes :
--obfuscate)print() ou log de debug dans les builds de productionConformément aux articles 15 à 22 du RGPD, vous disposez des droits suivants :
| Droit | Description | Comment l'exercer |
|---|---|---|
| Accès (art. 15) | Obtenir une copie de toutes vos données personnelles que nous détenons | Email à contact@zdilab.tech |
| Rectification (art. 16) | Corriger des données inexactes ou incomplètes | Paramètres de l'app ou email |
| Effacement (art. 17) | Supprimer vos données personnelles (« droit à l'oubli ») | Paramètres → Compte → Supprimer mon compte, ou email à support@zdilab.tech |
| Limitation (art. 18) | Restreindre le traitement de vos données | Email à contact@zdilab.tech |
| Portabilité (art. 20) | Récupérer vos données dans un format structuré et lisible | Paramètres → Compte → Exporter mes données |
| Opposition (art. 21) | Vous opposer à un traitement fondé sur l'intérêt légitime | Email à contact@zdilab.tech |
| Retrait du consentement (art. 7.3) | Retirer votre consentement pour les traitements fondés sur celui-ci | Paramètres de l'app |
| Décision automatisée (art. 22) | Ne pas faire l'objet d'une décision fondée exclusivement sur un traitement automatisé | Non applicable (aucune décision automatisée) |
Délai de réponse : nous nous engageons à répondre à toute demande dans un délai maximal de trente (30) jours à compter de la réception, conformément au RGPD. Ce délai peut être prolongé de deux mois en cas de complexité, avec notification.
Vérification d'identité : pour protéger vos données, nous pouvons être amenés à vérifier votre identité avant de donner suite à une demande d'accès ou d'effacement.
10.1. Nos serveurs sont hébergés en Europe (Hostinger, data centers UE).
10.2. Les requêtes vers l'API TMDB peuvent être traitées par des serveurs situés hors de l'Union Européenne. Ces transferts sont encadrés par les clauses contractuelles types de la Commission européenne et/ou la politique de confidentialité de TMDB.
10.3. RevenueCat peut traiter des données d'abonnement aux États-Unis, conformément à leur politique de confidentialité et au cadre EU-US Data Privacy Framework.
10.4. Les communications avec les sources multimédia de l'Utilisateur sont effectuées directement entre l'appareil de l'Utilisateur et ses serveurs, sans transit par nos serveurs. L'Éditeur n'est pas responsable des transferts de données inhérents à l'utilisation de sources multimédia hébergées hors UE.
11.1. L'utilisation de ZDIStream est réservée aux personnes de 13 ans et plus. Les mineurs de 13 à 16 ans doivent utiliser l'Application sous la supervision d'un titulaire de l'autorité parentale.
11.2. L'Application propose un système de contrôle parental par code PIN permettant de :
11.3. Nous ne collectons sciemment aucune donnée personnelle de mineurs de moins de 16 ans au sens du RGPD (article 8). Si nous découvrons qu'un mineur de moins de 16 ans a créé un Compte sans consentement parental, nous supprimerons les données associées.
12.1. ZDIStream est une application native. Elle n'utilise aucun cookie HTTP, aucun pixel de tracking, aucune technologie de fingerprinting de navigateur, aucun local storage web, aucun SDK de tracking.
12.2. Le site web zdilab.tech est une page statique qui n'utilise aucun cookie, aucun tracker, aucun pixel de conversion, aucun outil d'analytics. Aucune donnée personnelle n'est collectée via le site web.
13.1. L'Application peut envoyer des notifications locales (rappels EPG, fin de téléchargement, renouvellement d'abonnement). Ces notifications sont générées localement sur l'appareil et ne nécessitent aucune communication avec nos serveurs.
13.2. L'Utilisateur peut désactiver les notifications dans les paramètres de l'Application ou de son appareil à tout moment.
13.3. Des emails transactionnels peuvent être envoyés en lien avec le Compte (confirmation de souscription, facture, renouvellement, réinitialisation de mot de passe). Ces emails ne sont pas de nature promotionnelle.
14.1. Nous nous réservons le droit de modifier cette politique de confidentialité. La date de dernière mise à jour en haut du document fait foi.
14.2. En cas de modification substantielle affectant vos droits ou la nature des données traitées, nous vous informerons au moins trente (30) jours à l'avance par notification dans l'Application et/ou par email.
14.3. L'historique des versions de cette politique est conservé et disponible sur demande.
Conformément au Règlement (UE) 2022/2065 sur les services numériques (Digital Services Act), ZDIStream désigne un point de contact unique pour les signalements d'abus, contenus illicites ou préoccupations relatives à la modération :
ZDIStream est un lecteur multimédia qui ne fournit aucun contenu. L’Application ne stocke, n’héberge ni ne distribue de contenu audiovisuel. Les signalements relatifs au contenu des sources multimédia tierces doivent être adressés directement à ces fournisseurs.
Si vous estimez que le traitement de vos données personnelles constitue une violation du RGPD, vous avez le droit d'introduire une réclamation auprès de votre autorité de contrôle nationale. En France :
CNIL (Commission Nationale de l'Informatique et des Libertés)
Site : www.cnil.fr
Adresse : 3 Place de Fontenoy, TSA 80715, 75334 Paris Cedex 07
Téléphone : +33 1 53 73 22 22
Pour toute question relative à cette politique, pour exercer vos droits, ou pour signaler une préoccupation relative à vos données :
Notre engagement : ZDIStream est conçu selon le principe de Privacy by Design. La protection de vos données n'est pas un ajout après coup mais un pilier fondamental de notre architecture. Vos données vous appartiennent.
In summary: ZDIStream respects your privacy. Nearly all of your data stays on your device, encrypted locally. We never sell, share, or monetize any personal data. No advertising, no tracking, no behavioral analytics.
Table of Contents
ZDIStream is published by ZDILab.
As the data controller within the meaning of the General Data Protection Regulation (GDPR — EU Regulation 2016/679), we are committed to protecting your personal data.
The majority of ZDIStream's data is stored exclusively on your device. It never passes through our servers.
| Data | Purpose | Protection |
|---|---|---|
| Connection credentials (URL, username, password of media sources) | Access your media sources | AES-256 Encrypted |
| Authentication tokens | Active session with your sources | Encrypted + XOR |
| Premium license (purchase status) | Subscription verification | HMAC-SHA256 Signed |
Native encryption. On Android, flutter_secure_storage uses the Android Keystore (hardware AES-256-CBC encryption). On iOS, the Keychain is used. On Windows, the DPAPI provides protection. Encryption keys never leave the device's secure enclave.
| Data | Purpose | Storage |
|---|---|---|
| Watch history (title, duration, resume position) | Continue Watching, statistics, trophies | Local SQLite |
| Favorites and custom lists | Quick access to your preferred content | Local SQLite |
| Profiles and sub-profiles (name, avatar, restrictions) | Multi-user personalization | Local SQLite |
| Trophy progress, challenges, XP, level | Gamification system | Local SQLite |
| Metadata cache (titles, descriptions, TMDB posters) | Offline display, reduced API calls | Local SQLite |
| Program guide (EPG) cache | Offline TV guide access | Local SQLite |
Important note: The local database contains no connection credentials, no server URLs, no passwords. Streaming URLs are rebuilt on-the-fly from credentials stored in encrypted storage.
| Data | Purpose |
|---|---|
| Theme (dark/light) | Visual customization |
| Interface language | Localization (12 supported languages) |
| Last visited tab | Navigation resume |
| Player settings (decoder, buffer size, stream format) | Video playback optimization |
| Autoplay preference (auto-play next episode) | Episode chaining |
| Volume, last audio/subtitle track | Playback comfort |
| Parental PIN (hashed) | Parental control |
SharedPreferences only stores non-sensitive preferences. The parental PIN is stored as a SHA-256 hash with salt, making recovery of the original code impossible.
The following data is transmitted to our servers exclusively for account and subscription management:
| Data | Purpose | Legal Basis | Retention |
|---|---|---|---|
| Email address | Account identification, communication | Contract performance | Account duration + 90 days |
| Username | In-app identification | Contract performance | Account duration + 90 days |
| Anonymized device identifier | Authorized device count management | Contract performance | Account duration |
| Subscription status (type, expiration date) | License verification | Contract performance | Subscription duration + 90 days |
| Payment history (references, amounts, dates) | Billing, accounting | Legal obligation | 10 years (accounting requirement) |
| Cloud sync data (Family plan only) | Multi-device sync (favorites, history, profiles) | Contract performance | Subscription duration + 90 days |
Data minimization. We only collect what is strictly necessary. We don't know your media sources, we don't know what you watch, and we don't store any content. Even for cloud sync, only navigation metadata is synchronized (titles, resume positions), never URLs or credentials for your sources.
The Application interacts with the following third-party services:
| Service | Data Shared | Purpose | Privacy Policy |
|---|---|---|---|
| Google Play | Transaction data | App distribution, payments | Google Policy |
| RevenueCat | Anonymous user ID, subscription status | In-app subscription management | RevenueCat Policy |
| TMDB (The Movie Database) | Movie/TV show titles (search queries) | Retrieve metadata: posters, descriptions, ratings, trailers | TMDB Policy |
| User's media sources | User-provided connection credentials | Access user's content | Varies by provider |
| ipapi.co | Device IP address (anonymous query) | VPN/proxy detection — a warning is displayed if a VPN is detected, for user security | ipapi.co Policy |
No other third-party services are integrated into the Application. We use no analytics SDKs (Google Analytics, Firebase Analytics, Mixpanel, Amplitude, etc.), no advertising SDKs, no tracking tools, no social networks, no third-party crash reporting tools.
Non-collection commitment. We never collect, store, or transmit the following data:
| Category | Detail |
|---|---|
| Never Location | IP address (not logged), GPS, geolocation, Wi-Fi SSID |
| Never Advertising IDs | GAID (Android), IDFA (iOS), tracking identifiers |
| Never Contacts & communications | Address book, SMS, call log, emails |
| Never Banking data | Card number, CVV, IBAN (handled exclusively by payment processor) |
| Never Viewed content | Streaming URLs, channel names, watched programs |
| Never Media sources | Server URLs, M3U files, user portals |
| Never Biometric data | Fingerprint, facial recognition |
| Never Behavioral analytics | User journeys, heatmaps, A/B testing, profiling |
| Never Cookies & trackers | Third-party cookies, tracking pixels, browser fingerprinting |
| Never Sensitive device data | IMEI, serial number, installed apps list |
| Never Microphone / Camera | No access to microphone, camera, or sensors |
In accordance with Article 6 of the GDPR, each data processing activity relies on a specific legal basis:
| Legal Basis | Related Processing | GDPR Article |
|---|---|---|
| Contract performance | Account management, license verification, cloud sync, local storage of source credentials | Art. 6.1.b |
| Legal obligation | Invoice and accounting record retention (10 years) | Art. 6.1.c |
| Legitimate interest | Local watch statistics (experience improvement), license fraud detection | Art. 6.1.f |
| Consent | Optional features (gamification, EPG reminder notifications, profile sharing) | Art. 6.1.a |
Local data is retained as long as the Application is installed. Users can at any time:
Watch history is automatically purged after 12 months of inactivity on the relevant profile. This automatic purge frees storage and minimizes retained data.
| Data | Active Retention | After Account Deletion |
|---|---|---|
| Email, username, account profile | Account duration | 90 days then permanent deletion |
| Subscription status | Subscription duration | 90 days |
| Cloud sync data | Family subscription duration | 90 days |
| Invoices and accounting data | 10 years | 10 years (legal requirement) |
We implement the following technical and organizational measures:
--obfuscate)print() or debug logs in production buildsUnder Articles 15 to 22 of the GDPR, you have the following rights:
| Right | Description | How to Exercise |
|---|---|---|
| Access (Art. 15) | Obtain a copy of all personal data we hold about you | Email contact@zdilab.tech |
| Rectification (Art. 16) | Correct inaccurate or incomplete data | App settings or email |
| Erasure (Art. 17) | Delete your personal data ("right to be forgotten") | Settings → Account → Delete my account |
| Restriction (Art. 18) | Restrict the processing of your data | Email contact@zdilab.tech |
| Portability (Art. 20) | Retrieve your data in a structured, machine-readable format | Settings → Account → Export my data |
| Objection (Art. 21) | Object to processing based on legitimate interest | Email contact@zdilab.tech |
| Withdraw consent (Art. 7.3) | Withdraw consent for consent-based processing | App settings |
| Automated decision (Art. 22) | Not be subject to a decision based solely on automated processing | Not applicable (no automated decisions) |
Response time: We commit to responding to any request within a maximum of thirty (30) days from receipt, in accordance with the GDPR. This period may be extended by two months in case of complexity, with notification.
Identity verification: To protect your data, we may need to verify your identity before processing an access or erasure request.
10.1. Our servers are hosted in Europe (Hostinger, EU data centers).
10.2. Requests to the TMDB API may be processed by servers located outside the European Union. These transfers are governed by the European Commission's standard contractual clauses and/or TMDB's privacy policy.
10.3. RevenueCat may process subscription data in the United States, in accordance with their privacy policy and the EU-US Data Privacy Framework.
10.4. Communications with the user's media sources are made directly between the user's device and their servers, without passing through our servers. The Publisher is not responsible for data transfers inherent in the use of media sources hosted outside the EU.
11.1. ZDIStream is intended for persons aged 13 and over. Minors aged 13 to 16 must use the Application under the supervision of a parent or legal guardian.
11.2. The Application offers a parental control system via PIN code to:
11.3. We do not knowingly collect personal data from minors under 16 within the meaning of the GDPR (Article 8). If we discover that a minor under 16 has created an Account without parental consent, we will delete the associated data.
12.1. ZDIStream is a native application. It does not use any HTTP cookies, tracking pixels, browser fingerprinting technology, web local storage, or tracking SDKs.
12.2. The website zdilab.tech may use strictly necessary cookies for site functionality. These cookies do not collect any personal data and are not used for tracking or advertising purposes.
13.1. The Application may send local notifications (EPG reminders, download completion, subscription renewal). These notifications are generated locally on the device and do not require any communication with our servers.
13.2. Users can disable notifications in the Application settings or their device settings at any time.
13.3. Transactional emails may be sent in connection with the Account (subscription confirmation, invoice, renewal, password reset). These emails are not promotional in nature.
14.1. We reserve the right to modify this privacy policy. The last update date at the top of the document is authoritative.
14.2. In the event of a substantial change affecting your rights or the nature of data processed, we will inform you at least thirty (30) days in advance via an in-app notification and/or email.
14.3. The version history of this policy is maintained and available upon request.
In accordance with EU Regulation 2022/2065 (Digital Services Act), ZDIStream designates a single point of contact for abuse reports, illegal content, or moderation concerns:
ZDIStream is a multimedia player that provides no content. The Application does not store, host, or distribute audiovisual content. Reports regarding third-party media source content should be directed to those providers.
If you believe that the processing of your personal data constitutes a violation of the GDPR, you have the right to lodge a complaint with your national supervisory authority. In France:
CNIL (Commission Nationale de l'Informatique et des Libertés)
Website: www.cnil.fr
Address: 3 Place de Fontenoy, TSA 80715, 75334 Paris Cedex 07
Phone: +33 1 53 73 22 22
For any questions regarding this policy, to exercise your rights, or to report a concern about your data:
Our commitment: ZDIStream is designed following the Privacy by Design principle. Protecting your data is not an afterthought but a fundamental pillar of our architecture. Your data belongs to you.