Datenschutz · Dish for Android

Datenschutzerklärung Dish for Android

Gültig ab 2026-05-21. Diese Erklärung gilt für die Anwendung Dish for Android, herausgegeben von TinkerNorth („wir", „TinkerNorth", „Dish") und vertrieben über GitHub Releases. Falls du dies aus der App heraus liest, findest du die aktuelle Version auch unter https://dish.tinkernorth.com/privacy/dish-android/.

Die Kurzversion

Dish for Android sammelt keinerlei personenbezogene Informationen, Geräteidentifikatoren, Nutzungsanalysen oder Werbedaten. Es gibt kein Account-System. Der einzige TinkerNorth-betriebene Verarbeiter, mit dem es jemals Kontakt aufnimmt, ist Firebase Crashlytics, und das nur, wenn die App abstürzt – niemals im normalen Betrieb.

Crash-Reports tragen einen Stack Trace, das Gerätemodell, die Android-Version und eine automatisch generierte Install-UUID. Sie tragen nicht deinen Gamepad-Input, die Namen oder IP-Adressen der Satellites, mit denen du dich koppelst, deine Wi-Fi-SSID oder irgendwelche Kontaktinformationen. Der volle Crashlytics-Umfang steht unten in Abschnitt 5. Du kannst jederzeit über das Zahnrad-Symbol auf dem Hauptbildschirm → EinstellungenDiagnoseCrash-Reports teilen opt-outen; die Wahl bleibt über Starts hinweg erhalten und wird respektiert, bevor beim nächsten Start ein Crash hochgeladen werden kann.

Alles andere, was die App tut, passiert auf deinem Gerät oder zwischen deinem Gerät und den Satellite-Servern, mit denen du in deinem eigenen LAN ausdrücklich gekoppelt hast. Der verschlüsselte UDP-Gamepad-Stream ist ausschließlich lokaler Traffic; wir sehen oder verarbeiten ihn nicht.

Die längere Version unten erklärt genau, was die App auf dem Gerät tut, welche Berechtigungen sie anfordert und warum, welche Daten wo liegen und welche Rechte du unter GDPR (EU), UK GDPR, CCPA / CPRA (Kalifornien) und LGPD (Brasilien) hast.

Wer wir sind

TinkerNorth ist ein Single-Developer-Projekt, das Dish und die Satellite-Suite als freie Open-Source-Software veröffentlicht. Wir betreiben keinen kommerziellen Dienst, der an Dish for Android gebunden ist. Bei Datenschutzfragen wende dich an privacy@tinkernorth.com.

1. Informationen, die wir nicht erheben

Zur Klarheit: Hier ist, was Dish for Android nicht erhebt, obwohl viele Apps dieser Kategorie es tun:

2. Informationen, die lokal auf deinem Gerät verarbeitet werden

Die folgenden Informationen werden lokal auf deinem Gerät verarbeitet. Sie verlassen dein Gerät nicht, außer wo ausdrücklich angemerkt ist, dass sie an einen Satellite-Server gehen, mit dem du in deinem eigenen LAN gekoppelt hast:

3. Berechtigungen, die die App anfordert, und warum

Die Berechtigungen, die Dish for Android in seiner AndroidManifest.xml deklariert, sind unten mit dem genauen Grund jedes einzelnen Eintrags aufgeführt.

Die App fordert keine dieser Berechtigungen an: Standort (genau oder ungefähr), Kamera, Mikrofon, Kontakte, Kalender, SMS, Anrufprotokoll, Körpersensoren, Dateien / Medien. Falls eine zukünftige Version eine davon braucht, wird diese Erklärung vor dem Release aktualisiert.

4. Netzwerkverhalten

Dish for Android initiiert Netzwerk-Traffic an vier Stellen:

Aller ausgehende HTTPS-Traffic ist außerdem durch eine explizite network_security_config.xml begrenzt, die Klartext für jeden Host verweigert, sodass ein zukünftiger Regression eine Verbindung nicht still auf reines HTTP herabstufen kann.

5. Crash-Reporting (Firebase Crashlytics)

Dish for Android nutzt Firebase Crashlytics (bereitgestellt von Google LLC), um Crash- und ANR-Reports zu sammeln, damit wir Bugs diagnostizieren können, die dem Test entgehen. Crashlytics ist der einzige Datenfluss von deinem Gerät zu einem TinkerNorth-betriebenen Verarbeiter.

Wenn die App abstürzt (eine unbehandelte Kotlin-Exception, ein fatales Signal in der nativen JNI-Schicht oder ein Application-Not-Responding-Event), lädt Crashlytics hoch:

Crashlytics empfängt nicht:

Crashlytics bewahrt Crash-Daten 90 Tage auf und löscht sie dann. Siehe Googles Firebase Privacy and Security Policy für Googles Rolle als Verarbeiter. TinkerNorth ist der Datencontroller; Google ist der Verarbeiter.

Opt-out. Tippe das Zahnrad-Symbol auf dem Hauptbildschirm an, dann in Einstellungen unter Diagnose schalte Crash-Reports teilen aus. Der Schalter ist standardmäßig an. Ausschalten ruft FirebaseCrashlytics.setCrashlyticsCollectionEnabled(false) auf und persistiert die Wahl im App-privaten Speicher. Der nächste App-Start wendet die gespeicherte Einstellung an, bevor irgendein Codepfad einen Crash-Report produzieren kann, und der Controller respektiert die Einstellung für den Rest der Session, sodass ein Mid-Session-Opt-out sofort wirksam wird. Die Einstellung ist im Android-Cloud-Backup enthalten, sodass sie Gerätetransfers überlebt. Crash-Reports, die vor deinem Opt-out gesammelt wurden, bleiben bei Firebase, bis die Standard-90-Tage-Aufbewahrung abläuft, dann werden sie gelöscht.

Build-Varianten, die ohne google-services.json ausgeliefert werden – zum Beispiel jeder, der selbst aus dem Quellcode baut – haben überhaupt kein Crashlytics-SDK initialisiert, selbst wenn der Toggle an ist. Der Controller erkennt das via FirebaseApp.getApps und tut nichts.

Wir betreiben kein Firebase Analytics. Crashlytics und Analytics sind getrennte Firebase-Produkte, und diese App linkt nur Crashlytics. Wir haben die firebase-analytics-Abhängigkeit bewusst aus dem Build herausgehalten – sie zu bündeln würde automatisch Events (first_open, session_start, screen_view, app_remove usw.) sammeln und com.google.android.gms.permission.AD_ID in das Produktionsmanifest ziehen. Keines von beidem ist heute der Fall. Sollte Analytics jemals hinzugefügt werden, wird diese Erklärung vor der Auslieferung der Änderung aktualisiert.

6. Drittanbieter-Dienste und SDKs

Abhängigkeiten, die im APK mitausgeliefert werden:

Firebase Analytics ist bewusst nicht im Build. Es einzubinden würde automatisch Events sammeln und die AD_ID-Berechtigung in das Manifest ziehen, was beides mit dieser Erklärung kollidiert. Die app/build.gradle.kts hat einen Kommentar, der die Wahl erklärt, damit ein zukünftiger Contributor die Einschränkung sieht, bevor er die Abhängigkeit wieder hinzufügt.

Die vollständige Abhängigkeitsliste steht in app/build.gradle.kts im dish-android-Repo und in der Software Bill of Materials (SPDX + CycloneDX), die mit jedem getaggten Release ausgeliefert wird.

Wenn du Dish for Android über Google Play bezogen hast, unterliegt der Play Store selbst Googles Datenschutzerklärung. Diese ist von dieser Erklärung getrennt und außerhalb unserer Kontrolle.

7. Daten, die wir teilen

Wir verkaufen, vermieten oder teilen keine personenbezogenen Informationen für Werbung, Marketing oder irgendeinen kommerziellen Zweck. Wir haben keine Beziehungen zu Werbenetzwerken, Analytics-Anbietern, Betrugserkennungs-Anbietern oder Marketing-Partnern. Der einzige Dritte, der jemals Daten von dieser App erhält, ist Google LLC, der als Verarbeiter für Firebase Crashlytics unter dem in Abschnitt 5 beschriebenen Umfang agiert.

8. Datenaufbewahrung

On-Device-Daten leben, bis du die App deinstallierst oder Androids „Speicher löschen"-Option in Einstellungen > Apps > Dish nutzt.

Zwei Teile app-privater Daten interagieren unterschiedlich mit dem Android-Cloud-Backup:

Crashlytics bewahrt Crash-Reports 90 Tage auf Googles Infrastruktur auf, dann löscht es sie.

9. Datenschutz von Kindern

Dish for Android richtet sich nicht an Kinder unter 13 (oder unter dem äquivalenten Alter in deiner Jurisdiktion – 14 in Südkorea, 16 in den meisten Teilen der EU). Der in Abschnitt 5 beschriebene Crashlytics-Umfang enthält keine Information, die ein Kind als Kind identifizieren könnte (kein Name, kein Geburtsdatum, keine E-Mail). Falls du glaubst, dass Daten eines Kindes über diese App gesammelt wurden, schreib an privacy@tinkernorth.com mit der Firebase Installation ID oder einem aktuellen Crash-Zeitstempel und wir löschen die zugehörigen Reports.

10. Internationale Übermittlungen

On-Device-Daten verlassen dein Gerät nicht. Die Crashlytics-Crash-Report-Payload wird an Google LLC gesendet und kann in jedem Land verarbeitet werden, in dem Google Infrastruktur betreibt, einschließlich der USA. Übermittlungen aus dem EWR / UK in die USA stützen sich auf Standardvertragsklauseln; siehe Googles Data Processing and Security Terms für die vollständige Dokumentation des Übermittlungsmechanismus.

11. Deine Rechte

11.1 GDPR (Europäischer Wirtschaftsraum)

Wenn du dich im EWR befindest, gibt dir die General Data Protection Regulation (GDPR) die Rechte auf Auskunft, Berichtigung, Löschung, Einschränkung der Verarbeitung, Datenübertragbarkeit und Widerspruch. Die einzigen personenbezogenen Daten, die wir für Nutzer im EWR verarbeiten, sind die Firebase Installation ID und die in Abschnitt 5 beschriebene Crash-Report-Payload. Um eines dieser Rechte auszuüben:

Rechtsgrundlagen. Lokale On-Device-Verarbeitung (Controller-Input, Pairing-Schlüssel, gemerkte Hosts) stützt sich auf deine Einwilligung, ausgedrückt durch das Installieren der App und Erteilen der Berechtigungen, und auf die Erfüllung eines Vertrags, wenn du die App auffordert, sich mit deinem Satellite zu koppeln und zu streamen. Crashlytics-Verarbeitung stützt sich auf unser berechtigtes Interesse (GDPR Art. 6(1)(f)), eine funktionierende App zu unterhalten, abgewogen gegen den strikten No-PII-Umfang, der in Abschnitt 5 beschrieben ist.

Internationale Übermittlungen. Crashlytics-Daten werden von Google LLC verarbeitet, das Daten unter Standardvertragsklauseln außerhalb des EWR übermitteln kann. Siehe Googles Data Processing and Security Terms.

Du hast das Recht, bei deiner nationalen Datenschutzbehörde Beschwerde einzureichen. Eine Liste wird vom European Data Protection Board gepflegt.

11.2 UK GDPR (Vereinigtes Königreich)

Wenn du dich im UK befindest, spiegelt die UK GDPR die Rechte in Abschnitt 11.1 oben. Deine Aufsichtsbehörde ist das Information Commissioner's Office (ICO). Derselbe Crashlytics-Umfang und dieselben Opt-out-Mechaniken gelten.

11.3 CCPA / CPRA (Kalifornien)

Wenn du in Kalifornien wohnst, gibt dir der California Consumer Privacy Act (in der Fassung des CPRA) die Rechte auf Auskunft, Löschung, Berichtigung, Opt-out aus Verkauf oder Teilen und Beschränkung der Verwendung sensibler personenbezogener Informationen. Wir verkaufen oder teilen keine personenbezogenen Informationen (wie unter CCPA / CPRA definiert), und wir haben es in den vergangenen 12 Monaten nicht getan. Kein „Do Not Sell or Share My Personal Information"-Link ist erforderlich, da es keinen Verkauf oder kein Teilen gibt, aus dem man opt-outen könnte.

Um ein „Recht auf Auskunft" oder „Recht auf Löschung" gegen den Crash-Report-Umfang in Abschnitt 5 auszuüben, schreib an privacy@tinkernorth.com mit deiner Firebase Installation ID (oder einem aktuellen Crash-Zeitstempel und Gerätemodell). Du kannst auch eine bevollmächtigte Vertretung benennen, die einen Antrag in deinem Namen stellt.

11.4 Andere US-Bundesstaaten

Bewohner:innen von Virginia (VCDPA), Colorado (CPA), Connecticut (CTDPA), Utah (UCPA), Texas (TDPSA) und anderen Bundesstaaten mit umfassenden Datenschutzgesetzen haben äquivalente Rechte. Derselbe Crashlytics-Umfang und dieselben Opt-out-Mechaniken gelten.

11.5 LGPD (Brasilien)

Wenn du dich in Brasilien befindest, gibt dir die Lei Geral de Proteção de Dados (LGPD) die Rechte auf Bestätigung, Auskunft, Berichtigung, Anonymisierung, Portabilität und Löschung. Derselbe Crashlytics-Umfang und dieselben Opt-out-Mechaniken gelten. Um ein Recht auszuüben, schreib an privacy@tinkernorth.com. Unser DPO-Kontakt ist dieselbe Adresse.

12. Sicherheit

Jedes Paket, das zwischen Dish und Satellite ausgetauscht wird, wird mit ChaCha20-Poly1305 IETF mittels eines 256-bit-symmetrischen Schlüssels versiegelt, der aus einem X25519-Schlüsselaustausch abgeleitet wurde, der durch eine vierstellige Pairing-PIN ausgesät wurde. Der Schlüssel verlässt nie dein Gerät oder das gekoppelte Satellite, und die PIN wird nach dem Pairing zerstört. Für das vollständige Threat Model siehe /security/ auf dieser Seite.

Um eine Schwachstelle zu melden, siehe SECURITY.md im Satellite-Repo.

13. Änderungen an dieser Erklärung

Wir aktualisieren diese Erklärung, wenn sich das Verhalten der App in einer Weise ändert, die das hier Beschriebene betrifft. Wesentliche Änderungen werden in den Release-Notes der App angekündigt, und das „Gültig ab"-Datum oben auf dieser Seite wird aktualisiert. Die vorherige Version jeder Erklärung wird in der Git-Historie dieser Seite bewahrt.

14. Kontakt

Datenschutz: privacy@tinkernorth.com
Sicherheit: siehe SECURITY.md im Satellite-Repo
Allgemein: Eröffne ein GitHub-Issue im dish-android-Repo

← Zurück zur Datenschutz-Übersicht