Skip to content
This repository was archived by the owner on Mar 16, 2019. It is now read-only.

Commit 9b792d1

Browse files
committed
Add #162 Android implementation
1 parent 1ed9cf5 commit 9b792d1

File tree

2 files changed

+27
-0
lines changed

2 files changed

+27
-0
lines changed

src/android/src/main/java/com/RNFetchBlob/RNFetchBlob.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,17 @@ public void enableProgressReport(String taskId, int interval, int count) {
257257
RNFetchBlobReq.progressReport.put(taskId, config);
258258
}
259259

260+
@ReactMethod
261+
public void df(final Callback callback) {
262+
fsThreadPool.execute(new Runnable() {
263+
@Override
264+
public void run() {
265+
RNFetchBlobFS.df(callback);
266+
}
267+
});
268+
}
269+
270+
260271
@ReactMethod
261272
public void enableUploadProgressReport(String taskId, int interval, int count) {
262273
RNFetchBlobProgressConfig config = new RNFetchBlobProgressConfig(true, interval, count, RNFetchBlobProgressConfig.ReportType.Upload);

src/android/src/main/java/com/RNFetchBlob/RNFetchBlobFS.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@
66
import android.media.MediaScannerConnection;
77
import android.net.Uri;
88
import android.os.AsyncTask;
9+
import android.os.Build;
910
import android.os.Environment;
11+
import android.os.StatFs;
1012
import android.os.SystemClock;
1113
import android.util.Base64;
1214

@@ -744,6 +746,20 @@ static void createFileASCII(String path, ReadableArray data, Callback callback)
744746
}
745747
}
746748

749+
static void df(Callback callback) {
750+
StatFs stat = new StatFs(Environment.getDataDirectory().getPath());
751+
WritableMap args = Arguments.createMap();
752+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
753+
args.putString("internal_free", String.valueOf(stat.getFreeBytes()));
754+
args.putString("internal_total", String.valueOf(stat.getTotalBytes()));
755+
StatFs statEx = new StatFs(Environment.getExternalStorageDirectory().getPath());
756+
args.putString("external_free", String.valueOf(statEx.getFreeBytes()));
757+
args.putString("external_total", String.valueOf(statEx.getTotalBytes()));
758+
759+
}
760+
callback.invoke(null ,args);
761+
}
762+
747763
/**
748764
* Remove files in session.
749765
* @param paths An array of file paths.

0 commit comments

Comments
 (0)