Zum Inhalt springen
AppFoyer
Starten

Ratgeber Store-Formulare und SDKs

So füllen Sie Google Plays Data-safety-Formular und Apples App-Privacy-Angaben aus

Was jeder Fragebogen fragt, wie Ihre SDKs die Antworten ändern, die drei häufig falsch beantworteten Fragen und wo jeder Anbieter die Antworten veröffentlicht, die Sie brauchen.

Listen Sie jedes SDK in Ihrem Build auf, öffnen Sie die Offenlegungsseite oder das Privacy Manifest jedes Anbieters und ergänzen Sie Ihre eigene Erhebung, etwa Konten. Beantworten Sie dann beide Fragebögen aus dieser einen Liste. Play fragt, was erhoben und geteilt wird und wozu. Apple fragt dasselbe, dazu, ob jeder Datentyp mit dem Nutzer verknüpft ist und zum Tracking verwendet wird.

Erledigen Sie das stattdessen in wenigen Minuten

AppFoyer hostet die Seiten, um die es in diesem Ratgeber geht – Datenschutzerklärung, Nutzungsbedingungen, Support, Kontolöschung und app-ads.txt –, auf einer eigenen Subdomain, ohne eigene Domain oder eigenen Server. Eine App ist kostenlos, und nichts, was ein Store verlangt, steht jemals hinter einer Bezahlschranke.

Geprüft am 25. September 2026. Store-Richtlinien ändern sich, manchmal ohne Ankündigung. Alles Folgende verlinkt die offizielle Dokumentation, und maßgeblich ist die dort verlinkte Seite, nicht diese hier. Widersprechen sich beide, hat der Store recht. Dieser Ratgeber ist aus dem Englischen übersetzt; Zitate aus der Store-Dokumentation bleiben im englischen Original.

Erstellen Sie eine Liste dessen, was Ihre App vom Gerät sendet, SDKs eingeschlossen, und beantworten Sie beide Fragebögen daraus. Google Plays Data safety-Formular und Apples App Privacy-Angaben fragen in unterschiedlichen Worten nach denselben Fakten. Stammen Ihre Antworten aus zwei getrennten Erinnerungen, laufen sie auseinander.

Jede App bei Google Play muss das Data-safety-Formular ausfüllen, auch eine App, die nichts erhebt. Ausgenommen sind nur Apps, die ausschließlich in internen Test-Tracks live sind (Google Plays Data-safety-Hilfe). Apple verlangt App-Privacy-Angaben für jede App im App Store (Apples App-Privacy-Angaben).

Wo die Formulare sind

  • Google Play: Play Console → Ihre App → App content → Data safety.
  • App Store: App Store Connect → Ihre App → App Privacy.

Schritt 1: die Liste erstellen

  1. Jedes Drittanbieter-SDK. Lesen Sie Ihre Abhängigkeitsdateien: build.gradle / libs.versions.toml, Podfile / Package.swift, pubspec.yaml, package.json. Beide Stores zählen, was ein SDK erhebt, als Ihre Erhebung. Apple macht Sie für den gesamten Code in Ihrer App verantwortlich, auch für Code, den Sie nicht geschrieben haben.
  2. Was jedes davon sendet. Nutzen Sie die eigene Seite des Anbieters. Manche Anbieter veröffentlichen ihre Antworten in Plays eigenem Vokabular, darunter RevenueCat, Unity Ads und OneSignal. Google veröffentlicht Tabellen für AdMob und für jedes Firebase-Produkt. Unter iOS bringen die meisten aktuellen SDKs ein Privacy Manifest mit (PrivacyInfo.xcprivacy). Öffnen Sie in Xcode den Organizer, klicken Sie mit der rechten Maustaste auf ein Archiv und wählen Sie Generate Privacy Report, um jedes Manifest Ihres Builds auf einer Seite zu sehen (Apples Dokumentation zu Privacy Manifests).
  3. Ihre eigene Erhebung. Konten (E-Mail, Nutzer-ID), alles, was Ihr Backend speichert, Standort, den Ihr eigener Code liest, Kaufbelege, die Ihr Server aufbewahrt.

Manche Anbieter veröffentlichen nichts. AppLovin hat für keinen der beiden Stores eine Datentyp-Liste, und mehrere Analytics-SDKs haben keine Zuordnung für Play. Lesen Sie für diese die eigene Dokumentation des SDK dazu, was es überträgt, und halten Sie die Lücke schriftlich fest. Raten Sie nicht.

Schritt 2: die Fragen von Google Play

