Von der Dokument
Android bietet zwei Möglichkeiten für die gemeinsame Nutzung von Daten zwischen Anwendungen:
- Das Android Sharesheet ist in erster Linie für das Senden von Inhalten außerhalb Ihrer App und/oder direkt an einen anderen Benutzer. Zum Beispiel das Teilen eine URL mit einem Freund.
- Der Android Intent Resolver ist am besten geeignet für Übergabe von Daten an die nächste Stufe einer wohldefinierten Aufgabe. Zum Beispiel, Öffnen einer PDF-Datei aus Ihrer Anwendung heraus und die Auswahl des bevorzugten Betrachter auswählen.
val sendIntent: Intent = Intent().apply {
action = Intent.ACTION_SEND
putExtra(Intent.EXTRA_TEXT, "Text to send.")
type = "text/plain"
}
// WILL start Android intent resolver
startActivity(sendIntent)
// WILL start Android ShareSheet
val shareIntent = Intent.createChooser(sendIntent, null)
startActivity(shareIntent)
Android Sharesheet hat einige Vorteile, wie z.B. die Unterstützung von DirectShare, Rich-Preview mit Copy-Option ab Android 10 (aber einige wenige Geräte haben keine Rich-Preview, selbst Android > 10)