List all the folder and files of Dropbox using Dropbox API

笑着哭i 提交于 2019-12-18 12:56:16

问题


Am looking for the tutorial to display all the files and folder in a listview..but I didn't get anything..Does anyone here know that how can I show all the folder and files of Dropbox into my listview..So that when I click on any of the file..Then that file starts download..

Well I know here that How to download a file from Dropbox, but for that I need to put that name of the file in my code in a static way..

I am also going to use filter afterwards for .csv file only...but I want to show all the files in a listview.

Thanks..


回答1:


            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;

This is what i use. once you have stringarray fnames,you can display it in a listview.

You can display it in a gridview like this

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

                    });



回答2:


Try this code to list the files.....I don't know more about Dropbox, try it

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

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



回答3:


please use this one , it is the latest 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;
        }

    }


来源:https://stackoverflow.com/questions/9546153/list-all-the-folder-and-files-of-dropbox-using-dropbox-api

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!