2012-03-03 18 views
14

チュートリアルを探してリストビューにすべてのファイルとフォルダを表示していますが、何も得られませんでした。 Dropboxのフォルダとファイルを自分のリストビューに入れます。そのファイルのいずれかをクリックすると、そのファイルがダウンロードされます。Dropbox APIを使用してDropboxのすべてのフォルダとファイルを一覧表示

まあ私はDropboxからファイルをダウンロードする方法を知っています私はファイルのその名前を静的な方法で私のコードに入れておく必要があります。

私はまた、.csvファイルのみの後にフィルタを使用します...しかし、私はリストビュー内のすべてのファイルを表示したいと思います。

おかげ..

+0

私も同じ必要.. –

答えて

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; 

それを試してみてください.....ファイルを一覧表示するには、このコードを試してみてください。 stringarray fnamesを取得したら、それをlistviewに表示することができます。

あなたはそれが最新のAPIであり、これを使用してください。この

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

ここではmApiとは何ですか? – shailesh

+0

@AmelJose私はここにいますか? – NarendraJi

+0

@shailesh AppKeyPair appKeys =新しいAppKeyPair(APP_KEY、APP_SECRET); AndroidAuthSessionセッション=新しいAndroidAuthSession(appKeys); DropboxAPI mApi =新しいDropboxAPI <>(セッション); – NarendraJi

3

私はDropboxの詳細を知らない、これは私が使用するものです

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はっきりしてください、またはデモプロジェクトのためのリンクをお願いします。 – shailesh

+0

@shailesh私は後期を知っています:DropboxAPI mDBApi – Lunchbox

-1

ようにGridViewに表示することができます.....

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; 
     } 

    } 
関連する問題