2016-09-13 8 views
4

ich eine Anwendung für unsere Kunden entwickle und es ist eine wenig Funktionalität, wo wir feststecken, so braucht Ihre Hilfe,Benutzer zulassen Pfad zu wählen, für Datei speichert in Android

scenarion: Wir haben ein Recycling entwickelt haben Ansicht, von wo aus Benutzer eine Liste von Bildern und Songs und Videos nach Kategorie sehen können. Benutzer haben jetzt eine Option, um Bilder, Audio oder Video zu sehen oder zu hören, und es gibt auch eine andere Option zum Herunterladen.

Benötigen Sie Hilfe @ Wir haben dies mit einem statischen Pfad, wo Benutzer alle Dateien speichern können, aber unser Client möchte Benutzern ermöglichen, Pfad zum Speichern von Dateien zu wählen, und wir benötigen Dateidialogfeld von wo Benutzer Standort auswählen können .

Hinweis: Jungs beachten Sie, dass für einen statischen Weg, den wir dies getan haben und es funktioniert hervorragend, auch sind wir diesen Weg in der lokalen Datenbank gespeichert werden, damit wir sie später verwenden, So, jetzt bleiben nur ist wie können wir dem Benutzer erlauben, den Speicherort für die Sicherungsdatei auszuwählen?

+1

Releted Beitrag - http://stackoverflow.com/questions/7856959/andro id-file-chooser – kujeensiti

+0

Ich habe dies bereits überprüft, aber es ist Datei-Selektor nicht Standort-Selektor, muss ich nicht Datei auswählen, muss ich Speicherort auswählen, wo Datei gespeichert werden kann – Vickyexpert

+0

Gute Frage. Nach meinem Wissen müssen Sie suchen, um die Ordner auf bestimmten Speicher (intern/extern) aufzulisten. Dann müssen Sie bei der Auswahl dieses Ordners wieder Ordner darin auflisten. Du kannst das machen. Ich habe ein Beispiel für Sie gefunden, bin mir aber nicht sicher, ob es funktioniert oder nicht. http://developer.samsung.com/technical-doc/view.do;jsessionid=8881C1BE25C54CBA8427A185E0E4DBF3?v=T000000089 –

Antwort

7

ich denke, Android DirectoryChooser hilft Ihnen bei der Auswahl Verzeichnis für Datei speichern.

Manifest

Sie benötigen die DirectoryChooserActivity und fordern Sie die android.permission.WRITE_EXTERNAL_STORAGE Erlaubnis zu erklären.

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
... 
<application> 
    <activity android:name="net.rdrei.android.dirchooser.DirectoryChooserActivity" /> 
</application> 

Aktivität

ein Verzeichnis zu wählen, um die Aktivität von Ihrer App Logik starten:

final Intent chooserIntent = new Intent(this, DirectoryChooserActivity.class); 

    final DirectoryChooserConfig config = DirectoryChooserConfig.builder() 
      .newDirectoryName("DirChooserSample") 
      .allowReadOnlyDirectory(true) 
      .allowNewDirectoryNameModification(true) 
      .build(); 

    chooserIntent.putExtra(DirectoryChooserActivity.EXTRA_CONFIG, config); 

// REQUEST_DIRECTORY is a constant integer to identify the request, e.g. 0 
startActivityForResult(chooserIntent, REQUEST_DIRECTORY); 

das Ergebnis in Ihrem onActivityResult Methode Griff:

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if (requestCode == REQUEST_DIRECTORY) { 
     if (resultCode == DirectoryChooserActivity.RESULT_CODE_DIR_SELECTED) { 
      handleDirectoryChoice(data 
       .getStringExtra(DirectoryChooserActivity.RESULT_SELECTED_DIR)); 
     } else { 
      // Nothing selected 
     } 
    } 
} 
+0

Gut zu wissen. Es wird mir auch helfen. Danke für das Teilen –

+0

Danke für Hilfe, ich brauchte einige Änderungen nach Bedarf, aber es funktioniert dann ... – Vickyexpert

Verwandte Themen