Für jeden Datentyp fragt Play:

  • Erhoben, geteilt oder beides? „Erhoben“ (collected) heißt: vom Gerät gesendet. „Geteilt“ (shared) heißt: an einen Dritten gesendet. Ein Dienstleister, der Daten in Ihrem Auftrag verarbeitet, zählt nicht als Teilen, vollständig anonymisierte Daten ebenso wenig. Deshalb ist Firebase Analytics meist „erhoben, nicht geteilt“ und ein Werbe-SDK meist „erhoben und geteilt“.
  • Flüchtig verarbeitet? Nur, wenn die Daten gerade so lange im Speicher gehalten werden, wie es für diese eine Anfrage nötig ist – etwa ein Standort, der zum Abrufen des Wetters gesendet und nicht gespeichert wird.
  • Erforderlich oder optional? Optional heißt, Nutzer können wählen, ob die Daten erhoben werden.
  • Wozu? Plays Zwecke sind: App functionality, Analytics, Developer communications, Advertising or marketing, Fraud prevention, security, and compliance, Personalization, Account management. Erhebung und Teilen bekommen jeweils eigene Zwecke.

Dann zwei Sicherheitsfragen. Werden alle Nutzerdaten bei der Übertragung verschlüsselt? Das können nur Sie prüfen. Ein einziger schlichter http://-Endpunkt macht die Antwort zu Nein. Können Nutzer die Löschung verlangen? Sie können mit Ja antworten, wenn Sie einen Weg anbieten, sie zu beantragen, oder wenn Sie die Daten innerhalb von 90 Tagen automatisch löschen.

Wenn Nutzer in Ihrer App Konten anlegen können, fragen die Data deletion-Fragen im selben Formular außerdem nach einem Weblink, über den Nutzer die Löschung ihres Kontos beantragen können (Google Plays Anforderungen zur Kontolöschung). Siehe den Leitfaden zur Kontolöschungs-URL.

Zahlungsdaten, die im eigenen Abrechnungsdialog von Google Play eingegeben werden, müssen Sie nicht angeben, solange Ihre App nie darauf zugreift. Kaufbelege, die Ihre App oder ein SDK erhält, müssen Sie trotzdem angeben.

Schritt 3: die Fragen von Apple

Für jeden Datentyp fragt Apple nach dem Zweck und zwei Ja/Nein-Fragen:

  • Mit dem Nutzer verknüpft? Daten gelten als verknüpft, es sei denn, sie werden vor der Erhebung de-identifiziert. Ein Konto, eine Nutzer-ID oder eine Geräte-ID reicht für die Verknüpfung.
  • Zum Tracking verwendet? Tracking heißt, die Daten Ihrer App über einen Nutzer oder ein Gerät mit Daten anderer Unternehmen für gezielte Werbung oder Werbemessung zu kombinieren oder sie mit einem Datenhändler zu teilen. Ein SDK kann das tun, auch wenn Sie diese Funktion nie nutzen. Wird irgendetwas zum Tracking verwendet, muss die App zuvor über App Tracking Transparency um Erlaubnis bitten (Apples User Privacy and Data Use).

Apples Zwecke sind: Third-Party Advertising, Developer’s Advertising or Marketing, Analytics, Product Personalization, App Functionality, Other Purposes.

Apple erlaubt, einen Datentyp wegzulassen, nur wenn jede von vier Bedingungen erfüllt ist. Er darf nicht für Tracking oder Werbung verwendet werden. Er darf nur selten erhoben werden, außerhalb der Hauptfunktion der App und nach Wahl des Nutzers. Und der Nutzer muss ihn jedes Mal wissentlich angeben. Die meisten SDK-Daten scheitern an der ersten Bedingung.

Die drei Antworten, die häufig falsch sind

  1. „Wir erheben nichts.“ Crash-Reporter und Analytics senden Gerätekennungen und Diagnosedaten, auch wenn Ihr eigener Code nichts sendet.
  2. „Nicht geteilt“ bei einem Werbe-SDK. Werbenetzwerke erhalten Kennungen und Interaktionen für ihre eigenen Werbezwecke. Das ist Teilen.
  3. Ein Formular, das der Datenschutzerklärung widerspricht. Die Stores lesen beide zusammen, also reicht der Widerspruch allein schon. Schreiben Sie beide aus derselben Liste. Siehe wenn die beiden sich widersprechen.

Aktuell halten

Die Antworten sind nur so aktuell wie Ihre SDK-Liste. Wenn Sie ein SDK hinzufügen, aktualisieren Sie beide Formulare und Ihre Datenschutzerklärung in derselben Änderung. Auch Anbieter überarbeiten ihre Offenlegungen mit neuen SDK-Versionen.

Die SDKs von einem KI-Assistenten finden lassen

Der langsame Teil ist Schritt 1, und ein Coding-Agent, den Sie im Repository Ihrer App öffnen, kann ihn für Sie erledigen: Claude Code, Cursor, Codex und ähnliche. Der Prompt unten bittet ihn, nur Ihre Build-Dateien zu lesen und jedes SDK und jeden Daten-Fakt mit der Datei zu nennen, aus der er stammt. Er fragt nicht, was jedes SDK erhebt. Die Erinnerung eines Modells an die Offenlegung eines Anbieters ist eine Vermutung, und dieser Teil sollte vom Anbieter kommen.

