2012-03-03 12 views
14

Szukam samouczka, aby wyświetlić wszystkie pliki i foldery w widoku listy ... ale nic nie dostałem ... Czy ktoś tu wie, jak mogę pokazać wszystko folder i pliki Dropbox do mojego listview..To, że kiedy klikam na którymkolwiek pliku..Ten plik zacznie pobierać ..Lista wszystkich folderów i plików Dropbox za pomocą interfejsu API Dropbox

Cóż, wiem, że tutaj, jak pobrać plik z Dropbox, ale do tego Muszę umieścić tę nazwę pliku w moim kodzie w sposób statyczny ..

Mam zamiar użyć filtra później tylko do pliku .csv ... ale chcę pokazać wszystkie pliki w widoku listy.

Dzięki ..

+0

ja też muszą same .. Co jest –

Odpowiedz

20
  String[] fnames = null; 
      Entry dirent = mApi.metadata("/", 1000, null, true, null); 
      ArrayList<Entry> files = new ArrayList<Entry>(); 
      ArrayList<String> dir=new ArrayList<String>(); 
      for (Entry ent: dirent.contents) 
      { 
       files.add(ent);// Add it to the list of thumbs we can choose from      
       //dir = new ArrayList<String>(); 
       dir.add(new String(files.get(i++).path)); 
      } 
      i=0; 
      fnames=dir.toArray(new String[dir.size()]); 

      return fnames; 

To właśnie używam. Gdy już masz ciągi znaków, możesz wyświetlić je w widoku listy.

Można wyświetlić go w gridview jak ten

final GridView gv=(GridView)temp.findViewById(R.id.gridView1); 
ArrayAdapter<String> ad = new ArrayAdapter<String>(mContext, android.R.layout.simple_list_item_1,fnames); 
gv.setBackgroundColor(Color.BLACK); 
gv.setNumColumns(3); 
gv.setGravity(Gravity.CENTER); 
gv.setAdapter(ad); 
    gv.setBackgroundResource(R.drawable.black_cloud1); 
gv.setOnItemClickListener(new OnItemClickListener() { 
        public void onItemClick(AdapterView<?> arg0, View arg1, 
          int arg2, long arg3) { 
         // TODO Auto-generated method stub 
         Toast.makeText(mContext,gv.getItemAtPosition(arg2).toString(),Toast.LENGTH_SHORT).show(); 

         temp.setData(fnames,gv.getItemAtPosition(arg2).toString()); 

         return; 
        } 

        }); 
+0

Co to jest mApi tutaj. Możesz podać przykładowe demo. – shailesh

+0

@Amelmel, co tu jest? – NarendraJi

+0

@shailesh AppKeyPair appKeys = new AppKeyPair (APP_KEY, APP_SECRET); Sesja AndroidAuthSession = nowa AndroidAuthSession (appKeys); DropboxAPI mApi = new DropboxAPI <> (sesja); – NarendraJi

3

Spróbuj tego kodu, aby wyświetlić listę plików ..... nie wiem więcej o Dropbox, spróbować

Entry contact = mDBApi.metadata("/", 0, null, true, null); 

    List<Entry> CFolder = contact.contents; 
    for (Entry entry : CFolder) { 
    Log.i("DbExampleLog", "Filename: " + entry.fileName());} 
+0

mDBApi proszę wyczyścić lub podać dowolny link do projektu demonstracyjnego – shailesh

+0

@shailesh Znam jego spóźnienie: DropboxAPI mDBApi – Lunchbox

-1

skorzystaj z tego jednego, to najnowszy api .....

public void login(String accessToken) { 
     DbxRequestConfig requestConfig = DbxRequestConfig.newBuilder("ManualApp") 
       .withHttpRequestor(OkHttp3Requestor.INSTANCE) 
       .build(); 
     mDbxClient = new DbxClientV2(requestConfig, accessToken); 
    } 

    public List<Metadata> getListFile(String path) { 

     if (mDbxClient == null) { 
      RkLogger.e("get files error", "must login first please"); 
      return null; 
     } 

     try { 
      return mDbxClient.files().listFolder(path).getEntries(); 
     } catch (DbxException e) { 
      RkLogger.e("DbxException ", e.toString()); 
      return null; 
     } 

    } 
Powiązane problemy