2017-09-15 2 views
1

Ich muss den Benutzer eine Datei aus ihrem lokalen Speicher für meine Anwendung auswählen lassen. Im Moment verwende ich INTENT.ACTION_GET_CONTENT, um den Benutzer die Datei auswählen zu lassen, aber es gibt auch die Möglichkeit, URI aus der Cloud auszuwählen. Nachdem ich die URI-Datei erhalten habe, behandle ich sie als lokale Datei und führe verschiedene Dinge aus (einschließlich des Extrahierens der Dateierweiterung). Wie kann ich den Benutzer nur lokale Dateien auswählen lassen?Wie kann der Benutzer nur lokale Dateien mit Intent in Android auswählen?

else if(menuItem.getItemId() == R.id.action_import_from_file){ 
    Intent i = new Intent(Intent.ACTION_GET_CONTENT); 
    i.setType("*/*"); 
    startActivityForResult(Intent.createChooser(i, "Pick a file"), REQUEST_CODE_SELECT_FILE_FOR_IMPORT); 
} 

Antwort

2

Bitte versuchen Sie Intent.EXTRA_LOCAL_ONLY mit nutzen können wie
intent.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
Wenn die Galerie App Wenn Ihr Gerät dies unterstützt, werden nur Dateien im lokalen Speicher angezeigt. Wenn die Galerie-App die obige Absicht nicht unterstützt, können Sie dem Benutzer eine Fehlermeldung anzeigen, nachdem Sie die Dateilänge des zurückgegebenen Dateipfads in der Galerie-App überprüft haben.

1

diese Verwendung setType() Methode versuchen und festlegen, welche Dateitypen vom Benutzer wählen

Intent i = new Intent(Intent.ACTION_GET_CONTENT); 
i.setType("application/pdf|application/x-excel|text/csv"); 
startActivityForResult(Intent.createChooser(i, "Pick a file"), REQUEST_CODE_SELECT_FILE_FOR_IMPORT); 

Sie auch Array von MIME-Typen wie unten Code

Intent i = new Intent(Intent.ACTION_GET_CONTENT); 
String[] types = {"application/x-excel/*", "application/csv/*",}; 
i.putExtra(Intent.EXTRA_MIME_TYPES, mimetypes); 
startActivityForResult(Intent.createChooser(i, "Pick a file"), REQUEST_CODE_SELECT_FILE_FOR_IMPORT); 
+0

werden xlsx und csv Dateien unter Anwendung kommen? Ich importiere Datensätze aus Excel-Dateien, CSV-Dateien usw. – ColonD

+0

@ColonD überprüfen aktualisiert Ans –

Verwandte Themen