Dropbox SDKを使ってみよう(3-2.ファイル操作)
|Dropbox SDKを使ってみよう(3-1.認証情報の利用/アップロード)では認証の方法とアップロードについて解説しました。
今回はアップロードしたファイルの情報を取得する方法やファイルをダウンロードする方法を紹介します。
詳細は以下から。
ファイル/ディレクトリの情報を取得する
まずはディレクトリの情報を取得してみましょう。
ファイルやディレクトリの情報はDropboxAPI
このメソッドの引数には以下の内容を設定します。
[table “205” not found /]以下はルートディレクトリの情報を取得し、格納されているファイル/ディレクトリをToastで表示するサンプルです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | new Thread( new Runnable() { @Override public void run() { try { Entry diEntry = mDBApi.metadata( "/" , 10 , null , true , null ); List<Entry> fileList = diEntry.contents; for ( final Entry entry : fileList) { mHandler.post( new Runnable() { @Override public void run() { Toast.makeText(FileActionMenuActivity. this , entry.path, Toast.LENGTH_LONG).show(); } }); } } catch (DropboxException e) { Log.e(FileActionMenuActivity. this .getPackageName(), e.toString()); } } }).start(); |
6行目でmetadataメソッドを使用してディレクトリの情報を取得しています。
ディレクトリの情報はEntryクラスオブジェクトに格納され、戻り値として取得します。
Entryクラスはフィールドにファイル/ディレクトリの情報を格納しているクラスです。
Entryクラスの主なフィールドは以下の表を参照してください。
[table “206” not found /]13行目でEntryクラスのpathフィールドから格納されているファイル/ディレクトリのフルパスを取得しています。
ファイルをダウンロードする
ファイルをダウンロードするにはDropboxAPI
getFileメソッドの引数は以下のとおりです。
[table “207” not found /]以下は”test.text”という名前のファイルをダウンロードし、ファイルの内容をToastで出力するサンプルです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | new Thread( new Runnable() { @Override public void run() { try { mDBApi.getFile( "/test.txt" , null , outputStream, null ); mHandler.post( new Runnable() { @Override public void run() { String fileText = new String(outputStream.toByteArray()); Toast.makeText(FileActionMenuActivity. this , fileText, Toast.LENGTH_LONG).show(); } }); } catch (DropboxException e) { Log.e(FileActionMenuActivity. this .getPackageName(), e.toString()); } } }).start(); |