Screenshot-Schutz und gezieltes Speichern von Screenshots in deiner Claude Code-App
Bezahlte Lektionen, private Chats, Kontostände, Einmal-Gutscheine: Manche Bildschirme sollen nicht im Gruppenchat landen. WebViewGold kann Screenshots und Bildschirmaufnahmen auf Android blockieren und auf iOS erkennen und ruft dann eine JavaScript-Funktion in deiner Claude Code-App auf, damit du reagieren kannst. Dasselbe Toolkit funktioniert auch andersherum: takescreenshot:// speichert einen Bildschirm gezielt in den Fotos, etwa für Tickets und Belege.
Ab $109 einmalig pro Plattform, oder unser Team erledigt alles ab $698.
Genehmigungsgarantie – oder Geld zurück innerhalb von 14 Tagen
Kein Programmieren nötig
Einmalzahlung, kostenlose Updates
24/7 Support von echten Menschen
Made in Germany seit 2014 · ISO 27001
9:41
CClaude Code
Screenshot-SchutzJetzt auf dem Smartphone
App Store · Google Play Freigegeben
Was jede Plattform wirklich bietet
Funktion
iOS
Android
Screenshots und Bildschirmaufnahmen verhindern
Nicht möglich: iOS hat keine offizielle API, die einen Screenshot blockiert
PREVENT_SCREEN_CAPTURE = true in Config.java verhindert Screenshots und Bildschirmaufnahmen der App
Die Web-App informieren
let preventScreenCapture = true in Config.swift erkennt Screenshots und Bildschirmaufnahmen und ruft onScreenCaptureAttempt() auf (trotz des Namens beschreibt die Dokumentation eine Erkennung)
onScreenCaptureAttempt() wird aufgerufen, damit du eine eigene Meldung zeigen kannst
Den aktuellen Bildschirm gezielt in den Fotos speichern
takescreenshot://
takescreenshot://
Geltungsbereich
Ein Schalter für die ganze App; eine Einstellung pro Seite ist nicht dokumentiert
Ein Schalter für die ganze App; eine Einstellung pro Seite ist nicht dokumentiert
Prompt für Claude Code
Füge das in Claude Code ein, um die Web-App-Seite umzusetzen. Prüfe das Ergebnis, veröffentliche und teste dann in der WebViewGold-App.
Prompt für Claude Code
Prompt für Claude Code: Lies die Abschnitte zu Screen Capture und Take Screenshot in https://www.webviewgold.com/llms-full.txt. Dann 1) finde den Einstiegspunkt der App und registriere dort window.onScreenCaptureAttempt, außerhalb jeder Komponente; 2) liste alle Routen auf, die bezahlte oder private Inhalte zeigen, und lass den Handler nur auf diesen Routen einen ruhigen Hinweis zeigen; 3) füge einen Endpunkt hinzu, der Nutzer, Pfad und Zeit protokolliert und den Nutzer aus der Server-Session nimmt; 4) füge saveScreenToPhotos() hinzu, das zu takescreenshot:// navigiert, wenn navigator.userAgent mein eigenes WebViewGold-Token enthält, und nutze es für einen Button „In Fotos speichern“ auf Ticketseiten, mit einem Drucken-Fallback in Browsern; 5) schreib Tests; 6) halte in CLAUDE.md fest, dass iOS Screenshots erkennt, während Android sie blockiert, und formuliere die UI-Texte passend dazu.
Großartige Arbeit! Ich habe noch nie etwas programmiert, aber ich konnte damit arbeiten. Einfach und schnell! Auch mit großartiger Hilfe von den Erstellern!
In deiner Web-App auf einen Aufnahmeversuch reagieren
Rund 20 Minuten plus ein neuer Build beider Apps.
Die Einstellung einschalten
iOS: let preventScreenCapture = true in Config.swift. Android: PREVENT_SCREEN_CAPTURE = true in Config.java. Das ist eine native Änderung, sie kommt also mit dem nächsten App-Build, nicht mit einem Web-Deploy.
onScreenCaptureAttempt global machen
WebViewGold ruft eine Funktion mit genau diesem Namen auf. Code, den Vite, Next.js oder ähnliche Tools bündeln, lebt in Modulen, eine in einer Komponente deklarierte Funktion ist also nicht global. Weise sie ausdrücklich in Code zu, der auf jeder Seite läuft: window.onScreenCaptureAttempt = function () { … }.
Eine ruhige Meldung zeigen
Erkläre den Grund („Die Folien dieser Lektion sind geschützt, aus Respekt vor den Kursautoren“), statt den Nutzer auszuloggen. Auf iOS ist der Screenshot schon gemacht, wenn die Funktion läuft, die Meldung schreckt also ab, blockiert aber nicht.
Nur protokollieren, wenn du es brauchst
Prüfungs-, Dokumenten- und Finanz-Apps wollen vielleicht ein Audit-Protokoll (Nutzer, Seite, Zeit). Wenn du es aufzeichnest, erwähne es in deiner Datenschutzerklärung.
Einen vorgesehenen Weg zum Speichern anbieten
Wo Speichern legitim ist (Tickets, Belege, Zertifikate), füge einen Button „In Fotos speichern“ hinzu, der zu takescreenshot:// navigiert. Kombinierst du das auf Android mit der Screenshot-Sperre, prüf auf einem Gerät, dass das gespeicherte Bild nicht leer ist.
Die JavaScript-Seite
Lade das einmal auf jeder Seite (zum Beispiel in der Einstiegsdatei der App). Der optionale Log-Endpunkt gehört auf die Serverseite deines Stacks: Deine eigenen API-Routen, Serverless Functions oder Supabase.
javascript
// Eigener User Agent mit "WebViewGold", festgelegt in Config.swift / Config.java
var IN_APP = navigator.userAgent.indexOf("WebViewGold") !== -1;
// Wird von WebViewGold aufgerufen, wenn es einen Screenshot oder eine Bildschirmaufnahme erkennt (iOS)
// oder einen Aufnahmeversuch bei aktivem PREVENT_SCREEN_CAPTURE (Android)
window.onScreenCaptureAttempt = function () {
showToast("Screenshots sind für bezahlte Lektionen deaktiviert."); // dein eigener UI-Helper
fetch("/api/capture-events", {
method: "POST", keepalive: true,
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ path: location.pathname, at: Date.now() })
});
};
// Gezieltes Speichern, zum Beispiel auf einer Ticketseite
function saveTicketToPhotos() {
if (IN_APP) { window.location.href = "takescreenshot://"; }
else { window.print(); } // Fallback im Browser
}
Grenzen, die du ehrlich benennen solltest
Kein Schutz ist absolut: Jeder kann den Bildschirm mit einem zweiten Smartphone abfotografieren. Nutze ihn, um beiläufiges Teilen zu erschweren, nicht als einzige Absicherung für vertrauliche Daten.
Store-Screenshots: Mit aktiver Sperre blockiert Android auch deine eigenen Screenshots. Erstelle die Bilder für den Play-Store-Eintrag, bevor du sie einschaltest, oder aus einem Build ohne Sperre. Siehe Store-Screenshots und Store-Eintrag.
Nutzer erwarten, dass sie Tickets, Belege und Bestätigungen per Screenshot sichern können. Wer wegen einer sensiblen Seite die ganze App sperrt, frustriert sie, und das zeigt sich in den Store-Bewertungen.
Plane das Erlebnis auf iOS rund um die Erkennung: ein Hinweis, ein optionaler Log-Eintrag oder ein sichtbares Wasserzeichen mit der E-Mail-Adresse des Nutzers auf sensiblen Seiten.
takescreenshot:// speichert in die Fotomediathek. iOS fragt beim ersten Mal nach der Erlaubnis, deshalb muss der Purpose String für Fotos im Xcode-Projekt den Grund nennen („um dein Ticket offline zu speichern“).
Häufig gestellte Fragen
Kann ich Screenshots auf dem iPhone blockieren?
Nicht vollständig. iOS hat keine offizielle API, die einen Screenshot verhindert. WebViewGold erkennt Screenshots und Bildschirmaufnahmen (preventScreenCapture in Config.swift) und ruft onScreenCaptureAttempt in der Web-App auf, damit du reagieren kannst. Echtes Blockieren gibt es auf Android mit PREVENT_SCREEN_CAPTURE in Config.java.
Macht Screenshot-Schutz Probleme beim App-Review im App Store oder bei Google Play?
Nicht von sich aus. Keiner der beiden Stores verlangt, dass Apps Screenshots erlauben, und die Erkennung braucht keine Berechtigung. Werden geschützte Bildschirme in einer Android-Bildschirmaufnahme schwarz, erwähne das in den Review-Notizen, damit es niemand für einen Bug hält.
Kann ich nur einzelne Seiten schützen?
Die WebViewGold-Dokumentation beschreibt App-weite Schalter, keine Einstellung pro Seite. Pro Seite steuerst du die Reaktion: onScreenCaptureAttempt kann die aktuelle Route prüfen und nur auf sensiblen Seiten einen Hinweis zeigen.
Wie speichern Nutzer ein Ticket aus meiner Claude Code-App?
Füge einen Button „In Fotos speichern“ hinzu, der in der App zu takescreenshot:// navigiert. WebViewGold speichert den aktuellen Inhalt der WebView in der Fotogalerie, so ist das Ticket am Einlass auch ohne Verbindung verfügbar.
Funktioniert onScreenCaptureAttempt mit React-, Vue- oder Svelte-Code?
Ja, solange die Funktion am window-Objekt hängt. Eine Funktion, die in einer Komponente oder einem ES-Modul deklariert ist, ist nicht global, und WebViewGold findet sie nicht; weise window.onScreenCaptureAttempt in der Einstiegsdatei deines Claude Code-Projekts zu.
Drei Wege, deine App in die Stores zu bringen
Gleiches Ergebnis, unterschiedlich viel Arbeit auf deiner Seite. Alle drei kommen mit Genehmigungsgarantie und 24/7 Support von echten Menschen.
Selbst machen
$109 pro Plattform, einmalig
Die WebViewGold-Lizenz: ein fertiges Xcode- oder Android-Studio-Projekt. URL einfügen, Name und Icon setzen, Features einschalten, bauen und einreichen. Kostenlose Updates für immer.
Kein Mac, kein Xcode, kein Android Studio: Du konfigurierst im Browser, wir bauen beide Apps in der Cloud und übergeben sie an App Store Connect und die Play Console.
Schick uns deine URL und dein Icon. Unser Team konfiguriert, baut und liefert deine App innerhalb von 72 Stunden, White-Label, inklusive Quellprojekten. Beide Plattformen für $1,158.
Erstattungen erfolgen zu den in unseren FAQ genannten Bedingungen: eine nicht inhaltsbedingte Ablehnung durch Apple und/oder Google, geltend gemacht innerhalb von 14 Tagen nach dem Kauf.