Er antwortet in einem kleinen JSON-Format, das das AppFoyer-Dashboard liest. Ohne AppFoyer ist die Liste, die er Ihnen in Step 2 zeigt, trotzdem die, aus der Sie beide Formulare ausfüllen.

You are helping me fill in Google Play's Data safety form and Apple's App Privacy details for my mobile app. AppFoyer turns your answer into draft answers for both forms, using each SDK vendor's own published disclosure. Your job is only to find what is in the build — not to say what any SDK collects.

## About the app

- App name: [app name]
- Platforms: [Android, iOS or both]

## Step 1 — read the build files

Read only the app's build, manifest and store-metadata files — for example `build.gradle(.kts)`, `gradle/libs.versions.toml`, `AndroidManifest.xml`, `Podfile.lock`, `Package.swift`, `Package.resolved`, `Info.plist`, `*.entitlements`, `PrivacyInfo.xcprivacy`, `pubspec.yaml`, `package.json`, `app.json`. Do not open `.env` files, keystores, credentials or any other secrets, and do not change any file. If you cannot read the code, ask me which SDKs the app uses instead.

Find:

1. Every third-party SDK in the build. Match it to one of these ids where it fits:

- `admob` — Google Mobile Ads (AdMob)
- `applovin-max` — AppLovin MAX
- `unity-ads` — Unity Ads
- `firebase-analytics` — Google Analytics for Firebase
- `mixpanel` — Mixpanel
- `amplitude` — Amplitude
- `meta-app-events` — Meta SDK — App Events
- `firebase-crashlytics` — Firebase Crashlytics
- `sentry` — Sentry
- `firebase-auth` — Firebase Authentication
- `google-sign-in` — Google Sign-In
- `meta-login` — Meta SDK — Facebook Login
- `revenuecat` — RevenueCat
- `firebase-messaging` — Firebase Cloud Messaging
- `onesignal` — OneSignal

   An SDK that fits none of them goes under `otherSdks` with its package name. Never force a match.

2. Which of these facts are true, from the dependencies, permissions and usage-description keys:

- `account` — users sign in or create accounts
- `analytics` — usage analytics
- `ads` — advertising
- `crash` — crash reporting or diagnostics
- `location` — the app reads the device location
- `purchases` — in-app purchases or subscriptions

   If none is true, the facts are `["none"]`.

Keep the file, and the line where you can, for every SDK and every fact. A README sentence is not evidence.

## Step 2 — confirm with me

Show me the list, grouped as SDKs, other SDKs and facts, each with its file. Ask me to confirm or correct it, and to add anything the build files cannot show — for example an SDK loaded at runtime. Wait for my answer.

## Step 3 — reply in AppFoyer's format

Reply with one ```json code block and nothing after it, exactly in this shape:

```json
{
  "format": "appfoyer-store-forms/1",
  "platform": "android | ios | both",
  "sdks": [{ "id": "admob", "file": "app/build.gradle.kts", "line": 42 }],
  "otherSdks": [{ "name": "com.example:tracker", "file": "app/build.gradle.kts", "line": 57 }],
  "facts": [{ "fact": "ads", "file": "app/src/main/AndroidManifest.xml", "line": 12 }]
}
```

- `id` is one of the ids above, spelled exactly. `fact` is one of the facts above, or `none`.
- `line` is a number, or leave it out when you do not know it.
- Empty lists are `[]`. No comments inside the JSON.
- Do not describe what an SDK collects, and do not add fields.

Mit AppFoyer

Jede App im Dashboard hat einen Tab Store forms. Haken Sie die SDKs an, die Ihr Build enthält, und er entwirft daraus und aus den Einstellungen Ihrer App die Antworten für Data safety und App Privacy. Jede Antwort nennt ihre Quelle: die eigenen Antworten des Anbieters, sein Privacy Manifest oder unsere Lesart seiner Datenliste. Der Tab markiert ein SDK, das Ihre Datenschutzerklärung nicht erwähnt, und gibt Ihnen den Kontolöschungs-Link zum Einfügen. Das Claude Code-Plugin füllt die SDK-Liste aus Ihren Build-Dateien. Mit einem anderen Assistenten kopieren Sie den Prompt aus dem Tab, führen ihn aus und fügen die Antwort wieder ein: Der Tab zeigt die Antworten, die sich daraus ergeben, bevor etwas gespeichert wird. Die Antworten tragen Sie weiterhin selbst in jeder Konsole ein und prüfen sie dort. Es sind Entwürfe, keine Rechtsberatung. Der Tab ist in jedem Tarif kostenlos.