Ich habe eine Liste mit einigen Dateien gefüllt, kann es verschiedene Arten wie PDF oder Dokumente.Wenn ein Benutzer auf einen klickt, bekomme ich die Datei MIME-Typ und starten Sie eine Absicht, die der Benutzer wählen Sie die Anwendung, um das zu öffnen datei.Was ich will, ist zu wissen, ist ein Benutzer etwas gewählt, oder drückte einfach zurück und wählte nichts. Was ich bis jetzt versucht habe, war, ein startActivityForResult zu machen und nach Erfolg zu suchen, aber es gibt immer RESULT_CANCELED
zurück %Vor%Ich habe sogar mit einem startActivityForResult (Intent.createChooser) versucht, aber immer noch ohne Erfolg. Wie kann ich wissen, ob der Benutzer etwas auf dieser Liste ausgewählt hat oder ob er das Öffnen abgebrochen hat?
Wie in Android Developer unter Aktivitäten
In anderen Protokollen (wie ACTION_MAIN oder ACTION_VIEW) erhalten Sie das Ergebnis möglicherweise nicht erwartungsgemäß.
Sie können sich nicht darauf verlassen, dass Aktionsansichten das zurückgeben, was Sie erwarten würden. Daher habe ich ein benutzerdefiniertes Warndialogfeld implementiert, das alle möglichen Anwendungen zeigt, die eine bestimmte Datei öffnen können, eine leicht modifizierte Version, wie hier gezeigt Custom intent chooser
Code für diejenigen, die sich wundern, es nimmt einen filePath als Parameter und zeigt Ihnen alle installierten Anwendungen, die mit diesem Dateityp umgehen können, indem Sie die Mimetype.Works mit Fullpaths.Can mit
aufgerufen werden %Vor%Dies ist die Klasse, sie kann einen optionalen Delegaten auch für Aktivitätsrückrufe verwenden
%Vor%Tags und Links android android-intent