ShareIntent-API
Empfange Inhalte, die aus anderen Android-Apps geteilt werden, direkt in deiner WebView-App über Share Intents.
Die ShareIntent-API von WebViewGold ermöglicht es deiner App, als Ziel im nativen Android-Teilen-Dialog zu erscheinen. Damit können Nutzer Inhalte wie Text, URLs oder Bilder (als Base64-Strings) aus einer beliebigen anderen App direkt in deine WebView-basierte App teilen.
Anwendungsfälle:
- Teilen von Links zu Nutzerprofilen, Notizen oder Artikeln direkt in deine App
- Empfangen von Inhalten aus Messaging- oder Browser-Apps
- Senden von Bildern aus der Galerie an deine WebView-Oberfläche (Base64-codiert)
Schritt 1: Teilen-Unterstützung in AndroidManifest.xml aktivieren
Damit deine App geteilte Daten empfangen kann, entferne die Kommentarzeichen bei den entsprechenden Intent-Filtern in deiner AndroidManifest.xml-Datei:
<!-- Receive shared text (e.g., URLs or notes) -->
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<!-- Receive a single shared image -->
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />
</intent-filter>
<!-- Receive multiple shared images -->
<intent-filter>
<action android:name="android.intent.action.SEND_MULTIPLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />
</intent-filter>
Sobald diese Filter aktiv sind, erscheint das App-Symbol deiner WebViewGold-basierten App als Teilen-Ziel, wenn Nutzer Inhalte aus einer anderen App teilen.
Schritt 2: Geteilte Daten in deiner WebView verarbeiten
Wenn ein Nutzer Inhalte in deine App teilt, injiziert WebViewGold den geteilten Inhalt automatisch in eine JavaScript-Variable namens sharedData.
<script>
alert(sharedData); // Displays the shared content (text or base64 image)
</script>
- Text oder URL: Wird als Klartext an
sharedDataübergeben - Bild: Wird in einen Base64-codierten String umgewandelt und an
sharedDataübergeben
Beispielhafte Verwendung: Automatisches Ausfüllen eines Formulars oder Vorschau eines Bildes basierend auf dem empfangenen Inhalt:
<script>
if (sharedData) {
document.getElementById("myInput").value = sharedData;
}
</script>
Hinweis: Stelle sicher, dass dein JavaScript sowohl Klartext als auch lange Base64-Strings verarbeiten kann. Du kannst auch clientseitige Prüfungen implementieren, um zwischen verschiedenen Inhaltstypen zu unterscheiden.