feat: Support filter media items between dates (#140)

* Update RNCCameraRollManager.m

* Update CameraRollModule.java

* Update README.md

* Update RNCCameraRollManager.m

* Update CameraRoll.d.ts

* Update RNCCameraRollManager.h

* Update CameraRollModule.java

* Update RNCCameraRollManager.m

* update code
This commit is contained in:
Tuan Luong
2020-02-05 17:20:54 +08:00
committed by GitHub
parent 24f141cada
commit 75b4208474
5 changed files with 55 additions and 11 deletions
@@ -234,6 +234,8 @@ public class CameraRollModule extends ReactContextBaseJavaModule {
String after = params.hasKey("after") ? params.getString("after") : null;
String groupName = params.hasKey("groupName") ? params.getString("groupName") : null;
String assetType = params.hasKey("assetType") ? params.getString("assetType") : ASSET_TYPE_PHOTOS;
long fromTime = params.hasKey("fromTime") ? (long) params.getDouble("fromTime") : 0;
long toTime = params.hasKey("toTime") ? (long) params.getDouble("toTime") : 0;
ReadableArray mimeTypes = params.hasKey("mimeTypes")
? params.getArray("mimeTypes")
: null;
@@ -245,6 +247,8 @@ public class CameraRollModule extends ReactContextBaseJavaModule {
groupName,
mimeTypes,
assetType,
fromTime,
toTime,
promise)
.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
}
@@ -257,6 +261,8 @@ public class CameraRollModule extends ReactContextBaseJavaModule {
private final @Nullable ReadableArray mMimeTypes;
private final Promise mPromise;
private final String mAssetType;
private final long mFromTime;
private final long mToTime;
private GetMediaTask(
ReactContext context,
@@ -265,6 +271,8 @@ public class CameraRollModule extends ReactContextBaseJavaModule {
@Nullable String groupName,
@Nullable ReadableArray mimeTypes,
String assetType,
long fromTime,
long toTime,
Promise promise) {
super(context);
mContext = context;
@@ -274,6 +282,8 @@ public class CameraRollModule extends ReactContextBaseJavaModule {
mMimeTypes = mimeTypes;
mPromise = promise;
mAssetType = assetType;
mFromTime = fromTime;
mToTime = toTime;
}
@Override
@@ -314,6 +324,15 @@ public class CameraRollModule extends ReactContextBaseJavaModule {
selection.replace(selection.length() - 1, selection.length(), ")");
}
if (mFromTime > 0) {
selection.append(" AND " + Images.Media.DATE_TAKEN + " > ?");
selectionArgs.add(mFromTime + "");
}
if (mToTime > 0) {
selection.append(" AND " + Images.Media.DATE_TAKEN + " <= ?");
selectionArgs.add(mToTime + "");
}
WritableMap response = new WritableNativeMap();
ContentResolver resolver = mContext.getContentResolver();