Zuerst einige Kontext von dem, was ich versuche zu erreichen -Ermitteln Mime-Typ einer URI in Android von einer Absicht zurückgegeben?
Ich entwickle eine Image Sharing-Anwendung, für die ich den Benutzer ein Bild aus dem Dateisystem auswählen müssen.
Hierzu ich diesen Code verwende -
Intent photoPickerIntent = new Intent(Intent.ACTION_GET_CONTENT);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, REQUEST_CODE_IMAGE_PICKER_INTENT);
Nun, dies löst eine Chooser wobei ich mehrere Optionen, einschließlich Galerie und ein Filemanager-App sehen, dass ich in meinem Telefon haben. Wenn ich Galerie auswähle und ein Bild von dort wähle, erhält meine Aktivität eine Absicht mit einem Inhaltsuri eines Bildes. Aber wenn ich die FileManager App wähle, kann ich jede Datei auswählen, die kein Bild sein kann. Also, was ich brauche, ist in der Lage zu sein, den Mime-Typ des uri zu bestimmen, der in der Absicht zurückgegeben wird. Die getType-Methode des Intents gibt null zurück.
Gibt es eine Möglichkeit, den Mime von der zurückgegebenen Absicht zu bestimmen, um festzustellen, ob der Inhalt ein Bild ist oder nicht.
Wenn dies nicht funktioniert, muss ich MimeTypeMap verwenden, um den Mime aus der Dateierweiterung zu ermitteln.
habe ich versucht, die gleiche, in meinem 'onActivityResult()', aber 'getType (data.getData())' Rückkehr mich null – NarendraJi