Wenn Sie createChooser()
nicht verwenden, zeigt das System weiterhin den Auswahldialog an, es sei denn, der Benutzer hat bereits entschieden, welches installierte Programm für die jeweilige Aufgabe verwendet wird (oder die vorherige Entscheidung wurde zurückgezogen).
Wenn Sie createChooser()
verwenden, wird das System immer den Dialog anzeigen, auch wenn es bereits eine ausdrückliche Präferenz gibt.
Also beide sind absolut richtig, Sie müssen sich entscheiden, welche Sie in jedem Fall verwenden. Ihre Laufleistung kann variieren, aber wenn Sie ein Format wie einen Text, ein Bild, ein Video o.ä. zur Anzeige oder Bearbeitung anbieten, möchten Sie wahrscheinlich createChooser()
weglassen, so dass alles, was der Benutzer bereits bevorzugt, sofort starten kann. Auf der anderen Seite, wenn Sie etwas teilen möchten, das der Benutzer mit einem anderen installierten Programm (sagen wir, senden Sie eine E-Mail, Facebook, Chat, was auch immer) jedes Mal, möchten Sie wahrscheinlich createChooser()
verwenden, um es zu machen einfach für Ihren Benutzer, um im laufenden Betrieb auszuwählen.
Aber zusammen mit mailApplication, Messaging-Anwendung wird auch angezeigt, wenn ich nur eine E-Mail-Anwendung in meinem Gerät haben. Dann wie auf nur eine Anwendung zu beschränken, dh nur Mail-Anwendung als Reaktion auf die Absicht gestartet werden –
@Android_Programmer_camera: Bitte erlauben Sie dem Benutzer, zu senden, was auch immer es ist, mit welchen Mitteln sie wünschen. Warum glauben Sie, dass Sie die Optionen des Benutzers einschränken müssen? – CommonsWare
Hey, ich habe dich nicht verstanden. Kannst du es erklären? –