Das Ziel:
Ich möchte einen Stapel Bilder teilen, wobei jedes Bild seine eigene einzigartige Beschriftung/Text hat.
- -> Bildunterschrift: „Beschreibung für A“
Code: Select all
Image_A.jpg - -> Bildunterschrift: „Beschreibung für B“
Code: Select all
Image_B.jpg
Ich verwende die Standardabsicht ACTION_SEND_MULTIPLE mit einer ArrayList. Ich weiß, dass ich Text mit Intent.EXTRA_TEXT übergeben kann, aber das scheint eine einzelne Beschriftung auf den gesamten Stapel anzuwenden (oder nur auf das erste Bild, abhängig von der empfangenden App).
Hier ist mein aktueller Kotlin-Code:
Kotlin
Code: Select all
val fileUris = ArrayList()
fileUris.add(uriForImageA)
fileUris.add(uriForImageB)
val shareIntent = Intent(Intent.ACTION_SEND_MULTIPLE).apply {
type = "image/*"
putParcelableArrayListExtra(Intent.EXTRA_STREAM, fileUris)
setPackage("com.whatsapp")
// This applies "Hello World" to the whole bundle
putExtra(Intent.EXTRA_TEXT, "Hello World")
}
startActivity(shareIntent)
Gibt es einen bestimmten Intent-Zusatzschlüssel (vielleicht eine ArrayList), der die Zuordnung bestimmter Textzeichenfolgen zu bestimmten URIs in der EXTRA_STREAM-Liste ermöglicht? Oder ist ACTION_SEND_MULTIPLE grundsätzlich auf einen einzigen gemeinsamen Kontext/eine einzige gemeinsame Beschriftung für alle Elemente beschränkt?
Wenn dies nicht über einen einzelnen Intent möglich ist, besteht die einzige Lösung darin, sie nacheinander (eins nach dem anderen) mit ACTION_SEND zu senden?
Mobile version